KR102661376B1 - Server and control method thereof, and image processing apparatus and control method thereof - Google Patents

Server and control method thereof, and image processing apparatus and control method thereof Download PDF

Info

Publication number
KR102661376B1
KR102661376B1 KR1020230119540A KR20230119540A KR102661376B1 KR 102661376 B1 KR102661376 B1 KR 102661376B1 KR 1020230119540 A KR1020230119540 A KR 1020230119540A KR 20230119540 A KR20230119540 A KR 20230119540A KR 102661376 B1 KR102661376 B1 KR 102661376B1
Authority
KR
South Korea
Prior art keywords
event
server
search results
voice command
command
Prior art date
Application number
KR1020230119540A
Other languages
Korean (ko)
Other versions
KR20230136575A (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
Priority claimed from KR1020200141831A external-priority patent/KR102317742B1/en
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to KR1020230119540A priority Critical patent/KR102661376B1/en
Publication of KR20230136575A publication Critical patent/KR20230136575A/en
Priority to KR1020240053940A priority patent/KR20240063074A/en
Application granted granted Critical
Publication of KR102661376B1 publication Critical patent/KR102661376B1/en

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
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/041Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
    • G06F3/0412Digitisers structurally integrated in a display
    • 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/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Multimedia (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • General Health & Medical Sciences (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • User Interface Of Digital Computer (AREA)
  • Acoustics & Sound (AREA)
  • Computational Linguistics (AREA)

Abstract

본 발명의 실시예에 따른 서버는, 하나 이상의 영상처리장치와 통신하는 통신 인터페이스와; 데이터가 저장되는 스토리지와; 영상처리장치로부터 사용자의 발화에 의한 제1이벤트가 수신되면 제1이벤트에 대해 수행한 처리 결과를 영상처리장치에 제공하고, 제1이벤트의 처리에 따라서 제1이벤트의 이력을 스토리지에 저장하는 프로세서를 포함하며, 프로세서는, 영상처리장치로부터 비발화 방식의 사용자 입력에 의한 제2이벤트가 수신되면 제1이벤트 및 상기 제2이벤트 사이의 관련성을 판단하고, 제1이벤트 및 상기 제2이벤트가 관련성이 있다고 판단하면 스토리지에 저장된 제1이벤트의 이력에 기초하여 제2이벤트를 처리하는 것을 특징으로 한다.A server according to an embodiment of the present invention includes a communication interface for communicating with one or more image processing devices; Storage where data is stored; When a first event resulting from a user's speech is received from the image processing device, a processor provides the result of processing for the first event to the image processing device and stores the history of the first event in storage according to the processing of the first event. It includes, wherein the processor determines the relationship between the first event and the second event when a second event by a non-verbal user input is received from the image processing device, and determines the relationship between the first event and the second event. If it is determined that there is a second event, the second event is processed based on the history of the first event stored in the storage.

Description

서버 및 그 제어방법과, 영상처리장치 및 그 제어방법 {SERVER AND CONTROL METHOD THEREOF, AND IMAGE PROCESSING APPARATUS AND CONTROL METHOD THEREOF}Server and its control method, image processing device and its control method {SERVER AND CONTROL METHOD THEREOF, AND IMAGE PROCESSING APPARATUS AND CONTROL METHOD THEREOF}

본 발명은 영상신호를 영상으로 표시되게 처리하는 시스템 내의 서버 및 그 제어방법과, 영상처리장치 및 그 제어방법에 관한 것으로서, 상세하게는 사용자의 음성 명령을 인식함으로써 해당 음성 명령에 대응하는 기능 또는 동작을 실행할 수 있는 구조의 서버 및 그 제어방법과, 영상처리장치 및 그 제어방법에 관한 것이다.The present invention relates to a server and a control method thereof in a system that processes video signals to be displayed as images, and a video processing device and a control method thereof. Specifically, the present invention relates to a function or function corresponding to the voice command by recognizing the user's voice command. It relates to a server structured to execute operations and its control method, and an image processing device and its control method.

영상처리장치는 외부로부터 수신되는 영상신호/영상데이터를 다양한 영상처리 프로세스에 따라서 처리한다. 영상처리장치는 처리된 영상신호를 자체 구비한 디스플레이 패널 상에 영상으로 표시하거나, 또는 패널을 구비한 타 디스플레이장치에서 영상으로 표시되도록 이 처리된 영상신호를 해당 디스플레이장치에 출력할 수 있다. 즉, 영상처리장치는 영상신호를 처리 가능한 장치라면 영상을 표시 가능한 패널을 포함하는 경우 및 패널을 포함하지 않는 경우 모두 포함할 수 있는 바, 전자의 경우의 예시로는 TV가 있으며, 후자의 경우의 예시로는 셋탑박스(set-top box)가 있다.An image processing device processes image signals/image data received from the outside according to various image processing processes. The image processing device can display the processed video signal as an image on a display panel provided by itself, or output the processed video signal to the display device so that it can be displayed as an image on another display device equipped with a panel. In other words, an image processing device can include both a panel capable of displaying images and a case without a panel as long as it is capable of processing video signals. An example of the former is a TV, and in the latter case, a TV is an example. An example of this is a set-top box.

영상처리장치는 기술의 발전에 따라서 다양한 기능의 추가 및 확장이 계속적으로 반영되고 있는 바, 이러한 추세에 따라서 영상처리장치에 있어서 사용자의 의도를 반영한 커맨드를 영상처리장치에 입력하는 구성도 다양한 구조 또는 방법이 제안되고 있다. 예를 들면, 종래에는 사용자 리모트 컨트롤러(remote controller) 상의 키/버튼을 누르면 리모트 컨트롤러가 사용자가 원하는 동작이 실행되도록 하는 제어신호를 영상처리장치에 전송하는 구성이었으나, 근래에는 영상처리장치가 사용자에 의한 모션 또는 발화 등을 감지하고, 감지된 내용을 분석하여 대응 동작을 실행시키는 등, 사용자의 의도를 반영하여 영상처리장치를 제어하는 다양한 구성이 제안되고 있다.Image processing devices continue to reflect the addition and expansion of various functions according to the development of technology, and according to this trend, the configuration of inputting commands that reflect the user's intention into the image processing device is also various. A method is being proposed. For example, conventionally, when the user presses a key/button on a remote controller, the remote controller transmits a control signal to the image processing device to execute the user's desired action, but recently, the image processing device Various configurations have been proposed to control the image processing device by reflecting the user's intention, such as detecting motion or speech, analyzing the detected content, and executing a corresponding action.

본 발명의 실시예에 따른 서버는, 하나 이상의 영상처리장치와 통신하는 통신 인터페이스와; 데이터가 저장되는 스토리지와; 상기 영상처리장치로부터 사용자의 발화에 의한 제1이벤트가 수신되면 상기 제1이벤트에 대해 수행한 처리 결과를 상기 영상처리장치에 제공하고, 상기 제1이벤트의 처리에 따라서 상기 제1이벤트의 이력을 상기 스토리지에 저장하는 프로세서를 포함하며, 상기 프로세서는, 상기 영상처리장치로부터 비발화 방식의 사용자 입력에 의한 제2이벤트가 수신되면 상기 제1이벤트 및 상기 제2이벤트 사이의 관련성을 판단하고, 상기 제1이벤트 및 상기 제2이벤트가 관련성이 있다고 판단하면 상기 스토리지에 저장된 상기 제1이벤트의 이력에 기초하여 상기 제2이벤트를 처리하는 것을 특징으로 한다.A server according to an embodiment of the present invention includes a communication interface for communicating with one or more image processing devices; Storage where data is stored; When a first event caused by a user's speech is received from the image processing device, the result of processing performed on the first event is provided to the image processing device, and the history of the first event is stored according to the processing of the first event. and a processor storing the data in the storage, wherein when a second event based on a non-verbal user input is received from the image processing device, the processor determines a relationship between the first event and the second event, and determines the relationship between the first event and the second event. If it is determined that the first event and the second event are related, the second event is processed based on the history of the first event stored in the storage.

여기서, 상기 프로세서는, 상기 제2이벤트가 수신되면, 상기 스토리지에 저장된 상기 제1이벤트의 이력을 참조하여, 상기 제1이벤트와 독립적으로 상기 제2이벤트를 처리 가능한지 아니면 상기 제1이벤트의 처리 결과에 기초하여 상기 제2이벤트를 처리하는 것인지의 여부를 판단할 수 있다.Here, when the second event is received, the processor refers to the history of the first event stored in the storage and determines whether the second event can be processed independently of the first event or the processing result of the first event. Based on this, it can be determined whether the second event is being processed.

또한, 상기 프로세서는, 상기 제1이벤트가 수신되면 상기 제1이벤트에 기초하여 기 설정된 데이터베이스에서 검색을 수행하고, 상기 제1이벤트로부터 복수의 상기 검색 결과가 도출된 상태에서 상기 제2이벤트가 수신되면, 상기 제1이벤트에 대한 상기 복수의 검색 결과 중에서 상기 제2이벤트에 기초하여 선택된 하나의 최종 결과를 상기 영상처리장치에 전송할 수 있다.In addition, when the first event is received, the processor performs a search in a preset database based on the first event, and the second event is received while a plurality of search results are derived from the first event. If so, one final result selected based on the second event from among the plurality of search results for the first event can be transmitted to the image processing device.

여기서, 상기 프로세서는, 상기 제1이벤트에 대한 상기 검색 결과가 복수 개이면, 상기 복수의 검색 결과와, 상기 복수의 검색 결과 중 어느 하나의 선택을 요청하는 요청 커맨드를 상기 영상처리장치에 전송하며, 상기 영상처리장치로부터 상기 요청 커맨드에 대응하는 상기 제2이벤트를 수신할 수 있다.Here, if there are a plurality of search results for the first event, the processor transmits the plurality of search results and a request command requesting selection of one of the plurality of search results to the image processing device, and , the second event corresponding to the request command may be received from the image processing device.

또한, 상기 제2이벤트는 상기 서버가 인식 가능하도록 상기 영상처리장치에 의해 발화에 따른 음성 명령의 형태로 변환되어 상기 서버에 수신될 수 있다.Additionally, the second event may be converted into a voice command according to speech by the image processing device and received by the server so that the server can recognize it.

또한, 본 발명의 실시예에 따른 서버의 제어방법은, 영상처리장치로부터 사용자의 발화에 의한 제1이벤트를 수신하는 단계와; 상기 제1이벤트에 대해 수행한 처리 결과를 상기 영상처리장치에 제공하고, 상기 제1이벤트의 처리에 따라서 상기 제1이벤트의 이력을 저장하는 단계와; 상기 영상처리장치로부터 비발화 방식의 사용자 입력에 의한 제2이벤트를 수신하는 단계와; 상기 제1이벤트 및 상기 제2이벤트 사이의 관련성을 판단하고, 상기 제1이벤트 및 상기 제2이벤트가 관련성이 있다고 판단하면 기 저장된 상기 제1이벤트의 이력에 기초하여 상기 제2이벤트를 처리하는 단계를 포함하는 것을 특징으로 한다.Additionally, a server control method according to an embodiment of the present invention includes receiving a first event caused by a user's speech from an image processing device; providing a processing result performed on the first event to the image processing device and storing a history of the first event according to processing of the first event; receiving a second event based on a non-verbal user input from the image processing device; Determining the relationship between the first event and the second event, and if it is determined that the first event and the second event are related, processing the second event based on the previously stored history of the first event. It is characterized by including.

여기서, 상기 제1이벤트 및 상기 제2이벤트 사이의 관련성을 판단하는 단계는, 상기 기 저장된 상기 제1이벤트의 이력을 참조하여, 상기 제1이벤트와 독립적으로 상기 제2이벤트를 처리 가능한지 아니면 상기 제1이벤트의 처리 결과에 기초하여 상기 제2이벤트를 처리하는 것인지의 여부를 판단하는 단계를 포함할 수 있다.Here, the step of determining the relationship between the first event and the second event refers to the pre-stored history of the first event and determines whether the second event can be processed independently of the first event or whether the second event can be processed independently of the first event. It may include determining whether to process the second event based on the processing result of the first event.

또한, 상기 제1이벤트에 대해 수행한 처리 결과를 상기 영상처리장치에 제공하는 단계는, 상기 제1이벤트에 기초하여 기 설정된 데이터베이스에서 검색을 수행하는 단계를 포함하며, 상기 기 저장된 상기 제1이벤트의 이력에 기초하여 상기 제2이벤트를 처리하는 단계는, 상기 제1이벤트로부터 복수의 상기 검색 결과가 도출된 상태에서 상기 제2이벤트가 수신되면, 상기 제1이벤트에 대한 상기 복수의 검색 결과 중에서 상기 제2이벤트에 기초하여 선택된 하나의 최종 결과를 상기 영상처리장치에 전송하는 단계를 포함할 수 있다.In addition, the step of providing a result of processing performed on the first event to the image processing device includes performing a search in a preset database based on the first event, wherein the pre-stored first event The step of processing the second event based on the history includes, when the second event is received while a plurality of search results are derived from the first event, among the plurality of search results for the first event It may include transmitting one final result selected based on the second event to the image processing device.

여기서, 상기 제2이벤트를 수신하는 단계는, 상기 제1이벤트에 대한 상기 검색 결과가 복수 개이면, 상기 복수의 검색 결과와, 상기 복수의 검색 결과 중 어느 하나의 선택을 요청하는 요청 커맨드를 상기 영상처리장치에 전송하는 단계와; 상기 영상처리장치로부터 상기 요청 커맨드에 대응하는 상기 제2이벤트를 수신하는 단계를 포함할 수 있다.Here, the step of receiving the second event includes, if there are a plurality of search results for the first event, sending the plurality of search results and a request command requesting selection of one of the plurality of search results. transmitting to an image processing device; It may include receiving the second event corresponding to the request command from the image processing device.

또한, 상기 제2이벤트는 상기 서버가 인식 가능하도록 상기 영상처리장치에 의해 발화에 따른 음성 명령의 형태로 변환되어 상기 서버에 수신될 수 있다.Additionally, the second event may be converted into a voice command according to speech by the image processing device and received by the server so that the server can recognize it.

또한, 본 발명의 실시예에 따른 영상처리장치는, 데이터가 저장되는 스토리지와; 사용자의 발화가 입력되는 발화 입력 인터페이스와, 발화가 아닌 방식의 사용자 입력이 수행되는 비발화 입력 인터페이스를 포함하는 사용자 인터페이스와; 상기 발화 입력 인터페이스에 의해 발생하는 제1이벤트에 대응하는 동작이 실행되도록 처리하는 프로세서와; 상기 제1이벤트의 발생 및 처리에 대한 이력을 상기 스토리지에 저장하며, 상기 제1이벤트의 발생 이후에 상기 비발화 입력 인터페이스에 의해 제2이벤트가 발생하면 상기 제1이벤트 및 상기 제2이벤트 사이의 관련성을 판단하고, 상기 제1이벤트 및 상기 제2이벤트가 관련성이 있다고 판단하면 상기 스토리지에 저장된 상기 제1이벤트의 이력에 기초하여 상기 제2이벤트가 처리되게 제어하는 컨트롤러를 포함하는 것을 특징으로 한다.Additionally, an image processing device according to an embodiment of the present invention includes storage for storing data; a user interface including a speech input interface through which a user's speech is input, and a non-speech input interface through which a user input in a non-speech manner is performed; a processor configured to execute an operation corresponding to a first event generated by the speech input interface; The history of the occurrence and processing of the first event is stored in the storage, and when a second event occurs by the non-igniting input interface after the occurrence of the first event, a connection between the first event and the second event is stored. and a controller that determines relevance and controls processing of the second event based on the history of the first event stored in the storage when it is determined that the first event and the second event are related. .

여기서, 상기 컨트롤러는, 상기 제2이벤트가 발생하면, 상기 스토리지에 저장된 상기 제1이벤트의 이력을 참조하여, 상기 제1이벤트와 독립적으로 상기 제2이벤트를 처리 가능한지 아니면 상기 제1이벤트의 처리 결과에 기초하여 상기 제2이벤트를 처리하는 것인지의 여부를 판단할 수 있다.Here, when the second event occurs, the controller refers to the history of the first event stored in the storage and determines whether the second event can be processed independently of the first event or the processing result of the first event. Based on this, it can be determined whether the second event is being processed.

또한, 상기 컨트롤러는, 상기 제1이벤트에 대응하는 동작에 대해 복수의 결과가 검색되면 상기 복수의 검색 결과를 선택 가능하게 디스플레이에 표시하고, 상기 복수의 검색 결과가 표시된 상태에서 상기 제2이벤트가 발생하면 상기 제2이벤트가 상기 복수의 검색 결과 중 어느 하나의 선택을 지시하는지 여부를 판단할 수 있다.In addition, when a plurality of results are searched for an operation corresponding to the first event, the controller displays the plurality of search results on the display so that the plurality of search results can be selected, and when the second event is displayed while the plurality of search results are displayed, the controller When it occurs, it can be determined whether the second event indicates selection of one of the plurality of search results.

여기서, 발화에 대응하는 음성 명령에 대한 검색 처리를 수행하는 서버와 통신하는 통신 인터페이스를 더 포함하며, 상기 컨트롤러는, 상기 제1이벤트를 상기 서버에 전송하며 상기 제1이벤트에 대한 검색 결과를 상기 서버로부터 수신하여 디스플레이에 표시할 수 있다.Here, it further includes a communication interface for communicating with a server that performs search processing for a voice command corresponding to the utterance, wherein the controller transmits the first event to the server and provides a search result for the first event. It can be received from the server and displayed on the display.

또한, 상기 컨트롤러는, 상기 서버가 상기 제2이벤트를 인식 가능하도록 상기 제2이벤트를 발화에 따른 음성 명령의 형태로 변환하여 상기 서버에 전송할 수 있다.Additionally, the controller may convert the second event into a voice command according to speech and transmit it to the server so that the server can recognize the second event.

또한, 본 발명의 실시예에 따른 영상처리장치의 제어방법은, 사용자의 발화가 입력되는 발화 입력 인터페이스에 의해 제1이벤트가 발생하는 단계와; 상기 제1이벤트에 대응하는 동작을 실행하는 단계를 포함하며, 상기 제1이벤트에 대응하는 동작을 실행하는 단계는, 상기 제1이벤트의 발생 및 처리에 대한 이력을 상기 스토리지에 저장하는 단계와; 발화가 아닌 방식의 사용자 입력이 수행되는 비발화 입력 인터페이스에 의해 제2이벤트가 발생하는 단계와; 상기 제1이벤트 및 상기 제2이벤트 사이의 관련성을 판단하고, 상기 제1이벤트 및 상기 제2이벤트가 관련성이 있다고 판단하면 상기 저장된 제1이벤트의 이력에 기초하여 상기 제2이벤트가 처리되게 제어하는 단계를 포함하는 것을 특징으로 한다.Additionally, a method of controlling an image processing device according to an embodiment of the present invention includes generating a first event by a speech input interface through which a user's speech is input; A step of executing an operation corresponding to the first event, wherein executing an operation corresponding to the first event includes: storing a history of occurrence and processing of the first event in the storage; generating a second event through a non-speech input interface where a non-speech user input is performed; Determining the relationship between the first event and the second event, and controlling the processing of the second event based on the stored history of the first event if it is determined that the first event and the second event are related It is characterized by including steps.

여기서, 상기 상기 제1이벤트 및 상기 제2이벤트 사이의 관련성을 판단하는 단계는, 상기 기 저장된 제1이벤트의 이력을 참조하여, 상기 제1이벤트와 독립적으로 상기 제2이벤트를 처리 가능한지 아니면 상기 제1이벤트의 처리 결과에 기초하여 상기 제2이벤트를 처리하는 것인지의 여부를 판단하는 단계를 포함할 수 있다.Here, the step of determining the relationship between the first event and the second event refers to the pre-stored history of the first event and determines whether the second event can be processed independently of the first event or whether the second event can be processed independently of the first event. It may include determining whether to process the second event based on the processing result of the first event.

또한, 상기 상기 제1이벤트에 대응하는 동작을 실행하는 단계는, 상기 제1이벤트에 대응하는 동작에 대해 복수의 결과가 검색되면 상기 복수의 검색 결과를 선택 가능하게 표시하는 단계를 더 포함하며, 상기 제1이벤트 및 상기 제2이벤트 사이의 관련성을 판단하는 단계는, 상기 제2이벤트가 상기 복수의 검색 결과 중 어느 하나의 선택을 지시하는지 여부를 판단하는 단계를 포함할 수 있다.In addition, the executing the operation corresponding to the first event further includes displaying the plurality of search results to be selectable when a plurality of results are searched for the operation corresponding to the first event, Determining the relationship between the first event and the second event may include determining whether the second event indicates selection of one of the plurality of search results.

여기서, 상기 영상처리장치는 발화에 대응하는 음성 명령에 대한 검색 처리를 수행하는 서버와 통신하며, 상기 제1이벤트를 상기 서버에 전송함으로써 상기 제1이벤트에 대한 검색 결과를 상기 서버로부터 수신하여 표시할 수 있다.Here, the image processing device communicates with a server that performs search processing for voice commands corresponding to speech, and receives and displays search results for the first event from the server by transmitting the first event to the server. can do.

또한, 상기 영상처리장치는, 상기 서버가 상기 제2이벤트를 인식 가능하도록 상기 제2이벤트를 발화에 따른 음성 명령의 형태로 변환하여 상기 서버에 전송할 수 있다.Additionally, the image processing device may convert the second event into a voice command according to speech and transmit it to the server so that the server can recognize the second event.

또한, 본 발명의 실시예에 따른 영상처리장치는, 사용자의 발화가 입력되는 발화 입력 인터페이스와, 발화가 아닌 방식의 사용자 입력이 수행되는 비발화 입력 인터페이스를 포함하는 사용자 인터페이스와; 발화에 의한 음성 명령에 대응하는 동작을 검색하는 서버와 통신하는 통신 인터페이스와; 상기 발화 입력 인터페이스에 의해 발생하는 제1이벤트에 대한 검색 결과를 상기 서버로부터 제공받고, 상기 검색 결과가 실행되도록 처리하는 프로세서와; 상기 서버에 의해 상기 제1이벤트에 대하여 복수의 상기 검색 결과가 도출된 상태에서 상기 비발화 입력 인터페이스에 의해 상기 복수의 검색 결과 중 어느 하나의 선택을 지시하는 제2이벤트가 발생하면, 상기 서버가 상기 제2이벤트에 기초하여 상기 복수의 검색 결과 중 어느 하나를 선택하여 최종 검색 결과를 제공할 수 있도록, 상기 제2이벤트를 상기 서버가 인식 가능한 음성 명령의 형태로 변환하여 상기 서버에 전송하는 컨트롤러를 포함하는 것을 특징으로 한다.Additionally, an image processing device according to an embodiment of the present invention includes a user interface including a speech input interface through which a user's speech is input, and a non-speech input interface through which a user input in a non-speech manner is performed; a communication interface that communicates with a server that searches for an action corresponding to a voice command by speech; a processor that receives search results for a first event generated by the speech input interface from the server and processes the search results to be executed; When a second event indicating selection of one of the plurality of search results occurs through the non-utterance input interface while a plurality of search results are derived for the first event by the server, the server A controller that converts the second event into a voice command recognizable by the server and transmits it to the server so that one of the plurality of search results can be selected based on the second event and provide a final search result. It is characterized by including.

도 1은 본 발명의 제1실시예에 따른 시스템이 포함하는 영상처리장치의 구성 블록도,
도 2는 본 발명의 제1실시예에 따른 시스템이 포함하는 서버의 구성 블록도,
도 3 및 도 4는 도 2의 대화형 서버가 이벤트에 대응하는 검색 결과를 디스플레이장치에 제공하는 방법을 나타내는 플로우차트,
도 5는 도 2의 대화형 서버의 서버측 프로세서를 기능별로 세분화시킨 구성 블록도,
도 6 및 도 7은 도 2의 디스플레이장치 및 대화형 서버와, 대화형 서버 내의 각 구성요소들 사이에서 수행되는 데이터의 전송 관계를 나타내는 예시도,
도 8 및 도 9는 본 발명의 제2실시예에 따른 디스플레이장치의 제어방법을 나타내는 플로우차트,
도 10은 본 발명의 제3실시예에 따른 디스플레이장치의 프로세서의 구성 블록도이다.
1 is a block diagram of an image processing device included in a system according to a first embodiment of the present invention;
Figure 2 is a block diagram of the server included in the system according to the first embodiment of the present invention;
FIGS. 3 and 4 are flowcharts showing how the interactive server of FIG. 2 provides search results corresponding to events to a display device;
Figure 5 is a block diagram showing the server-side processor of the interactive server of Figure 2 subdivided by function;
6 and 7 are exemplary diagrams showing the data transmission relationship between the display device and the interactive server of FIG. 2 and each component within the interactive server;
8 and 9 are flowcharts showing a control method of a display device according to a second embodiment of the present invention;
Figure 10 is a block diagram of the processor of the display device according to the third embodiment of the present invention.

이하에서는 첨부도면을 참조하여 본 발명에 대해 상세히 설명한다. 이하 실시예에서는 본 발명의 사상과 직접적인 관련이 있는 구성들에 관해서만 설명하며, 그 외의 구성에 관해서는 설명을 생략한다. 그러나, 본 발명의 사상이 적용된 장치 또는 시스템을 구현함에 있어서, 이와 같이 설명이 생략된 구성이 불필요함을 의미하는 것이 아님을 밝힌다.Hereinafter, the present invention will be described in detail with reference to the accompanying drawings. In the following embodiments, only configurations directly related to the spirit of the present invention will be described, and descriptions of other configurations will be omitted. However, in implementing a device or system to which the spirit of the present invention is applied, this does not mean that the configuration omitted from the description is unnecessary.

도 1은 본 발명의 제1실시예에 따른 시스템이 포함하는 영상처리장치(100)의 구성 블록도이다.Figure 1 is a block diagram of an image processing device 100 included in a system according to a first embodiment of the present invention.

이하 실시예는 영상처리장치(100)가 자체적으로 영상을 표시할 수 있는 구조의 디스플레이장치, 예를 들면 TV로 구현된 경우에 관해 설명한다. 그러나, 본 발명의 사상은 영상처리장치(100)가 자체적으로 영상을 표시하지 않고 타 디스플레이장치에 영상데이터 또는 제어정보를 출력 가능한 구조의 장치인 경우에도 적용이 가능한 바, 본 발명의 구현 형태가 이하 설명하는 실시예에 한정되지 않는다. 즉, 본 발명의 사상은 다양하게 변경되어 적용됨으로써, 다양한 방식의 장치에서 구현될 수 있다.The following embodiment will describe a case where the image processing device 100 is implemented as a display device capable of displaying images on its own, for example, a TV. However, the idea of the present invention can be applied even when the image processing device 100 does not display images on its own but is a device capable of outputting image data or control information to another display device, and the implementation form of the present invention is It is not limited to the embodiments described below. In other words, the idea of the present invention can be implemented in various types of devices by changing and applying it in various ways.

도 1에 도시된 바와 같이, 본 실시예에 따른 영상처리장치(100) 또는 디스플레이장치(100)는 외부의 영상공급원(미도시)로부터 영상신호를 수신한다. 디스플레이장치(100)가 수신 가능한 영상신호는 그 종류 또는 특성이 한정되지 않는 바, 예를 들면 디스플레이장치(100)는 방송국의 송출장비(미도시)로부터 송출되는 방송신호를 수신하고, 해당 방송신호를 튜닝하여 방송영상을 표시할 수 있다.As shown in FIG. 1, the image processing device 100 or the display device 100 according to this embodiment receives an image signal from an external image source (not shown). The type or characteristics of the video signal that the display device 100 can receive are not limited. For example, the display device 100 receives a broadcast signal transmitted from a broadcasting station's transmission equipment (not shown), and transmits the corresponding broadcast signal. You can display broadcast video by tuning.

디스플레이장치(100)는 외부와 데이터/신호를 송수신하도록 통신하는 통신 인터페이스(interface)(110)와, 통신 인터페이스(110)에 수신되는 데이터를 기 설정된 프로세스(process)에 따라서 처리하는 프로세서(processor)(120)와, 프로세서(120)에서 처리되는 데이터가 영상데이터인 경우에 해당 영상데이터를 영상으로 표시하는 디스플레이(display)(130)와, 사용자에 의한 입력 동작이 수행되는 사용자 인터페이스(140)와, 데이터/정보가 저장되는 스토리지(storage)(150)와, 디스플레이장치(100)의 제반 동작을 제어하는 컨트롤러(controller)(160)를 포함한다.The display device 100 includes a communication interface 110 that communicates to transmit and receive data/signals with the outside, and a processor that processes data received in the communication interface 110 according to a preset process. (120), when the data processed by the processor 120 is image data, a display (130) that displays the image data as an image, and a user interface (140) that performs an input operation by the user, and , a storage 150 in which data/information is stored, and a controller 160 that controls overall operations of the display device 100.

통신 인터페이스(110)는 디스플레이장치(100)가 서버 등과 같은 외부장치(미도시)와 양방향 통신이 가능하도록 데이터의 송수신을 수행한다. 통신 인터페이스(110)는 기 설정된 통신 프로토콜(protocol)에 따라서, 유선/무선을 통한 광역/근거리 네트워크 또는 로컬 접속 방식으로 외부장치(미도시)에 접속한다.The communication interface 110 transmits and receives data to enable two-way communication between the display device 100 and an external device (not shown) such as a server. The communication interface 110 connects to an external device (not shown) through a wired/wireless wide area/local area network or local connection method according to a preset communication protocol.

통신 인터페이스(110)는 각 장치 별 접속 포트(port) 또는 접속 모듈(module)의 집합체에 의해 구현될 수 있는 바, 접속을 위한 프로토콜 또는 접속 대상이 되는 외부장치가 하나의 종류 또는 형식으로 한정되지 않는다. 통신 인터페이스(110)는 디스플레이장치(100)에 내장된 형태일 수 있으며, 전체 또는 일부의 구성이 디스플레이장치(100)에 애드-온(add-on) 또는 동글(dongle) 형태로 추가 설치되는 형식도 가능하다.The communication interface 110 can be implemented by a collection of connection ports or connection modules for each device, and the protocol for connection or the external device to be connected is not limited to one type or format. No. The communication interface 110 may be built into the display device 100, and all or part of the configuration may be additionally installed on the display device 100 in the form of an add-on or dongle. It is also possible.

통신 인터페이스(110)는 접속된 각 장치 별로 지정된 프로토콜에 따라서 신호의 송수신이 이루어지는 바, 접속된 각 장치에 대해 개별적인 접속 프로토콜 기반으로 신호를 송수신할 수 있다. 영상데이터의 경우를 예로 들면, 통신 인터페이스(110)는 RF(radio frequency)신호, 컴포지트(composite)/컴포넌트(component) 비디오, 슈퍼 비디오(super video), SCART, HDMI(high definition multimedia interface), 디스플레이포트(DisplayPort), UDI(unified display interface), 또는 와이어리스(wireless) HD 등 다양한 규격을 기반으로 신호의 송수신이 가능하다.The communication interface 110 transmits and receives signals according to a protocol designated for each connected device, and can transmit and receive signals based on an individual connection protocol for each connected device. For example, in the case of video data, the communication interface 110 is a radio frequency (RF) signal, composite/component video, super video, SCART, high definition multimedia interface (HDMI), and display. Signals can be transmitted and received based on various standards such as DisplayPort (DisplayPort), unified display interface (UDI), or wireless HD.

프로세서(120)는 통신 인터페이스(110)에 수신되는 데이터/신호에 대해 다양한 프로세스를 수행한다. 통신 인터페이스(110)에 영상데이터가 수신되면, 프로세서(120)는 영상데이터에 대해 영상처리 프로세스를 수행하고, 이러한 프로세스가 수행된 영상데이터를 디스플레이(130)에 출력함으로써 디스플레이(130)에 해당 영상데이터에 기초하는 영상이 표시되게 한다. 통신 인터페이스(110)에 수신되는 신호가 방송신호인 경우, 프로세서(120)는 특정 채널로 튜닝된 방송신호로부터 영상, 음성 및 부가데이터를 추출하고, 영상을 기 설정된 해상도로 조정하여 디스플레이(130)에 표시되게 한다.The processor 120 performs various processes on data/signals received through the communication interface 110. When image data is received in the communication interface 110, the processor 120 performs an image processing process on the image data and outputs the image data on which this process has been performed to the display 130, thereby displaying the corresponding image on the display 130. Allows an image based on data to be displayed. When the signal received at the communication interface 110 is a broadcast signal, the processor 120 extracts video, audio, and additional data from the broadcast signal tuned to a specific channel, adjusts the video to a preset resolution, and displays the display 130. It is displayed in .

프로세서(120)가 수행하는 영상처리 프로세스의 종류는 한정되지 않으며, 예를 들면 영상데이터의 영상 포맷에 대응하는 디코딩(decoding), 인터레이스(interlace) 방식의 영상데이터를 프로그레시브(progressive) 방식으로 변환하는 디인터레이싱(de-interlacing), 영상데이터를 기 설정된 해상도로 조정하는 스케일링(scaling), 영상 화질 개선을 위한 노이즈 감소(noise reduction), 디테일 강화(detail enhancement), 프레임 리프레시 레이트(frame refresh rate) 변환 등을 포함할 수 있다.The type of image processing process performed by the processor 120 is not limited, for example, decoding corresponding to the video format of the video data, converting interlace video data to progressive method. De-interlacing, scaling to adjust video data to a preset resolution, noise reduction to improve video quality, detail enhancement, frame refresh rate conversion, etc. may include.

프로세서(120)는 데이터의 종류, 특성에 따라서 다양한 프로세스를 수행할 수 있는 바, 프로세서(120)가 수행 가능한 프로세스를 영상처리 프로세스로 한정할 수 없다. 또한, 프로세서(120)가 처리 가능한 데이터가 통신 인터페이스(110)에 수신되는 것만으로 한정할 수 없다. 예를 들면, 프로세서(120)는 사용자 인터페이스(140)를 통해 사용자의 발화가 입력되면, 기 설정된 음성처리 프로세스에 따라서 해당 발화를 처리할 수 있다.Since the processor 120 can perform various processes depending on the type and characteristics of data, the processes that the processor 120 can perform cannot be limited to image processing processes. Additionally, data that can be processed by the processor 120 cannot be limited to being received through the communication interface 110. For example, when a user's utterance is input through the user interface 140, the processor 120 may process the utterance according to a preset speech processing process.

프로세서(120)는 이러한 여러 기능을 통합시킨 SOC(system-on-chip)가, 또는 이러한 각 프로세스를 독자적으로 수행할 수 있는 개별적인 칩셋(chip-set)들이 인쇄회로기판 상에 장착된 영상처리보드(미도시)로 구현되며, 디스플레이장치(100)에 내장된다.The processor 120 is an image processing board in which a SOC (system-on-chip) that integrates these various functions or individual chipsets that can independently perform each of these processes are mounted on a printed circuit board. It is implemented as (not shown) and is built into the display device 100.

디스플레이(130)는 프로세서(120)에 의해 처리된 영상신호/영상데이터를 영상으로 표시한다. 디스플레이(130)의 구현 방식은 한정되지 않는 바, 액정(liquid crystal), 플라즈마(plasma), 발광 다이오드(light-emitting diode), 유기발광 다이오드(organic light-emitting diode), 면전도 전자총(surface-conduction electron-emitter), 탄소 나노 튜브(carbon nano-tube), 나노 크리스탈(nano-crystal) 등의 다양한 디스플레이 방식으로 구현될 수 있다.The display 130 displays the image signal/image data processed by the processor 120 as an image. The implementation method of the display 130 is not limited, and may include liquid crystal, plasma, light-emitting diode, organic light-emitting diode, surface conduction electron gun, etc. It can be implemented in various display methods such as conduction electron-emitter, carbon nano-tube, and nano-crystal.

디스플레이(130)는 그 구현 방식에 따라서 부가적인 구성을 추가적으로 포함할 수 있다. 예를 들면, 액정 방식인 경우에, 디스플레이(130)는 액정 디스플레이 패널(미도시)과, 이에 광을 공급하는 백라이트유닛(미도시)과, 패널(미도시)을 구동시키는 패널구동기판(미도시) 등을 포함한다.The display 130 may additionally include additional components depending on its implementation method. For example, in the case of a liquid crystal display, the display 130 includes a liquid crystal display panel (not shown), a backlight unit (not shown) that supplies light to the panel, and a panel driving substrate (not shown) that drives the panel (not shown). poetry), etc.

사용자 인터페이스(140)는 사용자의 조작 또는 입력에 따라서 기 설정된 다양한 제어 커맨드(command) 또는 정보를 컨트롤러(160)에 전달한다. 사용자 인터페이스(140)는 사용자의 의도에 따라서 사용자에 의해 발생하는 다양한 이벤트(event)를 정보화하여 컨트롤러(160)에 전달한다. 여기서, 사용자에 의해 발생하는 이벤트는 여러 가지 형태가 가능한 바, 예를 들면 사용자의 조작, 발화, 제스쳐(gesture) 등이 가능하다.The user interface 140 transmits various preset control commands or information to the controller 160 according to the user's manipulation or input. The user interface 140 converts various events generated by the user into information according to the user's intention and transmits it to the controller 160. Here, the event generated by the user can take various forms, for example, the user's manipulation, speech, or gesture.

사용자 인터페이스(140)는 사용자가 정보를 입력하는 방식에 대응하여, 해당 방식으로 입력되는 정보를 감지할 수 있게 마련된다. 이에 따라서, 사용자 인터페이스(140)는 대화형 입력 인터페이스(141) 및 비대화형 입력 인터페이스(142)로 구별할 수 있다.The user interface 140 is provided to respond to the method in which the user inputs information and to detect information input in that method. Accordingly, the user interface 140 can be divided into an interactive input interface 141 and a non-interactive input interface 142.

대화형 입력 인터페이스(141)는 사용자의 발화가 입력되도록 마련된다. 즉, 대화형 입력 인터페이스(141)는 마이크로폰으로 구현되며, 디스플레이장치(100)의 외부 환경에서 발생하는 다양한 소리를 감지한다. 대화형 입력 인터페이스(141)는 일반적으로 사용자에 의한 발화를 감지할 수 있지만, 사용자 이외의 다양한 환경적 요인에 의해 발생하는 소리도 감지할 수 있다.The interactive input interface 141 is provided to input the user's speech. That is, the interactive input interface 141 is implemented with a microphone and detects various sounds occurring in the external environment of the display device 100. The interactive input interface 141 can generally detect utterances made by a user, but can also detect sounds generated by various environmental factors other than the user.

비대화형 입력 인터페이스(142)는 발화 방식 이외의 사용자의 입력이 수행되게 마련된다. 이 경우에 비대화형 입력 인터페이스(142)의 구현 형태는 다양하며, 예를 들면, 디스플레이장치(100)와 분리 이격된 리모트 컨트롤러(remote controller)나, 디스플레이장치(100) 외측에 설치된 메뉴 키(menu-key) 또는 입력 패널(panel)이나, 사용자의 제스쳐를 감지하는 모션센서(motion sensor) 또는 카메라(camera) 등이 가능하다.The non-interactive input interface 142 is provided to allow user input other than speech. In this case, the non-interactive input interface 142 can be implemented in various forms, for example, a remote controller separated from the display device 100 or a menu key installed outside the display device 100. -key) or an input panel, or a motion sensor or camera that detects the user's gestures.

또는, 비대화형 입력 인터페이스(142)는 디스플레이(130)에 설치된 터치스크린(touch-screen)으로 구현될 수도 있다. 이 경우에, 사용자는 디스플레이(130)에 표시된 입력메뉴 또는 UI 영상을 터치함으로써, 기 설정된 커맨드 또는 정보가 컨트롤러(160)에 전달되게 할 수 있다.Alternatively, the non-interactive input interface 142 may be implemented as a touch-screen installed on the display 130. In this case, the user can transmit a preset command or information to the controller 160 by touching the input menu or UI image displayed on the display 130.

스토리지(150)는 컨트롤러(160)의 제어에 따라서 다양한 데이터가 저장된다. 스토리지(150)는 시스템 전원의 제공 유무와 무관하게 데이터를 보존할 수 있도록, 플래시메모리(flash-memory), 하드디스크 드라이브(hard-disc drive)와 같은 비휘발성 메모리로 구현된다. 스토리지(150)는 컨트롤러(160)에 대해 억세스(access)됨으로써, 기 저장된 데이터의 독취, 기록, 수정, 삭제, 갱신 등이 수행된다.The storage 150 stores various data under the control of the controller 160. The storage 150 is implemented with non-volatile memory such as flash-memory or hard-disc drive so that data can be preserved regardless of whether system power is provided or not. The storage 150 is accessed by the controller 160 to read, record, modify, delete, update, etc. previously stored data.

컨트롤러(160)는 CPU로 구현되며, 소정 이벤트의 발생에 따라서 프로세서(120)를 비롯한 디스플레이장치(100)의 제반 구성의 동작을 제어한다. 사용자 발화 이벤트의 경우를 예를 들면, 컨트롤러(160)는 대화형 입력 인터페이스(141)를 통해 사용자의 발화가 입력되면 이 입력된 발화를 처리하도록 프로세서(120)를 제어한다. 만일 사용자가 채널 번호를 발화하였다면, 컨트롤러(160)는 발화한 채널번호로 방송영상이 전환 표시되도록 제어한다.The controller 160 is implemented as a CPU and controls the operation of various components of the display device 100, including the processor 120, according to the occurrence of a predetermined event. For example, in the case of a user speech event, when a user's speech is input through the interactive input interface 141, the controller 160 controls the processor 120 to process the input speech. If the user utters a channel number, the controller 160 controls the broadcast video to be switched and displayed according to the uttered channel number.

여기서, 입력된 발화를 처리하는 과정은 디스플레이장치(100) 단독으로 수행할 수도 있지만, 시스템의 부하나 처리능력 등 여러 요인을 고려하여 외부장치와 분담하여 수행할 수도 있다. 이러한 구성에 관하여 이하 설명한다.Here, the process of processing the input utterance may be performed by the display device 100 alone, but may also be performed by sharing it with an external device, taking into consideration various factors such as system load and processing capacity. This configuration will be described below.

도 2는 본 실시예의 시스템이 포함하는 서버(200, 300)의 구성 블록도이다.Figure 2 is a block diagram of servers 200 and 300 included in the system of this embodiment.

도 2에 도시된 바와 같이, 디스플레이장치(100)는 네트워크를 통해 하나 이상의 서버(200, 300)와 통신 가능하게 접속한다. 여기서, 디스플레이장치(100)는 사용자의 발화를 음성 명령으로 변환하는 STT(speech-to-text) 서버(200)와, 음성 명령을 분석함으로써 해당 음성 명령에 대응하는 동작/액션(action)/결과를 판단하는 대화형 서버(300)에 각기 접속한다. 여기서 각 서버(200, 300)의 명칭은 각 기능을 고려하여 단지 상호 구분을 위해 적용된 것인 바, 해당 명칭이 각 서버(200, 300)의 구성적 특징을 한정하지는 않는다.As shown in FIG. 2, the display device 100 is communicatively connected to one or more servers 200 and 300 through a network. Here, the display device 100 includes an STT (speech-to-text) server 200 that converts the user's utterance into a voice command, and an operation/action/result corresponding to the voice command by analyzing the voice command. Each connects to the interactive server 300 that determines . Here, the names of each server (200, 300) are applied only for mutual distinction in consideration of their respective functions, and the names do not limit the structural characteristics of each server (200, 300).

STT 서버(200)는 음성신호의 파형을 분석함으로써 음성신호의 내용을 텍스트로 생성한다. 이에 따라서, STT 서버(200)는 디스플레이장치(100)로부터 음성신호가 수신되면, 이를 텍스트의 음성 명령으로 변환한다. 여기서, 발화는 사용자에 의해 이루어진 동작을 지칭하며, 음성 명령은 발화의 내용이 텍스트 형식으로 데이터화된 것을 지칭한다.The STT server 200 generates the content of the voice signal as text by analyzing the waveform of the voice signal. Accordingly, when the STT server 200 receives a voice signal from the display device 100, it converts it into a text voice command. Here, an utterance refers to an action performed by the user, and a voice command refers to the content of the utterance converted into data in text format.

대화형 서버(300)는 음성 명령에 대응하는 다양한 디스플레이장치(100)의 동작을 검색한다. 대화형 서버(300)는 디스플레이장치(100)로부터 수신된 음성 명령을 분석하고, 분석 결과에 따라서 해당 음성 명령에 대응하는 동작을 수행하기 위한 제어신호나 또는 해당 음성 명령에 기초하여 검색된 결과 정보를 디스플레이장치(100)에 전송한다.The interactive server 300 searches for operations of various display devices 100 corresponding to voice commands. The interactive server 300 analyzes the voice command received from the display device 100, and according to the analysis result, provides a control signal for performing an operation corresponding to the voice command or search result information based on the voice command. Transmitted to the display device 100.

대화형 서버(300)는 디스플레이장치(100)와 통신하기 위한 서버측 통신 인터페이스(310)와, 서버측 통신 인터페이스(310)를 통해 수신되는 음성 명령에 대한 처리를 수행하는 서버측 프로세서(320)를 포함한다.The interactive server 300 includes a server-side communication interface 310 for communicating with the display device 100, and a server-side processor 320 that processes voice commands received through the server-side communication interface 310. Includes.

이러한 디스플레이장치(100), STT 서버(200) 및 대화형 서버(300)에 의한 시스템 하에서, 디스플레이장치(100)의 사용자가 발화하는 경우에 수행되는 동작에 관해 이하 설명한다.Under the system using the display device 100, the STT server 200, and the interactive server 300, operations performed when the user of the display device 100 speaks are described below.

디스플레이장치(100)는 사용자의 발화가 입력되면, 해당 발화에 의한 음성신호를 STT 서버(200)에 전송한다. STT 서버(200)는 디스플레이장치(100)로부터 수신되는 음성신호를 데이터화된 음성 명령으로 변환하고, 이 음성 명령을 디스플레이장치(100)에 전송한다. 디스플레이장치(100)는 STT 서버(200)로부터 수신된 음성 명령을 대화형 서버(300)로 전송한다.When a user's speech is input, the display device 100 transmits a voice signal resulting from the speech to the STT server 200. The STT server 200 converts the voice signal received from the display device 100 into a data voice command and transmits this voice command to the display device 100. The display device 100 transmits the voice command received from the STT server 200 to the interactive server 300.

대화형 서버(300)는 음성 명령의 내용을 분석하고, 음성 명령에 대응하는 결과를 도출하여 디스플레이장치(100)에 반환한다. 예를 들면, 음성 명령의 내용이 "이번 주의 'program ABC'의 출연자는 누구인가?"이라고 할 때, 대화형 서버(300)는 내부 또는 외부의 데이터베이스에서 "이번 주", "program ABC", "출연자"의 키워드를 가지고 검색을 수행하여 그 결과를 취득한다.The interactive server 300 analyzes the contents of the voice command, derives a result corresponding to the voice command, and returns it to the display device 100. For example, when the content of the voice command is "Who is the cast of this week's 'program ABC'?", the interactive server 300 may retrieve "this week", "program ABC", etc. from the internal or external database. A search is performed using the keyword “performer” and the results are obtained.

여기서, 데이터베이스는 키워드의 카테고리 별로 구조화(structured)되어 있으므로, 특정 키워드를 가지고 원하는 결과를 검색할 수 있다. 구조화된 데이터베이스는 데이터베이스의 설계 및 구측 방식에 따라서 다양한 방법으로 구현이 가능한 사항인 바, 이에 관한 자세한 설명은 생략한다.Here, since the database is structured by keyword category, desired results can be searched using specific keywords. A structured database can be implemented in a variety of ways depending on the design and construction method of the database, so a detailed description of this will be omitted.

그런데, 대화형 서버(300)가 음성 명령으로부터 도출한 하나 이상의 키워드로 검색을 수행했을 때, 복수의 검색 결과가 나올 수 있다. 앞선 음성 명령의 예를 들면, 이번 주에 방송하는 방송 프로그램인 "program ABC"가 각기 다른 시간 또는 각기 다른 방송채널에서 방송하는 경우를 생각할 수 있다.However, when the interactive server 300 performs a search using one or more keywords derived from voice commands, multiple search results may appear. As an example of the previous voice command, you can consider the case where this week's broadcast program "program ABC" is broadcast at different times or on different broadcast channels.

이 경우에 대화형 서버(300)는 음성 명령에 대한 복수의 검색 결과 중에서, 사용자의 의도에 맞는 어느 하나의 검색 결과를 선택할 필요가 있다. 대화형 서버(300)가 하나의 검색 결과를 선택하는 대응 방법으로는, 예를 들면 다음과 같은 두 가지 방법이 가능하다.In this case, the interactive server 300 needs to select one search result that matches the user's intention from among a plurality of search results for voice commands. As a corresponding method for the interactive server 300 to select one search result, for example, the following two methods are possible.

첫 번째 방법은, 대화형 서버(300)의 클라이언트, 즉 디스플레이장치(100)가 자체적으로 수립한 특정 규칙에 의해 어느 하나의 검색 결과가 선택된다. 예를 들면, 음성 명령이 특정 프로그램의 방송 시간을 문의하는 내용이고, 이러한 조건을 만족하는 프로그램이 복수 개라면, 가장 최근에 방송될 프로그램이 선택될 수 있다. 두 번째 방법은, 대화형 서버(300)는 디스플레이장치(100)의 사용자가 어느 하나의 검색 결과를 선택하는 발화를 하면, 해당 발화를 이전 발화 이력과 연결시켜 사용자의 원래 의도에 맞는 검색 결과를 선택할 수 있다.In the first method, a search result is selected according to a specific rule established by the client of the interactive server 300, that is, the display device 100 itself. For example, if the voice command inquires about the broadcast time of a specific program, and there are a plurality of programs that satisfy this condition, the program to be broadcast most recently may be selected. In the second method, when the user of the display device 100 makes an utterance to select a search result, the interactive server 300 connects the utterance with the previous utterance history to provide a search result that matches the user's original intention. You can choose.

그런데, 이와 같은 시스템에서 사용자에게는 다양한 입력 방식의 환경이 제공되므로, 디스플레이장치(100)가 음성인식 입력 환경을 지원한다고 하더라도 사용자는 다양한 입력 방식으로 각 상황에서 가장 편리하다고 생각되는 방식을 선택하여 입력을 수행할 것이다. 이러한 다중 입력 모드를 지원하는 시스템의 환경에서, 만일 사용자의 다중 입력들 사이에 이력 관리를 개별적으로 하게 된다면, 사용자의 원래 의도를 반영하는 결과를 선택 또는 도출하는 것은 제약이 있을 것이다. 만일, 사용자가 최초에 발화 입력을 수행하고 이후에 다른 방식으로 입력 방법을 바꾸어 사용했다고 해서 사용자가 원래 의도한 결과가 제공되지 않는다면, 사용자는 사용 환경에 대해 불편을 느낄 것이다.However, in such a system, the user is provided with a variety of input method environments, so even if the display device 100 supports a voice recognition input environment, the user can input by selecting the method that is considered most convenient in each situation among the various input methods. will be carried out. In the environment of a system that supports such multiple input modes, if history is individually managed among the user's multiple inputs, there will be limitations in selecting or deriving a result that reflects the user's original intention. If the user initially inputs a speech and later changes the input method to a different method, but the result that the user originally intended is not provided, the user will feel uncomfortable in the usage environment.

따라서, 대화형 서버(300) 및 디스플레이장치(100)에 의한 대화형 시스템 환경에 있어서, 사용자로부터의 발화에 의해 최초 검색된 결과가 복수 개이고 이후 사용자가 비발화 방식의 입력을 통해 어느 하나의 검색 결과를 선택하면, 대화형 시스템은 사용자가 최초 발화의 의도에 맞는 검색 결과를 제공할 필요가 있다.Therefore, in an interactive system environment using the interactive server 300 and the display device 100, there are a plurality of results initially searched by the user's speech, and then the user selects one search result through non-utterance input. If selected, the interactive system needs to provide search results that match the intent of the user's initial utterance.

여기서, 종래 기술에 따른 시스템에서는 이러한 다중 입력 모드 각각에 대한 이력 관리를 통합적으로 지원하지 않는다. 즉, 종래 기술에 따른 대화형 서버(300)에서는 디스플레이장치(100)의 사용자의 발화에 의한 입력과, 사용자의 제스쳐에 의한 입력과, 사용자의 리모트 컨트롤러(미도시)의 조작에 의한 입력을 개별적으로 관리하며, 이들 입력들 각각을 상호 연계시켜서 관리하지 않는다.Here, the system according to the prior art does not comprehensively support history management for each of these multiple input modes. That is, in the interactive server 300 according to the prior art, input by the user's speech of the display device 100, input by the user's gesture, and input by the user's operation of the remote controller (not shown) are individually , and each of these inputs is not managed by linking them to each other.

이러한 종래 기술에 따른 시스템에서, 앞서 두 번째 방법에 따라서 디스플레이장치(100)가 대화형 서버(300)로부터 수신한 복수의 검색 결과를 표시한 상태를 고려한다. 이 때, 사용자가 만일 발화가 아닌 비대화형 입력 인터페이스(142)를 통한 비발화 방식으로 입력을 수행할 수도 있는데, 종래 기술에 따른 대화형 서버(300)는 발화 입력 방식 및 비발화 입력 방식 간에 입력의 이력을 상호 연계시켜 참조하지 않으므로 사용자의 의도에 맞지 않는 결과가 나오게 된다.In this system according to the prior art, consider a state in which the display device 100 displays a plurality of search results received from the interactive server 300 according to the second method. At this time, the user may perform input in a non-verbal manner through the non-interactive input interface 142 instead of speech, but the interactive server 300 according to the prior art provides input between the speech input method and the non-interactive input method. Since the history is not cross-referenced, results that do not match the user's intent are produced.

예를 들어 사용자가 "'program ABC'를 녹화해"라고 발화하고, 'program ABC'에 관련된 복수의 컨텐츠가 디스플레이장치(100)에 표시된 경우를 고려한다. 종래의 경우에는 사용자가 어느 하나를 선택하는 발화를 수행하였을 때에는 정상적으로 어느 한 컨텐츠가 선택됨으로써 녹화가 수행되는 것에 비해, 발화가 아닌 별도의 비발화 입력 방식으로 어느 하나를 선택하였을 때에는 컨텐츠의 선택만이 수행될 뿐 녹화가 수행되지 않는다. 이는, 사용자에 의한 비발화 입력에 의한 정보가 대화형 서버(300)에 전송되지 않으므로, 대화형 서버(300)가 발화 이후의 동작을 취할 수 없기 때문이다.For example, consider a case where a user utters “Record ‘program ABC’” and a plurality of contents related to ‘program ABC’ are displayed on the display device 100. In the conventional case, when a user selects one utterance, a certain content is normally selected and recording is performed. However, when one is selected through a separate non-utterance input method instead of a utterance, only the content is selected. This is performed, but recording is not performed. This is because the information generated by the user's non-utterance input is not transmitted to the interactive server 300, so the interactive server 300 cannot take action after speech.

이러한 점을 고려하여, 본 실시예에 따르면 다음과 같은 방법이 제안된다.Considering this, the following method is proposed according to this embodiment.

사용자의 입력에 따라서, 디스플레이장치(100)의 대화형 입력 인터페이스(141)에 의해 발생하는 이벤트를 제1이벤트로, 비대화형 입력 인터페이스(142)에 의해 발생하는 이벤트를 제2이벤트라고 편의상 지칭한다. 대화형 서버(300)는 디스플레이장치(100)로부터 제1이벤트가 발생하면 제1이벤트에 대한 처리를 수행하며 제1이벤트의 이력을 저장하고, 이후 제2이벤트가 발생하면 기 저장된 제1이벤트의 처리 이력에 기초하여 제2이벤트의 처리를 수행한다. 여기서, 디스플레이장치(100)는 제2이벤트의 발생 시에, 음성 명령을 인식하게 마련된 대화형 서버(300)가 제2이벤트를 인식할 수 있도록, 제2이벤트를 음성 명령의 형태로 변환하여 대화형 서버(300)에 전송한다.According to the user's input, the event generated by the interactive input interface 141 of the display device 100 is referred to as a first event, and the event generated by the non-interactive input interface 142 is referred to as a second event for convenience. . When a first event occurs from the display device 100, the interactive server 300 processes the first event and stores the history of the first event. When a second event occurs, the interactive server 300 processes the first event and stores the history of the first event. Processing of the second event is performed based on the processing history. Here, when the second event occurs, the display device 100 converts the second event into the form of a voice command so that the interactive server 300, which is equipped to recognize the voice command, can recognize the second event and conducts a conversation. It is transmitted to the type server (300).

대화형 서버(300)는 소정 이벤트에 대한 액션을 결정할 때에 이전에 발생했던 이벤트들의 이력을 참조할 수 있다. 대화형 서버(300)는 디스플레이장치(100)의 대화형 입력 인터페이스(141) 및 비대화형 입력 인터페이스(142) 각각에 의해 발생하는 이벤트들을 개별적으로 관리하는 것이 아닌 통합적으로 관리함으로써, 새로 발생한 이벤트에 대응하는 액션을 결정할 때에 대화형 입력 인터페이스(141) 및 비대화형 입력 인터페이스(142)의 여부에 무관하게 이전에 발생했던 이벤트를 참조할 수 있다.The interactive server 300 may refer to the history of previously occurring events when determining an action for a predetermined event. The interactive server 300 manages events generated by each of the interactive input interface 141 and the non-interactive input interface 142 of the display device 100 in an integrated manner rather than individually, thereby responding to newly generated events. When determining a corresponding action, previously occurring events may be referred to regardless of whether the interactive input interface 141 or the non-interactive input interface 142 exists.

예를 들어 사용자의 최초 발화에 대응하는 검색 결과가 복수 개라면, 대화형 서버(300)는 이 복수의 검색 결과를 사용자가 선택 가능하게 제공한다. 이 때, 사용자가 어느 하나의 검색 결과를 선택하는 지시를 비발화 방식으로 입력하더라도, 대화형 서버(300)는 이벤트 입력의 통합 관리를 통해 신규 이벤트가 이전 이벤트와 입력 방식이 다르더라도 양자간을 상호 관련시킬 수 있다. 이로써, 사용자가 원하는 검색 결과가 도출되어 사용자에게 제공될 수 있다.For example, if there are a plurality of search results corresponding to the user's initial utterance, the interactive server 300 provides the plurality of search results for the user to select. At this time, even if the user inputs an instruction to select one search result in a non-verbal manner, the interactive server 300 manages the integrated management of event input to differentiate between the two even if the new event has a different input method from the previous event. can be interrelated. As a result, the search results desired by the user can be derived and provided to the user.

도 3 및 도 4는 대화형 서버(300)가 이벤트에 대응하는 검색 결과를 디스플레이장치(100)에 제공하는 방법을 나타내는 플로우차트이다.3 and 4 are flowcharts showing a method by which the interactive server 300 provides search results corresponding to an event to the display device 100.

도 3에 도시된 바와 같이, S100 단계에서, 대화형 서버(300)는 디스플레이장치(100)로부터 발화에 의한 음성 명령인 제1이벤트를 수신한다.As shown in FIG. 3, in step S100, the interactive server 300 receives a first event, which is a voice command by speech, from the display device 100.

S110 단계에서, 대화형 서버(300)는 제1이벤트를 분석하여 검색 키워드를 도출한다.In step S110, the interactive server 300 analyzes the first event and derives a search keyword.

S120 단계에서, 대화형 서버(300)는 도출된 검색 키워드로 검색을 수행하고, 제1이벤트의 발생 및 처리 이력을 저장한다.In step S120, the interactive server 300 performs a search using the derived search keyword and stores the occurrence and processing history of the first event.

S130 단계에서, 대화형 서버(300)는 검색 결과가 복수 개인지 판단한다.In step S130, the interactive server 300 determines whether there are multiple search results.

검색 결과가 복수 개가 아니라고 판단하면, S140 단계에서, 대화형 서버(300)는 검색 결과를 디스플레이장치(100)에 전송하고 종료한다.If it is determined that there are not multiple search results, in step S140, the interactive server 300 transmits the search results to the display device 100 and ends.

반면, 검색 결과가 복수 개라고 판단하면, S150 단계에서, 대화형 서버(300)는 복수의 검색 결과를 디스플레이장치(100)에 전송하고, 복수의 검색 결과 중 어느 하나를 선택할 것을 디스플레이장치(100)에 요청한다.On the other hand, if it is determined that there are multiple search results, in step S150, the interactive server 300 transmits the multiple search results to the display device 100 and instructs the display device 100 to select one of the multiple search results. ) to request.

