KR102661487B1 - 검출된 제스처 및 시선에 기초하여 자동화된 어시스턴트 기능 호출 - Google Patents

검출된 제스처 및 시선에 기초하여 자동화된 어시스턴트 기능 호출 Download PDF

Info

Publication number
KR102661487B1
KR102661487B1 KR1020207034482A KR20207034482A KR102661487B1 KR 102661487 B1 KR102661487 B1 KR 102661487B1 KR 1020207034482 A KR1020207034482 A KR 1020207034482A KR 20207034482 A KR20207034482 A KR 20207034482A KR 102661487 B1 KR102661487 B1 KR 102661487B1
Authority
KR
South Korea
Prior art keywords
gaze
client device
gesture
user
processing
Prior art date
Application number
KR1020207034482A
Other languages
English (en)
Other versions
KR20210002697A (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 KR20210002697A publication Critical patent/KR20210002697A/ko
Application granted granted Critical
Publication of KR102661487B1 publication Critical patent/KR102661487B1/ko

Links

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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • G06F3/013Eye tracking input arrangements
    • 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/017Gesture based interaction, e.g. based on a set of recognized hand gestures
    • 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/0304Detection arrangements using opto-electronic means
    • 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/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/038Control and interface arrangements therefor, e.g. drivers or device-embedded control circuitry
    • 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
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • 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
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2203/00Indexing scheme relating to G06F3/00 - G06F3/048
    • G06F2203/038Indexing scheme relating to G06F3/038
    • G06F2203/0381Multimodal input, i.e. interface arrangements enabling the user to issue commands by simultaneous use of input devices of different nature, e.g. voice plus gesture on digitizer
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • Acoustics & Sound (AREA)
  • Software Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

하나 이상의 비전 컴포넌트로부터의 비전 데이터의 프로세싱에 기초하여, (1) 사용자의 특정한 제스처(예: 하나 이상의 "호출 제스처") ; 및/또는 (2) 사용자의 시선이 자동화된 어시스턴트의 자동화된 어시스턴트 인터페이스(그래픽 및/또는 청각)를 제공하는 어시스턴트 디바이스를 향하고 있음을 검출하는 것을 검출함에 응답하여 자동화된 어시스턴트의 하나 이상의 이전에 휴면 기능을 호출한다. 예를 들어, 이전의 휴면 기능(들)은 특정한 제스처, 사용자의 시선이 적어도 임계 시간동안 어시스턴트 디바이스를 향하고 있음을 검출하고, 선택적으로 특정한 제스처 및 사용자의 향하는 시선이 동시 발생하거나 서로의 임계 시간적 근접성 내에서 발생하는 것을 검출함에 응답하여 호출될 수 있다.

Description

검출된 제스처 및 시선에 기초하여 자동화된 어시스턴트 기능 호출
사람은 본 명세서에서 "자동화된 어시스턴트"("디지털 에이전트", "인터랙티브 퍼스널 어시스턴트", "지능형 퍼스널 어시스턴트", "어시스턴트 애플리케이션", "대화형 에이전트들"로도 지칭됨)로 지칭되는 인터렉티브 소프트웨어 어플리케이션과의 사람-컴퓨터 간 대화에 참여할 수 있다. 예를 들어, 사람(자동화된 어시스턴트와 인터렉션할 때 "사용자"라고할 수 있음)은 일부 경우에 텍스트로 변환된 다음 프로세싱될 수 있는 발화된 자연어 입력(즉, 발언)을 사용하여 및/또는 텍스트(예를 들어, 타이핑된) 자연어 입력을 제공함으로써 명령 및/또는 요청을 자동화된 어시스턴트에 제공할 수 있다. 자동화된 어시스턴트는 청각 및/또는 시각적 사용자 인터페이스 출력을 포함할 수 있는 응답 사용자 인터페이스 출력을 제공함으로써 요청에 응답한다.
상기 언급된 바와 같이, 많은 자동화된 어시스턴트는 발화된 발언을 통해 인터렉션하도록 구성된다. 사용자 개인 정보 보호 및/또는 리소스 보존을 위해, 자동화된 어시스턴트가 발화된 발언을 완전히 프로세싱하기 전에 사용자는 종종 명시적으로 자동화된 어시스턴트를 호출해야 한다. 자동화된 어시스턴트의 명시적 호출은 일반적으로 클라이언트 디바이스에서 수신되는 특정 사용자 인터페이스 입력에 대한 응답으로 발생한다. 클라이언트 디바이스는 클라이언트 디바이스의 사용자에게 자동화된 어시스턴트와 인터페이싱하기 위한 인터페이스를 제공하고(예: 사용자로부터 입력을 수신하고 청각적 및/또는 그래픽 응답을 제공), 자동화된 어시스턴트를 구현하는 하나 이상의 추가 컴포넌트(예: 사용자 입력을 프로세싱하고 적절한 응답을 생성하는 원격 서버 디바이스(들))와 인터페이싱하는 어시스턴트 인터페이스를 포함한다.
클라이언트 디바이스를 통해 자동화된 어시스턴트를 호출할 수 있는 일부 사용자 인터페이스 입력은 자동화된 어시스턴트를 호출하기 위한 클라이언트 디바이스의 하드웨어 및/또는 가상 버튼을 포함한다(예: 하드웨어 버튼의 탭, 클라이언트 디바이스에 의해 디스플레이된 그래픽 인터페이스 엘리먼트의 선택). 많은 자동화된 어시스턴트는 "핫워드/문구" 또는 "트리거 단어/문구"라고도 하는 하나 이상의 음성 호출 문구에 응답하여 추가로 또는 대안적으로 호출될 수 있다. 예를 들어, "Hey Assistant", "OK Assistant" 및/또는 "Assistant"와 같은 음성 호출 문구를 말하여 자동화된 어시스턴트를 호출할 수 있다.
상기 언급된 바와 같이, 자동화된 어시스턴트와의 인터렉션을 용이하게 하는 많은 클라이언트 디바이스(여기서 "어시스턴트 디바이스"라고도 함)는 사용자가 자동화된 어시스턴트와 터치없는 인터렉션할 수 있도록 한다. 예를 들어, 어시스턴트 디바이스는 종종 사용자가 자동 어시스턴트를 호출 및/또는 인터렉션할 수 있도록 음성 발언을 제공하게 하는 마이크로폰을 포함한다. 본 명세서에 기술된 어시스턴트 디바이스는 하나 이상의 비전 컴포넌트(예: 카메라(들)), LIDAR 컴포넌트(들), 레이더 컴포넌트(들) 등)를 통합하거나 및/또는 그와 통신하여 자동화된 어시스턴트와의 터치없는 인터렉션을 용이하게 한다.
본 명세서에 개시된 구현예는 하나 이상의 비전 컴포넌트로부터의 비전 데이터의 프로세싱에 기초하여, (1) 사용자의 특정한 제스처(예: 하나 이상의 "호출 제스처") ; 및/또는 (2) 사용자의 시선이 자동화된 어시스턴트의 자동화된 어시스턴트 인터페이스(그래픽 및/또는 청각)를 제공하는 어시스턴트 디바이스를 향하고 있음을 검출하는 것을 검출함에 응답하여 자동화된 어시스턴트의 하나 이상의 이전에 휴면 기능을 호출하는 것과 관련된다. 예를 들어, 이전의 휴면 기능(들)은 특정한 제스처, 사용자의 시선이 적어도 임계 시간동안 어시스턴트 디바이스를 향하고 있음을 검출하고, 선택적으로 특정한 제스처 및 사용자의 향하는 시선이 동시 발생하거나 서로의 임계 시간적 근접성 내에서(예: 0.5초, 1.0초 또는 다른 임계 시간 근접성 내) 발생하는 것을 검출함에 응답하여 호출될 수 있다. 예를 들어, 이전의 휴면 기능(들)은 특정한 제스처(예를 들어, "엄지 손가락" 제스처 및/또는 "손 흔들기" 제스처)를 검출함에 응답하여, 최소 0.5초 지속 시간이고 특정한 제스처와 함께 발생했거나 특정한 제스처의 1.0 초 이내에 발생한 지향(directed) 시선을 검출함에 응답하여 호출될 수 있다.
이러한 구현예의 일부 버전에서, 하나 이상의 이전의 휴면 기능은 제스처 및 지향 시선만 검출하는 것에 응답하여 호출될 수 있다. 예를 들어, 제스처 및 지향 시선만 검출하는 것에 응답하여, 하나 이상의 센서 컴포넌트에 의해 생성된 특정 센서 데이터는 클라이언트 디바이스에 의해 하나 이상의 원격 자동화된 어시스턴트 컴포넌트에 전송될 수 있다(반면 센서 컴포넌트(들)로부터의 센서 데이터는 제스처와 지향 시선을 검출하기 전에 전송되지 않는다). 특정 센서 데이터는, 예를 들어 제스처 및 지향 시선을 검출한 후에 캡처된 시각 및/또는 오디오 데이터 및/또는 제스처의 수행 동안 및/또는 지향 시선 동안 캡처된 시각 및/또는 오디오 데이터를 포함할 수 있다. 이러한 방식으로 데이터 네트워크를 통해 원격 컴퓨팅 컴포넌트로 데이터를 전송하는 것은 선택적으로 적절한 시간에 수행된다. 이를 통해 네트워크 용량은 물론 네트워크를 통한 데이터 송수신과 연관된 컴퓨팅 및 기타 하드웨어 리소스를 효율적으로 사용할 수 있다. 원격 시스템에서 데이터 네트워크 및 컴퓨팅 리소스 사용의 효율성이 향상되면 네트워크의 송신기 및 수신기에 의한 전력 사용량은 물론 원격 시스템의 메모리 운영 및 프로세서 사용량 측면에서 상당한 절감 효과를 얻을 수 있다. 해당 효과는 클라이언트 디바이스에서도 경험할 수 있다. 이러한 효과는, 특히 시간이 지남에 따라 자동화된 어시스턴트가 지속적으로 작동하면, 어시스턴트를 실행하는 디바이스 및 시스템을 포함하여 네트워크 및 컴퓨팅 장치 전체에서 상당한 추가 용량을 경험하게 할 수 있다. 이 추가 용량은 예를 들어 추가 또는 업데이트된 인프라를 통해 네트워크 용량을 확장할 필요없이, 컴퓨팅 장치에서 추가 컴퓨팅 작업을 수행할 필요없이 어시스턴트 관련 여부에 관계없이 데이터 네트워크에서 추가 통신을 위해 사용될 수 있다. 다음 논의에서 다른 기술적 개선이 분명해질 것이다.
이러한 구현예의 일부 다른 버전에서, 하나 이상의 이전의 휴면 기능은 제스처 및 지향 시선을 검출하고, 하나 이상의 다른 조건(들)의 발행을 검출하는 것에 응답하여 호출될 수 있다. 하나 이상의 다른 조건의 발생은 예를 들어: 오디오 데이터에 기초하여, 검출된 제스처 및 지향 시선에 대한 시간적 근접 내에 음성 활동 검출(예: 임의의 음성 활동, 제스처와 지향 시선을 제공하는 사용자의 음성 활동, 승인된 사용자의 음성 활동, 음성 호출 문구를 포함하는 음성 활동); 비전 데이터에 기초하여, 검출된 제스처 및 지향 시선과 동시 발생하거나 그에 대한 시간적 근접성 내에 사용자의 입 움직임을 검출; 오디오 데이터 및/또는 비전 데이터에 기초하여, 사용자가 승인된 사용자임을 검출; 및/또는 다른 조건(들)의 검출을 포함할 수 있다. 예를 들어, 버퍼링된 오디오 데이터는 제스처 및 지향 시선을 검출하는 것에 응답하여, 그리고 버퍼링된 오디오 데이터의 적어도 일부에서 음성 활동을 검출하는 것에 응답하여(예: 음성 활동 검출기(VAD) 모듈을 사용하여), 클라이언트 디바이스에 의해 하나 이상의 원격 자동화된 어시스턴트 컴포넌트에 전송될 수 있다. 이것은 위에서 설명한 것에 대응하는 장점을 가지고 있다.
본 명세서에 개시된 일부 구현예에서, 제스처 및 지향 시선을 검출하는 것에 응답하여 호출되는 자동화된 어시스턴트의 이전 휴면 기능(들)은 특정 센서 데이터(예: 오디오 데이터, 비디오, 이미지(들), 등) 및/또는 특정 콘텐츠의 렌더링(예: 그래픽 및/또는 청각적)의 특정 프로세싱을 포함할 수 있다. 예를 들어, 제스처 및 지향 시선 검출에 기초한 호출 이전에, 자동화된 어시스턴트는 오디오 데이터, 비디오/이미지 데이터 등과 같은 특정 센서 데이터의 제한된 프로세싱만 수행할 수 있다(또는 프로세싱 수행 안함). 예를 들어, 호출하기 전에, 자동화된 어시스턴트는 명시적 호출을 모니터링할 때 일부 센서 데이터를 로컬적으로 프로세싱할 수 있지만, 로컬 프로세싱 후 데이터를 "폐기"할 것이고, 자동화된 어시스턴트(예: 사용자 입력을 프로세싱하고 적절한 응답을 생성하는 원격 서버 디바이스(들))를 구현하는 하나 이상의 추가 컴포넌트에 의해 데이터가 프로세싱되지 않게 한다. 그러나 호출에 대한 응답으로, 이러한 데이터는 추가 컴포넌트에 의해 프로세싱될 수 있다. 이러한 방식 및 다른 방식에서, 프로세싱 및/또는 네트워크 리소스는 호출에 응답하여 특정 센서 데이터의 특정 프로세싱만을 전송 및/또는 수행함으로써 감소될 수 있다.
또한, 예를 들어, 명시적 호출 이전에, 자동화된 어시스턴트는 제한된(또는 전혀) 콘텐츠만 렌더링(예: 그래픽으로)할 수 있다. 그러나 호출에 대한 응답으로, 자동화된 어시스턴트는 자동화된 어시스턴트를 호출한 사용자에게 맞춤화된 컨텐츠와 같은 다른 컨텐츠를 렌더링할 수 있다. 예를 들어, 명시적 호출 이전에, 자동화된 어시스턴트에 의해 제어되는 디스플레이 화면을 통해 콘텐츠가 그래픽으로 렌더링될 수 없거나, 제한된 저전력 소비 콘텐츠만 렌더링될 수 있다(예: 디스플레이 화면의 작은 부분에 현재 시간만). 그러나, 호출에 응답하여, 자동화된 어시스턴트는 추가 및 선택적으로 날씨 예보, 일일 이벤트 요약 및/또는 디스플레이 스크린 상에 더 밝게 디스플레이될 수 있고 및/또는 디스플레이 스크린의 더 많은 부분을 차지할 수 있는 다른 콘텐츠와 같은 더 높은 전력 소비 콘텐츠가 디스플레이 화면을 통해 그래픽으로 렌더링되고 및/또는 스피커를 통해 청각적으로 렌더링되도록 할 수 있다. 이러한 방식과 다른 방식으로, 호출 전에 저전력 소비 콘텐츠를 디스플레이하고(또는 콘텐츠 디스플레이 안함), 호출에 응답하여 고전력 소비 콘텐츠만 디스플레이함으로써 전력 소비를 줄일 수 있다.
일부 구현예에서, 특정한 제스처를 모니터링하고 클라이언트 디바이스로 향하는 시선을 모니터링할 때, 클라이언트 디바이스에 로컬적으로 저장된 트레이닝된 기계 학습 모델(들)(예: 신경 네트워크 모델(들))은 클라이언트 디바이스의 비전 컴포넌트(들)로부터 비전 데이터(예: 클라이언트 디바이스의 카메라(들)로부터의 이미지 프레임)의 적어도 일부를 적어도 선택적으로 프로세싱하기 위해 클라이언트 디바이스에 의해 이용된다. 예를 들어, 하나 이상의 사용자의 존재를 검출하는 것에 응답하여, 클라이언트 디바이스는 적어도 지속 기간 동안(예: 적어도 임계 기간 동안 및/또는 존재가 더 이상 검출되지 않을 때까지) 특정한 제스처 및 지향 시선을 모니터링할 때 로컬에 저장된 기계 학습 모델(들)을 활용하여 비전 데이터의 적어도 일부(들) 프로세싱할 수 있다. 클라이언트 디바이스는 전용 존재 센서(예 : 수동 적외선 센서 (PIR))를 사용하여, 비전 데이터 및 별도의 기계 학습 모델(예: 사람의 존재 검출만을 위해 트레이닝된 별도의 기계 학습 모델)을 사용하여 및/또는 오디오 데이터 및 별도의 기계 학습 모델 사용하여(예: VAD 기계 학습 모델을 사용하는 VAD) 하나 이상의 사람의 존재를 검출할 수 있다. 특정한 제스처에 대한 모니터링에서 비전 데이터의 프로세싱이 하나 이상의 사용자의 존재를 먼저 검출하는 것을 조건으로 하는 구현예에서, 제스처(들) 및/또는 지향 시선에 대한 모니터링에서 비전 데이터의 비-연속적 프로세싱을 통해 전력 리소스이 보존될 수 있다. 오히려, 그러한 구현예에서, 제스처(들) 및/또는 지향 시선에 대한 모니터링에서 비전 데이터의 프로세싱은 하나 이상의 저전력 소비 기법을 통해 어시스턴트 디바이스의 환경에서 하나 이상의 사용자(들)의 존재를 검출하는 것에 응답하여만 발생할 수 있다.
특정한 제스처 및 지향 시선에 대한 모니터링에 로컬 기계 학습 모델(들)이 사용되는 일부 구현예에서, 제스처에 대한 모니터링에 적어도 하나의 제스처 검출 기계 학습 모델이 사용되고, 시선을 모니터링하는데 별도의 시선 검출 기계 학습 모델이 사용된다. 이러한 구현예의 일부 버전에서, 하나 이상의 "업스트림" 모델(예를 들어, 오브젝트 검출 및 분류 모델(들))이 얼굴, 눈, 팔/신체 등일 가능성이 있는 비전 데이터(예: 이미지(들))의 일부를 검출하는데 활용될 수 있고, 그리고 각각의 기계 학습 모델을 사용하여 상기 부분(들)이 프로세싱된다. 예를 들어, 이미지의 얼굴 및/또는 눈 부분(들)은 업스트림 모델을 사용하여 검출되고, 시선 검출 기계 학습 모델을 사용하여 프로세싱될 수 있다. 또한, 예를 들어, 이미지의 팔 및/또는 신체 부분(들)은 업스트림 모델을 사용하여 검출되고, 제스처 검출 기계 학습 모델을 사용하여 프로세싱될 수 있다. 또 다른 예로서, 이미지의 사람 부분(들)은 업스트림 모델을 사용하여 검출되고, 시선 검출 기계 학습 모델 및 제스처 검출 기계 학습 모델 둘 모두를 사용하여 프로세싱될 수 있다.
선택적으로, 시선 검출 기계 학습 모델은 제스처 검출 기계 학습 모델보다 고해상도 비전 데이터(예: 이미지)를 프로세싱할 수 있다. 이를 통해 저해상도 이미지 프로세싱을 통해 제스처 검출 기계 학습 모델을 보다 효율적으로 활용할 수 있다. 또한, 선택적으로 시선 검출 기계 학습 모델은 제스처 검출 기계 학습 모델이 가능성 있는 제스처를 검출하기 위해 사용된 후에만 이미지의 일부(들)를 프로세싱하기 위해 이용될 수 있다(또는 그 반대로). 이는 또한 두 모델을 모두 사용하여 이미지 데이터를 지속적으로 프로세싱하지 않기 때문에 계산 효율성을 높일 수 있다.
일부 구현예에서, 얼굴 매칭, 눈 매칭, 음성 매칭 및/또는 다른 기법은 제스처 및/또는 지향 시선과 연관된 특정한 사용자 프로필 및 클라이언트 디바이스의 자동화된 어시스턴트 애플리케이션에 의해 상기 특정한 사용자 프로필에 맞춤화된 렌더링된 콘텐츠를 식별하는데 활용될 수 있다. 맞춤형 콘텐츠의 렌더링은 제스처 및 지향 시선 검출에 응답하여 호출되는 자동화된 어시스턴트의 기능(들) 중 하나일 수 있다. 선택적으로, 특정한 사용자 프로필의 식별은 지향 시선 및 제스처가 검출된 후에만 발생한다. 일부 구현예에서, 그리고 위에서 언급된 바와 같이, 호출 검출을 위해 하나 이상의 추가 조건의 발생이 또한 요구될 수 있고, 여기서 추가 조건(들)은 시선 및/또는 제스처 검출에 추가적이다. 예를 들어, 일부 구현예에서, 추가 조건(들)은 제스처 및 지향 시선을 제공하는 사용자가 클라이언트 디바이스에 대해 승인된(예를 들어, 얼굴 매칭, 음성 매칭 및/또는 사용 다른 기법을 사용하여) 사용자 프로파일과 연관되어 있음을 식별하는 것을 포함할 수 있다.
일부 구현예에서, 비디오(들)/이미지(들)의 특정 부분은 제스처 및/또는 시선을 검출할 때 필터링/무시/덜 심하게 가중화될 수 있다. 예를 들어, 비디오(들)/이미지(들)로 캡처된 텔레비전은 텔레비전에 의해 렌더링된 사람(예를 들어, 날씨 예보자)의 결과로 잘못된 검출을 방지하기 위해 무시될 수 있다. 예를 들어, 이미지의 일부는 해당 부분에 대한 다수의 프레임을 통해 해당 부분(즉, 텔레비전 재생률과 매칭)에서 특정 디스플레이 주파수를 검출하는 것 등에 응답하여 별도의 오브젝트 검출/분류 기계 학습 모델에 기초하여 텔레비전에 대응한다고 결정될 수 있다. 그러한 부분은 텔레비전 또는 다른 비디오 디스플레이 디바이스로부터 제스처 및/또는 지향 시선의 검출을 방지하기 위해 본 명세서에 설명된 제스처 및/또는 지향 시선 검출 기법에서 무시될 수 있다. 또 다른 예로, 픽처 프레임은 무시될 수 있다. 이러한 기술 및 기타 기법은 자동화된 어시스턴트의 거짓양성 호출을 완화할 수 있으며, 그렇지 않으면 거짓양성 호출에서 소비될 수 있는 다양한 계산 및/또는 네트워크 리소스를 보존할 수 있다. 또한, 다양한 구현예에서, 일단 TV, 픽처 프레임 등의 위치가 검출되면, 선택적으로 다수의 프레임에 걸쳐 계속 무시될 수 있다(예: 간헐적으로 검증하는 동안, 클라이언트 디바이스 또는 오브젝트(들)의 움직임이 검출될 때까지 등). 이는 또한 다양한 계산 리소스를 보존할 수 있다.
상기 설명은 본 명세서에 개시된 다양한 구현예의 개요로서 제공된다. 이러한 다양한 구현예 및 추가 구현예가 본 명세서에 더 자세히 기술된다.
일부 구현예에서, 방법은 하나 이상의 사용자와 자동화된 어시스턴트 간의 터치없는 인터렉션을 용이하게 하는 클라이언트 디바이스의 하나 이상의 프로세서에 의해 수행된다. 상기 방법은 상기 클라이언트 디바이스의 하나 이상의 카메라로부터의 출력에 기초한 이미지 프레임의 스트림을 수신하는 단계를 포함한다. 상기 방법은 상기 이미지 프레임 중 적어도 하나에 의해 캡처된 사용자의 호출 제스처, 및 상기 클라이언트 디바이스를 향한 상기 사용자의 시선 둘 모두의 발생을 모니터링하기 위해 상기 클라이언트 디바이스에 로컬적으로 저장된 적어도 하나의 트레이닝된 기계 학습 모델을 사용하여 상기 스트림의 이미지 프레임을 프로세싱하는 단계를 포함한다. 상기 방법은 모니터링에 기초하여 상기 호출 제스처 및 상기 시선 둘 모두의 발생을 검출하는 단계를 포함한다. 상기 방법은, 상기 호출 제스처 및 상기 시선 둘 모두의 발생을 검출하는 것에 응답하여: 상기 자동화된 어시스턴트의 적어도 하나의 기능이 활성화되게 하는 단계를 더 포함한다.
상기 기술의 이들 또는 다른 구현예들은 다음 구성들 중 하나 이상을 포함할 수 있다.
일부 구현예에서, 상기 호출 제스처 및 상기 시선 둘 모두의 발생을 검출하는 것에 응답하여 활성화되는 상기 자동화된 어시스턴트의 적어도 하나의 기능은: 상기 클라이언트 디바이스의 하나 이상의 마이크로폰을 통해 캡처된 오디오 데이터를 상기 자동화된 어시스턴트와 연관된 원격 서버에 전송하는 것을 포함한다.
일부 구현예에서, 상기 호출 제스처 및 상기 시선 둘 모두의 발생을 검출하는 것에 응답하여 활성화되는 적어도 하나의 기능은 추가적으로 또는 대안적으로: 추가 이미지 프레임을 상기 자동화된 어시스턴트와 연관된 원격 서버에 전송하는 것을 포함하고, 상기 추가 이미지 프레임은 하나 이상의 카메라로부터의 출력에 기초하고, 상기 호출 제스처 및 상기 시선 둘 모두의 발생을 검출한 후에 수신된다.
일부 구현예에서, 상기 호출 제스처 및 상기 시선 둘 모두의 발생을 검출하는 것에 응답하여 활성화되는 적어도 하나의 기능은 추가적으로 또는 대안적으로: 상기 클라이언트 디바이스에서 버퍼링된 오디오 데이터를 프로세싱하는 것을 포함하며, 상기 버퍼링된 오디오 데이터는 상기 클라이언트 디바이스의 메모리에 저장되고 상기 클라이언트 디바이스의 하나 이상의 마이크로폰을 통해 캡처되며, 상기 버퍼링된 오디오 데이터의 프로세싱은: 호출 문구 검출 프로세싱, 및 자동 음성 인식 중 하나 또는 둘 모두를 포함한다. 상기 구현예 중 일부 버전에서, 상기 버퍼링된 오디오 데이터를 프로세싱하는 것은 상기 자동 음성 인식을 포함하고, 상기 자동 음성 인식은 음성-텍스트 변환 프로세싱을 포함한다. 상기 구현예 중 일부 추가적 또는 대안적 버전에서, 상기 버퍼링된 오디오 데이터의 프로세싱은 호출 문구 검출 프로세싱을 포함하며, 상기 방법은 추가로: 상기 호출 문구 검출 프로세싱에 응답하여, 상기 버퍼링된 오디오 데이터에서 호출 문구의 존재를 검출하여 다음 중 하나 또는 둘 모두를 수행하는 단계를 포함하며: 상기 클라이언트 디바이스의 하나 이상의 마이크로폰을 통해 캡처된 추가 오디오 데이터를 상기 자동화된 어시스턴트와 연관된 원격 서버에 전송하는 것; 및 추가 이미지 프레임을 상기 자동화된 어시스턴트와 연관된 원격 서버에 전송하는 것, 상기 추가 이미지 프레임은 하나 이상의 카메라로부터의 출력에 기초하고, 상기 호출 제스처 및 상기 시선 둘 모두의 발생을 검출한 후에 수신된다.
일부 구현예에서, 상기 호출 제스처 및 상기 시선 둘 모두 발생을 모니터링하기 위해 상기 클라이언트 디바이스에 로컬적으로 저장된 적어도 하나의 트레이닝된 기계 학습 모델을 사용하여 상기 스트림의 이미지 프레임을 프로세싱하는 단계는: 제1 트레이닝된 기계 학습 모델을 사용하여 상기 호출 제스처의 발생을 모니터링하는 것; 및 제2 트레이닝된 기계 학습 모델을 사용하여 상기 클라이언트 디바이스를 향하는 상기 사용자의 시선을 모니터링하는 것을 포함한다. 상기 구현예 중 일부 버전에서, 제2 트레이닝된 기계 학습 모델을 사용하여 상기 클라이언트 디바이스를 향하는 상기 사용자의 시선을 모니터링하는 것은 상기 제1 트레이닝된 기계 학습 모델을 사용하여 상기 호출 제스처의 발생을 검출함에 대한 응답으로만 발생한다. 상기 버전 중 일부에서, 또는 다른 버전에서, 제1 트레이닝된 기계 학습 모델을 사용하여 상기 호출 제스처의 발생을 모니터링하는 것은 상기 제1 기계 학습 모델을 사용하여 상기 이미지 프레임의 제1 해상도 버전을 프로세싱하는 것을 포함하고; 그리고 제2 트레이닝된 기계 학습 모델을 사용하여 상기 사용자의 시선을 모니터링하는 것은 상기 제2 기계 학습 모델을 사용하여 이미지 프레임의 제2 해상도 버전을 프로세싱하는 것을 포함한다.
일부 구현예에서, 상기 방법은: 상기 클라이언트 디바이스의 하나 이상의 마이크로폰으로부터의 출력에 기초하여 오디오 데이터 프레임의 스트림을 수신하는 단계; 발화된 호출 문구의 발생을 모니터링하기 위해 상기 클라이언트 디바이스에 로컬적으로 저장된 적어도 하나의 트레이닝된 호출 문구 검출 기계 학습 모델을 사용하여 상기 스트림의 오디오 데이터 프레임을 프로세싱하는 단계; 및 상기 발화된 호출 문구의 발생에 대한 모니터링에 기초하여 상기 발화된 호출 문구의 발생을 검출하는 단계를 더 포함한다. 상기 구현예 중 일부에서, 상기 자동화된 어시스턴트의 적어도 하나의 기능이 활성화되게 하는 단계는 상기 호출 제스처 및 상기 시선 둘 모두에 대한 시간적 근접에 상기 발화된 호출 문구의 발생을 검출하는 것에 대한 응답이다. 상기 구현예 중 일부 버전에서, 활성화되는 적어도 하나의 기능은: 상기 클라이언트 디바이스의 하나 이상의 마이크로폰을 통해 캡처된 추가 오디오 데이터 프레임을 상기 자동화된 어시스턴트와 연관된 원격 서버에 전송하는 것; 및 하나 이상의 카메라로부터의 하나 이상의 추가 이미지 프레임을 상기 자동화된 어시스턴트와 연관된 원격 서버에 전송하는 것 중 하나 또는 둘 모두를 포함한다.
일부 구현예에서, 상기 호출 제스처 및 상기 시선 둘 모두 발생을 모니터링하기 위해 상기 클라이언트 디바이스에 로컬적으로 저장된 적어도 하나의 트레이닝된 기계 학습 모델을 사용하여 상기 스트림의 이미지 프레임을 프로세싱하는 단계는: 사람 얼굴을 포함하는 상기 이미지 프레임의 영역을 예측하기 위해 제1 트레이닝된 기계 학습 모델을 사용하여 이미지 프레임을 프로세싱하는 것; 및 상기 사용자의 시선을 검출하도록 트레이닝된 제2 트레이닝된 기계 학습 모델을 사용하여 상기 이미지 프레임의 영역을 프로세싱하는 것을 포함한다.
일부 구현예에서, 상기 호출 제스처 및 상기 시선 둘 모두 발생을 모니터링하기 위해 상기 클라이언트 디바이스에 로컬적으로 저장된 적어도 하나의 트레이닝된 기계 학습 모델을 사용하여 상기 스트림의 이미지 프레임을 프로세싱하는 단계는: 상기 이미지 프레임의 영역이 전자 디스플레이에 대응한다고 결정하는 것; 및 상기 영역이 상기 전자 디스플레이에 대응한다고 결정하는 것에 응답하여, 상기 호출 제스처 및 상기 시선의 발생을 모니터링하는 것에서 상기 영역을 무시하는 것을 포함한다. 상기 구현예 중 일부에서, 상기 이미지 프레임의 영역이 상기 전자 디스플레이에 대응한다고 결정하는 것은 상기 이미지 프레임의 영역에서, 전자 디스플레이 주파수에 대응하는 디스플레이 주파수를 검출하는 것에 기초한다.
일부 구현예에서, 상기 방법은: 존재 센서로부터의 신호에 기초하여, 사람이 상기 클라이언트 디바이스의 환경에 존재한다는 것을 검출하는 단계; 및 사람이 상기 환경에 존재한다는 것을 검출함에 응답하여, 하나 이상의 카메라가 이미지 프레임의 스트림을 제공하게 하는 단계를 포함한다.
일부 구현예에서, 적어도 하나의 비전 컴포넌트, 적어도 하나의 마이크로폰, 하나 이상의 프로세서 및 하나 이상의 프로세서와 동작가능하게 결합된 메모리를 포함하는 클라이언트 디바이스가 제공된다. 상기 메모리는 명령어를 포함하며, 상기 명령어는 하나 이상의 프로세서에 의한 상기 명령어의 실행에 응답하여, 상기 하나 이상의 프로세서로 하여금 동작을 수행하게 하며, 상기 동작은: 상기 클라이언트 디바이스의 비전 컴포넌트로부터의 출력에 기초하여 비전 데이터 스트림을 수신하는 동작; 다음 둘 모두의 발생을 모니터링하기 위해 상기 클라이언트 디바이스에 로컬적으로 저장된 적어도 하나의 트레이닝된 기계 학습 모델을 사용하여 상기 비전 데이터를 프로세싱하는 동작: 상기 비전 데이터에 의해 캡처된 사용자의 호출 제스처 및 상기 클라이언트 디바이스를 향하는 상기 사용자의 시선; 상기 모니터링에 기초하여 다음 둘 모두의 발생을 검출하는 동작: 상기 호출 제스처, 및 상기 시선; 및 상기 호출 제스처 및 상기 시선 둘 모두의 발생을 검출하는 것에 응답하여: 상기 클라이언트 디바이스에 의해, 하나 이상의 원격 자동화된 어시스턴트 컴포넌트에: 상기 비전 컴포넌트의 출력에 기초하는 추가 비전 데이터, 및 상기 클라이언트 디바이스의 마이크로폰으로부터의 출력에 기초하는 오디오 데이터 중 하나 또는 둘 모두를 전송하는 동작을 포함한다. 상기 동작은 선택적으로 상기 전송에 응답하여, 응답 콘텐츠를 수신하는 동작; 및 상기 클라이언트 디바이스의 하나 이상의 사용자 인터페이스 출력 디바이스를 통해 상기 응답 콘텐츠를 렌더링하는 동작을 더 포함한다.
일부 구현예에서, 적어도 하나의 비전 컴포넌트 및 상기 비전 컴포넌트로부터의 출력에 기초한 비전 데이터의 스트림을 수신하는 하나 이상의 프로세서를 포함하는 시스템이 제공된다. 하나 이상의 프로세서는: 다음 둘 모두의 발생을 모니터링하기 위해 상기 클라이언트 디바이스에 로컬적으로 저장된 적어도 하나의 트레이닝된 기계 학습 모델을 사용하여 상기 비전 데이터를 프로세싱하고: 상기 비전 데이터에 의해 캡처된 사용자의 호출 제스처 및 상기 클라이언트 디바이스를 향하는 상기 사용자의 시선; 상기 모니터링에 기초하여 다음 둘 모두의 발생을 검출하고: 상기 호출 제스처, 및 상기 시선; 및 상기 호출 제스처 및 상기 시선 둘 모두의 발생을 검출하는 것에 응답하여: 상기 자동화된 어시스턴트의 적어도 하나의 기능이 활성화되게 하도록 구성된다.
추가로, 일부 구현예들은 하나 이상의 컴퓨팅 디바이스들의 하나 이상의 프로세서들을 포함하며, 상기 하나 이상의 프로세서들은 연관된 메모리에 저장된 명령어들을 실행하도록 동작가능하며, 상기 명령어들은 앞서 언급된 방법들 중 임의의 것을 수행하도록 구성된다. 또한, 일부 구현예들은 앞서 언급된 방법들 중 임의의 것을 수행하도록 하나 이상의 프로세서들에 의해 실행가능한 컴퓨터 명령어들을 저장하는 하나 이상의 비일시적 컴퓨터 판독가능 저장 매체를 포함한다.
본 명세서에서 매우 상세히 기술된 상기 개념들 및 추가적 개념들의 모든 조합들은 본 명세서에 개시된 본 발명의 일부인 것으로 고려되어야 한다. 예를 들면, 본 명세서의 끝부분에 나타나는 청구된 발명의 모든 조합들은 본 명세서에 개시된 본 발명의 일부인 것으로 고려된다.
도 1은 본 명세서에 개시된 구현예들이 구현될 수 있는 예시적 환경의 블록도이다.
도 2a, 2b 및 2c는 다양한 구현예에 따라 본 개시의 다양한 양태를 보여주는 예시적 프로세스 흐름을 도시한다.
도 3은 어시스턴트 디바이스 및 제스처와 지향 시선을 제공하는 사용자의 예를 도시하고, 사용자가 제스처 및 지향 시선을 제공할 때 어시스턴트 디바이스의 카메라에 의해 캡처된 이미지를 도시한다.
도 4a는 본 명세서에 개시된 구현예에 따른 예시적 방법을 도시하는 흐름도이다.
도 4b는 도 4a의 예시적 방법의 특정 블록의 특정한 예를 도시하는 흐름도이다.
도 5은 컴퓨팅 디바이스의 예시적 아키텍처를 도시한다.
도 1은 본 명세서에 개시된 기법이 구현될 수 있는 예시적 환경을 도시한다. 예시적 환경은 하나 이상의 클라이언트 컴퓨팅 디바이스(106)를 포함한다. 각 클라이언트 디바이스(106)는 자동화된 어시스턴트 클라이언트(110)의 각각의 인스턴스를 실행할 수 있다. 하나 이상의 클라우드 기반 자동화된 어시스턴트 컴포넌트(130)는 일반적으로 114에 표시된 하나 이상의 로컬 및/또는 광역 네트워크(예를 들어, 인터넷)를 통해 클라이언트 디바이스(106)에 통신가능하게 연결된 하나 이상의 컴퓨팅 시스템(집합적으로 "클라우드" 컴퓨팅 시스템으로 통칭)에서 구현될 수 있다. 클라우드 기반 자동화된 어시스턴트 컴포넌트(130)는 예를 들어 고성능 서버의 클러스터를 통해 구현될 수 있다.
다양한 구현예에서, 하나 이상의 클라우드 기반 자동화된 어시스턴트 컴포넌트(130)와의 인터렉션들에 의한 자동화된 어시스턴트 클라이언트(110)의 인스턴스는 사용자의 관점에서 사용자가 인간-대-컴퓨터 인터렉션(예: 발화된 인터렉션, 제스처 기반 인터렉션 및/또는 터치 기반 인터렉션)에 참여할 수 있게 하는 자동화된 어시스턴트(120)의 논리적 인스턴스로 보이는 것을 형성할 수 있다. 이러한 자동화된 어시스턴트(120)의 일 예는 점선으로 도 1에 도시된다. 따라서, 클라이언트 디바이스(106)상에서 실행되는 자동화된 어시스턴트 클라이언트(110)를 사용하는 각 사용자는 사실상 자동화된 어시스턴트(120)의 자신의 논리적 인스턴스를 사용할 수 있음을 이해해야 한다. 간결하고 간단하게하기 위해, 본 명세서에서 특정한 사용자에게 "서비스하는 것"으로 사용되는 "자동화된 어시스턴트"라는 용어는 사용자에 의해 동작되는 클라이언트 디바이스(106)에서 실행되는 자동화된 어시스턴트 클라이언트(110) 및 하나 이상의 클라우드 기반 자동화된 어시스턴트 컴포넌트들(130)(여러 자동화된 어시스턴트 클라이언트들(110) 간에 공유될 수 있음)의 조합을 지칭할 것이다. 일부 구현예에서, 자동화된 어시스턴트(120)는 사용자가 그 특정한 인스턴스의 자동화된 어시스턴트(120)에 의해 실제로 "서비스"되는지 여부에 관계없이 임의의 사용자로부터의 요청에 응답할 수 있음을 이해해야 한다.
하나 이상의 클라이언트 디바이스(106)는 예를 들어, 데스크톱 컴퓨터 디바이스, 랩톱 컴퓨팅 디바이스, 태블릿 컴퓨팅 디바이스, 모바일폰 컴퓨팅 디바이스, 사용자의 차량의 컴퓨팅 디바이스(예를 들어, 차량 내 통신 시스템, 차량 내 엔터테인먼트 시스템, 차량 내 네비게이션 시스템), 단독형 인터렉티브 스피커(일부 경우에 비전 센서를 포함할 수 있음), 스마트 텔레비전(또는 자동화된 어시스턴트 기능을 가진 네트워크 동글을 구비한 일반 텔레비전)과 같은 스마트 장비 및/또는 컴퓨팅 디바이스를 포함하는 사용자의 웨어러블 장치(예를 들어, 컴퓨팅 디바이스를 구비한 사용자의 시계, 컴퓨팅 디바이스를 구비한 사용자의 안경, 가상 또는 증강 현실 컴퓨팅 디바이스)일 수 있다. 추가적 및/또는 대안적 클라이언트 컴퓨팅 디바이스들이 제공될 수 있다. 앞서 언급한 바와 같이, 일부 클라이언트 디바이스(106)는 주로 사용자와 자동화된 어시스턴트(120)(예: 스피커(들) 및 디스플레이가 있는 독립형 인터렉티브 디바이스) 사이의 인터렉션을 용이하게 하도록 설계된 어시스턴트 디바이스의 형태를 취할 수 있다.
클라이언트 디바이스(106)는 하나 이상의 시야를 갖는 하나 이상의 비전 컴포넌트(107)를 구비할 수 있다. 비전 컴포넌트(들)(107)는 모노 그래픽 카메라, 입체 카메라, LIDAR 컴포넌트, 레이더 컴포넌트 등과 같은 다양한 형태를 취할 수 있다. 하나 이상의 비전 컴포넌트(107)는 예를 들어, 비주얼 캡처 모듈(114)에 의해 사용되어, 클라이언트 디바이스(106)가 배치되는 환경의 비전 프레임(예: 이미지 프레임(스틸 이미지 또는 비디오))을 캡처한다. 이러한 비전 프레임은 비전 프레임에 의해 캡처된 사용자의 (하나 이상의 후보 제스처 중) 특정한 제스처 및/또는 사용자로부터의 지향 시선(즉, 클라이언트 디바이스(106)을 향한 시선)의 발생을 모니터링하기 위해, 예를 들어, 호출 엔진(115)의 시선 및 제스처 모듈(116)에 의해 적어도 선택적으로 분석될 수 있다. 시선 및 제스처 모듈(116)은 특정한 제스처 및/또는 지향 시선의 발생을 모니터링하는데 하나 이상의 트레이닝된 기계 학습 모델(117)을 이용할 수 있다.
특정한 제스처 및 지향 시선의 검출에 응답하여(선택적으로 다른 조건 모듈(118)에 의한 하나 이상의 다른 조건(들)의 검출에 응답하여), 호출 엔진(115)은 자동화된 어시스턴트(120)의 하나 이상의 이전 휴면 기능을 호출할 수 있다. 이러한 휴면 기능은 예를 들어 특정 센서 데이터(예: 오디오 데이터, 비디오, 이미지(들) 등)의 프로세싱 및/또는 특정 콘텐츠의 (예: 그래픽 및/또는 청각적) 렌더링을 포함할 수 있다.
하나의 비-제한적인 예로서, 특정한 제스처 및 지향 시선의 검출 전에, 클라이언트 디바이스(106)에서 캡처된 비전 데이터 및/또는 오디오 데이터는 클라이언트 디바이스(106)에서만 로컬적으로 프로세싱 및/또는 일시적으로 버퍼링될 수 있다(즉, 클라우드 기반 자동화된 어시스턴트 컴포넌트(들)(130)로의 전송없이). 그러나, 특정한 제스처 및 지향 시선의 검출에 응답하여, 오디오 데이터 및/또는 비전 데이터(예: 최근에 버퍼링된 데이터 및/또는 검출 후에 수신된 데이터)는 추가적 프로세싱을 위해 클라우드 기반 자동화된 어시스턴트 컴포넌트(들)(130)에 전송될 수 있다. 예를 들어, 특정한 제스처 및 지향 시선의 검출은 사용자의 발화된 발언으로 하여금 자동화된 어시스턴트(120)에 의해 완전히 프로세싱되고, 사용자에 의해 완전히 처리되고 응답 콘텐츠가 자동화된 어시스턴트(120)에 의해 생성되고 사용자에게 렌더링되도록하기 위해 사용자가 명시적 호출 문구(예: "OK Assistant")를 말할 필요를 없앨 수 있다.
예를 들어, 사용자가 오늘의 예보를 얻기 위해 "OK Assistant, 오늘의 예보"를 말하지 않고, 사용자는 대신에 특정한 제스처를 수행하고, 클라이언트 디바이스(106)를 보고, 상기 제스처 및/또는 상기 클라이언트 디바이스(106)를 보는 동안 또는 시간적으로 가깝게(예: 임계 시간 전 및/또는 후 내에) "오늘의 예보"라고만 말한다. 발화된 발언 "오늘의 예보"에 대응하는 데이터(예: 발화된 발언을 캡처하는 오디오 데이터 또는 텍스트 또는 다른 의미론적 변환)는 제스처 및 지향 시선을 검출하는 것에 응답하여, 그리고 제스처 및 지향 시선 동안 및/또는 시간적으로 가깝게 수신되는 발화된 발언에 응답하여, 클라이언트 디바이스(106)에 의해 클라우드 기반 자동 어시스턴트 컴포넌트(들)(130)에 전송될 수 있다. 또 다른 예에서, 사용자가 연결된 온도 조절기를 통해 자신의 집의 온도를 높이기 위해 "OK Assistant, 온도를 높여"라고 말할 필요없이, 사용자는 대신에 특정한 제스처를 수행하고, 클라이언트 디바이스(106)를 보고, 그리고 제스처를 수행하고 및/또는 클라이언트 디바이스(106)를 바라보는 동안 또는 시간적으로 가깝게(예: 임계 시간 전 및/또는 후 내에) "온도를 높여"라고만 말한다. 발화된 발언 "온도를 높여"에 대응하는 데이터(예: 발화된 발언을 캡처하는 오디오 데이터 또는 텍스트 또는 다른 의미론적 변환)는 제스처 및 지향 시선을 검출하는 것에 응답하여, 그리고 제스처 및 지향 시선 동안 및/또는 시간적으로 가깝게 수신되는 발화된 발언에 응답하여, 클라이언트 디바이스(106)에 의해 클라우드 기반 자동 어시스턴트 컴포넌트(들)(130)에 전송될 수 있다. 다른 예에서, 사용자가 자신의 차고를 열기 위해 "OK Assistant, 차고 문 열어"라고 말할 필요없이, 사용자는 대신에 특정한 제스처를 수행하고, 클라이언트 디바이스(106)를 보고, 그리고 제스처를 수행하고 및/또는 클라이언트 디바이스(106)를 바라보는 동안 또는 시간적으로 가깝게(예: 임계 시간 전 및/또는 후 내에) "차고 문 열어"라고만 말한다. 발화된 발언 "차고 문 열어"에 대응하는 데이터(예: 발화된 발언을 캡처하는 오디오 데이터 또는 텍스트 또는 다른 의미론적 변환)는 제스처 및 지향 시선을 검출하는 것에 응답하여, 그리고 제스처 및 지향 시선 동안 및/또는 시간적으로 가깝게 수신되는 발화된 발언에 응답하여, 클라이언트 디바이스(106)에 의해 클라우드 기반 자동 어시스턴트 컴포넌트(들)(130)에 전송될 수 있다. 일부 구현예에서, 클라이언트 디바이스(106)에 의한 데이터의 전송은 하나 이상의 추가 조건의 발생을 결정하는 다른 조건 모듈(118)에 더 의존할 수 있다. 예를 들어, 데이터의 전송은 음성 활동이 오디오 데이터에 존재함을 나타내는 다른 조건 모듈(118)에 의해 수행되는 오디오 데이터의 로컬 음성 활동 검출 프로세싱에 더 기초할 수 있다. 또한, 예를 들어, 데이터의 전송은 추가적으로 또는 대안적으로 다른 조건 모듈(118)에 의해 오디오 데이터가 제스처 및 지향 시선을 제공한 사용자에 대응한다는 결정에 더 기초할 수 있다. 예를 들어, (클라이언트 디바이스(106)에 대한) 사용자의 방향은 비전 데이터에 기초하여 결정될 수 있고, 데이터의 전송은 다른 조건 모듈(118)에 의해 오디오 데이터에서 발화된 발언이 동일한 방향으로부터 나온다고 결정함에(예: 빔포밍 및/또는 기타 기법 사용) 더 기초할 수 있다. 또한, 예를 들어, 사용자의 사용자 프로필은 비전 데이터(예: 얼굴 인식 사용)에 기초하여 결정될 수 있고, 데이터의 전송은 다른 조건 모듈(118)에 의해 오디오 데이터에서 발화된 발언이 사용자 프로필과 매칭되는 음성 특징을 가진다고 결정함에 더 기초할 수 있다. 또 다른 예로서, 데이터의 전송은 다른 조건 모듈(118)에 의해, 비전 데이터에 기초하여 사용자의 입 움직임이 검출된 제스처 및/또는 지향 시선과 함께 발생하거나 검출된 제스처 및/또는 지향 시선의 임계 시간 내에 발생했다는 결정에 더 기초할 수 있다. 다른 조건 모듈(118)은 다른 조건(들)이 존재한다고 결정함에 있어서 하나 이상의 다른 기계 학습 모델(119)을 선택적으로 이용할 수 있다. 시선 및 제스처 모듈(116) 및 다른 조건 모듈(118)의 구현예에 대한 추가 설명이 본 명세서에서 제공된다(예: 도 2a-2c 참조).
클라이언트 디바이스들(106) 각각 및 클라우드 기반 자동화된 어시스턴트 컴포넌트들(130)를 동작하는 컴퓨팅 디바이스(들)은 데이터 및 소프트웨어 애플리케이션들의 저장을 위한 하나 이상의 메모리들, 데이터에 액세스하고 어플리케이션을 실행하기 위한 하나 이상의 프로세서 및 네트워크를 통해 통신을 지원하는 다른 컴포넌트들을 포함할 수 있다. 클라이언트 컴퓨팅 디바이스(106) 및/또는 자동화된 어시스턴트(120)에 의해 수행되는 동작들은 다수의 컴퓨터 시스템들에 걸쳐 분산될 수 있다. 자동화된 어시스턴트(120)는 예를 들면, 네트워크를 통해 서로 연결된 하나 이상의 위치들에서 하나 이상의 컴퓨터에서 실행되는 컴퓨터 프로그램들로서 구현될 수 있다.
위에서 언급된 바와 같이, 다양한 구현예에서, 클라이언트 컴퓨팅 디바이스(106)는 자동화된 어시스턴트 클라이언트(110)를 동작할 수 있다. 이러한 다양한 구현예 중 일부에서, 자동화된 어시스턴트 클라이언트(110)는 음성 캡처 모듈(112), 전술한 비주얼 캡처 모듈(114) 및 시선 및 제스처 모듈(116) 및 선택적으로 다른 조건 모듈(118)을 포함할 수 있는 호출 엔진(115)을 포함할 수 있다. 다른 구현예에서, 음성 캡처 모듈(112), 비주얼 캡처 모듈(114) 및/또는 호출 엔진(115)의 하나 이상의 양태는 예를 들어 하나 이상의 클라우드 기반 자동화된 어시스턴트 컴포넌트(130)에 의해 자동화된 어시스턴트 클라이언트(110)와 별도로 구현될 수 있다.
다양한 구현예에서, 하드웨어 및 소프트웨어의 임의의 조합을 사용하여 구현될 수 있는 음성 캡처 모듈(112)은 사용자의 발화된 발언(들)의 오디오 녹음을 캡처하기 위해 마이크로폰(들)(109) 또는 다른 압력 센서와 같은 하드웨어와 인터페이싱할 수 있다. 아래에서 설명하는 바와 같이, 다양한 목적을 위해 이 오디오 녹음에 대해 다양한 유형의 프로세싱이 수행될 수 있다. 다양한 구현예에서, 하드웨어 또는 소프트웨어의 임의의 조합을 사용하여 구현될 수 있는 비주얼 캡처 모듈(114)은 비주얼 컴포넌트(107)와 인터페이싱하도록 구성되어, 선택적으로 적응 가능한 비전 센서(107)의 시야에 대응하는 하나 이상의 비전 프레임(예: 디지털 이미지)을 캡처한다.
음성 캡처 모듈(112)은 앞서 언급된 바와 같이, 예를 들어 마이크로폰(들)(109)을 통해 사용자의 음성을 캡처하도록 구성될 수 있다. 추가적으로 또는 대안적으로, 일부 구현예에서, 음성 캡처 모듈(112)은 캡처된 오디오를 텍스트 및/또는 다른 표현 또는 임베딩으로, 예를 들어, 음성-텍스트("STT") 변환 프로세싱 기법을 사용하여 변환하도록 추가로 구성될 수 있다. 그러나, 클라이언트 디바이스(106)는 컴퓨팅 리소스들(예를 들어, 프로세서 사이클들, 메모리, 배터리 등)과 관련하여 상대적으로 제한될 수 있기 때문에, 클라이언트 디바이스(106)에 대해 로컬적인 음성 캡처 모듈(112)은 자동화된 어시스턴트(120)를 호출하는 문구와 같은 한정된 수의 상이한 발화된 문구를 텍스트(또는 보다 낮은 차원성 임베딩과 같은 다른 형태)로 변환하도록 구성될 수 있다. 다른 음성 입력은 클라우드 기반 자동화된 어시스턴트 컴포넌트(130)로 송신될 수 있으며, 이는 클라우드 기반 STT 모듈(132)을 포함할 수 있다.
클라우드 기반 TTS 모듈(131)은 텍스트 데이터(예를 들어, 자동화된 어시스턴트(120)에 의해 생성된 자연어 응답)를 컴퓨터 생성 음성 출력으로 변환하기 위해 클라우드의 사실상 무한한 자원을 활용하도록 구성될 수 있다. 일부 구현예에서, TTS 모듈(131)은 컴퓨터 생성된 음성 출력을 클라이언트 디바이스(106)에 제공하여, 예를 들어 하나 이상의 스피커를 사용하여 직접 출력될 수 있다. 다른 구현예에서, 자동화된 어시스턴트(120)에 의해 생성된 텍스트 데이터(예를 들어, 자연어 응답)는 클라이언트 디바이스(106)에 제공될 수 있고, 클라이언트 디바이스(106)의 로컬 TTS 모듈(114)은 텍스트 데이터를 로컬적으로 출력되는 컴퓨터 생성 음성으로 변환할 수 있다.
클라우드 기반 STT 모듈(132)은 음성 캡쳐 모듈(112)에 의해 캡처된 오디오 데이터를 텍스트(이후 자연어 이해 모듈(135)에 제공될 수 있음)로 변환하기 위해 클라우드의 사실상 무한한 자원을 활용하도록 구성될 수 있다. 일부 구현예에서, 클라우드 기반 STT 모듈(132)은 음성의 오디오 녹음을 하나 이상의 음소로 변환한 다음, 하나 이상의 음소를 텍스트로 변환할 수 있다. 추가적으로 또는 대안적으로, 일부 구현예에서, STT 모듈(132)은 상태 디코딩 그래프를 사용할 수 있다. 일부 구현예에서, STT 모듈(132)은 사용자의 발언에 대한 복수의 후보 텍스트 해석을 생성할 수 있고, 상기 후보로부터 주어진 해석을 선택하기 위해 하나 이상의 기법을 이용할 수 있다.
자동화된 어시스턴트(120)(및 특히 클라우드 기반 자동화된 어시스턴트 컴포넌트(130))는 의도 이해 모듈(135), 전술한 TTS 모듈(131), 전술한 STT 모듈(132) 및 기타 컴포넌트를 포함할 수 있고, 이들은 아래에 더 상세히 설명된다. 일부 구현예들에서, 자동화된 어시스턴트(120)의 모듈들 및/또는 모듈들 중 하나 이상은 생략, 조합될 수 있고 및/또는 자동화된 어시스턴트(120)와 별개인 컴포넌트에서 구현될 수 있다. 일부 구현예에서, 의도 이해 모듈(135), TTS 모듈(131), STT 모듈(132) 등과 같은 자동화된 어시스턴트(120)의 컴포넌트 중 하나 이상은 클라이언트 디바이스(106)에서 적어도 부분적으로(예를 들어, 또는 클라우드 기반 구현과 조합하여 또는 그를 제외하고) 구현될 수 있다.
일부 구현예에서, 자동화된 어시스턴트(120)는 클라이언트 디바이스(106)를 통해 사용자에게 청각적 및/또는 그래픽 렌더링을 위한 다양한 콘텐츠를 생성한다. 예를 들어, 자동화된 어시스턴트(120)는 날씨 예보, 일일 스케줄 등과 같은 콘텐츠를 생성할 수 있고, 여기에 설명된 바와 같이 사용자로부터 제스처 및/또는 지향 시선을 검출하는 것에 응답하여 콘텐츠가 렌더링되도록 할 수 있다. 또한, 예를 들어, 자동화된 어시스턴트(120)는 클라이언트 디바이스의 비주얼 컴포넌트(107)로부터의 비전 데이터를 통해 검출된 사용자의 제스처에 응답하여, 클라이언트 디바이스(106)를 통해 제공된 사용자의 자유 형식의 자연어 입력에 응답하여 콘텐츠를 생성할 수 있다. 본 명세서에서 사용된 바와 같이, 자유 형식의 입력은 사용자에 의해 진술된 입력이며, 사용자에 의한 선택을 위한 제시된 옵션들의 그룹에 제한되지 않는 입력이다. 자유 형식 입력은 예를 들어 타이핑된 입력 및/또는 발화된 입력일 수 있다.
의도 이해 모듈(135)의 자연어 프로세서(133)는 클라이언트 디바이스(106)를 통해 사용자에 의해 생성된 자연어 입력을 프로세싱하고, 자동화된 어시스턴트(120)의 하나 이상의 다른 컴포넌트에 의해 사용하기 위해 주석이 달린 출력(예: 텍스트 형태)을 생성할 수 있다. 예를 들면, 자연어 프로세서(133)는 클라이언트 디바이스(106)의 하나 이상의 사용자 인터페이스 입력 디바이스들을 통해 사용자에 의해 생성된 자연어 자유 형식의 입력을 프로세싱할 수 있다. 생성된 주석이 달린 출력은 자연어 입력의 하나 이상의 주석들 및 자연어 입력의 용어들 중 하나 이상(예를 들어, 전부)을 포함한다.
일부 구현예들에서, 자연어 프로세서(133)는 자연어 입력에서 문법적 정보의 다양한 유형들을 식별하고 주석을 달도록 구성된다. 예를 들어, 자연어 프로세서(133)는 개별 단어를 형태소로 분리하고 및/또는 형태소에 예를 들어, 그들의 클래스에 주석을 달 수 있는 형태소 모듈을 포함할 수 있다. 자연어 프로세서(133)는 용어들에 그들의 문법적 역할들로 주석을 달도록 구성된 품사 태그기를 포함할 수 있다. 또한, 예를 들면, 일부 구현예들에서, 자연어 프로세서(133)는 추가적으로 및/또는 대안적으로 자연어 입력에서 용어들 간의 구문론적 관계들을 결정하도록 구성된 종속성 파서(dependency parser)를 포함할 수 있다.
일부 구현예들에서, 자연어 프로세서(133)는 추가적으로 및/또는 대안적으로 사람들(예를 들어, 문학적 캐릭터, 유명인, 공인 등을 포함), 조직들, 위치들(실제 및 가상) 등에 대한 참조들과 같은 하나 이상의 세그먼트들에서 엔터티 참조들을 주석을 달도록 구성된 엔터티 태그기(entity tagger)(도시되지 않음)를 포함할 수 있다. 일부 구현예에서, 엔터티에 관한 데이터는 지식 그래프(도시되지 않음)와 같은 하나 이상의 데이터베이스에 저장될 수 있고, 자연어 프로세서(133)의 엔터티 태그기는 엔터티 태그에 이러한 데이터베이스(들)를 이용할 수 있다.
일부 구현예들에서, 자연어 프로세서(133)는 추가적으로 및/또는 대안적으로 하나 이상의 컨텍스트적 큐(cue)들에 기초하여 동일한 엔터티에 대한 참조인 그룹 또는 "클러스터"로 구성된 공동참조 리졸버(coreference resolver)(도시되지 않음)를 포함할 수 있다. 예를 들어, 공동참조 리졸버는 자연어 입력에서 "지난 번에 거기 가상 카페에서 먹었을 때 좋았어"에서 "거기"를 "가상 카페"로 해석하는데 사용될 수 있다.
일부 구현예들에서, 자연어 프로세서(133)의 하나 이상의 컴포넌트들은 자연어 프로세서(133)의 하나 이상의 다른 컴포넌트들로부터의 주석들에 의존할 수 있다. 예를 들면, 일부 구현예들에서, 명명된 엔터티 태그기는 특정한 엔터티에 대한 모든 언급들에 주석을 다는 것에 있어 공동참조 리졸버 및/또는 종속성 파서로부터의 주석들에 의존할 수 있다. 또한, 예를 들면, 일부 구현예들에서, 공동참조 리졸버는 동일한 엔터티에 대한 참조들을 클러스터링하는 것에 있어 종속성 파서로부터의 주석들에 의존할 수 있다. 일부 구현예들에서, 특정한 자연어 입력을 프로세싱함에 있어서, 자연어 프로세서(133)의 하나 이상의 컴포넌트들은 하나 이상의 주석들을 결정하기 위해 관련된 이전 입력 및/또는 특정한 자연어 입력 밖의 다른 관련된 데이터를 사용할 수 있다.
의도 이해 모듈(135)은 또한 자동화된 어시스턴트(120)와의 인터렉션에 참여한 사용자의 의도를 결정하도록 구성된 의도 매칭기(134)를 포함할 수 있다. 도 1에서 자연어 프로세서(133)와는 별도로 도시되어 있지만, 다른 구현예에서, 의도 매칭기(134)는 자연어 프로세서(133)(또는 더 일반적으로 자연어 프로세서(133)를 포함하는 파이프 라인)의 통합 부분일 수 있다. 일부 구현예에서, 자연어 프로세서(133) 및 의도 매칭기(134)는 전술한 의도 이해 모듈(135)을 집합적으로 형성할 수 있다.
의도 매칭기(134)는 자연어 프로세서(133)으로부터의 출력(자연어 입력의 주석과 용어를 포함할 수 있음)에 기초하여, 클라이언트 디바이스(106)의 터치 감응형 디스플레이에서의 사용자 터치 입력에 기초하여, 및/또는 비전 데이터에서 검출된 제스처 및/또는 다른 시각적 큐에 기초하여 사용자의 의도를 결정하기 위한 다양한 기법을 사용한다. 일부 구현예에서, 의도 매칭기(134)는 예를 들어 문법과 응답 액션(또는 보다 일반적으로 의도), 시각적 큐와 응답 액션 및/또는 터치 입력과 응답 액션 사이의 복수의 매핑을 포함하는 하나 이상의 데이터베이스(도시되지 않음)에 액세스할 수 있다. 예를 들어, 매핑에 포함된 문법은 시간이 지남에 따라 선택 및/또는 학습될 수 있으며 사용자의 공통 의도를 표현할 수 있다. 예를 들어, 하나의 문법 "play <artist>"는 <artist>의 음악이 사용자에 의해 동작되는 클라이언트 디바이스(106)에 의해 재생되게 하는 응답 액션을 호출하는 의도에 매핑될 수 있다. 또 다른 문법인 "오늘"은 "오늘 날씨는 어때"및 "오늘의 일기예보는 어때?"와 같은 사용자 쿼리와 매칭될 수 있다. 다른 예로서, 액션 매핑에 대한 시각적 큐는 다수의 사용자(예를 들어, 모든 사용자) 및/또는 사용자 특정 매핑에 적용될 수 있는 "일반" 매핑을 포함할 수 있다. 액션 매핑에 대한 시각적 큐의 몇 가지 예는 제스처에 대한 매핑을 포함한다. 예를 들어, "웨이브" 제스처는 맞춤화된 콘텐츠(제스처를 제공하는 사용자에 맞춤화됨)가 사용자에게 렌더링되게 하는 액션에 매핑될 수 있으며, "좋아요" 제스처는 "음악 재생" 액션에 매핑될 수 있다; 그리고 "하이파이브" 제스처는 스마트 커피 메이커 켜기, 특정 스마트 조명 켜기 및 뉴스 요약을 청각적으로 렌더링하기와 같이 수행될 자동화된 어시스턴트 액션의 "루틴"에 매핑될 수 있다.
문법에 추가하여 또는 대신에, 일부 구현예에서, 의도 매칭기(134)는 단독으로 또는 하나 이상의 문법, 시각적 큐 및/또는 터치 입력과 조합하여 하나 이상의 트레이닝된 기계 학습 모델을 사용할 수 있다. 이러한 트레이닝된 기계 학습 모델은 또한 하나 이상의 데이터베이스에 저장될 수 있고, 예를 들어 사용자의 발언 및/또는 임의의 검출된 사용자 제공 시각적 큐를 나타내는 데이터를 축소된 차원 공간에 임베딩함으로써 의도를 식별하도록 트레이닝될 수 있고, 예를 들어 유클리드 거리, 코사인 유사성 등과 같은 기법을 사용하여 어떤 다른 임베딩(및 따라서 의도)이 가장 근접한지 결정한다.
상기 "play <artist>" 예시 문법에서 본 바와 같이, 일부 문법은 슬롯 값(또는 "파라미터")로 채워질 수 있는 슬롯(예: <artist>)을 가진다. 슬롯 값은 다양한 방식으로 결정될 수 있다. 종종 사용자는 사전에 슬롯 값을 제공할 것이다. 예를 들어, 문법 "Order me a <topping> pizza"의 경우, 사용자는 "order me a sausage pizza"라는 문구를 말할 수 있고, 이 경우 슬롯<topping>은 자동으로 채워진다. 추가적으로 또는 대안적으로, 사용자가 사전에 슬롯 값을 제공하지 않고, 사용자가 슬롯 값으로 채워질 슬롯을 포함하는 문법을 호출하는 경우, 자동화된 어시스턴트(120)는 사용자로부터 이러한 슬롯 값을 요청할 수 있다(예: "what type of crust do you want on your pizza?"). 일부 구현예에서, 슬롯은 비전 컴포넌트(107)에 의해 캡처된 비전 데이터에 기초하여 검출된 시각적 큐에 기초한 슬롯 값으로 채워질 수 있다. 예를 들어, 사용자는 클라이언트 디바이스(106)의 비주얼 컴포넌트(107)에 손가락 세 개를 들고 "Order me this many cat bowls"과 같이 말할 수 있다. 또는 사용자가 특정 영화의 DVD 케이스를 들고 "이런 영화를 더 찾아줘"와 같이 말할 수 있다.
일부 구현예에서, 자동화된 어시스턴트(120)는 사용자와 에이전트 간의 트랜잭션을 용이하게(또는 "브로커") 할 수 있으며, 이는 입력을 수신하고 응답 출력을 제공하는 독립적인 소프트웨어 프로세스일 수 있다. 일부 에이전트는 클라우드 기반 자동 어시스턴트 컴포넌트 ISO를 동작하는 것과 별개인 컴퓨팅 시스템에서 동작하거나 하지 않을 수 있는 서드파티 애플리케이션의 형태를 취할 수 있다. 의도 매칭기(134)에 의해 식별될 수 있는 한 종류의 사용자 의도는 서드파티 어플리케이션을 사용하는 것이다. 예를 들어, 자동화된 어시스턴트(120)는 피자 배달 서비스에 대한 애플리케이션 프로그래밍 인터페이스("API")에 대한 액세스를 제공할 수 있다. 사용자는 자동화된 어시스턴트(120)를 호출하고 "피자를 주문하고 싶다"와 같은 명령을 제공할 수 있다. 의도 매칭기(134)는 이 명령을 자동화된 어시스턴트(120)가 서드파티 피자 배달 서비스를 사용하도록 트리거하는 문법에 매핑할 수 있다. 서드파티 피자 배달 서비스는 피자 배달 주문을 이행하기 위해 채워야 하는 슬롯의 최소 목록을 자동화된 어시스턴트(120)에 제공할 수 있다. 자동화된 어시스턴트(120)는 슬롯에 대한 파라미터를 요청하는 자연어 출력을 생성하고 사용자에게(클라이언트 디바이스(106)를 통해) 제공할 수 있다.
이행 모듈(138)은 의도 매칭기(134)에 의해 출력되는 예측/추정 의도뿐만 아니라 연관된 슬롯 값(사용자에 의해 사전에 제공되거나 사용자로부터 요청됨)을 수신하고 의도를 이행(또는 "해결")하도록 구성될 수 있다. 다양한 구현예에서, 사용자 의도의 이행(또는 "해결")은 다양한 이행 정보("응답" 정보 또는 데이터라고도 함)가 예를 들어 이행 모듈(138)에 의해 생성/획득되게 할 수 있다.
이행 정보는 다양한 방식으로 의도를 이행할 수 있으므로 다양한 형태를 취할 수 있다. 사용자가 "'샤이닝'의 야외 장면은 어디에서 촬영되었나요?"와 같은 순수한 정보를 요청한다고 가정한다. 사용자의 의도는 예를 들어 의도 매칭기(134)에 의해 검색 쿼리인 것으로 결정될 수 있다. 검색 쿼리의 의도 및 내용은 도 1에 도시된 바와 같이 이행 모듈(138)에 제공될 수 있고, 이행 모듈은 응답 정보에 대해 문서 및/또는 다른 데이터 소스(예를 들어, 지식 그래프 등)의 코퍼스를 검색하도록 구성된 하나 이상의 검색 모듈(150)과 통신할 수 있다. 이행 모듈(138)은 검색 쿼리를 나타내는 데이터(예: 쿼리의 텍스트, 감소된 차원 임베딩 등)를 검색 모듈(150)에 제공할 수 있다. 검색 모듈(150)은 GPS 좌표와 같은 응답 정보 또는 "Timberline Lodge, Mt. Hood, Oregon"과 같은 다른 보다 명시적인 정보를 제공할 수 있다. 이 응답 정보는 이행 모듈(138)에 의해 생성된 이행 정보의 일부를 형성할 수 있다.
추가적으로 또는 대안적으로, 이행 모듈(138)은 예를 들어 의도 이해 모듈(135)로부터 사용자의 의도 및 사용자에 의해 제공되거나 다른 수단(예: 사용자의 GPS 좌표, 사용자 선호 등)을 사용하여 결정된 임의의 슬롯 값을 수신하고, 응답 액션을 트리거링하도록 구성될 수 있다. 응답 액션은 예를 들어 상품/서비스 주문, 타이머 시작, 리마인더 설정, 전화 통화 시작, 미디어 재생, 메시지 전송, 다수 액션의 루틴 시작 등을 포함할 수 있다. 이러한 일부 구현예에서, 이행 정보는 이행과 연관된 슬롯 값, 확인 응답(일부 경우에 미리 결정된 응답에서 선택될 수 있음) 등을 포함할 수 있다.
추가적으로 또는 대안적으로, 이행 모듈(138)은 (예를 들어, 하루 중 시간, 과거 인터렉션 등에 기초하여) 사용자의 의도(들)를 추론하고 그러한 의도(들)에 대한 응답 정보를 획득하도록 구성될 수 있다. 예를 들어, 이행 모듈(138)은 사용자에 대한 일일 일정 요약, 사용자에 대한 일기 예보 및/또는 사용자에 대한 다른 콘텐츠를 획득하도록 구성될 수 있다. 이행 모듈(138)은 또한 그러한 콘텐츠가 그래픽 및/또는 청각적 렌더링을 위해 사용자에게 "푸시"되게 할 수 있다. 예를 들어, 그러한 콘텐츠의 렌더링은 특정한 제스처 및 지향 시선의 발생을 검출하는 호출 엔진(115)에 응답하여 호출되는 휴면 기능일 수 있다.
자연어 생성기(136)는 다양한 소스로부터 획득된 데이터에 기초하여 자연어 출력(예를 들어, 인간의 음성을 모방하도록 설계된 단어/문구)을 생성 및/또는 선택하도록 구성될 수 있다. 일부 구현예에서, 자연어 생성기(136)는 입력으로서 의도의 이행과 연관된 이행 정보를 수신하고, 이행 정보에 기초하여 자연어 출력을 생성하도록 구성될 수 있다. 추가적으로 또는 대안적으로, 자연어 생성기(136)는 서드파티 애플리케이션과 같은 다른 소스로부터 정보를 수신할 수 있으며, 이는 사용자를 위한 자연어 출력을 작성하는데 사용할 수 있다.
이제 도 2a, 2b 및 2c를 참조하면, 시선 및 제스처 모듈(116)이 특정한 제스처 및/또는 지향 시선을 검출할 수 있는 방법, 및 호출 엔진(115)이 응답으로 하나 이상의 이전 휴면 자동화된 어시스턴트 기능을 호출할 수 있는 방법에 대한 다양한 예가 도시된다.
초기적으로 도 2a로 돌아가면, 비주얼 캡처 모듈(114)은 시선 및 제스처 모듈(116)에 비전 프레임을 제공한다. 일부 구현예에서, 비주얼 캡처 모듈(114)은 비전 프레임의 실시간 스트림을 시선 및 제스처 모듈(116)에 제공한다. 이러한 구현예 중 일부에서, 비주얼 캡처 모듈(114)은 사람이 클라이언트 디바이스(106)와 함께 환경에 존재함을 나타내는 별도의 존재 센서(105)로부터의 신호에 응답하여 비전 프레임을 제공하기 시작한다. 예를 들어, 존재 센서(105)는 PIR 센서일 수 있고, 사람의 존재를 검출하는 것에 응답하여 비주얼 캡처 모듈(114)에 신호를 제공할 수 있다. 비주얼 캡처 모듈(114)은 사람의 존재가 검출되지 않는 한 시선 및 제스처 모듈(116)에 어떠한 비전 프레임도 제공하지 않는다. 비주얼 캡처 모듈(114)이 시선 및 제스처 모듈(116)에 비전 프레임만을 선택적으로 제공하는 다른 구현예에서, 추가 및/또는 대안적 큐가 그러한 제공을 시작하기 위해 이용될 수 있다. 예를 들어, 사람의 존재는 음성 캡처 모듈(112)로부터의 오디오 데이터에 기초하여, 하나 이상의 다른 컴포넌트 및/또는 다른 신호에 의해 비전 프레임의 분석 및/또는 다른 신호에 기초하여 검출될 수 있다.
시선 및 제스처 모듈(116)은 하나 이상의 기계 학습 모델(117)을 사용하여 비전 프레임을 프로세싱하여 지향 시선 및 특정한 제스처 둘 모두의 발생을 모니터링한다. 지향 시선 및 특정한 제스처 모두가 검출될 때, 시선 및 제스처 모듈(116)은 시선 및 제스처의 검출 표시를 호출 엔진(115)에 제공한다.
도 2a에서, 시각 프레임 및/또는 오디오 데이터(음성 캡처 모듈(112)에 의해 제공됨)는 또한 다른 조건 모듈(118)에 제공된다. 다른 조건 모듈(118)은 하나 이상의 다른 조건의 발생을 모니터링하기 위해 선택적으로 하나 이상의 다른 기계 학습 모델(119)을 사용하여 제공된 데이터를 프로세싱한다. 예를 들어, 다른 조건은 오디오 데이터에 기초하여 음성 활동을 검출하는 것; 오디오 데이터에서 음성 호출 문구의 존재를 검출하는 것; 사용자의 방향 또는 위치로부터의 오디오 데이터 음성 활동에 기초하여 검출하는 것; 시각 프레임(들) 및/또는 오디오 데이터에 기초하여 사용자가 승인된 사용자임을 검출하는 것; 시각적 프레임에 기초하여 (제스처 및 지향 시선을 제공한) 사용자의 입 움직임을 검출하는 것; 등일 수 있다. 다른 조건(들)이 검출된 경우, 다른 조건 모듈(118)은 다른 조건의 발생 표시를 호출 엔진(115)에 제공한다.
호출 엔진(115)이 지향 시선 및 제스처의 표시 및 다른 조건의 시간적으로 근접한 표시를 수신한 경우, 호출 엔진(115)은 휴면 기능(들)(101)을 호출한다. 예를 들어, 휴면 기능(들)(101)의 호출은: 클라이언트 디바이스(106)의 디스플레이 스크린을 활성화하는 것; 콘텐츠가 클라이언트 디바이스(106)에 의해 시각적 및/또는 청각적으로 렌더링되게 하는 것; 시각적 프레임 및/또는 오디오 데이터가 클라이언트 디바이스(106)에 의해 하나 이상의 클라우드 기반 자동화된 어시스턴트 컴포넌트(들)(130)에 전송되게 하는 것; 등 중 하나 이상을 포함할 수 있다.
일부 구현예에서, 그리고 도 2b 및 2c와 관련하여 더 상세히 설명된 바와 같이, 시선 및 제스처 모듈(116)은 지향 시선을 검출하기 위해 하나 이상의 제1 기계 학습 모델(117) 및 제스처를 검출하기 위해 하나 이상의 제2 기계 학습 모델(117)을 사용할 수 있다.
일부 다른 구현예에서, 시선 및 제스처 모듈(116)은 입력으로서 시각적 프레임(또는 그 특징)을 수용하고, 특정한 제스처와 지향 시선이 발생했는지 여부를 나타내는 출력을 생성(모델을 통한 입력의 프로세싱에 기초함)하는데 활용될 수 있는 종단 간 기계 학습 모델을 사용할 수 있다. 이러한 기계 학습 모델은 예를 들어 하나 이상의 메모리 레이어(예를 들어, 장단기 메모리(LSTM) 레이어(들))을 포함하는 RNN(recurrent neural network) 모델과 같은 신경 네트워크 모델일 수 있다. 이러한 RNN 모델의 트레이닝은 트레이닝 예시 입력으로서 시각적 프레임 시퀀스(예를 들어, 비디오), 트레이닝 예시 출력으로서 시퀀스가 제스처와 지향 시선 둘 모두를 모두 포함하는지 여부의 표시를 포함하는 트레이닝 예시에 기초할 수 있다. 예를 들어, 트레이닝 예시 출력은 제스처와 지향 시선 둘 모두 존재하는지 여부를 나타내는 단일 값일 수 있다. 다른 예로서, 트레이닝 예시 출력은 지향 시선이 존재하는지 여부를 나타내는 제1 값 및 N 제스처 중 대응하는 한 제스처가 포함되는지 각각을 나타내는 N 추가 값을 포함할 수 있다(그에 따라, 모델의 트레이닝이 N개의 개별 제스처 각각에 대한 대응 확률을 예측할 수 있게 함). 또 다른 예로서, 트레이닝 예시 출력은 지향 시선이 존재하는지 여부를 나타내는 제1 값 및 하나 이상의 특정한 제스처가 존재하는지 여부를 나타내는 제2 값을 포함할 수 있다(따라서 모델의 트레이닝이 임의의 제스처를 포함하는지 여부에 대응하는 확률을 예측할 수 있게 함).
N개의 개별 제스처 각각에 대한 대응 확률을 예측하도록 모델이 트레이닝되는 구현예에서, 시선 및 제스처 모듈(116)은 N개의 제스처 중 어느 것이 발생했는지에 대한 표시를 선택적으로 호출 엔진(115)에 제공할 수 있다. 또한, 호출 엔진(115)에 의한 휴면 기능(101)의 호출은 N개의 개별 제스처 중 어느 것이 발생했는지에 따라 달라질 수 있다. 예를 들어, "웨이브" 제스처의 경우, 호출 엔진(115)은 특정 콘텐츠가 클라이언트 디바이스의 디스플레이 스크린에 렌더링되도록 할 수 있고, "좋아요" 제스처인 경우, 호출 엔진(115)은 오디오 데이터 및/또는 시각적 프레임(들)이 클라우드 기반 자동 어시스턴트 컴포넌트(들)(130)에 전송되게 할 수 있고; "하이파이브" 제스처인 경우, 호출 엔진(115)은 스마트 커피 메이커를 켜고, 특정 스마트 조명을 켜고, 뉴스 요약을 청각적으로 렌더링하는 것과 같은 자동화된 어시스턴트 액션의 "루틴"이 수행되게 할 수 있다.
도 2b는 제스처 및 시선 검출 모듈(116)이 제스처 발생을 모니터링하는데 제스처 기계 학습 모델(117A)을 사용하는 제스처 모듈(116A)을 포함하고, 지향 시선의 발행을 발생을 모니터링하는데 시선 기계 학습 모델(117B)을 사용하는 시선 모듈(116B)을 포함하는 예를 도시한다. 다른 조건(들) 모듈(118)은 간략성을 위해 도 2b에 도시되지 않지만, 도 2a와 관련하여 설명된 것과 유사한 방식으로 제스처 모듈(116A 및 117B)과 조합하여 선택적으로 이용될 수 있다.
도 2b에서, 비주얼 캡처 모듈(114)은 비전 프레임을 제공한다. 비전 프레임의 저해상도 버전이 제스처 모듈(116A)에 제공되고, 비전 프레임의 고해상도 버전이 버퍼(104)에 저장된다. 저해상도 버전은 고해상도 버전에 비해 낮은 해상도이다. 고해상도 버전은 압축되지 않거나 저해상도 버전에 비해 덜 압축될 수 있다. 버퍼(104)는 선입선출 버퍼일 수 있고, 고해상도 비전 프레임의 가장 최근 지속 시간을 일시적으로 저장할 수 있다.
도 2b의 예에서, 제스처 모듈(116A)은 제스처의 존재를 모니터링할 때 저해상도 비전 프레임을 프로세싱할 수 있고, 제스처 모듈(116A)이 제스처의 발생을 검출할 때까지 시선 모듈(116B)은 비활성화될 수 있다. 제스처의 발생이 검출되면, 제스처 모듈(116A)은 제스처의 검출 표시를 시선 모듈(116B) 및 호출 엔진(115)에 제공할 수 있다. 시선 모듈(116B)은 제스처의 검출 표시를 수신하는 것에 응답하여 활성화되어, 버퍼(104)로부터 버퍼링된 고해상도 비전 프레임을 검색하고, 버퍼링된 고해상도 비전 프레임(및 선택적으로 더 높은 해상도 비전 프레임)을 사용하여 지향 시선 존부를 결정한다. 이러한 방식으로, 시선 모듈(116B)은 선택적으로만 활성화되고, 이에 따라 시선 진부를 모듈(116B)에 의한 고해상도 비전 프레임의 추가 프로세싱에 의해 소비될 계산 리소스를 보존한다.
제스처 모듈(116A)은 특정한 제스처를 검출하기 위해 하나 이상의 제스처 기계 학습 모델(117A)을 사용할 수 있다. 이러한 기계 학습 모델은 예를 들어 하나 이상의 메모리 레이어를 포함하는 RNN 모델과 같은 신경 네트워크 모델일 수 있다. 이러한 RNN 모델의 트레이닝은 트레이닝 예시 입력으로서 시각적 프레임 시퀀스(예를 들어, 비디오), 트레이닝 예시 출력으로서 시퀀스가 하나 이상의 특정한 제스처를 포함하는지 여부의 표시를 포함하는 트레이닝 예시에 기초할 수 있다. 예를 들어, 트레이닝 예시 출력은 단일의 특정한 제스처가 존재하는지 여부를 나타내는 단일 값일 수 있다. 예를 들어, 단일 값은 단일 특정한 제스처가 존재하지 않는 경우 "0"이고, 단일 특정한 제스처가 존재하는 경우 "1"이 될 수 있다. 이러한 예 중 일부에서, 다수의 제스처 기계 학습 모델(117A)이 사용되며, 각각은 상이한 단일 특정한 제스처에 맞춰진다. 다른 예로서, 트레이닝 예시 출력은 N개의 제스처 중 대응하는 한 제스처가 포함되는지 각각을 나타내는 N 값을 포함할 수 있다(그에 따라, 모델의 트레이닝이 N개의 개별 제스처 각각에 대한 대응 확률을 예측할 수 있게 함). N개의 개별 제스처 각각에 대한 대응 확률을 예측하도록 모델이 트레이닝되는 구현예에서, 제스처 모듈(116A)은 N개의 제스처 중 어느 것이 발생했는지에 대한 표시를 선택적으로 호출 엔진(115)에 제공할 수 있다. 또한, 호출 엔진(115)에 의한 휴면 기능의 호출은 N개의 개별 제스처 중 어느 것이 발생했는지에 따라 달라질 수 있다.
시선 모듈(116B)은 지향 시선을 검출하기 위해 하나 이상의 시선 기계 학습 모델(117A)을 사용할 수 있다. 이러한 기계 학습 모델은 예를 들어 컨볼루션 신경 네트워크(CNN) 모델과 같은 신경 네트워크 모델일 수 있다. 이러한 CNN 모델의 트레이닝은 트레이닝 예시 입력으로서 시각적 프레임(예를 들어, 이미지), 트레이닝 예시 출력으로서 이미지가 지향 시선을 포함하는지 여부의 표시를 포함하는 트레이닝 예시에 기초할 수 있다. 예를 들어, 트레이닝 예시 출력은 지향 시선이 존재하는지 여부를 나타내는 단일 값일 수 있다. 예를 들어, 단일 값은 지향 시선이 없는 경우 "0", 이미지를 캡처하는 센서를 직접 향하거나 5도 이내의 시선이 있는 경우 "1", 이미지를 캡처하는 센서의 5-10도 이내를 향하는 시선이 있는 경우 "0.75" 등일 수 있다.
이들 및/또는 다른 구현예 중 일부에서, 시선 모듈(116B)은 적어도 임계 확률로 및/또는 적어도 임계 기간 동안 지향 시선이 검출될 때에만 지향 시선을 결정한다. 예를 들어, 이미지 프레임의 스트림은 CNN 모델을 사용하여 프로세싱될 수 있으며 각 프레임의 프로세싱은 프레임이 지향 시선을 포함할 확률을 결과로 한다. 시선 모듈은 (임계 지속 시간에 대응하는) 이미지 프레임 시퀀스의 적어도 X%가 임계치를 충족하는 대응 확률을 갖는 경우에만 지향 시선이 있다고 결정할 수 있다. 예를 들어 X%가 60%이고, 확률 임계치가 0.7이고 임계 기간이 0.5초라고 가정한다. 또한 10개의 이미지 프레임이 0.5초에 대응한다고 가정한다. 이미지 프레임이 프로세싱되어 확률을 생성하는 경우, 도 2c는 제스처 및 시선 검출 모듈(116)이 제스처 발생을 모니터링하는데 제스처 기계 학습 모델(117A)을 사용하는 제스처 모듈(116A)을 포함하고, 지향 시선의 발행을 발생을 모니터링하는데 시선 기계 학습 모델(117B)을 사용하는 시선 모듈(116B)을 포함하는 다른 예를 도시한다. 다른 조건(들) 모듈(118)은 간략성을 위해 도 2b에 도시되지 않지만, 도 2a와 관련하여 설명된 것과 유사한 방식으로 제스처 모듈(116A 및 117B)과 조합하여 선택적으로 이용될 수 있다. 또한, 간략성을 위해 버퍼(104) 및 도 2b의 고해상도/저해상도 비전 프레임이 도 2c에 도시되지 않았지만, 유사한 기법이 도 2c에서 구현될 수 있다(예: 시각 프레임의 고해상도 부분이 시선 모듈(116B)에 제공될 수 있음).
도 2c에서, 비주얼 캡처 모듈(114)은 검출 및 분류 모듈(116C)에 비전 프레임을 제공한다. 검출 및 분류 모듈(116C)은 각 비전 프레임의 다양한 영역을 분류하기 위해 오브젝트 검출 및 분류 기계 학습 모델(117C)을 이용한다. 예를 들어, 검출 및 분류 모듈(116C)은 사람에 대응하는 각 비전 프레임의 사람 영역(들)(있는 경우)을 분류할 수 있고, 각 비전 프레임에 대해 그러한 사람 영역(들)의 표시를 제스처 모듈(116A) 및 시선 모듈(116B)에 제공한다. 또한, 예를 들어, 검출 및 분류 모듈(116C)은 사람의 신체 영역(예를 들어, 팔 및 몸통)에 대응하는 각 비전 프레임의 영역(들)(있는 경우)을 분류하고, 각 비전 프레임에 대해 이러한 영역(들)의 표시를 제스처 모듈(116A)에 제공할 수 있다. 또한, 예를 들어, 검출 및 분류 모듈(116C)은 사람의 얼굴 영역(들)에 대응하는 각 비전 프레임의 영역(들)(있는 경우)을 분류하고 각 비전 프레임에 대해 이러한 영역(들)의 표시를 시선 모듈(116B)에 제공할 수 있다.
일부 구현예에서, 제스처 모듈(116A)은 제공된 영역(들)을 이용하여 각 비전 프레임의 대응하는 부분(들)만을 프로세싱할 수 있다. 예를 들어, 제스처 모듈(116A)은 사람 및/또는 신체 영역(들)을 포함하는 부분(들)만을 프로세싱하기 위해 비전 프레임을 "자르고" 크기를 조정할 수 있다. 이러한 구현예 중 일부에서, 제스처 기계 학습 모델(들)(117A)은 "잘린" 비전 프레임에 기초하여 트레이닝될 수 있고, 크기 조정은 그러한 모델의 입력 디멘션에 부합하는 크기로 될 수 있다. 일부 추가적 또는 대안적 구현예에서, 제스처 모듈(116A)은 제공된 영역(들)을 이용하여, 일부 비전 프레임의 프로세싱을 모두 함께 건너뛸 수 있다(예를 들어, 사람 및/또는 신체 영역을 포함하지 않는 것으로 표시된 것들). 또 다른 구현예에서, 제스처 모듈(116A)은 제공된 영역(들)을 주의 메커니즘으로서(예를 들어, 제스처 기계 학습 모델(117A)에 대한 별도의 주의 입력으로서) 활용하여 각 비전 프레임의 프로세싱을 집중시킬 수 있다.
마찬가지로, 일부 구현예에서, 시선 모듈(116B)은 제공된 영역(들)을 이용하여 각 비전 프레임의 대응하는 부분(들)만을 프로세싱할 수 있다. 예를 들어, 시선 모듈(116B)은 사람 및/또는 얼굴 영역(들)을 포함하는 부분(들)만을 프로세싱하기 위해 비전 프레임을 "자르고" 크기를 조정할 수 있다. 이러한 구현예 중 일부에서, 시선 기계 학습 모델(117B)은 "잘린" 비전 프레임에 기초하여 트레이닝될 수 있고, 크기 조정은 그러한 모델의 입력 디멘션에 부합하는 크기로 될 수 있다. 일부 추가적 또는 대안적 구현예에서, 시선 모듈(116B)은 제공된 영역(들)을 이용하여 일부 비전 프레임의 프로세싱을 모두 함께 건너뛸 수 있다(예를 들어, 사람 및/또는 얼굴 영역을 포함하지 않는 것으로 표시된 것들). 또 다른 구현예에서, 시선 모듈(116B)은 제공된 영역(들)을 주의 메커니즘으로서(예를 들어, 시선 기계 학습 모델(117B)에 대한 별도의 주의 입력으로서) 활용하여 각 비전 프레임의 프로세싱을 집중시킬 수 있다.
일부 구현예에서, 검출 및 분류 모델(116C)은 추가적으로 또는 대안적으로 다른 조건 모듈(118)이 사용하기 위해 특정 영역(들)의 표시를 다른 조건 모듈(118)(도 2c에 도시되지 않음)에 제공할 수 있다. 예를 들어, 입 움직임이 비활성 기능(들)을 호출하기 위한 추가 조건인 경우, 얼굴 영역(들)은 대응하는 입 움직임 기계 학습 모델을 이용하여 입 움직임을 검출하는데 다른 조건 모듈(118)에 의해 사용될 수 있다.
일부 구현예에서, 검출 및 분류 모델(116C)은 TV 또는 다른 비디오 디스플레이 소스로 분류되는 영역(들)의 표시를 제스처 모듈(116A) 및 시선 모듈(116B)에 추가로 또는 대안적으로 제공할 수 있다. 이러한 구현예 중 일부에서, 모듈(116A 및 116B)는 프로세싱된 비전 프레임에서 해당 영역(들)을 잘라내고, 해당 영역에서 주의를 분산시키고 및/또는 검출에서 해당 영역을 무시하거나 검출이 상기 영역에 기초할 가능성을 줄일 수 있다. 이러한 방식과 다른 방식으로, 휴면 기능의 거짓 양성(false-positive) 호출을 완화할 수 있다.
도 3은 도 1의 클라이언트 디바이스(106) 및 비전 컴포넌트(107)의 예를 도시한다. 도 3에서, 예시적 클라이언트 디바이스는 106A로 표시되고, 스피커(들) 및 디스플레이를 더 포함한다. 도 3에서, 예시적 비전 컴포넌트는 107A로 표시되고 카메라이다. 도 3은 또한 손 움직임 제스처(사용자의 오른손 근처에 "움직임" 라인으로 표시됨) 및 카메라(107A)를 향하는 시선을 제공하는 사용자(301)를 도시한다.
도 3은 어시스턴트 디바이스 및 제스처와 지향 시선을 제공하는 사용자의 예를 도시하고, 사용자가 제스처 및 지향 시선을 제공할 때 카메라(107A)에 의해 캡처된 예시적 이미지(360)를 도시한다. 사용자가 이미지(360)뿐만 아니라 사용자 뒤에 있는(따라서 도 1의 사시도에서는 보이지 않는) 텔레비전에서 캡처된다는 것을 알 수 있다.
이미지(360)에서, 경계 상자(361)가 제공되고 (예를 들어, 도 2c의 검출 및 분류 모듈(116C)에 의해) 사람에 대응하는 것으로 결정될 수 있는 이미지의 영역을 표현한다. 일부 구현예에서, 클라이언트 디바이스(106A)에서 동작하는 제스처 검출 모듈은 특정한 제스처를 모니터링할 때 해당 부분이 사람에 대응하는 부분으로 표시됨에 기초하여 이미지의 해당 부분만을 프로세싱할 수 있다(또는 해당 부분에 주의를 집중).
이미지(360)에서, 경계 상자(362)가 제공되어 얼굴에 대응하는 것으로 결정될 수 있는(도 2c의 검출 및 분류 모듈(116C)에 의해) 이미지의 영역을 표현한다. 일부 구현예에서, 클라이언트 디바이스(106A)에서 동작하는 시선 검출 모듈은 지향 시선 모니터링할 때 해당 부분이 얼굴에 대응하는 부분으로 표시됨에 기초하여 이미지의 해당 부분만을 프로세싱할 수 있다(또는 해당 부분에 주의를 집중). 비록 하나의 이미지 만이 도 3에 도시되어 있지만, 다양한 구현예에서, 지향 시선 검출 및/또는 제스처 검출은 본 명세서에 설명된 이미지의 시퀀스에 기초할 수 있다.
이미지(360)에서, 경계 상자(363)가 제공되어, 비디오 디스플레이에 대응하는 것으로 결정될 수 있고 시각적 큐의 오탐을 일으킬 수 있는 이미지의 영역을 표현한다. 예를 들어, 텔레비전은 한 명 이상의 개인이 제스처를 취하거나 카메라를 쳐다보는 등을 보여주는 비디오를 렌더링할 수 있으며, 이들 중 어느 것이든 제스처 및/또는 지향 시선의 발생으로 잘못 해석될 수 있다. 일부 구현예에서, 도 2c의 검출 및 분류 모듈(116C)은 (예를 들어, TV 분류를 검출하는 것에 기초하여) 그러한 영역을 결정할 수 있고 및/또는 그 영역이 비디오 디스플레이의 디스플레이 주파수에 대응하는 디스플레이 주파수를 갖는지를 결정하기 위해(예: 약 60Hz, 120Hz 및/또는 기타 일반적인 비디오 디스플레이 주파수) 그러한 영역은 이미지(360) 및 선행 이미지의 분석에 기초하여 결정될 수 있다. 일부 구현예에서, 시선 검출 모듈 및 제스처 모듈은 프로세싱된 비전 프레임에서 해당 영역을 잘라내고, 해당 영역에서 주의를 분산시키고 및/또는 검출에서 해당 영역을 무시하거나 검출이 상기 영역에 기초할 가능성을 줄일 수 있다. 이러한 방식과 다른 방식으로, 휴면 기능의 거짓 양성(false positive) 호출을 완화할 수 있다.
도 4a는 본 명세서에 개시된 구현예들에 따라 예시적 방법(400)을 도시하는 흐름도이다. 도 4b는 도 4a의 블록(402, 404 및 406)의 구현예의 예시를 도시하는 흐름도이다. 편의상, 도 4a 및 4b의 흐름도의 동작은 동작을 수행하는 시스템을 참조하여 기술된다. 이 시스템은 자동화된 어시스턴트(120)(예: 클라이언트 디바이스 및/또는 원격 컴퓨팅 시스템(들)를 구현하는 컴퓨터 시스템의 하나 이상의 컴포넌트와 같은 다양한 컴퓨터 시스템의 다양한 컴포넌트를 포함할 수 있다. 추가로, 방법(400)의 동작들이 특정한 순서로 도시되었지만, 이는 그러한 제한을 의미하지 않는다. 하나 이상의 동작들은 재순서화, 생략 또는 추가될 수 있다.
블록(402)에서, 시스템은 비전 컴포넌트(들)로부터의 출력에 기초한 비전 데이터를 수신한다. 일부 구현예에서, 비전 컴포넌트(들)는 어시스턴트 클라이언트를 포함하는 클라이언트 디바이스와 통합될 수 있다. 일부 구현예에서, 비전 컴포넌트(들)는 클라이언트 디바이스와 분리될 수 있지만 클라이언트 디바이스와 통신할 수 있다. 예를 들어, 비전 컴포넌트(들)는 어시스턴트 클라이언트를 포함하는 클라이언트 디바이스와 유선 및/또는 무선 통신하는 독립형 스마트 카메라를 포함할 수 있다.
블록(404)에서, 시스템은 적어도 하나의 기계 학습 모델을 사용하여 비전 데이터를 프로세싱하여 제스처 및 지향 시선 모두의 발생을 모니터링한다.
블록(406)에서, 시스템은 블록(404)의 모니터링에 기초하여 제스처 및 시선 둘 모두가 검출되었는지를 결정한다. 그렇지 않은 경우, 시스템은 블록(402)로 돌아가서, 추가 비전 데이터를 수신하고 블록(404 및 406)의 또 다른 반복을 수행한다. 일부 구현예에서, 시스템은 제스처 및 지향 시선이 동시에 발생하거나 서로의 임계 시간적 근접성 내에서 발생하는 것에 검출함에 기초하여 제스처 및 시선 둘 모두가 검출되었다고 결정한다. 일부 추가적 또는 대안적 구현예에서, 시스템은 제스처가 적어도 임계 기간(예: 적어도 X 기간 동안 "웨이브" 또는 적어도 X 기간 동안 "좋아요")이고, 및/또는 지향 시선이 적어도 임계 기간(제스처 지속 시간에 대해 선택적으로 사용되는 것과 동일하거나 다를 수 있음)임을 검출하는 것에 기초하여 제스처와 시선 둘 모두가 검출되었다고 결정한다.
블록(406)의 반복에서, 시스템이 블록(404)의 모니터링에 기초하여 제스처와 시선 모두가 검출되었다고 결정하면, 시스템은 선택적으로 블록(408)로 진행한다(또는 블록(408)이 포함되지 않은 경우 직접 블록(410)으로).
선택적 블록(408)에서, 시스템은 하나 이상의 다른 조건이 만족되는지를 결정한다. 그렇지 않은 경우, 시스템은 블록(402)로 돌아가서 추가 비전 데이터를 수신하고, 블록(404, 406 및 408)의 또 다른 반복을 수행한다. 그렇다면, 시스템은 블록(410)으로 진행한다. 시스템은 블록(402)에서 수신된 시각 데이터, 오디오 데이터 및/또는 다른 센서 또는 비-센서 데이터를 사용하여 하나 이상의 다른 조건이 만족되는지 여부를 결정할 수 있다. 여기에 명시적으로 설명된 것과 같은 다양한 다른 조건(들)이 시스템에 의해 고려될 수 있다.
블록(410)에서, 시스템은 하나 이상의 비활성 자동화된 어시스턴트 기능을 활성화한다. 시스템은 여기에 명시적으로 설명된 것과 같은 다양한 비활성 자동 어시스턴트 기능을 활성화할 수 있다. 일부 구현예에서, 상이한 유형의 제스처가 블록(404)에서 모니터링될 수 있고, 블록(410)에서 활성화되는 비활성 기능(들)은 블록(404)의 모니터링에서 검출되는 특정한 유형의 제스처에 의존할 수 있다.
블록(412)에서, 시스템은 블록(410)에서 활성화된 자동화된 어시스턴트 기능(들)에 대해 비활성화 조건(들)을 모니터링한다. 비활성화 조건(들)은 예를 들어, 시간 초과, 검출된 음성 입력 부족 및/또는 검출된 지향 시선의 적어도 임계 기간의 부족, 명시적 중지 명령(음성, 제스처 또는 터치 입력), 및/또는 쳐다보는 다른 조건(들)을 포함할 수 있다.
블록(414)에서, 시스템은 블록(412)의 모니터링에 기초하여 비활성화 조건(들)이 검출되었는지를 결정한다. 그렇지 않다면, 시스템은 블록(412)로 돌아가서 비활성화 조건(들)을 계속 모니터링한다. 그렇다면, 시스템은 블록(410)에서 활성화된 기능(들)을 비활성화할 수 있고, 블록(402)으로 다시 진행하여, 비전 데이터를 다시 수신하고, 호출 제스처 및 시선의 발생을 다시 모니터링할 수 있다.
활성화된 기능(들)이 하나 이상의 클라우드 기반 자동화된 어시스턴트 컴포넌트(들)로의 오디오 데이터 스트리밍을 포함하는 블록(412 및 414)의 일례로서, 시스템은 적어도 임계 기간 동안 음성 활동의 부족을 검출하는 것에 응답하여(예: VAD 사용), 명시적 중지 명령에 응답하여 또는 사용자의 시선이 적어도 임계 기간 동안 클라이언트 디바이스로 향하지 않았음을 검출함에 응답하여(지속적인 시선 모니터링을 통해) 스트리밍을 중지할 수 있다.
이제 도 4b로 돌아가면, 도 4a의 블록(402, 404 및 406)의 구현예의 일례가 도시된다. 도 4b는 제스처 검출 및 지향 시선 검출이 별도의 모델을 사용하여 수행되고, 지향 시선에 대한 모니터링이 제스처를 먼저 검출한 경우에만 수행되는 예를 도시한다. 도 4b에서, 블록(402A)는 도 4a의 블록(402)의 구체적 예이며, 블록(404A 및 404B)는 도 4a의 블록(404)의 구체적 예이고, 블록(406A 및 406B)는 도 4a의 블록(406)의 구체적 예이다.
블록(402A)에서, 시스템은 비전 데이터를 수신하고 버퍼링한다.
블록(404A)에서, 시스템은 제스처의 발생을 모니터링하기 위해 제스처 기계 학습 모델을 사용하여 비전 데이터를 프로세싱한다. 일부 구현예에서, 블록(404A)는 서브-블록(404A1)을 포함하고, 여기서 시스템은 부분이 사람 및/또는 신체 영역에 대응한다고 검출함에 기초하여 제스처 기계 학습 모델을 사용하여 비전 데이터의 일부를 프로세싱한다.
블록(406A)에서, 시스템은 블록(404A)의 모니터링에 기초하여 제스처가 검출되었는지 여부를 결정한다. 그렇지 않은 경우, 시스템은 블록(402A)로 돌아가서, 추가 비전 데이터를 수신 및 버퍼링하고, 블록(404A)의 또 다른 반복을 수행한다.
블록(406A)의 반복에서, 시스템이 블록(404A)의 모니터링에 기초하여 제스처가 검출되었다고 결정하면, 시스템은 블록(404B)으로 진행한다.
블록(404B)에서, 시스템은 지향 시선의 발생을 모니터링하기 위해 시선 기계 학습 모델을 사용하여 버퍼링된 및/또는 추가 비전 데이터를 프로세싱한다.
일부 구현예에서, 블록(404B)는 서브-블록(404B1)을 포함하고, 여기서 시스템은 부분이 사람 및/또는 얼굴 영역에 대응한다고 검출함에 기초하여 시선 기계 학습 모델을 사용하여 비전 데이터의 일부를 프로세싱한다.
블록(406B)에서, 시스템은 블록(40BA)의 모니터링에 기초하여 지향 시선이 검출되었는지 여부를 결정한다. 그렇지 않은 경우, 시스템은 블록(402A)로 돌아가서, 추가 비전 데이터를 수신 및 버퍼링하고, 블록(404A)의 또 다른 반복을 수행한다.
블록(406B)의 반복에서, 시스템이 블록(404B)의 모니터링에 기초하여 제스처가 검출되었다고 결정하면, 시스템은 도 4a의 블록(408 또는 410)으로 진행한다.
특정한 제스처 및 지향 시선 둘 모두를 검출하는 것에 응답하여, 휴면 어시스턴트 기능(들)을 활성화하는 다양한 예가 본 명세서에 기술된다. 그러나, 다양한 구현예에서 휴면 어시스턴트 기능(들)은 특정한 제스처 및 지향 시선 중 하나만을 검출하는 것에 응답하여 활성화될 수 있으며, 선택적으로 본 명세서에 기술된 것과 같은 하나 이상의 다른 조건과 결합될 수 있다. 예를 들어, 이러한 다양한 구현예 중 일부에서, 휴면 어시스턴트 기능(들)은 사용자의 입 움직임과 같은 다른 조건(들)과 동시에 발생하는, 적어도 임계 지속 기간인 사용자의 지향 시선을 검출하는 것에 응답하여 활성화될 수 있다. 또한, 예를 들어, 이러한 다양한 구현예 중 일부에서, 휴면 어시스턴트 기능(들)은 검출된 음성 활동과 같은 동시 발생 및/또는 시간적으로 근접한 다른 조건(들)과 함께, 사용자의 제스처를 검출하는 것에 응답하여 활성화될 수 있다.
도 5은 본 명세서에 기술된 기법들의 하나 이상의 양태들을 수행하기 위해 선택적으로 활용될 수 있는 예시적 컴퓨팅 디바이스(510)의 블록도이다. 일부 구현예에서, 클라이언트 컴퓨팅 디바이스, 사용자 제어 리소스 모듈(130) 및/또는 다른 컴포넌트(들) 중 하나 이상은 예시적 컴퓨팅 디바이스(510) 중 하나 이상의 컴포넌트를 포함할 수 있다.
컴퓨팅 디바이스(510)는 일반적으로 적어도 하나의 프로세서(514)를 포함하며, 버스 서브시스템(512)을 통해 다수의 주변 디바이스들과 통신한다. 이들 주변 디바이스들은 예를 들면, 메모리 서브시스템(525) 및 파일 저장 서브시스템(526)을 포함하는 저장 서브시스템(524), 사용자 인터페이스 출력 디바이스(520), 사용자 인터페이스 입력 디바이스(522) 및 네트워크 인터페이스 서브시스템(516)을 포함할 수 있다. 입력 및 출력 디바이스는 컴퓨팅 디바이스(510)와 사용자 인터렉션을 하게 한다. 네트워크 인터페이스 서브시스템(516)은 외부 네트워크에 대한 인터페이스를 제공하며, 다른 컴퓨팅 디바이스들의 대응하는 인터페이스 디바이스들과 연결된다.
사용자 인터페이스 입력 디바이스(522)는 키보드, 마우스, 트랙볼, 터치패드 또는 그래픽 태블릿, 스캐너, 디스플레이에 통합된 터치스크린과 같은 포인팅 디바이스, 음성 인식 시스템, 마이크로폰과 같은 오디오 입력 디바이스 및/또는 다른 유형의 입력 디바이스를 포함한다. 일반적으로, 용어 "입력 디바이스"의 사용은 정보를 컴퓨팅 디바이스(510) 또는 통신 네트워크에 입력하기 위한 모든 가능한 유형의 디바이스들과 방식들을 포함하도록 의도된다.
사용자 인터페이스 출력 디바이스(520)는 디스플레이 서브시스템, 프린터, 팩스 기계 또는 오디오 출력 디바이스와 같은 비-시각적 디스플레이를 포함할 수 있다. 디스플레이 서브시스템은 CRT, LCD와 같은 평면 패널 디바이스, 프로젝션 디바이스 또는 시각적 이미지를 생성하기 위한 일부 기타 메커니즘을 포함할 수 있다. 또한, 디스플레이 서브시스템은 오디오 출력 디바이스와 같은 비-시각적 디스플레이를 제공할 수 있다. 일반적으로, 용어 "출력 디바이스"의 사용은 정보를 컴퓨팅 디바이스(510)로부터 사용자에게 또는 다른 기계 또는 컴퓨팅 디바이스에 정보를 출력하기 위한 모든 가능한 유형의 디바이스들과 방식들을 포함하도록 의도된다.
저장 서브시스템(524)은 본 명세서에 기술된 일부 또는 전부의 모듈들의 기능을 제공하기 위한 프로그래밍 및 데이터 구조를 저장한다. 예를 들면, 저장 서브시스템(524)은 도 4a 및 4b의 선택된 양태를 수행하고 뿐만 아니라 도 1, 2a-2c 및 3에 도시된 다양한 컴포넌트를 구현하기 위한 로직을 포함할 수 있다.
이들 소프트웨어 모듈들은 일반적으로 프로세서(514) 단독으로 또는 다른 프로세서들과의 조합에 의해 실행된다. 저장 서브시스템(524)에서 사용된 메모리(525)는 프로그램 실행 중에 명령어들 및 데이터의 저장을 위한 메인 RAM(530) 및 고정된 명령어들이 저장되는 ROM(532)을 포함하는 다수의 메모리들을 포함할 수 있다. 파일 저장 서브시스템(526)은 프로그램 및 데이터 파일에 대한 영구적 저장을 제공할 수 있고, 하드 디스크 드라이브, 연관된 이동식 매체와 함께인 플로피 디스크 드라이브, CD-ROM 드라이브, 광학 드라이브 또는 이동식 매체 카트리지들을 포함할 수 있다. 특정 구현예들의 기능을 구현하는 모듈들은 파일 저장 서브시스템(526)에 의해 저장 서브시스템(524)에 또는 프로세서(들)(514)에 의해 액세스가능한 다른 기계에 저장될 수 있다.
버스 서브시스템(512)은 의도된 대로 컴퓨팅 디바이스(510)의 다양한 컴포넌트들 및 서브시스템들이 서로 통신하게 하기 위한 메커니즘을 제공한다. 버스 서브시스템(512)이 개략적으로 단일의 버스로 도시되었지만, 버스 서브시스템의 대안적 구현예들은 다수의 버스들을 사용할 수 있다.
컴퓨팅 디바이스(510)는 워크스테이션, 서버, 컴퓨팅 클러스터, 블레이드 서버, 서퍼팜 또는 임의의 기타 데이터 프로세싱 시스템 또는 컴퓨팅 디바이스를 포함하는 다양한 유형들일 수 있다. 컴퓨터 및 네트워크의 끊임없이 변화하는 특성으로 인해, 도 5에 도시된 컴퓨팅 디바이스(510)는 일부 구현예를 설명하기 위한 목적의 특정 예로서만 의도된다. 컴퓨팅 디바이스(510)의 많은 다른 구성이 도 5에 도시된 컴퓨팅 디바이스보다 많거나 적은 컴포넌트를 가질 수 있다.
본 명세서에서 논의된 시스템들이 사용자들에 관한 개인 정보를 수집 또는 모니터링하거나 또는 개인 및/또는 모니터링된 정보를 사용하는 경우에 있어서, 사용자에게 프로그램 또는 구성이 사용자 정보(예를 들면, 사용자의 소셜 네트워크, 소셜 액션 또는 활동, 직업, 사용자의 선호 또는 사용자의 현재 지리적 위치)에 관한 정보를 수집할 것인지 여부를 제어할, 사용자와 더 관련된 콘텐츠 서버로부터의 콘텐츠를 수신할지 및/또는 어떻게 수신할지 제어할 기회가 제공될 수 있다. 추가로, 특정 데이터는 그것이 저장되거나 사용되기 전에 하나 이상의 다양한 방식들로 취급되어, 개인적으로 식별가능한 정보는 제거된다. 예를 들면, 사용자의 신원은 사용자에 관한 개인적으로 식별가능한 정보가 결정될 수 없도록 취급되거나 또는 사용자의 지리적 위치는 위치 정보가 획득된 곳에서 일반화되어(시, 우편번호 또는 주 수준으로), 사용자의 특정한 지리적 위치가 결정될 수 없도록 한다. 따라서, 사용자는 사용자에 관한 정보가 어떻게 수집되는지 그리고 사용되는지에 관한 제어를 가질 수 있다. 예를 들어, 일부 구현예에서, 사용자는 비전 컴포넌트(107)를 사용하고 및/또는 제스처 및/또는 방향성 시선의 발생을 모니터링할 때 비전 컴포넌트(107)로부터 비전 데이터를 사용하여 어시스턴트 디바이스를 옵트 아웃할 수 있다.

Claims (21)

  1. 하나 이상의 사용자와 자동화된 어시스턴트 간의 터치없는 인터렉션을 용이하게 하는 클라이언트 디바이스의 하나 이상의 프로세서에 의해 구현되는 방법으로서,
    상기 클라이언트 디바이스의 하나 이상의 카메라로부터의 출력에 기초한 이미지 프레임의 스트림을 수신하는 단계;
    다음 둘 모두의 발생을 모니터링하기 위해 상기 클라이언트 디바이스에 로컬적으로 저장된 적어도 하나의 트레이닝된 기계 학습 모델을 사용하여 상기 스트림의 이미지 프레임을 프로세싱하는 단계:
    상기 이미지 프레임 중 적어도 하나에 의해 캡처된 사용자의 호출 제스처 및 상기 클라이언트 디바이스를 향한 상기 사용자의 시선,
    상기 호출 제스처는 터치-프리 제스처이고, 상기 사용자에 의해 수행되며, 상기 이미지 프레임 중 적어도 하나에서 시각적으로 검출가능하며,
    상기 호출 제스처의 발생을 모니터링하기 위해 상기 적어도 하나의 트레이닝된 기계 학습 모델을 사용하여 상기 스트림의 이미지 프레임을 프로세싱하는 단계는 상기 이미지 프레임의 제2 해상도 버전을 프로세싱하지 않고 상기 이미지 프레임의 제1 해상도 버전을 프로세싱하는 것을 포함하며, 그리고
    상기 시선의 발생을 모니터링하기 위해 상기 적어도 하나의 트레이닝된 기계 학습 모델을 사용하여 상기 스트림의 이미지 프레임을 프로세싱하는 단계는 상기 이미지 프레임의 제2 해상도 버전을 프로세싱하는 것을 포함하며;
    상기 모니터링에 기초하여 다음 둘 모두의 발생을 검출하는 단계:
    상기 호출 제스처, 및
    상기 시선; 및
    상기 호출 제스처 및 상기 시선 둘 모두의 발생을 검출하는 것에 응답하여: 상기 자동화된 어시스턴트의 적어도 하나의 기능이 활성화되게 하는 단계를 포함하는, 방법.
  2. 청구항 1에 있어서,
    상기 호출 제스처 및 상기 시선 둘 모두의 발생을 검출하는 것에 응답하여 활성화되는 상기 자동화된 어시스턴트의 적어도 하나의 기능은:
    상기 클라이언트 디바이스의 하나 이상의 마이크로폰을 통해 캡처된 오디오 데이터를 상기 자동화된 어시스턴트와 연관된 원격 서버에 전송하는 것을 포함하는, 방법.
  3. 청구항 1에 있어서,
    상기 호출 제스처 및 시선 둘 모두의 발생을 검출하는 것에 응답하여 활성화되는 적어도 하나의 기능은:
    추가 이미지 프레임을 상기 자동화된 어시스턴트와 연관된 원격 서버에 전송하는 것을 포함하며, 상기 추가 이미지 프레임은 하나 이상의 카메라로부터의 출력에 기초하고, 상기 호출 제스처 및 상기 시선 둘 모두의 발생을 검출한 후에 수신되는, 방법.
  4. 청구항 1에 있어서,
    상기 호출 제스처 및 상기 시선 둘 모두의 발생을 검출하는 것에 응답하여 활성화되는 적어도 하나의 기능은:
    상기 클라이언트 디바이스에서 버퍼링된 오디오 데이터를 프로세싱하는 것을 포함하며, 상기 버퍼링된 오디오 데이터는 상기 클라이언트 디바이스의 메모리에 저장되고 상기 클라이언트 디바이스의 하나 이상의 마이크로폰을 통해 캡처되며, 상기 버퍼링된 오디오 데이터의 프로세싱은:
    호출 문구 검출 프로세싱, 및
    자동 음성 인식 중 하나 또는 둘 모두를 포함하는, 방법.
  5. 청구항 4에 있어서,
    상기 버퍼링된 오디오 데이터를 프로세싱하는 것은 상기 자동 음성 인식을 포함하고, 상기 자동 음성 인식은 음성-텍스트 변환 프로세싱을 포함하는, 방법.
  6. 청구항 4에 있어서,
    상기 버퍼링된 오디오 데이터의 프로세싱은 호출 문구 검출 프로세싱을 포함하고, 추가로:
    상기 호출 문구 검출 프로세싱에 응답하여, 상기 버퍼링된 오디오 데이터에서 호출 문구의 존재를 검출하여 다음 중 하나 또는 둘 모두를 수행하는 단계를 포함하며:
    상기 클라이언트 디바이스의 하나 이상의 마이크로폰을 통해 캡처된 추가 오디오 데이터를 상기 자동화된 어시스턴트와 연관된 원격 서버에 전송하는 것; 및
    추가 이미지 프레임을 상기 자동화된 어시스턴트와 연관된 원격 서버에 전송하는 것, 상기 추가 이미지 프레임은 하나 이상의 카메라로부터의 출력에 기초하고, 상기 호출 제스처 및 상기 시선 둘 모두의 발생을 검출한 후에 수신되는, 방법.
  7. 청구항 1에 있어서,
    상기 호출 제스처 및 상기 시선 둘 모두 발생을 모니터링하기 위해 상기 클라이언트 디바이스에 로컬적으로 저장된 적어도 하나의 트레이닝된 기계 학습 모델을 사용하여 상기 스트림의 이미지 프레임을 프로세싱하는 단계는:
    상기 호출 제스처의 발생을 모니터링하기 위해 상기 이미지 프레임의 제1 해상도 버전을 프로세싱하는 것에서 제1 트레이닝된 기계 학습 모델을 사용하는 것; 및
    상기 클라이언트 디바이스를 향하는 상기 사용자의 시선을 모니터링하기 위해 상기 이미지 프레임의 제2 해상도 버전을 프로세싱하는 것에서 제2 트레이닝된 기계 학습 모델을 사용하는 것을 포함하는, 방법.
  8. 청구항 7에 있어서,
    제2 트레이닝된 기계 학습 모델을 사용하여 상기 클라이언트 디바이스를 향하는 상기 사용자의 시선을 모니터링하는 것은 상기 제1 트레이닝된 기계 학습 모델을 사용하여 상기 호출 제스처의 발생을 검출함에 대한 응답으로만 발생하는, 방법.
  9. 청구항 8에 있어서,
    상기 이미지 프레임의 제1 해상도 버전은 상기 이미지 프레임의 제2 해상도 버전에 비해 낮은 해상도이며, 상기 방법은:
    상기 호출 제스처의 발생을 모니터링하기 위해 상기 제1 트레이닝된 기계 학습 모델을 사용하는 동안 버퍼에 상기 이미지 프레임의 제2 해상도 버전을 저장하는 단계; 및
    상기 제1 트레이닝된 기계 학습 모델을 사용하여 상기 호출 제스처의 발생을 검출하는 것에 대한 응답으로만, 상기 제2 트레이닝된 기계 학습 모델을 사용하여 프로세싱하기 위해, 상기 이미지 프레임의 제2 해상도 버전을 검색하는 단계를 더 포함하는, 방법.
  10. 청구항 1에 있어서,
    상기 클라이언트 디바이스의 하나 이상의 마이크로폰으로부터의 출력에 기초하여 오디오 데이터 프레임의 스트림을 수신하는 단계;
    발화된 호출 문구의 발생을 모니터링하기 위해 상기 클라이언트 디바이스에 로컬적으로 저장된 적어도 하나의 트레이닝된 호출 문구 검출 기계 학습 모델을 사용하여 상기 스트림의 오디오 데이터 프레임을 프로세싱하는 단계;
    상기 발화된 호출 문구의 발생에 대한 모니터링에 기초하여 상기 발화된 호출 문구의 발생을 검출하는 단계를 포함하며;
    상기 자동화된 어시스턴트의 적어도 하나의 기능이 활성화되게 하는 단계는 상기 호출 제스처 및 상기 시선 둘 모두에 대한 시간적 근접에 상기 발화된 호출 문구의 발생을 검출하는 것에 대한 응답인, 방법.
  11. 청구항 10에 있어서,
    활성화되는 적어도 하나의 기능은:
    상기 클라이언트 디바이스의 하나 이상의 마이크로폰을 통해 캡처된 추가 오디오 데이터 프레임을 상기 자동화된 어시스턴트와 연관된 원격 서버에 전송하는 것; 및
    하나 이상의 카메라로부터의 하나 이상의 추가 이미지 프레임을 상기 자동화된 어시스턴트와 연관된 원격 서버에 전송하는 것 중 하나 또는 둘 모두를 포함하는, 방법.
  12. 청구항 1에 있어서,
    상기 호출 제스처 및 상기 시선 둘 모두 발생을 모니터링하기 위해 상기 클라이언트 디바이스에 로컬적으로 저장된 적어도 하나의 트레이닝된 기계 학습 모델을 사용하여 상기 스트림의 이미지 프레임을 프로세싱하는 단계는:
    사람 얼굴을 포함하는 상기 이미지 프레임의 영역을 예측하기 위해 제1 트레이닝된 기계 학습 모델을 사용하여 이미지 프레임을 프로세싱하는 것; 및
    상기 사용자의 시선을 검출하도록 트레이닝된 제2 트레이닝된 기계 학습 모델을 사용하여 상기 이미지 프레임의 영역을 프로세싱하는 것을 포함하는, 방법.
  13. 청구항 1에 있어서,
    상기 호출 제스처 및 상기 시선 둘 모두 발생을 모니터링하기 위해 상기 클라이언트 디바이스에 로컬적으로 저장된 적어도 하나의 트레이닝된 기계 학습 모델을 사용하여 상기 스트림의 이미지 프레임을 프로세싱하는 단계는:
    상기 이미지 프레임의 영역이 전자 디스플레이에 대응한다고 결정하는 것; 및 상기 영역이 상기 전자 디스플레이에 대응한다고 결정하는 것에 응답하여, 상기 호출 제스처 및 상기 시선의 발생을 모니터링하는 것에서 상기 영역을 무시하는 것을 포함하는, 방법.
  14. 청구항 13에 있어서,
    상기 이미지 프레임의 영역이 상기 전자 디스플레이에 대응한다고 결정하는 것은 상기 이미지 프레임의 영역에서, 전자 디스플레이 주파수에 대응하는 디스플레이 주파수를 검출하는 것에 기초하는, 방법.
  15. 청구항 1에 있어서,
    존재 센서로부터의 신호에 기초하여, 사람이 상기 클라이언트 디바이스의 환경에 존재한다는 것을 검출하는 단계;
    사람이 상기 환경에 존재한다는 것을 검출함에 응답하여, 하나 이상의 카메라가 이미지 프레임의 스트림을 제공하게 하는 단계를 포함하는, 방법.
  16. 클라이언트 디바이스로서,
    적어도 하나의 비전 컴포넌트;
    하나 이상의 마이크로폰;
    하나 이상의 프로세서;
    상기 하나 이상의 프로세서와 동작가능하게 연결된 메모리를 포함하며, 상기 메모리는 명령어를 포함하며, 상기 명령어는 하나 이상의 프로세서에 의한 상기 명령어의 실행에 응답하여, 상기 하나 이상의 프로세서로 하여금 동작을 수행하게 하며, 상기 동작은:
    상기 클라이언트 디바이스의 비전 컴포넌트로부터의 출력에 기초하여 비전 데이터 스트림을 수신하는 동작;
    상기 클라이언트 디바이스의 마이크로폰으로부터의 출력에 기초하여 오디오 데이터의 스트림을 수신하는 동작;
    다음 둘 모두의 발생을 모니터링하기 위해 상기 클라이언트 디바이스에 로컬적으로 저장된 적어도 하나의 트레이닝된 기계 학습 모델을 사용하여 상기 비전 데이터를 프로세싱하는 동작:
    상기 비전 데이터에 의해 캡처된 사용자의 호출 제스처 및 상기 클라이언트 디바이스를 향하는 상기 사용자의 시선, 상기 호출 제스처는 터치-프리 제스처이고, 상기 사용자에 의해 수행되며, 상기 비전 데이터에서 시각적으로 검출가능하며;
    상기 모니터링에 기초하여 다음 둘 모두의 발생을 검출하는 동작:
    상기 호출 제스처, 및
    상기 시선;
    상기 오디오 데이터가 상기 호출 제스처 및 상기 시선을 제공한 상기 사용자에 대응한다고 결정하는 동작; 및
    상기 호출 제스처 및 상기 시선 둘 모두의 발생을 검출하는 것에 응답하여, 그리고 상기 오디오 데이터가 상기 호출 제스처 및 상기 시선을 제공한 상기 사용자에 대응한다고 결정에 따라, 상기 클라이언트 디바이스에 의해, 하나 이상의 원격 자동화된 어시스턴트 컴포넌트에:
    상기 비전 컴포넌트의 출력에 기초하는 추가 비전 데이터, 및
    상기 클라이언트 디바이스의 마이크로폰으로부터의 출력에 기초하는 오디오 데이터의 적어도 일부 중 하나 또는 둘 모두를 전송하는 동작을 포함하는, 클라이언트 디바이스.
  17. 청구항 16에 있어서,
    상기 전송에 응답하여, 응답 콘텐츠를 수신하는 동작;
    상기 클라이언트 디바이스의 하나 이상의 사용자 인터페이스 출력 디바이스를 통해 상기 응답 콘텐츠를 렌더링하는 동작을 더 포함하는, 클라이언트 디바이스.
  18. 시스템으로서,
    적어도 하나의 비전 컴포넌트;
    상기 비전 컴포넌트로부터의 출력에 기초하는 비전 데이터의 스트림을 수신하는 하나 이상의 프로세서를 포함하며, 상기 하나 이상의 프로세서는:
    다음 둘 모두의 발생을 모니터링하기 위해 클라이언트 디바이스에 로컬적으로 저장된 적어도 하나의 트레이닝된 기계 학습 모델을 사용하여 상기 비전 데이터를 프로세싱하고:
    상기 비전 데이터에 의해 캡처된 사용자의 호출 제스처 및 상기 클라이언트 디바이스를 향하는 상기 사용자의 시선,
    상기 호출 제스처는 터치-프리 제스처이고, 상기 사용자에 의해 수행되며, 상기 비전 데이터에서 시각적으로 검출가능하며,
    상기 호출 제스처의 발생을 모니터링하기 위해 상기 적어도 하나의 트레이닝된 기계 학습 모델을 사용하여 상기 스트림의 이미지 프레임을 프로세싱하는 것은 상기 비전 데이터의 제2 해상도 버전을 프로세싱하지 않고 상기 비전 데이터의 제1 해상도 버전을 프로세싱하는 것을 포함하며, 그리고
    상기 시선의 발생을 모니터링하기 위해 상기 적어도 하나의 트레이닝된 기계 학습 모델을 사용하여 상기 비전 데이터를 프로세싱하는 것은 상기 비전 데이터의 제2 해상도 버전을 프로세싱하는 것을 포함하며;
    상기 모니터링에 기초하여 다음 둘 모두의 발생을 검출하고:
    상기 호출 제스처, 및
    상기 시선; 및
    상기 호출 제스처 및 상기 시선 둘 모두의 발생을 검출하는 것에 응답하여: 자동화된 어시스턴트의 적어도 하나의 기능이 활성화되게 하도록 구성되는, 시스템.
  19. 컴퓨터 판독가능 저장 매체에 저장된, 명령어를 포함하는 컴퓨터 프로그램으로서, 상기 명령어는 하나 이상의 프로세서에 의해 실행될 때, 상기 하나 이상의 프로세서로 하여금 청구항 1 내지 15 중 어느 한 항의 방법을 수행하게 하는, 컴퓨터 프로그램.
  20. 명령어를 포함하는 컴퓨터 판독가능 저장 매체로서, 상기 명령어는 하나 이상의 프로세서에 의해 실행될 때, 상기 하나 이상의 프로세서로 하여금 청구항 1 내지 15 중 어느 한 항의 방법을 수행하게 하는, 컴퓨터 판독가능 저장 매체.
  21. 청구항 1 내지 15 중 어느 한 항의 방법을 수행하기 위한 하나 이상의 프로세서를 포함하는, 시스템.
KR1020207034482A 2018-05-04 2018-05-04 검출된 제스처 및 시선에 기초하여 자동화된 어시스턴트 기능 호출 KR102661487B1 (ko)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2018/031164 WO2019212567A1 (en) 2018-05-04 2018-05-04 Invoking automated assistant function(s) based on detected gesture and gaze

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020247013582A Division KR20240067114A (ko) 2018-05-04 검출된 제스처 및 시선에 기초하여 자동화된 어시스턴트 기능 호출

Publications (2)

Publication Number Publication Date
KR20210002697A KR20210002697A (ko) 2021-01-08
KR102661487B1 true KR102661487B1 (ko) 2024-04-26

Family

ID=62492704

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020207034482A KR102661487B1 (ko) 2018-05-04 2018-05-04 검출된 제스처 및 시선에 기초하여 자동화된 어시스턴트 기능 호출

Country Status (6)

Country Link
US (3) US10890969B2 (ko)
EP (3) EP3982236B1 (ko)
JP (2) JP7277569B2 (ko)
KR (1) KR102661487B1 (ko)
CN (1) CN112236738A (ko)
WO (1) WO2019212567A1 (ko)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102116604B1 (ko) * 2018-01-26 2020-05-28 한양대학교 산학협력단 레이더를 이용한 제스처 인식 장치 및 방법
US10818288B2 (en) * 2018-03-26 2020-10-27 Apple Inc. Natural assistant interaction
US11688417B2 (en) 2018-05-04 2023-06-27 Google Llc Hot-word free adaptation of automated assistant function(s)
US10890969B2 (en) * 2018-05-04 2021-01-12 Google Llc Invoking automated assistant function(s) based on detected gesture and gaze
WO2019212569A1 (en) * 2018-05-04 2019-11-07 Google Llc Adapting automated assistant based on detected mouth movement and/or gaze
US11200893B2 (en) * 2018-05-07 2021-12-14 Google Llc Multi-modal interaction between users, automated assistants, and other computing services
CN112868060A (zh) 2018-05-07 2021-05-28 谷歌有限责任公司 用户、自动化助理和其它计算服务之间的多模态交互
US11628851B2 (en) * 2019-07-11 2023-04-18 Lg Electronics Inc. Method and apparatus for controlling a vehicle in autonomous driving system
US11145315B2 (en) * 2019-10-16 2021-10-12 Motorola Mobility Llc Electronic device with trigger phrase bypass and corresponding systems and methods
WO2021091573A1 (en) * 2019-11-08 2021-05-14 Google Llc Using corrections, of automated assistant functions, for training of on-device machine learning models
SE545310C2 (en) * 2019-12-20 2023-06-27 Tobii Ab Improved turn-taking
CN112073582B (zh) * 2020-09-09 2021-04-06 中国海洋大学 基于触摸行为序列的智能手机使用情境识别方法
TWI756966B (zh) * 2020-12-04 2022-03-01 緯創資通股份有限公司 視訊裝置與其操作方法
US11449149B2 (en) * 2021-02-03 2022-09-20 Google Llc Assistant device arbitration using wearable device data
CN112933600B (zh) * 2021-03-09 2023-04-28 超参数科技(深圳)有限公司 虚拟对象控制方法、装置、计算机设备和存储介质
KR20230052715A (ko) * 2021-10-13 2023-04-20 삼성전자주식회사 복수의 디스플레이를 포함하는 전자 장치 및 그 동작 방법
WO2023113204A1 (ko) * 2021-12-13 2023-06-22 삼성전자 주식회사 기능 자동 실행 과정에서 가변형 ui와 사용자 반응을 활용한 기능 실행 및 취소 방법 및 그 장치
WO2024064170A1 (en) * 2022-09-23 2024-03-28 Apple Inc. Probabilistic gesture control with feedback for electronic devices

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016502137A (ja) * 2012-11-16 2016-01-21 エーテル シングス、 インコーポレイテッド デバイス設定、対話および制御のための統一フレームワーク、および関連する方法、デバイスおよびシステム
JP2016502721A (ja) * 2012-11-29 2016-01-28 アマゾン・テクノロジーズ、インコーポレイテッド 電子デバイスのためのジェスチャー検出管理
US20170160813A1 (en) * 2015-12-07 2017-06-08 Sri International Vpa with integrated object recognition and facial expression recognition

Family Cites Families (77)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1124694A (ja) 1997-07-04 1999-01-29 Sanyo Electric Co Ltd 命令認識装置
US6964023B2 (en) 2001-02-05 2005-11-08 International Business Machines Corporation System and method for multi-modal focus detection, referential ambiguity resolution and mood classification using multi-modal input
US8745541B2 (en) 2003-03-25 2014-06-03 Microsoft Corporation Architecture for controlling a computer using hand gestures
US20060192775A1 (en) 2005-02-25 2006-08-31 Microsoft Corporation Using detected visual cues to change computer system operating states
US9250703B2 (en) 2006-03-06 2016-02-02 Sony Computer Entertainment Inc. Interface with gaze detection and voice input
JP5396062B2 (ja) 2008-10-27 2014-01-22 株式会社ブイシンク 電子広告システム
US9274744B2 (en) * 2010-09-10 2016-03-01 Amazon Technologies, Inc. Relative position-inclusive device interfaces
JP5797009B2 (ja) 2011-05-19 2015-10-21 三菱重工業株式会社 音声認識装置、ロボット、及び音声認識方法
US8885882B1 (en) * 2011-07-14 2014-11-11 The Research Foundation For The State University Of New York Real time eye tracking for human computer interaction
US20190102706A1 (en) * 2011-10-20 2019-04-04 Affectomatics Ltd. Affective response based recommendations
US9152376B2 (en) * 2011-12-01 2015-10-06 At&T Intellectual Property I, L.P. System and method for continuous multimodal speech and gesture interaction
US9214157B2 (en) * 2011-12-06 2015-12-15 At&T Intellectual Property I, L.P. System and method for machine-mediated human-human conversation
US9208492B2 (en) 2013-05-13 2015-12-08 Hoyos Labs Corp. Systems and methods for biometric authentication of transactions
EP2842014A4 (en) 2012-04-27 2015-12-02 Hewlett Packard Development Co USER-SECURE AUDIO INPUT
US9423870B2 (en) 2012-05-08 2016-08-23 Google Inc. Input determination method
US9823742B2 (en) * 2012-05-18 2017-11-21 Microsoft Technology Licensing, Llc Interaction and management of devices using gaze detection
US8542879B1 (en) * 2012-06-26 2013-09-24 Google Inc. Facial recognition
US9263044B1 (en) * 2012-06-27 2016-02-16 Amazon Technologies, Inc. Noise reduction based on mouth area movement recognition
JP2014048936A (ja) 2012-08-31 2014-03-17 Omron Corp ジェスチャ認識装置、その制御方法、表示機器、および制御プログラム
US9785228B2 (en) * 2013-02-11 2017-10-10 Microsoft Technology Licensing, Llc Detecting natural user-input engagement
US20140247208A1 (en) 2013-03-01 2014-09-04 Tobii Technology Ab Invoking and waking a computing device from stand-by mode based on gaze detection
US9304594B2 (en) * 2013-04-12 2016-04-05 Microsoft Technology Licensing, Llc Near-plane segmentation using pulsed light source
WO2014190269A1 (en) 2013-05-24 2014-11-27 Children's Hospital Medical Center System and method for assessing suicide risk of a patient based upon non-verbal characteristics of voice data
US9286029B2 (en) * 2013-06-06 2016-03-15 Honda Motor Co., Ltd. System and method for multimodal human-vehicle interaction and belief tracking
USRE49014E1 (en) 2013-06-19 2022-04-05 Panasonic Intellectual Property Corporation Of America Voice interaction method, and device
US9832452B1 (en) * 2013-08-12 2017-11-28 Amazon Technologies, Inc. Robust user detection and tracking
US10165176B2 (en) * 2013-10-31 2018-12-25 The University Of North Carolina At Chapel Hill Methods, systems, and computer readable media for leveraging user gaze in user monitoring subregion selection systems
JP6851133B2 (ja) * 2014-01-03 2021-03-31 ハーマン インターナショナル インダストリーズ インコーポレイテッド ユーザに方向付けられた個人情報アシスタント
US10203762B2 (en) * 2014-03-11 2019-02-12 Magic Leap, Inc. Methods and systems for creating virtual and augmented reality
WO2016018488A2 (en) 2014-05-09 2016-02-04 Eyefluence, Inc. Systems and methods for discerning eye signals and continuous biometric identification
US9715875B2 (en) 2014-05-30 2017-07-25 Apple Inc. Reducing the need for manual start/end-pointing and trigger phrases
US10852838B2 (en) * 2014-06-14 2020-12-01 Magic Leap, Inc. Methods and systems for creating virtual and augmented reality
US9569174B2 (en) * 2014-07-08 2017-02-14 Honeywell International Inc. Methods and systems for managing speech recognition in a multi-speech system environment
US9933833B2 (en) * 2014-07-18 2018-04-03 Apple Inc. Waking a device in response to user gestures
US20160042648A1 (en) * 2014-08-07 2016-02-11 Ravikanth V. Kothuri Emotion feedback based training and personalization system for aiding user performance in interactive presentations
US10228904B2 (en) * 2014-11-12 2019-03-12 Lenovo (Singapore) Pte. Ltd. Gaze triggered voice recognition incorporating device velocity
US9690998B2 (en) 2014-11-13 2017-06-27 Intel Corporation Facial spoofing detection in image based biometrics
JP2016131288A (ja) * 2015-01-13 2016-07-21 東芝テック株式会社 情報処理装置及びプログラム
US9791917B2 (en) 2015-03-24 2017-10-17 Intel Corporation Augmentation modification based on user interaction with augmented reality scene
JP6558064B2 (ja) 2015-05-08 2019-08-14 富士ゼロックス株式会社 認証装置および画像形成装置
JP6739907B2 (ja) * 2015-06-18 2020-08-12 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America 機器特定方法、機器特定装置及びプログラム
CN107735776B (zh) * 2015-06-30 2021-07-13 索尼公司 信息处理设备、信息处理方法和程序
US20170026764A1 (en) 2015-07-23 2017-01-26 Panasonic Automotive Systems Company Of America, Division Of Panasonic Corporation Of North America Automatic car audio volume control to aid passenger conversation
US9990921B2 (en) * 2015-12-09 2018-06-05 Lenovo (Singapore) Pte. Ltd. User focus activated voice recognition
US9451210B1 (en) 2015-12-10 2016-09-20 Google Inc. Directing communications using gaze interaction
JP2017138476A (ja) 2016-02-03 2017-08-10 ソニー株式会社 情報処理装置、情報処理方法、及びプログラム
JP2017138536A (ja) 2016-02-05 2017-08-10 株式会社Nttドコモ 音声処理装置
US20170289766A1 (en) * 2016-03-29 2017-10-05 Microsoft Technology Licensing, Llc Digital Assistant Experience based on Presence Detection
KR101904889B1 (ko) 2016-04-21 2018-10-05 주식회사 비주얼캠프 표시 장치와 이를 이용한 입력 처리 방법 및 시스템
US20170315825A1 (en) * 2016-05-02 2017-11-02 John C. Gordon Presenting Contextual Content Based On Detected User Confusion
US10046229B2 (en) * 2016-05-02 2018-08-14 Bao Tran Smart device
US20170322679A1 (en) * 2016-05-09 2017-11-09 John C. Gordon Modifying a User Interface Based Upon a User's Brain Activity and Gaze
JP6767482B2 (ja) 2016-05-23 2020-10-14 アルプスアルパイン株式会社 視線検出方法
US10044712B2 (en) * 2016-05-31 2018-08-07 Microsoft Technology Licensing, Llc Authentication based on gaze and physiological response to stimuli
EP3267289B1 (en) * 2016-07-05 2019-02-27 Ricoh Company, Ltd. Information processing apparatus, position information generation method, and information processing system
US10192551B2 (en) 2016-08-30 2019-01-29 Google Llc Using textual input and user state information to generate reply content to present in response to the textual input
WO2018061173A1 (ja) 2016-09-30 2018-04-05 株式会社オプティム Tv会議システム、tv会議方法、およびプログラム
US10467509B2 (en) * 2017-02-14 2019-11-05 Microsoft Technology Licensing, Llc Computationally-efficient human-identifying smart assistant computer
JP6828508B2 (ja) 2017-02-27 2021-02-10 富士ゼロックス株式会社 情報処理装置及び情報処理プログラム
AU2018256365A1 (en) 2017-04-19 2019-10-31 Magic Leap, Inc. Multimodal task execution and text editing for a wearable system
EP3698359A1 (en) * 2017-10-18 2020-08-26 Soapbox Labs Ltd. Methods and systems for speech detection
US11016729B2 (en) * 2017-11-08 2021-05-25 International Business Machines Corporation Sensor fusion service to enhance human computer interactions
US11221669B2 (en) * 2017-12-20 2022-01-11 Microsoft Technology Licensing, Llc Non-verbal engagement of a virtual assistant
US11423896B2 (en) 2017-12-22 2022-08-23 Telefonaktiebolaget Lm Ericsson (Publ) Gaze-initiated voice control
US10650338B2 (en) * 2017-12-27 2020-05-12 Pearson Education, Inc. Automated registration and greeting process—custom queueing (security)
US20190246036A1 (en) * 2018-02-02 2019-08-08 Futurewei Technologies, Inc. Gesture- and gaze-based visual data acquisition system
US10540015B2 (en) * 2018-03-26 2020-01-21 Chian Chiu Li Presenting location related information and implementing a task based on gaze and voice detection
US10789755B2 (en) * 2018-04-03 2020-09-29 Sri International Artificial intelligence in interactive storytelling
US10726521B2 (en) 2018-04-17 2020-07-28 Google Llc Dynamic adaptation of device interfaces in a voice-based system
US10853911B2 (en) 2018-04-17 2020-12-01 Google Llc Dynamic adaptation of images for projection, and/or of projection parameters, based on user(s) in environment
US20190327330A1 (en) * 2018-04-20 2019-10-24 Facebook, Inc. Building Customized User Profiles Based on Conversational Data
US10890969B2 (en) 2018-05-04 2021-01-12 Google Llc Invoking automated assistant function(s) based on detected gesture and gaze
WO2019212569A1 (en) 2018-05-04 2019-11-07 Google Llc Adapting automated assistant based on detected mouth movement and/or gaze
KR102574277B1 (ko) 2018-05-04 2023-09-04 구글 엘엘씨 사용자와 자동화된 어시스턴트 인터페이스 간의 거리에 따른 자동화된 어시스턴트 콘텐츠의 생성 및/또는 적용
US11688417B2 (en) 2018-05-04 2023-06-27 Google Llc Hot-word free adaptation of automated assistant function(s)
DK180639B1 (en) * 2018-06-01 2021-11-04 Apple Inc DISABILITY OF ATTENTION-ATTENTIVE VIRTUAL ASSISTANT
US10681453B1 (en) 2019-06-12 2020-06-09 Bose Corporation Automatic active noise reduction (ANR) control to improve user interaction

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016502137A (ja) * 2012-11-16 2016-01-21 エーテル シングス、 インコーポレイテッド デバイス設定、対話および制御のための統一フレームワーク、および関連する方法、デバイスおよびシステム
JP2016502721A (ja) * 2012-11-29 2016-01-28 アマゾン・テクノロジーズ、インコーポレイテッド 電子デバイスのためのジェスチャー検出管理
US20170160813A1 (en) * 2015-12-07 2017-06-08 Sri International Vpa with integrated object recognition and facial expression recognition

Also Published As

Publication number Publication date
JP2023103313A (ja) 2023-07-26
JP2021524975A (ja) 2021-09-16
US20210089125A1 (en) 2021-03-25
CN112236738A (zh) 2021-01-15
US11493992B2 (en) 2022-11-08
US10890969B2 (en) 2021-01-12
EP4307093A2 (en) 2024-01-17
EP3596585B1 (en) 2022-01-12
EP3982236A1 (en) 2022-04-13
US20230053873A1 (en) 2023-02-23
WO2019212567A1 (en) 2019-11-07
KR20210002697A (ko) 2021-01-08
EP3982236B1 (en) 2023-10-11
EP3596585A1 (en) 2020-01-22
EP4307093A3 (en) 2024-03-13
US20200341546A1 (en) 2020-10-29
JP7277569B2 (ja) 2023-05-19

Similar Documents

Publication Publication Date Title
KR102661487B1 (ko) 검출된 제스처 및 시선에 기초하여 자동화된 어시스턴트 기능 호출
JP7487276B2 (ja) 検出された口運動および/または注視に基づく自動化アシスタントの適応
KR102512446B1 (ko) 자동화된 어시스턴트 기능(들)의 핫-워드 프리 적응
US11392213B2 (en) Selective detection of visual cues for automated assistants
KR20240067114A (ko) 검출된 제스처 및 시선에 기초하여 자동화된 어시스턴트 기능 호출

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E90F Notification of reason for final refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant