KR101734450B1 - 멀티센서 음성 검출 - Google Patents

멀티센서 음성 검출 Download PDF

Info

Publication number
KR101734450B1
KR101734450B1 KR1020117013049A KR20117013049A KR101734450B1 KR 101734450 B1 KR101734450 B1 KR 101734450B1 KR 1020117013049 A KR1020117013049 A KR 1020117013049A KR 20117013049 A KR20117013049 A KR 20117013049A KR 101734450 B1 KR101734450 B1 KR 101734450B1
Authority
KR
South Korea
Prior art keywords
mobile device
user
energy threshold
voice
speech
Prior art date
Application number
KR1020117013049A
Other languages
English (en)
Other versions
KR20110100620A (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 KR20110100620A publication Critical patent/KR20110100620A/ko
Application granted granted Critical
Publication of KR101734450B1 publication Critical patent/KR101734450B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/78Detection of presence or absence of voice signals
    • 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
    • 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/0346Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor with detection of the device orientation or free movement in a 3D space, e.g. 3D mice, 6-DOF [six degrees of freedom] pointers using gyroscopes, accelerometers or tilt-sensors
    • 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
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/10Speech classification or search using distance or distortion measures between unknown speech and reference templates
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/14Speech classification or search using statistical models, e.g. Hidden Markov Models [HMMs]
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/24Speech recognition using non-acoustical features
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/26Speech to text systems
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L17/00Speaker identification or verification
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B1/00Details of transmission systems, not covered by a single one of groups H04B3/00 - H04B13/00; Details of transmission systems not characterised by the medium used for transmission
    • H04B1/38Transceivers, i.e. devices in which transmitter and receiver form a structural unit and in which at least one part is used for functions of transmitting and receiving
    • H04B1/40Circuits
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72448User interfaces specially adapted for cordless or mobile telephones with means for adapting the functionality of the device according to specific conditions
    • H04M1/72454User interfaces specially adapted for cordless or mobile telephones with means for adapting the functionality of the device according to specific conditions according to context-related or environment-related conditions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04RLOUDSPEAKERS, MICROPHONES, GRAMOPHONE PICK-UPS OR LIKE ACOUSTIC ELECTROMECHANICAL TRANSDUCERS; DEAF-AID SETS; PUBLIC ADDRESS SYSTEMS
    • H04R1/00Details of transducers, loudspeakers or microphones
    • H04R1/08Mouthpieces; Microphones; Attachments therefor
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • H04W4/025Services making use of location information using location based information parameters
    • H04W4/026Services making use of location information using location based information parameters using orientation information, e.g. compass
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; 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 OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/03Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters
    • G10L25/21Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters the extracted parameters being power information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M2250/00Details of telephonic subscriber devices
    • H04M2250/12Details of telephonic subscriber devices including a sensor for measuring a physical value, e.g. temperature or motion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M2250/00Details of telephonic subscriber devices
    • H04M2250/74Details of telephonic subscriber devices with voice recognition means

Abstract

본 발명은 멀티센서 음성 검출에 관한 컴퓨터로 구현되는 방법에 대해 개시한다. 상기 방법은 모바일 디바이스의 방향을 결정하는 단계 및 모바일 디바이스의 방향에 기초하여 모바일 디바이스의 동작 모드를 결정하는 단계를 포함한다. 상기 방법은 결정된 동작 모드에 기초하여 음성 검출이 시작하거나 끝날 때를 특정하는 음성 검출 파라미터들을 식별하는 단계 및 음성 검출 파라미터에 기초하여 모바일 디바이스의 사용자로부터 음성을 검출하는 단계를 더 포함한다.

Description

멀티센서 음성 검출{MULTISENSORY SPEECH DETECTION}
본 출원은, 2008년 11월 10일에 출원되고 발명의 명칭이 "멀티센서 음성 검출"인 미국 특허 출원 번호 61/113,061에 대한 우선권을 주장하며, 이 출원의 개시 내용은 참조로써 본 명세서에 통합된다.
본 명세서는 음성 검출(speech detection)에 관한 것이다.
컴퓨터 프로세서의 사이즈와 비용이 감소함에 따라, 모바일 컴퓨팅 디바이스들이 더 널리 보급되어 왔다. 휴대가능하도록 설계된, 많은 모바일 컴퓨팅 디바이스들은 주머니나 핸드백에 휴대하거나 들고다니기에 충분히 경량이고 소형이다. 그러나, 최신 모바일 컴퓨팅 디바이스들의 휴대성은 상당한 대가를 가지고 온다: 오늘날의 모바일 컴퓨팅 디바이스들은 대개 디바이스의 사이즈와 무게를 줄이기 위해 작은 입력 디바이스들을 포함한다. 예를 들어, 많은 최신 모바일 디바이스들은 사람들(특히, 능숙하지 않은 사람들)이 사용하기 어려운 작은 키보드들을 포함한다.
일부 모바일 컴퓨팅 디바이스들은 사용자가 음성을 이용하여 디바이스와 상호작용하도록 해줌으로써 이러한 문제를 해결한다. 예를 들어, 사용자는 전화기에 음성 명령(voice command; 예컨대, " 전화") 및 사람 이름을 간단히 말함으로써 그의 연락처 리스트에 있는 누군가에게 전화를 걸 수 있다. 그러나 일부 환경에서는 배경 잡음(background noise)으로부터 음성이 구별되기 어려울 수 있고, 사용자에게 자연스러운 방식으로 사용자 음성을 포착(capture)하는 것이 어려울 수 있다. 게다가, 적시에 음성 녹음을 시작하는 것은 어려울 수 있다. 예를 들어, 사용자가 말을 시작한 후에 녹음이 시작된다면, 결과적인 녹음은 사용자의 보이스 커맨드 모두를 포함할 수 없다. 더 나아가, 사용자는 발화(spoken)한 후 그 발화한 커맨드가 디바이스에서 인식될 수 없다는 통보를 받고 실망할 수 있다.
일반적으로, 본 명세서는 음성을 검출하는 시스템 및 기술을 설명한다. 일부 구현에 있어서, 모바일 컴퓨팅 디바이스는 디바이스의 방향 변화(예컨대, 사용자로부터의 거리나 근접성 및/또는 각도)에 기초하여 사용자가 디바이스에 말을 하고 있는지(또는 말을 하려고 하는지) 여부를 결정할 수 있다. 예를 들어, 디바이스를 사용자의 얼굴 앞으로부터 디바이스가 사용자 귀에 있는 보통의 말하기 위치로 가져가는 것과 같이, 사용자가 디바이스로 특정 제스처를 하고 있는지 여부를 결정하기 위해 하나 이상의 센서들을 사용할 수 있다. 제스처가 검출되면, 디바이스는 사용자가 말하기를 시작할 수 있음을 가리키기 위하여 소리를 내고, 오디오 레코딩이 개시될 수 있다. 디바이스를 사용자 귀로부터 멀리 이동시키는 제2 제스처는 레코딩을 중단하기 위한 트리거로서 사용될 수 있다.
게다가, 디바이스는 그 디바이스와 상호작용하는 모드에 부합하는 특정 "포즈"에 있는지 여부를 결정할 수 있다. 디바이스가 이미 정의된 포즈에 놓여 있을 때, 디바이스는 사운드 레코딩을 시작할 수 있다. 디바이스가 그 포즈에서 벗어나면, 사운드 레코딩이 중단될 수 있다. 일부 경우에, 청각적, 촉각적, 또는 시각적 피드백(또는 셋의 결합)이 디바이스가 레코딩을 시작하거나 중단함을 표시하기 위해 주어질 수 있다.
일 구현에 있어, 멀티센서 음성 검출에 대한 컴퓨터로 구현되는 방법이 개시된다. 방법은 프로세서를 이용하여 모바일 디바이스의 방향을 결정하는 단계 및 상기 프로세서를 이용하여 검출된 모바일 디바이스의 방향을 기초로 상기 모바일 디바이스의 동작 모드를 결정하는 단계를 포함한다. 그 방법은 상기 결정된 동작 모드에 기초하여 음성 검출이 시작하거나 끝나는 때를 특정하는 음성 검출 파라미터들을 식별하는 단계; 및 상기 음성 검출 파라미터들에 기초하여 상기 모바일 디바이스의 사용자로부터 음성을 검출하는 단계를 더 포함한다.
일부 측면에 있어, 상기 모바일 디바이스의 방향을 결정하는 단계는 상기 모바일 디바이스의 각도(angle)를 검출하는 단계를 더 포함한다. 상기 모바일 디바이스의 방향을 결정하는 단계는 상기 모바일 디바이스의 사용자에 대한 모바일 디바이스의 근접성(proximity)을 검출하는 단계를 더 포함한다. 상기 모바일 디바이스의 동작 모드를 결정하는 단계는 상기 모바일 디바이스의 움직임을 식별하기 위해 베이지안 네트워크(Bayesian network)를 이용하는 단계를 더 포함한다.
또 다른 구현에 있어서, 멀티센서 음성 검출 시스템이 개시된다. 시스템은 모바일 디바이스의 방향을 검출하는 적어도 하나의 센서를 구비한 하나 이상의 컴퓨터들을 포함할 수 있다. 시스템은 상기 모바일 디바이스의 검출된 방향에 기초하여 상기 모바일 디바이스의 포즈를 식별하는 포즈 식별자를 더 포함할 수 있다. 시스템은 음성 검출이 시작하거나 끝났을 때를 특정하는 선택된 음성 검출 파라미터들을 식별하는 음성 엔드포인터(speech endpointer)를 포함할 수 있다.
임의의 측면에 있어, 시스템은 가속도계를 포함할 수 있다. 또한 시스템은 근접 센서를 포함할 수 있다. 게다가, 시스템은 모바일 디바이스의 움직임들을 분류하는 제스처 분류기도 포함할 수 있다.
여기 설명된 시스템 및 기술들은 하나 이상의 후술하는 장점들을 제공할 수 있다. 첫째, 시스템에 의해 사용자는 자연스러운 방식으로 모바일 디바이스와 상호작용할 수 있다. 둘째, 레코드된 오디오는 높은 신호-대-잡음 비를 가질 수 있다. 셋째, 시스템은 음성을 잘림없이 레코드할 수 있다. 넷째, 시스템은 사용자가 말을 시작하기 전에 오디오 신호 품질과 관련된 피드백을 제공할 수 있다. 멀티센서 음성 검출 특징의 하나 이상의 구현들에 대한 상세한 설명은 첨부된 도면 및 이하 설명에서 개시된다. 멀티센서 음성 검출 특징의 다른 특징 및 장점들은 상세한 설명 및 도면들로부터, 및 청구항들로부터 나타날 것이다.
도 1은 멀티센서 음성 검출에 관한 예시의 개념도이다.
도 2는 멀티센서 음성 검출 시스템의 예시적 블록도이다.
도 3은 멀티센서 음성 검출의 예시적인 프로세스를 도시한다.
도 4는 멀티센서 음성 검출의 예시적인 대안적 프로세스를 도시한다.
도 5a 및 5b는 제스처 인식(gesture recognition)을 위한 좌표 시스템을 도시한다.
도 6은 제스처 인식을 위한 예시적인 상태 머신(state machine)이다.
도 7은 제스처 인식을 위한 상태 머신의 다른 구현을 도시한다.
도 8a 및 8b는 포즈(pose) 및 음성 검출을 위한 베이즈 넷(Bayes net)을 도시한다.
도 9는 엔드포인터 상태 머신(endpointer state machine)을 도시한다.
도 10은 포즈 및 음성 검출을 위한 다이나믹 베이즈 넷을 도시한다.
도 11 및 12는 오디오 신호 품질에 대한 피드백을 제공하기 위한 예시적인 그래픽 사용자 인터페이스의 스크린샷을 도시한다.
도 13은 모드 선택에 기초한 배경 잡음에 대한 예시적인 프로세스를 도시한다.
도 14는 배경 잡음 레벨 추정 방법의 일 실시예를 도시한다.
도 15는 본 명세서에 기술된 멀티센서 음성 검출의 실시예들을 구현하는 예시적인 모바일 디바이스의 개략적 표시이다.
도 16은 도 15의 디바이스의 내부 구조를 도시하는 블록도이다.
도 17은 도 15의 디바이스에 의해 사용된 운영 체제의 예시적인 컴포넌트들을 도시하는 블록도이다.
도 18은 도 17의 운영 체제 커널에 의해 구현된 예시적인 프로세스들을 구현하는 블록도이다.
도 19는 여기 기술된 기술들을 구현하는 데 사용될 수 있는 컴퓨터 디바이스 및 모바일 컴퓨터 디바이스의 예를 도시한다.
여러 도면에 있어서 유사한 참조 부호는 유사한 요소를 가리킨다.
본 명세서는 음성을 검출하는 시스템 및 기술들을 설명한다. 일부 구현에 있어서, 모바일 디바이스는 사용자에 대한 각도뿐만 아니라 사용자로부터의 거리를 결정할 수 있다. 이러한 정보에 기초하여, 디바이스는 보이스 레코딩(voice recording)을 시작하거나 멈출 수 있다. 일 실시예에서, 사용자는 예컨대, 그의 귀 옆과 같이 사전에 결정된 포지션(position)에 디바이스를 배치할 수 있다. 디바이스는 이 포지션에 들어가 있다는 것을 검출하고 보이스 레코딩을 시작할 수 있다. 사용자가 디바이스를 이 포지션 밖으로 움직이면, 디바이스는 사용자 입력을 레코딩하는 것을 멈출 수 있다. 레코드된 음성은 디바이스상에서 동작하거나 외부 디바이스상에서 동작하는 어플리케이션에 입력으로서 사용될 수 있다.
도 1은 멀티센서 음성 검출에 관한 개념도(100)이다. 다이어그램(100)은 모바일 디바이스(110)를 들고 있는 사용자(105)를 묘사한다. 모바일 디바이스(110)는 셀룰러 전화, PDA, 랩탑(laptop) 또는 다른 적절한 휴대용 컴퓨팅 디바이스일 수 있다. 도 1에 도시된 일 실시예에서, 사용자(105)는 모바일 디바이스(110)상에서 동작하는 어플리케이션과 상호작용하기 원할 수 있다. 예를 들어, 사용자는 구글 맵스(GOOGLE MAPS)와 같은 웹-기반 어플리케이션을 이용하여 사업체 주소를 검색하길 원할 수 있다. 일반적으로, 사용자(105)는 검색을 수행하기 위해서 적절한 웹사이트상의 검색 박스에 사업체의 이름을 타이핑하기 위해 모바일 디바이스(110)를 사용할 것이다. 그러나 사용자(105)는 필수 정보를 웹사이트의 검색 박스에 타이핑하기 위해 디바이스(110)를 사용하는 것을 원치 않거나 사용할 수 없을 수 있다.
도 1에 도시된 멀티센서 음성 검출의 일 실시예에서, 사용자(105)는 자연스러운 동작 포지션에 모바일 디바이스(110)를 놓고 검색 용어를 말함으로써 간단히 검색을 수행할 수 있다. 예를 들어, 일부 구현에 있어서, 디바이스(110)는 그 디바이스(110)의 방향을 식별함으로써 음성을 레코딩하는 것을 시작하거나 끝낼 수 있다. 레코딩된 음성(또는 레코딩된 음성에 상응하는 텍스트)은 선택된 검색 어플리케이션에 입력으로서 제공될 수 있다.
도 1의 "A", "B" 및 "C"라는 글자는 멀티센서 음성 검출에 관한 실시예에서 다른 상태들을 나타낸다. 상태 A에서, 사용자(105)는 비-동작 포지션으로 디바이스(110)를 들고 있다; 즉, 사전에 결정된 각도들의 집합 외에 있거나 사용자(105)로부터 너무 먼 포지션, 또는 일부 경우에 따라서는 둘 다. 예를 들어, 사용 중에, 사용자(105)는 도 1에 도시된 것처럼 자신의 옆에 디바이스(110)를 들고 있을 수 있고, 또는 주머니나 가방에 디바이스를 둘 수 있다. 디바이스(110)가 그러한 방향을 갖는다면, 디바이스(110)는 아마도 사용되지 않고 있고, 사용자(105)가 모바일 디바이스(110)에 말하고 있을 가능성은 낮다. 따라서, 디바이스(110)는 비-레코딩(non-recording) 모드에 놓일 수 있다.
사용자(105)가 디바이스(110)를 사용하길 원할 때, 사용자(105)는 동작 모드/포지션에 디바이스(110)를 놓을 수 있다. 다이어그램(100)에 도시된 실시예에서, 디바이스(110)는 포즈로서 언급된, 선택된 동작 포지션들에 놓이는 때를 결정할 수 있다. 상태 B는 여러 가지 예시적인 포즈들에 있는 모바일 디바이스(110)를 도시한다. 예를 들어, 상태 B의 가장 왼쪽 그림은 "전화 포즈"(115)를 도시한다. 일부 구현에 있어서, 전화 포즈는 전화기에 말하기 위해 통상 사용되는 포지션으로 사용자가 모바일 디바이스(110)를 들고 있는 것에 부합할 수 있다. 예를 들어, 도 1에 도시된 것처럼, 디바이스(110)는 사용자(105)의 머리 옆에 유지되어, 디바이스(110)의 스피커가 사용자(105)의 귀 부근에 유지될 수 있다. 이러한 방식으로 디바이스(110)를 유지함으로써 사용자(105)는 더 쉽게 디바이스(110)에서 나오는 소리를 듣고, 디바이스(110)에 연결된 마이크로폰에 말할 수 있다.
상태 B에 도시된 중간 그림은 "PDA 포즈"(120)로 디바이스(110)를 들고 있는 사용자(105)를 묘사한다. 예를 들어, 도 1에 도시된 것처럼, PDA 포즈(120)는 사용자(105)가 모바일 디바이스(110)를 보고 상호 작용할 수 있도록, 사용자(105)가 모바일 디바이스(110)를 거의 팔 길이만큼 떨어진 곳에 위치시켜 들고 있는 것에 부합할 수 있다. 예를 들어, 이러한 포지션에서, 사용자(105)는 디바이스(110)의 키패드에 있는 버튼들 또는 디바이스(110)의 스크린에 디스플레이된 가상 키보드를 누를 수 있다. 일부 경우들에 있어서, 사용자(105)는 또한 이러한 포지션에서 보이스 커맨드들을 디바이스(110)에 입력할 수 있다.
마지막으로, 상태 B에 도시된 가장 오른쪽 그림은 "워키-토키(Walkie-talkie) 포즈"(125)를 도시한다. 일부 경우에, 워키-토키 포즈(125)는 디바이스(110)의 마이크로폰이 사용자(105)의 입 가까이에 있도록 자신의 얼굴에 모바일 디바이스(110)를 들고 있는 사용자(105)를 포함한다. 이러한 포즈는 사용자(105)가 디바이스(110)의 마이크로폰에 직접 말할 수 있게 하면서, 또한 디바이스(110)에 연결된 스피커폰에서 나오는 소리를 들을 수 있도록 해준다.
도 1에 3개의 포즈들이 도시되었지만 다른 포즈들도 사용될 수 있다. 예를 들어, 대안적인 구현에 있어서, 포즈는 모바일 디바이스가 열렸는지 닫혔는지 여부를 고려할 수 있다. 예를 들어, 도 1에 도시된 모바일 디바이스(110)는 "플립 전화기(flip phone)"일 수 있다; 즉, 힌지(hinge)을 이용해서 함께 또는 따로 접을 수 있는 둘 이상의 부분들(일반적으로 덮개와 본체)을 포함하는 형태 요소를 가진 전화기이다. 이러한 디바이스들 중 일부에 있어서, 포즈는 전화의 방향과 더불어(또는 대신하여), 전화가 열리거나 닫혔는지를 포함할 수 있다. 예를 들어, 모바일 디바이스(110)가 플립 전화기라면, 도 1에 도시된 전화 포즈(115)는 열려 있는 디바이스를 포함할 수 있다. 현재 예시는 플립 전화기를 설명하고 있지만, 다른 타입 또는 형태 요소들(예컨대, 회전키거나(swivels) 또는 슬라이드로(slides) 여는 전화기)이 사용될 수 있다.
디바이스(110)가 사전에 결정된 포즈로 있는 것이 식별될 때, 디바이스(110)는 사용자(115)로부터 음성과 같은 청각적 정보의 레코딩을 시작할 수 있다. 예를 들어, 상태 C는 디바이스(110)가 전화 포즈로 있는 동안 디바이스에 말하는 사용자를 묘사한다. 일부 구현에 있어서, 디바이스(110)는 디바이스(110)가 전화 포즈(115)로 검출된 때 청각적 정보의 레코딩을 시작할 수 있기 때문에, 디바이스(110)는 사용자(105)가 말을 시작하기 바로 전(또는 시작할 때)에 레코딩을 시작할 수 있다. 따라서, 디바이스(110)는 사용자 음성의 시작을 포착할 수 있다.
디바이스(110)가 포즈를 그만둘 때, 디바이스(110)는 레코딩을 멈출 수 있다. 예를 들어, 도 1에 도시된 예에서, 사용자(105)가 디바이스(110)에 말하는 것을 끝낸 후, 그는 예컨대, 상태 A에 도시된 것처럼 자신의 옆에 디바이스(110)를 둠으로써 디바이스(110)를 비-동작 포지션으로 되돌려 놓을 수 있다. 디바이스(110)가 포즈(현재 예에서 전화 포즈(115))를 그만둘 때, 디바이스(110)는 레코딩을 멈출 수 있다. 예를 들어, 디바이스(110)가 각도들의 선택된 집합 밖이고 및/또는 사용자(105)로부터 너무 멀다면, 디바이스(110)는 그것의 레코딩 동작을 중단시킬 수 있다. 일부 경우에, 이 시점까지 디바이스(110)에 의해 레코드된 정보는 디바이스상에서 또는 원격 디바이스상에서 동작하는 어플리케이션에 제공될 수 있다. 예를 들어, 상기한 바와 같이, 청각적 정보는 텍스트로 변환될 수 있고, 디바이스(110)에 의해 실행되고 있는 검색 어플리케이션에 공급될 수 있다.
도 2는 예시적인 멀티센서 음성 검출 시스템의 블록도(200)이다. 블록도(200)는 실시예에 따른 모바일 디바이스(205)를 도시한다. 디바이스(205)는 일부 경우에 있어서 사용자에게 결과를 디스플레이하는 것 및 사용자 입력을 수용하는 것 둘 다에 사용될 수 있는 스크린(207)을 포함한다. 예를 들어, 스크린(207)은 문자숫자의 글자들을 입력하데 사용될 수 있는 키패드를 디스플레이할 수 있는 터치 스크린일 수 있다. 또한 디바이스(205)는 정보를 디바이스에 입력하는데 사용될 수 있는 물리적 키패드(209)를 포함할 수 있다. 일부 경우에, 디바이스(205)는 디바이스(205)상에서 동작하는 음성 어플리케이션을 시작하고 멈추는, 키패드(209)상의 버튼(도시되지 않음) 또는 전화의 다른 부분(예컨대, 전화기의 옆에)을 포함할 수 있다. 마지막으로, 디바이스(205)는 일부 경우에 있어서, 특히 디바이스(205)상의 그래픽 사용자 인터페이스에 디스플레이된 포인팅 요소를 조작하는데 사용될 수 있는 트랙볼(211)을 포함할 수 있다.
디바이스(205)는 특히 음성 준비(speech readiness)를 검출하는데 사용될 수 있는 하나 이상의 센서들을 포함할 수 있다. 예를 들어, 디바이스(205)는 가속도계(213)를 포함할 수 있다. 가속도계(213)는 디바이스의 각도를 결정하기 위해 사용될 수 있다. 예를 들어, 가속도계(213)는 디바이스(205)의 각도를 결정할 수 있고, 다른 디바이스(205) 컴포넌트에 이러한 정보를 공급할 수 있다.
가속도계(213)와 더불어, 디바이스(205)는 또한 근접 센서(proximity sensor; 215)를 포함할 수 있다. 일부 경우에 있어서, 근접 센서(215)는 디바이스(205)가 사용자로부터 얼마나 떨어져 있는지를 결정하는데 사용될 수 있다. 예를 들어, 근접 센서(215)는 개체로의 거리를 계산하기 위해 적외선 광의 빔을 방출하고 반사된 신호를 사용하는 적외선 센서를 포함할 수 있다. 대안적인 구현에 있어서, 다른 타입의 센서들이 사용될 수 있다. 예를 들어, 센서는 여러 종류의 센서들 중에서도 용량성, 광전자식 또는 유도성일 수 있다.
또한 디바이스는 카메라(219)를 포함할 수 있다. 카메라(219)로부터의 신호들은 디바이스(205)의 포즈에 관한 추가적인 정보를 유도하도록 처리될 수 있다. 예를 들어, 카메라(219)가 사용자 쪽을 향하면, 카메라(219)는 사용자의 근접을 결정할 수 있다. 일부 경우에, 카메라(219)는 수평, 차량, 보행 등과 같이 알려진 각도를 갖는 특징들을 이용하여 사용자의 각도를 결정할 수 있다. 예를 들어, 카메라(219)가 사용자를 포함하지 않는 일반적인 장면을 향하고 있다면, 카메라는 절대 좌표 시스템으로 그 장면에서의 카메라 방향을 결정할 것이다. 그러나, 카메라(219)가 사용자를 볼 수 있으면, 카메라(219)는 사용자에 관한 카메라의 방향을 결정할 수 있다. 카메라(219)가 일반적인 장면 및 사용자 둘 다를 볼 수 있으면, 카메라(219)는 사용자 및 장면에 관하여 그 방향 둘 다를 결정할 수 있고, 또한 그 장면에서 사용자가 어디에 있는지를 결정할 수 있다.
또한 디바이스는 메모리(231)에 저장된 명령들을 수행하는 중앙 처리 장치(233)를 포함할 수 있다. 프로세서(233)는 다른 디바이스 컴포넌트들 사이의 상호작용 및 입력/출력 인터페이스(235)를 통한 통신을 조정(coordinate)할 책임이 있는 다수의 프로세서들을 포함할 수 있다. 디바이스(205)는 인터넷(240)을 통해 원격 컴퓨팅 디바이스(245)와 통신할 수 있다. 제스처 분류기(225; gesture classifier), 포즈 식별자(227), 음성 검출기(221), 화자(speaker) 식별자(223) 및 음성 엔드포인터(229)에 의해 수행되는 처리의 일부 또는 전부는 원격 컴퓨팅 디바이스(245)에 의해 수행될 수 있다.
마이크로폰(217)은 청각적 입력을 포착할 수 있고, 음성 검출기(221) 및 화자 식별자(223) 모두에 입력을 제공할 수 있다. 일부 구현에 있어, 음성 검출기(221)는 사용자가 디바이스(205)에 말하고 있는지를 결정할 수 있다. 예를 들어, 음성 검출기(221)는 마이크로폰(217)에 의해 포착된 청각적 입력이 문턱값 이상인지를 결정할 수 있다. 만약 입력이 문턱값 이상이라면, 음성 검출기(221)는 음성이 검출되었음을 표시하는 값을 다른 디바이스(205) 컴포넌트에 전달할 수 있다. 일부 경우에, 디바이스(205)는 장래의 이용을 위해 메모리(231; 예컨대, RAM 또는 하드 드라이브)에 이 값을 저장할 수 있다.
일부 경우에, 음성 검출기(221)는 사용자가 말을 하고 있을 때를 결정할 수 있다. 예를 들어, 음성 검출기(221)는 포착된 오디오 신호들이 음성을 포함하는지 또는 전반적으로 배경 잡음으로 구성되는지를 결정할 수 있다. 일부 경우에, 음성 검출기(221)는 처음에 검출된 오디오가 잡음이라고 가정할 수 있다. 처음 검출된 오디오 신호 이상의 특정 크기(예컨대, 6dB)를 갖는 오디오 신호는 음성으로 고려될 수 있다.
디바이스가 카메라(219)를 포함하면, 카메라(219)는 또한 사용자가 말을 하고 있는지를 결정하는데 사용될 수 있는 시각적 신호들을 음성 검출기(220)에 제공할 수 있다. 예를 들어, 사용자의 입술이 카메라에 가시적(visible)이라면, 입술의 움직임은, 그 움직임과 음향 신호가 상관될 수 있기 때문에, 음성 활동의 표시일 수 있다. 일부 경우에서, 사용자 입술의 움직임 부족은 검출된 음향 에너지가 다른 화자 또는 사운드 소스로부터 왔다는 증거가 될 수 있다.
일부 경우에, 화자 식별자(223)는 디바이스(205)로 말하고 있는 사람의 신원을 결정할 수 있다. 예를 들어, 디바이스(205)는 한 명 이상의 사용자들의 청각적 프로필(예컨대, 음성 신호들)을 저장할 수 있다. 마이크로폰(217)에 의해 공급된 청각적 정보는 그 프로필에 비교될 수 있다; 매치(match)는 관련된 사용자가 디바이스(205)에 말을 하고 있음을 표시할 수 있다. 매치를 가리키는 데이터는 다른 디바이스(205) 컴포넌트에 제공되거나, 메모리에 저장되거나 또는 둘 다일 수 있다. 일부 구현에 있어서, 화자의 식별은 음성이 배경 잡음이 아니지만 레코드될 예정임을 확인하는데 사용될 수 있다.
화자 식별자(223)는 또한 화자를 식별하기 위해 카메라(219)에 의해 얻은 바이오메트릭(biometric) 정보를 이용할 수 있다. 예를 들어, 카메라에 의해 포착된 바이오메트릭 정보는 얼굴 생김새, 입술 움직임, 귀 모양, 또는 장문(handprint)을 포함할 수 있다(그러나 한정되지 않음). 카메라는 이러한 정보를 화자 식별자(223)에 공급할 수 있다. 화자 식별자(223)는 화자의 신원을 추정하기 위해 카메라(219)에 의해 제공된 정보의 일부 또는 전부를 음향 정보와 조합하여(또는 없이) 사용할 수 있다.
또한 디바이스(205)는 제스처 분류기(225)를 포함할 수 있다. 제스처 분류기(225)는 디바이스(205)의 움직임을 분류하기 위해 사용될 수 있다. 일부 경우에, 가속도계(213)는 제스처 분류기(225)가 다른 분류들로 분리할 수 있는 움직임 정보를 제스처 분류기(225)에 공급할 수 있다. 예를 들어, 제스처 분류기(225)는 "흔들기(shake)" 및 "가볍게 치기(flip)"와 같은 그룹들로 전화기의 움직임을 분류할 수 있다. 게다가, 제스처 분류기(225)는 "입으로", "입으로부터", "사용자와 마주보기", "귀로" 및 "귀로부터"와 같은 제스처들과 관련된 움직임도 분류할 수 있다.
디바이스(205)에 포함된 포즈 식별자(227)는 디바이스(205)의 다른 포즈들을 추론/검출할 수 있다. 포즈 식별자(227)는 포즈들을 식별하기 위해 근접 센서(215) 및 제스처 분류기(225)에 의해 제공된 데이터를 사용할 수 있다. 예를 들어, 포즈 식별자(227)는 근접 센서(215)에 의해 제공된 정보를 이용하여 개체(예컨대 사람)로부터 디바이스(205)가 얼마나 떨어져 있는지를 결정할 수 있다. 포즈 식별자(227)는 이러한 정보를 제스처 분류기(225)가 제공한 제스처 분류와 결합하여 사용하여, 디바이스(205)가 어떤 포즈로(만약 있다면) 놓여 있는지를 결정할 수 있다. 일 예로서, 제스처 분류기(225)가 "귀로(to ear)" 분류를 포즈 식별자(227)로 전송하고, 근접 센서(215)는 디바이스가 사용자 가까이에 유지되고 있음을 가리키면, 포즈 식별자(227)는 디바이스가 전화 포즈에 있음을 결정할 수 있다. 또한 카메라(219)는 움직임에 관한 증거를 제공하는데 사용될 수 있다. 예를 들어, 카메라(219)에 의해 검출된 광학적 흐름(optical flow)은 움직임의 증거를 제공할 수 있다.
또한 디바이스는 음성 엔드포인터(229)를 포함할 수 있다. 일부 구현에 있어서, 음성 엔드포인터(229)는 무엇보다도 사용자가 디바이스에 말을 하고 있는지, 디바이스에 말하는 것을 시작하는지, 또는 디바이스에 말하는 것을 멈추는지를 결정하기 위해 포즈 식별자(227), 화자 식별자(223), 및 음성 검출기(221)로부터의 출력들을 조합할 수 있다. 예를 들어, 포즈 식별자(227)는 디바이스가 동작 포지션에 있지 않음을 표시하는 정보를 엔드포인터(229)에 전송할 수 있다. 음성 검출기(221) 및 화자 식별자화자 식별자 입력은 사용자가 현재 말을 하고 있지 않음을 표시할 수 있다. 이러한 입력들의 조합은 사용자가 말을 멈추었다는 것을 엔드포인터(229)에 표시할 수 있다.
도 3 및 4는 각각 멀티센서 음성 검출을 위한 예시적인 프로세스들(300 및 400)의 플로우차트이다. 프로세스(300 및 400)는 예를 들어 도 2에 도시된 시스템과 같은 시스템에 의해 수행될 수 있고, 프리젠테이션의 명료화를 위해 후술하는 설명은 이 시스템을 프로세스들을 설명하기 위한 예시의 기초로서 사용한다. 그러나 다른 시스템 또는 시스템들의 조합 또한 프로세스(300 및 400)를 수행하는데 사용될 수 있다.
도 3은 멀티센서 음성 검출의 예시적인 프로세스(300)를 도시한다. 프로세스(300)는 레코드 버튼이 눌러져 있는지 여부를 결정하는 단계 305에서 시작한다. 예를 들어, 상기 기재된 것처럼, 모바일 디바이스(205)는 사용자가 누름으로써 음성 레코딩을 시작하거나 끝내도록 해주는 버튼을 포함할 수 있다. 만약 단계 305에서 버튼 누름이 검출되면, 프로세스(300)는 음성 레코딩을 시작하고 레코딩이 시작되었음을 확인하는 입력 시작(SOI; start of input)을 단계 315에서 디스플레이할 수 있다. 예를 들어, 디바이스(205)는 버튼이 눌러질 때 메모리에 저장된 레코딩 프로그램을 실행할 수 있다. 게다가, 디바이스(205)는 레코딩이 시작되었다는 표시를 하는 메시지를 스크린에 디스플레이할 수 있다. 일부 구현에 있어서 디바이스(205)는 온-스크린 확인의 디스플레이에 더하여, 또는 대신으로 소리(tone)를 울리거나 재생할 수 있다.
그러나 레코드 버튼 누름이 단계 305에서 검출되지 않으면, 프로세스(300)는 레코드 제스처가 검출되었는지 여부를 결정하는 단계 310으로 진행할 수 있다. 예를 들어, 사용자는 PDA 포즈로 디바이스(205)를 들고 있을 수 있다. 사용자가 디바이스(205)를 그의 입으로 가져 가면, 제스처 분류기(225)는 이 동작을 "입으로" 제스처로써 분류할 수 있고, 디바이스가 레코딩 어플리케이션을 실행하도록 해준다. 일부 구현에 있어서, 전화기를 흔들거나 살짝 치는 것과 같은 다른 제스처들도 레코드 제스처일 수 있다. 응답으로, 프로세스(300)는, 레코딩 프로세스가 시작되고 레코딩 확인이 상기 설명된 것처럼 디스플레이되는 단계 315로 진행할 수 있다. 그렇지 않으면, 프로세스(300)는 레코드 버튼이 눌러졌는지를 결정하는 단계 305로 돌아갈 수 있다.
프로세스(300)는 단계 320에서 설정(settings)을 엔드포인터에 로드할 수 있다. 일부 경우에, 디바이스(205)는 음성을 검출하는데 사용될 수 있는 음성 에너지 문턱값(speech energy threshold)과 같은 포즈-특정 음성 검출 파라미터들을 로드할 수 있다. 예를 들어, 일부 경우에, 포즈에 대한 음성 에너지 문턱값은 검출된 청각적 정보에 비교될 수 있다. 만약 청각적 정보가 상기 음성 에너지 문턱값보다 더 크다면, 이것은 사용자가 디바이스에 말하고 있음을 표시할 수 있다. 일부 구현에 있어, 포즈들은 디바이스가 특정 포즈로 있을 때, 디바이스(205) 및 사용자 간의 거리에 기초하여 관련된 음성 에너지 문턱값을 가질 수 있다. 예를 들어, 디바이스(205)는 PDA 포즈에서보다 전화 포즈에서 사용자에게 더 가까이 있을 수 있다. 따라서, 사용자의 입은 PDA 포즈에서 디바이스(205)로부터 더 멀리 떨어져 있기 때문에, 음성 에너지 문턱값은 전화 포즈보다 PDA 포즈에서 더 낮을 수 있다.
단계 325에서, 엔드포인터가 동작할 수 있다. 예를 들어, 디바이스(205)는 엔드포인터(229)를 실행할 수 있다. 응답으로, 엔드포인더(229)는 단계 320에서 로드된 파라미터들을 사용하여, 사용자가 디바이스에 말을 하고 있는지 여부, 및 음성의 시작과 끝과 같은 관련 이벤트들을 결정할 수 있다. 예를 들어, 엔드포인터(229)는 사용자가 말을 하고 있는지 여부 및 만약 그렇다면 음성이 시작되거나 끝났는지 여부를 결정하기 위해, 포즈 식별자(227), 음성 검출기(221), 및 화자 식별자(223)로부터의 입력들과 함께 음성 에너지 문턱값을 사용할 수 있다.
단계 330에서, 음성 종료(end-of-speech) 입력이 검출될 수 있다. 상기 언급한 바와 같이, 엔드포인터(229)는 다른 디바이스 컴포넌트들로부터의 입력들과 음성 에너지 문턱값을 이용하여 음성이 끝났는지 여부를 결정할 수 있다. 음성 입력의 종료가 검출되면, 레코딩이 중단될 수 있고, 레코딩이 끝났음을 표시하는 입력 종료(EOI; end of input) 디스플레이가 단계 335에서 제공될 수 있다. 예를 들어, 메시지는 디바이스(205)의 스크린상에 나타날 수 있거나, 또는 소리가 재생될 수 있다. 일부 경우에, 촉각적 피드백(예컨대, 진동)이 제공될 수 있다.
도 4는 멀티센서 음성 검출의 예시적인 대안적 프로세스(400)를 도시한다. 프로세스는 포즈가 포즈 검출기로부터 판독되는 단계 405에서 시작한다. 예를 들어, 포즈 식별자(227)가 디바이스의 현재 포즈를 제공하거나, 또는 현재 포즈의 표시가 메모리(231)로부터 판독될 수 있다.
단계 410에서, 디바이스(205)가 전화 포즈로 있는지 여부가 결정된다. 예를 들어, 포즈 식별자(227)는 디바이스가 전화 포즈로 있는지 여부를 결정하기 위해 근접 센서(215) 및 제스처 분류기(225)로부터의 입력들을 사용할 수 있다. 일부 경우에, 디바이스의 포즈는 디바이스가 사용자로부터 얼마나 떨어져 있는지, 디바이스가 사전에 결정된 각도들의 집합 내에 있는지 여부를 결정함으로써 식별될 수 있다. 만약 디바이스(205)가 전화 포즈로 있다면, 단계 415에서 레코딩이 시작되었다고 확인하는 소리가 재생될 수 있다. 일부 구현에 있어, 다른 형태의 피드백(예컨대, 진동 또는 메시지의 디스플레이)이 오디오 확인과 함께 또는 대신으로 제공될 수 있다.
단계 420에서, 전화 포즈 설정이 엔드포인터에 로드될 수 있다. 예를 들어, 전화 포즈와 관련된 음성 에너지 문턱값은 메모리(231)로부터 엔드포인터(229)에 판독될 수 있다.
유사하게, 단계 425에서, 디바이스가 워키-토키 포즈로 있는지 여부가 결정된다. 상기 기재한 바와 같이, 포즈 식별자(227)는 디바이스의 포즈를 결정하기 위해 제스처 분류기(225) 및 근접 센서(215)로부터의 입력들을 사용할 수 있다. 디바이스가 워키-토키 포즈로 있다면, 단계 430에서 레코딩이 시작되었다는 확인이 스크린상에(일부 경우에는, 확인도 촉각적 또는 청각적일 수 있음) 디스플레이될 수 있고, 단계 435에서 워키-토키 포즈 설정이 엔드포인터에 로드될 수 있다.
단계 440에서, 디바이스가 PDA 포즈로 있는지가 결정된다. 일부 경우에, 디바이스의 포즈는 상기 단계 410 및 425에 관해 상기 설명된 것처럼 결정될 수 있다. 디바이스가 PDA 포즈로 있지 않다면, 방법은 단계 405로 돌아갈 수 있다. 디바이스가 PDA 포즈로 있으면, 단계 445에서 레코드 버튼이 눌러져 있는지 여부가 결정될 수 있다. 레코드 버튼이 눌려져 있지 않으면, 방법은 레코드 제스처가 검출되었는지 여부를 결정하는 단계 450으로 진행한다. 예를 들어, 상기 도 3의 단계 310과 관련하여 언급한 것처럼, 디바이스(205)는 사용자의 입 쪽으로의 디바이스(205)의 움직임을 검출할 수 있다. 일부 경우에, 디바이스(205)는 이 움직임을 레코드 제스처로서 해석할 수 있다.
단계 445에서 레코드 버튼이 눌러져 있거나 단계 450에서 레코드 제스처가 검출되었다면, 단계 455에서 레코드가 시작되었다고 확인하는 메시지가 디바이스(205)의 스크린상에 디스플레이될 수 있다. 일부 경우에, 디바이스(205)는 레코딩이 시작되었다는 것을 표시하기 위해 진동하거나 소리를 재생할 수 있다. 다음으로 단계 460에서 PDA 포즈와 관련된 설정이 엔드포인터에 로드될 수 있다. 예를 들어, 음성 에너지 문턱값이 엔드포인터(229)에 로드될 수 있다.
상기 설명한 포즈들 각각에 있어서, 적절한 포즈 설정이 엔드포인터 내로 판독된 후, 단계 465에서 엔드포인터가 동작될 수 있다. 예를 들어, 디바이스(205)와 관련된 프로세서(233)는 엔드포인터(229)에 상응하는 메모리에 저장된 명령들을 실행할 수 있다. 일단 엔드포인터(229)가 실행을 시작하면, 단계 470에서 엔드포인터(229)는 음성 종료 입력이 검출되었는지 여부를 결정할 수 있다. 예를 들어, 엔드포인터(229)는 포즈 식별자(227), 음성 검출기(221), 화자 식별자(223)로부터의 출력들 및 엔드포인터(229)에 로드된 포즈와 관련된 파라미터들을 이용하여, 음성 종료 입력이 검출되었는지 여부를 결정할 수 있다. 예를 들어, 엔드포인터(229)는 디바이스(205)가 더이상 특정된 포즈들 중 하나로 있지 않을 때를, 앞서 언급한 소스들로부터의 출력들을 이용하여 결정할 수 있다. 단계 475에서, 프로세스는 음성 레코딩이 중단되었다는 확인을 재생하거나 디스플레이할 수 있다. 예를 들어, 레코딩 종료 메시지는 디바이스(205)의 스크린상에 디스플레이되거나 소리가 재생될 수 있다. 일부 경우에는, 디바이스(205)가 진동할 수 있다.
도 5a 및 5b는 제스처 인식을 위한 예시적인 좌표 시스템(500 및 505)을 보여준다. 도 5a는 모바일 디바이스를 위한 예시적 카르테시안 좌표 시스템(500; Cartesian coordinate system)을 도시한다. 예시적 좌표 시스템(500)은 도 5a에 도시된 것처럼 X-, Y-, 및 Z- 축을 가진 3-차원 좌표 시스템일 수 있다. 일부 경우에, 가속도계(예컨대, 도 2에 도시된 가속도계(213))는 도 5a에 도시된 좌표 시스템에서 모바일 디바이스의 각도를 결정하기 위해 사용될 수 있다. 결정된 각도는 그 후에, 디바이스의 포즈를 결정하기 위해 사용될 수 있다.
예를 들어, 가속도계(213)에 의해 제공된 가속도 데이터는 예를 들어, 디지털 필터(예컨대, 무한 임펄스 응답 필터(infinite impulse response filter))를 이용함으로써 스무드(smooth)해질 수 있다. 일부 경우에, 가속도계는 10Hz의 샘플 주파수를 갖는다. 게다가, 무한 임펄스 응답 필터는 0.6의 필터링 인자를 가질 수 있다. 순간 가속도의 크기는 필터의 잔차(Residual)로부터 계산될 수 있다. 산출된 중력 벡터는 좌표 시스템의 XY 및 YZ 평면상에 투영될 수 있고, 투영된 구성요소들에 의해 대응되는 각도가 그 구성요소의 역 탄젠트(inverse tangent)를 이용하여 계산될 수 있다. 산출된 2개의 각도는 도 5b에 도시된 것처럼 새로운 평면상에 투영될 수 있고, 임계 각도 바운딩 박스들(critical angle bounding boxes; 510 및 515)은 사용자의 귀에 대한 전화기의 왼쪽과 오른쪽 위치들 주변에 정의될 수 있다. 이하 더 자세히 설명되는 것처럼, 이러한 바운딩 박스들은 특히 제스처들을 검출하는데 사용될 수 있다.
도 6은 제스처 인식을 위한 예시적 상태 머신(600)이다. 상태 머신(600)은 제스처들을 분류하기 위해 근접 정보와 함께 상기 설명한 임계 각도 바운딩 박스들을 사용할 수 있다. 도시한 상태 머신은 여러가지 이벤트들(특정 근접이 검출되거나 디바이스(205)가 임계 각도들의 집합 내에 있거나 시간이 만료됨)에 의해 클록(clock)된다. 예를 들어, 도시한 상태 머신은 상태 605에서 사전에 정의된 근접이 검출되는 것을 기다릴 수 있다. 일부 경우에, 상태 머신(600)은 디바이스의 순간 가속도가 문턱값보다 크거나 디바이스(205)가 임계 각도들의 집합에 놓일 때 근접 센서(215)를 활성화할 수 있다. 일부 경우에, 임계 각도는 도 5b에 도시된 바운딩 박스들 내에 놓인 각도들일 수 있다. 예를 들어, 가장 왼쪽 바운딩 박스(510)는 XY 평면에서 -80도 내지 -20도의 각도 및, YZ 평면에서 -40도 내지 30도 사이의 각도를 포함할 수 있다. 유사하게, 바운딩 박스(515)는 XY 평면에서 20도 내지 80도의 각도 및, YZ 평면에서 -40도 내지 30도의 각도를 포함할 수 있다.
만약 근접 센서가 객체를 디바이스(205)의 미리 설정된(preset) 거리 안에서 검출하면, 상태 머신(600)은 각도를 기다리는 상태 610으로 이행한다. 일부 경우에, 근접 센서(215)가 미리 결정된 거리 내에서 사용자를 검출하고 디바이스(205)가 임계 각도에 있다고 이미 결정되었다면(예컨대, 디바이스(205)가 임계 각도에 놓여 있었기 때문에 상태 머신이 활성화됨), 상태 머신(600)은 다음 상태(615)로 이행한다. 디바이스(205)가 미리 임계 각도에 놓여 있지 않았다면, 디바이스(205)는 미리 설정된 기간 동안 디바이스가 임계 각도에 놓이도록 기다릴 수 있다; 이러한 미리 설정된 기간에 의해 일부 가속도 잡음이 소멸될 수 있다. 일부 경우에, 미리 설정된 기간은 1초일 수 있다. 디바이스가 미리 결정된 기간 내에 임계 각도에 놓이지 않는다면, 상태 머신(600)은 상태 605로 다시 돌아가는 이행을 할 수 있다. 그러나 디바이스(205)가 미리 결정된 문턱값 내의 임계 각도들에서 검출된다면, 상태 머신은 제스처가 검출되는 상태 615로 이행한다. 일부 경우에, 제스처 분류기(225)는 검출된 제스처를 분류할 수 있다. 예를 들어, 제스처는 후술하는 카테고리들에 들어갈 수 있다: "입으로", "입으로부터", "사용자와 마주하여", "귀로" 및 "귀로부터". 일부 구현에 있어서, 다른 카테고리들이 정의될 수 있다. 디바이스(205)가 더이상 임계 각도에 있지 않은 것으로 결정되면, 상태 머신(600)은 제스처가 만료되는 상태 620으로 이행할 수 있다. 일부 구현에 있어서, 최소 디바운스 기간(minimum debounce period)은 이러한 이행이 각도 바운스로 인해 일어나는 것을 막을 수 있다. 예를 들어, 최소 디바운스 기간은 1.7초일 수 있다.
도 7은 제스처 인식을 위한 상태 머신(700)의 다른 구현을 도시한다. 도 7은 제스처들의 변동에 응답하는 상태 머신(700)의 실시예를 도시하며, 제스처들은 검출된 가속도에 따라 변화한다(예컨대, 느린, 보통 및 빠른 제스처). 예시된 상태 머신(700)은 디바이스(205)가 이미 표면에 근접해 있어서 근접 센서(215)가 활성화되면 근접 상황을 검출하지 않는 근접 센서(215)를 포함하거나, 또는 근접 검출기의 활성화가 스크린을 끄는 것(switching off)과 같은 다른 동작들을 트리거할 수 있는 구현들에 있어서 유용할 수 있다. 일부 경우에, 이러한 문제들을 해결하기 위해, 근접 센서(215)는 순간 가속도가 문턱값을 초과할 때 활성화될 수 있다. 일부 경우에, 근접 센서(215)가 모든 축들에 걸쳐 순간 가속도로 가로지를 때 근접 센서(215)가 활성화될 수 있다.
상태 머신(700)은 초기 상태(705)에서 시작한다. 문턱값 이상의 가속도가 검출되면, 머신(700)은 검출된 가속도 이후의 근접 검출을 기다리는 상태 710으로 이행한다. 일부 구현에 있어서, 가속도 문턱값은 0.6g가 될 수 있다. 일부 구현에 있어, 기다림은 0.5초일 수 있다. 디바이스(205)가 사용자와 같은 객체에 근접하다면, 상태 머신(700)은 디바이스가 임계 각도에 놓이도록 미리 결정된 시간을 기다리는 상태 715로 이행한다. 일부 경우에, 기다림은 1초가 될 수 있다. 디바이스가 지정된 시간 내에 임계 각도들에 놓이지 않는다면, 상태 머신은 초기 상태 705로 돌아간다. 그러나 디바이스가 임계 각도들에 놓이면, 상태 머신(700)은 상기 설명된 방식으로 제스처를 검출하는 상태 720으로 이행한다. 디바이스가 더 이상 임계 각도에 있지 않을 때, 상태 머신(700)은 제스처가 만료되는 상태 725로 이행한다. 이러한 이행은 빠른 제스처에 부합할 수 있다.
일부 경우에, 가속도가 검출된 후, 디바이스(205)는 임계 각도에 놓일 수 있고, 그러한 경우 상태 머신(700)은 근접 검출을 기다리는 상태 730으로 이행된다. 미리 설정된 시간 내에 근접 검출이 없다면, 상태 머신(700)은 근접을 기다리는 시간이 만료되는 상태 735로 이행될 수 있고, 그 다음 초기 상태 705로 돌아갈 수 있다. 일부 경우에는, 미리 설정된 시간이 1초일 수 있다. 그러나 근접 검출이 미리 설정된 시간이 만료되기 전에 이루어진다면, 상태 머신(700)은 상기 설명한 것처럼 상태 720 및 725로 이행할 수 있다. 일부 경우에, 이러한 일련의 이행들은 중간-속도 제스처에 부합할 수 있다.
상태 머신(700)이 초기 상태 705에 있고 디바이스(205)가 임계 각도에 놓여있다면, 상태 머신(700)은 상태 머신(700)이 근접 검출을 기다리는 상태 730으로 이행할 수 있다. 근접 검출이 시간 초과 기간 전에 일어나면, 상태 머신(700)은 제스처를 검출하는 상태 720으로 진행한다. 디바이스(205)가 임계 각도로부터 벗어나면, 상태 머신(700)은 제스처가 만료되는 상태 725로 이행한다. 이러한 일련의 이행들은 상대적으로 느린 속도로 만들어진 제스처에 부합할 수 있다.
도 8a 및 8b는 포즈와 음성 검출에 대한 베이즈 넷을 도시한다. 일부 경우에 베이지안 네트워크(Bayesian network; 800)는 제스처들을 인식하는데 사용될 수 있다. 근접 센서(215), 가속도계(213) 및 음성 검출기(221)로부터의 출력들은 도 8a에 도시된 것처럼 베이지안 네트워크 내로 결합될 수 있다. 도 8a에 도시된 베이지안 네트워크(800)는 이하의 분포로 나타낼 수 있다:
Figure 112011042763592-pct00001
식 (1)에서, x_aud는 오디오 특징 벡터를 나타낼 수 있고, x_accel은 가속도 특징 벡터를 나타낼 수 있고, x_prox는 근접 특징 벡터를 나타낼 수 있다. 은닉 상태 변수(EPP)는 엔드포인터 음성 EP 및 포즈 상태 변수 Pose의 외적(cross product)을 나타낼 수 있다. EP 및 Pose 변수들은 이산 랜덤 변수들(discrete random variables)일 수 있다.
도 8b는 은닉 상태를 EP 벡터와 Pose 상태 변수로 인수분해(850)하는 것을 도시한다. 이러한 인수분해는 훈련 데이터의 더 나은 사용과 빠른 추론을 용이하게 할 수 있다. 분포는 아래와 같이 인수분해될 수 있다:
Figure 112011042763592-pct00002
일부 경우에, 분포 p(x_aud, x_accel|EP,Pose) 및 p(x_aud, x_accel|EP,Pose) 및 p(x_prox|Pose)는 가우시안 혼합 모델(Gaussian Mixture Model)들일 수 있다.
일부 구현에 있어서, EP에 대한 사후 확률(posterior probability)은 엔드포인터 상태 머신에 입력으로서 사용될 수 있다. 예를 들어, 도 9는 엔드포인터 상태 머신(900)을 도시한다. 도 9에 도시된 실시예의 구현에서, EP 사후 확률은 문턱값일 수 있고, 시간 프레임은 잡음 또는 음성 중 하나를 포함하도록 결정될 수 있다. 이러한 예에서, 잡음은 제로(zero) 값으로 표현될 수 있고, 음성은 1(one) 값으로 표현될 수 있다. 문턱값들의 원형 버퍼(circular buffer)가 저장될 수 있다. 버퍼 내 1의 값은 도 9에 도시된 엔드포인터 상태 머신을 유도하는데 사용될 수 있다. 예를 들어, 초기 상태(905)가 음성-전(pre-speech)이고 원형 버퍼에 있는 1의 값들의 수가 문턱값을 초과하면, 머신은 상태 910 "개시 가능(possible onset)"으로 이동한다. 1의 값들의 수가 문턱값 이하로 떨어지면, 머신은 다시 "음성-전" 상태 905로 이동한다. 상태 머신(900)은 "음성 존재"(915) 사이에서 앞뒤로, 유사한 방식으로 "상쇄(offset) 가능"(920) 및 "음성-후"(925)로 이행할 수 있다.
도 10은 포즈 및 음성 검출을 위한 다이나믹 베이즈 넷을 도시한다. 도 10은 은닉 마코브 모델(Hidden Markov Model; 1000)에 함께 연쇄된 EPP 상태들의 컬렉션을 보여준다. 예시적 구현에 있어서, 상태 EPP는 EP 상태와 포즈 상태의 외적일 수 있고, 이행 행렬(transition matrix)에 의해 정의될 수 있는 상태들 사이를 이행할 수 있다. 도 10의 예시적 제스처 인식기는 기대값 최대화 알고리즘(Expectation Maximization algorithm)을 채용함으로써 훈련될 수 있다. 음성/잡음 상태를 결정하기 위한 추론은 비터비(Viterbi) 알고리즘 또는 전후방(Forward-Backward) 알고리즘에 의해 수행될 수 있다. 일부 경우에, 더 복잡한 상태들이 사용될 수 있다. 예를 들어, 사용자의 환경(예컨대, 길에서, 집에서, 운전 중에, 레스토랑에서 등) 또는 디바이스의 환경은 센서들로부터 의 신호에 기초하여 추론될 수 있고, 포즈 및 엔드포인터 상태의 결정에 이용될 수 있다.
도 11 및 12는 오디오 신호 품질에 관한 피드백을 제공하는 예시적인 그래픽 사용자 인터페이스의 스크린 샷을 보여준다. 일부 구현에 있어서, 예시적 그래픽 사용자 인터페이스는 사용자가 모바일 컴퓨팅 디바이스로 커맨드를 말하기 전, 말하는 동안 및 말한 후에 오디오 신호 품질에 관한 피드백을 제공할 수 있다. 예를 들어, 사용자가 말하기 전, 그래픽 사용자 인터페이스는 음성이 디바이스에 의해 정확히 포착될 것인지를 표시할 수 있는 시각적 또는 청각적 피드백을 제공할 수 있다. 일부 경우에, 피드백은 사용자가 특정 방식으로 디바이스를 사용해야 한다는 표시를 하거나, 사용자에게 배경 잡음이 정확한 음성의 검출 및 레코딩을 손상시킬 수 있다는 경고를 한다. 일부 구현에서, 피드백은 사용자가 이용가능한 동작의 모드들을 한정하고, 성공적인 보이스 포착의 기회를 증대시킬 수 있는 동작 모드를 제안하는데 사용될 수 있다.
일부 경우에, 사용자가 말할 때 그래픽 사용자 인터페이스는 디바이스에 의해 포착된 오디오의 품질에 관한 피드백을 제공할 수 있다. 예를 들어, 사용자가 말하는 동안 레코드된 오디오 진폭의 시각적 표시가 스크린상에 표시될 수 있다. 이는 배경 잡음이 사운드 레코딩에 간섭하는지 또는 사용자의 커맨드가 적절히 레코딩되고 있는지 여부의 표시를 사용자에게 제공할 수 있다. 사용자가 말을 끝낸 후에, 그래픽 사용자 인터페이스는 포착된 보이스 커맨드들의 표시를 사용자에게 디스플레이할 수 있다.
도 11은 오디오 신호 품질에 관한 피드백을 제공하는 예시적 그래픽 사용자 인터페이스(1100)를 도시한다. 예시적 그래픽 사용자 인터페이스(1100)는 일부 경우에 메시지 영역(1105)을 포함할 수 있다. 텍스트 및 파형과 같은 시각적 표시기들이 예컨대, 디바이스의 동작 모드 또는 레코드된 오디오의 표현을 표시하기 위해 메시지 영역(1105)에 디스플레이될 수 있다. 예를 들어, 도 11에 도시된 것처럼, 디바이스가 레코딩 모드에 있을 때, "Speak Now" 메시지가 메시지 영역(1110)에 디스플레이될 수 있다. 현재 잡음 조건들이 음성 레코딩에 간섭할 수 있다고 표시하는 메시지들이 메시지 영역(1105)에 디스플레이될 수 있다. 일부 상황에서, 메시지 영역(1105)은 또한 사용자가 레코딩 동작을 유지하거나 취소하도록 해주는 메시지들을 보여줄 수 있다. 앞서 말한 예들은 예시이며, 다른 형태의 데이터들이 메시지 영역(1105)에 디스플레이될 수 있다.
예시적 그래픽 사용자 인터페이스(1100)는 또한 시각적 오디오 레벨 표시기(1110)를 포함한다. 일 실시예에 따른 구현에 있어서, 시각적 오디오 레벨 표시(1110)는 모바일 디바이스에 의해 포착된 오디오의 진폭을 표시할 수 있다. 예를 들어, 사용자가 말을 할 때, 표시기(1110)는 검출된 음성의 진폭과 관련된 양만큼 올라갈 수 있다. 일부 상황에 있어서, 표시기(1110)에 의해, 사용자는 배경 잡음이 음성 레코딩에 간섭하는지 여부를 결정할 수 있다. 예를 들어, 표시기(1110)가 사용자가 말을 시작하기 전에 올라가면, 배경 잡음이 음성 레코딩에 간섭하고 있을 수 있다. 표시기(1110)가 사용자가 말하는 동안 올라가지 않으면, 이는 사용자의 보이스 커맨드가 적절히 녹음되지 않고 있다는 것을 표시할 수 있다.
일부 경우에서, 오디오 레벨 표시기(1110)는 오디오 샘플들의 프레임의 제곱 평균(RMS; Root means Square) 레벨의 로그 표현을 디스플레이할 수 있다. 오디오 샘플들의 프레임의 로그 RMS 레벨은 배경 잡음 레벨을 표현할 수 있다. 일부 경우에, RMS값은
Figure 112011042763592-pct00003
와 같을 수 있다. 일부 경우에, 오디오 샘플들의 프레임의 로그 RMS 레벨은 아래 식에 의해 결정될 수 있다:
Figure 112011042763592-pct00004
여기서 xt는 시간 t에서의 오디오 샘플 값이 될 수 있다.
일부 경우에, 오디오 레벨 표시기(1110)는 신호-대-잡음 비(즉, 배경 잡음에 대한 음성 신호의 강도)의 표현을 디스플레이할 수 있다. 예를 들어, 신호-대-잡음 비는 아래 식을 이용하여 계산될 수 있다:
Figure 112011042763592-pct00005
식 (3)과 같이, xt는 시간t에서 오디오 샘플 값이 될 수 있고, 반면 NL은 잡음 레벨의 추정치가 될 수 있다.
대안적인 구현에 있어서, 오디오 레벨 표시기(1110)는 오디오 샘플들의 프레임의 로그 RMS 레벨과 신호-대-잡음 비의 결합의 표현을 디스플레이할 수 있다. 예를 들어, 이러한 결합은 아래와 같이 결정될 수 있다:
Figure 112011042763592-pct00006
이러한 식에서, α 및 β는 배경 잡음 및 신호-대-잡음의 비율을 정할(scale) 수 있는 변수들이다. 예를 들어, α는 데시벨(decibel) 값들(예컨대, 100db는 오디오 프레임의 RMS 레벨의 최대 크기(full scale)와 같음)로 표현하기 위해 오디오 샘플들의 프레임의 RMS 레벨의 비율을 정할 수 있다. β는 유사한 방식으로 신호-대-잡음 비의 비율을 정하는데 사용될 수 있다.
일부 구현에 있어서, 하나 이상의 배경 잡음 레벨, 신호-대-잡음 비 또는 둘의 결합이 그래픽 사용자 인터페이스(1100)에 디스플레이될 수 있다. 예를 들어, 이러한 측정치들의 하나 이상은 다른 색상으로 또는 스크린의 다른 영역에 디스플레이될 수 있다. 일부 경우에, 이러한 측정치들 중 하나는 나머지 중 다른 하나에 겹쳐질 수 있다. 예를 들어, 신호-대-잡음 비를 표현하는 데이터는 배경 잡음 레벨을 표현하는 데이터 위에 겹쳐질 수 있다.
또한 도 11은 시각적 파형 표시기(1150)를 포함하는 예시적인 그래픽 사용자 인터페이스를 도시한다. 예시적인 시각적 파형 표시기(1150)는 포착된 오디오 신호를 사용자에게 보여줄 수 있다. 일부 경우에 파형은 음성 파형의 포락선(envelope)을 표현하는 포착된 오디오의 양식화된 표현일 수 있다. 다른 경우에, 파형은 아날로그 오디오 파형의 샘플링된 버전을 나타낼 수 있다.
예시적 파형은 디바이스가 오디오 레코드에 실패했을 때를 사용자가 인식하도록 해준다. 예를 들어, 사용자가 보이스 커맨드를 발성한 후에, 어플리케이션은 포착된 오디오를 표현하는 파형을 보여줄 수 있다. 파형이 평평한 선(flat line)이라면, 이것은 녹음되는 오디오가 없음을 표시하는 것이다.
도 12는 다른 동작 조건들에서 예시적 그래픽 사용자 인터페이스를 도시한다. 일부 경우에, 배경 잡음의 레벨에 기초하여 모바일 디바이스와 상호작용하는 옵션들을 조정하는데 유용할 수 있다. 예를 들어, 사용자는 보이스 커맨드를 모바일 디바이스에 입력하길 원할 수 있다. 배경 잡음 레벨에 의존하여, 사용자는 보이스 커맨드가 디바이스에 의해 인식되도록 디바이스를 그의 입 가까이 들고 있을 필요가 있다. 그러나 조용한 상황에서는 사용자가 팔 길이만큼 떨어진 곳에 디바이스를 들고 보이스 커맨드들을 입력할 수 있다. 예시적 그래픽 사용자 인터페이스는, 디바이스가 배경 잡음의 검출된 레벨이 주어진 상황에서 보이스 커맨드를 올바르게 인식할 수 있는 확률에 기초하는 상호 작용 옵션을 사용자에게 제시할 수 있다. 예를 들어, 도 12에 도시된 것처럼, 조용한 조건에서, 그래픽 사용자 인터페이스는 그래픽 음성 검색(voice search) 버튼(1205)에 의해 나타난 음성 검색 옵션을 나타낼 수 있다. 배경 잡음 레벨이 높은 상황에서는, 그래픽 사용자 인터페이스(1210)의 가장 오른쪽 이미지에 도시된 것처럼, 음성 검색 버튼(1205)이 삭제될 수 있고 모바일 디바이스가 사용자의 입에 더 가까이 위치해야 한다는 메시지가 디스플레이될 수 있다. 디바이스를 사용자에게 더 가까이 유지함으로써(예컨대, 전화 포즈로 디바이스를 들고 있음), 음성 세기(speech power)가 15-20 데시벨만큼 증가하여 더 올바른 음성 인식이 가능하게 된다.
도 13 및 14는 모드 선택에 기초한, 배경 잡음에 대한 예시적 프로세스들(1300 및 1400)의 플로우 차트이다. 프로세스들(1300 및 1400)은 예컨대 도 2에 도시된 시스템과 같은 시스템에 의해 수행될 수 있고, 후술하는 설명은 이 시스템을, 프로세스들을 설명하기 위한 실시예의 기초로 사용한다. 그러나 다른 시스템 또는 시스템들이 조합도 프로세스(1300 및 1400)를 수행하는데 사용될 수 있다.
도 13은 모드 선택에 기초한, 배경 잡음에 관한 예시적인 프로세스(1300)를 도시한다. 예시적인 프로세스(1300)는 환경 잡음 및/또는 신호-대-잡음 비가 추정되는 단계 1305에서 시작한다. 예를 들어, 환경 잡음 및 신호-대-잡음 비는 상기 식 (3) 및 (4)를 이용하여 계산될 수 있다. 단계 1310에서는 환경(예컨대, 배경) 잡음 및/또는 신호-대-잡음 비가 배경 잡음 레벨 문턱값 이상인지 여부가 결정된다. 예를 들어, 일 구현에 있어서, 디바이스(205)는 잡음 및 신호 레벨 추정치 및 다른 환경-관련 파라미터들뿐만 아니라 음향 신호를 서버에 보낼 수 있다. 서버는 추정된 잡음 및 음성 레벨 추정치가 배경 잡음 레벨 문턱값 이상인지 여부를 결정할 수 있다. 배경 잡음 레벨 문턱값은 서버에 보낸 이전의 잡음 및 음성 레벨 추정치들, 환경-관련 파라미터들, 및 음향 레벨 신호들을 기초로 할 수 있다.
일부 경우에, 디바이스(205)는 특정 잡음 레벨 또는 환경적 사운드의 형태를 인식 정확도(recognition accuracy)와 연관시킬 수 있다. 예를 들어, 40dB 팬 소음(fan noise)의 잡음 레벨(NL)은 20%의 단어 오류율(WER; word error rate)에 상응할 수 있지만, 잡음이 70dB일 때(사용자가 평균 80dB로 말한다고 가정) WER은 50%가 될 수 있다. 이러한 값들은 NL로부터 WER로의 표를 만들기 위해 통계를 수집할 수 있는 서버(예컨대, 원격 디바이스(245))에 전송될 수 있다.
일부 잡음 형태는 다른 것들보다 더 나쁠 수 있다. 예를 들어, 50dB 카페테리아 잡음은 70dB의 팬 소음과 동일한 WER을 가질 수 있다. 디바이스(205)는 모드 결정을 위해 오디오를 서버(예컨대, 원격 디바이스(245))로 보냄으로써, 이러한 형태의 환경 특성화(environment characterization)를 수행할 수 있다.
배경 잡음 및/또는 신호-대-잡음 비가 배경 레벨 문턱값 이상이면, 프로세스는 도 12에 도시된 것처럼 음성 검색 버튼이 디스플레이되는 단계 1315로 진행한다. 그렇지 않으면, 전화 포지션에서 디바이스(205)를 사용하도록 사용자에게 권고하는 대화 상자 또는 메시지가 단계 1320에서 디스플레이될 수 있다. 이와 관계없이, 방법은 단계 1315 또는 단계 1320 후에 1305로 돌아간다.
도 14는 배경 잡음 레벨 추정의 예시적 방법(1400)을 도시한다. 방법(1400)은 오디오 샘플의 RMS 레벨이 결정되는 단계 1405에서 시작한다. 예를 들어, 마이크로폰(217)은 모바일 디바이스(205) 주변의 환경으로부터 오디오 신호들의 프레임(예컨대, 20 밀리세컨드의 오디오)을 포착하는데 사용될 수 있다. 그 프레임의 RMS 레벨은 상기 식 (3)에 따라 결정될 수 있다.
선택적으로, 단계 1410에서 잡음 및 음성 레벨들이 초기화될 수 있다. 예를 들어, 잡음 및 음성 레벨들이 미리 설정되지 않았다면(방법(1400)이 최초로 실행되는 경우일 수 있음) 잡음 및 음성 레벨들은 오디오 샘플의 RMS 레벨을 이용하여 초기화될 수 있다. 일 실시예에서, 잡음 및 음성 레벨은 아래 식들을 이용하여 설정될 수 있다.
Figure 112011042763592-pct00007
식 (6) 및 (7)에서, RMS는 오디오 샘플의 RMS 레벨일 수 있고, α는 잡음 또는 음성의 이전 추정치와, 잡음 또는 음성의 현재 추정치의 비일 수 있다. 이러한 비는 초기에 0으로 설정되고,
Figure 112011042763592-pct00008
로 증가할 수 있으며, 여기서 k는 초기 적응 기간 내의 단계들의 회수이다.
단계 1415에서, 잡음 레벨이 업데이트될 수 있다. 예를 들어, 잡음 레벨은 오디오 샘플의 RMS 레벨과 비교될 수 있고, 잡음 레벨은 아래 식에 따라 조정될 수 있다.
Figure 112011042763592-pct00009
식 (7)과 같이, RMS는 오디오 샘플의 RMS 레벨일 수 있다. 일부 경우에, UpdateRate NL UpdateRate RMS 의 합은 1과 같을 수 있다. 잡음 레벨이 오디오 샘플의 RMS레벨보다 작으면, UpdateRate NL 는 .995이지만 UpdateRate RMS 는 .005일 수 있다. 잡음 레벨이 오디오 샘플의 RMS 레벨보다 크다면, 잡음 레벨은 식 (8)을 이용하여 설정될 수 있으나, UpdateRate NL 는 .95이고 UpdateRate RMS 는 .05일 수 있다.
단계 1430에서, 음성 레벨이 업데이트될 수 있다. 예를 들어, 음성 레벨은 오디오 샘플의 RMS 레벨과 비교될 수 있고, 음성 샘플은 아래 식에 따라 설정될 수 있다.
Figure 112011042763592-pct00010
음성 레벨이 오디오 샘플의 RMS 레벨보다 크다면, UpdateRate SL 는 .995이고 UpdateRate RMS 는 .005와 같을 수 있다. 음성 레벨이 오디오 샘플의 RMS 레벨보다 작으면, UpdateRate SL 는 .995와 같고 UpdateRate RMS 는 .005와 같을 수 있다. 음성 레벨이 업데이트된 후에, 방법(1400)은 단계 1405로 돌아갈 수 있다.
일부 구현에 있어서, 다른 배경 잡음 레벨 추정 방법들도 사용될 수 있다. 예를 들어, 여기에 참조로서 병합된 아래의 문서들에 개시된 방법들이 사용될 수 있다:
"지역 잡음 레벨 추정치 산정 방법들: 잡음에 강한 ASR의 응용" Christophe Ris, Stephane Dupont. 음성 통신, 34 (2001) 141-158; "DySANA: 음성 활동 검출을 위한 능동적 음성 및 잡음 적응(Dynamic Speech and Noise Adaptation for Voice Activity Detection)" Ron J. Weiss, Trausti Kristjansson, ICASSP 2008;
"강인한 음성 인식을 위한 잡음 추정 기술" H.G.Hirsch, C Ehrlicher, Proc. IEEE 인터넷. Conf.Audio, 음성 신호 프로세스, v12 i1, 59-67; 및 "지역 잡음 레벨 추정치 산정 방법들" Stephane Dupont, Christophe Ris, 악조건에서의 음성 인식에 강인한 방법들에 대한 워크샵(Nokia, COST249, IEEE), 115- 118 페이지, Tampere, Finland, May 1999.
도 15를 참조하면, 본 명세서에서 상기 멀티센서 음성 검출 방법들을 구현하는 예시적 디바이스(1500)의 외형을 예시한다. 보다 상세하게, 디바이스(1500)의 하드웨어 환경은 사용자에게 텍스트, 이미지, 및 비디오를 디스플레이하는 디스플레이(1501); 텍스트 데이터와 사용자 명령을 디바이스(1500)에 입력하는 키보드(1502); 디스플레이(1501) 상에 디스플레이된 객체를 포인팅하고, 선택하고, 및 조정하는 포인팅 디바이스(1504); 안테나(1505); 네트워크 연결(1506); 카메라(1507); 마이크로폰(1509); 및 스피커(1510)를 포함한다. 디바이스(1500)가 외장 안테나(1505)를 나타내고 있지만, 디바이스(1500)는 사용자가 볼 수 없는 내장 안테나를 포함할 수 있다.
디스플레이(1501)는 디바이스(1500)에 의해 사용되는 소프트웨어 애플리케이션 및 디바이스(1500)를 동작시키기 위해 사용되는 운영 체제 프로그램을 위한 사용자 인터페이스를 구성하는 비디오, 그래픽, 이미지, 및 텍스트를 디스플레이할 수 있다. 디스플레이(1501) 상에 디스플레이될 수 있는 가능 요소에는, 사용자에게 새로운 메시지의 존재를 경보하는 새 메일 표시자(1511); 전화 호가 수신, 발신, 또는 발생 중임을 표시하는 활성 호 표시자(1512); 데이터를 전송 및 수신하기 위해서 디바이스(1500)가 현재 사용하는 데이터 표준을 표시하는 데이터 표준 표시자(514); 예를 들어, 신호 세기 바를 사용하여 안테나(1505)를 경유하여 수신되는 신호의 세기의 크기를 표시하는 신호 세기 표시자(1515); 잔여 배터리 수명의 크기를 표시하는 배터리 수명 표시자(1516); 또는 현재 시간을 출력하는 시계(1517)가 있다.
또한, 디스플레이(1501)는 사용자에게 이용가능한 다양한 애플리케이션을 나타내는 애플리케이션 아이콘을 도시하는데, 그 애플리케이션 아이콘은 예를 들어 웹 브라우저 애플리케이션 아이콘(1519), 전화 애플리케이션 아이콘(1520), 탐색 애플리케이션 아이콘(1521), 접촉 애플리케이션 아이콘(1522), 매핑 애플리케이션 아이콘(1524), 이메일 애플리케이션 아이콘(1525), 또는 다른 애플리케이션 아이콘이다. 하나의 예시적 구현예에서, 디스플레이(1501)는 16 비트 또는 그보다 양호한 색을 수용할 수 있는 쿼터 비디오 그래픽스 어레이(QVGA) 박막 트랜지스터(TFT) 액정 표시 장치(LCD)이다.
사용자는 멀티센서 음성 검출을 위해 제공하는 애플리케이션과 운영 체제를 동작시키고 제어하기 위한 명령 및 데이터를 입력하기 위해서 키보드(또는 "키패드")(1502)를 사용한다. 키보드(1502)는 단독으로 선택되었을 때 알파벳 문자 "Q" 와 "W"에 연관되나, 키(1529)와 조합되어 눌렸을 경우에는 "*"와 "1"에 연관될 수 있는 키(1526, 1527)와 같은, 알파벳 문자와 연관되는 키들 또는 표준 키보드 버튼을 포함한다. 단일 키(single key)는 운영 체제의 상태 또는 운영 체제에 의해 호출되는 애플리케이션의 상태에 근거하여 특정 문자, 또는 레이블이 부여되지 않은 기능을 포함하는 기능과 연관될 수 있다. 예를 들어, 애플리케이션이 숫자의 입력을 요구하면, 키(1527)의 단독 선택은 "1"로 입력된다.
영숫자 키패드와 연관되는 통상적인 키에 더하여, 키보드(1502)는 그 밖의 특별 기능 키들을 포함할 수 있다. 예컨대, 특별 기능 키에는, 수신된 전화에 응답하거나 새로운 호를 발생시키는 호-확립 키(1530); 활성 호를 종료시키는 종료키(1531); 메뉴가 디스플레이(1501) 내에 나타나도록 하는 드롭다운 메뉴 키(1532); 이전에 액세스했던 네트워크 주소에 다시 액세스시키는 후방 탐색 키(1534); 활성 웹 페이지를 선호 사이트의 북마트 폴더에 위치시키거나, 또는 북마크 폴더가 나타나게 하는 선호 키(1535); 디바이스(1500) 상에 호출된 애플리케이션이 미리 결정된 네트워크 주소로 이동하도록 하는 홈 페이지 키(1536); 또는 다중 방향 내비게이션, 애플리케이션 선택, 및 전원과 음량 제어를 제공하는 다른 키와 같은 다른 특정 기능 버튼을 포함할 수 있다.
사용자는 디스플레이된 그래픽과 텍스트 객체를, 디바이스(1500) 및 디바이스(1500) 상에 호출된 애플리케이션과 상호 작용하고 또한 제어하는 것의 일부로서, 선택 및 조정하기 위해 포인팅 디바이스(1504)를 사용한다. 포인딩 디바이스(1504)는 포인팅 디바이스에 대해 임의의 적절한 타입이며, 조이스틱, 트랙볼, 터치패드, 카메라, 음성 입력 디바이스, 디스플레이(1501)와 조합되어 구현되는 터치 스크린 디바이스, 또는 임의의 다른 입력 디바이스일 수 있다.
외부 안테나 또는 내부 안테나일 수 있는 안테나(1505)는, 점대점(point-to-point) 무선 통신, 무선 LAN(Local Area Network) 통신, 또는 위치 확인(location determination)을 구현하는 무선주파수(RF, Radio Frequency)의 전송 및 수신을 위해 사용되는 지향성(directional) 또는 무지향성(omni-directional) 안테나이다. 안테나(505)는 SMR(Specialized Mobile Radio), 셀룰라, 또는 PCS(Personal Communication Service) 주파수 대역을 사용하여 점대점 무선 통신을 수행할 수 있고, 임의 개수의 데이터 표준을 사용하여 데이터 전송을 구현할 수 있다. 예를 들어, 안테나(1505)를 통해 데이터가 디바이스(1500)와 기지국 간에 전송되며, 이러한 전송에는, 예를 들어, WiBro(Wireless Broadband), WiMAX(Worldwide Interoperability for Microwave ACCess), 5GPP LTE(Long Term Evolution), UMB(Ultra Mobile Broadband), HIPERMAN(High Performance Radio Metropolitan Network), iBurst 또는 HC-SDMA(High Capacity Spatial Division Multiple Access), HSOPA(High Speed OFDM Packet Access), HSPA(High-Speed Packet Access), HSPA 에볼루션(Evolution), HSPA+, HSUPA(High Speed Upload Packet Access), HSDPA(High Speed Downlink Packet Access), GAN(Generic Access Network), TD-SCDMA(Time Division-Synchronous Code Division Multiple Access), EVDO(Evolution-Data Optimized(또는 Evolution-Data Only)), TD-CDMA(Time Division-Code Division Multiple Access), FOMA(Freedom of Mobile Media Access), UMTS(Universal Mobile Telecommunications System), W-CDMA(Wideband Code Division Multiple Access), EDGE(Enhanced Data rates for GSM Evolution), EGPRS(Enhanced GPRS), CDMA2000(Code Division Multiple Access-2000), WiDEN(Wideband Integrated Dispatch Enhanced Network), HSCSD(High-Speed Circuit-Switched Data), GPRS(General Packet Radio Service), PHS(Personal Handy-Phone System), CSD(Circuit Switched Data), PDC(Personal Digital Cellular), CDMAone, D-AMPS(Digital Advanced Mobile Phone System), IDEN(Integrated Digital Enhanced Network), GSM(Global System for Mobile communication), DataTAC, 모비텍스(Mobitex), CDPD(Cellular Digital Packet Data), Hicap, AMPS(Advanced Mobile Phone system), NMP(Nordic Mobile Phone), ARP(Autoradiopuhelin), 오토텔(Autotel) 또는 PLAM(Public Automated Land Mobile), MTD(Mobiltelefonisystem D), OLT(Offentlig Landmobil Telefoni), AMTS(Advanced Mobile Telephone System), IMTS(Improved Mobile Telephone Service), MTS(Mobile Telephone System), PTT(Push-To-Talk), 또는 그 밖의 기술을 사용할 수 있다. W-CDMA, HSUPA, GSM, GPRS, 및 EDGE 네트워크를 통한 통신은 예를 들어, QUALCOMM RTR6285TM 트랜스시버(transceiver)와 PM7540TM 전원 관리 회로가 탑재된 QUALCOMM MSM7200A 칩셋을 사용하여 수행될 수 있다.
유선 또는 무선 컴퓨터 네트워트 접속(1506)은 모뎀 연결, 이더넷(Ethernet)을 포함한 근거리 네트워크(LAN) 연결, 또는 디지털 가입자 회선(DSL, Digital Subscriber Line)과 같은 광역 네트워크(WAN), 케이블 고속 인터넷 접속, 다이얼업 접속, T-1 라인, T-3 라인, 광 섬유 접속, 또는 위성 접속일 수 있다. 네트워크 접속(1506)은 LAN 네트워크, 회사 또는 정부 WAN 네트워크, 인터넷, 전화 네트워크, 또는 그 밖의 네트워크에 접속할 수 있다. 네트워크 접속(1506)은 유선 또는 무선 접속자(connector)를 사용한다. 예시적 무선 접속자는 예를 들어, IrDA(INFRARED DATA ASSOCIATION) 무선 접속자, Wi-Fi 무선 접속자, 광 무선 접속자, IEEE(INSTITUTE OF ELECTRICAL AND ELECTRONICS ENGINEERS) 표준 802.11 무선 접속자, 블루투스 무선 접속자(예컨대, 블루투스 버전 1.2 또는 5.0 접속자), NFC(Near Field Communications) 접속자, OFDM(Orthogonal Frequency Division Multiplexing) UWB(ultra wide band) 무선 접속자, TM-UWB(Time-Modulated Ultra Wide Band) 무선 접속자, 또는 그 밖의 무선 접속자를 포함할 수 있다. 예시적 유선 접속자는, 예를 들어, IEEE-1394 FIREWIRE 접속자, USB(Universal Serial Bus) 접속자(미니-B USB 인터페이스 접속자를 포함함), 직렬 포트(serial port) 접속자, 병렬 포트(parallel port) 접속자 또는 그 밖의 유선 접속자를 포함한다. 다른 구현예에서, 네트워크 접속(1506)과 안테나(1505)의 기능은 단일 구성요소로 통합된다.
카메라(1507)는 디바이스(1500)가 디지털 이미지를 획득하도록 하고, 스캐너, 디지털 스틸 카메라, 디지털 비디오 카메라, 그 밖의 디지털 입력 장치일 수 있다. 하나의 예시적 구현예에서, 카메라(1507)는 CMOS(Complementary Metal-Oxide Semiconductor)를 이용하는 5 메가 픽셀(MP, Mega-pixel) 카메라이다.
마이크로폰(1509)은 디바이스(1500)가 음향(sound)을 획득하도록 하고, 무지향성 마이크로폰, 단방향성 마이크로폰, 양방향성 마이크로폰, 집음 마이크로폰(shotgun microphone), 또는 음향을 전기적 신호로 변환하는 다른 형태의 장치일 수 있다. 마이크로폰(1509)은 예를 들어, 디바이스(1500)를 통해 전화 통화를 하는 동안 사용자가 다른 사용자에게 얘기하는 경우 사용자에 의해 생성되는 음향을 획득하기 위해 사용될 수 있다. 반대로, 스피커(1510)는 디바이스가 전기적 신호를 전화 애플리케이션 프로그램에 의해 생성된 다른 사용자로부터의 음성, 또는 링톤(ring tone) 애플리케이션 프로그램에 의해 생성된 링톤과 같은 음향으로 변환하도록 한다. 더욱이, 디바이스(1500)는 휴대형 디바이스로 도 15에 예시되었지만, 디바이스(1500)의 다른 구현에서는, 랩탑(laptop), 워크스테이션(workstation), 중형 컴퓨터(midrange computer), 메인프레임, 임베디드 시스템, 전화, 데스크탑 PC, 태블릿 컴퓨터(tablet computer), PDA, 또는 그 밖의 형태의 컴퓨팅 디바이스일 수 있다.
도 16은 디바이스(1500)의 내부 구조(1600)를 도시하는 블록도이다. 이 구조는 운영 체제 또는 애플리케이션을 구성하는 컴퓨터 명령어가 실행되는 중앙 제어 장치(CPU)(1601); 디스플레이(1501) 상에 비디오, 그래픽, 이미지, 및 텍스트를 표현하기 위한 통신 인터페이스 및 프로세싱 기능을 제공하고, 내장 컨트롤(예컨대, 버튼, 텍스트, 및 리스트들)의 세트를 제공하고, 다양한 화면 크기를 지원하는 디스플레이 인터페이스(1602); 키보드(1502)로의 통신 인터페이스를 제공하는 키보드 인터페이스(1604); 포인팅 디바이스(1504)로의 통신 인터페이스를 제공하는 포인팅 디바이스 인터페이스(1605); 안테나(1505)로의 통신 인터페이스를 제공하는 안테나 인터페이스(1606); 컴퓨터 네트워크 접속(1506)을 통해 네트워크로의 통신 인터페이스를 제공하는 네트워크 접속 인터페이스(1607); 카메라(1507)로부터 디지털 이미지를 획득하기 위한 처리 기능과 통신 인터페이스를 제공하는 카메라 인터페이스(1608); 마이크로폰(1509)을 사용하여 음향을 전기적 신호로 변환하고, 스피커(1510)를 사용하여 전기적 신호를 음향으로 변환하기 위한 통신 인터페이스를 제공하는 음향 인터페이스(1609); CPU(1601)에 의해 처리되는 컴퓨터 명령어와 데이터가 휘발성 메모리 디바이스에 저장되는 RAM(Random Access Memory;1601); 기본 입력 및 출력(I/O), 스타트업, 또는 키보드(1502)로부터의 키입력 수신과 같은 기본 시스템 기능을 위한 불변의 로우-레벨 시스템 코드(low-level systems code) 또는 데이터가 비휘발성 메모리 디바이스에 저장되는 ROM(Read-Only Memory;1611); 운영 체제(1614), 애플리케이션 프로그램(1615)(예를 들어, 필요에 따라서, 웹 브라우저 애플리케이션, 위젯 또는 가젯 엔진, 및/또는 그 밖의 애플리케이션을 포함함) 및 데이터 파일(1616)을 포함하는 파일들이 저장되는 저장 매체(1612) 또는 그 밖의 적합한 형태의 메모리(예컨대, RAM, ROM, PROM(Programmable Read-Only Memory), EPROM(Erasable Programmable Read-Only Memory), EEPROM(Electrically Erasable Programmable Read-Only Memory), 마그네틱 디스크, 광 디스크, 플로피 디스크, 하드 디스크, 착탈형 카트리지, 플래쉬 드라이브); 디바이스(1500)의 실제 세계(real-world) 또는 상대적 위치 또는 지리적 위치를 제공하는 내비게이션 모듈(1617); 전원 구성요소에 적절한 교류(AC) 또는 직류(DC)를 제공하는 전원부(1619); 및 디바이스(1500)가 전화 네트워크를 경유하여 음향을 전송 및 수신하도록 하는 전화 서브시스템(1620)을 포함한다. 구성 디바이스 및 CPU(1601)는 버스(1621)를 경유하여 서로 통신한다.
CPU(1601)는 많은 컴퓨터 프로세서 중 하나일 수 있다. 일 방식에서, 컴퓨터 CPU(1601)는 하나 이상의 처리 유닛이다. RAM(1610)은 컴퓨터 버스(1621)와 인터페이스하여, 운영 체제, 애플리케이션 프로그램과 같은 소프트웨어 프로그램이 실행되는 동안 빠른 RAM 저장을 CPU(1601)와 디바이스 구동부에 제공한다. 보다 구체적으로는, CPU(1601)는 소프트웨어 프로그램을 실행시키기 위해서 컴퓨터 실행 가능 프로세스 단계를 저장 매체(1612) 또는 다른 미디어에서 RAM(1610)의 필드로 로딩한다. 데이터는 RAM(1610)에 저장되고, 실행되는 동안 컴퓨터 CPU(1601)에 의해 액세스된다. 일 예시적 구성에서, 디바이스(1500)는 적어도 128MB의 RAM, 및 256MB의 플래시 메모리를 포함한다.
저장 매체(1612) 자신은 RAID(Redundant Array of Independent Disks), 플로피 디스크 드라이브, 플레쉬 메모리, USB 플래쉬 드라이브, 외장 하드 디스크 드라이브, 썸(thumb) 드라이브, 펜(pen) 드라이브, 키 드라이브, HD-DVD(High-Density Digital Versatile Disc) 광학 디스크 드라이브, 내장 하드 디스크 드라이브, 블루레이(Blu-Ray) 광학 디스크 드라이브, 또는 HDDS(Holographic Digital Data Storage) 광학 디스크 드라이브, 외장 미니-DIMM(Dual In-line Memory Module) SDRAM(Synchronous Dynamic Random Access Memory), 또는 외장 마이크로-DIMM SDRAM과 같은 복수의 물리적 드라이브 유닛을 포함할 수 있다. 이러한 컴퓨터 판독가능 저장매체에 의해, 디바이스(1500)는 착탈식 및 비착탈식 메모리 매체에 저장된 컴퓨터 실행가능 프로세스 단계, 애플리케이션 프로그램 등을 액세스하여, 데이터를 디바이스(1500)로부터 오프-로딩하거나 디바이스(1500)에 업로드할 수 있다.
컴퓨터 프로그램 제품은 기계 판독가능 저장 매체(machine-readable storage medium)인 저장 매체(1612)에 유형적으로(tangibly) 구체화된다. 컴퓨터 프로그램 제품은 명령어를 포함하고, 이 명령어는 기계에 의해 판독되면, 데이터 처리 장치로 하여금 이미지 데이터를 모바일 디바이스에 저장하게 한다. 일부 구현예에서, 컴퓨터 프로그램 제품은 디바이스상에 메시지 신규 도착과 같은 경보에 관한 통지를 생성하는 명령어들을 포함한다.
운영 체제(1614)는 구글(GOOGLE) 모바일 디바이스 플랫폼와 같은 리눅스-기반 운영 체제; 애플 맥 운영 체제 X(APPLE MAC OS X); 마이크로소트프 윈도우 NT/원도우 2000/윈도우 XP/윈도우 모바일; 다양한 유닉스-기반형 운영 체제(UNIX-flavored operating system); 또는 컴퓨터 또는 임베디드 시스템용 전용 운영 체제일 수 있다. 운영 체제(1614)용 애플리케이션 개발 플랫폼 또는 프레임워크는, BREW(BINARY RUNTIME ENVIRONMENT FOR WIRELESS); 자바(JAVA) 플랫폼, 마이크로 에디션(JAVA ME) 또는 자바 2 플랫폼, 썬마이크로시스템스 자바스크립트 프로그램 언어를 이용하는 마이크로 에디션(J2ME); PYTHONTM 플레쉬 라이트(FLASH LITE), 또는 MICROSOFT.NET 컴팩, 또는 그 밖의 적절한 환경일 수 있다.
디바이스는 운영 체제(1614) 및 애플리케이션 프로그램(1615)용 컴퓨터 실행가능 코드(computer-executable code)를 저장한다. 예를 들어, 애플리케이션 프로그램에는 이메일, 인스턴스 메시지, 비디오 서비스 애플리케이션, 매핑 애플리케이션, 워드 프로세싱, 스프레드쉬트, 프리젠테이션, 게임, 매핑, 웹 브라우징, 자바스크립트 엔진, 또는 그 밖의 애플리케이션이 있다. 예를 들어, 일부 구현예에서 사용자는 구글 지메일(GOOGLE GMAIL) 이메일 애플리케이션, 구글 토크(GOOGLE TALK) 인스턴스 메시징 애플리케이션, 유투브(YOUTUBE) 비디오 서비스 애플리케이션, 구글 맵(GOOGLE MAPS) 또는 구글 어스(GOOGLE EARTH) 매핑 애플리케이션, 또는 구글 피카사(GOOGLE PICASA) 이메징 편집 및 프리젠테이션 애플리케이션을 액세스할 수 있다. 또한, 애플리케이션 프로그램(1615)은 위젯 또는 가젯 엔진을 포함할 수 있다. 예를 들어, 위젯 또는 가젯 엔진에는, TAFRI 위젯 엔진, 윈도우 사이드바(WINDOWS SIDEBAR) 가젯 엔진 또는 KAPSULES 가젯 엔진과 같은 마이크로소프트 가젯 엔진, KONIFABULTOR 위젯 엔진과 같은 야후! 위젯 엔진, 애플 데쉬보드(APPLEDASHBOARD) 위젯 엔진, 구글 가젯 엔진, 클립폴리오(KLIPFOLIO) 위젯 엔진, OPERA 위젯 엔진, WIDSETS 위젯 엔진, 전용 위젯 또는 가젯 엔진, 또는 데스크 탑에 물리적으로 인스파이어(inspire)된 애플릿(applet)에 대한 호스트 시스템 소프트웨어를 제공하는 그 밖의 위젯 또는 가젯 엔진이 있다.
상술한 구현예를 사용하여 메시지 및 다른 이벤트와의 상호 동작과 통지가 가능한데, 본 명세서에서 설명된 기능을, 팍스파이어(FOXFIRE) 웹 브라우저, 애플 사파리(APPLE SAFARI) 웹 브라우저 또는 마이크로소프트 인터넷 익스플로러(MICROSOFT INTERNET EXPLORER) 웹 브라우저와 같은 인터넷 웹 브라우저와 같은 그 밖의 애플리케이션 프로그램에 대한 플러그-인으로서, 또는 DLL(Dynamic Link Library)로서 또한 구현할 수 있다.
내비게이션 모듈(1617)은 GPS(Global Position System) 신호, GLONASS(GLObal NAvigation Satellite System), 갈릴레오 위치 시스템(Galileo positioning system), 북두 위성 항법 및 위치 시스템(Beidou Satellite Navigation and Positioning System), 관성 항법 시스템(inertial navigation system), 추측 항법 시스템(dead reckoning system)을 사용하거나, 데이터베이스에서 주소, IP(Internet Protocol) 주소, 또는 위치 정보를 액세스함으로써 디바이스의 절대적 또는 상대적 위치를 결정할 수 있다. 또한, 내비게이션 모듈(617)은 하나 이상의 가속도계를 사용함으로써, 디바이스(1500)의 각도 변위, 방위, 또는 속도를 측정하기 위해 사용될 수 있다.
도 17은 운영 체제(1614)가 구글 모바일 디바이스 플랫폼인 경우에 디바이스(1500)에 의해 사용되는 운영 체제(1614)의 예시적인 구성요소를 도시한 블록도이다. 운영 체제(1614)는, 연관된 전화 애플리케이션이 반응하는 것을 보장하고, 또한, 불안정한 애플리케이션이 운영 체제의 고장(또는 기능 정지(crash))을 야기하지 않는 것을 보장하면서, 다중 프로세스를 호출한다. 운영 체제(1614)는 작업 이행을 사용하여, 각 연관된 애플리케이션의 상태 손실없이, 전화를 하는 동안 애플리케이션이 이행되도록 한다. 운영 체제(1614)는 구성요소의 재사용을 조장하기 위해 애플리케이션 프레임워크를 사용할 수 있고, 포인팅 디바이스와 키보드 입력을 조합하고, 피보팅(pivoting)을 허용함으로써 스케일러블 사용자 경험(scalable user experience)을 제공할 수 있다. 따라서 그 운영 체제는 고급, 표준 기반 웹 브라우저를 사용하더라도, 풍부한 그래픽 시스템과 미디어 경험을 제공할 수 있다.
운영 체제(614)는 6개의 구성요소; 커널(1700), 라이브러리(1701), 운영 체제 런타임(1702), 애플리케이션 라이브러리(1704), 시스템 서비스(1705), 및 애플리케이션(1706)으로 조직화된다. 커널(1700)은 운영 체제(1614) 및 애플리케이션 프로그램(1615)과 같은 소프트웨어가 디스플레이 인터페이스(1602)를 경유하여 디스플레이(1501)와 상호 작용하도록 하는 디스플레이 구동부(1707); 소프트웨어가 카메라(1507)와 상호 작용하도록 하는 카메라 구동부(1709); 블루투스 구동부(1710); M-시스템 구동부(1711); 바인더(IPC) 구동부(1712); USB 구동부(1714); 소프트웨어가 키보드 인터페이스(1604)를 경유하여 키보드(502)와 상호 작용하도록 하는 키패드 구동부(1715); WiFi 구동부(1716); 소트프웨어가 음향 인터페이스(1609)를 경유하여 마이크로폰(1509) 및 스피커(1510)와 상호 작용하도록 하는 오디오 구동부(1717); 소프트웨어가 전원부(1619)와 상호 작용하고 전원부(1719)를 관리할 수 있도록 하는 전원 관리 구성요소(1719)를 포함한다.
일 구현예에서는 리눅스 기반 운영 체제용 블루즈 블루투스 스택(BlueZ BLUETOOTH stack)에 근거하는 블루투스 구동부는, 헤드셋(headset) 및 핸드 프리 디바이스(hands-free device), 다이얼-업 네트워킹, PAN(Personal Area Networking), 또는 오디오 스트리밍(예컨대, A2DP(Advance Audio Distribution Profile) 또는 AVRCP(Audio/Video Remote Control Profile)에 의함)을 지원하는 프로파일을 제공한다. 블루투스 구동부는 스캐닝, 페어링(pairing) 및 언페어링(unparing), 및 서비스 쿼리를 위한 자바 바인딩을 제공한다.
라이브러리(1701)는, 표준 비디오, 오디오 및 정지-프레임 형식(예컨대, MPEG(Moving Picture Experts Group)-4, H.264, MPEG-1 오디오 계층-3(MP3), AAC(Advanced Audio Coding), AMR(Adaptive Multi-Rate), JPEG(Joint Photographic Experts Group) 등)을 효율적인 자바 API(Application Programming Interface) 계층을 사용하여 지원하는 미디어 프레임워크(1720); 표면 관리자(1721); 2차원 애플리케이션 그리기를 위한 SGL(Simple Graphics Library, 1722); 게이밍 및 3차원 랜더링(rendering)을 위한 OpenGL ES(Open Graphics Library for Embedded System, 1724); LIBC(C Standard library, 1725); LIBWEBCORE 라이브러리(726); 자유 형태(free type) 라이브러리(1727); SSL(1729); 및 SQ라이트(SQLite) 라이브러리(1730)를 포함한다.
운영 체제 런타임(1702)은 코어 자바 라이브러리(1731)와 달빅(Dalvik) 가상 머신(1732)을 포함한다. 달빅 가상 머신(1732)은 맞춤형 파일 포맷(.DEX)을 실행하는 맞춤 가상 머신이다.
또한, 운영 체제(1614)는 도 17에 도시된 바와 같이, MIDP JSRs(JAVA Specification Requests) 구성요소와 같은 MIDP(Mobile Information Device Profile) 구성요소, MIDP 런타임, 및 MIDP 애플리케이션을 포함할 수 있다. MIDP 구성요소는 디바이스(1500)상에서 실행되는 MIDP 애플리케이션을 지원할 수 있다.
그래픽 랜더링에 관해서는, 시스템 광역 조정자(system-wide-composer)는 OpenGL ES(1724) 및 그 요소에 대해 2차원 하드웨어 가속기를 사용하여, 표면 및 프레임 버퍼를 관리하고 원도우 천이를 처리한다.
달빅 가상 머신(1732)은 런타임 메모리를 매우 효율적으로 사용하고, CPU-최적화 바이트코드 인터프리터(CPU-optimized bytecode interpreter)를 구현하고, 디바이스 당 다중 가상 머신 프로세스를 지원하므로, 임베디스 환경에서 사용될 수 있다. 런타임 효율을 위해 맞춤 파일 포맷(.DEX)은, 메모리를 감소시키기 위한 공유 상수 풀(constant pool), 교차 프로세스 공유(cross-process sharing)를 개선하기 위한 읽기 전용 구조, 분석 시간(parse time)을 감소시키는 간결하고, 고정 폭인 명령어를 사용하여 설계되므로, 인스톨된 애플리케이션은 빌드 시점(build-time)에서 맞춤 파일 형식으로 번역된다. 연관된 바이트코드는 신속한 해석을 위해 설계되는데, 스택-기반이 아닌 레지스터-기반 명령어는 메모리 및 디스패치 오버 헤드를 감소시키고, 고정폭 명령어를 사용하는 것은 분석을 단순화시키고, 16 비트 코드 유닛은 판독을 최소화시키기 때문이다.
애플리케이션 라이브러리(1704)는 뷰 시스템(1734), 리소스 관리자(1735), 및 컨텐츠 제공자(1737)를 포함한다. 시스템 서비스(1705)는 상태 바(1739), 애플리케이션 시작자(1740); 모든 인스톨된 애플리케이션을 위한 정보를 유지 보수(maintain)하는 패키지 관리자(1741); 애플리케이션 레벨 자바 인터페이스를 전화 서브시스템(1620)에 제공하는 전화 관리자(1742); 모든 애플리케이션이 예를 들어, 상술한 실시예에서 설명된 방식으로 상태 바와 온-스크린 통지(notification)에 액세스할 수 있도록 하는 통지 관리자(1744); 다중 윈도우를 갖는 다중 애플리케이션이 디스플레이(1501)을 공유할 수 있도록 하는 윈도우 관리자(1745); 및 분리된 프로세스로 각 애플리케이션을 실행하고, 애플리케이션 라이프 사이클을 관리하고, 교차-애플리케이션 이력을 유지 보수하는 활동 관리자(1746)를 포함한다.
애플리케이션(1706)은 홈 애플리케이션(1747), 다이얼 애플리케이션(1749), 접촉 애플리케이션(1750), 브라우저 애플리케이션(1751), 및 다중음성 검출 애플리케이션을 포함한다.
전화 관리자(1742)는 이벤트 통지(예컨대, 전화 상태, 네트워크 상태, SIM(Subscriber Identity Module) 상태, 또는 음성메일 상태)를 제공하고, 상태 정보(예컨대, 네트워크 정보, SIM 정보, 또는 음성메일 존재)에 대한 액세스를 허용하고, 호를 개시하고, 및 호 상태를 질의 및 제어한다. 브라우저 애플리케이션(751)은, 내비게이션 기능을 포함하는 완전한 데스크탑형 관리자(desktop-like manager)에서 웹 페이지를 랜더링한다. 더욱이, 브라우저 애플리케이션(751)은 단일 컬럼, 소형 스크린 랜더링을 허용하고, 다른 애플리케이션으로 HTML 뷰(view)의 내장(embedding)을 지원한다.
도 18은 운영 체제 커널(1800)에 의해 구현되는 예시적인 프로세스를 도시하는 블록도이다. 일반적으로, 애플리케이션 및 시스템 서비스는 개별 프로세스에서 실행되며, 활동 관리자(1746)는 각 애플리케이션을 개별 프로세스에서 실행하고, 애플리케이션 라이프 사이클을 관리한다. 애플리케이션은 자신의 고유 프로세스에서 실행된다. 하지만, 많은 활동 또는 서비스가 동일한 프로세스에서 실행될 수 있다. 프로세스는 애플리케이션의 구성요소를 실행하기 위해, 필요에 따라 시작 및 정지되며, 프로세스는 리소스가 재이용될 수 있도록 종료될 수 있다. 각 애플리케이션은 자신의 프로세스를 할당받는데, 할당받는 프로세스의 이름은 애플리케이션의 패키지 이름이며, 애플리케이션의 개별적 부분은 다른 프로세스 이름을 할당받을 수 있다.
일부 프로세스는 지속될 수 있다. 예를 들어, 디바이스(1500)에 전원이 공급되는 동안, 표면 관리자(1816), 윈도우 관리자(1814), 또는 활동 관리자(1810)와 같은 코어 시스템 구성요소와 연관되는 프로세스는 지속적으로 실행될 수 있다. 부가적으로, 일부 애플리케이션-특정 프로세스도 또한 지속될 수 있다. 예를 들어, 다이얼 애플리케이션(1821)과 연관되는 프로세스는 지속될 수 있다.
운영 체제 커널(1800)에 의해 구현되는 프로세스는 일반적으로 시스템 서비스 프로세스(1801), 다이얼 프로세스(1802), 브라우저 프로세스(1804), 지도 프로세스(1805)로서 분류될 수 있다. 시스템 서비스 프로세스(1801)는 상태 바(1739)와 연관된 상태 바 프로세스(1806); 애플리케이션 시작자(1740)와 연관되는 애플리케이션 시작 프로세스(1807); 패키지 관리자(1741)와 연관된 패키지 관리자 프로세스(1809); 활동 관리자(1746)와 연관된 활동 관리 프로세스(1810); 그래픽, 국소화된(localized) 스트링, 및 XML 레이아웃 설명으로의 액세스를 제공하는 리소스 관리자(1735)와 연관된 리소스 관리 프로세스(1811); 통지 관리자(1744)와 연관된 통지 관리 프로세스(1812); 윈도우 관리자(1745)와 연관된 윈도우 관리자 프로세스(1814); 코어 자바 라이브러리(1731)와 연관된 코어 자바 라이브러리 프로세스(1815); 표면 관리자(721)와 연관된 표면 관리자 프로세스(1816); 및 달빅 가상 머신(1732)과 연관된 달빅 가상 머신 프로세스(1817); LIBC 라이브러리(1725)와 연관된 LIBC 프로세스(1819); 및 다중음성 검출 애플리케이션(1752)과 연관된 다중음성 검출 프로세스(1820)를 포함할 수 있다.
다이얼 프로세스(1802)는 다이얼 애플리케이션(1749)과 연관된 다이얼 애플리케이션 프로세스(1821); 전화 관리자(1742)와 연관된 전화 관리자 프로세스(1822); 코어 자바 라이브러리(1731)와 연관된 코어 자바 라이브러리 프로세스(1824); 달빅 가상 머신(1732)과 연관된 달빅 가상 머신 프로세스(1825); 및 LIBC 라이브러리(1725)와 연관된 LIBC 프로세스(1826)를 포함한다. 브라우저 프로세스(1804)는 브라우저 애플리케이션(1751)에 연관된 브라우저 애플리케이션 프로세스(1827); 코어 자바 라이브러리(1731)와 연관된 코어 자바 라이브러리 프로세스(1829); 달빅 가상 머신(1732)과 연관된 달빅 가상 머신 프로세스(1830); LIBWEBCORE 라이브러리(1725)와 연관된 LIBWEBCORE 프로세스(1831); 및 LIBC 라이브러리(1725)와 연관된 LIBC 프로세스(1832)를 포함한다.
지도 프로세스(1805)는 지도 애플리케이션 프로세스(1834), 코어 자바 라이브러리 프로세스(1835), 달빅 가상 머신 프로세스(1836), 및 LIBC 프로세스(1837)를 포함한다. 특히, 달릭 가상 머신 프로세스와 같은 일부 프로세스는 시스템 서비스 프로세스(1801), 다이얼 프로세스(1802), 브라우저 프로세스(1804), 및 지도 프로세스(1805) 중 하나 이상에 존재할 수 있다.
도 19는 일반적인 컴퓨팅 디바이스(1900)와 일반적인 모바일 컴퓨팅 디바이스(1950)의 예시를 나타낸다. 컴퓨팅 디바이스(1900)는 랩탑, 데스트탑, 워크스테이션, PDA, 서버, 블레이드(blade) 서버, 메인프레임, 및 그 밖의 적절한 컴퓨터들과 같은 다양한 형태의 디지털 컴퓨터를 나타내기 위해 사용된다. 컴퓨팅 디바이스(1950)는 PDA, 셀룰라 전화, 스마트폰, 및 그 밖의 유사한 컴퓨팅 디바이스와 같은 다양한 형태의 모바일 디바이스를 나타내기 위해 사용된다. 본 명세서에서 나타낸 구성요소, 그들의 접속 및 관계, 및 그들의 기능들은 단지 예시적인 것을 의미하고, 본 명세서에서 설명하거나 또는 청구된 발명의 구현예를 제한하는 것을 의미하지 않는다.
컴퓨팅 디바이스(1900)는 프로세서(1902), 메모리(1904), 저장 디바이스(1906), 메모리(1904)에 접속하는 고속 인터페이스(908)와 고속 확장 포트(1910), 및 저속 버스(1914)와 저장 디바이스(1906)에 접속하는 저속 인터페이스(1912)를 포함한다. 각 구성요소(1902, 1904, 1906, 1908, 1910, 및 1912)는 다양한 버스들을 사용하여 서로 접속되고, 일반적인 마더보드 또는 적절한 경우 다른 방식으로 탑재될 수 있다. 프로세서(1902)는 컴퓨팅 디바이스(1900) 내에서 실행하기 위한 명령어를 처리할 수 있으며, 이러한 명령어에는, 고속 인터페이스(1908)에 연결된 디스플레이(1916)와 같은 외장 입/출력 디바이스상에서 GUI용 그래픽 정보를 디스플레이하기 위해, 메모리(1904) 또는 저장 디바이스(1906)에 저장되는 명령어가 포함된다. 다른 구현예에서, 다중 프로세서 및/또는 다중 버스는 적절한 경우, 다중 메모리 및 메모리 타입과 함께 사용될 수 있다. 또한, 다중 컴퓨팅 디바이스(1900)는 각 디바이스가 필요 동작의 부분을 제공하는 형태(예를 들어, 서버 뱅크, 블레이드 서버의 그룹, 또는 다중 프로세서 시스템)로 접속될 수 있다.
메모리(1904)는 컴퓨팅 디바이스(1900)내에 정보를 저장한다. 일 구현예에서, 메모리(1904)는 휘발성 메모리 유닛 또는 유닛들이다. 또 다른 구현에서, 메모리(1904)는 비휘발성 메모리 유닛 또는 유닛들이다. 또한, 메모리(1904)는 마그네틱 또는 광 디스크와 같은 다른 형태의 컴퓨터 판독가능 매체일 수 있다.
저장 디바이스(1906)는 컴퓨팅 디바이스(1900)를 위한 대용량 저장소(mass storage)를 제공할 수 있다. 일 구현예에서, 저장 디바이스(1906)는 플로피 디스크 디바이스, 하드 디스크 디바이스, 광 디스크 디바이스, 또는 테입 디바이스, 플래쉬 메모리 또는 다른 유사한 고체 상태 메모리 디바이스, 또는 저장 영역 네트워크 또는 다른 구성에 존재하는 디바이스를 포함하는 디바이스 어레이일 수 있다. 컴퓨터 프로그램 제품은 정보 캐리어(information carrier) 내에 유형적으로 구체화될 수 있다. 또한, 컴퓨터 프로그램 제품은 실행될 때, 상술한 것과 같은 하나 이상의 방법을 수행하는 명령어를 포함할 수 있다. 정보 캐리어는 메모리(1904), 저장 디바이스(1906), 프로세서(1902)상의 메모리, 또는 전파된 신호와 같은 컴퓨터 또는 기계 판독가능 매체이다.
저속 제어부(1912)가 저대역-집약적 동작(lower bandwidth-intensive operations)을 관리하는 반면, 고속 제어부(1908)는 컴퓨팅 디바이스(1900)에 대한 대역-집약적 동작을 관리한다. 이러한 기능들의 배치는 단지 예시적인 것이다. 일 구현예에서, 고속 제어부(1908)는 메모리(1904), 디스플레이(1916)(예를 들어, 그래픽 프로세서 또는 가속기를 통함)에 연결되고, 다양한 확장 카드(도시되지 않음)를 수용할 수 있는 고속 확장 포트(1910)에 연결된다. 일부 구현예에서는, 저속 제어부(1912)는 저장 디바이스(1906) 및 저속 확장 포트(1914)에 연결된다. 다양한 통신 포트(예를 들어, USB, 블루투스, 이더넷, 무선 이더넷)를 포함할 수 있는 저속 확장 포트는 키보드, 포인팅 디바이스, 스캐너와 같은 하나 이상의 입/출력 디바이스들에 연결되거나, 또는 예컨대 네트워크 어댑터를 통하여, 스위치나 라우터와 같은 네트워킹 디바이스에 연결될 수 있다.
컴퓨팅 디바이스(1900)는 도면에 도시된 바와 같이, 복수의 다른 형태로 구현될 수 있다. 예를 들어, 컴퓨팅 디바이스(1900)는 표준 서버(1920)로 구현되거나 이러한 서버들의 그룹에서 여러 번(multiple time) 구현될 수 있다. 또한, 컴퓨팅 디바이스(1900)는 랙 서버 시스템(1924)의 부분으로서 구현될 수 있다. 이에 더하여, 컴퓨팅 디바이스(1900)는 랩탑 컴퓨터(1922)와 같은 개인용 컴퓨터내에 구현될 수 있다. 선택적으로, 컴퓨팅 디바이스(1900)로부터의 구성요소는 디바이스(1950)와 같은 모바일 디바이스(도시되지 않음)내 다른 구성요소와 조합될 수 있다. 이러한 디바이스 각각은 하나 이상의 컴퓨팅 디바이스(1900, 1950)를 포함하고, 전체 시스템은 서로 통신하는 다중 컴퓨팅 디바이스(1900, 1950)로 구성될 수 있다.
컴퓨팅 디바이스(1950)는 여러 구성요소 중에서 프로세서(1952), 메모리(1964), 디스플레이(1954)와 같은 입/출력 디바이스, 통신 인터페이스(1966), 및 트랜스시버(1968)를 포함한다. 또한, 디바이스(1950)에는 추가적인 저장소를 제공하기 위하여, 마이크로 드라이브 또는 다른 디바이스와 같은 저장 디바이스가 제공될 수 있다. 각 구성요소(1950, 1952, 1964, 1954, 1966, 및 1968)는 다양한 버스를 이용하여 서로 접속되고, 구성요소의 몇몇은 통상의 마더보스에 탑재되거나 적절한 다른 방법으로 탑재될 수 있다.
프로세서(1952)는 컴퓨팅 디바이스(1950) 내에서 명령어를 실행하며, 이 명령어에는 메모리(1964)에 저장된 명령어가 포함된다. 프로세서는 개별적이고 다중의 아날로그 및 디지털 프로세서를 포함하는 칩들의 칩 세트로서 구현될 수 있다. 프로세서는, 예를 들어, 사용자 인터페이스의 컨트롤, 디바이스(1950)에 의해 실행되는 애플리케이션, 및 컴퓨팅 디바이스(1950)에 의한 무선 통신과 같은 디바이스(1950)의 다른 구성요소들 사이에 조정을 제공할 수 있다.
프로세서(1952)는 제어 인터페이스(1958) 및 디스플레이(1954)에 연결된 디스플레이 인터페이스(1956)를 통해 사용자와 통신할 수 있다. 디스플레이(1954)는, 예를 들어, TFT LCD(Thin-Film-Tansistor Liquid Crystal Display) 또는 OLED(Organic Light Emitting Diode) 디스플레이, 또는 다른 적절한 디스플레이 기술일 수 있다. 디스플레이 인터페이스(1956)는 그래픽 및 다른 정보를 사용자에게 나타내기 위해 디스플레이(1954)를 구동하는 적절한 회로를 포함할 수 있다. 제어 인터페이스(1958)는 사용자로부터 명령들을 수신하고, 프로세서(1952)에 제출하기 위해 그 명령들을 변환한다. 더욱이, 확장 인터페이스(1962)는 디바이스(1950)와 다른 디바이스들간에 근거리 통신이 가능하도록 하기 위해, 프로세서(1952)와의 통신에 제공될 수 있다. 확장 인터페이스(1962)는, 예를 들어, 일부 구현예에서는 유선 통신을 제공하고 다른 구현예에서 무선 통신을 제공하며, 또한 다중 인터페이스가 사용될 수 있다.
메모리(1964)는 컴퓨팅 디바이스(1950)내에 정보를 저장한다. 메모리(1964)는 컴퓨터 판독가능 매체 또는 미디어, 휘발성 메모리 유닛 또는 유닛들, 또는 비휘발성 메모리 유닛 또는 유닛들 중 하나 이상으로서 구현될 수 있다. 또한, 확장 메모리(1974)가 제공되어, 예를 들어 SIMM(Single In Line Memory Module) 카드 인터페이스를 포함하는 확장 인터페이스(1972)를 통해 디바이스(1950)에 접속될 수 있다. 이러한 확장 메모리(1974)는 디바이스(1950)를 위한 여분의 저장 공간을 제공할 수 있고, 또한 애플리케이션 또는 디바이스(1950)를 위한 다른 정보를 저장할 수 있다. 특히, 확장 메모리(1974)는 상술된 프로세스를 실행하거나 보조하기 위한 명령어를 포함하고, 또한 보안 정보를 포함할 수 있다. 따라서, 예를 들어, 확장 메모리(1974)는 디바이스(1950)용 보안 모듈(security module)로서 제공될 수 있고, 디바이스(1950)의 안전한 사용을 가능하게 하는 명령어로 프로그램될 수 있다. 더욱이, 보안 애플리케이션은, 해킹할 수 없는 방식(non-hackable manner)으로 SIMM 카드상에 식별 정보를 위치시킨 것과 같은 추가적 정보와 함께 SIMM 카드를 통해 제공될 수 있다.
메모리는 아래에서 논의되는 것과 같이 예를 들어, 플래시 메모리 및/또는 NVRAM 메모리를 포함할 수 있다. 일 구현예에서, 컴퓨터 프로그램 제품은 정보 캐리어에 유형적으로 구체화된다. 컴퓨터 프로그램 제품은 실행될 때, 상술된 것과 같은 하나 이상의 방법을 수행하는 명령어를 포함한다. 정보 캐리어는 메모리(1964), 확장 메모리(1974), 프로세서(1952)상의 메모리, 또는 예를 들어 트랜스시버(1968) 또는 확장 인터페이스(1962)를 통해 수신될 수 있는 전달된 신호와 같은 컴퓨터-또는 기계-판독가능 매체이다.
디바이스(1950)는 디지털 신호 처리 회로를 필요에 따라 포함하는 통신 인터페이스(1966)를 통해 무선으로 통신할 수 있다. 통신 인터페이스(1966)는 GSM 음성 호, SMS, EMS, 또는 MMS 메시징, CDMA, TDMA, PDC, WCDMA, CDMA2000, 또는 GPRS 등과 같은 다양한 모드 또는 프로토콜 하에서의 통신을 제공할 수 있다. 이러한 통신은 예를 들어, 무선-주파수 트랜스시버(1968)를 통해 수행될 수 있다. 또한, 단거리(short range) 통신은 예를 들어, 블루투스, WiFi, 또는 다른 이러한 트랜스시버(도시되지 않음)를 사용하여 수행될 수 있다. 이에 더하여, GPS(Global Position System) 수신기 모듈(1970)은 추가적인 항법- 및 위치- 관련 무선 데이터를 디바이스(1950)에 제공할 수 있다. 이 무선 데이터는 디바이스(1950)에서 실행중인 애플리케이션에 의해 적절하게 사용될 수 있다.
또한, 디바이스(1950)는 사용자로부터의 발화 정보(spoken information)를 수신하고, 그 발화 정보를 사용가능한 디지털 정보로 변환하는 오디오 코덱(1960)을 이용하여, 청취가능하게(audibly) 통신할 수 있다. 또한, 오디오 코덱(1960)은 예를 들어, 디바이스(1950)의 핸드셋 내의 스피커를 통하는 것과 같이 해서, 사용자가 들을 수 있는 음향을 생성한다. 이러한 음향은 음성 전화 호로부터의 음향을 포함할 수 있고, 녹음된 음향(예를 들어, 음성 메시지, 음악 파일 등)을 포함할 수 있고, 또한 디바이스(1950)상에서 동작하는 애플리케이션에 의해 생성된 음향을 포함할 수 있다.
컴퓨팅 디바이스(1950)는 도면에 도시된 바와 같이, 복수의 다양한 형태로 구현될 수 있다. 예를 들어, 컴퓨팅 디바이스(1950)는 셀룰러 폰(1980)으로서 구현될 수 있다. 또한, 컴퓨팅 디바이스(1950)는 스마트폰(1982), PDA, 또는 다른 유사한 모바일 디바이스의 부분으로서 구현될 수 있다.
디바이스(1950)는 또한 모션을 감지할 수 있는 하나 이상의 다른 디바이스들을 포함한다. 예로서 가속도계 및 나침반을 포함하고, 이에 한정되지는 않는다. 모션 또는 위치를 검출할 수 있는 가속도계와 나침반, 또는 다른 디바이스들은 많은 상인들로부터 이용가능하고 다양한 방식으로 모션을 감지할 수 있다. 예를 들어, 나침반이 각자 자성의 N극 또는 S극으로의 방위에서 변화를 검출할 수 있는 반면 가속도계는 가속도에서의 변화를 검출할 수 있다. 모션에서 이러한 변화들은 디바이스(1950)에 의해 검출되고 여기 설명된 프로세스와 기술에 따라 각자의 디바이스(1950)의 디스플레이를 갱신하기 위해 사용된다.
본 명세서에 기재된 시스템의 다양한 구현예와 기술은 디지털 전자 회로, 집적 회로, 특별하게 설계된 ASICs(Application Specific Intergrated Circuit), 컴퓨터 하드웨어, 펌웨어, 소프트웨어, 및/또는 그것의 조합물로 실현될 수 있다. 이러한 다양한 구현예는 하나 이상의 컴퓨터 프로그램으로 된 구현예를 포함하며, 이 컴퓨터 프로그램은 적어도 하나의 프로그램 가능한 프로세서를 포함하는 프로그램 가능한 시스템에서 실행가능하고 및/또는 해석가능하다. 또한, 전용 또는 범용 프로세서일 수 있는 이 프로그램 가능한 프로세서는 데이터와 명령어를 송수신하기 위해, 저장 시스템, 적어도 하나의 입력 디바이스 및 적어도 하나의 수신 디바이스에 연결된다.
컴퓨터 프로그램(또한 프로그램, 소프트웨어, 소프트웨어 애플리케이션, 또는 코드로 알려짐)은 프로그램 가능한 프로세서를 위한 기계 명령어를 포함하고, 고레벨 절차 및/또는 객체 지향 프로그램 언어(object-oriented programming language) 및/또는 어셈블리/기계 언어로 구현될 수 있다. 본 명세서에서 사용되는 바와 같이, 용어 "기계 판독가능 매체(machine-readable medium)"와 "컴퓨터 판독가능 매체(computer-readable medium)"는 기계 명령어 및/또는 데이터를 프로그램 가능한 프로세서에 제공하기 위해 이용되는 임의의 컴퓨터 프로그램 제품, 장치, 및/또는 디바이스(예를 들어, 마그네틱 디스크, 광학 디스크, 메모리, PLDs(Programmable Logic Devices))를 가리키며, 기계 판독가능 신호와 같은 기계 명령어를 수신하는 기계 판독가능 매체를 포함한다. 용어 "기계 판독가능 신호(machine-readable signal)"는 기계 명령어 및/또는 데이터를 프로그램 가능한 프로세서에 제공하기 위해 사용되는 임의의 신호를 가리킨다.
사용자와의 상호 작용을 제공하기 위하여, 본 명세서에 기술된 시스템과 기술은, 정보를 사용자에게 디스플레이하기 위한 디스플레이 디바이스(예를 들어, CRT(cathode ray tube) 또는 LCD(liquid crystal display) 모니터)와 사용자가 컴퓨터에 입력을 제공할 수 있는 키보드 및 포인팅 디바이스(예를 들어, 마우스 또는 트랙볼)를 구비한 컴퓨터상에서 구현될 수 있다. 사용자와의 상호 작용을 제공하기 위하여 다른 종류의 디바이스가 또한 사용될 수 있다; 예를 들어, 사용자에게 제공되는 피드백(feedback)은 임의 형태의 감각 피드백(예를 들어, 시각 피드백, 청각 피드백 또는 촉각 피드백)일 수 있고, 사용자로부터의 입력은 음향적인(acoustic), 음성(speech) 또는 촉각(tactile) 입력을 포함하는 임의의 형태로 수신될 수 있다.
본 명세서에서 설명한 시스템과 기술은, 백 엔드(back end) 구성요소(예를 들어, 데이터 서버와 같은), 또는 미들웨어 구성요소(예를 들어, 애플리케이션 서버), 또는 프론트 엔드(front end) 구성요소(예를 들어, 본 명세서에서 설명된 시스템 및 기술의 구현예와 사용자가 상호 작용할 수 있는 그래픽 사용자 인터페이스 또는 웹브라우저를 구비한 클라이언트 컴퓨터), 또는 이러한 백 엔드, 미들웨어, 또는 프론트 엔드 구성요소들의 임의 조합을 포함하는 컴퓨팅 시스템으로 구현될 수 있다. 시스템의 구성요소는 디지털 데이터 통신의 임의 형태 또는 매체(예를 들어, 통신 네트워크)에 의해 상호 접속될 수 있다. 통신 네트워크의 예로서, 근거리 네트워크(LAN), 광역 네트워크(WAN), 및 인터넷이 있다.
컴퓨팅 시스템은 클라이언트와 서버를 포함할 수 있다. 클라이언트와 서버는 보통 서로 떨어져 있으며, 일반적으로는 통신 네트워크를 통하여 상호 작용한다. 클라이언트와 서버의 관계는 각각의 컴퓨터상에서 실행되고 상호 클라이언트-서버 관계를 갖는 컴퓨터 프로그램에 의하여 발생한다.
더욱이, 도면에서 묘사된 로직 흐름은 희망하는 결과를 달성하기 위해, 도시된 특정 순서 또는 시계열적 순서일 필요는 없다. 다른 단계들이 제공되거나, 그로부터 단계들이 제거될 수 있으며, 다른 구성요소들이 설명된 시스템에 추가되거나 그로부터 제거될 수 있다. 따라서 다른 실시예는 후술하는 청구범위의 범위 내에 속한다.

Claims (26)

  1. 컴퓨터로 구현되는 방법으로서,
    모바일 디바이스의 제1 방향(orientation)을 결정하는 단계와;
    상기 모바일 디바이스의 제1 방향에 기초하여 제1 음성 에너지 문턱값(speech energy threshold)을 결정하는 단계 - 상기 제1 음성 에너지 문턱값은 상기 모바일 디바이스의 사용자가 말하기(speaking)를 중단했는지 여부를 결정하기 위해 사용가능하고 - 와;
    하나 이상의 프로세서들을 이용하여, 제1 검출된 청각적 정보와 상기 제1 음성 에너지 문턱값의 비교에 기초하여 상기 모바일 디바이스의 사용자가 말하기를 중단했는지를 검출하는 단계와;
    상기 모바일 디바이스의 제2 방향을 결정하는 단계 - 상기 모바일 디바이스의 제2 방향은 상기 모바일 디바이스의 제1 방향과는 구별되고 - 와;
    상기 모바일 디바이스의 제2 방향에 기초하여 제2 음성 에너지 문턱값을 결정하는 단계 - 상기 제2 음성 에너지 문턱값은 상기 모바일 디바이스의 사용자가 말하기를 중단했는지 여부를 결정하기 위해 사용가능하고, 상기 제2 음성 에너지 문턱값은 상기 제1 음성 에너지 문턱값과 구별되고 - 와; 그리고
    상기 하나 이상의 프로세서들을 이용하여, 제2 검출된 청각적 정보와 상기 제2 음성 에너지 문턱값의 비교에 기초하여 상기 모바일 디바이스의 사용자가 말하기를 중단했는지를 검출하는 단계를 포함하며,
    상기 모바일 디바이스의 제1 방향에 기초하여 상기 제1 음성 에너지 문턱값을 결정하는 단계는,
    상기 모바일 디바이스의 제1 방향에 기초하여 상기 모바일 디바이스의 제1 동작 모드를 결정하는 단계와, 그리고
    상기 모바일 디바이스의 제1 동작 모드에 기초한 제1 음성 검출 파라미터들을 식별하는 단계를 포함하고,
    상기 식별된 제1 음성 검출 파라미터들은 상기 제1 음성 에너지 문턱값을 정의하는 것을 특징으로 하는 컴퓨터로 구현되는 방법.
  2. 청구항 1에 있어서,
    상기 모바일 디바이스의 제1 방향을 결정하는 단계는 상기 모바일 디바이스의 각도(angle)를 검출하는 단계를 포함하는 것을 특징으로 하는 컴퓨터로 구현되는 방법.
  3. 청구항 1에 있어서,
    상기 모바일 디바이스의 제1 방향을 결정하는 단계는 상기 모바일 디바이스의 사용자에 대한 상기 모바일 디바이스의 근접성(proximity)을 검출하는 단계를 포함하는 것을 특징으로 하는 컴퓨터로 구현되는 방법.
  4. 청구항 1에 있어서,
    음성 검출이 시작되었거나 끝났음을 상기 모바일 디바이스의 사용자에게 표시하는 단계를 더 포함하는 것을 특징으로 하는 컴퓨터로 구현되는 방법.
  5. 청구항 1에 있어서,
    상기 모바일 디바이스의 제1 방향에 기초하여 제1 음성 에너지 문턱값을 결정하는 단계는, 복수의 음성 에너지 문턱값들 중에서 상기 제1 음성 에너지 문턱값을 선택하는 단계를 포함하는 것을 특징으로 하는 컴퓨터로 구현되는 방법.
  6. 삭제
  7. 청구항 1에 있어서,
    상기 모바일 디바이스의 제2 방향에 기초하여 상기 제2 음성 에너지 문턱값을 결정하는 단계는,
    상기 모바일 디바이스의 제2 방향에 기초하여 상기 모바일 디바이스의 제2 동작 모드를 결정하는 단계 - 상기 제2 동작 모드는 상기 제1 동작 모드와 구별되고 - 와; 그리고
    상기 모바일 디바이스의 제2 동작 모드에 기초한 제2 음성 검출 파라미터들을 식별하는 단계를 포함하고,
    상기 식별된 제2 음성 검출 파라미터들은 상기 제2 음성 에너지 문턱값을 정의하는 것을 특징으로 하는 컴퓨터로 구현되는 방법.
  8. 청구항 1에 있어서,
    상기 제1 음성 에너지 문턱값은, 상기 모바일 디바이스가 상기 제1 방향일 때 상기 모바일 디바이스의 사용자와 상기 모바일 디바이스 간 거리에 기초하여, 적어도 부분적으로 결정되는 것을 특징으로 하는 컴퓨터로 구현되는 방법.
  9. 청구항 1에 있어서,
    하나 이상의 프로세서들을 이용하여, 상기 모바일 디바이스의 사용자가 제1 검출된 청각적 정보와 상기 제1 음성 에너지 문턱값의 비교에 기초하여 말하기를 중단했는지를 검출하는 단계는,
    청각적 입력의 음량(volume)과 상기 제1 음성 에너지 문턱값을 비교하는 단계와;
    상기 청각적 입력의 음량이 상기 제1 음성 에너지 문턱값 아래인지를 식별하는 단계와; 그리고
    상기 청각적 입력의 음량이 상기 제1 음성 에너지 문턱값 아래임을 식별함에 응답하여, 상기 모바일 디바이스의 사용자가 말하기를 중단했다라고 결정하는 단계를 포함하는 것을 특징으로 하는 컴퓨터로 구현되는 방법.
  10. 하나 이상의 컴퓨터들을 포함하는 시스템으로서, 상기 컴퓨터는:
    모바일 디바이스의 제1 방향 및 제2 방향을 검출하는 적어도 하나의 센서와; 그리고
    상기 모바일 디바이스의 상기 검출된 제1 방향에 기초하여 제1 음성 에너지 문턱값 및 상기 모바일 디바이스의 검출된 제2 방향에 기초하여 제2 음성 에너지 문턱값을 식별하는 음성 엔드포인터(speech endpointer)를 구비하고,
    상기 제1 음성 에너지 문턱값은 상기 모바일 디바이스의 사용자가 말하기를 중단했는지 여부를 결정하기 위해 사용가능하고, 상기 제2 음성 에너지 문턱값은 상기 모바일 디바이스의 사용자가 말하기를 중단했는지 여부를 결정하기 위해 사용가능하며, 상기 제1 음성 에너지 문턱값은 상기 제2 음성 에너지 문턱값과 구별되며,
    상기 음성 엔드포인터는 또한, 상기 모바일 디바이스의 제1 방향에 기초하여 상기 모바일 디바이스의 제1 동작 모드를 결정하고, 그리고 상기 모바일 디바이스의 제1 동작 모드에 기초한 제1 음성 검출 파라미터들을 식별하도록 구성되고, 상기 식별된 제1 음성 검출 파라미터들은 상기 제1 음성 에너지 문턱값을 정의하는 것을 특징으로 하는 시스템.
  11. 청구항 10에 있어서,
    상기 적어도 하나의 센서는 근접 센서(proximity sensor)를 포함하는 것을 특징으로 하는 시스템.
  12. 청구항 10에 있어서,
    상기 모바일 디바이스의 움직임들을 분류하는 제스처 분류기(gesture classifier)를 더 포함하는 것을 특징으로 하는 시스템.
  13. 하나 이상의 컴퓨터들을 포함하는 시스템으로서, 상기 컴퓨터는:
    모바일 디바이스의 제1 방향 및 제2 방향을 검출하는 적어도 하나의 센서와; 그리고
    상기 모바일 디바이스의 상기 검출된 제1 방향에 기초하여 제1 음성 에너지 문턱값을 식별하고 그리고 상기 모바일 디바이스의 검출된 제2 방향에 기초하여 제2 음성 에너지 문턱값을 식별하는 수단을 구비하고,
    상기 제1 음성 에너지 문턱값은 상기 모바일 디바이스의 사용자가 말하기를 중단했는지 여부를 결정하기 위해 사용가능하고, 상기 제2 음성 에너지 문턱값은 상기 모바일 디바이스의 사용자가 말하기를 중단했는지 여부를 결정하기 위해 사용가능하고, 상기 제1 음성 에너지 문턱값은 상기 제2 음성 에너지 문턱값과 구별되며,
    상기 모바일 디바이스의 제1 방향에 기초하여 상기 제1 음성 에너지 문턱값을 식별하는 것은 상기 모바일 디바이스의 제1 방향에 기초하여 상기 모바일 디바이스의 제1 동작 모드를 결정하는 것과 그리고 상기 모바일 디바이스의 제1 동작 모드에 기초한 제1 음성 검출 파라미터들을 식별하는 것을 포함하고, 상기 식별된 제1 음성 검출 파라미터들은 상기 제1 음성 에너지 문턱값을 정의하는 것을 특징으로 하는 시스템.
  14. 컴퓨터로 구현되는 방법으로서,
    모바일 디바이스의 동작 환경에 있어서 배경 잡음(background noise)의 레벨을 결정하는 단계와;
    상기 결정된 배경 잡음의 레벨을 배경 잡음의 문턱값 레벨(threshold level)과 비교하는 단계와;
    하나 이상의 프로세서를 사용하고 그리고 상기 비교에 기초하여, 음성의 소스(source)에 대한 상기 모바일 디바이스의 상대적인 방향(relative orientation)과 관련된 상기 모바일 디바이스에 대한 권고된 포즈(recommanded pose)를 결정하는 단계 - 상기 결정은 상기 음성이 상기 모바일 디바이스의 사용자에 의해 발화(utter)되기 이전에 실질적으로 일어나고 - 와; 그리고
    상기 권고된 포즈에 대한 표시를 상기 모바일 디바이스의 사용자에게 출력하는 단계를 포함하고,
    상기 표시는, 상기 사용자가 상기 모바일 디바이스로 취해야 할 포즈를 상기 사용자에게 알려주는 것을 특징으로 하는 컴퓨터로 구현되는 방법.
  15. 청구항 14에 있어서,
    배경 잡음의 레벨을 결정하는 단계는 신호-대-잡음 비(signal-to-noise ratio)를 결정하는 단계를 포함하는 것을 특징으로 하는 컴퓨터로 구현되는 방법.
  16. 청구항 14에 있어서,
    상기 결정된 배경 잡음의 레벨이 상기 배경 잡음의 문턱값 레벨보다 크면, 하나 이상의 구두 검색 쿼리들(verbal search queries)의 입력을 가능하게 하는 음성 검색 옵션(voice search option)을 디스플레이하는 단계를 더 포함하는 것을 특징으로 하는 컴퓨터로 구현되는 방법.
  17. 청구항 14에 있어서,
    상기 모바일 디바이스에 의해 레코드된 오디오의 파형 표시를 디스플레이하는 단계를 더 포함하는 것을 특징으로 하는 컴퓨터로 구현되는 방법.
  18. 청구항 14에 있어서,
    상기 사용자가 말을 하고 있을 때, 상기 모바일 디바이스에 의해 레코드되고 있는 오디오의 표시를 디스플레이하는 단계를 더 포함하는 것을 특징으로 하는 컴퓨터로 구현되는 방법.
  19. 청구항 18에 있어서,
    상기 사용자가 말을 하고 있을 때, 상기 모바일 디바이스에 의해 레코드되고 있는 오디오의 표시를 디스플레이하는 단계는, 신호-대-잡음 비의 표시를 디스플레이하는 단계를 포함하는 것을 특징으로 하는 컴퓨터로 구현되는 방법.
  20. 청구항 19에 있어서,
    상기 사용자가 말을 하고 있을 때, 상기 모바일 디바이스에 의해 레코드되고 있는 오디오의 표시를 디스플레이하는 단계는, 상기 모바일 디바이스에 의해 레코드된 배경 잡음의 진폭 표시를 상기 신호-대-잡음 비의 표시 위에 중첩(overlay)하는 단계를 더 포함하는 것을 특징으로 하는 컴퓨터로 구현되는 방법.
  21. 삭제
  22. 삭제
  23. 삭제
  24. 삭제
  25. 삭제
  26. 삭제
KR1020117013049A 2008-11-10 2009-11-10 멀티센서 음성 검출 KR101734450B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11306108P 2008-11-10 2008-11-10
US61/113,061 2008-11-10
PCT/US2009/063874 WO2010054373A2 (en) 2008-11-10 2009-11-10 Multisensory speech detection

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020177011837A Division KR101829865B1 (ko) 2008-11-10 2009-11-10 멀티센서 음성 검출

Publications (2)

Publication Number Publication Date
KR20110100620A KR20110100620A (ko) 2011-09-14
KR101734450B1 true KR101734450B1 (ko) 2017-05-11

Family

ID=41531538

Family Applications (6)

Application Number Title Priority Date Filing Date
KR1020187004074A KR20180019752A (ko) 2008-11-10 2009-11-10 멀티센서 음성 검출
KR1020197007047A KR102128562B1 (ko) 2008-11-10 2009-11-10 멀티센서 음성 검출
KR1020177011837A KR101829865B1 (ko) 2008-11-10 2009-11-10 멀티센서 음성 검출
KR1020207018169A KR102339297B1 (ko) 2008-11-10 2009-11-10 멀티센서 음성 검출
KR1020217040107A KR20210152028A (ko) 2008-11-10 2009-11-10 멀티센서 음성 검출
KR1020117013049A KR101734450B1 (ko) 2008-11-10 2009-11-10 멀티센서 음성 검출

Family Applications Before (5)

Application Number Title Priority Date Filing Date
KR1020187004074A KR20180019752A (ko) 2008-11-10 2009-11-10 멀티센서 음성 검출
KR1020197007047A KR102128562B1 (ko) 2008-11-10 2009-11-10 멀티센서 음성 검출
KR1020177011837A KR101829865B1 (ko) 2008-11-10 2009-11-10 멀티센서 음성 검출
KR1020207018169A KR102339297B1 (ko) 2008-11-10 2009-11-10 멀티센서 음성 검출
KR1020217040107A KR20210152028A (ko) 2008-11-10 2009-11-10 멀티센서 음성 검출

Country Status (5)

Country Link
US (9) US9009053B2 (ko)
EP (3) EP3258468B1 (ko)
JP (1) JP5538415B2 (ko)
KR (6) KR20180019752A (ko)
WO (1) WO2010054373A2 (ko)

Families Citing this family (368)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8677377B2 (en) 2005-09-08 2014-03-18 Apple Inc. Method and apparatus for building an intelligent automated assistant
US9318108B2 (en) 2010-01-18 2016-04-19 Apple Inc. Intelligent automated assistant
WO2008095167A2 (en) 2007-02-01 2008-08-07 Personics Holdings Inc. Method and device for audio recording
US8977255B2 (en) 2007-04-03 2015-03-10 Apple Inc. Method and system for operating a multi-function portable electronic device using voice-activation
US9954996B2 (en) 2007-06-28 2018-04-24 Apple Inc. Portable electronic device with conversation management for incoming instant messages
US10002189B2 (en) 2007-12-20 2018-06-19 Apple Inc. Method and apparatus for searching using an active ontology
US9330720B2 (en) 2008-01-03 2016-05-03 Apple Inc. Methods and apparatus for altering audio output signals
US8996376B2 (en) 2008-04-05 2015-03-31 Apple Inc. Intelligent text-to-speech conversion
US20100030549A1 (en) 2008-07-31 2010-02-04 Lee Michael M Mobile device having human language translation capability with positional feedback
US8676904B2 (en) 2008-10-02 2014-03-18 Apple Inc. Electronic devices with voice command and contextual data processing capabilities
JP5538415B2 (ja) 2008-11-10 2014-07-02 グーグル・インコーポレーテッド 多感覚応用音声検出
US8099134B2 (en) 2008-12-19 2012-01-17 Verizon Patent And Licensing Inc. Visual manipulation of audio
US8731533B2 (en) * 2009-03-03 2014-05-20 Peter Roach Methods and apparatuses for reconnecting calls with quality problems or reconnecting dropped calls
US10241644B2 (en) 2011-06-03 2019-03-26 Apple Inc. Actionable reminder entries
US10241752B2 (en) 2011-09-30 2019-03-26 Apple Inc. Interface for a virtual digital assistant
US10706373B2 (en) 2011-06-03 2020-07-07 Apple Inc. Performing actions associated with task items that represent tasks to perform
US9111538B2 (en) 2009-09-30 2015-08-18 T-Mobile Usa, Inc. Genius button secondary commands
US8995625B2 (en) 2009-09-30 2015-03-31 T-Mobile Usa, Inc. Unified interface and routing module for handling audio input
KR101613171B1 (ko) * 2009-10-29 2016-04-18 삼성전자주식회사 휴대용 단말기에서 통화 품질을 개선하기 위한 장치 및 방법
US8922485B1 (en) 2009-12-18 2014-12-30 Google Inc. Behavioral recognition on mobile devices
US10276170B2 (en) 2010-01-18 2019-04-30 Apple Inc. Intelligent automated assistant
US8682667B2 (en) 2010-02-25 2014-03-25 Apple Inc. User profiling for selecting user specific voice input processing information
US8428759B2 (en) * 2010-03-26 2013-04-23 Google Inc. Predictive pre-recording of audio for voice input
US9112989B2 (en) * 2010-04-08 2015-08-18 Qualcomm Incorporated System and method of smart audio logging for mobile devices
JP5625506B2 (ja) 2010-06-04 2014-11-19 ソニー株式会社 操作端末装置、電子機器、および電子機器システム
US9552299B2 (en) * 2010-06-11 2017-01-24 California Institute Of Technology Systems and methods for rapid processing and storage of data
JP5017441B2 (ja) * 2010-10-28 2012-09-05 株式会社東芝 携帯型電子機器
US8253684B1 (en) 2010-11-02 2012-08-28 Google Inc. Position and orientation determination for a mobile computing device
US20120226498A1 (en) * 2011-03-02 2012-09-06 Microsoft Corporation Motion-based voice activity detection
US9262612B2 (en) 2011-03-21 2016-02-16 Apple Inc. Device access using voice authentication
US9366749B2 (en) 2011-04-15 2016-06-14 Qualcomm Incorporated Device position estimates from motion and ambient light classifiers
US8700406B2 (en) * 2011-05-23 2014-04-15 Qualcomm Incorporated Preserving audio data collection privacy in mobile devices
US10715380B2 (en) 2011-05-23 2020-07-14 Apple Inc. Setting a reminder that is triggered by a target user device
US8971924B2 (en) 2011-05-23 2015-03-03 Apple Inc. Identifying and locating users on a mobile network
US9195309B2 (en) * 2011-05-27 2015-11-24 Qualcomm Incorporated Method and apparatus for classifying multiple device states
US10057736B2 (en) 2011-06-03 2018-08-21 Apple Inc. Active transport based notifications
US20130033418A1 (en) * 2011-08-05 2013-02-07 Qualcomm Incorporated Gesture detection using proximity or light sensors
WO2013022135A1 (en) * 2011-08-11 2013-02-14 Lg Electronics Inc. Electronic device and method of controlling the same
US20130083151A1 (en) * 2011-09-30 2013-04-04 Lg Electronics Inc. Electronic device and method for controlling electronic device
KR101780508B1 (ko) * 2011-10-14 2017-09-22 삼성전자주식회사 통화 시의 귀를 구별하기 위한 이동 단말 및 그 방법
EP2766901B1 (en) 2011-10-17 2016-09-21 Nuance Communications, Inc. Speech signal enhancement using visual information
US9526127B1 (en) 2011-11-18 2016-12-20 Google Inc. Affecting the behavior of a user device based on a user's gaze
US20150012426A1 (en) * 2013-01-04 2015-01-08 Visa International Service Association Multi disparate gesture actions and transactions apparatuses, methods and systems
US10223710B2 (en) 2013-01-04 2019-03-05 Visa International Service Association Wearable intelligent vision device apparatuses, methods and systems
CN102609091A (zh) * 2012-02-10 2012-07-25 北京百纳信息技术有限公司 一种移动终端以及启动移动终端语音操作的方法
EP2821916B1 (en) * 2012-02-27 2018-12-19 NEC Corporation Voice input device, voice input method and program
CN110164437B (zh) * 2012-03-02 2021-04-16 腾讯科技(深圳)有限公司 一种即时通信的语音识别方法和终端
US10134385B2 (en) 2012-03-02 2018-11-20 Apple Inc. Systems and methods for name pronunciation
US20130257753A1 (en) * 2012-04-03 2013-10-03 Anirudh Sharma Modeling Actions Based on Speech and Touch Inputs
US10417037B2 (en) 2012-05-15 2019-09-17 Apple Inc. Systems and methods for integrating third party services with a digital assistant
US9674694B2 (en) 2012-05-23 2017-06-06 Qualcomm Incorporated Systems and methods for group communication using a mobile device with mode transition based on motion
US9392421B2 (en) 2012-05-23 2016-07-12 Qualcomm Incorporated Systems and methods for group communication using a mobile device with mode depending on user proximity or device position
US9204263B2 (en) 2012-05-23 2015-12-01 Mark A. Lindner Systems and methods for establishing a group communication based on motion of a mobile device
US9560099B2 (en) 2012-05-23 2017-01-31 Qualcomm Incorporated Systems and methods for group communication using a mobile device using motion and voice activate controls
US9721563B2 (en) 2012-06-08 2017-08-01 Apple Inc. Name recognition system
WO2014010879A1 (ko) * 2012-07-09 2014-01-16 엘지전자 주식회사 음성 인식 장치 및 그 방법
JP6100263B2 (ja) * 2012-08-10 2017-03-22 株式会社ホンダアクセス 音声認識方法及び音声認識装置
US9323985B2 (en) * 2012-08-16 2016-04-26 Microchip Technology Incorporated Automatic gesture recognition for a sensor system
US9619812B2 (en) * 2012-08-28 2017-04-11 Nuance Communications, Inc. Systems and methods for engaging an audience in a conversational advertisement
CN102857612A (zh) * 2012-08-30 2013-01-02 广东欧珀移动通信有限公司 一种通话时自动录音的方法及手机
WO2014039106A1 (en) * 2012-09-10 2014-03-13 Google Inc. Answering questions using environmental context
US9588964B2 (en) 2012-09-18 2017-03-07 Adobe Systems Incorporated Natural language vocabulary generation and usage
US9436382B2 (en) * 2012-09-18 2016-09-06 Adobe Systems Incorporated Natural language image editing
US10656808B2 (en) 2012-09-18 2020-05-19 Adobe Inc. Natural language and user interface controls
US9412366B2 (en) 2012-09-18 2016-08-09 Adobe Systems Incorporated Natural language image spatial and tonal localization
US9141335B2 (en) 2012-09-18 2015-09-22 Adobe Systems Incorporated Natural language image tags
US9547647B2 (en) 2012-09-19 2017-01-17 Apple Inc. Voice-based media searching
JP5929698B2 (ja) 2012-10-17 2016-06-08 ソニー株式会社 通信システムおよびプログラム
KR101470900B1 (ko) * 2012-11-14 2014-12-09 최웅식 모바일 단말기에서의 음성/텍스트 변환방법 및 그 기록매체
CN102938808B (zh) * 2012-11-23 2016-03-23 小米科技有限责任公司 移动终端中的信息录制方法及装置
US9851787B2 (en) * 2012-11-29 2017-12-26 Microsoft Technology Licensing, Llc Display resource management
US9070366B1 (en) * 2012-12-19 2015-06-30 Amazon Technologies, Inc. Architecture for multi-domain utterance processing
US20140184495A1 (en) * 2012-12-31 2014-07-03 Joseph Patrick Quin Portable Device Input by Configurable Patterns of Motion
US8989773B2 (en) 2013-01-29 2015-03-24 Apple Inc. Sharing location information among devices
CN113470640B (zh) 2013-02-07 2022-04-26 苹果公司 数字助理的语音触发器
US9123340B2 (en) 2013-03-01 2015-09-01 Google Inc. Detecting the end of a user question
JP6337882B2 (ja) * 2013-03-11 2018-06-06 ソニー株式会社 端末装置、端末装置の制御方法およびプログラム
US9112984B2 (en) 2013-03-12 2015-08-18 Nuance Communications, Inc. Methods and apparatus for detecting a voice command
US11393461B2 (en) * 2013-03-12 2022-07-19 Cerence Operating Company Methods and apparatus for detecting a voice command
US10652394B2 (en) 2013-03-14 2020-05-12 Apple Inc. System and method for processing voicemail
US10748529B1 (en) 2013-03-15 2020-08-18 Apple Inc. Voice activated device for use with a voice-based digital assistant
KR20140113832A (ko) * 2013-03-15 2014-09-25 현대자동차주식회사 자동차의 음성 전달 시동장치 및 시동방법
WO2014178491A1 (ko) * 2013-04-30 2014-11-06 포항공과대학교 산학협력단 발화 인식 방법 및 장치
TWI553470B (zh) * 2013-05-31 2016-10-11 陳泰然 一種顯示裝置及其運作方法
US10716073B2 (en) 2013-06-07 2020-07-14 Apple Inc. Determination of device placement using pose angle
US9432954B2 (en) * 2013-06-07 2016-08-30 Apple Inc. Determination of device body location
WO2014197334A2 (en) 2013-06-07 2014-12-11 Apple Inc. System and method for user-specified pronunciation of words for speech synthesis and recognition
WO2014197335A1 (en) 2013-06-08 2014-12-11 Apple Inc. Interpreting and acting upon commands that involve sharing information with remote devices
US10176167B2 (en) 2013-06-09 2019-01-08 Apple Inc. System and method for inferring user intent from speech inputs
KR101922663B1 (ko) 2013-06-09 2018-11-28 애플 인크. 디지털 어시스턴트의 둘 이상의 인스턴스들에 걸친 대화 지속성을 가능하게 하기 위한 디바이스, 방법 및 그래픽 사용자 인터페이스
US9589565B2 (en) * 2013-06-21 2017-03-07 Microsoft Technology Licensing, Llc Environmentally aware dialog policies and response generation
US20140379351A1 (en) * 2013-06-24 2014-12-25 Sundeep Raniwala Speech detection based upon facial movements
CN104252330B (zh) * 2013-06-28 2019-12-24 联想(北京)有限公司 一种信息处理方法及电子设备
US9418651B2 (en) 2013-07-31 2016-08-16 Google Technology Holdings LLC Method and apparatus for mitigating false accepts of trigger phrases
DE102013013695B4 (de) * 2013-08-16 2019-05-23 Audi Ag Kraftfahrzeug mit Spracherkennung
US9892745B2 (en) * 2013-08-23 2018-02-13 At&T Intellectual Property I, L.P. Augmented multi-tier classifier for multi-modal voice activity detection
KR20150031896A (ko) 2013-09-17 2015-03-25 한국전자통신연구원 음성인식장치 및 그 동작방법
JP6329833B2 (ja) 2013-10-04 2018-05-23 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America ウェアラブル端末及びウェアラブル端末の制御方法
US9329695B2 (en) 2013-10-04 2016-05-03 Panasonic Intellectual Property Corporation Of America Wearable terminal and method for controlling the same
TWI502487B (zh) * 2013-10-24 2015-10-01 Hooloop Corp 語音管理方法,及其相關裝置與電腦程式產品
CN103558916A (zh) * 2013-11-07 2014-02-05 百度在线网络技术(北京)有限公司 人机交互系统、方法及其装置
CN104639722B (zh) * 2013-11-07 2018-06-26 华为终端(东莞)有限公司 语音通话的建立方法和装置
US9188579B2 (en) * 2013-11-21 2015-11-17 Qualcomm Incorporated Sniffing smartphone
US10296160B2 (en) 2013-12-06 2019-05-21 Apple Inc. Method for extracting salient dialog usage from live data
US9620116B2 (en) * 2013-12-24 2017-04-11 Intel Corporation Performing automated voice operations based on sensor data reflecting sound vibration conditions and motion conditions
CA2881584A1 (en) * 2014-02-13 2015-08-13 Roderick Andrew Coles Mobile security application
TWI514258B (zh) * 2014-02-17 2015-12-21 Hooloop Corp 語音管理方法及系統,及其電腦程式產品
US9516165B1 (en) * 2014-03-26 2016-12-06 West Corporation IVR engagements and upfront background noise
US9430463B2 (en) 2014-05-30 2016-08-30 Apple Inc. Exemplar-based natural language processing
US9633004B2 (en) 2014-05-30 2017-04-25 Apple Inc. Better resolution when referencing to concepts
TWI566107B (zh) 2014-05-30 2017-01-11 蘋果公司 用於處理多部分語音命令之方法、非暫時性電腦可讀儲存媒體及電子裝置
US9715875B2 (en) 2014-05-30 2017-07-25 Apple Inc. Reducing the need for manual start/end-pointing and trigger phrases
US10170123B2 (en) 2014-05-30 2019-01-01 Apple Inc. Intelligent assistant for home automation
US10382378B2 (en) 2014-05-31 2019-08-13 Apple Inc. Live location sharing
US9185062B1 (en) 2014-05-31 2015-11-10 Apple Inc. Message user interfaces for capture and transmittal of media and location content
US10318016B2 (en) * 2014-06-03 2019-06-11 Harman International Industries, Incorporated Hands free device with directional interface
US9355640B2 (en) * 2014-06-04 2016-05-31 Google Inc. Invoking action responsive to co-presence determination
CN105321515A (zh) * 2014-06-17 2016-02-10 中兴通讯股份有限公司 一种移动终端的车载应用控制方法、装置及终端
US9338493B2 (en) 2014-06-30 2016-05-10 Apple Inc. Intelligent automated assistant for TV user interactions
US9824688B2 (en) * 2014-07-16 2017-11-21 Panasonic Intellectual Property Corporation Of America Method for controlling speech-recognition text-generation system and method for controlling mobile terminal
US9620106B2 (en) * 2014-07-30 2017-04-11 At&T Intellectual Property I, L.P. System and method for personalization in speech recogniton
DE212015000194U1 (de) 2014-08-06 2017-05-31 Apple Inc. Verkleinerte Benutzeroberflächen für Batteriemanagement
WO2016036541A2 (en) 2014-09-02 2016-03-10 Apple Inc. Phone user interface
USD762663S1 (en) * 2014-09-02 2016-08-02 Samsung Electronics Co., Ltd. Display screen or portion thereof with graphical user interface
KR102016160B1 (ko) 2014-09-02 2019-08-29 애플 인크. 경고를 관리하기 위한 축소된 크기의 인터페이스
USD766267S1 (en) * 2014-09-02 2016-09-13 Samsung Electronics Co., Ltd. Display screen or portion thereof with graphical user interface
US9818400B2 (en) 2014-09-11 2017-11-14 Apple Inc. Method and apparatus for discovering trending terms in speech requests
US9668121B2 (en) 2014-09-30 2017-05-30 Apple Inc. Social reminders
US10127911B2 (en) 2014-09-30 2018-11-13 Apple Inc. Speaker identification and unsupervised speaker adaptation techniques
US10074360B2 (en) 2014-09-30 2018-09-11 Apple Inc. Providing an indication of the suitability of speech recognition
US20160163331A1 (en) * 2014-12-04 2016-06-09 Kabushiki Kaisha Toshiba Electronic device and method for visualizing audio data
KR20160071732A (ko) * 2014-12-12 2016-06-22 삼성전자주식회사 음성 입력을 처리하는 방법 및 장치
US10002478B2 (en) 2014-12-12 2018-06-19 Qualcomm Incorporated Identification and authentication in a shared acoustic space
US10152299B2 (en) 2015-03-06 2018-12-11 Apple Inc. Reducing response latency of intelligent automated assistants
US10567477B2 (en) 2015-03-08 2020-02-18 Apple Inc. Virtual assistant continuity
US9721566B2 (en) 2015-03-08 2017-08-01 Apple Inc. Competing devices responding to voice triggers
US9886953B2 (en) * 2015-03-08 2018-02-06 Apple Inc. Virtual assistant activation
JP6459684B2 (ja) * 2015-03-23 2019-01-30 カシオ計算機株式会社 情報出力装置、情報出力方法及びプログラム
US9596429B2 (en) * 2015-05-08 2017-03-14 Echostar Technologies L.L.C. Apparatus, systems and methods for providing content when loud background noise is present
US10460227B2 (en) 2015-05-15 2019-10-29 Apple Inc. Virtual assistant in a communication session
US10083688B2 (en) 2015-05-27 2018-09-25 Apple Inc. Device voice control for selecting a displayed affordance
US10200824B2 (en) 2015-05-27 2019-02-05 Apple Inc. Systems and methods for proactively identifying and surfacing relevant content on a touch-sensitive device
US10504509B2 (en) * 2015-05-27 2019-12-10 Google Llc Providing suggested voice-based action queries
US9578173B2 (en) 2015-06-05 2017-02-21 Apple Inc. Virtual assistant aided communication with 3rd party service in a communication session
US11025565B2 (en) 2015-06-07 2021-06-01 Apple Inc. Personalized prediction of responses for instant messaging
US20160378747A1 (en) 2015-06-29 2016-12-29 Apple Inc. Virtual assistant for media playback
US10003938B2 (en) 2015-08-14 2018-06-19 Apple Inc. Easy location sharing
USD777784S1 (en) 2015-08-26 2017-01-31 Google Inc. Display screen with icon
US10331312B2 (en) 2015-09-08 2019-06-25 Apple Inc. Intelligent automated assistant in a media environment
US10747498B2 (en) 2015-09-08 2020-08-18 Apple Inc. Zero latency digital assistant
US10671428B2 (en) 2015-09-08 2020-06-02 Apple Inc. Distributed personal assistant
US10740384B2 (en) 2015-09-08 2020-08-11 Apple Inc. Intelligent automated assistant for media search and playback
US11126525B2 (en) * 2015-09-09 2021-09-21 Arris Enterprises Llc In-home legacy device onboarding and privacy enhanced monitoring
US10186276B2 (en) 2015-09-25 2019-01-22 Qualcomm Incorporated Adaptive noise suppression for super wideband music
US10691473B2 (en) 2015-11-06 2020-06-23 Apple Inc. Intelligent automated assistant in a messaging environment
US10956666B2 (en) 2015-11-09 2021-03-23 Apple Inc. Unconventional virtual assistant interactions
US9804681B2 (en) * 2015-11-10 2017-10-31 Motorola Mobility Llc Method and system for audible delivery of notifications partially presented on an always-on display
KR101698369B1 (ko) * 2015-11-24 2017-01-20 주식회사 인텔로이드 사용자 음성 신호를 이용하는 정보 제공 장치 및 정보 제공 방법
US10049668B2 (en) 2015-12-02 2018-08-14 Apple Inc. Applying neural network language models to weighted finite state transducers for automatic speech recognition
US10223066B2 (en) 2015-12-23 2019-03-05 Apple Inc. Proactive assistance based on dialog communication between devices
USD852839S1 (en) * 2015-12-23 2019-07-02 Beijing Xinmei Hutong Technology Co., Ltd Display screen with a graphical user interface
EP3414759B1 (en) 2016-02-10 2020-07-01 Cerence Operating Company Techniques for spatially selective wake-up word recognition and related systems and methods
US9826306B2 (en) 2016-02-22 2017-11-21 Sonos, Inc. Default playback device designation
US10095470B2 (en) 2016-02-22 2018-10-09 Sonos, Inc. Audio response playback
US10264030B2 (en) 2016-02-22 2019-04-16 Sonos, Inc. Networked microphone device control
US9965247B2 (en) 2016-02-22 2018-05-08 Sonos, Inc. Voice controlled media playback system based on user profile
US10097939B2 (en) 2016-02-22 2018-10-09 Sonos, Inc. Compensation for speaker nonlinearities
US10509626B2 (en) 2016-02-22 2019-12-17 Sonos, Inc Handling of loss of pairing between networked devices
US9947316B2 (en) 2016-02-22 2018-04-17 Sonos, Inc. Voice control of a media playback system
KR20170100309A (ko) 2016-02-25 2017-09-04 삼성전자주식회사 음성 인식 제어를 제공하는 전자 장치 및 그 동작 방법
US9997173B2 (en) * 2016-03-14 2018-06-12 Apple Inc. System and method for performing automatic gain control using an accelerometer in a headset
EP3236211A1 (en) * 2016-04-21 2017-10-25 Thomson Licensing Method and apparatus for estimating a pose of a rendering device
CN106020460A (zh) * 2016-05-13 2016-10-12 上海龙旗科技股份有限公司 一种基于俯仰角信息提示用户的方法与设备
US11227589B2 (en) 2016-06-06 2022-01-18 Apple Inc. Intelligent list reading
US10049663B2 (en) 2016-06-08 2018-08-14 Apple, Inc. Intelligent automated assistant for media exploration
US9978390B2 (en) 2016-06-09 2018-05-22 Sonos, Inc. Dynamic player selection for audio signal processing
US10067938B2 (en) 2016-06-10 2018-09-04 Apple Inc. Multilingual word prediction
US10586535B2 (en) 2016-06-10 2020-03-10 Apple Inc. Intelligent digital assistant in a multi-tasking environment
DK201670540A1 (en) 2016-06-11 2018-01-08 Apple Inc Application integration with a digital assistant
DK179415B1 (en) 2016-06-11 2018-06-14 Apple Inc Intelligent device arbitration and control
US11600269B2 (en) 2016-06-15 2023-03-07 Cerence Operating Company Techniques for wake-up word recognition and related systems and methods
US20170365249A1 (en) * 2016-06-21 2017-12-21 Apple Inc. System and method of performing automatic speech recognition using end-pointing markers generated using accelerometer-based voice activity detector
KR20180006133A (ko) * 2016-07-08 2018-01-17 삼성전자주식회사 전자 장치 및 그의 동작 방법
CN106205619A (zh) * 2016-07-08 2016-12-07 北京光年无限科技有限公司 基于智能机器人系统的语音识别方法及识别系统
US10134399B2 (en) 2016-07-15 2018-11-20 Sonos, Inc. Contextualization of voice inputs
US10152969B2 (en) 2016-07-15 2018-12-11 Sonos, Inc. Voice detection by multiple devices
US9693164B1 (en) 2016-08-05 2017-06-27 Sonos, Inc. Determining direction of networked microphone device relative to audio playback device
US10115400B2 (en) 2016-08-05 2018-10-30 Sonos, Inc. Multiple voice services
JP6569926B2 (ja) * 2016-08-17 2019-09-04 パナソニックIpマネジメント株式会社 音声入力装置、翻訳装置、音声入力方法、及び音声入力プログラム
US10474753B2 (en) 2016-09-07 2019-11-12 Apple Inc. Language identification using recurrent neural networks
JP6677614B2 (ja) * 2016-09-16 2020-04-08 株式会社東芝 会議支援システム、会議支援方法及びプログラム
US9794720B1 (en) 2016-09-22 2017-10-17 Sonos, Inc. Acoustic position measurement
US10043516B2 (en) 2016-09-23 2018-08-07 Apple Inc. Intelligent automated assistant
US9942678B1 (en) 2016-09-27 2018-04-10 Sonos, Inc. Audio playback settings for voice interaction
US9743204B1 (en) 2016-09-30 2017-08-22 Sonos, Inc. Multi-orientation playback device microphones
US10531227B2 (en) * 2016-10-19 2020-01-07 Google Llc Time-delimited action suggestion system
US10181323B2 (en) 2016-10-19 2019-01-15 Sonos, Inc. Arbitration-based voice recognition
US10455313B2 (en) * 2016-10-31 2019-10-22 Bragi GmbH Wireless earpiece with force feedback
CN111971742A (zh) 2016-11-10 2020-11-20 赛轮思软件技术(北京)有限公司 与语言无关的唤醒词检测的技术
US11281993B2 (en) 2016-12-05 2022-03-22 Apple Inc. Model and ensemble compression for metric learning
US10593346B2 (en) 2016-12-22 2020-03-17 Apple Inc. Rank-reduced token representation for automatic speech recognition
US11204787B2 (en) 2017-01-09 2021-12-21 Apple Inc. Application integration with a digital assistant
WO2018135122A1 (ja) * 2017-01-18 2018-07-26 日本電気株式会社 携帯情報端末、携帯情報端末制御方法、プログラム
US20180342264A1 (en) * 2017-01-19 2018-11-29 AnchorFM, Inc. Method of automatically recording audio content, and system therefor
KR101893768B1 (ko) 2017-02-27 2018-09-04 주식회사 브이터치 음성 인식 트리거를 제공하기 위한 방법, 시스템 및 비일시성의 컴퓨터 판독 가능한 기록 매체
JP6553111B2 (ja) 2017-03-21 2019-07-31 株式会社東芝 音声認識装置、音声認識方法及び音声認識プログラム
US11183181B2 (en) 2017-03-27 2021-11-23 Sonos, Inc. Systems and methods of multiple voice services
FR3064794B1 (fr) * 2017-03-28 2019-11-01 Continental Automotive France Systeme et procede de transmission d’un message oral dans un vehicule
US11431836B2 (en) 2017-05-02 2022-08-30 Apple Inc. Methods and interfaces for initiating media playback
US10992795B2 (en) 2017-05-16 2021-04-27 Apple Inc. Methods and interfaces for home media control
US10313782B2 (en) 2017-05-04 2019-06-04 Apple Inc. Automatic speech recognition triggering system
US10417266B2 (en) 2017-05-09 2019-09-17 Apple Inc. Context-aware ranking of intelligent response suggestions
DK201770383A1 (en) 2017-05-09 2018-12-14 Apple Inc. USER INTERFACE FOR CORRECTING RECOGNITION ERRORS
US10395654B2 (en) 2017-05-11 2019-08-27 Apple Inc. Text normalization based on a data-driven learning network
DK180048B1 (en) 2017-05-11 2020-02-04 Apple Inc. MAINTAINING THE DATA PROTECTION OF PERSONAL INFORMATION
US10726832B2 (en) 2017-05-11 2020-07-28 Apple Inc. Maintaining privacy of personal information
DK201770439A1 (en) 2017-05-11 2018-12-13 Apple Inc. Offline personal assistant
DK179745B1 (en) 2017-05-12 2019-05-01 Apple Inc. SYNCHRONIZATION AND TASK DELEGATION OF A DIGITAL ASSISTANT
DK179496B1 (en) 2017-05-12 2019-01-15 Apple Inc. USER-SPECIFIC Acoustic Models
DK201770429A1 (en) 2017-05-12 2018-12-14 Apple Inc. LOW-LATENCY INTELLIGENT AUTOMATED ASSISTANT
US11301477B2 (en) 2017-05-12 2022-04-12 Apple Inc. Feedback analysis of a digital assistant
DK201770432A1 (en) 2017-05-15 2018-12-21 Apple Inc. Hierarchical belief states for digital assistants
DK201770431A1 (en) 2017-05-15 2018-12-20 Apple Inc. Optimizing dialogue policy decisions for digital assistants using implicit feedback
US20180336275A1 (en) 2017-05-16 2018-11-22 Apple Inc. Intelligent automated assistant for media exploration
US20180336892A1 (en) 2017-05-16 2018-11-22 Apple Inc. Detecting a trigger of a digital assistant
CN111343060B (zh) 2017-05-16 2022-02-11 苹果公司 用于家庭媒体控制的方法和界面
US10311144B2 (en) 2017-05-16 2019-06-04 Apple Inc. Emoji word sense disambiguation
US20220279063A1 (en) 2017-05-16 2022-09-01 Apple Inc. Methods and interfaces for home media control
US10403278B2 (en) 2017-05-16 2019-09-03 Apple Inc. Methods and systems for phonetic matching in digital assistant services
DK179560B1 (en) 2017-05-16 2019-02-18 Apple Inc. FAR-FIELD EXTENSION FOR DIGITAL ASSISTANT SERVICES
US10657328B2 (en) 2017-06-02 2020-05-19 Apple Inc. Multi-task recurrent neural network architecture for efficient morphology handling in neural language modeling
KR102441063B1 (ko) * 2017-06-07 2022-09-06 현대자동차주식회사 끝점 검출 장치, 그를 포함한 시스템 및 그 방법
US10930276B2 (en) * 2017-07-12 2021-02-23 Universal Electronics Inc. Apparatus, system and method for directing voice input in a controlling device
US11489691B2 (en) 2017-07-12 2022-11-01 Universal Electronics Inc. Apparatus, system and method for directing voice input in a controlling device
US10475449B2 (en) 2017-08-07 2019-11-12 Sonos, Inc. Wake-word detection suppression
EP3447768A1 (en) * 2017-08-21 2019-02-27 Vestel Elektronik Sanayi ve Ticaret A.S. Method of transferring a call, user device and a computer program
US10048930B1 (en) 2017-09-08 2018-08-14 Sonos, Inc. Dynamic computation of system response volume
US10445429B2 (en) 2017-09-21 2019-10-15 Apple Inc. Natural language understanding using vocabularies with compressed serialized tries
US10446165B2 (en) 2017-09-27 2019-10-15 Sonos, Inc. Robust short-time fourier transform acoustic echo cancellation during audio playback
US10621981B2 (en) 2017-09-28 2020-04-14 Sonos, Inc. Tone interference cancellation
US10051366B1 (en) 2017-09-28 2018-08-14 Sonos, Inc. Three-dimensional beam forming with a microphone array
US10482868B2 (en) 2017-09-28 2019-11-19 Sonos, Inc. Multi-channel acoustic echo cancellation
US10755051B2 (en) 2017-09-29 2020-08-25 Apple Inc. Rule-based natural language processing
US10466962B2 (en) 2017-09-29 2019-11-05 Sonos, Inc. Media playback system with voice assistance
US10372298B2 (en) 2017-09-29 2019-08-06 Apple Inc. User interface for multi-user communication session
WO2019089001A1 (en) * 2017-10-31 2019-05-09 Hewlett-Packard Development Company, L.P. Actuation module to control when a sensing module is responsive to events
KR102429498B1 (ko) * 2017-11-01 2022-08-05 현대자동차주식회사 차량의 음성인식 장치 및 방법
US11843715B2 (en) * 2017-11-23 2023-12-12 Huawei Technologies Co., Ltd. Photographing method and terminal
US10636424B2 (en) 2017-11-30 2020-04-28 Apple Inc. Multi-turn canned dialog
US10880650B2 (en) 2017-12-10 2020-12-29 Sonos, Inc. Network microphone devices with automatic do not disturb actuation capabilities
US10818290B2 (en) 2017-12-11 2020-10-27 Sonos, Inc. Home graph
US10923101B2 (en) * 2017-12-26 2021-02-16 International Business Machines Corporation Pausing synthesized speech output from a voice-controlled device
US10733982B2 (en) 2018-01-08 2020-08-04 Apple Inc. Multi-directional dialog
US10733375B2 (en) 2018-01-31 2020-08-04 Apple Inc. Knowledge-based framework for improving natural language understanding
WO2019152722A1 (en) 2018-01-31 2019-08-08 Sonos, Inc. Device designation of playback and network microphone device arrangements
US10789959B2 (en) 2018-03-02 2020-09-29 Apple Inc. Training speaker recognition models for digital assistants
US10592604B2 (en) 2018-03-12 2020-03-17 Apple Inc. Inverse text normalization for automatic speech recognition
US20210005203A1 (en) * 2018-03-13 2021-01-07 Mitsubishi Electric Corporation Voice processing apparatus and voice processing method
TWI672690B (zh) * 2018-03-21 2019-09-21 塞席爾商元鼎音訊股份有限公司 人工智慧語音互動之方法、電腦程式產品及其近端電子裝置
US10818288B2 (en) 2018-03-26 2020-10-27 Apple Inc. Natural assistant interaction
EP3776338A1 (en) * 2018-03-30 2021-02-17 Dina Katabi Pose estimation using radio frequency signals
US10909331B2 (en) 2018-03-30 2021-02-02 Apple Inc. Implicit identification of translation payload with neural machine translation
USD877770S1 (en) * 2018-05-04 2020-03-10 Google Llc Display screen with transitional graphical user interface
US11145294B2 (en) 2018-05-07 2021-10-12 Apple Inc. Intelligent automated assistant for delivering content from user experiences
US10928918B2 (en) * 2018-05-07 2021-02-23 Apple Inc. Raise to speak
WO2019216996A1 (en) * 2018-05-07 2019-11-14 Apple Inc. Raise to speak
DK180130B1 (da) 2018-05-07 2020-06-02 Apple Inc. Multi-participant live communication user interface
US11175880B2 (en) 2018-05-10 2021-11-16 Sonos, Inc. Systems and methods for voice-assisted media content selection
US11169668B2 (en) * 2018-05-16 2021-11-09 Google Llc Selecting an input mode for a virtual assistant
US10847178B2 (en) 2018-05-18 2020-11-24 Sonos, Inc. Linear filtering for noise-suppressed speech detection
US10984780B2 (en) 2018-05-21 2021-04-20 Apple Inc. Global semantic word embeddings using bi-directional recurrent neural networks
US10959029B2 (en) 2018-05-25 2021-03-23 Sonos, Inc. Determining and adapting to changes in microphone performance of playback devices
US11386266B2 (en) 2018-06-01 2022-07-12 Apple Inc. Text correction
DK201870355A1 (en) 2018-06-01 2019-12-16 Apple Inc. VIRTUAL ASSISTANT OPERATION IN MULTI-DEVICE ENVIRONMENTS
US10892996B2 (en) 2018-06-01 2021-01-12 Apple Inc. Variable latency device coordination
DK180639B1 (en) 2018-06-01 2021-11-04 Apple Inc DISABILITY OF ATTENTION-ATTENTIVE VIRTUAL ASSISTANT
DK179822B1 (da) 2018-06-01 2019-07-12 Apple Inc. Voice interaction at a primary device to access call functionality of a companion device
US10496705B1 (en) 2018-06-03 2019-12-03 Apple Inc. Accelerated task performance
KR102592907B1 (ko) * 2018-06-22 2023-10-23 삼성전자주식회사 텍스트 입력 디바이스 및 그 방법
US10681460B2 (en) 2018-06-28 2020-06-09 Sonos, Inc. Systems and methods for associating playback devices with voice assistant services
CN112384975A (zh) * 2018-07-12 2021-02-19 杜比实验室特许公司 使用辅助信号的音频装置的传输控制
WO2020018726A1 (en) * 2018-07-17 2020-01-23 Appareo Systems, Llc Wireless communications system and method
US11018754B2 (en) * 2018-08-07 2021-05-25 Appareo Systems, Llc RF communications system and method
US11076035B2 (en) 2018-08-28 2021-07-27 Sonos, Inc. Do not disturb feature for audio notifications
US10461710B1 (en) 2018-08-28 2019-10-29 Sonos, Inc. Media playback system with maximum volume setting
US10878811B2 (en) 2018-09-14 2020-12-29 Sonos, Inc. Networked devices, systems, and methods for intelligently deactivating wake-word engines
US10587430B1 (en) 2018-09-14 2020-03-10 Sonos, Inc. Networked devices, systems, and methods for associating playback devices based on sound codes
CN110931027A (zh) * 2018-09-18 2020-03-27 北京三星通信技术研究有限公司 音频处理方法、装置、电子设备及计算机可读存储介质
US11024331B2 (en) 2018-09-21 2021-06-01 Sonos, Inc. Voice detection optimization using sound metadata
US10811015B2 (en) 2018-09-25 2020-10-20 Sonos, Inc. Voice detection optimization based on selected voice assistant service
US11010561B2 (en) 2018-09-27 2021-05-18 Apple Inc. Sentiment prediction from textual data
US11462215B2 (en) 2018-09-28 2022-10-04 Apple Inc. Multi-modal inputs for voice commands
US11100923B2 (en) 2018-09-28 2021-08-24 Sonos, Inc. Systems and methods for selective wake word detection using neural network models
US11170166B2 (en) 2018-09-28 2021-11-09 Apple Inc. Neural typographical error modeling via generative adversarial networks
CN109448746B (zh) * 2018-09-28 2020-03-24 百度在线网络技术(北京)有限公司 语音降噪方法及装置
US10839159B2 (en) 2018-09-28 2020-11-17 Apple Inc. Named entity normalization in a spoken dialog system
US11128792B2 (en) 2018-09-28 2021-09-21 Apple Inc. Capturing and displaying images with multiple focal planes
US10692518B2 (en) 2018-09-29 2020-06-23 Sonos, Inc. Linear filtering for noise-suppressed speech detection via multiple network microphone devices
US11157169B2 (en) 2018-10-08 2021-10-26 Google Llc Operating modes that designate an interface modality for interacting with an automated assistant
EP3853712A1 (en) * 2018-10-08 2021-07-28 Google LLC Operating modes that designate an interface modality for interacting with an automated assistant
US11899519B2 (en) 2018-10-23 2024-02-13 Sonos, Inc. Multiple stage network microphone device with reduced power consumption and processing load
US11475898B2 (en) 2018-10-26 2022-10-18 Apple Inc. Low-latency multi-speaker speech recognition
EP3654249A1 (en) 2018-11-15 2020-05-20 Snips Dilated convolutions and gating for efficient keyword spotting
US11183183B2 (en) 2018-12-07 2021-11-23 Sonos, Inc. Systems and methods of operating media playback systems having multiple voice assistant services
US11132989B2 (en) 2018-12-13 2021-09-28 Sonos, Inc. Networked microphone devices, systems, and methods of localized arbitration
US10602268B1 (en) 2018-12-20 2020-03-24 Sonos, Inc. Optimization of network microphone devices using noise classification
CN109618059A (zh) * 2019-01-03 2019-04-12 北京百度网讯科技有限公司 移动终端中语音识别功能的唤醒方法和装置
US11638059B2 (en) 2019-01-04 2023-04-25 Apple Inc. Content playback on multiple devices
US10867604B2 (en) 2019-02-08 2020-12-15 Sonos, Inc. Devices, systems, and methods for distributed voice processing
US11315556B2 (en) 2019-02-08 2022-04-26 Sonos, Inc. Devices, systems, and methods for distributed voice processing by transmitting sound data associated with a wake word to an appropriate device for identification
EP3709194A1 (en) 2019-03-15 2020-09-16 Spotify AB Ensemble-based data comparison
US11348573B2 (en) 2019-03-18 2022-05-31 Apple Inc. Multimodality in digital assistant systems
US11277692B2 (en) * 2019-03-27 2022-03-15 Panasonic Corporation Speech input method, recording medium, and speech input device
US11120794B2 (en) 2019-05-03 2021-09-14 Sonos, Inc. Voice assistant persistence across multiple network microphone devices
DK201970509A1 (en) 2019-05-06 2021-01-15 Apple Inc Spoken notifications
US11475884B2 (en) 2019-05-06 2022-10-18 Apple Inc. Reducing digital assistant latency when a language is incorrectly determined
US11307752B2 (en) 2019-05-06 2022-04-19 Apple Inc. User configurable task triggers
US11423908B2 (en) 2019-05-06 2022-08-23 Apple Inc. Interpreting spoken requests
US11140099B2 (en) 2019-05-21 2021-10-05 Apple Inc. Providing message response suggestions
WO2020243691A1 (en) 2019-05-31 2020-12-03 Apple Inc. User interfaces for audio media control
DK180129B1 (en) 2019-05-31 2020-06-02 Apple Inc. USER ACTIVITY SHORTCUT SUGGESTIONS
DK201970511A1 (en) 2019-05-31 2021-02-15 Apple Inc Voice identification in digital assistant systems
US11363071B2 (en) 2019-05-31 2022-06-14 Apple Inc. User interfaces for managing a local network
US10996917B2 (en) 2019-05-31 2021-05-04 Apple Inc. User interfaces for audio media control
US10904029B2 (en) 2019-05-31 2021-01-26 Apple Inc. User interfaces for managing controllable external devices
US11496600B2 (en) 2019-05-31 2022-11-08 Apple Inc. Remote execution of machine-learned models
US11289073B2 (en) 2019-05-31 2022-03-29 Apple Inc. Device text to speech
DK201970533A1 (en) 2019-05-31 2021-02-15 Apple Inc Methods and user interfaces for sharing audio
US11468890B2 (en) 2019-06-01 2022-10-11 Apple Inc. Methods and user interfaces for voice-based control of electronic devices
US11360641B2 (en) 2019-06-01 2022-06-14 Apple Inc. Increasing the relevance of new available information
US10586540B1 (en) 2019-06-12 2020-03-10 Sonos, Inc. Network microphone device with command keyword conditioning
US11361756B2 (en) 2019-06-12 2022-06-14 Sonos, Inc. Conditional wake word eventing based on environment
US11200894B2 (en) 2019-06-12 2021-12-14 Sonos, Inc. Network microphone device with command keyword eventing
WO2019172735A2 (ko) * 2019-07-02 2019-09-12 엘지전자 주식회사 커뮤니케이션 로봇 및 그의 구동 방법
US11138969B2 (en) 2019-07-31 2021-10-05 Sonos, Inc. Locally distributed keyword detection
US11138975B2 (en) 2019-07-31 2021-10-05 Sonos, Inc. Locally distributed keyword detection
US10871943B1 (en) 2019-07-31 2020-12-22 Sonos, Inc. Noise classification for event detection
US11094319B2 (en) 2019-08-30 2021-08-17 Spotify Ab Systems and methods for generating a cleaned version of ambient sound
US10827028B1 (en) 2019-09-05 2020-11-03 Spotify Ab Systems and methods for playing media content on a target device
WO2021056255A1 (en) 2019-09-25 2021-04-01 Apple Inc. Text detection using global geometry estimators
US11189286B2 (en) 2019-10-22 2021-11-30 Sonos, Inc. VAS toggle based on device orientation
US10901520B1 (en) 2019-11-05 2021-01-26 Microsoft Technology Licensing, Llc Content capture experiences driven by multi-modal user inputs
US11200900B2 (en) 2019-12-20 2021-12-14 Sonos, Inc. Offline voice control
US11562740B2 (en) 2020-01-07 2023-01-24 Sonos, Inc. Voice verification for media playback
US11556307B2 (en) 2020-01-31 2023-01-17 Sonos, Inc. Local voice data processing
US11308958B2 (en) 2020-02-07 2022-04-19 Sonos, Inc. Localized wakeword verification
US11308959B2 (en) 2020-02-11 2022-04-19 Spotify Ab Dynamic adjustment of wake word acceptance tolerance thresholds in voice-controlled devices
US11328722B2 (en) 2020-02-11 2022-05-10 Spotify Ab Systems and methods for generating a singular voice audio stream
CN111432303B (zh) * 2020-03-19 2023-01-10 交互未来(北京)科技有限公司 单耳耳机、智能电子设备、方法和计算机可读介质
US11061543B1 (en) 2020-05-11 2021-07-13 Apple Inc. Providing relevant data items based on context
US11513667B2 (en) 2020-05-11 2022-11-29 Apple Inc. User interface for audio message
US11183193B1 (en) 2020-05-11 2021-11-23 Apple Inc. Digital assistant hardware abstraction
US11482224B2 (en) 2020-05-20 2022-10-25 Sonos, Inc. Command keywords with input detection windowing
US11727919B2 (en) 2020-05-20 2023-08-15 Sonos, Inc. Memory allocation for keyword spotting engines
US11308962B2 (en) 2020-05-20 2022-04-19 Sonos, Inc. Input detection windowing
US11490204B2 (en) 2020-07-20 2022-11-01 Apple Inc. Multi-device audio adjustment coordination
US11438683B2 (en) 2020-07-21 2022-09-06 Apple Inc. User identification using headphones
US11698771B2 (en) 2020-08-25 2023-07-11 Sonos, Inc. Vocal guidance engines for playback devices
US11620999B2 (en) 2020-09-18 2023-04-04 Apple Inc. Reducing device processing of unintended audio
US11392291B2 (en) 2020-09-25 2022-07-19 Apple Inc. Methods and interfaces for media control with dynamic feedback
US11551700B2 (en) 2021-01-25 2023-01-10 Sonos, Inc. Systems and methods for power-efficient keyword detection
US11671697B2 (en) 2021-01-31 2023-06-06 Apple Inc. User interfaces for wide angle video conference
US11449188B1 (en) 2021-05-15 2022-09-20 Apple Inc. Shared-content session user interfaces
US11907605B2 (en) 2021-05-15 2024-02-20 Apple Inc. Shared-content session user interfaces
US11893214B2 (en) 2021-05-15 2024-02-06 Apple Inc. Real-time communication user interface
CN113407907B (zh) * 2021-06-04 2022-04-12 电子科技大学 一种融合不完整监测序列的层次系统结构函数学习方法
US11848019B2 (en) * 2021-06-16 2023-12-19 Hewlett-Packard Development Company, L.P. Private speech filterings
US11770600B2 (en) 2021-09-24 2023-09-26 Apple Inc. Wide angle video conference

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007094104A (ja) * 2005-09-29 2007-04-12 Sony Corp 情報処理装置および方法、並びにプログラム
WO2007149731A1 (en) * 2006-06-21 2007-12-27 Symbol Technologies, Inc. System and method for monitoring spatial orientation and motion of a mobile device

Family Cites Families (98)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5875108A (en) * 1991-12-23 1999-02-23 Hoffberg; Steven M. Ergonomic man-machine interface incorporating adaptive pattern recognition based control system
US5903454A (en) 1991-12-23 1999-05-11 Hoffberg; Linda Irene Human-factored interface corporating adaptive pattern recognition based controller apparatus
US7242988B1 (en) * 1991-12-23 2007-07-10 Linda Irene Hoffberg Adaptive pattern recognition based controller apparatus and method and human-factored interface therefore
US6400996B1 (en) 1999-02-01 2002-06-04 Steven M. Hoffberg Adaptive pattern recognition based control system and method
JPH0675588A (ja) * 1992-08-27 1994-03-18 Fujitsu Ltd 音声認識装置
US5657422A (en) 1994-01-28 1997-08-12 Lucent Technologies Inc. Voice activity detection driven noise remediator
US5537536A (en) * 1994-06-21 1996-07-16 Intel Corporation Apparatus and method for debugging electronic components through an in-circuit emulator
US6006175A (en) 1996-02-06 1999-12-21 The Regents Of The University Of California Methods and apparatus for non-acoustic speech characterization and recognition
US6453281B1 (en) 1996-07-30 2002-09-17 Vxi Corporation Portable audio database device with icon-based graphical user-interface
US20060025206A1 (en) 1997-03-21 2006-02-02 Walker Jay S Gaming device operable to faciliate audio output via a headset and methods related thereto
KR100520654B1 (ko) * 1998-05-27 2005-11-25 삼성전자주식회사 휴대 전화 단말 장치의 주변 소음 크기에 따른다이얼링 모드자동 전환 방법
JP3327326B2 (ja) 1999-01-08 2002-09-24 日本電気株式会社 携帯電話の誤動作防止方式及び誤動作防止回路
JP3571254B2 (ja) * 1999-04-27 2004-09-29 シャープ株式会社 通話装置
JP3654045B2 (ja) 1999-05-13 2005-06-02 株式会社デンソー 音声認識装置
JP2000338987A (ja) * 1999-05-28 2000-12-08 Mitsubishi Electric Corp 発話開始監視装置、話者同定装置、音声入力システム、および話者同定システム、並びに通信システム
US6549792B1 (en) 1999-06-25 2003-04-15 Agere Systems Inc. Accelerometer influenced communication device
US20030182113A1 (en) 1999-11-22 2003-09-25 Xuedong Huang Distributed speech recognition for mobile communication devices
JP3854047B2 (ja) 2000-01-31 2006-12-06 セイコーインスツル株式会社 携帯型高度計および高度演算方法
US7321774B1 (en) 2002-04-24 2008-01-22 Ipventure, Inc. Inexpensive position sensing device
US6615170B1 (en) 2000-03-07 2003-09-02 International Business Machines Corporation Model-based voice activity detection system and method using a log-likelihood ratio and pitch
US6754373B1 (en) * 2000-07-14 2004-06-22 International Business Machines Corporation System and method for microphone activation using visual speech cues
US7302280B2 (en) * 2000-07-17 2007-11-27 Microsoft Corporation Mobile phone operation based upon context sensing
US7688306B2 (en) 2000-10-02 2010-03-30 Apple Inc. Methods and apparatuses for operating a portable device based on an accelerometer
US6721706B1 (en) 2000-10-30 2004-04-13 Koninklijke Philips Electronics N.V. Environment-responsive user interface/entertainment device that simulates personal interaction
US20020077826A1 (en) 2000-11-25 2002-06-20 Hinde Stephen John Voice communication concerning a local entity
US7136630B2 (en) * 2000-12-22 2006-11-14 Broadcom Corporation Methods of recording voice signals in a mobile set
US6563911B2 (en) 2001-01-23 2003-05-13 Ivoice, Inc. Speech enabled, automatic telephone dialer using names, including seamless interface with computer-based address book programs
EP1256875A1 (en) 2001-05-10 2002-11-13 Nokia Corporation Method and device for context dependent user input prediction
US6774796B2 (en) 2001-08-01 2004-08-10 Motorola, Inc. Master authenticator
US6813491B1 (en) 2001-08-31 2004-11-02 Openwave Systems Inc. Method and apparatus for adapting settings of wireless communication devices in accordance with user proximity
EP1292090A1 (en) 2001-09-05 2003-03-12 Motorola, Inc. Conference calling with speaker identification
JP2003131785A (ja) * 2001-10-22 2003-05-09 Toshiba Corp インタフェース装置および操作制御方法およびプログラム製品
US7159194B2 (en) 2001-11-30 2007-01-02 Palm, Inc. Orientation dependent functionality of an electronic device
US6826515B2 (en) 2002-02-01 2004-11-30 Plantronics, Inc. Headset noise exposure dosimeter
US20030171926A1 (en) 2002-03-07 2003-09-11 Narasimha Suresh System for information storage, retrieval and voice based content search and methods thereof
JP3838159B2 (ja) * 2002-05-31 2006-10-25 日本電気株式会社 音声認識対話装置およびプログラム
US7203368B2 (en) * 2003-01-06 2007-04-10 Intel Corporation Embedded bayesian network for pattern recognition
US20040260547A1 (en) * 2003-05-08 2004-12-23 Voice Signal Technologies Signal-to-noise mediated speech recognition algorithm
US20040243416A1 (en) * 2003-06-02 2004-12-02 Gardos Thomas R. Speech recognition
JP4521673B2 (ja) * 2003-06-19 2010-08-11 株式会社国際電気通信基礎技術研究所 発話区間検出装置、コンピュータプログラム及びコンピュータ
US20050033571A1 (en) 2003-08-07 2005-02-10 Microsoft Corporation Head mounted multi-sensory audio input system
KR100567828B1 (ko) * 2003-08-06 2006-04-05 삼성전자주식회사 향상된 음성인식 장치 및 방법
US7305078B2 (en) 2003-12-18 2007-12-04 Electronic Data Systems Corporation Speaker identification during telephone conferencing
US7690395B2 (en) 2004-01-12 2010-04-06 Masco Corporation Of Indiana Multi-mode hands free automatic faucet
US7783729B1 (en) 2004-03-19 2010-08-24 Single Touch Interactive, Inc. Transmitting mobile device data
US8036895B2 (en) 2004-04-02 2011-10-11 K-Nfb Reading Technology, Inc. Cooperative processing for portable reading machine
US8095081B2 (en) * 2004-04-29 2012-01-10 Sony Ericsson Mobile Communications Ab Device and method for hands-free push-to-talk functionality
KR100660293B1 (ko) * 2004-06-02 2006-12-20 에스케이 텔레콤주식회사 단말 음성메뉴 이동 시스템
US7519223B2 (en) 2004-06-28 2009-04-14 Microsoft Corporation Recognizing gestures and using gestures for interacting with software applications
US20060052109A1 (en) * 2004-09-07 2006-03-09 Ashman William C Jr Motion-based user input for a wireless communication device
US7283850B2 (en) 2004-10-12 2007-10-16 Microsoft Corporation Method and apparatus for multi-sensory speech enhancement on a mobile device
US7245940B2 (en) * 2004-10-19 2007-07-17 Kyocera Wireless Corp. Push to talk voice buffering systems and methods in wireless communication calls
GB2419433A (en) 2004-10-20 2006-04-26 Glasgow School Of Art Automated Gesture Recognition
KR100631608B1 (ko) 2004-11-25 2006-10-09 엘지전자 주식회사 음성 판별 방법
US8175877B2 (en) * 2005-02-02 2012-05-08 At&T Intellectual Property Ii, L.P. Method and apparatus for predicting word accuracy in automatic speech recognition systems
US20060229108A1 (en) * 2005-02-04 2006-10-12 Cehelnik Thomas G Mobile phone extension and data interface via an audio headset connection
JP4792823B2 (ja) * 2005-06-09 2011-10-12 ソニー株式会社 ネットワーク・システム、移動体装置及びその制御方法、並びにコンピュータ・プログラム
US7519537B2 (en) * 2005-07-19 2009-04-14 Outland Research, Llc Method and apparatus for a verbo-manual gesture interface
US20070061335A1 (en) 2005-09-14 2007-03-15 Jorey Ramer Multimodal search query processing
US9775093B2 (en) 2005-10-12 2017-09-26 At&T Mobility Ii Llc Architecture that manages access between a mobile communications device and an IP network
US7996228B2 (en) 2005-12-22 2011-08-09 Microsoft Corporation Voice initiated network operations
US7496693B2 (en) 2006-03-17 2009-02-24 Microsoft Corporation Wireless enabled speech recognition (SR) portable device including a programmable user trained SR profile for transmission to external SR enabled PC
JP2007280219A (ja) * 2006-04-10 2007-10-25 Nippon Telegr & Teleph Corp <Ntt> 動きパターン認識装置、動きパターン認識方法及び動きパターン認識プログラム
US8571862B2 (en) 2006-11-30 2013-10-29 Ashwin P. Rao Multimodal interface for input of text
US7653508B1 (en) 2006-12-22 2010-01-26 Dp Technologies, Inc. Human activity monitoring device
US20080154870A1 (en) 2006-12-26 2008-06-26 Voice Signal Technologies, Inc. Collection and use of side information in voice-mediated mobile search
KR100929531B1 (ko) 2006-12-28 2009-12-03 에스케이마케팅앤컴퍼니 주식회사 음성 인식을 이용한 무선 환경에서의 정보 제공 시스템 및그 방법
US8952832B2 (en) * 2008-01-18 2015-02-10 Invensense, Inc. Interfacing application programs and motion sensors of a device
US20090262074A1 (en) 2007-01-05 2009-10-22 Invensense Inc. Controlling and accessing content using motion processing on mobile devices
US8326636B2 (en) 2008-01-16 2012-12-04 Canyon Ip Holdings Llc Using a physical phenomenon detector to control operation of a speech recognition engine
US8385824B2 (en) 2007-05-03 2013-02-26 MindTree Limited Procedure for headset and device authentication
US20090016501A1 (en) * 2007-07-13 2009-01-15 Recordant, Inc. Off-hook detection system, method, and computer program product
US7874681B2 (en) 2007-10-05 2011-01-25 Huebner Kenneth J Interactive projector system and method
CA2704923C (en) 2007-11-09 2016-04-05 Google, Inc. Activating applications based on accelerometer data
WO2009063874A1 (ja) 2007-11-13 2009-05-22 Mitsumi Electric Co., Ltd. バックライト装置及びこれを用いた液晶表示装置
US8140335B2 (en) 2007-12-11 2012-03-20 Voicebox Technologies, Inc. System and method for providing a natural language voice user interface in an integrated voice navigation services environment
US8112281B2 (en) 2007-12-19 2012-02-07 Enbiomedic Accelerometer-based control of wearable audio recorders
US8315876B2 (en) 2008-05-09 2012-11-20 Plantronics, Inc. Headset wearer identity authentication with voice print or speech recognition
TWI364691B (en) 2008-06-04 2012-05-21 Wistron Corp Handheld type electronic product and control method for automatically switching between operating modes
KR100988397B1 (ko) 2008-06-09 2010-10-19 엘지전자 주식회사 이동 단말기 및 그의 텍스트 수정방법
US8315366B2 (en) 2008-07-22 2012-11-20 Shoretel, Inc. Speaker identification and representation for a phone
US8112037B2 (en) 2008-09-02 2012-02-07 Nissaf Ketari Bluetooth assistant
US8121586B2 (en) 2008-09-16 2012-02-21 Yellowpages.Com Llc Systems and methods for voice based search
US8330474B2 (en) 2008-10-15 2012-12-11 Synaptics Incorporated Sensor device and method with at surface object sensing and away from surface object sensing
KR101545582B1 (ko) 2008-10-29 2015-08-19 엘지전자 주식회사 단말기 및 그 제어 방법
JP5538415B2 (ja) 2008-11-10 2014-07-02 グーグル・インコーポレーテッド 多感覚応用音声検出
US8441441B2 (en) 2009-01-06 2013-05-14 Qualcomm Incorporated User interface for mobile devices
US8339367B2 (en) 2009-02-27 2012-12-25 Research In Motion Limited System and method for analyzing movements of an electronic device using rotational movement data
US8261212B2 (en) 2009-10-20 2012-09-04 Microsoft Corporation Displaying GUI elements on natural user interfaces
US20110099507A1 (en) 2009-10-28 2011-04-28 Google Inc. Displaying a collection of interactive elements that trigger actions directed to an item
US8922485B1 (en) 2009-12-18 2014-12-30 Google Inc. Behavioral recognition on mobile devices
US20110199292A1 (en) 2010-02-18 2011-08-18 Kilbride Paul E Wrist-Mounted Gesture Device
US20110216153A1 (en) 2010-03-03 2011-09-08 Michael Edric Tasker Digital conferencing for mobile devices
US8428759B2 (en) 2010-03-26 2013-04-23 Google Inc. Predictive pre-recording of audio for voice input
US8228292B1 (en) 2010-04-02 2012-07-24 Google Inc. Flipping for motion-based input
US8473289B2 (en) 2010-08-06 2013-06-25 Google Inc. Disambiguating input based on context
US9167991B2 (en) 2010-09-30 2015-10-27 Fitbit, Inc. Portable monitoring devices and methods of operating same
US8253684B1 (en) * 2010-11-02 2012-08-28 Google Inc. Position and orientation determination for a mobile computing device

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007094104A (ja) * 2005-09-29 2007-04-12 Sony Corp 情報処理装置および方法、並びにプログラム
WO2007149731A1 (en) * 2006-06-21 2007-12-27 Symbol Technologies, Inc. System and method for monitoring spatial orientation and motion of a mobile device

Also Published As

Publication number Publication date
US10026419B2 (en) 2018-07-17
US20180308510A1 (en) 2018-10-25
EP2351021A2 (en) 2011-08-03
KR20190028572A (ko) 2019-03-18
US10020009B1 (en) 2018-07-10
US20130013316A1 (en) 2013-01-10
KR102339297B1 (ko) 2021-12-14
US20150287423A1 (en) 2015-10-08
US9570094B2 (en) 2017-02-14
EP3258468B1 (en) 2019-08-21
JP5538415B2 (ja) 2014-07-02
WO2010054373A3 (en) 2010-08-26
KR20180019752A (ko) 2018-02-26
EP3258468A1 (en) 2017-12-20
KR20210152028A (ko) 2021-12-14
US8862474B2 (en) 2014-10-14
KR20170052700A (ko) 2017-05-12
US20120278074A1 (en) 2012-11-01
WO2010054373A2 (en) 2010-05-14
KR101829865B1 (ko) 2018-02-20
KR20110100620A (ko) 2011-09-14
US9009053B2 (en) 2015-04-14
US20180358035A1 (en) 2018-12-13
KR102128562B1 (ko) 2020-06-30
US20130013315A1 (en) 2013-01-10
US10720176B2 (en) 2020-07-21
EP3576388A1 (en) 2019-12-04
KR20200078698A (ko) 2020-07-01
JP2012508530A (ja) 2012-04-05
EP2351021B1 (en) 2017-09-06
US10714120B2 (en) 2020-07-14
US20100121636A1 (en) 2010-05-13
US20150302870A1 (en) 2015-10-22

Similar Documents

Publication Publication Date Title
KR101734450B1 (ko) 멀티센서 음성 검출
US8922485B1 (en) Behavioral recognition on mobile devices
CN106030494B (zh) 基于邻近度传感器的交互
CA2704923C (en) Activating applications based on accelerometer data
CN109240785B (zh) 一种设置语言的方法、终端及存储介质
CN113744736B (zh) 命令词识别方法、装置、电子设备及存储介质
CN113220590A (zh) 语音交互应用的自动化测试方法、装置、设备及介质

Legal Events

Date Code Title Description
A201 Request for examination
AMND Amendment
E902 Notification of reason for refusal
AMND Amendment
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
AMND Amendment
X701 Decision to grant (after re-examination)
GRNT Written decision to grant