도 4에 도시된 바와 같이, S160 단계에서, 대화형 서버(300)는 디스플레이장치(100)로부터 선택 지시를 포함하는 제2이벤트를 수신한다. 여기서, 제2이벤트는 디스플레이장치(100)에서 비발화 방식의 사용자 입력에 의해 발생한 것이다.As shown in FIG. 4, in step S160, the interactive server 300 receives a second event including a selection instruction from the display device 100. Here, the second event is generated by a non-verbal user input in the display device 100.

S170 단계에서, 대화형 서버(300)는 기 저장된 제1이벤트의 발생 및 처리 이력을 참조하여 제1이벤트 및 제2이벤트의 관련성, 즉 제2이벤트가 제1이벤트에 종속적으로 처리되어야 할 것인지를 판단한다. 예를 들면, 대화형 서버(300)는 제2이벤트가 제1이벤트에 의해 검색된 복수의 검색 결과에 대한 선택 지시 명령인지를 판단한다.In step S170, the interactive server 300 refers to the previously stored occurrence and processing history of the first event to determine the relationship between the first event and the second event, that is, whether the second event should be processed dependently on the first event. judge. For example, the interactive server 300 determines whether the second event is a selection instruction command for a plurality of search results retrieved by the first event.

S180 단계에서 제2이벤트가 제1이벤트와 관련성이 없다고 판단되면, 대화형 서버(300)는 S190 단계에서 제1이벤트와 독립적으로 제2이벤트를 분석 처리한다.If it is determined that the second event is not related to the first event in step S180, the interactive server 300 analyzes and processes the second event independently of the first event in step S190.

반면, S180 단계에서 제2이벤트가 제1이벤트에 의해 검색된 복수의 검색 결과에 대한 선택 지시라고 판단되면, 대화형 서버(300)는 S200 단계에서 제2이벤트에 따라서 검색 결과를 선택한다. 이 과정에서, 필요 여부에 따라서 대화형 서버(300)는 추가적인 검색을 수행할 수 있다.On the other hand, if it is determined in step S180 that the second event is a selection instruction for a plurality of search results retrieved by the first event, the interactive server 300 selects the search results according to the second event in step S200. In this process, the interactive server 300 may perform additional searches, depending on whether necessary.

S200 단계에서, 대화형 서버(300)는 제1이벤트 및 제2이벤트에 따른 최종 검색 결과를 디스플레이장치(100)에 전송한다.In step S200, the interactive server 300 transmits the final search result according to the first event and the second event to the display device 100.

이하, 대화형 서버(300)의 구체적인 내부 구성에 관해 도 5를 참조하여 설명한다.Hereinafter, the specific internal configuration of the interactive server 300 will be described with reference to FIG. 5.

도 5는 대화형 서버(300)의 서버측 프로세서(320)를 기능별로 세분화시킨 구성 블록도이다.Figure 5 is a block diagram showing the server-side processor 320 of the interactive server 300 subdivided by function.

