KR20190017595A - 음성 처리 장치의 구동 제어 시스템 및 구동 제어 서버 - Google Patents

음성 처리 장치의 구동 제어 시스템 및 구동 제어 서버 Download PDF

Info

Publication number
KR20190017595A
KR20190017595A KR1020170114116A KR20170114116A KR20190017595A KR 20190017595 A KR20190017595 A KR 20190017595A KR 1020170114116 A KR1020170114116 A KR 1020170114116A KR 20170114116 A KR20170114116 A KR 20170114116A KR 20190017595 A KR20190017595 A KR 20190017595A
Authority
KR
South Korea
Prior art keywords
drive control
processing apparatuses
information
word
selection information
Prior art date
Application number
KR1020170114116A
Other languages
English (en)
Other versions
KR102486912B1 (ko
Inventor
박상수
김승원
임우형
엄우현
Original Assignee
에스케이텔레콤 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 에스케이텔레콤 주식회사 filed Critical 에스케이텔레콤 주식회사
Publication of KR20190017595A publication Critical patent/KR20190017595A/ko
Application granted granted Critical
Publication of KR102486912B1 publication Critical patent/KR102486912B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/04Segmentation; Word boundary detection
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • G10L2015/223Execution procedure of a spoken command

Landscapes

  • Engineering & Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Telephonic Communication Services (AREA)

Abstract

본 발명의 일 실시예에 따른 구동 제어 시스템은 사용자의 구동 단어를 입력 받은 경우 입력된 구동 단어의 음량에 대한 정보를 구동 제어 서버에 전송하고 구동 제어 서버가 복수의 음성 처리 장치 중 어느 음성 처리 장치가 구동 단어 이후 발화되는 사용자의 명령을 처리할 것인지를 결정한 선택 정보에 기초하여 명령의 처리 여부를 결정하는 음성 처리 장치 및 구동 단어의 음량에 대한 정보를 기초로 선택 정보를 생성하여 복수의 음성 처리 장치 중 적어도 하나에 전송하는 구동 제어 서버를 포함한다.

Description

음성 처리 장치의 구동 제어 시스템 및 구동 제어 서버{SYSTEM AND SERVER FOR CONTROLLING OPERATION OF VOICE PROCESSING DEVICE}
본 발명은 음성 처리 장치의 구동 제어 시스템 및 구동 제어 서버에 관한 것으로서, 보다 자세하게는 복수의 음성 처리 장치 중에서 사용자의 명령을 처리할 음성 처리 장치를 결정하는 음성 처리 장치의 구동 제어 시스템 및 구동 제어 서버에 관한 것이다.
최근 음성인식 및 IoT 기술을 결합하여 통신망에 연결된 다양한 IoT 장치들을 제어하고 사용자의 요청에 대해 인터넷 정보 기반의 서비스를 제공하는 인공지능 스피커 등의 음성 처리 장치가 활발히 개발되고 있다. 이러한 음성 처리 장치는 사용자의 특정 구동 단어에 의해 구동을 시작하고, 구동 단어 이후에 발화되는 사용자의 명령에 대응하는 서비스를 제공할 수 있다.
이때 동일한 공간에서 동일한 구동 단어에 의해 구동되는 복수의 음성 처리 장치가 존재하는 경우, 구동 단어 이후에 사용자가 발화한 명령에 의해 복수의 음성 처리 장치가 동시에 같은 동작을 수행하여 사용자가 원하지 않는 동작이 발생할 수 있기 때문에, 동일한 공간에서 사용자의 명령을 처리할 음성 처리 장치를 결정할 필요가 있다.
본 발명의 실시예에서 해결하고자 하는 과제는 동일한 공간에서 동일한 구동 단어에 의해 구동되는 복수의 음성 처리 장치가 존재하는 경우에 사용자의 명령을 처리할 음성 처리 장치를 결정하는 기술을 제공하는 것이다.
다만, 본 발명의 실시예가 이루고자 하는 기술적 과제는 이상에서 언급한 과제로 제한되지 않으며, 이하에서 설명할 내용으로부터 통상의 기술자에게 자명한 범위 내에서 다양한 기술적 과제가 도출될 수 있다.
본 발명의 일 실시예에 따른 구동 제어 시스템은 사용자의 구동 단어를 입력 받은 경우 상기 입력된 구동 단어의 음량에 대한 정보를 구동 제어 서버에 전송하고 상기 구동 제어 서버가 복수의 음성 처리 장치 중 어느 음성 처리 장치가 상기 구동 단어 이후 발화되는 사용자의 명령을 처리할 것인지를 결정한 선택 정보에 기초하여 상기 명령의 처리 여부를 결정하는 상기 복수의 음성 처리 장치 및 상기 구동 단어의 음량에 대한 정보를 기초로 상기 선택 정보를 생성하여 상기 복수의 음성 처리 장치 중 적어도 하나에 전송하는 상기 구동 제어 서버를 포함한다.
본 발명의 일 실시예에 따른 구동 제어 서버는 통신부, 사용자의 구동 단어에 의해 구동되는 복수의 음성 처리 장치로부터 상기 구동 단어의 음량에 대한 정보를 상기 통신부를 통해 수신하여 저장하는 저장부 및 상기 구동 단어의 음량에 대한 정보를 기초로 상기 복수의 음성 처리 장치 중 어느 음성 처리 장치가 상기 구동 단어 이후 발화되는 사용자의 명령을 처리할 것인지를 결정하는 선택 정보를 생성하여 상기 통신부를 통해 상기 복수의 음성 처리 장치 중 적어도 하나에 전송하는 제어부를 포함한다.
본 발명의 일 실시예에 따른 구동 제어 시스템의 구동 제어 방법은 복수의 음성 처리 장치가 사용자의 구동 단어를 입력 받은 경우 상기 입력된 구동 단어의 음량에 대한 정보를 상기 구동 제어 서버에 전송하는 단계, 상기 구동 제어 서버가 상기 구동 단어의 음량에 대한 정보를 기초로 상기 구동 제어 서버가 상기 복수의 음성 처리 장치 중 어느 음성 처리 장치가 상기 구동 단어 이후 발화되는 사용자의 명령을 처리할 것인지를 결정한 선택 정보를 생성하는 단계, 상기 구동 제어 서버가 상기 복수의 음성 처리 장치 중 적어도 하나에 상기 선택 정보를 전송하는 단계 및 상기 복수의 음성 처리 장치가 상기 선택 정보에 기초하여 상기 명령의 처리 여부를 결정하는 단계를 포함한다.
본 발명의 일 실시예에 따른 구동 제어 서버의 구동 제어 방법은 사용자의 구동 단어에 의해 구동되는 복수의 음성 처리 장치로부터 상기 구동 단어의 음량에 대한 정보를 수신하여 저장하는 단계, 상기 구동 단어의 음량에 대한 정보를 기초로 상기 복수의 음성 처리 장치 중 어느 음성 처리 장치가 상기 구동 단어 이후 발화되는 사용자의 명령을 처리할 것인지를 결정하는 선택 정보를 생성하는 단계 및 상기 선택 정보를 상기 복수의 음성 처리 장치 중 적어도 하나에 전송하는 단계를 포함한다.
본 발명의 실시예에 따르면, 동일한 공간에서 동일한 구동 단어에 의해 구동되는 복수의 음성 처리 장치가 존재하는 경우 각 음성 처리 장치가 인식한 구동 단어 음량의 크기를 기초로 특정한 음성 처리 장치만이 사용자의 명령을 처리하도록 결정할 수 있다.
또한 각 음성 처리 장치가 인식한 구동 단어 음량의 크기를 구별할 수 없을 정도로 차이가 작은 경우에도, 미리 정해진 규칙에 따라 어느 음성 처리 장치가 사용자의 명령을 처리할 지 결정할 수 있다.
이에 따라, 구동 단어 이후에 발화되는 사용자의 명령에 의해 복수의 음성 처리 장치가 동시에 동작을 수행하여 사용자에게 혼란을 발생시키는 문제를 방지할 수 있다.
도 1은 본 발명의 일 실시예에 따른 음성 처리 장치의 구동 제어 시스템의 구성을 나타낸 도면이다.
도 2는 본 발명의 일 실시예에 따른 구동 제어 서버의 기능 블럭도이다.
도 3은 본 발명의 일 실시예에 따른 구동 제어 서버의 제어부가 선택 정보를 생성하는 것을 설명하기 위한 예시도이다.
도 4는 본 발명의 일 실시예에 음성 처리 장치의 구동 제어 시스템의 구동 제어 방법의 프로세스를 도시하는 흐름도이다.
도 5는 본 발명의 일 실시예에 구동 제어 서버의 구동 제어 방법의 프로세스를 도시하는 흐름도이다.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다.  그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명의 범주는 청구항에 의해 정의될 뿐이다.
본 발명의 실시예들을 설명함에 있어서 공지 기능 또는 구성에 대한 구체적인 설명은 본 발명의 실시예들을 설명함에 있어 실제로 필요한 경우 외에는 생략될 것이다.  그리고 후술되는 용어들은 본 발명의 실시예에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다.  그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.
도면에 표시되고 아래에 설명되는 기능 블록들은 가능한 구현의 예들일 뿐이다. 다른 구현들에서는 상세한 설명의 사상 및 범위를 벗어나지 않는 범위에서 다른 기능 블록들이 사용될 수 있다. 또한 본 발명의 하나 이상의 기능 블록이 개별 블록들로 표시되지만, 본 발명의 기능 블록들 중 하나 이상은 동일 기능을 실행하는 다양한 하드웨어 및 소프트웨어 구성들의 조합일 수 있다.
또한 어떤 구성 요소들을 포함한다는 표현은 개방형의 표현으로서 해당 구성 요소들이 존재하는 것을 단순히 지칭할 뿐이며, 추가적인 구성 요소들을 배제하는 것으로 이해되어서는 안 된다.
나아가 어떤 구성 요소가 다른 구성 요소에 연결되어 있다거나 접속되어 있다고 언급될 때에는, 그 다른 구성 요소에 직접적으로 연결 또는 접속되어 있을 수도 있지만, 중간에 다른 구성 요소가 존재할 수도 있다고 이해되어야 한다.
또한 '제1, 제2' 등과 같은 표현은 복수의 구성들을 구분하기 위한 용도로만 사용된 표현으로써, 구성들 사이의 순서나 기타 특징들을 한정하지 않는다.
이하에서는 도면들을 참조하여 본 발명의 실시예들에 대해 설명하도록 한다.
도 1은 본 발명의 일 실시예에 따른 음성 처리 장치의 구동 제어 시스템(10)의 구성을 나타낸 도면이다.
도 1을 참조하면, 음성 처리 장치의 구동 제어 시스템(10)은 복수의 음성 처리 장치(100) 및 구동 제어 서버(200)를 포함한다.
음성 처리 장치(100)는 특정한 구동 단어를 인식하여 구동을 시작하고, 구동 단어 이후에 발화되는 사용자의 명령에 대응하는 서비스를 제공할 수 있다. 가령, 음성 처리 장치(100)는 사용자의 명령에 따라 통신망에 연결된 다양한 IOT 장치들을 제어하고, 사용자에게 인터넷 기반의 서비스를 제공할 수 있다. 이러한 음성 처리 장치(100)의 예로 SK telecom 에서 출시한 Nugu, Nugu mini 등이 있으나, 음성 처리 장치(100)가 이러한 예시로 한정되는 것은 아니다.
한편, 음성 처리 장치(100)는 사용자의 특정 구동 단어에 의해 구동을 시작하기 때문에 동일한 구동 단어에 의해 구동을 시작하는 복수의 음성 처리 장치(100a, 100b, 100c)가 동일한 공간에 존재하는 경우, 구동 단어 이후에 사용자가 발화한 명령에 의해 복수의 음성 처리 장치(100a, 100b, 100c)가 동시에 같은 동작을 수행하여 사용자가 원하지 않는 동작이 발생할 수 있다. 따라서 본 발명의 일 실시예에 따른 음성 처리 장치의 구동 제어 시스템(10)은 동일한 공간에서 사용되는 복수의 음성 처리 장치(100a, 100b, 100c) 중 사용자의 명령을 처리할 하나의 음성 처리 장치(100)를 구동 제어 서버(200)가 결정하도록 한다.
이를 위해, 본 발명의 일 실시예에 따른 음성 처리 장치(100)는 다른 음성 처리 장치(100)와 동일한 공간에서 동일한 구동 단어에 의해 구동되는 경우, 음성 처리 장치(100)의 내부 또는 외부에 구비된 마이크 등의 음성 인식 장치를 통해 사용자의 구동 단어를 입력 받을 수 있다. 이후, 음성 인식 장치는 입력 받은 구동 단어 또는 구동 단어를 포함하는 사용자의 음성 명령 등 사용자 발화의 음량에 대한 정보(가령, 인식된 구동 단어의 데시벨(dB))를 구동 제어 서버(200)에 전송할 수 있다.
예를 들어, 구동 단어가 'A'인 복수의 음성 처리 장치(100)가 동일한 공간에 있는 경우, 사용자가 "A야, 날씨 알려줘"라고 말할 때, 음성 처리 장치(100)는 구동 단어인 "A"만 인식하여 "A"의 음량 정보를 구동 제어 서버(200)에 전송할 수 있지만, "A야, 날씨 알려줘"라는 사용자의 발화를 모두 인식하여, 해당 발화의 음량 정보를 구동 제어 서버(200)에 전송할 수 있다.
이후, 본 발명의 실시예에 따른 음성 처리 장치(100)에서 구동 제어 서버(200)에 전송하는 사용자의 발화를 구동 단어를 기준으로 설명하나, 음성 처리 장치(100)가 구동 제어 서버(200)에 전송하는 사용자의 발화가 구동 단어에만 한정되지 않으며, 구동 단어를 포함하는 사용자의 음성 명령 등 다양한 사용자 발화 형태의 음량에 대한 정보를 전송할 수 있다.
이에 따라, 음성 처리 장치(100)는 구동 제어 서버(200)가 생성한 선택 정보에 기초하여 사용자의 명령을 처리할 것인지 결정할 수 있다.
이때 각 음성 처리 장치(100)는 입력된 구동 단어의 음량에 대한 정보를 구동 제어 서버(200)에 전송한 시점으로부터 기 설정된 시간 이후 선택 정보를 구동 제어 서버(200)에 요청할 수 있다. 음성 처리 장치(100)가 음량에 대한 정보를 구동 제어 서버(200)에 전송한 시점으로부터 기 설정된 시간 이후 선택 정보를 요청하는 이유는 모든 음성 처리 장치(100)가 음량에 대한 정보를 구동 제어 서버(200)에 송신하고, 구동 제어 서버(200)가 각 음성 처리 장치(100)로부터 수신한 음량에 대한 정보를 기초로 선택 정보를 생성할 때까지의 시간이 필요하기 때문이다.
구동 제어 서버(200)는 음성 처리 장치(100)가 송신한 구동 단어 또는 구동 단어를 포함하는 사용자의 음성 명령의 음량에 대한 정보를 기초로 복수의 음성 처리 장치(100) 중 어느 음성 처리 장치(100)가 사용자의 명령을 처리할 것인지를 결정한 선택 정보를 생성하여 복수의 음성 처리 장치(100) 중 적어도 하나에 전송할 수 있다. 이때 구동 제어 서버(200)의 구성 및 구동 제어 서버(200)가 음량에 대한 정보를 처리하는 과정을 도 2와 함께 상세히 설명한다. 이후, 본 발명의 실시예에 따른 구동 제어 서버(200)가 선택 정보를 생성함에 있어 고려하는 요소를 구동 단어의 음량에 대한 정보를 기준으로 설명하나, 구동 제어 서버(200)가 선택 정보를 생성하기 위해 고려하는 사용자의 발화가 구동 단어에만 한정되는 것은 아니며, 구동 단어를 포함하는 사용자의 음성 명령 등 다양한 사용자 발화 형태의 음량에 대한 정보를 기초로 선택 정보를 생성할 수 있다.
도 2는 본 발명의 일 실시예에 따른 구동 제어 서버(200)의 기능 블럭도이다.
도 2를 참조하면, 본 발명의 일 실시예에 따른 구동 제어 서버(200)는 통신부(210), 저장부(220) 및 제어부(230)를 포함한다.
통신부(210)는 통신망을 통해 외부 장치로부터 데이터를 송수신한다. 가령, 통신부(210)는 음성 처리 장치(100)가 전송하는 구동 단어의 음량에 대한 정보를 수신할 수 있고, 어느 음성 처리 장치(100)가 사용자의 명령을 처리할 것인지를 결정한 선택 정보를 음성 처리 장치(100)에 송신할 수 있다. 이러한 작업들을 수행하기 위하여 통신부(210)는 음성 처리 장치(100)와 데이터를 주고받기 위한 통신 모듈을 포함할 수 있다.
저장부(220)는 음성 처리 장치(100)로부터 통신부(210)를 통해 수신한 사용자의 구동 단어의 음량에 대한 정보를 저장한다. 이를 위해, 저장부(220)는 데이터를 저장하기 위한 주 기억 장치, 보조 기억 장치 또는 클라우드 형태의 저장 장치를 구비할 수 있으나, 이에 한정되는 것은 아니다.
제어부(230)는 복수의 음성 처리 장치(100)가 송신한 구동 단어의 음량에 대한 정보를 기초로 특정 음성 처리 장치(100)가 사용자의 명령을 처리하도록 제어하는 선택 정보를 생성한다.
도 3은 본 발명의 일 실시예에 따른 구동 제어 서버(200)의 제어부(230)가 선택 정보를 생성하는 것을 설명하기 위한 예시도이다.
도 3을 참조하면, 저장부(220)는 복수의 음성 처리 장치(100)로부터 수신한 구동 단어의 음량에 대한 정보를 저장할 수 있고, 제어부(230)는 복수의 음성 처리 장치(100) 중 구동 단어의 음량을 가장 큰 값으로 입력 받은 음성 처리 장치(100)가 사용자의 명령을 처리하도록 제어하는 선택 정보를 생성할 수 있다. 이때 도 3에서는 어떠한 음성 처리 장치(100)가 사용자의 명령을 처리할 것인지를 결정하기 위해 선택 정보에 'ON' 또는 'SLEEP' 과 같은 정보를 포함하는 것으로 예시되어 있으나, 선택 정보는 '1' 또는 '0'과 같은 디지털 비트 값일 수 있고, 또는 구동 제어 서버(200)에서 각 음성 처리 장치(100)가 송신한 음량 정보를 '1위', '2위', '3위'와 같이 순위화한 테이블일 수 있다. 이와 같이, 선택 정보가 포함하는 정보의 형태는 앞에 열거된 예시에만 한정되는 것이 아니라, 음성 처리 장치(100)가 자신이 사용자의 명령을 처리할 지 또는 대기 모드로 돌아갈 지 구분할 수 있도록 하는 다양한 형태로 생성될 수 있다.
또한 음성 처리 장치(100)로부터 수신한 음량에 대한 정보에는 정보를 송신한 각 음성 처리 장치(100)의 식별자, 각 음성 처리 장치(100)의 소유자 ID, 음량 정보, 구동 제어 서버(200)가 정보를 수신한 시간 등의 정보가 포함될 수 있다. 이때 소유자 ID는 같은 공간에서 사용되는 음성 처리 장치(100)들의 그룹을 식별하기 위한 정보로서, 음성 처리 장치(100)를 구매한 자의 식별 정보이거나, 여러 사용자 중 특정 사용자를 나타내는 정보일 수 있다.
한편, 음성 처리 장치(100)는 음량에 대한 정보를 구동 제어 서버(200)에 전송한 시점으로부터 기 설정된 시간 이후 선택 정보를 구동 제어 서버(200)에 요청할 수 있고, 이에 따라 제어부(230)는 복수의 음성 처리 장치(100) 중 어느 하나로부터 구동 단어의 음량에 대한 정보를 처음으로 수신한 시점부터 기 설정된 시간 동안 복수의 음성 처리 장치(100)로부터 수신된 구동 단어의 음량에 대한 정보를 기초로 선택 정보를 생성할 수 있다.
가령, 도 3에 도시된 바와 같이 음성 처리 장치 100a로부터 선택 정보의 요청이 있는 경우, 제어부(230)는 음성 처리 장치 100a와 소유자 ID (Y)가 동일한 음성 처리 장치 100b, 100c를 선별한다. 즉, 도 3에서 소유자 ID (K)에 해당하는 정보를 송신한 음성 처리 장치 100z는 소유자 ID (Y)가 사용하는 음성 처리 장치(100a, 100b, 100c)가 아니므로 선택 정보의 생성에서 제외한다.
이에, 제어부(230)는 소유자 ID (Y)의 음성 처리 장치 (100a, 100b, 100c)로부터 수신한 음량에 대한 정보 중 수신 시간이 제일 빠른 음량에 대한 정보(01m:53s:27ms)로부터 기 설정된 시간(예: 10ms) 동안 수신된 음량에 대한 정보를 선별한다. 이때 기 설정된 시간 이후에 수신된 음량에 대한 정보는 동일한 소유자 Y가 사용하는 음성 처리 장치(100a)일지라도 동일한 명령에 해당하는 음량에 대한 정보가 아닐 수 있기 때문이다. 따라서 소유자 ID (Y)의 음성 처리 장치(100a, 100b, 100c)로부터 수신한 음량에 대한 정보 중 수신 시간이 01m:55s:22ms에 해당하는 정보는 최초 수신 시간 01m:53s:27ms로부터 기 설정된 시간(10ms)이 훨씬 지나고 나서 수신된 정보이므로 해당 정보는 선택 정보의 생성 대상에서 제외할 수 있다.
이에 따라, 제어부(230)는 각 음성 처리 장치(100)가 수행할 행동이 지정된 선택 정보를 모든 음성 처리 장치(100)에 전송하여 각 음성 처리 장치(100)가 자신의 장치 식별자에 해당하는 정보를 기초로 사용자의 명령을 처리하거나 대기 모드로 돌아가도록 할 수 있다. 즉, 도 3에 도시된 바와 같이 제어부(230)는 소유자 ID가 (Y)이고 최초 수신 시간 01m:53s:27ms 로부터 10ms 내에 정보가 수신된 3개의 정보에 대하여, 음량 정보가 가장 큰 음성 처리 장치 100c를 사용자의 명령을 수행하도록 하고, 나머지 음성 처리 장치 100a, 100b 는 대기 모드로 돌아가도록 제어하는 선택 정보를 생성할 수 있다. 이에 따라, 선택 정보를 수신한 음성 처리 장치 100a, 100b는 대기 모드로 돌아가고, 음성 처리 장치 100c는 스스로 사용자의 명령을 처리하거나, 외부 서버에 사용자의 명령에 대응하는 서비스를 제공하도록 요청할 수 있다.
또는 제어부(230)는 사용자의 명령을 처리하도록 선별된 음성 처리 장치 100c에만 선택 정보를 전송하여 사용자의 명령을 처리하게 할 수 있으며, 이때 선택 정보를 요청하였으나 소정의 시간 동안 선택 정보를 수신하지 못한 음성 처리 장치 100a, 100b는 자동으로 대기 모드로 돌아가도록 설정될 수 있다.
이후, 제어부(230)는 선택 정보의 생성에 사용된 정보를 저장부(220)에서 삭제하고, 남은 정보를 기초로 음성 처리 장치(100)의 다음 요청에 따른 선택 정보를 생성할 수 있다.
아울러, 음성 처리 장치(100)를 사용하는 사용자는 음성 처리 장치(100)의 첫 사용 시에 소유자 ID 및 장치 식별자 등을 미리 구동 제어 서버(200)에 등록시켜 놓을 수 있고, 구동 제어 서버(200)는 음량에 대한 정보를 송신한 음성 처리 장치(100)의 장치 식별자를 통해 미리 등록되어 있는 소유자 ID에 대한 정보로 각 음성 처리 장치(100) 및 명령을 수행할 장치로 특정되기 위한 비교 대상인 음성 처리 장치(100)들의 그룹을 식별할 수 있으며, 이외에도 다양한 정보를 통해 구동 제어 서버(200)가 음성 처리 장치(100) 및 명령을 수행할 장치로 특정되기 위한 비교 대상인 음성 처리 장치(100)들의 그룹을 식별하도록 할 수 있다.
한편, 제어부(230)는 복수의 음성 처리 장치(100)가 전송한 음량 간의 차이가 소정의 값 이하이면, 복수의 음성 처리 장치(100) 중 구동 단어의 음량에 대한 정보를 처음으로 전송한 음성 처리 장치(100)가 명령을 처리하게 하는 선택 정보를 생성할 수 있다.
또한 제어부(230)는 복수의 음성 처리 장치(100)가 전송한 음량 간의 차이가 소정의 값 이하이면, 사용자가 구동 제어 서버(200)에 미리 지정한 음성 처리 장치(100)의 우선 순위에 따라, 우선 순위가 가장 높게 설정된 음성 처리 장치(100)가 사용자의 명령을 처리하게 하는 선택 정보를 생성할 수 있다.
상술한 실시예에 따르면, 동일한 공간에서 동일한 구동 단어에 의해 구동되는 복수의 음성 처리 장치(100)가 존재하는 경우 각 음성 처리 장치(100)가 인식한 구동 단어 음량의 크기를 기초로 특정한 음성 처리 장치(100)만이 사용자의 명령을 처리하도록 결정할 수 있다.
또한 각 음성 처리 장치(100)가 인식한 구동 단어 음량의 크기를 구별할 수 없을 정도로 차이가 작은 경우에도, 미리 정해진 규칙에 따라 어느 음성 처리 장치(100)가 사용자의 명령을 처리할 지 결정할 수 있다.
이에 따라, 구동 단어 이후에 발화되는 사용자의 명령에 의해 복수의 음성 처리 장치(100)가 동시에 동작을 수행하여 사용자에게 혼란을 발생시키는 문제를 방지할 수 있다.
한편, 상술한 실시예가 포함하는 통신부(210) 및 제어부(230)는 이들의 기능을 수행하도록 프로그램된 명령어를 포함하는 메모리, 및 이들 명령어를 수행하는 마이크로프로세서를 포함하는 연산 장치에 의해 구현될 수 있다.
도 4는 본 발명의 일 실시예에 음성 처리 장치의 구동 제어 시스템(10)의 구동 제어 방법의 프로세스를 도시하는 흐름도이다. 도 4에 따른 음성 처리 장치의 구동 제어 시스템(10)의 구동 제어 방법의 각 단계는 도 1을 통해 설명된 구동 제어 시스템(10)의 음성 처리 장치(100) 및 구동 제어 서버(200)에 의해 수행될 수 있으며, 각 단계를 설명하면 다음과 같다.
우선, 복수의 음성 처리 장치(100)는 장치는 사용자의 구동 단어를 입력 받으면(S410) 입력된 구동 단어의 음량에 대한 정보를 구동 제어 서버(200)에 전송하여(S420), 구동 제어 서버(200)는 구동 단어의 음량에 대한 정보를 저장한다(S430). 이후, 음성 처리 장치(100)가 구동 제어 서버(200)에 선택 정보를 요청하면(S440), 구동 제어 서버(200)는 저장부(220)에 저장된 음량에 대한 정보를 기초로 어느 음성 처리 장치(100)가 사용자의 명령을 처리할 것인지를 결정한 선택 정보를 생성하고(S450), 구동 제어 서버(200)는 복수의 음성 처리 장치(100) 중 적어도 하나의 음성 처리 장치(100)에 선택 정보를 전송한다(S460). 이에 따라, 각 음성 처리 장치(100)는 구동 제어 서버(200)로부터 수신한 선택 정보에 기초하여 명령의 처리 여부를 결정한다(S460). 이때 사용자의 명령을 처리하도록 하는 선택 정보를 수신한 음성 처리 장치(100)는 사용자의 명령을 구동 제어 서버(200)에 요청하거나 스스로 처리할 수 있고(S480), 대기 모드로 돌아가는 선택 정보를 수신한 음성 처리 장치(100)는 새로운 구동 단어의 입력을 대기할 수 있다(S490).
한편, 상술한 각 단계의 주체인 구성 요소들이 해당 단계를 실시하기 위한 과정은 도 1과 함께 설명하였으므로 중복된 설명은 생략한다.
도 5는 본 발명의 일 실시예에 구동 제어 서버(200)의 구동 제어 방법의 프로세스를 도시하는 흐름도이다. 도 5에 따른 구동 제어 서버(200)의 구동 제어 방법의 각 단계는 도 2를 통해 설명된 구동 제어 서버(200)에 의해 수행될 수 있으며, 각 단계를 설명하면 다음과 같다.
우선, 구동 제어 서버(200)는 사용자의 구동 단어에 의해 구동되는 복수의 음성 처리 장치(100)로부터 구동 단어의 음량에 대한 정보를 수신하여 저장한다(S510). 이후, 구동 제어 서버(200)는 구동 단어의 음량에 대한 정보를 기초로 복수의 음성 처리 장치(100) 중 어느 음성 처리 장치(100)가 사용자의 명령을 처리할 것인지를 결정한 선택 정보를 생성한다(S520). 다음으로, 구동 제어 서버(200)는 생성한 선택 정보를 복수의 음성 처리 장치(100) 중 적어도 하나에 전송한다(S530).
한편, 구동 제어 서버(200)의 구동 제어 방법에 대한 각 단계의 구체적 과정은 도 2와 함께 설명하였으므로 중복된 설명은 생략한다.
상술한 본 발명의 실시예들은 다양한 수단을 통해 구현될 수 있다. 예를 들어, 본 발명의 실시예들은 하드웨어, 펌웨어(firmware), 소프트웨어 또는 그것들의 결합 등에 의해 구현될 수 있다.
하드웨어에 의한 구현의 경우, 본 발명의 실시예들에 따른 방법은 하나 또는 그 이상의 ASICs(Application Specific Integrated Circuits), DSPs(Digital Signal Processors), DSPDs(Digital Signal Processing Devices), PLDs(Programmable Logic Devices), FPGAs(Field Programmable Gate Arrays), 프로세서, 컨트롤러, 마이크로 컨트롤러, 마이크로 프로세서 등에 의해 구현될 수 있다.
펌웨어나 소프트웨어에 의한 구현의 경우, 본 발명의 실시예들에 따른 방법은 이상에서 설명된 기능 또는 동작들을 수행하는 모듈, 절차 또는 함수 등의 형태로 구현될 수 있다. 소프트웨어 코드 등이 기록된 컴퓨터 프로그램은 컴퓨터 판독 가능 기록 매체 또는 메모리 유닛에 저장되어 프로세서에 의해 구동될 수 있다. 메모리 유닛은 프로세서 내부 또는 외부에 위치하여, 이미 공지된 다양한 수단에 의해 프로세서와 데이터를 주고 받을 수 있다.
이와 같이, 본 발명이 속하는 기술분야의 당업자는 본 발명이 그 기술적 사상이나 필수적 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적인 것이 아닌 것으로서 이해해야만 한다. 본 발명의 범위는 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 등가개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.
10: 구동 제어 시스템
100: 음성 처리 장치
200: 구동 제어 서버
210: 통신부
220: 저장부
230: 제어부

Claims (13)

  1. 복수의 음성 처리 장치 및 구동 제어 서버를 포함하는 구동 제어 시스템에 있어서,
    상기 복수의 음성 처리 장치 각각은,
    사용자의 구동 단어를 입력 받은 경우 상기 입력된 구동 단어의 음량에 대한 정보를 상기 구동 제어 서버에 전송하고, 상기 구동 제어 서버가 상기 복수의 음성 처리 장치 중 어느 음성 처리 장치가 상기 구동 단어 이후 발화되는 사용자의 명령을 처리할 것인지를 결정한 선택 정보에 기초하여 상기 명령의 처리 여부를 결정하며,
    상기 구동 제어 서버는,
    상기 구동 단어의 음량에 대한 정보를 기초로 상기 선택 정보를 생성하여 상기 복수의 음성 처리 장치 중 적어도 하나에 전송하는
    구동 제어 시스템.
  2. 제1항에 있어서,
    상기 구동 제어 서버는,
    상기 복수의 음성 처리 장치 중 상기 음량을 가장 큰 값으로 입력 받은 음성 처리 장치가 상기 명령을 처리하게 하는 상기 선택 정보를 생성하는
    구동 제어 시스템.
  3. 제1항에 있어서,
    상기 구동 제어 서버는,
    상기 복수의 음성 처리 장치가 전송한 상기 음량 간의 차이가 소정의 값 이하이면, 상기 복수의 음성 처리 장치 중 상기 구동 단어의 음량에 대한 정보를 처음으로 전송한 음성 처리 장치가 상기 명령을 처리하게 하는 상기 선택 정보를 생성하는
    구동 제어 시스템.
  4. 제1항에 있어서,
    상기 복수의 음성 처리 장치의 각각은,
    상기 입력된 구동 단어의 음량에 대한 정보를 상기 구동 제어 서버에 전송한 시점으로부터 기 설정된 시간 이후 상기 선택 정보를 상기 구동 제어 서버에 요청하는
    구동 제어 시스템.
  5. 제1항에 있어서,
    상기 구동 제어 서버는,
    상기 복수의 음성 처리 장치 중 어느 하나로부터 상기 선택 정보의 요청을 수신하면, 상기 복수의 음성 처리 장치 중 어느 하나로부터 상기 구동 단어의 음량에 대한 정보를 처음으로 수신한 시점부터 기 설정된 시간 동안 상기 복수의 음성 처리 장치로부터 수신된 상기 구동 단어의 음량에 대한 정보를 기초로 상기 선택 정보를 생성하는
    구동 제어 시스템.
  6. 통신부;
    사용자의 구동 단어에 의해 구동되는 복수의 음성 처리 장치로부터 상기 구동 단어의 음량에 대한 정보를 상기 통신부를 통해 수신하여 저장하는 저장부; 및
    상기 구동 단어의 음량에 대한 정보를 기초로 상기 복수의 음성 처리 장치 중 어느 음성 처리 장치가 상기 구동 단어 이후 발화되는 사용자의 명령을 처리할 것인지를 결정하는 선택 정보를 생성하여 상기 통신부를 통해 상기 복수의 음성 처리 장치 중 적어도 하나에 전송하는 제어부를 포함하는
    구동 제어 서버.
  7. 제6항에 있어서,
    상기 제어부는,
    상기 복수의 음성 처리 장치 중 상기 음량을 가장 큰 값으로 입력 받은 음성 처리 장치가 상기 명령을 처리하게 하는 상기 선택 정보를 생성하는
    구동 제어 서버.
  8. 제6항에 있어서,
    상기 제어부는,
    상기 복수의 음성 처리 장치 중 어느 하나로부터 상기 선택 정보의 요청이 있는 경우, 상기 복수의 음성 처리 장치 중 어느 하나로부터 상기 구동 단어의 음량에 대한 정보를 처음으로 수신한 시점부터 기 설정된 시간 동안 상기 복수의 음성 처리 장치로부터 수신된 상기 구동 단어의 음량에 대한 정보를 기초로 상기 선택 정보를 생성하는
    구동 제어 서버.
  9. 제6항에 있어서,
    상기 제어부는,
    상기 복수의 음성 처리 장치가 전송한 상기 음량 간의 차이가 소정의 값 이하이면, 상기 복수의 음성 처리 장치 중 상기 구동 단어의 음량에 대한 정보를 처음으로 전송한 음성 처리 장치가 상기 명령을 처리하게 하는 상기 선택 정보를 생성하는
    구동 제어 서버.
  10. 복수의 음성 처리 장치가 사용자의 구동 단어를 입력 받은 경우 상기 입력된 구동 단어의 음량에 대한 정보를 상기 구동 제어 서버에 전송하는 단계;
    상기 구동 제어 서버가 상기 구동 단어의 음량에 대한 정보를 기초로 상기 구동 제어 서버가 상기 복수의 음성 처리 장치 중 어느 음성 처리 장치가 상기 구동 단어 이후 발화되는 사용자의 명령을 처리할 것인지를 결정한 선택 정보를 생성하는 단계;
    상기 구동 제어 서버가 상기 복수의 음성 처리 장치 중 적어도 하나에 상기 선택 정보를 전송하는 단계; 및
    상기 복수의 음성 처리 장치가 상기 선택 정보에 기초하여 상기 명령의 처리 여부를 결정하는 단계를 포함하는
    구동 제어 시스템의 구동 제어 방법.
  11. 사용자의 구동 단어에 의해 구동되는 복수의 음성 처리 장치로부터 상기 구동 단어의 음량에 대한 정보를 수신하여 저장하는 단계;
    상기 구동 단어의 음량에 대한 정보를 기초로 상기 복수의 음성 처리 장치 중 어느 음성 처리 장치가 상기 구동 단어 이후 발화되는 사용자의 명령을 처리할 것인지를 결정하는 선택 정보를 생성하는 단계; 및
    상기 선택 정보를 상기 복수의 음성 처리 장치 중 적어도 하나에 전송하는 단계를 포함하는
    구동 제어 서버의 구동 제어 방법.
  12. 사용자의 구동 단어에 의해 구동되는 복수의 음성 처리 장치로부터 상기 구동 단어의 음량에 대한 정보를 수신하여 저장하는 단계;
    상기 구동 단어의 음량에 대한 정보를 기초로 상기 복수의 음성 처리 장치 중 어느 음성 처리 장치가 상기 구동 단어 이후 발화되는 사용자의 명령을 처리할 것인지를 결정하는 선택 정보를 생성하는 단계; 및
    상기 선택 정보를 상기 복수의 음성 처리 장치 중 적어도 하나에 전송하는 단계를
    프로세서로 하여금 수행하게 하는 명령어를 포함하는 프로그램이 기록된 컴퓨터 판독 가능 기록매체.
  13. 사용자의 구동 단어에 의해 구동되는 복수의 음성 처리 장치로부터 상기 구동 단어의 음량에 대한 정보를 수신하여 저장하는 단계;
    상기 구동 단어의 음량에 대한 정보를 기초로 상기 복수의 음성 처리 장치 중 어느 음성 처리 장치가 상기 구동 단어 이후 발화되는 사용자의 명령을 처리할 것인지를 결정하는 선택 정보를 생성하는 단계; 및
    상기 선택 정보를 상기 복수의 음성 처리 장치 중 적어도 하나에 전송하는 단계를
    프로세서가 수행하도록 하는 컴퓨터 판독 가능 기록매체에 저장된 컴퓨터 프로그램.
KR1020170114116A 2017-08-10 2017-09-06 음성 처리 장치의 구동 제어 시스템 및 구동 제어 서버 KR102486912B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020170101546 2017-08-10
KR20170101546 2017-08-10

Publications (2)

Publication Number Publication Date
KR20190017595A true KR20190017595A (ko) 2019-02-20
KR102486912B1 KR102486912B1 (ko) 2023-01-11

Family

ID=65562009

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170114116A KR102486912B1 (ko) 2017-08-10 2017-09-06 음성 처리 장치의 구동 제어 시스템 및 구동 제어 서버

Country Status (1)

Country Link
KR (1) KR102486912B1 (ko)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150019219A1 (en) * 2013-07-10 2015-01-15 GM Global Technology Operations LLC Systems and methods for spoken dialog service arbitration
WO2016057268A1 (en) * 2014-10-09 2016-04-14 Google Inc. Hotword detection on multiple devices
WO2016085776A1 (en) * 2014-11-28 2016-06-02 Microsoft Technology Licensing, Llc Device arbitration for listening devices

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150019219A1 (en) * 2013-07-10 2015-01-15 GM Global Technology Operations LLC Systems and methods for spoken dialog service arbitration
WO2016057268A1 (en) * 2014-10-09 2016-04-14 Google Inc. Hotword detection on multiple devices
KR20160101198A (ko) * 2014-10-09 2016-08-24 구글 인코포레이티드 다수의 디바이스에서의 핫워드 검출
WO2016085776A1 (en) * 2014-11-28 2016-06-02 Microsoft Technology Licensing, Llc Device arbitration for listening devices
KR20170088982A (ko) * 2014-11-28 2017-08-02 마이크로소프트 테크놀로지 라이센싱, 엘엘씨 청취 디바이스에 대한 디바이스 중재

Also Published As

Publication number Publication date
KR102486912B1 (ko) 2023-01-11

Similar Documents

Publication Publication Date Title
EP3389044B1 (en) Management layer for multiple intelligent personal assistant services
US10991374B2 (en) Request-response procedure based voice control method, voice control device and computer readable storage medium
US11869487B1 (en) Allocation of local and remote resources for speech processing
KR102429436B1 (ko) 사용자의 입력 입력에 기초하여 타겟 디바이스를 결정하고, 타겟 디바이스를 제어하는 서버 및 그 동작 방법
EP2669889B1 (en) Method and apparatus for executing voice command in an electronic device
US20210241775A1 (en) Hybrid speech interface device
US9583102B2 (en) Method of controlling interactive system, method of controlling server, server, and interactive device
US20240184517A1 (en) Associating of computing devices
RU2635880C2 (ru) Способ и устройство для управления состоянием блокировки/разблокировки терминала через распознавание речи
US11657801B2 (en) Voice command detection and prediction
US10705789B2 (en) Dynamic volume adjustment for virtual assistants
JP7037517B2 (ja) 顧客要求サービスのための音声対話方法及び装置
US20170133013A1 (en) Voice control method and voice control system
US20140324430A1 (en) System and Method for Standardized Speech Recognition Infrastructure
WO2015174172A1 (ja) 制御装置およびメッセージ出力制御システム
KR20200052638A (ko) 전자 장치 및 전자 장치의 음성 인식 방법
US11043222B1 (en) Audio encryption
EP3769303B1 (en) Modifying spoken commands
JP2020038709A (ja) 人工知能機器における連続会話機能
CN111833857B (zh) 语音处理方法、装置和分布式系统
US20200410988A1 (en) Information processing device, information processing system, and information processing method, and program
JP6462291B2 (ja) 通訳サービスシステム及び通訳サービス方法
KR20180074152A (ko) 보안성이 강화된 음성 인식 방법 및 장치
KR20190017595A (ko) 음성 처리 장치의 구동 제어 시스템 및 구동 제어 서버
US10210886B2 (en) Voice segment detection system, voice starting end detection apparatus, and voice terminal end detection apparatus

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
X091 Application refused [patent]
AMND Amendment
X701 Decision to grant (after re-examination)