KR102672618B1 - 헤드-웨어러블 장치를 사용하여 캡처된 신호들의 신호 대 잡음비를 개선하기 위한 동적 빔포밍 - Google Patents
헤드-웨어러블 장치를 사용하여 캡처된 신호들의 신호 대 잡음비를 개선하기 위한 동적 빔포밍 Download PDFInfo
- Publication number
- KR102672618B1 KR102672618B1 KR1020237033875A KR20237033875A KR102672618B1 KR 102672618 B1 KR102672618 B1 KR 102672618B1 KR 1020237033875 A KR1020237033875 A KR 1020237033875A KR 20237033875 A KR20237033875 A KR 20237033875A KR 102672618 B1 KR102672618 B1 KR 102672618B1
- Authority
- KR
- South Korea
- Prior art keywords
- beamformer
- signal
- noise
- microphone
- content
- Prior art date
Links
- 238000000034 method Methods 0.000 claims abstract description 41
- 239000003623 enhancer Substances 0.000 claims abstract description 7
- 238000003491 array Methods 0.000 claims description 21
- 230000005236 sound signal Effects 0.000 claims description 10
- 238000004891 communication Methods 0.000 description 29
- 230000006870 function Effects 0.000 description 16
- 230000003287 optical effect Effects 0.000 description 12
- 230000008569 process Effects 0.000 description 11
- 238000010586 diagram Methods 0.000 description 10
- 238000012545 processing Methods 0.000 description 7
- 230000007613 environmental effect Effects 0.000 description 6
- 230000014509 gene expression Effects 0.000 description 6
- 238000007726 management method Methods 0.000 description 5
- 230000002093 peripheral effect Effects 0.000 description 5
- 238000001514 detection method Methods 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 239000007789 gas Substances 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- 230000001133 acceleration Effects 0.000 description 2
- 230000036772 blood pressure Effects 0.000 description 2
- 230000036760 body temperature Effects 0.000 description 2
- 210000004556 brain Anatomy 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 2
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 230000008878 coupling Effects 0.000 description 2
- 238000010168 coupling process Methods 0.000 description 2
- 238000005859 coupling reaction Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000001815 facial effect Effects 0.000 description 2
- 230000008921 facial expression Effects 0.000 description 2
- 239000011521 glass Substances 0.000 description 2
- 230000005484 gravity Effects 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000002207 retinal effect Effects 0.000 description 2
- 210000004243 sweat Anatomy 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 230000001755 vocal effect Effects 0.000 description 2
- 241000278713 Theora Species 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 230000002238 attenuated effect Effects 0.000 description 1
- 230000010267 cellular communication Effects 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 230000000593 degrading effect Effects 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 238000000537 electroencephalography Methods 0.000 description 1
- 239000003344 environmental pollutant Substances 0.000 description 1
- 231100001261 hazardous Toxicity 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 231100000719 pollutant Toxicity 0.000 description 1
- 230000001902 propagating effect Effects 0.000 description 1
- 230000008261 resistance mechanism Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 230000008054 signal transmission Effects 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 230000001629 suppression Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L21/00—Speech or voice signal processing techniques to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
- G10L21/02—Speech enhancement, e.g. noise reduction or echo cancellation
- G10L21/0208—Noise filtering
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04R—LOUDSPEAKERS, MICROPHONES, GRAMOPHONE PICK-UPS OR LIKE ACOUSTIC ELECTROMECHANICAL TRANSDUCERS; DEAF-AID SETS; PUBLIC ADDRESS SYSTEMS
- H04R1/00—Details of transducers, loudspeakers or microphones
- H04R1/10—Earpieces; Attachments therefor ; Earphones; Monophonic headphones
- H04R1/1083—Reduction of ambient noise
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04R—LOUDSPEAKERS, MICROPHONES, GRAMOPHONE PICK-UPS OR LIKE ACOUSTIC ELECTROMECHANICAL TRANSDUCERS; DEAF-AID SETS; PUBLIC ADDRESS SYSTEMS
- H04R1/00—Details of transducers, loudspeakers or microphones
- H04R1/20—Arrangements for obtaining desired frequency or directional characteristics
- H04R1/32—Arrangements for obtaining desired frequency or directional characteristics for obtaining desired directional characteristic only
- H04R1/40—Arrangements for obtaining desired frequency or directional characteristics for obtaining desired directional characteristic only by combining a number of identical transducers
- H04R1/406—Arrangements for obtaining desired frequency or directional characteristics for obtaining desired directional characteristic only by combining a number of identical transducers microphones
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04R—LOUDSPEAKERS, MICROPHONES, GRAMOPHONE PICK-UPS OR LIKE ACOUSTIC ELECTROMECHANICAL TRANSDUCERS; DEAF-AID SETS; PUBLIC ADDRESS SYSTEMS
- H04R3/00—Circuits for transducers, loudspeakers or microphones
- H04R3/005—Circuits for transducers, loudspeakers or microphones for combining the signals of two or more microphones
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L21/00—Speech or voice signal processing techniques to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
- G10L21/02—Speech enhancement, e.g. noise reduction or echo cancellation
- G10L21/0208—Noise filtering
- G10L21/0216—Noise filtering characterised by the method used for estimating noise
- G10L2021/02161—Number of inputs available containing the signal or the noise to be suppressed
- G10L2021/02166—Microphone arrays; Beamforming
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04R—LOUDSPEAKERS, MICROPHONES, GRAMOPHONE PICK-UPS OR LIKE ACOUSTIC ELECTROMECHANICAL TRANSDUCERS; DEAF-AID SETS; PUBLIC ADDRESS SYSTEMS
- H04R2225/00—Details of deaf aids covered by H04R25/00, not provided for in any of its subgroups
- H04R2225/49—Reducing the effects of electromagnetic noise on the functioning of hearing aids, by, e.g. shielding, signal processing adaptation, selective (de)activation of electronic parts in hearing aid
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04R—LOUDSPEAKERS, MICROPHONES, GRAMOPHONE PICK-UPS OR LIKE ACOUSTIC ELECTROMECHANICAL TRANSDUCERS; DEAF-AID SETS; PUBLIC ADDRESS SYSTEMS
- H04R2227/00—Details of public address [PA] systems covered by H04R27/00 but not provided for in any of its subgroups
- H04R2227/001—Adaptation of signal processing in PA systems in dependence of presence of noise
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04R—LOUDSPEAKERS, MICROPHONES, GRAMOPHONE PICK-UPS OR LIKE ACOUSTIC ELECTROMECHANICAL TRANSDUCERS; DEAF-AID SETS; PUBLIC ADDRESS SYSTEMS
- H04R2410/00—Microphones
- H04R2410/01—Noise reduction using microphones having different directional characteristics
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04R—LOUDSPEAKERS, MICROPHONES, GRAMOPHONE PICK-UPS OR LIKE ACOUSTIC ELECTROMECHANICAL TRANSDUCERS; DEAF-AID SETS; PUBLIC ADDRESS SYSTEMS
- H04R2410/00—Microphones
- H04R2410/03—Reduction of intrinsic noise in microphones
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04R—LOUDSPEAKERS, MICROPHONES, GRAMOPHONE PICK-UPS OR LIKE ACOUSTIC ELECTROMECHANICAL TRANSDUCERS; DEAF-AID SETS; PUBLIC ADDRESS SYSTEMS
- H04R2410/00—Microphones
- H04R2410/05—Noise reduction with a separate noise microphone
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04R—LOUDSPEAKERS, MICROPHONES, GRAMOPHONE PICK-UPS OR LIKE ACOUSTIC ELECTROMECHANICAL TRANSDUCERS; DEAF-AID SETS; PUBLIC ADDRESS SYSTEMS
- H04R2410/00—Microphones
- H04R2410/07—Mechanical or electrical reduction of wind noise generated by wind passing a microphone
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04R—LOUDSPEAKERS, MICROPHONES, GRAMOPHONE PICK-UPS OR LIKE ACOUSTIC ELECTROMECHANICAL TRANSDUCERS; DEAF-AID SETS; PUBLIC ADDRESS SYSTEMS
- H04R2430/00—Signal processing covered by H04R, not provided for in its groups
- H04R2430/20—Processing of the output signals of the acoustic transducers of an array for obtaining a desired directivity characteristic
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04R—LOUDSPEAKERS, MICROPHONES, GRAMOPHONE PICK-UPS OR LIKE ACOUSTIC ELECTROMECHANICAL TRANSDUCERS; DEAF-AID SETS; PUBLIC ADDRESS SYSTEMS
- H04R2460/00—Details of hearing devices, i.e. of ear- or headphones covered by H04R1/10 or H04R5/033 but not provided for in any of their subgroups, or of hearing aids covered by H04R25/00 but not provided for in any of its subgroups
- H04R2460/01—Hearing devices using active noise cancellation
Landscapes
- Engineering & Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- Acoustics & Sound (AREA)
- Otolaryngology (AREA)
- Computational Linguistics (AREA)
- Quality & Reliability (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Multimedia (AREA)
- General Health & Medical Sciences (AREA)
- Circuit For Audible Band Transducer (AREA)
Abstract
헤드-웨어러블 장치에 의해 캡처된 신호들에서 SNR을 감소시키기 위해 동적 빔포밍을 수행하는 방법은 마이크로폰들이 음향 신호들을 생성하는 것으로 시작한다. 마이크로폰들은 장치의 제1 스템 및 장치의 제2 스템에 결합된다. 제1 및 제2 빔포머들은 각각 제1 및 제2 빔포머 신호들을 생성한다. 잡음 억제기는 제1 빔포머 신호 및 제2 빔포머 신호로부터 잡음 콘텐츠를 감쇠시킨다. 제1 빔포머 신호로부터의 잡음 콘텐츠는 제2 빔포머 신호에 동위치되지 않은 음향 신호이고, 제2 빔포머 신호로부터의 잡음 콘텐츠는 제1 빔포머 신호에 동위치되지 않은 음향 신호이다. 스피치 인핸서는 제1 잡음 억제된 신호 및 제2 잡음 억제된 신호로부터 스피치 콘텐츠를 포함하는 클린 신호를 생성한다. 스피치 콘텐츠는 제1 빔포머 신호 및 제2 빔포머 신호에 동위치된 음향 신호들이다.
Description
관련 출원들에 대한 상호 참조
본 출원은 2019년 6월 28일에 출원된 미국 가특허 출원 일련번호 62/868,715에 대한 우선권을 주장하며, 그 내용들은 그 전체가 본 명세서에 참고로 포함된다.
현재, 다수의 소비자 전자 디바이스들은 마이크로폰 포트들 또는 헤드셋들을 통해 스피치(speech)를 수신하도록 적응되어 있다. 전형적인 예는 휴대용 통신 디바이스(모바일 전화)이지만, VoIP(Voice over IP)의 출현으로, 데스크톱 컴퓨터들, 랩톱 컴퓨터들, 태블릿 컴퓨터들, 및 웨어러블 디바이스들이 또한 음성 통신들을 수행하는 데 사용될 수 있다.
이들 전자 디바이스를 사용할 때, 사용자는 또한 그의 스피치를 수신하기 위해 스피커폰 모드나 유선 또는 무선 헤드셋을 사용하는 옵션을 갖는다. 그러나, 이러한 핸즈프리 동작 모드들의 공통적인 불만은 마이크로폰 포트 또는 헤드셋에 의해 캡처되는 스피치가 윈드 잡음, 백그라운드의 보조 스피커들 또는 다른 백그라운드 잡음들과 같은 환경 잡음을 포함한다는 것이다. 이러한 환경 잡음은 종종 사용자의 스피치를 이해할 수 없게 만들고, 따라서 음성 통신의 품질을 저하시킨다.
반드시 일정 비율로 그려지는 것은 아닌 도면들에서, 동일한 참조 번호들이 상이한 뷰들에서 유사한 컴포넌트들을 설명할 수 있다. 상이한 문자 접미사들을 가진 동일한 참조 번호들은 유사한 컴포넌트들의 상이한 사례들(instances)을 표현할 수 있다. 일부 실시예들은 첨부 도면들에서 제한이 아닌 예로서 예시된다.
도 1은 하나의 예시적인 실시예에 따른 바이노럴 오디오(binaural audio)를 생성하는 헤드-웨어러블 장치(head-wearable apparatus)의 사시도를 예시한다.
도 2는 하나의 예시적인 실시예에 따른, 도 1의 헤드-웨어러블 장치의 저면도(bottom view)를 예시한다.
도 3은 하나의 예시적인 실시예에 따른 도 1의 헤드-웨어러블 장치를 사용하여 캡처된 신호들의 신호 대 잡음비를 개선하기 위해 동적 빔포밍(dynamic beamforming)을 수행하는 시스템의 블록도를 예시한다.
도 4는 본 개시내용의 다양한 양태들에 따른 도 1의 헤드-웨어러블 장치를 사용하여 캡처된 신호들의 신호 대 잡음비를 개선하기 위한 동적 빔포밍의 프로세스의 예시적인 흐름도이다.
도 5는 본 명세서에 설명된 다양한 하드웨어 아키텍처들과 함께 사용될 수 있는 대표적인 소프트웨어 아키텍처를 예시하는 블록도이다.
도 6은 머신 판독가능 매체(예를 들어, 머신 판독가능 저장 매체)로부터 명령어들을 판독하고 본 명세서에서 논의된 방법론들 중 임의의 하나 이상을 수행할 수 있는, 일부 예시적인 실시예들에 따른, 머신의 컴포넌트들을 예시하는 블록도이다.
도 7은 다양한 네트워크들을 통해 모바일 디바이스 및 서버 시스템에 통신가능하게 결합된 예시적인 헤드-웨어러블 장치의 하이-레벨 기능 블록도이다.
도 1은 하나의 예시적인 실시예에 따른 바이노럴 오디오(binaural audio)를 생성하는 헤드-웨어러블 장치(head-wearable apparatus)의 사시도를 예시한다.
도 2는 하나의 예시적인 실시예에 따른, 도 1의 헤드-웨어러블 장치의 저면도(bottom view)를 예시한다.
도 3은 하나의 예시적인 실시예에 따른 도 1의 헤드-웨어러블 장치를 사용하여 캡처된 신호들의 신호 대 잡음비를 개선하기 위해 동적 빔포밍(dynamic beamforming)을 수행하는 시스템의 블록도를 예시한다.
도 4는 본 개시내용의 다양한 양태들에 따른 도 1의 헤드-웨어러블 장치를 사용하여 캡처된 신호들의 신호 대 잡음비를 개선하기 위한 동적 빔포밍의 프로세스의 예시적인 흐름도이다.
도 5는 본 명세서에 설명된 다양한 하드웨어 아키텍처들과 함께 사용될 수 있는 대표적인 소프트웨어 아키텍처를 예시하는 블록도이다.
도 6은 머신 판독가능 매체(예를 들어, 머신 판독가능 저장 매체)로부터 명령어들을 판독하고 본 명세서에서 논의된 방법론들 중 임의의 하나 이상을 수행할 수 있는, 일부 예시적인 실시예들에 따른, 머신의 컴포넌트들을 예시하는 블록도이다.
도 7은 다양한 네트워크들을 통해 모바일 디바이스 및 서버 시스템에 통신가능하게 결합된 예시적인 헤드-웨어러블 장치의 하이-레벨 기능 블록도이다.
이하의 설명은 본 개시내용의 예시적인 실시예들을 구현하는 시스템들, 방법들, 기법들, 명령어 시퀀스들, 및 컴퓨팅 머신 프로그램 제품들을 포함한다. 다음의 설명에서는, 설명의 목적들을 위하여, 수많은 특정 상세사항들이 발명 요지의 다양한 실시예들의 이해를 제공하기 위하여 기재되어 있다. 그러나, 발명 요지의 실시예들은 이 특정 상세사항들 없이 실시될 수 있다는 것이 본 기술분야의 통상의 기술자들에게 분명할 것이다. 일반적으로, 잘 알려진 명령어 인스턴스들(instruction instances), 프로토콜들, 구조들, 및 기법들은 반드시 상세하게 도시되지는 않는다.
현재의 전자 모바일 디바이스들에 의해 캡처된 신호의 신호 대 잡음비를 개선하기 위해, 본 개시내용의 일부 실시예들은, 빔포머(beamformer) 신호들에 대한 동적 빔포밍 및 오디오 처리를 수행하여 잡음 콘텐츠(noise content)를 감쇠시키면서 스피치 콘텐츠(speech content)를 강화(enhance)시키는 헤드-웨어러블 장치에 관한 것이다. 구체적으로, 헤드-웨어러블 장치는 안경의 프레임의 양측에 결합되는 우측 및 좌측 스템(stem)을 포함하는 안경(a pair of eyeglasses)일 수 있다. 각각의 스템은 2개의 마이크로폰을 포함하는 마이크로폰 하우징에 결합된다. 각각의 스템 상의 마이크로폰들은 마이크로폰 어레이들을 형성한다. 빔포머들은 프레임의 각 측면 상의 마이크로폰 어레이들을 사용자의 얼굴 또는 입을 향해 조향(steer)할 수 있다. 사용자의 입 방향을 가리키는 지향성 빔포머는 사용자의 입으로부터 음향 신호들을 캡처할 것이지만, 그것은 또한 그 동일한 방향으로 사용자의 입을 지나는 음향 콘텐츠(acoustic content)를 캡처할 것이다. 따라서, 일부 실시예들은 사용자의 얼굴 또는 입의 양측 상의 평면들 상에 위치하는 마이크로폰 어레이들을 활용하여, 스피치 콘텐츠일 가능성이 있는 빔포머 신호들 내의 콘텐츠를 결정한다. 예를 들어, 두 마이크로폰 어레이들이 반대 방향에서 사용자의 입을 가리키고 있을 때, 마이크로폰 어레이들 사이에 있거나 두 마이크로폰 어레이들에 동위치된(collocated) 콘텐츠는 스피치 콘텐츠인 것으로 간주될 수 있다.
일 실시예에서, 시스템은 또한 빔포머들이 상이한 방향으로 조향되게 하는 빔포머 제어기를 포함한다. 빔포머 제어기는 빔포머들의 방향들을 서로에 대해 동적으로 변경할 수 있다. 각각의 빔포머의 방향 및 구성을 알면, 시스템은 수신될 것으로 예상되지 않는 음향 콘텐츠를 감쇠시키기 위해 오디오 처리를 수행할 수 있다. 시스템은 또한 빔포머 빔들 사이에 있지 않은 음향 콘텐츠 또는 동위치되지 않은 음향 콘텐츠를 감쇠시킬 수 있다.
일 실시예에서, 헤드-웨어러블 장치의 대향 측면들 상의 마이크로폰 어레이들에 의해, 시스템은 다양한 빔포밍 구성들(예를 들어, 동적 빔포밍)을 통해 순환(cycle)하고 실시간으로 오디오 처리되는 원시 음향 데이터를 캡처할 수 있다. 이것은 시스템이 잡음 콘텐츠(예를 들어, 환경 잡음, 보조 스피커들 등)의 감쇠를 최대화하고, 스피치 콘텐츠를 강화시키고, 따라서 결과적인 클린(clean) 신호에서 신호 대 잡음비를 감소시키는 것을 허용한다.
도 1은 하나의 예시적인 실시예에 따른 헤드-웨어러블 장치를 사용하여 캡처된 신호들의 신호 대 잡음비를 개선하기 위해 동적 빔포밍을 수행하는 헤드-웨어러블 장치(100)의 사시도를 예시한다. 도 2는 하나의 예시적인 실시예에 따른, 도 1의 헤드-웨어러블 장치(100)의 저면도를 예시한다. 도 1 및 도 2에서, 헤드-웨어러블 장치(100)는 안경이다. 일부 실시예들에서, 헤드-웨어러블 장치(100)는 선글라스 또는 고글일 수 있다. 일부 실시예들은, 헤드-웨어러블 장치(100) 또는 클라이언트 디바이스와 통합되거나, 그와 통신하거나, 또는 그에 결합되는 통합된 카메라를 갖는 펜던트와 같은 하나 이상의 웨어러블 디바이스를 포함할 수 있다. 시계, 헤드셋, 손목 밴드, 이어버드, 의복(예컨대 전자 기술이 통합된 모자 또는 재킷), 클립-온 전자 디바이스(clip-on electronic device), 또는 임의의 다른 웨어러블 디바이스들과 같은 임의의 원하는 웨어러블 디바이스가 본 개시내용의 실시예들과 함께 사용될 수 있다. 도시되어 있지는 않지만, 헤드-웨어러블 장치에 포함된 시스템의 하나 이상의 부분은 헤드-웨어러블 장치(100)와 함께 사용될 수 있는 클라이언트 디바이스(예를 들어, 도 6의 머신(800))에 포함될 수 있다는 것이 이해된다. 예를 들어, 도 3에 도시된 바와 같은 하나 이상의 요소가 헤드-웨어러블 장치(100) 및/또는 클라이언트 디바이스에 포함될 수 있다.
본 명세서에 사용된 바와 같이, "클라이언트 디바이스"라는 용어는 하나 이상의 서버 시스템 또는 다른 클라이언트 디바이스로부터 리소스를 획득하기 위해 통신 네트워크와 인터페이스하는 임의의 머신을 지칭할 수 있다. 클라이언트 디바이스는, 모바일폰, 데스크톱 컴퓨터, 랩톱, 개인 휴대 정보 단말기(portable digital assistant)(PDA), 스마트폰, 태블릿, 울트라 북, 넷북, 랩톱, 멀티-프로세서 시스템, 마이크로프로세서-기반 또는 프로그램가능 가전 제품, 게임 콘솔, 셋톱박스, 또는 사용자가 네트워크에 액세스하기 위해 사용할 수 있는 임의의 다른 통신 디바이스일 수 있고, 이에 제한되지 않는다.
도 1 및 도 2에서, 헤드-웨어러블 장치(100)는 힌지들 및/또는 엔드 피스들을 통해 2개의 스템(또는 안경다리)에 각각 결합되는 아이 와이어들(또는 림들)을 포함하는 프레임(103)을 포함하는 안경이다. 프레임(103)의 아이 와이어들은 한 쌍의 렌즈들(104_1, 104_2)을 지지(carry)하거나 유지한다. 프레임(103)은 제1 스템에 결합되는 제1(예를 들어, 우측) 측면 및 제2 스템에 결합되는 제2(예를 들어, 좌측) 측면을 포함한다. 제1 측면은 프레임(103)의 제2 측면에 대향한다.
장치(100)는 카메라 렌즈들(102_1, 102_2) 및 적어도 하나의 이미지 센서를 포함하는 카메라 모듈을 추가로 포함한다. 카메라 렌즈는 원근 카메라 렌즈 또는 비-원근 카메라 렌즈일 수 있다. 비-원근 카메라 렌즈는, 예를 들어, 어안 렌즈, 광각 렌즈, 전방향 렌즈 등일 수 있다. 이미지 센서는 카메라 렌즈를 통해 디지털 비디오를 캡처한다. 이미지들은 또한 정지 이미지 프레임 또는 복수의 정지 이미지 프레임을 포함하는 비디오일 수 있다. 카메라 모듈은 프레임(103)에 결합될 수 있다. 도 1 및 도 2에 도시된 바와 같이, 프레임(103)은 카메라 렌즈들이 전방을 향하도록 카메라 렌즈들(102_1, 102_2)에 결합된다. 카메라 렌즈들(102_1, 102_2)은 렌즈들(104_1, 104_2)에 수직일 수 있다. 카메라 모듈은 프레임(103)의 폭 또는 장치(100)의 사용자의 머리의 폭만큼 분리되는 이중 전면 카메라들(dual-front facing cameras)을 포함할 수 있다.
도 1 및 도 2에서, 2개의 스템(또는 안경다리)은 각각 마이크로폰 하우징들(101_1, 101_2)에 결합된다. 제1 스템 및 제2 스템은 헤드-웨어러블 장치(100)의 프레임(103)의 대향 측면들에 결합된다. 제1 스템은 제1 마이크로폰 하우징(101_1)에 결합되고 제2 스템은 제2 마이크로폰 하우징(101_2)에 결합된다. 마이크로폰 하우징들(101_1, 101_2)은 프레임(103)의 로케이션들과 안경다리 팁들 사이의 스템들에 결합될 수 있다. 마이크로폰 하우징들(101_1, 101_2)은 사용자가 장치(100)를 착용하고 있을 때 사용자의 관자놀이들의 양측에 위치할 수 있다.
도 2에 도시된 바와 같이, 마이크로폰 하우징들(101_1, 101_2)은 복수의 마이크로폰(110_1 내지 110_N)(N>1)을 둘러싼다(encase). 마이크로폰들(110_1 내지 110_N)은 사운드를 전기 신호로 변환하는 에어 인터페이스 사운드 픽업 디바이스(air interface sound pickup device)들이다. 더 구체적으로, 마이크로폰들(110_1 내지 110_N)은 음향 압력을 전기 신호들(예를 들어, 음향 신호들)로 변환하는 트랜스듀서들이다. 마이크로폰들(110_1 내지 110_N)은 디지털 또는 아날로그 MEMS(microelectro-mechanical systems) 마이크로폰들일 수 있다. 마이크로폰들(110_1 내지 110_N)에 의해 생성된 음향 신호들은 PDM(pulse density modulation) 신호들일 수 있다.
도 2에서, 제1 마이크로폰 하우징(101_1)은 마이크로폰들(110_3 및 110_4)을 둘러싸고 제2 마이크로폰 하우징(101_2)은 마이크로폰들(110_1 및 110_2)을 둘러싼다. 제1 마이크로폰 하우징(101_1)에서, 제1 전방 마이크로폰(110_3) 및 제1 후방 마이크로폰(110_4)은 미리 결정된 거리 d1만큼 분리되고 1차 차동 마이크로폰 어레이(first order differential microphone array)를 형성할 수 있다. 제2 마이크로폰 하우징(101_2)에서, 제2 전방 마이크로폰(110_1) 및 제2 후방 마이크로폰(110_2)도 미리 결정된 거리 d2만큼 분리되고 1차 차동 마이크로폰 어레이를 형성할 수 있다. 미리 결정된 거리들 d1 및 d2는 동일한 거리 또는 상이한 거리들일 수 있다. 미리 결정된 거리들 d1 및 d2는 나이키스트(Nyquist) 주파수에 기초하여 설정될 수 있다. 빔포머에 대한 나이키스트 주파수 위의 콘텐츠는 특히 스피치에 대해 회복 불가능하다. 나이키스트 주파수는 다음의 수학식에 의해 결정된다:
이 수학식에서, c는 사운드의 속도이고 d는 마이크로폰들 사이의 분리이다. 이 수학식을 사용하여, 일 실시예에서, 미리 결정된 거리들 d1 및 d2는 광대역 스피치에 대한 컷오프인 6 kHz 위의 주파수를 야기하는 d의 임의의 값으로서 설정될 수 있다.
일 실시예에서, 제1 전방 마이크로폰(110_3) 및 제1 후방 마이크로폰(110_4)은 제1 마이크로폰 어레이를 형성하고, 제2 전방 마이크로폰(110_1) 및 제2 후방 마이크로폰(110_2)은 제2 마이크로폰 어레이를 형성한다.
일 실시예에서, 제1 마이크로폰 어레이 및 제2 마이크로폰 어레이는 둘 다 엔드파이어 어레이(endfire array)들이다. 엔드파이어 어레이는 원하는 사운드 전파 방향에 따라 배열된 다수의 마이크로폰들로 구성된다. 어레이 내의 제1 전방 마이크로폰(예를 들어, 축상에서 전파되는 사운드가 도달하는 첫 번째 마이크로폰)이 제1 후방 마이크로폰으로부터의 반전되고 지연된 신호와 합산될 때, 이 구성은, 앞서 논의된 바와 같이, 차동 어레이라고 불린다. 제1 및 제2 마이크로폰 어레이들은 카디오이드(cardioid) 또는 서브-카디오이드(sub-cardioid) 픽업 패턴들을 생성하기 위해 빔포머들을 사용하여 조향될 수 있다. 이 실시예에서, 마이크로폰 어레이들의 후방에 대한 사운드들은 크게 감쇠된다.
다른 실시예에서, 제1 마이크로폰 어레이 및 제2 마이크로폰 어레이는 둘 다 브로드사이드 어레이(broadside array)들이다. 브로드사이드 마이크로폰 어레이는 마이크로폰들의 라인이 바람직한 사운드파 방향에 수직으로 배열되는 어레이이다. 브로드사이드 마이크로폰 어레이들은 브로드사이드 마이크로폰 어레이의 측면에서 나오는 사운드를 감쇠시킨다. 일 실시예에서, 제1 마이크로폰 어레이는 브로드사이드 어레이이고, 제2 마이크로폰 어레이는 엔드파이어 어레이이다. 대안적으로, 제1 마이크로폰 어레이는 엔드파이어 어레이이고, 제2 마이크로폰 어레이는 브로드사이드 어레이이다.
도 1에서, 시스템(100)은 4개의 마이크로폰(110_1 내지 110_4)을 포함하지만, 마이크로폰의 수는 달라질 수 있다. 일부 실시예들에서, 마이크로폰 하우징들(101_1, 101_2)은 적어도 2개의 마이크로폰을 포함할 수 있고 마이크로폰 어레이를 형성할 수 있다. 마이크로폰 하우징들(101_1, 101_2) 각각은 배터리를 또한 포함할 수 있다.
도 2를 참조하면, 마이크로폰 하우징들(101_1, 101_2) 각각은 전방 포트 및 후방 포트를 포함한다. 제1 마이크로폰 하우징(101_1)의 전방 포트는 마이크로폰(110_3)(예를 들어, 제1 전방 마이크로폰)에 결합되고 제1 마이크로폰 하우징(101_1)의 후방 포트는 마이크로폰(110_4)(예를 들어, 제1 후방 마이크로폰)에 결합된다. 일 실시예에서, 마이크로폰(110_3)(예를 들어, 제1 전방 마이크로폰) 및 마이크로폰(110_4)(예를 들어, 제1 후방 마이크로폰)은 동일한 평면(예를 들어, 제1 평면) 상에 위치된다. 제2 마이크로폰 하우징(101_2)의 전방 포트는 마이크로폰(110_1)(예를 들어, 제2 전방 마이크로폰)에 결합되고 제2 마이크로폰 하우징(101_2)의 후방 포트는 마이크로폰(110_2)(예를 들어, 제2 후방 마이크로폰)에 결합된다. 일 실시예에서, 마이크로폰(110_1)(예를 들어, 제2 전방 마이크로폰) 및 마이크로폰(110_2)(예를 들어, 제2 후방 마이크로폰)은 동일한 평면(예를 들어, 제2 평면) 상에 위치된다. 일 실시예에서, 마이크로폰들(101_1 내지 101_4)은 장치(100)(예를 들어, 장치(100)의 뒤쪽)의 스템들 상의 안경다리 팁들을 향해 더 이동될 수 있다.
도 3은 하나의 예시적인 실시예에 따른 도 1의 헤드-웨어러블 장치(100)를 사용하여 캡처된 신호들의 신호 대 잡음비를 개선하기 위해 동적 빔포밍을 수행하는 시스템의 블록도를 예시한다. 일부 실시예들에서, 시스템(300)의 하나 이상의 부분이 헤드-웨어러블 장치(100)에 포함될 수 있거나 헤드-웨어러블 장치(100)와 함께 사용될 수 있는 클라이언트 디바이스(예를 들어, 도 6의 머신(800))에 포함될 수 있다.
시스템(300)은 마이크로폰들(110_1 내지 110_N), 빔포머들(301_1 및 301_2), 잡음 억제기(302), 스피치 인핸서(speech enhancer)(303), 및 빔포머 제어기(304)를 포함한다. 제1 마이크로폰 하우징(101_1) 내에 둘러싸인 제1 전방 마이크로폰(110_3) 및 제1 후방 마이크로폰(110_4)은 제1 마이크로폰 어레이를 형성한다. 유사하게, 제2 마이크로폰 하우징(101_2) 내에 둘러싸인 제2 전방 마이크로폰(110_1) 및 제2 후방 마이크로폰(110_2)은 제2 마이크로폰 어레이를 형성한다. 제1 및 제2 마이크로폰 어레이들은 1차 차동 마이크로폰 어레이들일 수 있다. 제1 및 제2 마이크로폰 어레이들은 또한 각각 브로드사이드 어레이들, 엔드파이어 어레이들, 또는 하나의 브로드사이드 어레이와 하나의 엔드파이어 어레이의 조합일 수 있다. 마이크로폰들(110_1 내지 110_4)은 아날로그 또는 디지털 MEMS 마이크로폰들일 수 있다. 마이크로폰들(110_1 내지 110_4)에 의해 생성된 음향 신호들은 PDM(pulse density modulation) 신호들일 수 있다.
일 실시예에서, 방향 조향 특성들을 갖는 제1 빔포머(301_1) 및 제2 빔포머(301_2)는 나이키스트 주파수를 제외한 평탄한 주파수 응답을 허용하는 차동 빔포머들이다. 빔포머들(301_1 및 301_2)은 1차 차동 마이크로폰 어레이의 전달 함수들을 사용할 수 있다. 일 실시예에서, 빔포머들(301_1 및 301_2)은 서브-카디오이드 또는 카디오이드인 고정 빔 패턴들을 포함하는 고정 빔포머들이다.
도 3에 도시된 바와 같이, 제1 빔포머(301_1)는 제1 전방 마이크로폰(110_3) 및 제1 후방 마이크로폰(110_4)으로부터 음향 신호를 수신하고 수신한 음향 신호에 기초하여 제1 빔포머 신호를 생성한다. 제2 빔포머(301_2)는 제2 전방 마이크로폰(110_1) 및 제2 후방 마이크로폰(110_2)으로부터 음향 신호를 수신하고 수신한 음향 신호에 기초하여 제2 빔포머 신호를 생성한다.
도 3에서, 빔포머 제어기(304)는 제1 빔포머(301_1)가 제1 방향으로 조향되게 하고 제2 빔포머(301_2)가 제2 방향으로 조향되게 한다. 제1 방향 및 제2 방향은 헤드-웨어러블 장치가 사용자에 의해 착용될 때 사용자의 입의 방향에 있을 수 있다. 제1 빔포머(301_1) 및 제2 빔포머(301_2)가 사용자의 머리의 대향 측면들로부터 음향 신호들을 수신하고 있기 때문에, 이 실시예에서 제1 방향 및 제2 방향은 대향 방향들로부터 사용자의 입을 향하고 있다.
빔포머 제어기(304)는 또한 제1 방향 및 제2 방향을 동적으로 변경할 수 있다. 일 실시예에서, 제1 빔포머(301_1) 및 제2 빔포머(301_2)는 서로에 대해 상대적이고 상이한 방향들인 제1 방향 및 제2 방향으로 조향될 수 있다. 방향들을 동적으로 변경함으로써, 빔포머 제어기(304)는 빔포머들(301_1 및 301_2)의 다수의 상이한 구성들을 통해 순환할 수 있다. 또한, 빔포머들(301_1 및 301_2)의 구성을 아는 것에 의해, 스피치 콘텐츠의 로케이션이 예상될 수 있다. 예를 들어, 스피치 콘텐츠는 마이크로폰 어레이들 사이에 있을 수 있거나, 빔포머 신호들 사이에 있을 수 있거나, 빔포머 신호들에 동위치될 수 있다.
잡음 억제기(302)는 제1 빔포머 신호 및 제2 빔포머 신호로부터 잡음 콘텐츠를 감쇠시킨다. 잡음 억제기(302)는 2-채널 잡음 억제기일 수 있고 제1 잡음 억제된 신호 및 제2 잡음 억제된 신호를 생성한다. 일 실시예에서, 잡음 억제기(302)는 잡음 억제 알고리즘을 구현할 수 있다. 잡음 콘텐츠는, 예를 들어, 환경 잡음, 보조 스피커 등일 수 있다. 일 실시예에서, 시스템(300)은 제1 빔포머(301_1) 및 제2 빔포머(301_2)가 사용자의 머리의 대향 측면들로부터 음향 신호들을 수신하고 있어 (예를 들어, 제1 빔포머(301_1)의) 제1 방향 및 (예를 들어, 제2 빔포머(301_2)의) 제2 방향은 대향 방향들로부터 사용자의 입을 향하고 있는 것을 활용한다. 제1 및 제2 방향들이 대향 방향들로부터 사용자를 향하고 있는 것을 고려해 볼 때, 제1 빔포머 신호로부터의 잡음 콘텐츠는 제2 빔포머 신호에 동위치되지 않은 음향 신호이고, 제2 빔포머 신호로부터의 잡음 콘텐츠는 제1 빔포머 신호에 동위치되지 않은 음향 신호이다. 빔포머들(301_1 및 301_2)은, 대향 측면들로부터, 사용자의 입을 향하는 방향뿐만 아니라 그 방향으로 사용자의 입을 지나는 방향을 가리킬 수 있기 때문에, 빔포머 빔들 사이의 비-중첩(또는 비-동위치 영역)은 잡음 콘텐츠를 포함한다.
또한, 스피치 인핸서(303)는 제1 잡음 억제된 신호 및 제2 잡음 억제된 신호로부터 스피치 콘텐츠를 포함하는 클린 신호를 생성한다. 예를 들어, 제1 및 제2 빔포머 신호들 둘 다가 사용자의 머리의 대향 측면들로부터 사용자의 입 방향으로 향하고 있을 때, 빔포머 빔들 사이의 중첩(또는 동위치된 영역)은 스피치 콘텐츠를 포함한다. 이 실시예에서, 스피치 콘텐츠는 제1 빔포머 신호 및 제2 빔포머 신호에 동위치된 음향 신호들이다. 일 실시예에서, 스피치 인핸서(303)는 스피치 강화 알고리즘(speech enhancement algorithm)을 구현할 수 있다.
도 4는 본 개시내용의 다양한 양태들에 따른 도 1의 헤드-웨어러블 장치를 사용하여 캡처된 신호들의 신호 대 잡음비를 개선하기 위한 동적 빔포밍의 프로세스의 예시적인 흐름도이다.
플로차트는 동작들을 순차적 프로세스로서 설명할 수 있지만, 동작들 중 다수는 병렬로 또는 동시에 수행될 수 있다. 게다가, 동작들의 순서는 재배열될 수 있다. 프로세스는 그의 동작들이 완료될 때 종료된다. 프로세스는 방법, 절차 등에 대응할 수 있다. 방법의 단계들은 전체적으로 또는 부분적으로 수행될 수 있고, 다른 방법들에서의 단계들의 일부 또는 전부와 함께 수행될 수 있고, 도 1 및/또는 도 6에 설명된 시스템들과 같은 임의의 수의 상이한 시스템들에 의해 수행될 수 있다. 프로세스(400)는 또한 도 1의 헤드-웨어러블 장치(100)에 포함된 프로세서에 의해 또는 도 6의 클라이언트 디바이스(800)에 포함된 프로세서에 의해 수행될 수 있다.
프로세스(400)는 동작 401에서 마이크로폰들(110_1 내지 110_4)이 음향 신호들을 생성하는 것으로 시작된다. 마이크로폰들(110_1 내지 110_4)은 음향 압력을 전기 신호들(예를 들어, 음향 신호들)로 변환하는 MEMS 마이크로폰들일 수 있다. 제1 전방 마이크로폰(110_3) 및 제1 후방 마이크로폰(110_4)은 헤드-웨어러블 장치(100)의 제1 스템 상에 결합되는 제1 마이크로폰(101_1) 하우징 내에 둘러싸인다. 일 실시예에서, 제1 전방 마이크로폰(110_3) 및 제1 후방 마이크로폰(110_4)은 제1 마이크로폰 어레이를 형성한다. 제1 마이크로폰 어레이는 1차 차동 어레이일 수 있다.
제2 전방 마이크로폰(110_1) 및 제2 후방 마이크로폰(110_2)은 헤드-웨어러블 장치(100)의 제2 스템 상에 결합되는 제2 마이크로폰 하우징(101_2) 내에 둘러싸인다. 일 실시예에서, 제2 전방 마이크로폰(110_1) 및 제2 후방 마이크로폰(110_2)은 제2 마이크로폰 어레이를 형성한다. 제2 마이크로폰 어레이는 1차 차동 마이크로폰 어레이일 수 있다. 제1 스템 및 제2 스템은 헤드-웨어러블 장치(100)의 프레임(103)의 대향 측면들에 결합된다.
동작 402에서, 제1 빔포머(301_1)는 제1 전방 마이크로폰(110_3) 및 제1 후방 마이크로폰(110_4)으로부터의 음향 신호들에 기초하여 제1 빔포머 신호를 생성한다. 동작 403에서, 제2 빔포머(301_2)는 제2 전방 마이크로폰(110_1) 및 제2 후방 마이크로폰(110_2)으로부터의 음향 신호들에 기초하여 제2 빔포머 신호를 생성한다. 일 실시예에서, 제1 빔포머(301_1) 및 제2 빔포머(301_2)는 고정 빔포머들이다. 고정 빔포머들은 서브-카디오이드 또는 카디오이드인 고정 빔 패턴들을 포함할 수 있다.
일 실시예에서, 빔포머 제어기(304)는 제1 빔포머를 제1 방향으로 그리고 제2 빔포머를 제2 방향으로 조향한다. 제1 방향 및 제2 방향은 헤드-웨어러블 장치가 사용자에 의해 착용될 때 사용자의 입의 방향에 있을 수 있다. 빔포머 제어기는 제1 방향 및 제2 방향을 동적으로 변경할 수 있다.
동작 404에서, 잡음 억제기(302)는 제1 빔포머 신호 및 제2 빔포머 신호로부터 잡음 콘텐츠를 감쇠시켜 제1 잡음 억제된 신호 및 제2 잡음 억제된 신호를 생성한다. 제1 빔포머 신호로부터의 잡음 콘텐츠는 제2 빔포머 신호에 동위치되지 않은 음향 신호일 수 있고, 제2 빔포머 신호로부터의 잡음 콘텐츠는 제1 빔포머 신호에 동위치되지 않은 음향 신호일 수 있다.
동작 405에서, 스피치 인핸서(303)는 제1 잡음 억제된 신호 및 제2 잡음 억제된 신호로부터 스피치 콘텐츠를 포함하는 클린 신호를 생성한다. 스피치 콘텐츠는 제1 빔포머 신호 및 제2 빔포머 신호에 동위치된 음향 신호들이다.
도 5는 본 명세서에 설명된 다양한 하드웨어 아키텍처들과 함께 사용될 수 있는 예시적인 소프트웨어 아키텍처(706)를 예시하는 블록도이다. 도 5는 소프트웨어 아키텍처의 비제한적 예이고, 본 명세서에 설명된 기능성을 용이하게 하기 위해 많은 다른 아키텍처들이 구현될 수 있다는 것을 인식할 것이다. 소프트웨어 아키텍처(706)는, 다른 것들 중에서, 프로세서들(804), 메모리(814), 및 I/O 컴포넌트들(818)을 포함하는 도 6의 머신(800)과 같은 하드웨어 상에서 실행될 수 있다. 대표적인 하드웨어 계층(752)이 예시되어 있고, 예를 들어, 도 6의 머신(800)을 나타낼 수 있다. 대표적인 하드웨어 계층(752)은 연관된 실행가능 명령어들(704)을 갖는 처리 유닛(754)을 포함한다. 실행가능 명령어들(704)은 본 명세서에 설명된 방법들, 컴포넌트들 등의 구현을 포함하는, 소프트웨어 아키텍처(706)의 실행가능 명령어들을 나타낸다. 하드웨어 계층(752)은 또한 메모리 또는 스토리지 모듈들인 메모리/스토리지(756)를 포함하며, 이들도 또한 실행가능 명령어들(704)을 갖는다. 하드웨어 계층(752)은 또한 다른 하드웨어(758)를 포함할 수 있다.
본 명세서에 사용된 바와 같이, "컴포넌트"라는 용어는, 함수 또는 서브루틴 호출들, 분기 포인트들, 애플리케이션 프로그램 인터페이스(API)들, 또는 특정한 처리 또는 제어 기능들의 분할 또는 모듈화를 제공하는 다른 기술들에 의해 정의된 경계들을 갖는 디바이스, 물리적 엔티티 또는 로직을 지칭할 수 있다. 컴포넌트들은 그들의 인터페이스를 통해 다른 컴포넌트들과 결합되어 머신 프로세스를 실행할 수 있다. 컴포넌트는, 보통 관련된 기능들 중 특정한 기능을 수행하는 프로그램의 일부 및 다른 컴포넌트들과 함께 사용되도록 설계된 패키징된 기능 하드웨어 유닛일 수 있다.
컴포넌트들은 소프트웨어 컴포넌트들(예를 들어, 머신 판독가능 매체 상에 구현된 코드) 또는 하드웨어 컴포넌트들 중 어느 하나를 구성할 수 있다. "하드웨어 컴포넌트"는 특정 동작들을 수행할 수 있는 유형 유닛이고, 특정 물리적 방식으로 구성되거나 배열될 수 있다. 다양한 예시적인 실시예들에서, 하나 이상의 컴퓨터 시스템(예를 들어, 독립형 컴퓨터 시스템, 클라이언트 컴퓨터 시스템, 또는 서버 컴퓨터 시스템) 또는 컴퓨터 시스템의 하나 이상의 하드웨어 컴포넌트(예를 들어, 프로세서 또는 프로세서들의 그룹)는 본 명세서에 설명된 바와 같이 특정 동작들을 수행하도록 동작하는 하드웨어 컴포넌트로서 소프트웨어(예를 들어, 애플리케이션 또는 애플리케이션 부분)에 의해 구성될 수 있다. 하드웨어 컴포넌트는 또한, 기계적으로, 전자적으로, 또는 이들의 임의의 적합한 조합으로 구현될 수 있다. 예를 들어, 하드웨어 컴포넌트는 특정 동작들을 수행하도록 영구적으로 구성된 전용 회로 또는 로직을 포함할 수 있다.
하드웨어 컴포넌트는, FPGA(Field-Programmable Gate Array) 또는 ASIC(Application Specific Integrated Circuit)와 같은 특수 목적 프로세서일 수 있다. 하드웨어 컴포넌트는 또한 특정 동작들을 수행하기 위해 소프트웨어에 의해 일시적으로 구성되는 프로그램가능 로직 또는 회로를 포함할 수 있다. 예를 들어, 하드웨어 컴포넌트는 범용 프로세서 또는 다른 프로그램가능 프로세서에 의해 실행되는 소프트웨어를 포함할 수 있다. 일단 그러한 소프트웨어에 의해 구성되면, 하드웨어 컴포넌트들은 구성된 기능들을 수행하도록 고유하게 맞춤화된 특정 머신들(또는 머신의 특정 컴포넌트들)이 되고 더 이상 범용 프로세서들이 아니다. 하드웨어 컴포넌트를 기계적으로, 전용의 영구적으로 구성된 회로에, 또는 일시적으로 구성된 회로(예를 들어, 소프트웨어에 의해 구성됨)에 구현하기로 하는 결정은 비용 및 시간 고려사항들에 의해 주도될 수 있다는 것을 인식할 것이다.
프로세서는 제어 신호들(예를 들어, "커맨드들", "op 코드들", "머신 코드" 등)에 따라 데이터 값들을 조작하고 머신을 동작시키기 위해 적용되는 대응하는 출력 신호들을 생성하는 임의의 회로 또는 가상 회로(실제 프로세서 상에서 실행되는 로직에 의해 에뮬레이트되는 물리 회로)일 수 있거나, 이를 포함할 수 있다. 프로세서는, 예를 들어, CPU(Central Processing Unit), RISC(Reduced Instruction Set Computing) 프로세서, CISC(Complex Instruction Set Computing) 프로세서, GPU(Graphics Processing Unit), DSP(Digital Signal Processor), ASIC(Application Specific Integrated Circuit), RFIC(Radio-Frequency Integrated Circuit), 또는 이들의 임의의 조합일 수 있다. 프로세서는 또한, 명령어들을 동시에 실행할 수 있는 둘 이상의 독립 프로세서(때때로 "코어"라고도 함)를 갖는 멀티-코어 프로세서일 수 있다.
따라서, "하드웨어 컴포넌트"(또는 "하드웨어에 의해 구현되는 컴포넌트(hardware-implemented component)")라는 구문은, 유형 엔티티, 즉, 특정 방식으로 동작하거나 본 명세서에 설명된 특정 동작들을 수행하도록 물리적으로 구성되거나, 영구적으로 구성되거나(예를 들어, 하드와이어드) 또는 일시적으로 구성되는(예를 들어, 프로그램되는) 엔티티를 포괄하는 것으로 이해해야 한다. 하드웨어 컴포넌트들이 일시적으로 구성되는(예를 들어, 프로그래밍되는) 실시예들을 고려할 때, 하드웨어 컴포넌트들 각각이 임의의 하나의 시간 인스턴스에서 구성 또는 인스턴스화될 필요는 없다. 예를 들어, 하드웨어 컴포넌트가 특수 목적 프로세서가 되도록 소프트웨어에 의해 구성된 범용 프로세서를 포함하는 경우에, 범용 프로세서는 상이한 시간들에서 (예를 들어, 상이한 하드웨어 컴포넌트들을 포함하는) 각각 상이한 특수 목적 프로세서들로서 구성될 수 있다. 따라서 소프트웨어는 예를 들어, 하나의 시간 인스턴스에서는 특정한 하드웨어 컴포넌트를 구성하고 상이한 시간 인스턴스에서는 상이한 하드웨어 컴포넌트를 구성하도록 특정한 프로세서 또는 프로세서들을 구성한다. 하드웨어 컴포넌트들은 다른 하드웨어 컴포넌트들에 정보를 제공하고 그들로부터 정보를 수신할 수 있다. 따라서, 설명된 하드웨어 컴포넌트들은 통신가능하게 결합되어 있는 것으로 간주될 수 있다. 다수의 하드웨어 컴포넌트들이 동시에 존재하는 경우에, 하드웨어 컴포넌트들 중 둘 이상 사이의 또는 그들 사이의 (예를 들어, 적절한 회로들 및 버스들을 통한) 신호 송신을 통해 통신이 달성될 수 있다. 다수의 하드웨어 컴포넌트들이 상이한 시간들에서 구성되거나 인스턴스화되는 실시예들에서, 그러한 하드웨어 컴포넌트들 사이의 통신은, 예를 들어, 다수의 하드웨어 컴포넌트들이 액세스할 수 있는 메모리 구조들 내의 정보의 스토리지 및 검색을 통해 달성될 수 있다.
예를 들어, 하나의 하드웨어 컴포넌트는 동작을 수행하고, 그에 통신가능하게 결합되는 메모리 디바이스에 그 동작의 출력을 저장할 수 있다. 그 후 추가의 하드웨어 컴포넌트가, 나중에, 저장된 출력을 검색 및 처리하기 위해 메모리 디바이스에 액세스할 수 있다. 하드웨어 컴포넌트들은 또한 입력 또는 출력 디바이스들과 통신을 개시할 수 있고, 리소스(예를 들어, 정보의 컬렉션)를 조작할 수 있다. 본 명세서에 설명된 예시적인 방법들의 다양한 동작은 관련 동작들을 수행하도록 일시적으로 구성되거나(예를 들어, 소프트웨어에 의해) 영구적으로 구성되는 하나 이상의 프로세서에 의해 적어도 부분적으로 수행될 수 있다. 일시적으로 구성되든 영구적으로 구성되든 간에, 그러한 프로세서들은 본 명세서에 설명된 하나 이상의 동작 또는 기능을 수행하도록 동작하는 프로세서에 의해 구현되는 컴포넌트들(processor-implemented components)을 구성할 수 있다. 본 명세서에 사용된 바와 같이, "프로세서에 의해 구현되는 컴포넌트(processor-implemented component)"는 하나 이상의 프로세서를 사용하여 구현되는 하드웨어 컴포넌트를 지칭한다. 유사하게, 본 명세서에 설명된 방법들은 적어도 부분적으로 프로세서에 의해 구현될 수 있고, 특정한 프로세서 또는 프로세서들은 하드웨어의 예이다. 예를 들어, 방법의 동작들 중 적어도 일부가 하나 이상의 프로세서 또는 프로세서에 의해 구현되는 컴포넌트에 의해 수행될 수 있다.
더욱이, 하나 이상의 프로세서는 또한 "클라우드 컴퓨팅" 환경에서 또는 "서비스로서의 소프트웨어(software as a service)"(SaaS)로서 관련 동작들의 수행을 지원하도록 동작할 수 있다. 예를 들어, 동작들 중 적어도 일부는 (프로세서들을 포함하는 머신들의 예들로서) 컴퓨터들의 그룹에 의해 수행될 수 있고, 이러한 동작들은 네트워크(예를 들어, 인터넷)를 통해 그리고 하나 이상의 적절한 인터페이스(예를 들어, 애플리케이션 프로그램 인터페이스(API))를 통해 액세스 가능하다. 동작들 중 특정한 것의 수행은 단일 머신 내에 존재할 뿐만 아니라, 다수의 머신에 걸쳐 배치되는, 프로세서들 사이에 분산될 수 있다. 일부 예시적인 실시예들에서, 프로세서들 또는 프로세서에 의해 구현되는 컴포넌트들은 단일의 지리적 로케이션에(예를 들어, 가정 환경, 사무실 환경, 또는 서버 팜(server farm) 내에) 위치할 수 있다. 다른 예시적인 실시예들에서, 프로세서들 또는 프로세서에 의해 구현되는 컴포넌트들은 다수의 지리적 로케이션에 걸쳐 분산될 수 있다.
도 5의 예시적인 아키텍처에서, 소프트웨어 아키텍처(706)는, 각각의 계층이 특정한 기능성을 제공하는, 계층들의 스택으로서 개념화될 수 있다. 예를 들어, 소프트웨어 아키텍처(706)는 운영 체제(702), 라이브러리들(720), 애플리케이션들(716) 및 프레젠테이션 계층(714)과 같은 계층들을 포함할 수 있다. 동작적으로, 애플리케이션들(716) 또는 계층들 내의 다른 컴포넌트들은 소프트웨어 스택을 통해 애플리케이션 프로그래밍 인터페이스(API) API 호출들(708)을 인보크하고 API 호출들(708)에 응답하여 메시지들(712)을 수신할 수 있다. 예시된 계층들은 본질적으로 대표적인 것이며 소프트웨어 아키텍처들 모두가 모든 계층들을 갖는 것은 아니다. 예를 들어, 일부 모바일 또는 특수 목적 운영 체제들은 프레임워크들/미들웨어(718)를 제공하지 않을 수도 있지만, 다른 것들은 그러한 계층을 제공할 수도 있다. 다른 소프트웨어 아키텍처들은 추가의 또는 상이한 계층들을 포함할 수 있다.
운영 체제(702)는 하드웨어 리소스들을 관리하고 공통 서비스들을 제공할 수도 있다. 운영 체제(702)는, 예를 들어, 커널(722), 서비스들(724), 및 드라이버들(726)을 포함할 수 있다. 커널(722)은 하드웨어와 다른 소프트웨어 계층들 사이에서 추상화 계층(abstraction layer)으로서 작용할 수 있다. 예를 들어, 커널(722)은 메모리 관리, 프로세서 관리(예를 들어, 스케줄링), 컴포넌트 관리, 네트워킹, 보안 설정 등을 담당할 수 있다. 서비스들(724)은 다른 소프트웨어 계층들을 위한 다른 공통 서비스들을 제공할 수 있다. 드라이버들(726)은 기저 하드웨어(underlying hardware)를 제어하거나 그와 인터페이스하는 것을 담당한다. 예를 들어, 드라이버들(726)은 하드웨어 구성에 따라 디스플레이 드라이버, 카메라 드라이버, 블루투스® 드라이버, 플래시 메모리 드라이버, 직렬 통신 드라이버(예를 들어, 범용 직렬 버스(USB) 드라이버), Wi-Fi® 드라이버, 오디오 드라이버, 전력 관리 드라이버 등을 포함한다.
라이브러리들(720)은 애플리케이션들(916) 또는 다른 컴포넌트들 또는 계층들에 의해 사용되는 공통 인프라스트럭처를 제공한다. 라이브러리들(720)은 다른 소프트웨어 컴포넌트들이 기저 운영 체제(702) 기능성(예를 들어, 커널(722), 서비스들(724) 또는 드라이버들(726))과 직접 인터페이스하는 것보다 더 쉬운 방식으로 작업들을 수행할 수 있게 하는 기능성을 제공한다. 라이브러리들(720)은 메모리 할당 기능들, 문자열 조작 기능들, 수학 기능들 등과 같은 기능들을 제공할 수 있는 시스템 라이브러리들(744)(예를 들어, C 표준 라이브러리)을 포함할 수 있다. 게다가, 라이브러리들(720)은 미디어 라이브러리들(예를 들어, MPREG4, H.264, MP3, AAC, AMR, JPG, PNG와 같은 다양한 미디어 포맷의 제시 및 조작을 지원하는 라이브러리들), 그래픽 라이브러리들(예를 들어, 디스플레이 상의 그래픽 콘텐츠에서 2D 및 3D를 렌더링하는 데 사용될 수 있는 OpenGL 프레임워크), 데이터베이스 라이브러리들(예를 들어, 다양한 관계형 데이터베이스 기능들을 제공할 수 있는 SQLite), 웹 라이브러리들(예를 들어, 웹 브라우징 기능성을 제공할 수 있는 WebKit) 등과 같은 API 라이브러리들(946)을 포함할 수 있다. 라이브러리들(720)은 또한 많은 다른 API들을 애플리케이션들(716) 및 다른 소프트웨어 컴포넌트들/모듈들에 제공하는 매우 다양한 다른 라이브러리들(748)을 포함할 수 있다.
프레임워크들/미들웨어(718)(때때로 미들웨어라고도 지칭됨)는 애플리케이션들(716) 또는 다른 소프트웨어 컴포넌트들/모듈들에 의해 사용될 수 있는 더 하이-레벨의 공통 인프라스트럭처를 제공한다. 예를 들어, 프레임워크들/미들웨어(718)는 다양한 그래픽 사용자 인터페이스(GUI) 기능들, 하이-레벨 리소스 관리, 하이-레벨 로케이션 서비스들 등을 제공할 수 있다. 프레임워크들/미들웨어(718)는 애플리케이션들(716) 또는 다른 소프트웨어 컴포넌트들/모듈들에 의해 이용될 수 있는 광범위한 다른 API들을 제공할 수 있으며, 그 중 일부는 특정 운영 체제(702) 또는 플랫폼에 특정적일 수 있다.
애플리케이션들(716)은 빌트인 애플리케이션들(738) 또는 제3자 애플리케이션들(940)을 포함한다. 대표적인 빌트인 애플리케이션들(738)의 예들은, 연락처 애플리케이션, 브라우저 애플리케이션, 북 리더 애플리케이션, 로케이션 애플리케이션, 미디어 애플리케이션, 메시징 애플리케이션, 또는 게임 애플리케이션을 포함할 수 있으며, 이것으로 제한되지 않는다. 제3자 애플리케이션들(740)은 특정 플랫폼의 벤더 이외의 엔티티에 의해 소프트웨어 개발 키트(SDK)를 이용하여 개발된 애플리케이션을 포함할 수 있고, 모바일 운영 체제 상에서 실행되는 모바일 소프트웨어일 수 있다. 제3자 애플리케이션들(740)은 본 명세서에 설명된 기능성을 용이하게 하기 위해 모바일 운영 체제(예컨대, 운영 체제(702))에 의해 제공되는 API 호출들(708)을 인보크할 수 있다.
애플리케이션들(716)은 시스템의 사용자들과 상호작용하기 위한 사용자 인터페이스들을 생성하기 위해 빌트인 운영 체제 기능들(예를 들어, 커널(722), 서비스들(724) 또는 드라이버들(726)), 라이브러리들(720), 및 프레임워크들/미들웨어(718)를 사용할 수 있다. 대안적으로 또는 추가적으로, 일부 시스템들에서, 사용자와의 상호작용들은 프레젠테이션 계층(714)과 같은 프레젠테이션 계층을 통해 발생할 수 있다. 이러한 시스템들에서, 애플리케이션/컴포넌트 "로직"은 사용자와 상호작용하는 애플리케이션/컴포넌트의 양태들로부터 분리될 수 있다.
도 6은 머신 판독가능 매체(예를 들어, 머신 판독가능 저장 매체)로부터 명령어들을 판독하고 본 명세서에서 논의된 방법론들 중 임의의 하나 이상을 수행할 수 있는, 일부 예시적인 실시예들에 따른, 머신(800)의 컴포넌트들(본 명세서에서 "모듈들"이라고도 지칭됨)을 예시하는 블록도이다. 구체적으로, 도 6은 머신(800)으로 하여금 본 명세서에서 논의된 방법론들 중 임의의 하나 이상을 수행하게 하기 위한 명령어들(810)(예를 들어, 소프트웨어, 프로그램, 애플리케이션, 애플릿(applet), 앱, 또는 다른 실행가능 코드)이 실행될 수 있는 컴퓨터 시스템의 예시적인 형태로 머신(800)의 도식적 표현을 도시한다. 이와 같이, 명령어들(810)은 본 명세서에 설명된 모듈들 또는 컴포넌트들을 구현하기 위해 사용될 수 있다. 명령어들(810)은, 일반적인 비-프로그래밍된 머신(800)을, 설명되고 예시된 기능들을 설명된 방식으로 수행하도록 프로그래밍된 특정한 머신(800)으로 변환한다. 대안적인 실시예들에서, 머신(800)은 독립형 디바이스로서 동작하거나 다른 머신들에 결합(예를 들어, 네트워킹)될 수 있다. 네트워킹된 배치에서, 머신(800)은 서버-클라이언트 네트워크 환경에서 서버 머신 또는 클라이언트 머신의 자격으로 동작하거나, 피어-투-피어(또는 분산형) 네트워크 환경에서 피어 머신으로서 동작할 수 있다. 머신(800)은, 서버 컴퓨터, 클라이언트 컴퓨터, 개인용 컴퓨터(PC), 태블릿 컴퓨터, 랩톱 컴퓨터, 넷북, 셋톱박스(STB), 개인 휴대 정보 단말기(PDA), 엔터테인먼트 미디어 시스템, 셀룰러 전화기, 스마트폰, 모바일 디바이스, 웨어러블 디바이스(예를 들어, 스마트 시계), 스마트 홈 디바이스(예를 들어, 스마트 어플라이언스), 다른 스마트 디바이스들, 웹 어플라이언스, 네트워크 라우터, 네트워크 스위치, 네트워크 브리지, 또는 머신(800)에 의해 취해질 액션들을 특정하는 명령어들(810)을 순차적으로 또는 다른 방식으로 실행할 수 있는 임의의 머신을 포함할 수 있고, 이에 제한되지 않는다. 게다가, 단일 머신(800)만이 예시되어 있지만, "머신"이라는 용어는 또한 본 명세서에서 논의된 방법론들 중 임의의 하나 이상을 수행하기 위해 명령어들(1010)을 개별적으로 또는 공동으로 실행하는 머신들의 컬렉션을 포함하는 것으로 간주되어야 한다.
머신(800)은, 예컨대 버스(802)를 통해 서로 통신하도록 구성될 수 있는, 프로세서들(804), 메모리 메모리/스토리지(806), 및 I/O 컴포넌트들(818)을 포함할 수 있다. 메모리/스토리지(806)는 메인 메모리, 또는 다른 메모리 스토리지와 같은 메모리(814), 및 스토리지 유닛(816)을 포함할 수 있으며, 둘 다 예컨대 버스(802)를 통해 프로세서들(804)에 액세스 가능하다. 스토리지 유닛(816) 및 메모리(814)는 본 명세서에 설명된 방법론들 또는 기능들 중 임의의 하나 이상을 구현하는 명령어들(810)을 저장한다. 명령어들(810)은 또한, 머신(800)에 의한 그의 실행 동안, 완전히 또는 부분적으로, 메모리(814) 내에, 스토리지 유닛(816) 내에, 프로세서들(804) 중 적어도 하나 내에(예를 들어, 프로세서의 캐시 메모리 내에), 또는 이들의 임의의 적합한 조합으로 존재할 수 있다. 따라서, 메모리(814), 스토리지 유닛(816), 및 프로세서들(804)의 메모리는 머신 판독가능 매체의 예들이다.
본 명세서에 사용된 바와 같이, "머신 판독가능 매체", "컴퓨터 판독가능 매체" 등의 용어는 명령어들 및 데이터를 일시적으로 또는 영구적으로 저장할 수 있는 임의의 컴포넌트, 디바이스 또는 다른 유형 매체를 지칭할 수 있다. 그러한 매체들의 예들은 랜덤 액세스 메모리(RAM), 판독 전용 메모리(ROM), 버퍼 메모리, 플래시 메모리, 광학 매체, 자기 매체, 캐시 메모리, 다른 타입들의 스토리지(예를 들어, 소거가능하고 프로그램가능한 판독 전용 메모리(EEPROM)) 또는 이들의 임의의 적합한 조합을 포함할 수 있으며, 이것으로 제한되지 않는다. "머신 판독가능 매체"라는 용어는, 명령어들을 저장할 수 있는 단일의 매체 또는 다수의 매체(예를 들어, 중앙집중형 또는 분산형 데이터베이스, 또는 연관된 캐시들 및 서버들)를 포함하는 것으로 간주되어야 한다. "머신 판독가능 매체"라는 용어는 또한, 명령어들이, 머신의 하나 이상의 프로세서에 의해 실행될 때, 머신으로 하여금 본 명세서에 설명된 방법론들 중 임의의 하나 이상을 수행하게 하도록, 머신에 의한 실행을 위한 명령어들(예를 들어, 코드)을 저장할 수 있는 임의의 매체, 또는 다수의 매체의 조합을 포함하는 것으로 간주될 수 있다. 따라서, "머신 판독가능 매체"란 단일 스토리지 장치 또는 디바이스뿐만 아니라, 다수의 스토리지 장치 또는 디바이스를 포함하는 "클라우드-기반" 스토리지 시스템들 또는 스토리지 네트워크들을 지칭할 수 있다. "머신 판독가능 매체"라는 용어는 신호 그 자체를 제외한다.
I/O 컴포넌트들(818)은, 입력을 수신하고, 출력을 제공하고, 출력을 생성하고, 정보를 송신하고, 정보를 교환하고, 측정들을 캡처하는 등을 수행하기 위한 사용자 인터페이스를 제공하는 매우 다양한 컴포넌트들을 포함할 수 있다. 특정한 머신(800)의 사용자 인터페이스에 포함되는 특정 I/O 컴포넌트들(818)은 머신의 타입에 의존할 것이다. 예를 들어, 모바일 폰과 같은 휴대용 머신은 아마 터치 입력 디바이스 또는 다른 그러한 입력 메커니즘을 포함할 것인 반면, 헤드리스 서버 머신(headless server machine)은 아마 그러한 터치 입력 디바이스를 포함하지 않을 것이다. I/O 컴포넌트들(818)은 도 6에 도시되지 않은 많은 다른 컴포넌트들을 포함할 수 있다는 것을 인식할 것이다. I/O 컴포넌트들(818)은 단지 이하의 논의를 간소화하기 위해 기능성에 따라 그룹화되어 있고, 이러한 그룹화는 결코 제한적인 것이 아니다. 다양한 예시적인 실시예들에서, I/O 컴포넌트들(818)은 출력 컴포넌트들(826) 및 입력 컴포넌트들(828)을 포함할 수 있다. 출력 컴포넌트들(826)은, 시각적 컴포넌트들(예를 들어, 플라즈마 디스플레이 패널(PDP), 발광 다이오드(LED) 디스플레이, 액정 디스플레이(LCD), 프로젝터, 또는 음극선관(CRT)과 같은 디스플레이), 음향 컴포넌트들(예를 들어, 스피커), 햅틱 컴포넌트들(예를 들어, 진동 모터, 저항 메커니즘), 다른 신호 생성기 등을 포함할 수 있다. 입력 컴포넌트들(828)은, 영숫자 입력 컴포넌트들(예를 들어, 키보드, 영숫자 입력을 수신하도록 구성된 터치 스크린, 포토-광학 키보드, 또는 다른 영숫자 입력 컴포넌트), 포인트 기반 입력 컴포넌트들(예를 들어, 마우스, 터치패드, 트랙볼, 조이스틱, 모션 센서, 또는 다른 포인팅 기구), 촉각 입력 컴포넌트들(예를 들어, 물리적 버튼, 터치 또는 터치 제스처의 로케이션 또는 힘을 제공하는 터치 스크린, 또는 다른 촉각 입력 컴포넌트), 오디오 입력 컴포넌트들(예를 들어, 마이크로폰) 등을 포함할 수 있다. 입력 컴포넌트들(828)은 또한 디지털 이미지들 또는 비디오를 생성하기 위한 디지털 카메라와 같은 하나 이상의 이미지 캡처링 디바이스를 포함할 수 있다.
추가의 예시적인 실시예들에서, I/O 컴포넌트들(818)은 바이오메트릭 컴포넌트들(830), 모션 컴포넌트들(834), 환경 환경 컴포넌트들(836), 또는 포지션 컴포넌트들(838)뿐만 아니라, 광범위한 다른 컴포넌트들을 포함할 수 있다. 이러한 컴포넌트들(또는 그의 부분들) 중 하나 이상은 본 명세서에서 집합적으로 머신(800), 머신(800)의 환경, 머신(800)의 사용자, 또는 그의 조합과 관련된 다양한 데이터를 수집하기 위한 "센서 컴포넌트" 또는 "센서"로서 지칭될 수 있다.
예를 들어, 바이오메트릭 컴포넌트들(830)은, 표현들(예를 들어, 손 표현, 얼굴 표정, 음성 표현, 신체 제스처, 또는 시선 추적)을 검출하고, 생체신호들(예를 들어, 혈압, 심박수, 체온, 땀, 또는 뇌파)을 측정하고, 사람을 식별(예를 들어, 음성 식별, 망막 식별, 얼굴 식별, 지문 식별, 또는 뇌파계-기반 식별)하고, 이와 유사한 것을 하는 컴포넌트들을 포함할 수 있다. 모션 컴포넌트들(834)은 가속도 센서 컴포넌트들(예를 들어, 가속도계), 중력 센서 컴포넌트들, 속도 센서 컴포넌트들(예를 들어, 속도계), 회전 센서 컴포넌트들(예를 들어, 자이로스코프) 등을 포함할 수 있다. 환경 컴포넌트들(836)은, 예를 들어, 조명 센서 컴포넌트들(예를 들어, 광도계), 온도 센서 컴포넌트들(예를 들어, 주위 온도를 검출하는 하나 이상의 온도계), 습도 센서 컴포넌트들, 압력 센서 컴포넌트들(예를 들어, 기압계), 음향 센서 컴포넌트들(예를 들어, 배경 잡음을 검출하는 하나 이상의 마이크로폰), 근접 센서 컴포넌트들(예를 들어, 인근 객체들을 검출하는 적외선 센서들), 가스 센서들(예를 들어, 안전을 위해 유해성 가스들의 농도들을 검출하거나 대기 내의 오염물질들을 측정하는 가스 검출 센서들), 또는 주변 물리적 환경에 대응하는 표시들, 측정들, 또는 신호들을 제공할 수 있는 다른 컴포넌트들을 포함할 수 있다. 포지션 컴포넌트들(838)은, 로케이션 센서 컴포넌트들(예를 들어, GPS(Global Position System) 수신기 컴포넌트), 고도 센서 컴포넌트들(예를 들어, 고도계 또는 고도가 도출될 수 있는 기압을 검출하는 기압계), 배향 센서 컴포넌트들(예를 들어, 자력계) 등을 포함할 수 있다. 예를 들어, 로케이션 센서 컴포넌트는 시스템(800)과 연관된 로케이션 정보, 예컨대, 시스템(800)의 GPS 좌표 또는 시스템(1000)이 현재 존재하는 로케이션에 관한 정보(예를 들어, 레스토랑 또는 다른 비즈니스의 이름)를 제공할 수 있다.
통신은 매우 다양한 기술들을 사용하여 구현될 수 있다. I/O 컴포넌트들(818)은 머신(800)을 결합(822) 및 결합(824)을 통해 각각 네트워크(832) 또는 디바이스들(820)에 결합하도록 동작가능한 통신 컴포넌트들(840)을 포함할 수 있다. 예를 들어, 통신 컴포넌트들(840)은, 네트워크 인터페이스 컴포넌트, 또는 네트워크(832)와 인터페이스하기 위한 다른 적합한 디바이스를 포함할 수 있다. 추가 예들에서, 통신 컴포넌트들(840)은 유선 통신 컴포넌트들, 무선 통신 컴포넌트들, 셀룰러 통신 컴포넌트들, 근접장 통신(NFC) 컴포넌트들, 블루투스® 컴포넌트들(예를 들어, 블루투스® 로우 에너지), Wi-Fi® 컴포넌트들, 및 다른 양상들을 통해 통신을 제공하는 다른 통신 컴포넌트들을 포함할 수 있다. 디바이스들(820)은 다른 머신 또는 매우 다양한 주변 디바이스들 중 임의의 것(예를 들어, 범용 직렬 버스(USB)를 통해 결합된 주변 디바이스)일 수 있다.
더욱이, 통신 컴포넌트들(840)은 식별자들을 검출할 수 있거나 식별자들을 검출하도록 동작가능한 컴포넌트들을 포함할 수 있다. 예를 들어, 통신 컴포넌트들(840)은 RFID(Radio Frequency Identification) 태그 판독기 컴포넌트들, NFC 스마트 태그 검출 컴포넌트들, 광학 판독기 컴포넌트들(예를 들어, UPC(Universal Product Code) 바코드와 같은 1차원 바코드들, QR(Quick Response) 코드와 같은 다차원 바코드들, Aztec 코드, 데이터 매트릭스(Data Matrix), Dataglyph, MaxiCode, PDF417, 울트라 코드(Ultra Code), UCC RSS-2D 바코드, 및 다른 광학 코드들을 검출하는 광학 센서), 또는 음향 검출 컴포넌트들(예를 들어, 태깅된 오디오 신호들을 식별하는 마이크로폰들)을 포함할 수 있다. 게다가, 인터넷 프로토콜(IP) 지오-로케이션(geo-location)을 통한 로케이션, Wi-Fi® 신호 삼각측량을 통한 로케이션, 특정 로케이션을 나타낼 수 있는 NFC 비컨 신호의 검출을 통한 로케이션 등과 같은, 다양한 정보가 통신 컴포넌트들(840)을 통해 도출될 수 있다.
도 7은 다양한 네트워크들을 통해 모바일 디바이스(800) 및 서버 시스템(998)에 통신가능하게 결합된 예시적인 헤드-웨어러블 장치(100)의 하이-레벨 기능 블록도이다.
장치(100)는 가시광 카메라(950), 적외선 방출기(951) 및 적외선 카메라(952) 중 적어도 하나와 같은 카메라를 포함한다. 카메라는 도 1 및 도 2에서의 렌즈(104_1, 104_2)를 갖는 카메라 모듈을 포함할 수 있다.
클라이언트 디바이스(800)는 저전력 무선 접속(925)과 고속 무선 접속(937) 둘 다를 사용하여 장치(100)와 접속할 수 있다. 클라이언트 디바이스(800)는 서버 시스템(998) 및 네트워크(995)에 접속된다. 네트워크(995)는 유선 및 무선 접속들의 임의의 조합을 포함할 수 있다.
장치(100)는 광학 어셈블리의 2개의 이미지 디스플레이(980A-B)를 추가로 포함한다. 2개의 이미지 디스플레이(980A-980B)는 장치(100)의 좌측 측면과 연관된 하나 및 우측 측면과 연관된 하나를 포함한다. 장치(100)는 이미지 디스플레이 드라이버(942), 이미지 프로세서(912), 저전력 회로(920), 및 고속 회로(930)를 또한 포함한다. 광학 어셈블리의 이미지 디스플레이(980A-B)는 장치(100)의 사용자에게 그래픽 사용자 인터페이스를 포함할 수 있는 이미지를 포함한 이미지들 및 비디오들을 프레젠테이션하기 위한 것이다.
이미지 디스플레이 드라이버(942)는 광학 어셈블리의 이미지 디스플레이(980A-B)를 커맨딩하고 제어한다. 이미지 디스플레이 드라이버(942)는 프레젠테이션을 위해 광학 어셈블리의 이미지 디스플레이(980A-B)에 직접 이미지 데이터를 전달할 수 있거나 이미지 데이터를 이미지 디스플레이 디바이스에 전달하기에 적합한 신호 또는 데이터 포맷으로 변환해야 할 수 있다. 예를 들어, 이미지 데이터는 H.264(MPEG-4 Part 10), HEVC, Theora, Dirac, RealVideo RV40, VP8, VP9 등과 같은 압축 포맷들에 따라 포맷된 비디오 데이터일 수 있고, 정지 이미지 데이터는 PNG(Portable Network Group), JPEG(Joint Photographic Experts Group), TIFF(Tagged Image File Format) 또는 Exif(exchangeable image file format) 등과 같은 압축 포맷들에 따라 포맷될 수 있다.
위에 언급된 바와 같이, 장치(100)는 프레임(103) 및 프레임(103)의 측면으로부터 연장되는 스템들(또는 안경다리들)을 포함한다. 장치(100)는 장치(100) 상의 입력 표면을 포함하는 사용자 입력 디바이스(991)(예를 들어, 터치 센서 또는 푸시 버튼)를 추가로 포함한다. 사용자 입력 디바이스(991)(예를 들어, 터치 센서 또는 푸시 버튼)는 제시된 이미지의 그래픽 사용자 인터페이스를 조작하기 위한 입력 선택을 사용자로부터 수신하기 위한 것이다.
장치(100)에 대한 도 7에 도시된 컴포넌트들은, 림들 또는 안경다리들에서, 하나 이상의 회로 보드, 예를 들어 PCB 또는 가요성 PCB 상에 위치한다. 대안적으로 또는 추가적으로, 묘사된 컴포넌트들은 장치(100)의 청크들, 프레임들, 힌지들, 또는 브리지에 위치할 수 있다. 좌측 및 우측 가시광 카메라들(950)은 디지털 카메라 요소들, 예컨대 CMOS(complementary metal-oxide-semiconductor) 이미지 센서, 전하 결합 디바이스, 렌즈(104_1, 104_2), 또는 알려지지 않은 객체들을 갖는 장면들의 이미지들을 포함한, 데이터를 캡처하기 위해 사용될 수 있는 임의의 다른 각자의 가시 또는 광 캡처링 요소들을 포함할 수 있다.
장치(100)는 바이노럴 오디오 콘텐츠를 생성하기 위해 본 명세서에 설명된 기능들의 서브세트 또는 전부를 수행하기 위한 명령어들을 저장하는 메모리(934)를 포함한다. 메모리(934)는 스토리지 디바이스(604)를 또한 포함할 수 있다. 도 4의 플로차트에 예시된 예시적인 프로세스는 메모리(934)에 저장된 명령어들로 구현될 수 있다.
도 7에 도시된 바와 같이, 고속 회로(930)는 고속 프로세서(932), 메모리(934), 및 고속 무선 회로(936)를 포함한다. 예에서, 이미지 디스플레이 드라이버(942)는 고속 회로(930)에 결합되고, 광학 어셈블리의 좌측 및 우측 이미지 디스플레이들(980A-B)을 구동하기 위해 고속 프로세서(932)에 의해 동작된다. 고속 프로세서(932)는 장치(100)에 필요한 임의의 일반 컴퓨팅 시스템의 고속 통신 및 동작을 관리할 수 있는 임의의 프로세서일 수 있다. 고속 프로세서(932)는 고속 무선 회로(936)를 사용하여 무선 로컬 영역 네트워크(WLAN)로의 고속 무선 접속(937) 상의 고속 데이터 전송들을 관리하는 데 필요한 처리 리소스들을 포함한다. 특정 예들에서, 고속 프로세서(932)는 장치(100)의 LINUX 운영 체제 또는 다른 그러한 운영 체제와 같은 운영 체제를 실행하고 운영 체제는 실행을 위해 메모리(934)에 저장된다. 임의의 다른 책임들에 더하여, 장치(100)에 대한 소프트웨어 아키텍처를 실행하는 고속 프로세서(932)는 고속 무선 회로(936)와의 데이터 전송들을 관리하기 위해 사용된다. 특정 예들에서, 고속 무선 회로(936)는, 여기서는 Wi-Fi라고도 지칭되는, IEEE(Institute of Electrical and Electronic Engineers) 802.11 통신 표준을 구현하도록 구성된다. 다른 예들에서, 다른 고속 통신 표준들이 고속 무선 회로(936)에 의해 구현될 수 있다.
장치(100)의 저전력 무선 회로(924) 및 고속 무선 회로(936)는 단거리 송수신기들(Bluetooth™) 및 무선 광역, 로컬 영역, 또는 광역 네트워크 송수신기들(예를 들어, 셀룰러 또는 WiFi)을 포함할 수 있다. 저전력 무선 접속(925) 및 고속 무선 접속(937)을 통해 통신하는 송수신기들을 포함하는 클라이언트 디바이스(800)는, 네트워크(995)의 다른 요소들과 마찬가지로, 장치(100)의 아키텍처의 상세들을 사용하여 구현될 수 있다.
메모리(934)는, 특히, 좌측 및 우측 가시광 카메라들(950), 적외선 카메라(952), 및 이미지 프로세서(912)에 의해 생성된 카메라 데이터뿐만 아니라 이미지 디스플레이 드라이버(942)에 의해 광학 어셈블리의 이미지 디스플레이들(980A-B) 상에 디스플레이하기 위해 생성된 이미지들을 포함한, 다양한 데이터 및 애플리케이션들을 저장할 수 있는 임의의 스토리지 디바이스를 포함한다. 메모리(934)가 고속 회로(930)와 통합된 것으로 도시되어 있지만, 다른 예들에서, 메모리(934)는 장치(100)의 독립적인 독립형 요소일 수 있다. 그러한 특정 예들에서, 전기 라우팅 라인들은 고속 프로세서(932)를 포함하는 칩을 통해 이미지 프로세서(912) 또는 저전력 프로세서(922)로부터 메모리(934)로의 접속을 제공할 수 있다. 다른 예들에서, 고속 프로세서(932)는 저전력 프로세서(922)가 메모리(934)를 수반하는 판독 또는 기입 동작이 필요한 임의의 시간에 고속 프로세서(932)를 부팅하도록 메모리(934)의 어드레싱을 관리할 수 있다.
도 7에 도시된 바와 같이, 장치(100)의 프로세서(932)는 카메라(가시광 카메라들(950); 적외선 방출기(951), 또는 적외선 카메라(952)), 이미지 디스플레이 드라이버(942), 사용자 입력 디바이스(991)(예를 들어, 터치 센서 또는 푸시 버튼), 및 메모리(934)에 결합될 수 있다.
장치(100)는 호스트 컴퓨터와 접속된다. 예를 들어, 장치(100)는 고속 무선 접속(937)을 통해 클라이언트 디바이스(800)와 페어링되거나 네트워크(995)를 통해 서버 시스템(998)에 접속된다. 서버 시스템(998)은, 예를 들어, 프로세서, 메모리, 및 네트워크(995)를 통해 클라이언트 디바이스(800) 및 장치(100)와 통신하기 위한 네트워크 통신 인터페이스를 포함하는, 서비스 또는 네트워크 컴퓨팅 시스템의 일부로서의 하나 이상의 컴퓨팅 디바이스일 수 있다.
클라이언트 디바이스(800)는 프로세서 및 프로세서에 결합된 네트워크 통신 인터페이스를 포함한다. 네트워크 통신 인터페이스는 네트워크(925 또는 937)를 통한 통신을 허용한다. 클라이언트 디바이스(800)는 본 명세서에 설명된 기능성을 구현하기 위해 클라이언트 디바이스(800)의 메모리에 바이노럴 오디오 콘텐츠를 생성하기 위한 명령어들의 적어도 부분들을 추가로 저장할 수 있다.
장치(100)의 출력 컴포넌트들은 액정 디스플레이(LCD), 플라스마 디스플레이 패널(PDP), 발광 다이오드(LED) 디스플레이, 프로젝터, 또는 도파관과 같은 디스플레이와 같은 시각적 컴포넌트들을 포함한다. 광학 어셈블리의 이미지 디스플레이들은 이미지 디스플레이 드라이버(942)에 의해 구동된다. 장치(100)의 출력 컴포넌트들은 음향 컴포넌트들(예를 들어, 스피커들), 햅틱 컴포넌트들(예를 들어, 진동 모터), 다른 신호 생성기들 등을 추가로 포함한다. 장치(100), 클라이언트 디바이스(800), 및 서버 시스템(998)의 입력 컴포넌트들, 예컨대 사용자 입력 디바이스(991)는, 영숫자 입력 컴포넌트들(예를 들어, 키보드, 영숫자 입력을 수신하도록 구성되는 터치 스크린, 포토-광학 키보드, 또는 다른 영숫자 입력 컴포넌트들), 포인트 기반 입력 컴포넌트들(예를 들어, 마우스, 터치패드, 트랙볼, 조이스틱, 모션 센서, 또는 다른 포인팅 기구들), 촉각 입력 컴포넌트들(예를 들어, 물리적 버튼, 터치 또는 터치 제스처의 로케이션 및/또는 힘을 제공하는 터치 스크린, 또는 다른 촉각 입력 컴포넌트들), 오디오 입력 컴포넌트들(예를 들어, 마이크로폰) 등을 포함할 수 있다.
장치(100)는 옵션으로 추가적인 주변 디바이스 요소들을 포함할 수 있다. 이러한 주변 디바이스 요소들은 바이오메트릭 센서들, 추가적인 센서들, 또는 장치(100)와 통합된 디스플레이 요소들을 포함할 수 있다. 예를 들어, 주변 디바이스 요소들은 출력 컴포넌트들, 모션 컴포넌트들, 포지션 컴포넌트들, 또는 본 명세서에 설명된 임의의 다른 그러한 요소들을 포함하는 임의의 I/O 컴포넌트들을 포함할 수 있다.
예를 들어, 바이오메트릭 컴포넌트들은 표현들(예를 들어, 손 표현들, 얼굴 표정들, 음성 표현들, 신체 제스처들, 또는 눈 추적)을 검출하고, 생체신호들(예를 들어, 혈압, 심박수, 체온, 땀, 또는 뇌파)을 측정하고, 사람을 식별(예를 들어, 음성 식별, 망막 식별, 얼굴 식별, 지문 식별, 또는 뇌전도(electroencephalogram) 기반 식별)하는 등의 컴포넌트들을 포함한다. 모션 컴포넌트들은 가속도 센서 컴포넌트들(예를 들어, 가속도계), 중력 센서 컴포넌트들, 회전 센서 컴포넌트들(예를 들어, 자이로스코프) 등을 포함한다. 포지션 컴포넌트들은 로케이션 좌표들을 생성하는 로케이션 센서 컴포넌트들(예를 들어, GPS(Global Positioning System) 수신기 컴포넌트), 포지셔닝 시스템 좌표들을 생성하는 WiFi 또는 Bluetooth™ 송수신기들, 고도 센서 컴포넌트들(예를 들어, 고도계들 또는 고도가 도출될 수 있는 기압을 검출하는 기압계들), 배향 센서 컴포넌트들(예를 들어, 자력계들) 등을 포함한다. 그러한 포지셔닝 시스템 좌표들은 저전력 무선 회로(924) 또는 고속 무선 회로(936)를 통해 클라이언트 디바이스(800)로부터 무선 접속들(925 및 937)을 통해 수신될 수도 있다.
"A, B, 또는 C 중 적어도 하나", "A, B, 및 C 중 적어도 하나", "하나 이상의 A, B, 또는 C", 또는 "A, B, 및 C 중 하나 이상"과 유사한 구문이 사용되는 경우, 이는 그 구문이 실시예에서 A만이 존재할 수 있다는 것, 실시예에서 B만이 존재할 수 있다는 것, 실시예에서 C만이 존재할 수 있다는 것, 또는 단일 실시예에서 요소들 A, B, 및 C의 임의의 조합이 존재할 수 있다는 것; 예를 들어, A 및 B, A 및 C, B 및 C, 또는 A 및 B 및 C를 의미하는 것으로 해석될 수 있다는 것이 의도된다.
본 개시내용의 범위를 벗어나지 않고서 개시된 실시예들에 대한 변경들 및 수정들이 이루어질 수 있다. 이들 및 다른 변경들 또는 수정들은 다음의 청구항들에서 표현된 바와 같은, 본 개시내용의 범위 내에 포함되는 것으로 의도된다.
Claims (20)
- 헤드-웨어러블 장치(head-wearable apparatus)로서,
오디오 프로세서
를 포함하고,
상기 오디오 프로세서는,
제1 빔포머 신호로부터의 잡음 콘텐츠(noise content) 및 제2 빔포머 신호로부터의 잡음 콘텐츠를 감쇠시켜 제1 잡음 억제된 신호 및 제2 잡음 억제된 신호를 각각 생성하는 잡음 억제기 - 상기 제1 빔포머 신호로부터의 잡음 콘텐츠 및 상기 제2 빔포머 신호로부터의 잡음 콘텐츠를 감쇠시키는 것은:
상기 제2 빔포머 신호에 포함되지 않는 상기 제1 빔포머 신호에서 음향 신호들을 결정하는 것 - 상기 제1 빔포머 신호로부터의 잡음 콘텐츠는 상기 제2 빔포머 신호에 포함되지 않는 음향 신호들을 포함함 -, 및
상기 제1 빔포머 신호에 포함되지 않는 상기 제2 빔포머 신호에서 음향 신호들을 결정하는 것 - 상기 제2 빔포머 신호로부터의 잡음 콘텐츠는 상기 제1 빔포머 신호에 포함되지 않는 음향 신호들을 포함함 - 을 포함함 -; 및
상기 제1 잡음 억제된 신호 및 상기 제2 잡음 억제된 신호로부터의 스피치 콘텐츠(speech content)를 포함하는 클린(clean) 신호를 생성하는 스피치 인핸서(speech enhancer)
를 포함하고, 상기 클린 신호를 생성하는 것은:
상기 제1 빔포머 신호 및 상기 제2 빔포머 신호 모두에 포함되는 음향 신호들을 결정하는 것을 포함하고, 상기 스피치 콘텐츠는 상기 제1 빔포머 신호 및 상기 제2 빔포머 신호 모두에 포함된 음향 신호들을 포함하는, 헤드-웨어러블 장치. - 제1항에 있어서,
제1 빔포머는 상기 제1 빔포머 신호를 생성하고, 제2 빔포머는 상기 제2 빔포머 신호를 생성하며, 상기 제1 빔포머 및 상기 제2 빔포머는 고정(fixed) 빔포머들인, 헤드-웨어러블 장치. - 제1항에 있어서,
상기 제1 빔포머가 제1 방향으로 조향되게 하고 상기 제2 빔포머가 제2 방향으로 조향되게 하는 빔포머 제어기를 추가로 포함하는, 헤드-웨어러블 장치. - 제3항에 있어서, 상기 제1 방향 및 상기 제2 방향은 상기 헤드-웨어러블 장치가 사용자에 의해 착용될 때 상기 사용자의 입의 방향에 있는, 헤드-웨어러블 장치.
- 제3항에 있어서, 상기 빔포머 제어기는 상기 제1 방향 및 상기 제2 방향을 동적으로 변경하는, 헤드-웨어러블 장치.
- 제1항에 있어서, 상기 제1 빔포머 신호는 제1 전방 마이크로폰 및 제1 후방 마이크로폰에 의해 형성된 제1 마이크로폰 어레이에 기초하고, 상기 제2 빔포머 신호는 제2 전방 마이크로폰 및 제2 후방 마이크로폰에 의해 형성된 제2 마이크로폰 어레이에 기초하는, 헤드-웨어러블 장치.
- 제6항에 있어서, 상기 제1 마이크로폰 어레이 및 상기 제2 마이크로폰 어레이는 브로드사이드(broadside) 어레이들, 엔드파이어(endfire) 어레이들 또는 이들의 임의의 조합인, 헤드-웨어러블 장치.
- 제6항에 있어서, 상기 제1 전방 마이크로폰 및 상기 제1 후방 마이크로폰은 제1 평면 상에 위치하고, 상기 제2 전방 마이크로폰 및 상기 제2 후방 마이크로폰은 제2 평면 상에 위치하는, 헤드-웨어러블 장치.
- 방법으로서,
잡음 억제기에 의해, 제1 빔포머 신호로부터의 잡음 콘텐츠 및 제2 빔포머 신호로부터의 잡음 콘텐츠를 감쇠시켜 제1 잡음 억제된 신호 및 제2 잡음 억제된 신호를 각각 생성하는 단계 - 상기 제1 빔포머 신호로부터의 잡음 콘텐츠 및 상기 제2 빔포머 신호로부터의 잡음 콘텐츠를 감쇠시키는 것은:
상기 제2 빔포머 신호에 포함되지 않는 상기 제1 빔포머 신호에서 음향 신호들을 결정하는 단계 - 상기 제1 빔포머 신호로부터의 잡음 콘텐츠는 상기 제2 빔포머 신호에 포함되지 않는 음향 신호들을 포함함 -, 및
상기 제1 빔포머 신호에 포함되지 않는 상기 제2 빔포머 신호에서 음향 신호들을 결정하는 단계 - 상기 제2 빔포머 신호로부터의 잡음 콘텐츠는 상기 제1 빔포머 신호에 포함되지 않는 음향 신호들을 포함함 - 를 포함함 -; 및
스피치 인핸서에 의해, 상기 제1 잡음 억제된 신호 및 상기 제2 잡음 억제된 신호로부터의 스피치 콘텐츠를 포함하는 클린 신호를 생성하는 단계
를 포함하고, 상기 클린 신호를 생성하는 단계는:
상기 제1 빔포머 신호 및 상기 제2 빔포머 신호 모두에 포함되는 음향 신호들을 결정하는 단계를 포함하고, 상기 스피치 콘텐츠는 상기 제1 빔포머 신호 및 상기 제2 빔포머 신호 모두에 포함된 음향 신호들을 포함하는, 방법. - 제9항에 있어서,
제1 빔포머는 상기 제1 빔포머 신호를 생성하고, 제2 빔포머는 상기 제2 빔포머 신호를 생성하며, 상기 제1 빔포머 및 상기 제2 빔포머는 고정 빔포머들인, 방법. - 제9항에 있어서,
빔포머 제어기에 의해, 상기 제1 빔포머가 제1 방향으로 조향되게 하고 상기 제2 빔포머가 제2 방향으로 조향되게 하는 단계를 추가로 포함하는, 방법. - 제11항에 있어서, 상기 제1 방향 및 상기 제2 방향은 사용자의 입의 방향에 있는, 방법.
- 제11항에 있어서, 상기 빔포머 제어기는 상기 제1 방향 및 상기 제2 방향을 동적으로 변경하는, 방법.
- 제9항에 있어서, 상기 제1 빔포머 신호는 제1 전방 마이크로폰 및 제1 후방 마이크로폰에 의해 형성된 제1 마이크로폰 어레이에 기초하고, 상기 제2 빔포머 신호는 제2 전방 마이크로폰 및 제2 후방 마이크로폰에 의해 형성된 제2 마이크로폰 어레이에 기초하는, 방법.
- 제14항에 있어서, 상기 제1 마이크로폰 어레이 및 상기 제2 마이크로폰 어레이는 브로드사이드 어레이들, 엔드파이어 어레이들 또는 이들의 임의의 조합인, 방법.
- 제14항에 있어서, 상기 제1 전방 마이크로폰 및 상기 제1 후방 마이크로폰은 제1 평면 상에 위치하고, 상기 제2 전방 마이크로폰 및 상기 제2 후방 마이크로폰은 제2 평면 상에 위치하는, 방법.
- 명령어들이 저장된 비일시적 컴퓨터 판독가능 매체로서, 상기 명령어들은, 프로세서에 의해 실행될 때, 상기 프로세서로 하여금 동작들을 수행하게 하고, 상기 동작들은:
제1 빔포머 신호로부터의 잡음 콘텐츠 및 제2 빔포머 신호로부터의 잡음 콘텐츠를 감쇠시켜 제1 잡음 억제된 신호 및 제2 잡음 억제된 신호를 각각 생성하는 것 - 상기 제1 빔포머 신호로부터의 잡음 콘텐츠 및 상기 제2 빔포머 신호로부터의 잡음 콘텐츠를 감쇠시키는 것은:
상기 제2 빔포머 신호에 포함되지 않는 상기 제1 빔포머 신호에서 음향 신호들을 결정하는 것 - 상기 제1 빔포머 신호로부터의 잡음 콘텐츠는 상기 제2 빔포머 신호에 포함되지 않는 음향 신호들을 포함함 -, 및
상기 제1 빔포머 신호에 포함되지 않는 상기 제2 빔포머 신호에서 음향 신호들을 결정하는 것 - 상기 제2 빔포머 신호로부터의 잡음 콘텐츠는 상기 제1 빔포머 신호에 포함되지 않는 음향 신호들을 포함함 - 을 포함함 -; 및
상기 제1 잡음 억제된 신호 및 상기 제2 잡음 억제된 신호로부터의 스피치 콘텐츠를 포함하는 클린 신호를 생성하는 것
을 포함하고, 상기 클린 신호를 생성하는 것은:
상기 제1 빔포머 신호 및 상기 제2 빔포머 신호 모두에 포함되는 음향 신호들을 결정하는 것을 포함하고, 상기 스피치 콘텐츠는 상기 제1 빔포머 신호 및 상기 제2 빔포머 신호 모두에 포함된 음향 신호들을 포함하는, 비일시적 컴퓨터 판독가능 매체. - 제17항에 있어서, 상기 프로세서가 동작들을 수행하는 것은:
상기 제1 빔포머가 제1 방향으로 조향되게 하고 상기 제2 빔포머가 제2 방향으로 조향되게 하는 것을 추가로 포함하고, 상기 제1 방향 및 상기 제2 방향은 사용자의 입의 방향에 있는, 비일시적 컴퓨터 판독가능 매체. - 제17항에 있어서, 상기 프로세서가 동작들을 수행하는 것은:
상기 제1 빔포머가 제1 방향으로 조향되게 하고 상기 제2 빔포머가 제2 방향으로 조향되게 하는 것을 추가로 포함하고, 빔포머 제어기는 상기 제1 방향 및 상기 제2 방향을 동적으로 변경하는, 비일시적 컴퓨터 판독가능 매체. - 제17항에 있어서,
제1 빔포머는 상기 제1 빔포머 신호를 생성하고, 제2 빔포머는 상기 제2 빔포머 신호를 생성하며, 상기 제1 빔포머 및 상기 제2 빔포머는 고정 빔포머들인, 비일시적 컴퓨터 판독가능 매체.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020247018413A KR20240096650A (ko) | 2019-06-28 | 2020-06-26 | 헤드-웨어러블 장치를 사용하여 캡처된 신호들의 신호 대 잡음비를 개선하기 위한 동적 빔포밍 |
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201962868715P | 2019-06-28 | 2019-06-28 | |
US62/868,715 | 2019-06-28 | ||
PCT/US2020/039826 WO2020264299A1 (en) | 2019-06-28 | 2020-06-26 | Dynamic beamforming to improve signal-to-noise ratio of signals captured using a head-wearable apparatus |
KR1020227002742A KR102586866B1 (ko) | 2019-06-28 | 2020-06-26 | 헤드-웨어러블 장치를 사용하여 캡처된 신호들의 신호 대 잡음비를 개선하기 위한 동적 빔포밍 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020227002742A Division KR102586866B1 (ko) | 2019-06-28 | 2020-06-26 | 헤드-웨어러블 장치를 사용하여 캡처된 신호들의 신호 대 잡음비를 개선하기 위한 동적 빔포밍 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020247018413A Division KR20240096650A (ko) | 2019-06-28 | 2020-06-26 | 헤드-웨어러블 장치를 사용하여 캡처된 신호들의 신호 대 잡음비를 개선하기 위한 동적 빔포밍 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20230146666A KR20230146666A (ko) | 2023-10-19 |
KR102672618B1 true KR102672618B1 (ko) | 2024-06-07 |
Family
ID=71728901
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020247018413A KR20240096650A (ko) | 2019-06-28 | 2020-06-26 | 헤드-웨어러블 장치를 사용하여 캡처된 신호들의 신호 대 잡음비를 개선하기 위한 동적 빔포밍 |
KR1020227002742A KR102586866B1 (ko) | 2019-06-28 | 2020-06-26 | 헤드-웨어러블 장치를 사용하여 캡처된 신호들의 신호 대 잡음비를 개선하기 위한 동적 빔포밍 |
KR1020237033875A KR102672618B1 (ko) | 2019-06-28 | 2020-06-26 | 헤드-웨어러블 장치를 사용하여 캡처된 신호들의 신호 대 잡음비를 개선하기 위한 동적 빔포밍 |
Family Applications Before (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020247018413A KR20240096650A (ko) | 2019-06-28 | 2020-06-26 | 헤드-웨어러블 장치를 사용하여 캡처된 신호들의 신호 대 잡음비를 개선하기 위한 동적 빔포밍 |
KR1020227002742A KR102586866B1 (ko) | 2019-06-28 | 2020-06-26 | 헤드-웨어러블 장치를 사용하여 캡처된 신호들의 신호 대 잡음비를 개선하기 위한 동적 빔포밍 |
Country Status (5)
Country | Link |
---|---|
US (2) | US11361781B2 (ko) |
EP (1) | EP3991450A1 (ko) |
KR (3) | KR20240096650A (ko) |
CN (2) | CN114073101B (ko) |
WO (1) | WO2020264299A1 (ko) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10567898B1 (en) * | 2019-03-29 | 2020-02-18 | Snap Inc. | Head-wearable apparatus to generate binaural audio |
CN114073101B (zh) | 2019-06-28 | 2023-08-18 | 斯纳普公司 | 用于提高使用头戴式设备采集的信号的信噪比的动态波束成形 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150170632A1 (en) | 2013-12-13 | 2015-06-18 | Gn Netcom A/S | Headset And A Method For Audio Signal Processing |
Family Cites Families (30)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
NL1021485C2 (nl) | 2002-09-18 | 2004-03-22 | Stichting Tech Wetenschapp | Hoorbril-samenstel. |
US20040175008A1 (en) * | 2003-03-07 | 2004-09-09 | Hans-Ueli Roeck | Method for producing control signals, method of controlling signal and a hearing device |
US7813923B2 (en) * | 2005-10-14 | 2010-10-12 | Microsoft Corporation | Calibration based beamforming, non-linear adaptive filtering, and multi-sensor headset |
NL2000085C2 (nl) | 2006-06-02 | 2007-12-04 | Varibel B V | Bril met gehoorondersteuningsmiddelen welke slechts één omnidirectionele microfoon per oorbeugel gebruikt. |
EP2286600B1 (en) * | 2008-05-02 | 2019-01-02 | GN Audio A/S | A method of combining at least two audio signals and a microphone system comprising at least two microphones |
US20110091057A1 (en) | 2009-10-16 | 2011-04-21 | Nxp B.V. | Eyeglasses with a planar array of microphones for assisting hearing |
US8219394B2 (en) * | 2010-01-20 | 2012-07-10 | Microsoft Corporation | Adaptive ambient sound suppression and speech tracking |
US9025782B2 (en) * | 2010-07-26 | 2015-05-05 | Qualcomm Incorporated | Systems, methods, apparatus, and computer-readable media for multi-microphone location-selective processing |
US8929564B2 (en) * | 2011-03-03 | 2015-01-06 | Microsoft Corporation | Noise adaptive beamforming for microphone arrays |
US9438985B2 (en) * | 2012-09-28 | 2016-09-06 | Apple Inc. | System and method of detecting a user's voice activity using an accelerometer |
US9544692B2 (en) * | 2012-11-19 | 2017-01-10 | Bitwave Pte Ltd. | System and apparatus for boomless-microphone construction for wireless helmet communicator with siren signal detection and classification capability |
US10231065B2 (en) | 2012-12-28 | 2019-03-12 | Gn Hearing A/S | Spectacle hearing device system |
US10229697B2 (en) * | 2013-03-12 | 2019-03-12 | Google Technology Holdings LLC | Apparatus and method for beamforming to obtain voice and noise signals |
US10306389B2 (en) * | 2013-03-13 | 2019-05-28 | Kopin Corporation | Head wearable acoustic system with noise canceling microphone geometry apparatuses and methods |
CN105229737B (zh) * | 2013-03-13 | 2019-05-17 | 寇平公司 | 噪声消除麦克风装置 |
US9363596B2 (en) | 2013-03-15 | 2016-06-07 | Apple Inc. | System and method of mixing accelerometer and microphone signals to improve voice quality in a mobile device |
EP3095252A2 (en) | 2014-01-17 | 2016-11-23 | Hearglass, Inc. | Hearing assistance system |
CA2949929A1 (en) | 2014-05-26 | 2015-12-03 | Vladimir Sherman | Methods circuits devices systems and associated computer executable code for acquiring acoustic signals |
US9426584B2 (en) | 2014-10-03 | 2016-08-23 | Umm Al-Qura University | Direction indicative hearing apparatus and method |
US10231056B2 (en) | 2014-12-27 | 2019-03-12 | Intel Corporation | Binaural recording for processing audio signals to enable alerts |
US20160275961A1 (en) * | 2015-03-18 | 2016-09-22 | Qualcomm Technologies International, Ltd. | Structure for multi-microphone speech enhancement system |
US10186277B2 (en) * | 2015-03-19 | 2019-01-22 | Intel Corporation | Microphone array speech enhancement |
US10412488B2 (en) * | 2015-08-19 | 2019-09-10 | Retune DSP ApS | Microphone array signal processing system |
GB2562664A (en) | 2016-02-03 | 2018-11-21 | Univ Nanyang Tech | Methods for detecting a sleep disorder and sleep disorder detection devices |
US20170303052A1 (en) * | 2016-04-18 | 2017-10-19 | Olive Devices LLC | Wearable auditory feedback device |
US10567898B1 (en) | 2019-03-29 | 2020-02-18 | Snap Inc. | Head-wearable apparatus to generate binaural audio |
CN114073101B (zh) | 2019-06-28 | 2023-08-18 | 斯纳普公司 | 用于提高使用头戴式设备采集的信号的信噪比的动态波束成形 |
US11857311B2 (en) | 2020-03-17 | 2024-01-02 | Prime Dragon Limited | Multi-purpose video monitoring camera |
JP2023521656A (ja) | 2020-03-31 | 2023-05-25 | レズメド センサー テクノロジーズ リミテッド | 気道閉塞をマッピングするためのシステム及び方法 |
CN111696575B (zh) | 2020-06-19 | 2023-01-03 | 杭州电子科技大学 | 基于混合神经网络模型的低通气和呼吸暂停检测识别系统 |
-
2020
- 2020-06-26 CN CN202080047279.2A patent/CN114073101B/zh active Active
- 2020-06-26 KR KR1020247018413A patent/KR20240096650A/ko unknown
- 2020-06-26 CN CN202310956908.9A patent/CN116805998A/zh active Pending
- 2020-06-26 EP EP20743430.9A patent/EP3991450A1/en active Pending
- 2020-06-26 US US16/913,289 patent/US11361781B2/en active Active
- 2020-06-26 KR KR1020227002742A patent/KR102586866B1/ko active IP Right Grant
- 2020-06-26 WO PCT/US2020/039826 patent/WO2020264299A1/en active Application Filing
- 2020-06-26 KR KR1020237033875A patent/KR102672618B1/ko active IP Right Grant
-
2022
- 2022-06-13 US US17/839,236 patent/US20220366926A1/en not_active Abandoned
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150170632A1 (en) | 2013-12-13 | 2015-06-18 | Gn Netcom A/S | Headset And A Method For Audio Signal Processing |
Also Published As
Publication number | Publication date |
---|---|
KR20220030260A (ko) | 2022-03-10 |
US20200411026A1 (en) | 2020-12-31 |
KR20230146666A (ko) | 2023-10-19 |
CN116805998A (zh) | 2023-09-26 |
WO2020264299A1 (en) | 2020-12-30 |
US11361781B2 (en) | 2022-06-14 |
KR20240096650A (ko) | 2024-06-26 |
EP3991450A1 (en) | 2022-05-04 |
CN114073101A (zh) | 2022-02-18 |
CN114073101B (zh) | 2023-08-18 |
KR102586866B1 (ko) | 2023-10-11 |
US20220366926A1 (en) | 2022-11-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102608630B1 (ko) | 바이노럴 오디오를 생성하는 헤드-웨어러블 장치 | |
KR102557774B1 (ko) | 음향 주밍 | |
US20220366926A1 (en) | Dynamic beamforming to improve signal-to-noise ratio of signals captured using a head-wearable apparatus | |
US20230324711A1 (en) | Intelligent actuated and adjustable glasses nose pad arms | |
US11501528B1 (en) | Selector input device to perform operations on captured media content items | |
US11567335B1 (en) | Selector input device to target recipients of media content items | |
US20230324714A1 (en) | Intelligent actuated temple attachments | |
US20230324713A1 (en) | Intelligent actuated temple tips | |
US20230324710A1 (en) | Intelligent actuated nose bridge | |
US11295172B1 (en) | Object detection in non-perspective images |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A107 | Divisional application of patent | ||
E701 | Decision to grant or registration of patent right |