도 5에 도시된 바와 같이, 대화형 서버(300)의 서버측 프로세서(320)는 서버측 통신 인터페이스(310)를 통해 수신되는 음성 명령에 대한 분석을 수행하는 대화 엔진(dialog engine)(321)과, 대화 엔진(321)으로부터 전달받은 검색 키워드에 기초하여 검색을 수행하는 컨텐츠 매니저(322)(content manager)를 포함한다.As shown in FIG. 5, the server-side processor 320 of the interactive server 300 includes a dialog engine 321 that analyzes voice commands received through the server-side communication interface 310. and a content manager 322 that performs a search based on search keywords received from the conversation engine 321.

대화 엔진(321)은 대화 엔진 매니저(dialog engine manager)(323)와, 대화 에이전트(dialog agent)(324)와, 액션 에이전트(action agent)(325)와, 데이터베이스(326)를 포함한다. 서버측 프로세서(320) 또는 대화 엔진(321)에 대한 이러한 구성요소들의 구분은 기능별로 편의상 적용된 것으로서, 서버측 프로세서(320) 또는 대화 엔진(321)이 반드시 이러한 구분 형태를 가져야 한다는 것을 의미하지는 않는다.The dialogue engine 321 includes a dialogue engine manager 323, a dialogue agent 324, an action agent 325, and a database 326. The division of these components for the server-side processor 320 or the conversation engine 321 is applied for convenience by function, and does not necessarily mean that the server-side processor 320 or the conversation engine 321 must have this division. .

