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 PDFInfo
- 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
Links
- 238000012545 processing Methods 0.000 title claims abstract description 85
- 238000000034 method Methods 0.000 title claims description 80
- 238000004891 communication Methods 0.000 claims abstract description 28
- 230000002452 interceptive effect Effects 0.000 claims description 94
- 230000006870 function Effects 0.000 claims description 13
- 230000001755 vocal effect Effects 0.000 abstract description 8
- 230000000875 corresponding effect Effects 0.000 description 45
- 239000003795 chemical substances by application Substances 0.000 description 41
- 230000008569 process Effects 0.000 description 33
- 230000009471 action Effects 0.000 description 32
- 238000010586 diagram Methods 0.000 description 10
- 230000005540 biological transmission Effects 0.000 description 3
- 239000004973 liquid crystal related substance Substances 0.000 description 3
- 230000001276 controlling effect Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- OKTJSMMVPCPJKN-UHFFFAOYSA-N Carbon Chemical compound [C] OKTJSMMVPCPJKN-UHFFFAOYSA-N 0.000 description 1
- 239000002041 carbon nanotube Substances 0.000 description 1
- 229910021393 carbon nanotube Inorganic materials 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 239000002772 conduction electron Substances 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000002159 nanocrystal Substances 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 239000000758 substrate Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/16—Sound input; Sound output
- G06F3/167—Audio in a user interface, e.g. using voice commands for navigating, audio feedback
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/03—Arrangements for converting the position or the displacement of a member into a coded form
- G06F3/041—Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
- G06F3/0412—Digitisers structurally integrated in a display
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/14—Digital 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
본 발명은 영상신호를 영상으로 표시되게 처리하는 시스템 내의 서버 및 그 제어방법과, 영상처리장치 및 그 제어방법에 관한 것으로서, 상세하게는 사용자의 음성 명령을 인식함으로써 해당 음성 명령에 대응하는 기능 또는 동작을 실행할 수 있는 구조의 서버 및 그 제어방법과, 영상처리장치 및 그 제어방법에 관한 것이다.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
이하 실시예는 영상처리장치(100)가 자체적으로 영상을 표시할 수 있는 구조의 디스플레이장치, 예를 들면 TV로 구현된 경우에 관해 설명한다. 그러나, 본 발명의 사상은 영상처리장치(100)가 자체적으로 영상을 표시하지 않고 타 디스플레이장치에 영상데이터 또는 제어정보를 출력 가능한 구조의 장치인 경우에도 적용이 가능한 바, 본 발명의 구현 형태가 이하 설명하는 실시예에 한정되지 않는다. 즉, 본 발명의 사상은 다양하게 변경되어 적용됨으로써, 다양한 방식의 장치에서 구현될 수 있다.The following embodiment will describe a case where the
도 1에 도시된 바와 같이, 본 실시예에 따른 영상처리장치(100) 또는 디스플레이장치(100)는 외부의 영상공급원(미도시)로부터 영상신호를 수신한다. 디스플레이장치(100)가 수신 가능한 영상신호는 그 종류 또는 특성이 한정되지 않는 바, 예를 들면 디스플레이장치(100)는 방송국의 송출장비(미도시)로부터 송출되는 방송신호를 수신하고, 해당 방송신호를 튜닝하여 방송영상을 표시할 수 있다.As shown in FIG. 1, the
디스플레이장치(100)는 외부와 데이터/신호를 송수신하도록 통신하는 통신 인터페이스(interface)(110)와, 통신 인터페이스(110)에 수신되는 데이터를 기 설정된 프로세스(process)에 따라서 처리하는 프로세서(processor)(120)와, 프로세서(120)에서 처리되는 데이터가 영상데이터인 경우에 해당 영상데이터를 영상으로 표시하는 디스플레이(display)(130)와, 사용자에 의한 입력 동작이 수행되는 사용자 인터페이스(140)와, 데이터/정보가 저장되는 스토리지(storage)(150)와, 디스플레이장치(100)의 제반 동작을 제어하는 컨트롤러(controller)(160)를 포함한다.The
통신 인터페이스(110)는 디스플레이장치(100)가 서버 등과 같은 외부장치(미도시)와 양방향 통신이 가능하도록 데이터의 송수신을 수행한다. 통신 인터페이스(110)는 기 설정된 통신 프로토콜(protocol)에 따라서, 유선/무선을 통한 광역/근거리 네트워크 또는 로컬 접속 방식으로 외부장치(미도시)에 접속한다.The
통신 인터페이스(110)는 각 장치 별 접속 포트(port) 또는 접속 모듈(module)의 집합체에 의해 구현될 수 있는 바, 접속을 위한 프로토콜 또는 접속 대상이 되는 외부장치가 하나의 종류 또는 형식으로 한정되지 않는다. 통신 인터페이스(110)는 디스플레이장치(100)에 내장된 형태일 수 있으며, 전체 또는 일부의 구성이 디스플레이장치(100)에 애드-온(add-on) 또는 동글(dongle) 형태로 추가 설치되는 형식도 가능하다.The
통신 인터페이스(110)는 접속된 각 장치 별로 지정된 프로토콜에 따라서 신호의 송수신이 이루어지는 바, 접속된 각 장치에 대해 개별적인 접속 프로토콜 기반으로 신호를 송수신할 수 있다. 영상데이터의 경우를 예로 들면, 통신 인터페이스(110)는 RF(radio frequency)신호, 컴포지트(composite)/컴포넌트(component) 비디오, 슈퍼 비디오(super video), SCART, HDMI(high definition multimedia interface), 디스플레이포트(DisplayPort), UDI(unified display interface), 또는 와이어리스(wireless) HD 등 다양한 규격을 기반으로 신호의 송수신이 가능하다.The
프로세서(120)는 통신 인터페이스(110)에 수신되는 데이터/신호에 대해 다양한 프로세스를 수행한다. 통신 인터페이스(110)에 영상데이터가 수신되면, 프로세서(120)는 영상데이터에 대해 영상처리 프로세스를 수행하고, 이러한 프로세스가 수행된 영상데이터를 디스플레이(130)에 출력함으로써 디스플레이(130)에 해당 영상데이터에 기초하는 영상이 표시되게 한다. 통신 인터페이스(110)에 수신되는 신호가 방송신호인 경우, 프로세서(120)는 특정 채널로 튜닝된 방송신호로부터 영상, 음성 및 부가데이터를 추출하고, 영상을 기 설정된 해상도로 조정하여 디스플레이(130)에 표시되게 한다.The
프로세서(120)가 수행하는 영상처리 프로세스의 종류는 한정되지 않으며, 예를 들면 영상데이터의 영상 포맷에 대응하는 디코딩(decoding), 인터레이스(interlace) 방식의 영상데이터를 프로그레시브(progressive) 방식으로 변환하는 디인터레이싱(de-interlacing), 영상데이터를 기 설정된 해상도로 조정하는 스케일링(scaling), 영상 화질 개선을 위한 노이즈 감소(noise reduction), 디테일 강화(detail enhancement), 프레임 리프레시 레이트(frame refresh rate) 변환 등을 포함할 수 있다.The type of image processing process performed by the
프로세서(120)는 데이터의 종류, 특성에 따라서 다양한 프로세스를 수행할 수 있는 바, 프로세서(120)가 수행 가능한 프로세스를 영상처리 프로세스로 한정할 수 없다. 또한, 프로세서(120)가 처리 가능한 데이터가 통신 인터페이스(110)에 수신되는 것만으로 한정할 수 없다. 예를 들면, 프로세서(120)는 사용자 인터페이스(140)를 통해 사용자의 발화가 입력되면, 기 설정된 음성처리 프로세스에 따라서 해당 발화를 처리할 수 있다.Since the
프로세서(120)는 이러한 여러 기능을 통합시킨 SOC(system-on-chip)가, 또는 이러한 각 프로세스를 독자적으로 수행할 수 있는 개별적인 칩셋(chip-set)들이 인쇄회로기판 상에 장착된 영상처리보드(미도시)로 구현되며, 디스플레이장치(100)에 내장된다.The
디스플레이(130)는 프로세서(120)에 의해 처리된 영상신호/영상데이터를 영상으로 표시한다. 디스플레이(130)의 구현 방식은 한정되지 않는 바, 액정(liquid crystal), 플라즈마(plasma), 발광 다이오드(light-emitting diode), 유기발광 다이오드(organic light-emitting diode), 면전도 전자총(surface-conduction electron-emitter), 탄소 나노 튜브(carbon nano-tube), 나노 크리스탈(nano-crystal) 등의 다양한 디스플레이 방식으로 구현될 수 있다.The
디스플레이(130)는 그 구현 방식에 따라서 부가적인 구성을 추가적으로 포함할 수 있다. 예를 들면, 액정 방식인 경우에, 디스플레이(130)는 액정 디스플레이 패널(미도시)과, 이에 광을 공급하는 백라이트유닛(미도시)과, 패널(미도시)을 구동시키는 패널구동기판(미도시) 등을 포함한다.The
사용자 인터페이스(140)는 사용자의 조작 또는 입력에 따라서 기 설정된 다양한 제어 커맨드(command) 또는 정보를 컨트롤러(160)에 전달한다. 사용자 인터페이스(140)는 사용자의 의도에 따라서 사용자에 의해 발생하는 다양한 이벤트(event)를 정보화하여 컨트롤러(160)에 전달한다. 여기서, 사용자에 의해 발생하는 이벤트는 여러 가지 형태가 가능한 바, 예를 들면 사용자의 조작, 발화, 제스쳐(gesture) 등이 가능하다.The
사용자 인터페이스(140)는 사용자가 정보를 입력하는 방식에 대응하여, 해당 방식으로 입력되는 정보를 감지할 수 있게 마련된다. 이에 따라서, 사용자 인터페이스(140)는 대화형 입력 인터페이스(141) 및 비대화형 입력 인터페이스(142)로 구별할 수 있다.The
대화형 입력 인터페이스(141)는 사용자의 발화가 입력되도록 마련된다. 즉, 대화형 입력 인터페이스(141)는 마이크로폰으로 구현되며, 디스플레이장치(100)의 외부 환경에서 발생하는 다양한 소리를 감지한다. 대화형 입력 인터페이스(141)는 일반적으로 사용자에 의한 발화를 감지할 수 있지만, 사용자 이외의 다양한 환경적 요인에 의해 발생하는 소리도 감지할 수 있다.The
비대화형 입력 인터페이스(142)는 발화 방식 이외의 사용자의 입력이 수행되게 마련된다. 이 경우에 비대화형 입력 인터페이스(142)의 구현 형태는 다양하며, 예를 들면, 디스플레이장치(100)와 분리 이격된 리모트 컨트롤러(remote controller)나, 디스플레이장치(100) 외측에 설치된 메뉴 키(menu-key) 또는 입력 패널(panel)이나, 사용자의 제스쳐를 감지하는 모션센서(motion sensor) 또는 카메라(camera) 등이 가능하다.The
또는, 비대화형 입력 인터페이스(142)는 디스플레이(130)에 설치된 터치스크린(touch-screen)으로 구현될 수도 있다. 이 경우에, 사용자는 디스플레이(130)에 표시된 입력메뉴 또는 UI 영상을 터치함으로써, 기 설정된 커맨드 또는 정보가 컨트롤러(160)에 전달되게 할 수 있다.Alternatively, the
스토리지(150)는 컨트롤러(160)의 제어에 따라서 다양한 데이터가 저장된다. 스토리지(150)는 시스템 전원의 제공 유무와 무관하게 데이터를 보존할 수 있도록, 플래시메모리(flash-memory), 하드디스크 드라이브(hard-disc drive)와 같은 비휘발성 메모리로 구현된다. 스토리지(150)는 컨트롤러(160)에 대해 억세스(access)됨으로써, 기 저장된 데이터의 독취, 기록, 수정, 삭제, 갱신 등이 수행된다.The
컨트롤러(160)는 CPU로 구현되며, 소정 이벤트의 발생에 따라서 프로세서(120)를 비롯한 디스플레이장치(100)의 제반 구성의 동작을 제어한다. 사용자 발화 이벤트의 경우를 예를 들면, 컨트롤러(160)는 대화형 입력 인터페이스(141)를 통해 사용자의 발화가 입력되면 이 입력된 발화를 처리하도록 프로세서(120)를 제어한다. 만일 사용자가 채널 번호를 발화하였다면, 컨트롤러(160)는 발화한 채널번호로 방송영상이 전환 표시되도록 제어한다.The
여기서, 입력된 발화를 처리하는 과정은 디스플레이장치(100) 단독으로 수행할 수도 있지만, 시스템의 부하나 처리능력 등 여러 요인을 고려하여 외부장치와 분담하여 수행할 수도 있다. 이러한 구성에 관하여 이하 설명한다.Here, the process of processing the input utterance may be performed by the
도 2는 본 실시예의 시스템이 포함하는 서버(200, 300)의 구성 블록도이다.Figure 2 is a block diagram of
도 2에 도시된 바와 같이, 디스플레이장치(100)는 네트워크를 통해 하나 이상의 서버(200, 300)와 통신 가능하게 접속한다. 여기서, 디스플레이장치(100)는 사용자의 발화를 음성 명령으로 변환하는 STT(speech-to-text) 서버(200)와, 음성 명령을 분석함으로써 해당 음성 명령에 대응하는 동작/액션(action)/결과를 판단하는 대화형 서버(300)에 각기 접속한다. 여기서 각 서버(200, 300)의 명칭은 각 기능을 고려하여 단지 상호 구분을 위해 적용된 것인 바, 해당 명칭이 각 서버(200, 300)의 구성적 특징을 한정하지는 않는다.As shown in FIG. 2, the
STT 서버(200)는 음성신호의 파형을 분석함으로써 음성신호의 내용을 텍스트로 생성한다. 이에 따라서, STT 서버(200)는 디스플레이장치(100)로부터 음성신호가 수신되면, 이를 텍스트의 음성 명령으로 변환한다. 여기서, 발화는 사용자에 의해 이루어진 동작을 지칭하며, 음성 명령은 발화의 내용이 텍스트 형식으로 데이터화된 것을 지칭한다.The
대화형 서버(300)는 음성 명령에 대응하는 다양한 디스플레이장치(100)의 동작을 검색한다. 대화형 서버(300)는 디스플레이장치(100)로부터 수신된 음성 명령을 분석하고, 분석 결과에 따라서 해당 음성 명령에 대응하는 동작을 수행하기 위한 제어신호나 또는 해당 음성 명령에 기초하여 검색된 결과 정보를 디스플레이장치(100)에 전송한다.The
대화형 서버(300)는 디스플레이장치(100)와 통신하기 위한 서버측 통신 인터페이스(310)와, 서버측 통신 인터페이스(310)를 통해 수신되는 음성 명령에 대한 처리를 수행하는 서버측 프로세서(320)를 포함한다.The
이러한 디스플레이장치(100), STT 서버(200) 및 대화형 서버(300)에 의한 시스템 하에서, 디스플레이장치(100)의 사용자가 발화하는 경우에 수행되는 동작에 관해 이하 설명한다.Under the system using the
디스플레이장치(100)는 사용자의 발화가 입력되면, 해당 발화에 의한 음성신호를 STT 서버(200)에 전송한다. STT 서버(200)는 디스플레이장치(100)로부터 수신되는 음성신호를 데이터화된 음성 명령으로 변환하고, 이 음성 명령을 디스플레이장치(100)에 전송한다. 디스플레이장치(100)는 STT 서버(200)로부터 수신된 음성 명령을 대화형 서버(300)로 전송한다.When a user's speech is input, the
대화형 서버(300)는 음성 명령의 내용을 분석하고, 음성 명령에 대응하는 결과를 도출하여 디스플레이장치(100)에 반환한다. 예를 들면, 음성 명령의 내용이 "이번 주의 'program ABC'의 출연자는 누구인가?"이라고 할 때, 대화형 서버(300)는 내부 또는 외부의 데이터베이스에서 "이번 주", "program ABC", "출연자"의 키워드를 가지고 검색을 수행하여 그 결과를 취득한다.The
여기서, 데이터베이스는 키워드의 카테고리 별로 구조화(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
이 경우에 대화형 서버(300)는 음성 명령에 대한 복수의 검색 결과 중에서, 사용자의 의도에 맞는 어느 하나의 검색 결과를 선택할 필요가 있다. 대화형 서버(300)가 하나의 검색 결과를 선택하는 대응 방법으로는, 예를 들면 다음과 같은 두 가지 방법이 가능하다.In this case, the
첫 번째 방법은, 대화형 서버(300)의 클라이언트, 즉 디스플레이장치(100)가 자체적으로 수립한 특정 규칙에 의해 어느 하나의 검색 결과가 선택된다. 예를 들면, 음성 명령이 특정 프로그램의 방송 시간을 문의하는 내용이고, 이러한 조건을 만족하는 프로그램이 복수 개라면, 가장 최근에 방송될 프로그램이 선택될 수 있다. 두 번째 방법은, 대화형 서버(300)는 디스플레이장치(100)의 사용자가 어느 하나의 검색 결과를 선택하는 발화를 하면, 해당 발화를 이전 발화 이력과 연결시켜 사용자의 원래 의도에 맞는 검색 결과를 선택할 수 있다.In the first method, a search result is selected according to a specific rule established by the client of the
그런데, 이와 같은 시스템에서 사용자에게는 다양한 입력 방식의 환경이 제공되므로, 디스플레이장치(100)가 음성인식 입력 환경을 지원한다고 하더라도 사용자는 다양한 입력 방식으로 각 상황에서 가장 편리하다고 생각되는 방식을 선택하여 입력을 수행할 것이다. 이러한 다중 입력 모드를 지원하는 시스템의 환경에서, 만일 사용자의 다중 입력들 사이에 이력 관리를 개별적으로 하게 된다면, 사용자의 원래 의도를 반영하는 결과를 선택 또는 도출하는 것은 제약이 있을 것이다. 만일, 사용자가 최초에 발화 입력을 수행하고 이후에 다른 방식으로 입력 방법을 바꾸어 사용했다고 해서 사용자가 원래 의도한 결과가 제공되지 않는다면, 사용자는 사용 환경에 대해 불편을 느낄 것이다.However, in such a system, the user is provided with a variety of input method environments, so even if the
따라서, 대화형 서버(300) 및 디스플레이장치(100)에 의한 대화형 시스템 환경에 있어서, 사용자로부터의 발화에 의해 최초 검색된 결과가 복수 개이고 이후 사용자가 비발화 방식의 입력을 통해 어느 하나의 검색 결과를 선택하면, 대화형 시스템은 사용자가 최초 발화의 의도에 맞는 검색 결과를 제공할 필요가 있다.Therefore, in an interactive system environment using the
여기서, 종래 기술에 따른 시스템에서는 이러한 다중 입력 모드 각각에 대한 이력 관리를 통합적으로 지원하지 않는다. 즉, 종래 기술에 따른 대화형 서버(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
이러한 종래 기술에 따른 시스템에서, 앞서 두 번째 방법에 따라서 디스플레이장치(100)가 대화형 서버(300)로부터 수신한 복수의 검색 결과를 표시한 상태를 고려한다. 이 때, 사용자가 만일 발화가 아닌 비대화형 입력 인터페이스(142)를 통한 비발화 방식으로 입력을 수행할 수도 있는데, 종래 기술에 따른 대화형 서버(300)는 발화 입력 방식 및 비발화 입력 방식 간에 입력의 이력을 상호 연계시켜 참조하지 않으므로 사용자의 의도에 맞지 않는 결과가 나오게 된다.In this system according to the prior art, consider a state in which the
예를 들어 사용자가 "'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
이러한 점을 고려하여, 본 실시예에 따르면 다음과 같은 방법이 제안된다.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
대화형 서버(300)는 소정 이벤트에 대한 액션을 결정할 때에 이전에 발생했던 이벤트들의 이력을 참조할 수 있다. 대화형 서버(300)는 디스플레이장치(100)의 대화형 입력 인터페이스(141) 및 비대화형 입력 인터페이스(142) 각각에 의해 발생하는 이벤트들을 개별적으로 관리하는 것이 아닌 통합적으로 관리함으로써, 새로 발생한 이벤트에 대응하는 액션을 결정할 때에 대화형 입력 인터페이스(141) 및 비대화형 입력 인터페이스(142)의 여부에 무관하게 이전에 발생했던 이벤트를 참조할 수 있다.The
예를 들어 사용자의 최초 발화에 대응하는 검색 결과가 복수 개라면, 대화형 서버(300)는 이 복수의 검색 결과를 사용자가 선택 가능하게 제공한다. 이 때, 사용자가 어느 하나의 검색 결과를 선택하는 지시를 비발화 방식으로 입력하더라도, 대화형 서버(300)는 이벤트 입력의 통합 관리를 통해 신규 이벤트가 이전 이벤트와 입력 방식이 다르더라도 양자간을 상호 관련시킬 수 있다. 이로써, 사용자가 원하는 검색 결과가 도출되어 사용자에게 제공될 수 있다.For example, if there are a plurality of search results corresponding to the user's initial utterance, the
도 3 및 도 4는 대화형 서버(300)가 이벤트에 대응하는 검색 결과를 디스플레이장치(100)에 제공하는 방법을 나타내는 플로우차트이다.3 and 4 are flowcharts showing a method by which the
도 3에 도시된 바와 같이, S100 단계에서, 대화형 서버(300)는 디스플레이장치(100)로부터 발화에 의한 음성 명령인 제1이벤트를 수신한다.As shown in FIG. 3, in step S100, the
S110 단계에서, 대화형 서버(300)는 제1이벤트를 분석하여 검색 키워드를 도출한다.In step S110, the
S120 단계에서, 대화형 서버(300)는 도출된 검색 키워드로 검색을 수행하고, 제1이벤트의 발생 및 처리 이력을 저장한다.In step S120, the
S130 단계에서, 대화형 서버(300)는 검색 결과가 복수 개인지 판단한다.In step S130, the
검색 결과가 복수 개가 아니라고 판단하면, S140 단계에서, 대화형 서버(300)는 검색 결과를 디스플레이장치(100)에 전송하고 종료한다.If it is determined that there are not multiple search results, in step S140, the
반면, 검색 결과가 복수 개라고 판단하면, S150 단계에서, 대화형 서버(300)는 복수의 검색 결과를 디스플레이장치(100)에 전송하고, 복수의 검색 결과 중 어느 하나를 선택할 것을 디스플레이장치(100)에 요청한다.On the other hand, if it is determined that there are multiple search results, in step S150, the
도 4에 도시된 바와 같이, S160 단계에서, 대화형 서버(300)는 디스플레이장치(100)로부터 선택 지시를 포함하는 제2이벤트를 수신한다. 여기서, 제2이벤트는 디스플레이장치(100)에서 비발화 방식의 사용자 입력에 의해 발생한 것이다.As shown in FIG. 4, in step S160, the
S170 단계에서, 대화형 서버(300)는 기 저장된 제1이벤트의 발생 및 처리 이력을 참조하여 제1이벤트 및 제2이벤트의 관련성, 즉 제2이벤트가 제1이벤트에 종속적으로 처리되어야 할 것인지를 판단한다. 예를 들면, 대화형 서버(300)는 제2이벤트가 제1이벤트에 의해 검색된 복수의 검색 결과에 대한 선택 지시 명령인지를 판단한다.In step S170, the
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
반면, 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
S200 단계에서, 대화형 서버(300)는 제1이벤트 및 제2이벤트에 따른 최종 검색 결과를 디스플레이장치(100)에 전송한다.In step S200, the
이하, 대화형 서버(300)의 구체적인 내부 구성에 관해 도 5를 참조하여 설명한다.Hereinafter, the specific internal configuration of the
도 5는 대화형 서버(300)의 서버측 프로세서(320)를 기능별로 세분화시킨 구성 블록도이다.Figure 5 is a block diagram showing the server-
도 5에 도시된 바와 같이, 대화형 서버(300)의 서버측 프로세서(320)는 서버측 통신 인터페이스(310)를 통해 수신되는 음성 명령에 대한 분석을 수행하는 대화 엔진(dialog engine)(321)과, 대화 엔진(321)으로부터 전달받은 검색 키워드에 기초하여 검색을 수행하는 컨텐츠 매니저(322)(content manager)를 포함한다.As shown in FIG. 5, the server-
대화 엔진(321)은 대화 엔진 매니저(dialog engine manager)(323)와, 대화 에이전트(dialog agent)(324)와, 액션 에이전트(action agent)(325)와, 데이터베이스(326)를 포함한다. 서버측 프로세서(320) 또는 대화 엔진(321)에 대한 이러한 구성요소들의 구분은 기능별로 편의상 적용된 것으로서, 서버측 프로세서(320) 또는 대화 엔진(321)이 반드시 이러한 구분 형태를 가져야 한다는 것을 의미하지는 않는다.The
또한, 상기한 구성요소들은 하드웨어적인 구성일 수 있지만, 소프트웨어적인 구성일 수도 있으며, 또는 하드웨어 및 소프트웨어들이 혼용되어 적용될 수도 있다.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
여기서, 대화 에이전트(324)에 의해 생성된 구조화된 데이터를, 대화 프레임(dialog frame)이라고 이하 지칭한다. 대화 프레임은 음성 명령 이벤트의 내용을 포함하되, 대화 엔진 매니저(323), 액션 에이전트(325), 컨텐츠 매니저(322) 등 타 구성요소가 해독 및 참조할 수 있도록 음성 명령을 카테고리 별로 구조화시킨 데이터이다. 카테고리 및 구조화의 형태는 서버측 프로세서(320)의 설계 방식에 따라서 다양하게 결정될 수 있다.Here, the structured data generated by the
대화 프레임은 음성 명령에서 사용자의 목적과, 그 목적을 달성하기 위해 필요한 속성과, 그 속성의 값에 관한 정보를 포함한다. 대화 프레임에 관한 구체적인 예시는 후술한다.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
액션 에이전트(325)는 판단 과정에서 정보 검색이 필요한 경우에, 대화 프레임에서 추출한 검색용 키워드를 컨텐츠 매니저(322)에 전달하여 정보 검색을 요청할 수 있다. 컨텐츠 매니저(322)는 전달받은 키워드를 가지고 대화형 서버(300)의 내부 또는 외부에 있는 다양한 종류의 검색 데이터베이스 상에서 검색을 수행하고, 검색 결과를 액션 에이전트(325)에 반환한다.If information search is necessary during the decision process, the
대화 엔진 매니저(323)는 액션 에이전트(325)로부터 이벤트에 대응하는 액션 또는 검색의 결과를 수신하면, 수신된 결과를 서버측 통신 인터페이스(310)에 전달함으로써 디스플레이장치(100)에 전송되도록 한다.When the
데이터베이스(326)는 이상과 같은 과정에서 대화 엔진 매니저(323), 대화 에이전트(324), 액션 에이전트(325)에 의해 참조될 수 있는 제반 정보를 포함한다. 예를 들면, 데이터베이스(326)는 대화 에이전트(324)가 대화 프레임을 생성하기 위한 컨텍스트(context) 정보, 이벤트 이력 정보, 대화 모델 정보와, 액션 에이전트(325)가 이벤트에 대응하는 액션을 판단하기 위한 액션 모델 정보 등을 포함할 수 있다.The
이상의 구조 하에서, 대화형 서버(300)가 디스플레이장치(100)로부터 수신되는 음성 명령에 대응하는 결과를 디스플레이장치(100)에 반환하는 경우의 구체적인 동작 예시에 관해 설명한다.Under the above structure, a specific example of operation when the
도 6 및 도 7은 디스플레이장치(100) 및 대화형 서버(300)와, 대화형 서버(300) 내의 각 구성요소들 사이에서 수행되는 데이터의 전송 관계를 나타내는 예시도이다.Figures 6 and 7 are exemplary diagrams showing the data transmission relationship between the
도 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
대화 엔진 매니저(323)는 서버측 통신 인터페이스(310)에 수신된 제1이벤트를 대화 에이전트(324)에 전달한다(420).The
대화 에이전트(324)는 제1이벤트를 분석함으로써, 제1이벤트에 대응하는 대화 프레임을 작성한다. 제1이벤트가 "이번 주의 'program ABC'의 출연자는 누구인가?"의 내용일 때, 대화 프레임은 다음과 같이 표현될 수 있다.The
(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
대화 에이전트(324)로부터 이와 같이 생성된 대화 프레임을 수신하면(430), 대화 엔진 매니저(323)는 대화 프레임을 액션 에이전트(325)에 전달한다(440).Upon receiving the dialogue frame created in this way from the dialogue agent 324 (430), the
액션 에이전트(325)는 전달받은 대화 프레임에 기초하여, 다음과 같은 키워드를 작성하여 컨텐츠 매니저(322)에 전달한다(450).The
(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
컨텐츠 매니저(322)는 액션 에이전트(325)로부터 전달받은 키워드로, 다양한 컨텐츠 및 메타데이터의 검색 서비스 상에서 검색을 수행한다. 검색 대상은 컨텐츠 매니저(322)가 억세스할 수 있는 제반 데이터베이스, 검색 서비스, 컨텐츠 서비스가 가능하다.The
컨텐츠 매니저(322)는 검색을 통해 나온 검색 결과를 대화 에이전트(324)에 전달한다(460). 예를 들면, 검색 결과는 다음과 같이 복수 개를 포함할 수 있다.The
(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
대화 엔진 매니저(323)는 검색 결과 및 명령어를 디스플레이장치(100)에 전송한다(480).The
도 7에 도시된 바와 같이, 디스플레이장치(100)는 대화 엔진 매니저(323)로부터 수신된 명령어에 따라서, 복수의 검색 결과를 사용자가 선택 가능하게 표시하고, 표시된 검색 결과 중 어느 하나를 선택할 것을 디스플레이장치(100)의 시스템 발화에 의해 사용자에게 알린다.As shown in FIG. 7, the
이에, 사용자는 리모트 컨트롤러(미도시)의 버튼 조작 또는 제스쳐와 같은 비발화 방식에 의해, 예를 들어 첫 번째 검색결과의 선택 지시를 입력한다. 이러한 입력을 제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
디스플레이장치(100)는 제2이벤트를 대화 엔진 매니저(323)에 전송한다(510).The
대화 엔진 매니저(323)는 제2이벤트를 대화 에이전트(324)에 전달한다(520).The
제2이벤트가 단지 "1번"이라는 내용만을 포함하고 있는 바, 제2이벤트의 내용만으로 대화 에이전트(324)가 해당 제2이벤트를 처리하는 것은 곤란하다. 이에, 대화 에이전트(324)는 이전 수행된 이벤트 처리 이력로부터 제1이벤트에 관한 처리상태 정보를 호출하고, 호출된 정보에 기초하여 다음과 같은 대화 프레임을 생성한다.Since the second event only contains the content “number 1,” it is difficult for the
(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
대화 에이전트(324)는 생성한 대화 프레임을 대화 엔진 매니저(323)에게 전달하며(530), 대화 엔진 매니저(323)는 대화 프레임을 액션 에이전트(325)에 전달한다(540).The
액션 에이전트(325)는 대화 프레임 내의 순서 조건 카테고리의 속성값에 기초하여, 앞선 제1이벤트에 의해 검색된 세 검색 결과 중에서 첫 번째 검색 결과를 선택한다. 액션 에이전트(325)는 "program ABC / 2013.06.04 17:00 / 채널 4"의 선택 결과를 대화 엔진 매니저(323)에게 전달한다(550).The
대화 엔진 매니저(323)는 전달받은 선택 결과를 디스플레이장치(100)에 전달한다(560). 이 때, 대화 엔진 매니저(323)는 선택 결과를 참조하여 대화 에이전트(324)에 의해 작성된 시스템 발화 명령어를 추가적으로 디스플레이장치(100)에 전달할 수 있다.The
디스플레이장치(100)는 전달받은 명령어에 따라서, 채널 4에서 2013.06.04 17:00에 방송되는 "program ABC"의 출연자를 시스템 발화를 통해 출력한다.According to the received command, the
이상 실시예에 따르면, 디스플레이장치(100) 및 대화형 서버(300)에 의해 구현되는 시스템에서 사용자가 발화를 통해 입력한 목표 및 조건을 만족하는 결과물이 복수인 경우에, 사용자가 리모트 컨트롤러나 제스쳐 등의 비발화 방식의 입력을 혼용하더라도, 사용자의 원래 의도에 맞는 결과를 제공함으로써 사용자의 편의성을 향상시킬 수 있다.According to the above embodiment, in the system implemented by the
한편, 위 실시예에서는 대화형 서버(300)가 디스플레이장치(100)의 사용자의 발화 방식 입력 및 비발화 방식의 입력 각각에 의한 이벤트의 이력을 저장하고 있는 경우에 관해 설명하였으나, 본 발명의 사상이 이에 한정되지 않는다. 예를 들면, 디스플레이장치(100)가 이벤트의 이력을 저장하는 구성도 가능한 바, 이에 관하여 이하 도 8 및 도 9를 참조하여 설명한다.Meanwhile, in the above embodiment, the case where the
도 8 및 도 9는 본 발명의 제2실시예에 따른 디스플레이장치(100)의 제어방법을 나타내는 플로우차트이다.Figures 8 and 9 are flow charts showing a control method of the
도 8에 도시된 바와 같이, S300 단계에서, 디스플레이장치(100)는 사용자의 발화를 수신한다. S310 단계에서, 디스플레이장치(100)는 사용자의 발화에 대응하는 음성 명령을 대화형 서버(300)에 전송한다.As shown in FIG. 8, in step S300, the
S320 단계에서, 디스플레이장치(100)는 대화형 서버(300)로부터 수신된 음성 명령의 대응 결과가 복수 개인지 여부를 판단한다.In step S320, the
대화형 서버(300)로부터 수신된 음성 명령의 대응 결과가 하나이면, S330 단계에서, 디스플레이장치(100)는 해당 결과를 표시한다.If there is only one corresponding result of the voice command received from the
반면, 대화형 서버(300)로부터 수신된 음성 명령의 대응 결과가 복수 개이면, S340 단계에서, 디스플레이장치(100)는 복수의 대응 결과를 사용자가 선택 가능하게 표시한다.On the other hand, if there are multiple corresponding results of the voice command received from the
S350 단계에서, 디스플레이장치(100)는 사용자로부터 복수의 대응 결과에 대한 선택 입력을 수신한다. 이상의 과정이 진행되는 동안에, 디스플레이장치(100)는 발화에 의한 음성 명령의 이벤트의 발생 및 처리 과정의 이력을 저장한다.In step S350, the
도 9에 도시된 바와 같이, S360 단계에서, 디스플레이장치(100)는 수신된 선택 입력이 발화 방식인지 아니면 비발화 방식인지 여부를 판단한다.As shown in FIG. 9, in step S360, the
이 과정에서 디스플레이장치(100)는 기 저장된 이전의 이벤트 이력을 참조하여, S350 단계에서 수신된 선택 입력이 S300 단계에서 발생한 발화와 관련성이 있는지 판단한다. 디스플레이장치(100)는 판단 결과 양자간에 관련성이 있다고 판단되는 경우에 S360 단계를 수행한다.In this process, the
수신된 선택 입력이 발화 방식이면, S370 단계에서, 디스플레이장치(100)는 선택 입력에 대응하는 음성 명령을 대화형 서버(300)에 전송하고 S400 단계로 이행한다.If the received selection input is a speech type, in step S370, the
반면 수신된 선택 입력이 비발화 방식이면, S380 단계에서, 디스플레이장치(100)는 비발화 방식의 선택 입력의 내용에 대응하는 가공의 음성 명령을 생성한다. S390 단계에서, 디스플레이장치(100)는 이와 같이 생성된 가공의 음성 명령을 대화형 서버(300)에 전송한다.On the other hand, if the received selection input is a non-speech type, in step S380, the
S400 단계에서, 디스플레이장치(100)는 전송한 선택 입력에 대응하는 결과를 대화형 서버(300)로부터 수신하여 표시한다.In step S400, the
한편, 이상 실시예에서는 디스플레이장치(100)에서 발생한 이벤트에 대응하는 결과를 대화형 서버(300)가 분석 및 검색하는 경우에 관해 설명하였다. 그러나, 본 발명의 사상이 이에 한정되지 않는 바, 제1실시예에서의 STT 서버(200) 및 대화형 서버(300) 중 적어도 어느 하나의 기능을 디스플레이장치(100)가 수행하는 실시예도 가능하다.Meanwhile, in the above embodiment, a case where the
도 10은 본 발명의 제3실시예에 따른 디스플레이장치(600)의 프로세서(620)의 구성 블록도이다.Figure 10 is a block diagram of the
도 10에 도시된 바와 같이, 본 실시예에 따른 디스플레이장치(600)는 통신 인터페이스(610)와 프로세서(620)를 포함한다. 디스플레이장치(600)가 포함하는 그 외의 구성요소들에 관해서는 제1실시예를 응용할 수 있는 바, 자세한 설명을 생략한다.As shown in FIG. 10, the
프로세서(620)는 디스플레이장치(600)에 입력되는 발화를 처리하는 음성처리엔진(621)과, 발화에 대응하는 음성 명령에 대한 분석을 수행하는 대화 엔진(622)과, 대화 엔진(622)으로부터 전달받은 검색 키워드에 기초하여 검색을 수행하는 컨텐츠 매니저(623)를 포함한다. 또한, 대화 엔진(622)은 대화 엔진 매니저(624)와, 대화 에이전트(625)와, 액션 에이전트(626)와, 데이터베이스(627)를 포함한다. 본 도면 및 실시예에서는 발명의 사상에 직접적으로 관련이 있는 구성에 관해서만 설명하고 있으며, 그 이외의 구성에 관해서는 도시 및 설명을 생략하였음을 밝힌다.The
음성처리엔진(621)은 사용자의 발화가 입력되면 해당 발화의 음성신호를 STT 서버(200)에 전송하고, 해당 발화에 대응하는 음성 명령을 STT 서버(200)로부터 수신하여 대화 엔진 매니저(624)에게 전달한다.When a user's utterance is input, the
이하 대화 엔진 매니저(624), 대화 에이전트(625), 액션 에이전트(626) 및 컨텐츠 매니저(623)에 의한 구체적인 동작은 앞선 실시예에서 설명한 동일 명칭의 구성요소와 실질적으로 동일하므로, 앞선 실시예의 설명을 응용할 수 있는 바, 자세한 설명을 생략한다.Hereinafter, specific operations by the
또는, 디스플레이장치(600)는 음성처리엔진(621)이 STT 서버(200)의 기능, 즉 발화를 음성 명령으로 변환하는 기능을 수행할 수도 있다. 이 경우, 음성처리엔진(621)은 사용자의 발화가 입력되면 해당 발화를 음성 명령으로 변환하여 대화 엔진 매니저(624)에게 전달한다.Alternatively, the
상기한 실시예는 예시적인 것에 불과한 것으로, 당해 기술 분야의 통상의 지식을 가진 자라면 다양한 변형 및 균등한 타 실시예가 가능하다. 따라서, 본 발명의 진정한 기술적 보호범위는 하기의 특허청구범위에 기재된 발명의 기술적 사상에 의해 정해져야 할 것이다.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.
상기 제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.
상기 제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.
상기 제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.
상기 수신한 제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.
상기 비음성 명령은 외부 리모트 컨트롤러의 조작 또는 제스쳐 입력에 의해 생성된 전자 장치.According to paragraph 1,
The non-voice command is an electronic device generated by manipulation of an external remote controller or gesture input.
메모리를 더 포함하고,
상기 음성 명령과 관련된 제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.
상기 제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.
상기 프로세서는, 상기 제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.
상기 제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.
상기 제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.
상기 제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.
상기 수신한 제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.
상기 비음성 명령은 외부 리모트 컨트롤러의 조작 또는 제스쳐 입력에 의해 생성된 전자 장치의 제어방법.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.
상기 음성 명령과 관련된 제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.
상기 제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.
상기 제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.
상기 제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.
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)
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)
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 |
-
2021
- 2021-10-20 KR KR1020210140274A patent/KR102418798B1/en active IP Right Grant
-
2022
- 2022-07-05 KR KR1020220082242A patent/KR102598470B1/en active IP Right Grant
-
2023
- 2023-09-08 KR KR1020230119540A patent/KR102661376B1/en active IP Right Grant
-
2024
- 2024-04-23 KR KR1020240053940A patent/KR20240063074A/en active Search and Examination
Patent Citations (2)
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 |