또한, 상기한 구성요소들은 하드웨어적인 구성일 수 있지만, 소프트웨어적인 구성일 수도 있으며, 또는 하드웨어 및 소프트웨어들이 혼용되어 적용될 수도 있다.Additionally, the above-described components may be hardware-based, but may also be software-based, or hardware and software may be applied together.

대화 엔진 매니저(323)는 대화 엔진(321)에 전달된 음성 명령 형식의 이벤트를 대화 에이전트(324)에 전달한다. 대화 에이전트(324)는 해당 이벤트의 내용을 분석하여, 분석 결과를 구조화된 데이터로 생성하여 대화 엔진 매니저(323)에게 반환한다.The conversation engine manager 323 transmits an event in the form of a voice command delivered to the conversation engine 321 to the conversation agent 324. The conversation agent 324 analyzes the contents of the event, generates the analysis results as structured data, and returns it to the conversation engine manager 323.

여기서, 대화 에이전트(324)에 의해 생성된 구조화된 데이터를, 대화 프레임(dialog frame)이라고 이하 지칭한다. 대화 프레임은 음성 명령 이벤트의 내용을 포함하되, 대화 엔진 매니저(323), 액션 에이전트(325), 컨텐츠 매니저(322) 등 타 구성요소가 해독 및 참조할 수 있도록 음성 명령을 카테고리 별로 구조화시킨 데이터이다. 카테고리 및 구조화의 형태는 서버측 프로세서(320)의 설계 방식에 따라서 다양하게 결정될 수 있다.Here, the structured data generated by the dialogue agent 324 is hereinafter referred to as a dialogue frame. The dialogue frame contains the contents of the voice command event, and is data that structures the voice command by category so that other components such as the dialogue engine manager 323, action agent 325, and content manager 322 can decode and refer to it. . Categories and structuring types may be determined in various ways depending on the design method of the server-side processor 320.

대화 프레임은 음성 명령에서 사용자의 목적과, 그 목적을 달성하기 위해 필요한 속성과, 그 속성의 값에 관한 정보를 포함한다. 대화 프레임에 관한 구체적인 예시는 후술한다.The dialog frame includes information about the user's purpose in the voice command, the attributes necessary to achieve that goal, and the values of the attributes. Specific examples of conversation frames will be described later.

대화 엔진 매니저(323)는 대화 에이전트(324)로부터 전달받은 대화 프레임을 액션 에이전트(325)에 전달한다. 액션 에이전트(325)는 대화 엔진 매니저(323)로부터 전달받은 대화 프레임에 맞는 액션을 판단하고, 판단 결과를 대화 엔진 매니저(323)에게 반환한다. 즉, 액션 에이전트(325)는 이벤트에 대응하는 액션을 판단한다.The dialogue engine manager 323 transmits the dialogue frame received from the dialogue agent 324 to the action agent 325. The action agent 325 determines an action that matches the dialogue frame received from the dialogue engine manager 323 and returns the judgment result to the dialogue engine manager 323. That is, the action agent 325 determines the action corresponding to the event.

액션 에이전트(325)는 판단 과정에서 정보 검색이 필요한 경우에, 대화 프레임에서 추출한 검색용 키워드를 컨텐츠 매니저(322)에 전달하여 정보 검색을 요청할 수 있다. 컨텐츠 매니저(322)는 전달받은 키워드를 가지고 대화형 서버(300)의 내부 또는 외부에 있는 다양한 종류의 검색 데이터베이스 상에서 검색을 수행하고, 검색 결과를 액션 에이전트(325)에 반환한다.If information search is necessary during the decision process, the action agent 325 may request information search by transmitting the search keyword extracted from the conversation frame to the content manager 322. The content manager 322 performs a search on various types of search databases inside or outside the interactive server 300 using the received keywords and returns the search results to the action agent 325.

대화 엔진 매니저(323)는 액션 에이전트(325)로부터 이벤트에 대응하는 액션 또는 검색의 결과를 수신하면, 수신된 결과를 서버측 통신 인터페이스(310)에 전달함으로써 디스플레이장치(100)에 전송되도록 한다.When the conversation engine manager 323 receives an action or search result corresponding to an event from the action agent 325, the received result is transmitted to the server-side communication interface 310 to be transmitted to the display device 100.

데이터베이스(326)는 이상과 같은 과정에서 대화 엔진 매니저(323), 대화 에이전트(324), 액션 에이전트(325)에 의해 참조될 수 있는 제반 정보를 포함한다. 예를 들면, 데이터베이스(326)는 대화 에이전트(324)가 대화 프레임을 생성하기 위한 컨텍스트(context) 정보, 이벤트 이력 정보, 대화 모델 정보와, 액션 에이전트(325)가 이벤트에 대응하는 액션을 판단하기 위한 액션 모델 정보 등을 포함할 수 있다.The database 326 includes all information that can be referenced by the conversation engine manager 323, conversation agent 324, and action agent 325 in the above process. For example, the database 326 provides context information, event history information, and conversation model information for the conversation agent 324 to create a conversation frame, and the action agent 325 determines the action corresponding to the event. It may include action model information, etc.

이상의 구조 하에서, 대화형 서버(300)가 디스플레이장치(100)로부터 수신되는 음성 명령에 대응하는 결과를 디스플레이장치(100)에 반환하는 경우의 구체적인 동작 예시에 관해 설명한다.Under the above structure, a specific example of operation when the interactive server 300 returns a result corresponding to a voice command received from the display device 100 to the display device 100 will be described.

도 6 및 도 7은 디스플레이장치(100) 및 대화형 서버(300)와, 대화형 서버(300) 내의 각 구성요소들 사이에서 수행되는 데이터의 전송 관계를 나타내는 예시도이다.Figures 6 and 7 are exemplary diagrams showing the data transmission relationship between the display device 100 and the interactive server 300, and each component within the interactive server 300.

도 6에 도시된 바와 같이, 사용자가 "이번 주의 'program ABC'의 출연자는 누구인가?"라는 내용의 발화를 수행하면, 디스플레이장치(100)는 해당 발화에 대응하는 음성 명령을 취득한다. 이 발화에 대응하는 음성 명령을 제1이벤트라고 지칭한다. 디스플레이장치(100)는 제1이벤트를 대화형 서버(300)에 전송한다(410).As shown in FIG. 6, when a user utters the question “Who is the cast of this week's 'Program ABC'?", the display device 100 acquires a voice command corresponding to the utterance. The voice command corresponding to this utterance is referred to as the first event. The display device 100 transmits the first event to the interactive server 300 (410).

대화 엔진 매니저(323)는 서버측 통신 인터페이스(310)에 수신된 제1이벤트를 대화 에이전트(324)에 전달한다(420).The conversation engine manager 323 transmits the first event received through the server-side communication interface 310 to the conversation agent 324 (420).

대화 에이전트(324)는 제1이벤트를 분석함으로써, 제1이벤트에 대응하는 대화 프레임을 작성한다. 제1이벤트가 "이번 주의 'program ABC'의 출연자는 누구인가?"의 내용일 때, 대화 프레임은 다음과 같이 표현될 수 있다.The conversation agent 324 analyzes the first event and creates a conversation frame corresponding to the first event. When the first event is the content of "Who is on this week's 'program ABC'?", the conversation frame can be expressed as follows.

(1) 목적: 방송 프로그램의 출연자 문의(1) Purpose: Inquiry about broadcast program performers

(2) 제목: program ABC(2) Title: program ABC

(3) 시간: 이번 주(3) Time: This week

위 대화 프레임에서, "목적", "제목", "시간"은 대화 프레임의 조건 카테고리이며, 각 조건 카테고리 별로 "방송 프로그램의 출연자 문의", "program ABC", "이번 주"의 속성값을 포함한다. 대화 에이전트(324)는 제1이벤트의 내용을 분석함으로써, 제1이벤트가 포함하는 각 키워드들이 포함되는 조건의 카테고리와 각 카테고리 별 속성값을 도출할 수 있다.In the above dialogue frame, “Purpose”, “Title”, and “Time” are the condition categories of the dialogue frame, and each condition category includes the attribute values of “Broadcast Program Cast Inquiry”, “Program ABC”, and “This Week”. do. By analyzing the content of the first event, the conversation agent 324 can derive the category of conditions in which each keyword included in the first event is included and the attribute value for each category.

대화 에이전트(324)로부터 이와 같이 생성된 대화 프레임을 수신하면(430), 대화 엔진 매니저(323)는 대화 프레임을 액션 에이전트(325)에 전달한다(440).Upon receiving the dialogue frame created in this way from the dialogue agent 324 (430), the dialogue engine manager 323 transmits the dialogue frame to the action agent 325 (440).

액션 에이전트(325)는 전달받은 대화 프레임에 기초하여, 다음과 같은 키워드를 작성하여 컨텐츠 매니저(322)에 전달한다(450).The action agent 325 creates the following keywords based on the received dialogue frame and delivers them to the content manager 322 (450).

(1) 제목: program ABC(1) Title: program ABC

(2) 시간: 2013/06/03~2013/06/09(2) Time: 2013/06/03~2013/06/09

시간 조건 카테고리의 속성값의 경우, 검색을 위해서는 구체적인 날짜가 명시되어야 한다. 이에, 액션 에이전트(325)는 대화 프레임의 시간 카테고리의 "이번 주"의 속성값에 기초하여, 현재 시간을 기준으로 이번 주의 구체적인 날짜 및 시간 구간을 판단한다.For attribute values in the time condition category, a specific date must be specified for search. Accordingly, the action agent 325 determines the specific date and time section of this week based on the current time, based on the attribute value of “this week” in the time category of the conversation frame.

컨텐츠 매니저(322)는 액션 에이전트(325)로부터 전달받은 키워드로, 다양한 컨텐츠 및 메타데이터의 검색 서비스 상에서 검색을 수행한다. 검색 대상은 컨텐츠 매니저(322)가 억세스할 수 있는 제반 데이터베이스, 검색 서비스, 컨텐츠 서비스가 가능하다.The content manager 322 performs a search on a search service for various content and metadata using keywords received from the action agent 325. Search targets include various databases, search services, and content services that the content manager 322 can access.

컨텐츠 매니저(322)는 검색을 통해 나온 검색 결과를 대화 에이전트(324)에 전달한다(460). 예를 들면, 검색 결과는 다음과 같이 복수 개를 포함할 수 있다.The content manager 322 delivers the search results obtained through the search to the conversation agent 324 (460). For example, the search results may include a plurality of items as follows.

(1) program ABC / 2013.06.04 17:00 / 채널 4(1) program ABC / 2013.06.04 17:00 / Channel 4

(2) program ABC / 2013.06.08 10:00 / 채널 20(2) program ABC / 2013.06.08 10:00 / Channel 20

(3) program ABC / 2013.06.09 20:00 / 채널 35(3) program ABC / 2013.06.09 20:00 / Channel 35

각 검색 결과는 각기 프로그램 제목, 방송시간, 방송채널의 정보를 포함하며, 또한 위에 표시하지는 않았지만 출연자 정보를 더 포함한다. 위 검색 결과에 따르면, "이번 주"에 방송되는 "program ABC"는 세 가지의 경우의 수가 있다.Each search result includes information about the program title, broadcast time, and broadcast channel, and also includes performer information, although not indicated above. According to the above search results, there are three cases of “program ABC” airing “this week”.

액션 에이전트(325)는 대화 엔진 매니저(323)에게 검색 결과를 전달한다(470). 이 과정에서, 액션 에이전트(325)는 검색 결과가 복수이므로 디스플레이장치(100)가 복수의 검색 결과를 선택 가능하게 표시하도록 하는 명령어를 추가한다.The action agent 325 delivers the search results to the conversation engine manager 323 (470). In this process, the action agent 325 adds a command that causes the display device 100 to selectably display multiple search results since there are multiple search results.

대화 엔진 매니저(323)는 검색 결과 및 명령어를 디스플레이장치(100)에 전송한다(480).The conversation engine manager 323 transmits search results and commands to the display device 100 (480).

도 7에 도시된 바와 같이, 디스플레이장치(100)는 대화 엔진 매니저(323)로부터 수신된 명령어에 따라서, 복수의 검색 결과를 사용자가 선택 가능하게 표시하고, 표시된 검색 결과 중 어느 하나를 선택할 것을 디스플레이장치(100)의 시스템 발화에 의해 사용자에게 알린다.As shown in FIG. 7, the display device 100 displays a plurality of search results so that the user can select them according to a command received from the conversation engine manager 323, and displays the user to select one of the displayed search results. The user is notified by system ignition of the device 100.

이에, 사용자는 리모트 컨트롤러(미도시)의 버튼 조작 또는 제스쳐와 같은 비발화 방식에 의해, 예를 들어 첫 번째 검색결과의 선택 지시를 입력한다. 이러한 입력을 제2이벤트라고 지칭한다.Accordingly, the user inputs an instruction to select the first search result, for example, by non-verbal means such as a button operation or a gesture on a remote controller (not shown). This input is referred to as the second event.

디스플레이장치(100)는 제2이벤트에 대응하여, 제2이벤트의 내용을 포함하는 가공의 음성 명령을 생성한다. 여기서, 디스플레이장치(100)는 발화에 의한 음성 명령 형태의 이벤트를 인식 가능하게 마련된 대화형 서버(300)가 제2이벤트를 인식할 수 있도록, 제1이벤트와 유사하게 제2이벤트를 음성 명령의 형태로 변환하여 대화형 서버(300)에 전송한다. 제2이벤트는 예를 들면 "1번"이라는 내용을 포함할 수 있다.In response to the second event, the display device 100 generates a fictitious voice command including the content of the second event. Here, the display device 100 converts the second event into a voice command similar to the first event so that the interactive server 300, which is provided to recognize an event in the form of a voice command by utterance, can recognize the second event. It is converted into a form and transmitted to the interactive server 300. The second event may include, for example, the content “number 1.”

디스플레이장치(100)는 제2이벤트를 대화 엔진 매니저(323)에 전송한다(510).The display device 100 transmits the second event to the conversation engine manager 323 (510).

대화 엔진 매니저(323)는 제2이벤트를 대화 에이전트(324)에 전달한다(520).The conversation engine manager 323 transmits the second event to the conversation agent 324 (520).

제2이벤트가 단지 "1번"이라는 내용만을 포함하고 있는 바, 제2이벤트의 내용만으로 대화 에이전트(324)가 해당 제2이벤트를 처리하는 것은 곤란하다. 이에, 대화 에이전트(324)는 이전 수행된 이벤트 처리 이력로부터 제1이벤트에 관한 처리상태 정보를 호출하고, 호출된 정보에 기초하여 다음과 같은 대화 프레임을 생성한다.Since the second event only contains the content “number 1,” it is difficult for the conversation agent 324 to process the second event based only on the content of the second event. Accordingly, the conversation agent 324 calls processing status information about the first event from the previously performed event processing history and creates the following conversation frame based on the called information.

(1) 목적: 방송 프로그램의 출연자 문의(1) Purpose: Inquiry about broadcast program performers

(2) 순서: 1(2) Order: 1

본 대화 프레임에서 목적 카테고리 및 그 속성값은 제2이벤트에 포함되어 있는 내용은 아니지만, 대화 에이전트(324)는 제2이벤트와 관련된 제1이벤트를 참조함으로써 위 내용의 대화 프레임을 생성할 수 있다.In this conversation frame, the target category and its attribute values are not included in the second event, but the conversation agent 324 can create a conversation frame with the above content by referring to the first event related to the second event.

대화 에이전트(324)는 생성한 대화 프레임을 대화 엔진 매니저(323)에게 전달하며(530), 대화 엔진 매니저(323)는 대화 프레임을 액션 에이전트(325)에 전달한다(540).The conversation agent 324 delivers the created conversation frame to the conversation engine manager 323 (530), and the conversation engine manager 323 delivers the conversation frame to the action agent 325 (540).

액션 에이전트(325)는 대화 프레임 내의 순서 조건 카테고리의 속성값에 기초하여, 앞선 제1이벤트에 의해 검색된 세 검색 결과 중에서 첫 번째 검색 결과를 선택한다. 액션 에이전트(325)는 "program ABC / 2013.06.04 17:00 / 채널 4"의 선택 결과를 대화 엔진 매니저(323)에게 전달한다(550).The action agent 325 selects the first search result among the three search results retrieved by the previous first event based on the attribute value of the order condition category within the conversation frame. The action agent 325 delivers the selection result of “program ABC / 2013.06.04 17:00 / Channel 4” to the conversation engine manager 323 (550).

대화 엔진 매니저(323)는 전달받은 선택 결과를 디스플레이장치(100)에 전달한다(560). 이 때, 대화 엔진 매니저(323)는 선택 결과를 참조하여 대화 에이전트(324)에 의해 작성된 시스템 발화 명령어를 추가적으로 디스플레이장치(100)에 전달할 수 있다.The conversation engine manager 323 transmits the received selection result to the display device 100 (560). At this time, the dialogue engine manager 323 may additionally transmit the system speech command written by the dialogue agent 324 to the display device 100 with reference to the selection result.

디스플레이장치(100)는 전달받은 명령어에 따라서, 채널 4에서 2013.06.04 17:00에 방송되는 "program ABC"의 출연자를 시스템 발화를 통해 출력한다.According to the received command, the display device 100 outputs the performer of "program ABC", which will be broadcast on Channel 4 at 17:00 on June 4, 2013, through system speech.

이상 실시예에 따르면, 디스플레이장치(100) 및 대화형 서버(300)에 의해 구현되는 시스템에서 사용자가 발화를 통해 입력한 목표 및 조건을 만족하는 결과물이 복수인 경우에, 사용자가 리모트 컨트롤러나 제스쳐 등의 비발화 방식의 입력을 혼용하더라도, 사용자의 원래 의도에 맞는 결과를 제공함으로써 사용자의 편의성을 향상시킬 수 있다.According to the above embodiment, in the system implemented by the display device 100 and the interactive server 300, when there are multiple results that satisfy the goals and conditions input by the user through speech, the user uses a remote controller or a gesture. Even if non-verbal inputs such as the like are mixed, user convenience can be improved by providing results that match the user's original intention.

한편, 위 실시예에서는 대화형 서버(300)가 디스플레이장치(100)의 사용자의 발화 방식 입력 및 비발화 방식의 입력 각각에 의한 이벤트의 이력을 저장하고 있는 경우에 관해 설명하였으나, 본 발명의 사상이 이에 한정되지 않는다. 예를 들면, 디스플레이장치(100)가 이벤트의 이력을 저장하는 구성도 가능한 바, 이에 관하여 이하 도 8 및 도 9를 참조하여 설명한다.Meanwhile, in the above embodiment, the case where the interactive server 300 stores the history of events caused by each of the user's speech input and non-speech input of the display device 100 has been described, but the spirit of the present invention This is not limited to this. For example, the display device 100 can be configured to store event history, which will be described below with reference to FIGS. 8 and 9.

도 8 및 도 9는 본 발명의 제2실시예에 따른 디스플레이장치(100)의 제어방법을 나타내는 플로우차트이다.Figures 8 and 9 are flow charts showing a control method of the display device 100 according to the second embodiment of the present invention.

도 8에 도시된 바와 같이, S300 단계에서, 디스플레이장치(100)는 사용자의 발화를 수신한다. S310 단계에서, 디스플레이장치(100)는 사용자의 발화에 대응하는 음성 명령을 대화형 서버(300)에 전송한다.As shown in FIG. 8, in step S300, the display device 100 receives the user's speech. In step S310, the display device 100 transmits a voice command corresponding to the user's utterance to the interactive server 300.

S320 단계에서, 디스플레이장치(100)는 대화형 서버(300)로부터 수신된 음성 명령의 대응 결과가 복수 개인지 여부를 판단한다.In step S320, the display device 100 determines whether there are multiple corresponding results of the voice command received from the interactive server 300.

대화형 서버(300)로부터 수신된 음성 명령의 대응 결과가 하나이면, S330 단계에서, 디스플레이장치(100)는 해당 결과를 표시한다.If there is only one corresponding result of the voice command received from the interactive server 300, the display device 100 displays the corresponding result in step S330.

반면, 대화형 서버(300)로부터 수신된 음성 명령의 대응 결과가 복수 개이면, S340 단계에서, 디스플레이장치(100)는 복수의 대응 결과를 사용자가 선택 가능하게 표시한다.On the other hand, if there are multiple corresponding results of the voice command received from the interactive server 300, in step S340, the display device 100 displays the plurality of corresponding results so that the user can select them.

S350 단계에서, 디스플레이장치(100)는 사용자로부터 복수의 대응 결과에 대한 선택 입력을 수신한다. 이상의 과정이 진행되는 동안에, 디스플레이장치(100)는 발화에 의한 음성 명령의 이벤트의 발생 및 처리 과정의 이력을 저장한다.In step S350, the display device 100 receives a selection input for a plurality of corresponding results from the user. While the above process is in progress, the display device 100 stores the history of the occurrence and processing of voice command events caused by speech.

도 9에 도시된 바와 같이, S360 단계에서, 디스플레이장치(100)는 수신된 선택 입력이 발화 방식인지 아니면 비발화 방식인지 여부를 판단한다.As shown in FIG. 9, in step S360, the display device 100 determines whether the received selection input is a speaking method or a non-speaking method.

이 과정에서 디스플레이장치(100)는 기 저장된 이전의 이벤트 이력을 참조하여, S350 단계에서 수신된 선택 입력이 S300 단계에서 발생한 발화와 관련성이 있는지 판단한다. 디스플레이장치(100)는 판단 결과 양자간에 관련성이 있다고 판단되는 경우에 S360 단계를 수행한다.In this process, the display device 100 refers to the previously stored event history and determines whether the selection input received in step S350 is related to the utterance that occurred in step S300. The display device 100 performs step S360 when it is determined that there is a relationship between the two.

수신된 선택 입력이 발화 방식이면, S370 단계에서, 디스플레이장치(100)는 선택 입력에 대응하는 음성 명령을 대화형 서버(300)에 전송하고 S400 단계로 이행한다.If the received selection input is a speech type, in step S370, the display device 100 transmits a voice command corresponding to the selection input to the interactive server 300 and proceeds to step S400.

반면 수신된 선택 입력이 비발화 방식이면, S380 단계에서, 디스플레이장치(100)는 비발화 방식의 선택 입력의 내용에 대응하는 가공의 음성 명령을 생성한다. S390 단계에서, 디스플레이장치(100)는 이와 같이 생성된 가공의 음성 명령을 대화형 서버(300)에 전송한다.On the other hand, if the received selection input is a non-speech type, in step S380, the display device 100 generates a processed voice command corresponding to the content of the non-speech type selection input. In step S390, the display device 100 transmits the created voice command to the interactive server 300.

S400 단계에서, 디스플레이장치(100)는 전송한 선택 입력에 대응하는 결과를 대화형 서버(300)로부터 수신하여 표시한다.In step S400, the display device 100 receives a result corresponding to the transmitted selection input from the interactive server 300 and displays it.

한편, 이상 실시예에서는 디스플레이장치(100)에서 발생한 이벤트에 대응하는 결과를 대화형 서버(300)가 분석 및 검색하는 경우에 관해 설명하였다. 그러나, 본 발명의 사상이 이에 한정되지 않는 바, 제1실시예에서의 STT 서버(200) 및 대화형 서버(300) 중 적어도 어느 하나의 기능을 디스플레이장치(100)가 수행하는 실시예도 가능하다.Meanwhile, in the above embodiment, a case where the interactive server 300 analyzes and searches for results corresponding to an event occurring in the display device 100 has been described. However, the spirit of the present invention is not limited to this, and an embodiment in which the display device 100 performs at least one function of the STT server 200 and the interactive server 300 in the first embodiment is also possible. .

도 10은 본 발명의 제3실시예에 따른 디스플레이장치(600)의 프로세서(620)의 구성 블록도이다.Figure 10 is a block diagram of the processor 620 of the display device 600 according to the third embodiment of the present invention.

도 10에 도시된 바와 같이, 본 실시예에 따른 디스플레이장치(600)는 통신 인터페이스(610)와 프로세서(620)를 포함한다. 디스플레이장치(600)가 포함하는 그 외의 구성요소들에 관해서는 제1실시예를 응용할 수 있는 바, 자세한 설명을 생략한다.As shown in FIG. 10, the display device 600 according to this embodiment includes a communication interface 610 and a processor 620. As for other components included in the display device 600, the first embodiment can be applied, so detailed descriptions are omitted.

프로세서(620)는 디스플레이장치(600)에 입력되는 발화를 처리하는 음성처리엔진(621)과, 발화에 대응하는 음성 명령에 대한 분석을 수행하는 대화 엔진(622)과, 대화 엔진(622)으로부터 전달받은 검색 키워드에 기초하여 검색을 수행하는 컨텐츠 매니저(623)를 포함한다. 또한, 대화 엔진(622)은 대화 엔진 매니저(624)와, 대화 에이전트(625)와, 액션 에이전트(626)와, 데이터베이스(627)를 포함한다. 본 도면 및 실시예에서는 발명의 사상에 직접적으로 관련이 있는 구성에 관해서만 설명하고 있으며, 그 이외의 구성에 관해서는 도시 및 설명을 생략하였음을 밝힌다.The processor 620 includes a voice processing engine 621 that processes speech input to the display device 600, a dialogue engine 622 that analyzes voice commands corresponding to the speech, and a speech engine 622 that processes speech input to the display device 600. It includes a content manager 623 that performs a search based on the received search keyword. Additionally, the conversation engine 622 includes a conversation engine manager 624, a conversation agent 625, an action agent 626, and a database 627. It should be noted that in the drawings and examples, only the configurations directly related to the spirit of the invention are described, and the illustration and description of other configurations are omitted.

음성처리엔진(621)은 사용자의 발화가 입력되면 해당 발화의 음성신호를 STT 서버(200)에 전송하고, 해당 발화에 대응하는 음성 명령을 STT 서버(200)로부터 수신하여 대화 엔진 매니저(624)에게 전달한다.When a user's utterance is input, the voice processing engine 621 transmits the voice signal of the utterance to the STT server 200, receives a voice command corresponding to the utterance from the STT server 200, and sends it to the conversation engine manager 624. deliver it to

이하 대화 엔진 매니저(624), 대화 에이전트(625), 액션 에이전트(626) 및 컨텐츠 매니저(623)에 의한 구체적인 동작은 앞선 실시예에서 설명한 동일 명칭의 구성요소와 실질적으로 동일하므로, 앞선 실시예의 설명을 응용할 수 있는 바, 자세한 설명을 생략한다.Hereinafter, specific operations by the conversation engine manager 624, conversation agent 625, action agent 626, and content manager 623 are substantially the same as the components of the same name described in the previous embodiment, so the description of the previous embodiment Since it can be applied, detailed explanation is omitted.

또는, 디스플레이장치(600)는 음성처리엔진(621)이 STT 서버(200)의 기능, 즉 발화를 음성 명령으로 변환하는 기능을 수행할 수도 있다. 이 경우, 음성처리엔진(621)은 사용자의 발화가 입력되면 해당 발화를 음성 명령으로 변환하여 대화 엔진 매니저(624)에게 전달한다.Alternatively, the voice processing engine 621 of the display device 600 may perform the function of the STT server 200, that is, the function of converting speech into voice commands. In this case, when the user's utterance is input, the voice processing engine 621 converts the utterance into a voice command and transmits it to the conversation engine manager 624.

상기한 실시예는 예시적인 것에 불과한 것으로, 당해 기술 분야의 통상의 지식을 가진 자라면 다양한 변형 및 균등한 타 실시예가 가능하다. 따라서, 본 발명의 진정한 기술적 보호범위는 하기의 특허청구범위에 기재된 발명의 기술적 사상에 의해 정해져야 할 것이다.The above-described embodiments are merely illustrative, and various modifications and equivalent embodiments may be made by those skilled in the art. Therefore, the true technical protection scope of the present invention should be determined by the technical spirit of the invention described in the claims below.

100 : 디스플레이장치
110 : 통신 인터페이스
120 : 프로세서
130 : 디스플레이
140 : 사용자 인터페이스
141 : 대화형 입력 인터페이스
142 : 비대화형 입력 인터페이스
150 : 스토리지
160 : 컨트롤러
200 : STT 서버
300 : 대화형 서버
310 : 서버측 통신 인터페이스
320 : 서버측 프로세서
100: display device
110: communication interface
120: processor
130: display
140: user interface
141: Interactive input interface
142: Non-interactive input interface
150: storage
160: controller
200: STT server
300: interactive server
310: Server-side communication interface
320: Server-side processor

Claims (20)

전자 장치에 있어서,
디스플레이부;
통신부;
음성 명령을 입력받는 대화형 입력 인터페이스;
비음성 명령을 입력받는 비대화형 입력 인터페이스; 및
상기 음성 명령과 관련된 제1 이벤트가 상기 대화형 입력 인터페이스를 통해 수신되면, 상기 제1 이벤트에 의해 검색된 복수의 검색 결과를 상기 통신부를 통해 서버로부터 수신하여 출력하도록 상기 디스플레이부를 제어하고,
상기 비대화형 입력 인터페이스를 이용하여 텍스트 입력을 위한 비음성 명령과 관련된 제2 이벤트를 수신하고,
상기 제2 이벤트가 상기 제1 이벤트에 의해 검색된 복수의 검색 결과 중 하나를 선택하는 선택 지시 명령이면, 선택된 검색 결과에 대응한 화면을 상기 서버로부터 수신하여 출력하도록 상기 디스플레이부를 제어하고,
상기 제2 이벤트가 상기 제1 이벤트에 의해 검색된 복수의 검색 결과 중 하나를 선택하는 선택 지시 명령이 아니면, 상기 제1 이벤트에 의해 검색된 복수의 검색 결과에 기초하지 않고 상기 제2이벤트를 처리한 결과를 상기 서버로부터 수신하여 출력하도록 상기 디스플레이부를 제어하는 프로세서를 포함하는, 전자 장치.
In electronic devices,
display unit;
Ministry of Communications;
An interactive input interface that receives voice commands;
A non-interactive input interface that accepts non-voice commands; and
When a first event related to the voice command is received through the interactive input interface, control the display unit to receive and output a plurality of search results retrieved by the first event from a server through the communication unit,
Receiving a second event related to a non-voice command for text input using the non-interactive input interface,
If the second event is a selection instruction command for selecting one of a plurality of search results retrieved by the first event, controlling the display unit to receive and output a screen corresponding to the selected search result from the server,
If the second event is not a selection instruction command for selecting one of the plurality of search results retrieved by the first event, the result of processing the second event not based on the plurality of search results retrieved by the first event An electronic device comprising a processor that controls the display unit to receive and output from the server.
제1항에 있어서,
상기 제2 이벤트가 상기 선택 지시 명령인지 여부는, 상기 제1이벤트 및 상기 제2이벤트가 관련이 있는지 여부와 관련된 전자 장치.
According to paragraph 1,
Whether the second event is the selection instruction command is related to whether the first event and the second event are related.
제2항에 있어서,
상기 제1이벤트 및 상기 제2이벤트가 관련이 있는 경우는, 제2이벤트가 제1이벤트에 종속적으로 처리되는 경우인 전자 장치.
According to paragraph 2,
When the first event and the second event are related, the electronic device is a case in which the second event is processed dependently on the first event.
제1항에 있어서,
상기 제2 이벤트가 상기 선택 지시 명령인지 여부를 식별한 상기 서버로부터 수신한 데이터에 기초하여, 상기 선택된 검색 결과에 대응한 화면 또는 상기 제2이벤트를 처리한 결과 중 하나를 출력하도록 상기 디스플레이부를 제어하는, 전자 장치.
According to paragraph 1,
Based on data received from the server that identifies whether the second event is the selection instruction command, control the display unit to output either a screen corresponding to the selected search result or a result of processing the second event. an electronic device.
제1항에 있어서,
상기 수신한 제2이벤트에 의한 텍스트 입력은, 상기 제1이벤트에 의한 음성 명령과 동일한 형태로 변환된 텍스트 입력인 전자 장치.
According to paragraph 1,
The electronic device wherein the text input due to the received second event is a text input converted into the same form as the voice command due to the first event.
제1항에 있어서,
상기 비음성 명령은 외부 리모트 컨트롤러의 조작 또는 제스쳐 입력에 의해 생성된 전자 장치.
According to paragraph 1,
The non-voice command is an electronic device generated by manipulation of an external remote controller or gesture input.
제1항에 있어서,
메모리를 더 포함하고,
상기 음성 명령과 관련된 제1 이벤트에 기초하여 생성된 이전 음성 이력을 상기 메모리에 저장하는, 전자 장치.
According to paragraph 1,
Contains more memory,
An electronic device that stores in the memory a previous voice history generated based on a first event related to the voice command.
제7항에 있어서,
상기 제2 이벤트가 상기 선택 지시 명령인 경우는, 상기 제2 이벤트만으로 대응되는 기능이 수행될 수 없어 상기 이전 음성 이력이 필요한 경우인 전자 장치.
In clause 7,
When the second event is the selection instruction command, the corresponding function cannot be performed with only the second event and the previous voice history is required.
제1항에 있어서,
상기 프로세서는, 상기 제2 이벤트가 선택 지시 명령이면, 상기 음성 명령과 상기 비음성 명령을 포함하는 입력 방식이 다른 복수의 입력을 상호 연계한 것에 대응하는 결과를 상기 서버로부터 수신하여 출력하도록 상기 디스플레이부를 제어하는 전자 장치.
According to paragraph 1,
The processor is configured to receive from the server a result corresponding to a plurality of inputs using different input methods including the voice command and the non-voice command and output the display unit to receive and output a result corresponding to the connection between the plurality of input methods including the voice command and the non-voice command. Electronic device that controls.
전자 장치의 제어방법에 있어서,
음성 명령과 관련된 제1 이벤트가 대화형 입력 인터페이스를 통해 수신되면, 상기 제1 이벤트에 의해 검색된 복수의 검색 결과를 서버로부터 수신하여 출력하는 단계;
비대화형 입력 인터페이스를 이용하여 텍스트 입력을 위한 비음성 명령과 관련된 제2 이벤트를 수신하는 단계;
상기 제2 이벤트가 상기 제1 이벤트에 의해 검색된 복수의 검색 결과 중 하나를 선택하는 선택 지시 명령이면, 선택된 검색 결과에 대응한 화면을 상기 서버로부터 수신하여 출력하는 단계; 및
상기 제2 이벤트가 상기 제1 이벤트에 의해 검색된 복수의 검색 결과 중 하나를 선택하는 선택 지시 명령이 아니면, 상기 제1 이벤트에 의해 검색된 복수의 검색 결과에 기초하지 않고 상기 제2이벤트를 처리한 결과를 상기 서버로부터 수신하여 출력하는 단계를 포함하는, 전자 장치의 제어방법.
In a control method of an electronic device,
When a first event related to a voice command is received through an interactive input interface, receiving and outputting a plurality of search results retrieved by the first event from a server;
Receiving a second event related to a non-speech command for text input using a non-interactive input interface;
If the second event is a selection instruction command for selecting one of a plurality of search results retrieved by the first event, receiving and outputting a screen corresponding to the selected search result from the server; and
If the second event is not a selection instruction command for selecting one of the plurality of search results retrieved by the first event, the result of processing the second event not based on the plurality of search results retrieved by the first event A control method of an electronic device comprising receiving and outputting from the server.
제10항에 있어서,
상기 제2 이벤트가 상기 선택 지시 명령인지 여부는, 상기 제1이벤트 및 상기 제2이벤트가 관련이 있는지 여부와 관련된 전자 장치의 제어방법.
According to clause 10,
Whether the second event is the selection instruction command is related to whether the first event and the second event are related.
제11항에 있어서,
상기 제1이벤트 및 상기 제2이벤트가 관련이 있는 경우는, 제2이벤트가 제1이벤트에 종속적으로 처리되는 경우인 전자 장치의 제어방법.
According to clause 11,
When the first event and the second event are related, the second event is processed dependently on the first event.
제10항에 있어서,
상기 제2 이벤트가 상기 선택 지시 명령인지 여부를 식별한 상기 서버로부터 수신한 데이터에 기초하여, 상기 선택된 검색 결과에 대응한 화면 또는 상기 제2이벤트를 처리한 결과 중 하나를 출력하는 단계를 더 포함하는 전자 장치의 제어방법.
According to clause 10,
It further includes outputting one of a screen corresponding to the selected search result or a result of processing the second event, based on data received from the server that identifies whether the second event is the selection instruction command. A control method of an electronic device.
제10항에 있어서,
상기 수신한 제2이벤트에 의한 텍스트 입력은, 상기 제1이벤트에 의한 음성 명령과 동일한 형태로 변환된 텍스트 입력인 전자 장치의 제어방법.
According to clause 10,
A method of controlling an electronic device in which the text input by the received second event is a text input converted into the same form as the voice command by the first event.
제10항에 있어서,
상기 비음성 명령은 외부 리모트 컨트롤러의 조작 또는 제스쳐 입력에 의해 생성된 전자 장치의 제어방법.
According to clause 10,
The non-voice command is a control method of an electronic device generated by manipulation of an external remote controller or gesture input.
제10항에 있어서,
상기 음성 명령과 관련된 제1 이벤트에 기초하여 생성된 이전 음성 이력을 저장하는 단계를 더 포함하는 전자 장치의 제어방법.
According to clause 10,
A method of controlling an electronic device further comprising storing a previous voice history generated based on a first event related to the voice command.
제16항에 있어서,
상기 제2 이벤트가 상기 선택 지시 명령인 경우는, 상기 제2 이벤트만으로 대응되는 기능이 수행될 수 없어 상기 이전 음성 이력이 필요한 경우인 전자 장치의 제어방법.
According to clause 16,
When the second event is the selection instruction command, the corresponding function cannot be performed with only the second event and the previous voice history is required.
전자 장치의 프로세서에 의해 실행 가능한 방법의 프로그램이 기록된, 컴퓨터에 의해 독취가능한 비휘발성의 기록매체에 있어서,
상기 방법은,음성 명령과 관련된 제1 이벤트가 대화형 입력 인터페이스를 통해 수신되면, 상기 제1 이벤트에 의해 검색된 복수의 검색 결과를 서버로부터 수신하여 출력하는 단계;
비대화형 입력 인터페이스를 이용하여 텍스트 입력을 위한 비음성 명령과 관련된 제2 이벤트를 수신하는 단계;
상기 제2 이벤트가 상기 제1 이벤트에 의해 검색된 복수의 검색 결과 중 하나를 선택하는 선택 지시 명령이면, 선택된 검색 결과에 대응한 화면을 상기 서버로부터 수신하여 출력하는 단계; 및
상기 제2 이벤트가 상기 제1 이벤트에 의해 검색된 복수의 검색 결과 중 하나를 선택하는 선택 지시 명령이 아니면, 상기 제1 이벤트에 의해 검색된 복수의 검색 결과에 기초하지 않고 상기 제2이벤트를 처리한 결과를 상기 서버로부터 수신하여 출력하는 단계를 포함하는 기록매체.
A non-volatile recording medium readable by a computer on which a program of a method executable by a processor of an electronic device is recorded,
The method includes, when a first event related to a voice command is received through an interactive input interface, receiving and outputting a plurality of search results retrieved by the first event from a server;
Receiving a second event related to a non-speech command for text input using a non-interactive input interface;
If the second event is a selection instruction command for selecting one of a plurality of search results retrieved by the first event, receiving and outputting a screen corresponding to the selected search result from the server; and
If the second event is not a selection instruction command for selecting one of the plurality of search results retrieved by the first event, the result of processing the second event not based on the plurality of search results retrieved by the first event A recording medium comprising the step of receiving and outputting from the server.
제18항에 있어서,
상기 제2 이벤트가 상기 선택 지시 명령인지 여부는, 상기 제1이벤트 및 상기 제2이벤트가 관련이 있는지 여부와 관련된 기록매체.
According to clause 18,
Whether the second event is the selection instruction command is related to whether the first event and the second event are related.
제19항에 있어서,
상기 제1이벤트 및 상기 제2이벤트가 관련이 있는 경우는, 제2이벤트가 제1이벤트에 종속적으로 처리되는 경우인 기록매체.
According to clause 19,
When the first event and the second event are related, the recording medium is a case where the second event is processed dependently on the first event.
KR1020230119540A 2020-10-29 2023-09-08 Server and control method thereof, and image processing apparatus and control method thereof KR102661376B1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020230119540A KR102661376B1 (en) 2020-10-29 2023-09-08 Server and control method thereof, and image processing apparatus and control method thereof
KR1020240053940A KR20240063074A (en) 2020-10-29 2024-04-23 Server and control method thereof, and image processing apparatus and control method thereof

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
KR1020200141831A KR102317742B1 (en) 2019-11-29 2020-10-29 Server and control method thereof, and image processing apparatus and control method thereof
KR1020220082242A KR102598470B1 (en) 2020-10-29 2022-07-05 Server and control method thereof, and image processing apparatus and control method thereof
KR1020230119540A KR102661376B1 (en) 2020-10-29 2023-09-08 Server and control method thereof, and image processing apparatus and control method thereof

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020220082242A Division KR102598470B1 (en) 2020-10-29 2022-07-05 Server and control method thereof, and image processing apparatus and control method thereof

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020240053940A Division KR20240063074A (en) 2020-10-29 2024-04-23 Server and control method thereof, and image processing apparatus and control method thereof

Publications (2)

Publication Number Publication Date
KR20230136575A KR20230136575A (en) 2023-09-26
KR102661376B1 true KR102661376B1 (en) 2024-04-29

Family

ID=78287367

Family Applications (4)

Application Number Title Priority Date Filing Date
KR1020210140274A KR102418798B1 (en) 2020-10-29 2021-10-20 Server and control method thereof, and image processing apparatus and control method thereof
KR1020220082242A KR102598470B1 (en) 2020-10-29 2022-07-05 Server and control method thereof, and image processing apparatus and control method thereof
KR1020230119540A KR102661376B1 (en) 2020-10-29 2023-09-08 Server and control method thereof, and image processing apparatus and control method thereof
KR1020240053940A KR20240063074A (en) 2020-10-29 2024-04-23 Server and control method thereof, and image processing apparatus and control method thereof

Family Applications Before (2)

Application Number Title Priority Date Filing Date
KR1020210140274A KR102418798B1 (en) 2020-10-29 2021-10-20 Server and control method thereof, and image processing apparatus and control method thereof
KR1020220082242A KR102598470B1 (en) 2020-10-29 2022-07-05 Server and control method thereof, and image processing apparatus and control method thereof

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020240053940A KR20240063074A (en) 2020-10-29 2024-04-23 Server and control method thereof, and image processing apparatus and control method thereof

Country Status (1)

Country Link
KR (4) KR102418798B1 (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013020411A (en) * 2011-07-11 2013-01-31 Sony Corp Information processing apparatus, information processing method and program
US20130144629A1 (en) * 2011-12-01 2013-06-06 At&T Intellectual Property I, L.P. System and method for continuous multimodal speech and gesture interaction

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101789619B1 (en) * 2010-11-22 2017-10-25 엘지전자 주식회사 Method for controlling using voice and gesture in multimedia device and multimedia device thereof
KR20130004050A (en) * 2011-04-28 2013-01-09 삼성전자주식회사 Method for providing link list using voice recognition and display apparatus thereof

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013020411A (en) * 2011-07-11 2013-01-31 Sony Corp Information processing apparatus, information processing method and program
US20130144629A1 (en) * 2011-12-01 2013-06-06 At&T Intellectual Property I, L.P. System and method for continuous multimodal speech and gesture interaction

Also Published As

Publication number Publication date
KR20240063074A (en) 2024-05-09
KR102418798B1 (en) 2022-07-08
KR20230136575A (en) 2023-09-26
KR20220099941A (en) 2022-07-14
KR102598470B1 (en) 2023-11-07
KR20210129020A (en) 2021-10-27

Similar Documents

Publication Publication Date Title
KR102053820B1 (en) Server and control method thereof, and image processing apparatus and control method thereof
JP6824316B2 (en) Video processing equipment, its control method, and video processing system
KR102155482B1 (en) Display apparatus and control method thereof
US11700409B2 (en) Server and method for controlling server
EP2725576A1 (en) Image processing apparatus and control method thereof and image processing system.
US20010043233A1 (en) Agent display apparatus displaying personified agent for selectively executing process
CN112885354B (en) Display device, server and display control method based on voice
KR102643172B1 (en) Display apparatus, voice acquiring apparatus and voice recognition method thereof
KR102175135B1 (en) Server and control method thereof, and image processing apparatus and control method thereof
KR102661376B1 (en) Server and control method thereof, and image processing apparatus and control method thereof
KR102317742B1 (en) Server and control method thereof, and image processing apparatus and control method thereof
KR101877430B1 (en) Image processing apparatus and control method thereof, image processing system
KR102463066B1 (en) Display device, server device, display system comprising them and methods thereof
US12149773B2 (en) Voice-based scene selection for video content on a computing device
US20240064363A1 (en) Voice-based scene selection for video content on a computing device

Legal Events

Date Code Title Description
A107 Divisional application of patent
E701 Decision to grant or registration of patent right
GRNT Written decision to grant