KR20220117282A - 오디오 디바이스 자동-로케이션 - Google Patents

오디오 디바이스 자동-로케이션 Download PDF

Info

Publication number
KR20220117282A
KR20220117282A KR1020227024417A KR20227024417A KR20220117282A KR 20220117282 A KR20220117282 A KR 20220117282A KR 1020227024417 A KR1020227024417 A KR 1020227024417A KR 20227024417 A KR20227024417 A KR 20227024417A KR 20220117282 A KR20220117282 A KR 20220117282A
Authority
KR
South Korea
Prior art keywords
audio device
audio
data
listener
location
Prior art date
Application number
KR1020227024417A
Other languages
English (en)
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 KR20220117282A publication Critical patent/KR20220117282A/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04SSTEREOPHONIC SYSTEMS 
    • H04S7/00Indicating arrangements; Control arrangements, e.g. balance control
    • H04S7/30Control circuits for electronic adaptation of the sound field
    • H04S7/301Automatic calibration of stereophonic sound system, e.g. with test microphone
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04RLOUDSPEAKERS, MICROPHONES, GRAMOPHONE PICK-UPS OR LIKE ACOUSTIC ELECTROMECHANICAL TRANSDUCERS; DEAF-AID SETS; PUBLIC ADDRESS SYSTEMS
    • H04R3/00Circuits for transducers, loudspeakers or microphones
    • H04R3/005Circuits for transducers, loudspeakers or microphones for combining the signals of two or more microphones
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04RLOUDSPEAKERS, MICROPHONES, GRAMOPHONE PICK-UPS OR LIKE ACOUSTIC ELECTROMECHANICAL TRANSDUCERS; DEAF-AID SETS; PUBLIC ADDRESS SYSTEMS
    • H04R2420/00Details of connection covered by H04R, not provided for in its groups
    • H04R2420/07Applications of wireless loudspeakers or wireless microphones
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04RLOUDSPEAKERS, MICROPHONES, GRAMOPHONE PICK-UPS OR LIKE ACOUSTIC ELECTROMECHANICAL TRANSDUCERS; DEAF-AID SETS; PUBLIC ADDRESS SYSTEMS
    • H04R27/00Public address systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04RLOUDSPEAKERS, MICROPHONES, GRAMOPHONE PICK-UPS OR LIKE ACOUSTIC ELECTROMECHANICAL TRANSDUCERS; DEAF-AID SETS; PUBLIC ADDRESS SYSTEMS
    • H04R3/00Circuits for transducers, loudspeakers or microphones
    • H04R3/12Circuits for transducers, loudspeakers or microphones for distributing signals to two or more loudspeakers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04RLOUDSPEAKERS, MICROPHONES, GRAMOPHONE PICK-UPS OR LIKE ACOUSTIC ELECTROMECHANICAL TRANSDUCERS; DEAF-AID SETS; PUBLIC ADDRESS SYSTEMS
    • H04R5/00Stereophonic arrangements
    • H04R5/02Spatial or constructional arrangements of loudspeakers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04SSTEREOPHONIC SYSTEMS 
    • H04S7/00Indicating arrangements; Control arrangements, e.g. balance control
    • H04S7/30Control circuits for electronic adaptation of the sound field
    • H04S7/302Electronic adaptation of stereophonic sound system to listener position or orientation
    • H04S7/303Tracking of listener position or orientation

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Acoustics & Sound (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Otolaryngology (AREA)
  • Stereophonic System (AREA)
  • Circuit For Audible Band Transducer (AREA)

Abstract

환경에서 오디오 디바이스의 로케이션을 추정하기 위한 방법은 환경의 복수의 오디오 디바이스들의 각각의 오디오 디바이스에 대한 도달 방향(DOA) 데이터를 획득하는 단계 및 DOA 데이터에 기초하여 복수의 삼각형들 각각에 대한 내각들을 결정하는 단계를 포함할 수 있다. 각각의 삼각형은 오디오 디바이스 로케이션들에 대응하는 정점들을 가질 수 있다. 방법은 삼각형들의 각각의 삼각형의 각각의 변에 대한 변 길이를 결정하는 단계, 순방향 정렬 행렬을 생성하도록 복수의 삼각형들 각각을 정렬하는 순방향 정렬 프로세스를 수행하는 단계 및 역방향 정렬 행렬을 생성하도록 반전 시퀀스로 복수의 삼각형들 각각을 정렬하는 역방향 정렬 프로세스를 수행하는 단계를 포함할 수 있다. 각각의 오디오 디바이스 로케이션의 최종 추정은 순방향 정렬 행렬의 값들 및 역방향 정렬 행렬의 값들에 적어도 부분적으로 기초할 수 있다.

Description

오디오 디바이스 자동-로케이션
본 출원은 2019년 12월 18일에 출원된 미국 가특허 출원 번호 제62/949,998호, 2019년 12월 18일에 출원된 유럽 특허 출원 번호 제19217580.0호 및 2020년 3월 19일에 출원된 미국 가특허 출원 번호 제62/992,068호에 대한 우선권을 주장하며, 이들은 인용에 의해 본원에 포함된다.
본 개시내용은 오디오 디바이스들을 자동으로 로케이팅(locating)하기 위한 시스템들 및 방법들에 관한 것이다.
스마트 오디오 디바이스들을 포함하는(그러나 이에 제한되지 않음) 오디오 디바이스들은 광범위하게 보급되었고 많은 집들의 공통적인 특징들이 되고 있다. 오디오 디바이스들을 로케이팅하기 위한 기존 시스템들 및 방법들이 혜택들을 제공하지만, 개선된 시스템들 및 방법들이 바람직할 것이다.
표기법 및 명명법
본원에서, 단일 목적 오디오 디바이스 또는 가상 어시스턴스(예컨대, 연결된 가상 어시스턴스)인 스마트 디바이스를 나타내기 위해 "스마트 오디오 디바이스"라는 표현이 사용된다. 단일 목적 오디오 디바이스는 적어도 하나의 마이크로폰을 포함하거나 이에 커플링되고(그리고 일부 예들에서 적어도 하나의 스피커를 또한 포함하거나 이에 커플링될 수 있음) 대체로 또는 주로 단일 목적을 달성하기 위해 설계되는 디바이스(예컨대, 스마트 스피커, 텔레비전(TV) 또는 모바일 폰)이다. TV가 통상적으로 프로그램 재료로부터의 오디오를 플레이(play)할 수 있지만(그리고 이 오디오를 플레이할 수 있는 것으로 간주되지만), 대부분의 경우들에서, 최신 TV는 텔레비전 시청 애플리케이션을 포함하는 애플리케이션들이 로컬로 실행되는 일부 운영 체제를 실행한다. 유사하게, 모바일 폰에서의 오디오 입력 및 출력은 많은 것들을 행할 수 있지만, 이들은 폰 상에서 실행되는 애플리케이션들에 의해 서비스된다. 이 의미에서, 스피커(들) 및 마이크로폰(들)을 갖는 단일 목적 오디오 디바이스는 종종 스피커(들) 및 마이크로폰(들)을 직접 사용하기 위해 로컬 애플리케이션 및/또는 서비스를 실행하도록 구성된다. 일부 단일 목적 오디오 디바이스들은 존 또는 사용자-구성 구역에 걸쳐 오디오의 플레이를 달성하기 위해 함께 그룹화하도록 구성될 수 있다.
본원에서, "가상 어시스턴트"(예컨대, 연결된 가상 어시스턴트)는 적어도 하나의 마이크로폰을 포함하거나 이에 커플링되고(그리고 선택적으로 적어도 하나의 스피커를 또한 포함하거나 이에 커플링됨) 어떤 의미에서 클라우드 인에이블(cloud enabled)되거나 그렇지 않으면 가상 어시스턴트 자체에서 또는 가상 어시스턴트 상에서 구현되지 않는 애플리케이션들을 위해 다수의 디바이스들(가상 어시스턴트와 구별됨)을 활용하는 능력을 제공할 수 있는 디바이스(예컨대, 스마트 스피커, 스마트 디스플레이 또는 음성 어시스턴스 통합 디바이스)이다. 가상 어시스턴트들은 때때로 함께, 예컨대, 매우 별개로 그리고 조건부로 정의된 방식으로 작동할 수 있다. 예컨대, 2개 이상의 가상 어시스턴트들은 그들 중 하나, 즉 웨이크워드(wakeword)를 들었다고 가장 확신하는 하나의 어시스턴트가 해당 단어에 응답한다는 의미에서 함께 작동할 수 있다. 연결된 디바이스들은 가상 어시스턴트일 수 있는(또는 이를 포함하거나 구현하는) 하나의 메인 애플리케이션에 의해 관리될 수 있는 일종의 컨스텔레이션(constellation)을 형성할 수 있다.
본원에서, "웨이크워드(wakeword)"는 임의의 사운드(예컨대, 인간에 의해 발화된 단어, 또는 일부 다른 사운드)를 나타내기 위해 넓은 의미로 사용되며, 여기서 스마트 오디오 디바이스는 사운드의 검출("듣기(hearing)")에 대한 응답으로 (스마트 오디오 디바이스에 포함되거나 이에 커플링된 적어도 하나의 마이크로폰, 또는 적어도 하나의 다른 마이크로폰을 사용하여) 어웨이크하도록 구성된다. 이 맥락에서, "어웨이크(awake)"는 디바이스가 사운드 커맨드를 기다리는(즉, 리스닝하는) 상태에 진입하는 것을 나타낸다.
본원에서, "웨이크워드 검출기(wakeword detector)"라는 표현은 실시간 사운드(예컨대, 스피치) 특징들과 트레이닝된 모델 사이의 정렬을 연속적으로 검색하도록 구성된 디바이스(또는 디바이스를 구성하기 위한 명령들을 포함하는 소프트웨어)를 나타낸다. 통상적으로, 웨이크워드 이벤트는 웨이크워드가 검출되었을 확률이 미리 정의된 임계치를 초과한다고 웨이크워드 검출기에 의해 결정될 때마다 트리거된다. 예컨대, 임계치는 오인식률과 오거부율 사이에 양호한 절충을 제공하도록 튜닝되는 미리 결정된 임계치일 수 있다. 웨이크워드 이벤트 후에, 디바이스는 커맨드를 리스닝하고 수신된 커맨드를 더 크고 더 계산 집약적인 인식기에 전달하는 상태("어웨이큰(awakened)" 상태 또는 "주의(attentiveness)" 상태로 지칭될 수 있음)에 진입할 수 있다.
청구항들을 포함하는 본 개시내용 전반에 걸쳐, "스피커(speaker)" 및 "확성기(loudspeaker)"는 단일 스피커 피드에 의해 구동되는 임의의 사운드 방출 트랜스듀서(또는 트랜스듀서들의 세트)를 나타내기 위해 동의어로 사용된다. 헤드폰들의 통상적인 세트는 2개의 스피커들을 포함한다. 스피커는 다수의 트랜스듀서들(예컨대, 우퍼 및 트위터)을 포함하도록 구현될 수 있으며, 이들 모두는 단일, 공통 스피커 피드에 의해 구동된다. 스피커 피드는 일부 경우에서, 상이한 트랜스듀서들에 커플링된 상이한 회로 분기들에서 상이한 프로세싱을 겪을 수 있다.
청구항들을 포함하는 본 개시내용에 전반에 걸쳐, 신호 또는 데이터 "상에(on)" 동작을 수행한다는 표현(예컨대, 신호 또는 데이터를 필터링하는 것, 스케일링하는 것, 변환하는 것, 또는 신호 또는 데이터에 이득을 적용하는 것)은 신호 또는 데이터 상에, 또는 프로세싱된 버전의 신호 또는 데이터의 상에(예컨대, 동작의 수행 전에 예비 필터링 또는 사전-프로세싱을 겪었던 신호의 버전 상에) 동작을 직접 수행하는 것을 나타내기 위해 넓은 의미로 사용된다.
청구항들을 포함하는 본 개시내용 전반에 걸쳐, "시스템(system)"이란 표현은 디바이스, 시스템, 또는 서브시스템을 나타내기 위해 넓은 의미로 사용된다. 예컨대, 디코더를 구현하는 서브시스템은 디코더 시스템으로서 지칭될 수 있고, 그러한 서브시스템을 포함하는 시스템(예컨대, 다수의 입력들에 대한 응답으로 X개의 출력 신호들을 생성하는 시스템, 여기서 서브시스템은 입력들 중 M개를 생성하고 남은 X ― M개의 입력들은 외부 소스로부터 수신됨)은 또한 디코더 시스템으로서 지칭될 수 있다.
청구항들을 포함하는 본 개시내용 전반에 걸쳐, "프로세서(processor)"라는 용어는 데이터(예컨대, 오디오, 또는 비디오 또는 다른 이미지 데이터) 상에 동작들을 수행하도록 (예컨대, 소프트웨어 또는 펌웨어로) 프로그래밍 가능하거나 다른 방식으로 구성 가능한 시스템 또는 디바이스를 나타내기 위해 넓은 의미로 사용된다. 프로세서들의 예들은 필드-프로그래밍 가능 게이트 어레이(또는 다른 구성 가능한 집적 회로 또는 칩 셋), 오디오 또는 다른 사운드 데이터 상에 파이프라인식 프로세싱(pipelined processing)을 수행하도록 프로그래밍되고 그리고/또는 다른 방식으로 구성된 디지털 신호 프로세서, 프로그래밍 가능 범용 프로세서 또는 컴퓨터, 및 프로그래밍 가능 마이크로프로세서 칩 또는 칩 셋을 포함한다.
본 개시내용의 적어도 일부 양상들은 방법들을 통해 구현될 수 있다. 일부 그러한 방법들은 오디오 디바이스 로케이션, 즉 환경에서 복수의(예를 들어, 적어도 4개 이상의) 오디오 디바이스들의 로케이션을 결정하는 방법을 포함할 수 있다. 예컨대, 일부 방법들은 복수의 오디오 디바이스들의 각각의 오디오 디바이스에 대한 도달 방향(direction of arrival; DOA) 데이터를 획득하고 DOA 데이터에 기초하여 복수의 삼각형들 각각에 대한 내각들을 결정하는 것을 포함할 수 있다. 일부 경우들에서, 복수의 삼각형들의 각각의 삼각형은 오디오 디바이스들 중 3개의 오디오 디바이스 로케이션들에 대응하는 정점들을 가질 수 있다. 일부 그러한 방법들은 내각들에 적어도 부분적으로 기초하여 각각의 삼각형들의 각각의 변에 대한 변 길이를 결정하는 것을 포함할 수 있다.
일부 그러한 방법들은 순방향 정렬 행렬을 생성하기 위해, 제1 시퀀스로 복수의 삼각형들 각각을 정렬시키는 순방향 정렬 프로세스를 수행하는 것을 포함할 수 있다. 일부 그러한 방법들은 역방향 정렬 행렬을 생성하기 위해, 제1 시퀀스의 반전인 제2 시퀀스로 복수의 삼각형들 각각을 정렬시키는 역방향 정렬 프로세스를 수행하는 것을 포함할 수 있다. 일부 그러한 방법은 순방향 정렬 행렬의 값들 및 역방향 정렬 행렬의 값들에 적어도 부분적으로 기초하여, 각각의 오디오 디바이스 로케이션의 최종 추정을 생성하는 것을 포함할 수 있다.
일부 예들에 따르면, 각각의 오디오 디바이스 로케이션의 최종 추정을 생성하는 것은 평행 이동 및 스케일링된 순방향 정렬 행렬을 생성하기 위해 순방향 정렬 행렬을 평행 이동 및 스케일링하고 및 평행 이동 및 스케일링된 역방향 정렬 행렬을 생성하기 위해 역방향 정렬 행렬을 평행 이동 및 스케일링하는 것을 포함할 수 있다. 일부 이러한 방법들은 평행 이동 및 스케일링된 순방향 정렬 행렬 및 평행 이동 및 스케일링된 역방향 정렬 행렬에 기초하여 회전 행렬을 생성하는 것을 포함할 수 있다. 회전 행렬은 각각의 오디오 디바이스에 대한 복수의 추정된 오디오 디바이스 로케이션들을 포함할 수 있다. 일부 구현들에서, 회전 행렬을 생성하는 것은 평행 이동 및 스케일링된 순방향 정렬 행렬 및 평행 이동 및 스케일링된 역방향 정렬 행렬 상에서 특이 값 분해를 수행하는 것을 포함할 수 있다. 일부 예들에 따르면, 각각의 오디오 디바이스 로케이션의 최종 추정을 생성하는 것은 각각의 오디오 디바이스 로케이션의 최종 추정을 생성하기 위해 각각의 오디오 디바이스에 대한 추정된 오디오 디바이스 로케이션들을 평균화하는 것을 포함할 수 있다.
일부 구현들에서, 변 길이를 결정하는 것은 삼각형의 내각들에 기초하여 삼각형의 제1 변의 제1 길이를 결정하고 삼각형의 제2 변 및 제3 변의 길이들을 결정하는 것을 포함할 수 있다. 일부 예들에서, 제1 길이를 결정하는 것은 제1 길이를 미리 결정된 값으로 세팅하는 것을 포함할 수 있다. 제1 길이를 결정하는 것은 일부 예들에서, 도달 시간 데이터 및/또는 수신된 신호 강도 데이터에 기초할 수 있다.
일부 예들에 따르면, DOA 데이터를 획득하는 것은 복수의 오디오 디바이스들 중 적어도 하나의 오디오 디바이스에 대한 DOA 데이터를 획득하는 것을 포함할 수 있다. 일부 경우들에서, DOA 데이터를 결정하는 것은 복수의 오디오 디바이스들 중 단일 오디오 디바이스에 대응하는 복수의 오디오 디바이스 마이크로폰들의 각각의 마이크로폰으로부터 마이크로폰 데이터를 수신하고 마이크로폰 데이터에 적어도 부분적으로 기초하여 단일 오디오 디바이스에 대한 DOA 데이터를 결정하는 것을 포함할 수 있다. 일부 예들에 따르면, DOA 데이터를 결정하는 것은 복수의 오디오 디바이스들 중 단일 오디오 디바이스에 대응하는 하나 이상의 안테나들로부터 안테나 데이터를 수신하고 안테나 데이터에 적어도 부분적으로 기초하여 단일 오디오 디바이스에 대한 DOA 데이터를 결정하는 것을 포함할 수 있다.
일부 구현들에서, 방법은 또한 적어도 하나의 오디오 디바이스 로케이션의 최종 추정에 적어도 부분적으로 기초하여 오디오 디바이스들 중 적어도 하나를 제어하는 것을 포함할 수 있다. 일부 그러한 예들에서, 오디오 디바이스들 중 적어도 하나를 제어하는 것은 오디오 디바이스들 중 적어도 하나의 확성기를 제어하는 것을 포함할 수 있다.
본원에서 설명된 동작들, 기능들 및/또는 방법들 중 일부 또는 전부는 하나 이상의 비-일시적 매체들 상에 저장된 명령들(예컨대, 소프트웨어)에 따라 하나 이상의 디바이스들에 의해 수행될 수 있다. 그러한 비-일시적 매체들은 랜덤 액세스 메모리(RAM) 디바이스들, 판독 전용 메모리(ROM) 디바이스들 등을 포함하는(그러나 이에 제한되지 않음), 본원에 설명된 것들과 같은 메모리 디바이스들을 포함할 수 있다. 따라서, 본 개시내용에서 설명된 청구 대상의 일부 혁신적인 양상들은 소프트웨어가 저장되어 있는 비-일시적인 매체에서 구현될 수 있다.
예컨대, 소프트웨어는 오디오 디바이스 로케이션을 포함하는 방법을 수행하도록 하나 이상의 디바이스들을 제어하기 위한 명령들을 포함할 수 있다. 일부 방법들은 복수의 오디오 디바이스들의 각각의 오디오 디바이스에 대한 DOA 데이터를 획득하고 DOA 데이터에 기초하여 복수의 삼각형들 각각에 대한 내각들을 결정하는 것을 포함할 수 있다. 일부 경우들에서, 복수의 삼각형들의 각각의 삼각형은 오디오 디바이스들 중 3개의 오디오 디바이스 로케이션들에 대응하는 정점들을 가질 수 있다. 일부 그러한 방법들은 내각들에 적어도 부분적으로 기초하여 각각의 삼각형들의 각각의 변에 대한 변 길이를 결정하는 것을 포함할 수 있다.
일부 그러한 방법들은 순방향 정렬 행렬을 생성하기 위해, 제1 시퀀스로 복수의 삼각형들 각각을 정렬시키는 순방향 정렬 프로세스를 수행하는 것을 포함할 수 있다. 일부 그러한 방법들은 역방향 정렬 행렬을 생성하기 위해, 제1 시퀀스의 반전인 제2 시퀀스로 복수의 삼각형들 각각을 정렬시키는 역방향 정렬 프로세스를 수행하는 것을 포함할 수 있다. 일부 그러한 방법은 순방향 정렬 행렬의 값들 및 역방향 정렬 행렬의 값들에 적어도 부분적으로 기초하여, 각각의 오디오 디바이스 로케이션의 최종 추정을 생성하는 것을 포함할 수 있다.
일부 예들에 따르면, 각각의 오디오 디바이스 로케이션의 최종 추정을 생성하는 것은 평행 이동 및 스케일링된 순방향 정렬 행렬을 생성하기 위해 순방향 정렬 행렬을 평행 이동 및 스케일링하고 및 평행 이동 및 스케일링된 역방향 정렬 행렬을 생성하기 위해 역방향 정렬 행렬을 평행 이동 및 스케일링하는 것을 포함할 수 있다. 일부 이러한 방법들은 평행 이동 및 스케일링된 순방향 정렬 행렬 및 평행 이동 및 스케일링된 역방향 정렬 행렬에 기초하여 회전 행렬을 생성하는 것을 포함할 수 있다. 회전 행렬은 각각의 오디오 디바이스에 대한 복수의 추정된 오디오 디바이스 로케이션들을 포함할 수 있다. 일부 구현들에서, 회전 행렬을 생성하는 것은 평행 이동 및 스케일링된 순방향 정렬 행렬 및 평행 이동 및 스케일링된 역방향 정렬 행렬 상에서 특이 값 분해를 수행하는 것을 포함할 수 있다. 일부 예들에 따르면, 각각의 오디오 디바이스 로케이션의 최종 추정을 생성하는 것은 각각의 오디오 디바이스 로케이션의 최종 추정을 생성하기 위해 각각의 오디오 디바이스에 대한 추정된 오디오 디바이스 로케이션들을 평균화하는 것을 포함할 수 있다.
일부 구현들에서, 변 길이를 결정하는 것은 삼각형의 내각들에 기초하여 삼각형의 제1 변의 제1 길이를 결정하고 삼각형의 제2 변 및 제3 변의 길이들을 결정하는 것을 포함할 수 있다. 일부 예들에서, 제1 길이를 결정하는 것은 제1 길이를 미리 결정된 값으로 세팅하는 것을 포함할 수 있다. 제1 길이를 결정하는 것은 일부 예들에서, 도달 시간 데이터 및/또는 수신된 신호 강도 데이터에 기초할 수 있다.
일부 예들에 따르면, DOA 데이터를 획득하는 것은 복수의 오디오 디바이스들 중 적어도 하나의 오디오 디바이스에 대한 DOA 데이터를 획득하는 것을 포함할 수 있다. 일부 경우들에서, DOA 데이터를 결정하는 것은 복수의 오디오 디바이스들 중 단일 오디오 디바이스에 대응하는 복수의 오디오 디바이스 마이크로폰들의 각각의 마이크로폰으로부터 마이크로폰 데이터를 수신하고 마이크로폰 데이터에 적어도 부분적으로 기초하여 단일 오디오 디바이스에 대한 DOA 데이터를 결정하는 것을 포함할 수 있다. 일부 예들에 따르면, DOA 데이터를 결정하는 것은 복수의 오디오 디바이스들 중 단일 오디오 디바이스에 대응하는 하나 이상의 안테나들로부터 안테나 데이터를 수신하고 안테나 데이터에 적어도 부분적으로 기초하여 단일 오디오 디바이스에 대한 DOA 데이터를 결정하는 것을 포함할 수 있다.
일부 구현들에서, 방법은 또한 적어도 하나의 오디오 디바이스 로케이션의 최종 추정에 적어도 부분적으로 기초하여 오디오 디바이스들 중 적어도 하나를 제어하는 것을 포함할 수 있다. 일부 그러한 예들에서, 오디오 디바이스들 중 적어도 하나를 제어하는 것은 오디오 디바이스들 중 적어도 하나의 확성기를 제어하는 것을 포함할 수 있다.
본 개시내용의 적어도 일부 양상들은 장치를 통해 구현될 수 있다. 예컨대, 하나 이상의 디바이스들은 본원에서 개시된 방법들을 적어도 부분적으로 수행할 수 있을 수 있다. 일부 구현들에서, 장치는 인터페이스 시스템 및 제어 시스템을 포함할 수 있다. 제어 시스템은 하나 이상의 범용 단일- 또는 다중-칩 프로세서, 디지털 신호 프로세서(DSP)들, 주문형 집적 회로(ASIC)들, 필드 프로그래밍 가능 게이트 어레이(FPGA)들 또는 다른 프로그래밍 가능 로직 디바이스들, 개별 게이트들 또는 트랜지스터 로직, 개별 하드웨어 구성요소들 또는 이들의 조합들을 포함할 수 있다. 일부 예들에서, 장치는 위에서 언급된 오디오 디바이스들 중 하나일 수 있다. 그러나, 일부 구현들에서, 장치는 모바일 디바이스, 랩톱, 서버 등과 같은 다른 유형의 디바이스일 수 있다.
본 개시내용의 일부 양상에서, 설명된 방법들 중 임의의 것은 명령들을 포함하는 컴퓨터 프로그램 제품에서 구현될 수 있으며, 이 명령들은, 프로그램이 컴퓨터에 의해 실행될 때, 컴퓨터로 하여금, 본 개시내용에 설명된 방법들 또는 방법들의 단계들 중 임의의 것을 수행하게 한다.
본 개시내용의 일부 양상에서, 컴퓨터 프로그램 제품을 포함하는 컴퓨터 판독가능 매체가 설명된다.
본 명세서에서 설명되는 청구 대상의 하나 이상의 구현들의 세부사항들은, 아래의 첨부 도면들 및 설명에서 기술된다. 다른 특징들, 양상들, 및 이점들은 설명, 도면들, 및 청구항들로부터 명백해질 것이다. 하기 도면들의 상대적 치수들은 실척대로 도시되지 않을 수 있음을 유의한다.
도 1은 환경의 3개의 오디오 디바이스들 사이의 기하학적 관계들의 예를 도시한다.
도 2는 도 1에 도시된 환경의 3개의 오디오 디바이스들 사이의 기하학적 관계들의 다른 예를 도시한다.
도 3a는 환경의 대응하는 오디오 디바이스들 및 다른 특징들 없이, 도 1 및 도 2에 도시된 삼각형들 둘 모두를 도시한다.
도 3b는 3개의 오디오 디바이스들에 의해 형성된 삼각형의 내각들을 추정하는 예를 도시한다.
도 4는 도 11에 도시된 것과 같은 장치에 의해 수행될 수 있는 방법의 일 예를 약술하는 흐름도이다.
도 5는 환경의 각각의 오디오 디바이스가 다수의 삼각형들의 정점인 일 예를 도시한다.
도 6은 순방향 정렬 프로세스의 부분의 예를 제공한다.
도 7은 순방향 정렬 프로세스 동안 발생한 오디오 디바이스 로케이션의 다수의 추정들의 예를 도시한다.
도 8은 역방향 정렬 프로세스의 부분의 예를 제공한다.
도 9는 역방향 정렬 프로세스 동안 발생한 오디오 디바이스 로케이션의 다수의 추정들의 예를 도시한다.
도 10은 추정된 및 실제 오디오 디바이스 로케이션들의 비교를 도시한다.
도 11은 본 개시내용의 다양한 양상들을 구현할 수 있는 장치의 구성요소들의 예들을 도시하는 블록도이다.
도 12는 도 11에 도시된 것과 같은 장치에 의해 수행될 수 있는 방법의 일 예를 약술하는 흐름도이다.
도 13a는 도 12의 일부 블록들의 예들을 도시한다.
도 13b는 청취자 각도 방위 데이터를 결정하는 부가적인 예를 도시한다.
도 13c는 청취자 각도 방위 데이터를 결정하는 부가적인 예를 도시한다.
도 13d는 도 13c를 참조하여 설명된 방법에 따라 오디오 디바이스 좌표들에 대한 적절한 회전을 결정하는 일 예를 도시한다.
도 14는 이들 특정 스피커 포지션들에 대해 수학식 11에 대한 최적의 솔루션을 포함하는 스피커 활성화들을 도시한다.
도 15는 스피커 활성화들이 도 14에 도시되는 개별 스피커 포지션들을 플로팅한다.
다양한 도면들 내의 유사한 참조 번호들 및 지정들은 유사한 엘리먼트들을 표시한다.
텔레비전들 및 사운드바들을 포함하는 기존 오디오 디바이스들 외에도, 다수의 드라이브 유닛들 및 마이크로폰 어레이들을 통합한 스마트 스피커들, 및 새로운 마이크로폰 및 확성기-인에이블 연결 디바이스들 이를테면, 전구들 및 전자레인지들의 출현은 오케스트레이션(orchestration)을 달성하기 위해 수십 개의 마이크로폰들 및 확성기들이 서로에 대한 로케이팅을 필로로 한다는 문제를 생성한다. 오디오 디바이스들은 표준 레이아웃들(이를테면, 개별 Dolby 5.1 확성기 레이아웃)에 있는 것으로 가정될 수 없다. 일부 경우들에서, 환경의 오디오 디바이스들은 랜덤으로 로케이팅되거나, 적어도 불규칙적 및/또는 비대칭적 방식으로 환경 내에 분배될 수 있다.
또한, 오디오 디바이스들은 이종 또는 동기식인 것으로 가정될 수 없다. 본원에서 사용된 바와 같이, 오디오 디바이스들은, 사운드들이 동일한 샘플 클록 또는 동기화된 샘플 클록들에 따라 오디오 디바이스들에 의해 검출되거나 방출되는 경우 "동기식" 또는 "동기화된" 것으로 지칭될 수 있다. 예컨대, 환경 내의 제1 오디오 디바이스의 제1 동기화된 마이크로폰은 제1 샘플 클록에 따라 오디오 데이터를 디지털 방식으로 샘플링할 수 있고, 환경 내의 제2 동기화된 오디오 디바이스의 제2 마이크로폰은 제1 샘플 클록에 따라 오디오 데이터를 디지털 방식으로 샘플링할 수 있다. 대안적으로, 또는 부가적으로, 환경 내의 제1 오디오 디바이스의 제1 동기화된 스피커는 스피커 셋-업 클록에 따라 사운드를 방출할 수 있고, 환경 내의 제2 오디오 디바이스의 제2 동기화된 스피커는 스피커 셋-업 클록에 따라 사운드를 방출할 수 있다.
자동 스피커 로케이션을 위한 일부 이전에 개시된 방법들은 동기화된 마이크로폰들 및/또는 스피커들을 요구한다. 예컨대, 디바이스 로컬라이제이션(device localization)을 위한 일부 기존 도구들은 시스템의 모든 마이크로폰들 간의 샘플 동기화에 의존하여, 알려진 테스트 자극들 및 센서들 사이에서 전체 대역폭 오디오 데이터의 전달을 요구한다.
본 양수인은 극장 및 가정을 위한 여러 스피커 로컬라이제이션 기술들을 생성했으며, 이들은 이 기술들이 설계된 사용 사례들에서 탁월한 솔루션이다. 일부 이러한 방법들은 각각의 확성기와 대략적으로 공동배치된(co-located) 마이크로폰(들)과 음원 사이의 임펄스 응답들로부터 유도된 비행 시간(time-of-flight)에 기초한다. 레코드 및 플레이백 체인들에서의 시스템 레이턴시들이 또한 추정될 수 있지만, 임펄스 응답들을 추정할 알려진 테스트 자극에 대한 필요성과 함께 클록들 간의 샘플 동기화가 요구된다.
이러한 맥락에서 소스 로컬라이제이션의 최근 예들은 디바이스-내 마이크로폰 동기화를 요구하지만 디바이스-간 동기화를 요구하지 않음으로써 제약들을 완화하였다. 부가적으로, 일부 이러한 방법들은 저대역폭 메시지 전달에 의해 이를테면, 직접(비-반사) 사운드의 도달 시간(TOA)의 검출 또는 직접 사운드의 지배적인 도달 방향(예컨대, DOA)의 검출을 통해 센서들 간에 오디오를 전달할 필요성을 단념시켰다. 각각의 접근법은 일부 잠재적 이점들 및 잠재적 단점들을 갖는다. 예컨대, TOA 방법들은 3개의 축들 중 하나에 대한 미지의 병진운동, 회전 및 반사에 이르는 디바이스 기하학적 구조를 결정할 수 있다. 디바이스 당 단 하나의 마이크로폰이 있는 경우, 개별 디바이스들의 회전들은 또한 알려지지 않는다. DOA 방법들은 미지의 병진운동, 회전 및 스케일에 이르는 디바이스 기하학적 구조를 결정할 수 있다. 일부 이러한 방법들은 이상적인 조건들 하에서 만족스러운 결과들을 생성할 수 있지만, 측정 에러에 대한 이러한 방법들의 견고성은 입증되지 않았다.
본 개시내용의 일부 구현들은 각각의 디바이스의 마이크로폰 어레이에 의해 관찰된 제어되지 않은 음원들로부터의 비동기식 DOA 추정들을 사용하여 기하학적-기반 최적화(geometrically-based optimization)를 적용함으로써 환경(예컨대, 방)에서 다수의 오디오 디바이스들의 포지션들을 자동으로 로케이팅한다. 다양한 개시된 오디오 디바이스 로케이션 접근법들은 큰 DOA 추정 에러들에 대해 견고한 것으로 증명되었다.
일부 그러한 구현들은 DOA 데이터의 세트들로부터 유도된 삼각형들을 반복적으로 정렬시키는 것을 포함한다. 일부 그러한 예들에서, 각각의 오디오 디바이스는 제어되지 않은 소스로부터 DOA를 추정하는 마이크로폰 어레이를 포함할 수 있다. 일부 구현들에서, 마이크로폰 어레이들은 적어도 하나의 확성기와 공동배치될 수 있다. 그러나, 적어도 일부 개시된 방법들은 모든 마이크로폰 어레이들이 확성기와 공동배치되지 않는 경우들로 일반화된다.
일부 개시된 방법들에 따르면, 환경의 모든 각각의 오디오 디바이스로부터 모든 각각의 다른 오디오 디바이스로의 DOA 데이터가 집계될 수 있다. 오디오 디바이스 로케이션들은 DOA들의 쌍들에 의해 파라미터화된 삼각형들을 반복적으로 정렬시킴으로써 추정될 수 있다. 일부 이러한 방법들은 미지의 크기 및 회전까지 올바른 결과를 산출할 수 있다. 다수의 애플리케이션들에서, 절대 스케일이 필요하지 않으며 솔루션에 부가적인 제약들을 가함으로써 회전들이 분해(resolve)될 수 있다. 예컨대, 일부 다중-스피커 환경들은 텔레비전(TV) 스피커들 및 TV 시청을 위해 배치된 소파를 포함될 수 있다. 환경에서 스피커들을 로케이팅한 후, 일부 방법들은 TV를 가리키는 벡터를 찾고 삼각측량에 의해 소파 상에 앉아 있는 사용자의 스피치를 로케이팅하는 것을 포함할 수 있다. 그 후 일부 그러한 방법들은 TV가 자신의 스피커로부터 사운드를 방출하게 하고 그리고/또는 사용자에게 TV까지 걸어가도록 촉구하고 삼각측량을 통해 사용자의 스피치를 로케이팅하는 것을 포함할 수 있다. 일부 구현들은 환경 주변을 패닝(pan)하는 오디오 오브젝트를 렌더링하는 것을 포함할 수 있다. 사용자는 오디오 오브젝트가 환경의 전방, 환경의 TV 로케이션 등과 같이 환경 내의 하나 이상의 미리 결정된 포지션들에 있을 때를 표시하는 사용자 입력(예컨대, "스톱"이라고 말함)을 제공할 수 있다. 일부 그러한 예들에 따라, 환경 내에서 스피커를 로케이팅하고 그의 방위를 결정한 후, 사용자는 다수의 스피커들에 의해 방출된 사운드들의 도달 방향들의 교차점을 찾음으로써 로케이팅될 수 있다. 일부 구현들은 적어도 2개의 오디오 디바이스들 사이의 추정된 거리를 결정하고 추정된 거리에 따라 환경에서 다른 오디오 디바이스들 간의 거리들을 스케일링하는 것을 포함한다.
도 1은 환경의 3개의 오디오 디바이스들 사이의 기하학적 관계들의 예를 도시한다. 이 예에서, 환경(100)은 텔레비전(101), 소파(105) 및 5개의 오디오 디바이스(105)를 포함하는 방이다. 이 예에 따르면, 오디오 디바이스들(105)은 환경(100)의 로케이션들(1 내지 5)에 있다. 이 구현에서, 오디오 디바이스들(105) 각각은 적어도 3개의 마이크로폰들을 갖는 마이크로폰 시스템(120) 및 적어도 하나의 스피커를 갖는 스피커 시스템(125)을 포함한다. 일부 구현들에서, 각각의 마이크로폰 시스템(120)은 마이크로폰들의 어레이를 포함한다. 일부 구현들에 따르면, 오디오 디바이스들(105) 각각은 적어도 3개의 안테나들을 포함하는 안테나 시스템을 포함할 수 있다.
본원에 개시된 다른 예들과 같이, 도 1에 도시된 요소들의 유형, 수 및 어레인지먼트는 단지 예로서만 이루어진다. 다른 구현들은 요소들의 상이한 유형들, 수들 및 어레인지먼트들, 예컨대, 더 많거나 더 적은 오디오 디바이스들(105), 상이한 로케이션들의 오디오 디바이스들(105) 등을 가질 수 있다.
이 예에서, 삼각형(110a)은 로케이션들(1, 2 및 3)에 그의 정점들을 갖는다. 여기서, 삼각형(110a)은 변들(12, 23a 및 13a)을 갖는다. 이 예에 따르면, 변들(12 및 23) 사이의 각도는 θ2이고, 변들(12 및 13a) 사이의 각도는 θ1이고 변들(23a 및 13a) 사이의 각도는 θ3이다. 이들 각도들은 아래에 더 상세히 설명되는 바와 같이, DOA 데이터에 따라 결정될 수 있다.
일부 구현들에서, 삼각형 변들의 상대 길이들만이 결정될 수 있다. 대안적인 구현들에서, 삼각형 변들의 실제 길이들이 추정될 수 있다. 일부 그러한 구현들에 따르면, 삼각형 변의 실제 길이는 TOA 데이터에 따라, 예컨대, 하나의 삼각형 정점에 로케이팅된 오디오 디바이스에 의해 생성되고 다른 삼각형 정점에 로케이팅된 오디오 디바이스에 의해 검출되는 사운드의 도달 시간에 따라 추정될 수 있다. 대안적으로, 또는 부가적으로, 삼각형 변의 길이는 하나의 삼각형 정점에 로케이팅된 오디오 디바이스에 의해 생성되고 다른 삼각형 정점에 로케이팅된 오디오 디바이스에 의해 검출되는 전자기파들에 따라 추정될 수 있다. 예컨대, 삼각형 변의 길이는 하나의 삼각형 정점에 로케이팅된 오디오 디바이스에 의해 생성되고 다른 삼각형 정점에 로케이팅된 오디오 디바이스에 의해 검출되는 전자기파들의 신호 강도에 따라 추정될 수 있다. 일부 구현들에서, 삼각형 변의 길이는 전자기파들의 검출된 위상 시프트에 따라 추정될 수 있다.
도 2는 도 1에 도시된 환경의 3개의 오디오 디바이스들 사이의 기하학적 관계들의 다른 예를 도시한다. 이 예에서, 삼각형(110b)은 로케이션들(1, 3 및 4)에서 그의 정점들을 갖는다. 여기서, 삼각형(110b)은 변들(13b, 14 및 34a)을 갖는다. 이 예에 따르면, 변들(13b 및 14) 사이의 각도는 θ4이고, 변들(13b 및 34a)사이의 각도는 θ5 이고 변들(34a 및 14) 사이의 각도는 θ6이다.
도 1 및 2를 비교함으로써, 삼각형(110a)의 변(13a)의 길이가 삼각형(110b)의 변(13b)의 길이와 동일해야 하는 것이 관찰될 수 있다. 일부 구현들에서, 하나의 삼각형(예컨대, 삼각형(110a))의 변 길이들은 올바른 것으로 가정될 수 있고, 인접 삼각형에 의해 공유되는 변의 길이는 이 길이로 제약될 것이다.
도 3a는 환경의 대응하는 오디오 디바이스들 및 다른 특징들 없이, 도 1 및 도 2에 도시된 삼각형들 둘 모두를 도시한다. 도 3은 삼각형들(110a 및 110b)의 변 길이들 및 각도 방위들의 추정을 도시한다. 도 3a에 도시된 예에서, 삼각형(110b)의 변(13b)의 길이는 삼각형(110a)의 변(13a)과 동일한 길이로 제약된다. 삼각형(110b)의 다른 변들의 길이들은 변(13b)의 길이의 결과적인 변화에 비례하여 스케일링된다. 삼각형(110a)에 인접한 결과적인 삼각형(110b')은 도 3a에 도시된다.
일부 구현들에 따르면, 삼각형(110a 및 110b)에 인접한 다른 삼각형들의 변 길이들은 환경(100)의 오디오 디바이스 로케이션들 전부가 결정될 때까지, 유사한 방식으로 모두 결정될 수 있다.
오디오 디바이스 로케이션의 일부 예들은 이하와 같이 진행할 수 있다. 각각의 오디오 디바이스는 환경(예컨대, 방)의 모든 각각의 다른 오디오 디바이스에 의해 생성되는 사운드들에 기초하여 환경의 모든 각각의 다른 오디오 디바이스의 DOA를 보고할 수 있다. i번째 오디오 디바이스의 데카르트 좌표들은
Figure pct00001
로서 표현될 수 있으며, 여기서 위첨자 T는 벡터 전치를 표시한다. 환경의 M개의 오디오 디바이스들을 고려하면,
Figure pct00002
이다.
도 3b는 3개의 오디오 디바이스들에 의해 형성된 삼각형의 내각들을 추정하는 예를 도시한다. 이 예에서, 오디오 디바이스들은 i, j 및 k이다. 디바이스(i)로부터 관찰될 바와 같이 디바이스(j)로부터 나오는 사운드 소스의 DOA는 θji로서 표현될 수 있다. 디바이스(i)로부터 관찰된 바와 같이 디바이스(k)로부터 나오는 사운드 소스의 DOA는 θki로서 표현될 수 있다. 도 3b에 도시된 예에서, θji 및 θki는 축(305a)으로부터 측정되며, 그의 방위는 임의적이고 예컨대, 오디오 디바이스(i)의 방위에 대응할 수 있다. 삼각형(310)의 내각(α)는
Figure pct00003
로서 표현될 수 있다. 내각(α)의 계산이 축(305a)의 방위에 의존하지 않는 것이 관찰될 수 있다.
도 3b에 도시된 예에서, θij 및 θkj는 축(305b)으로부터 측정되며, 그의 방위는 임의적이고 오디오 디바이스(j)의 방위에 대응할 수 있다. 삼각형(310)의 내각(b)는
Figure pct00004
로서 표현될 수 있다. 유사하게, θjk 및 θik는 이 예에서 축(305c)으로부터 측정된다. 삼각형(310)의 내각(c)은
Figure pct00005
로서 표현될 수 있다.
측정 에러의 존재 시에,
Figure pct00006
이다. 견고성(robustness)은 예컨대, 이하와 같이, 남은 2개의 각도로부터 각각의 각도를 예측하고, 평균화함으로써 개선될 수 있다:
Figure pct00007
일부 구현들에서, 에지 길이들(A,B,C)은 사인 규칙을 적용함으로써 (스케일링 에러까지) 계산될 수 있다. 일부 예들에서, 하나의 에지 길이에는 1과 같은 임의적 값이 할당될 수 있다. 예컨대, A=1로 하고 정점
Figure pct00008
을 원점에 배치함으로써, 나머지 2개의 정점들의 로케이션들은 이하와 같이 계산될 수 있다:
Figure pct00009
그러나, 임의적인 회전이 수락 가능할 수 있다.
일부 구현들에 따르면, 삼각형 파라미터화의 프로세스는 크기
Figure pct00010
의 슈퍼세트(ζ)로 열거된, 환경의 3개의 오디오 디바이스들의 모든 가능한 서브세트들에 대해 반복될 수 있다. 일부 예들에서, Tl은 l번째 삼각형을 표현할 수 있다. 구현에 의존하여, 삼각형들은 임의의 특정 순서로 열거되지 않을 수 있다. 삼각형들은 오버랩할 수 있고 DOA 및/또는 변 길이 추정들의 가능한 에러들로 인해, 완벽하게 정렬되지 않을 수 있다.
도 4는 도 11에 도시된 것과 같은 장치에 의해 수행될 수 있는 방법의 일 예를 약술하는 흐름도이다. 본원에 설명된 다른 방법들과 같은, 방법(400)의 블록들은 표시된 순서로 반드시 수행되는 것은 아니다. 더욱이, 그러한 방법들은 도시되고 그리고/또는 설명된 것보다 더 많거나 더 적은 블록들을 포함할 수 있다. 이 구현에서, 방법(400)은 환경에서 스피커의 로케이션을 추정하는 것을 포함한다. 방법(400)의 블록들은 하나 이상의 디바이스들에 의해 수행될 수 있으며, 이는 도 11에 도시된 장치(600)일 수 있다(또는 이를 포함할 수 있음).
이 예에서, 블록(405)은 복수의 오디오 디바이스들의 각각의 오디오 디바이스에 대한 도달 방향(DOA) 데이터를 획득하는 것을 포함한다. 일부 예들에서, 복수의 오디오 디바이스들은 환경의 오디오 디바이스들의 전부 이를테면, 도 1에 도시된 오디오 디바이스들(105)의 전부를 포함할 수 있다.
그러나, 일부 경우들에서, 복수의 오디오 디바이스들은 환경의 모든 오디오 디바이스들의 서브세트만을 포함할 수 있다. 예컨대, 복수의 오디오 디바이스들은 환경의 모든 스마트 스피커들을 포함할 수 있지만, 환경 내의 다른 오디오 디바이스들 중 하나 이상을 포함하지 않을 수 있다.
DOA 데이터는 특정 구현에 의존하여, 다양한 방식들로 획득될 수 있다. 일부 경우들에서, DOA 데이터를 결정하는 것은 복수의 오디오 디바이스들 중 적어도 하나의 오디오 디바이스에 대한 DOA 데이터를 결정하는 것을 포함할 수 있다. 예컨대, DOA 데이터를 결정하는 것은 복수의 오디오 디바이스들 중 단일 오디오 디바이스에 대응하는 복수의 오디오 디바이스 마이크로폰들의 각각의 마이크로폰으로부터 마이크로폰 데이터를 수신하고 마이크로폰 데이터에 적어도 부분적으로 기초하여 단일 오디오 디바이스에 대한 DOA 데이터를 결정하는 것을 포함할 수 있다. 대안적으로, 또는 부가적으로, DOA 데이터를 결정하는 것은 복수의 오디오 디바이스들 중 단일 오디오 디바이스에 대응하는 하나 이상의 안테나들로부터 안테나 데이터를 수신하고 안테나 데이터에 적어도 부분적으로 기초하여 단일 오디오 디바이스에 대한 DOA 데이터를 결정하는 것을 포함할 수 있다.
일부 그러한 예들에서, 단일 오디오 디바이스 자체는 DOA 데이터를 결정할 수 있다. 일부 그러한 구현들에 따르면, 복수의 오디오 디바이스의 각각의 오디오 디바이스는 자체의 DOA 데이터를 결정할 수 있다. 그러나, 다른 구현들에서, 로컬 또는 원격 디바이스일 수 있는 다른 디바이스는 환경의 하나 이상의 오디오 디바이스들에 대한 DOA 데이터를 결정할 수 있다. 일부 구현들에 따르면, 서버는 환경의 하나 이상의 오디오 디바이스들에 대한 DOA 데이터를 결정할 수 있다.
이 예에 따르면, 블록(410)은 DOA 데이터에 기초하여 복수의 삼각형들 각각에 대한 내각들을 결정하는 것을 포함한다. 이 예에서, 복수의 삼각형들의 각각의 삼각형은 오디오 디바이스들 중 3개의 오디오 디바이스 로케이션들에 대응하는 정점들을 갖는다. 일부 그러한 예들은 위에서 설명된다.
도 5는 환경의 각각의 오디오 디바이스가 다수의 삼각형들의 정점인 일 예를 도시한다. 각각의 삼각형의 변들은 오디오 디바이스들(105) 중 2개 사이의 거리들에 대응한다.
이 구현에서, 블록(415)은 삼각형들의 각각의 삼각형의 각각의 변에 대한 변 길이를 결정하는 것을 포함한다. (삼각형의 변은 또한 본원에서 "에지"로 지칭될 수 있음.) 이 예에 따르면, 변 길이들은 내각들에 적어도 부분적으로 기초한다. 일부 경우들에서, 변 길이들은 삼각형의 내각들에 기초하여 삼각형의 제1 변의 제1 길이를 결정하고 삼각형의 제2 변 및 제3 변의 길이들을 결정함으로써 계산될 수 있다. 일부 그러한 예들은 위에서 설명된다.
일부 그러한 구현들에 따르면, 제1 길이를 결정하는 것은 제1 길이를 미리 결정된 값으로 세팅하는 것을 포함할 수 있다. 그 후, 제2 및 제3 변들의 길이들이 삼각형의 내각들에 기초하여 결정될 수 있다. 삼각형들의 모든 변들은 미리 결정된 값, 예를 들어 기준 값에 기초하여 결정될 수 있다. 환경에서 오디오 디바이스들 사이의 실제 거리들(길이들)를 얻기 위해, 표준화된 스케일링이 도 4의 블록들(420 및 425)을 참조하여 아래에 설명된 정렬 프로세스들에 기인한 기하학적 구조에 적용될 수 있다. 이 표준화된 스케일링은 정렬된 삼각형들이 환경에 대응하는 크기의 경계 형상, 예를 들어 원, 다각형 등에 맞도록 이들을 스케일링하는 것을 포함할 수 있다. 형상의 크기는 통상적인 가정 환경의 크기이거나 특정 구현에 적합한 임의의 크기일 수 있다. 그러나 정렬된 삼각형들을 스케일링하는 것은 기하학적 구조를 특정 경계 형상에 맞추는 것으로 제한되지 않으며 특정 구현에 적합한 임의의 다른 스케일링 기준들이 사용될 수 있다.
일부 예들에서, 제1 길이를 결정하는 것은 도달 시간 데이터 및/또는 수신된 신호 강도 데이터에 기초할 수 있다. 도달 시간 데이터 및/또는 수신된 신호 강도 데이터는 일부 구현들에서, 환경의 제1 오디오 디바이스로부터의 사운드 파들 ― 이는 환경의 제2 오디오 디바이스에 의해 검출됨 ― 에 대응할 수 있다. 대안적으로, 또는 부가적으로, 도달 시간 데이터 및/또는 수신된 신호 강도 데이터는 환경의 제1 오디오 디바이스로부터의 전자기파들(예컨대, 라디오 파들, 적외선 파들 등) ― 이는 환경의 제2 오디오 디바이스에 의해 검출됨 ― 에 대응할 수 있다. 도덜 시간 데이터 및/또는 수신된 신호 강도 데이터가 이용 가능하지 않을 때, 제1 길이는 위에서 설명된 바와 같이 미리 결정된 값으로 세팅될 수 있다.
이 예에 따르면, 블록(420)은 제1 시퀀스로 복수의 삼각형들 각각을 정렬시키는 순방향 정렬 프로세스를 수행하는 것을 포함한다. 이 예에 따르면, 순방향 정렬 프로세스는 순방향 정렬 행렬을 생성한다.
일부 그러한 예들에 따르면, 삼각형들은 예컨대, 도 3a에 도시되고 위에 설명된 바와 같이, 에지
Figure pct00011
가 이웃 에지와 동일한 방식으로 정렬되는 것으로 예상된다.
Figure pct00012
을 크기
Figure pct00013
의 모든 에지들의 세트라고 하자. 일부 그러한 구현들에서, 블록(420)은
Figure pct00014
을 통해 트래버싱하고 에지가 이전에 정렬된 에지의 것과 일치하도록 강제함으로써 삼각형들의 공통 에지들을 순방향 순서로 정렬시키는 것을 포함할 수 있다.
도 6은 순방향 정렬 프로세스의 부분의 예를 제공한다. 도 6에 볼드체로 도시된 숫자들(1 내지 5)은 도 1, 도 2 및 도 5에 도시된 오디오 디바이스 로케이션들에 대응한다. 도 6에 도시되고 본원에 설명된 순방향 정렬 프로세스의 시퀀스는 단지 예일 뿐이다.
이 예에서, 도 3a에서와 같이, 삼각형(110b)의 변(13b)의 길이는 삼각형(110a)의 변(13a)의 길이와 일치하도록 강제된다. 동일한 내각들이 유지되는 결과적인 삼각형(110b')이 도 6에 도시된다. 이 예에 따르면, 삼각형(110c)의 변(13c)의 길이는 또한 삼각형(110a)의 변(13a)의 길이와 일치하도록 강제된다. 동일한 내각들이 유지되는 결과적인 삼각형(110c')이 도 6에 도시된다.
다음으로, 이 예에서, 삼각형(110d)의 변(34b)의 길이는 삼각형(110b')의 변(34a)의 길이와 일치하도록 강제된다. 더욱이, 이 예에서, 삼각형(110d)의 변(23b)의 길이는 삼각형(110a)의 변(23a)의 길이와 일치하도록 강제된다. 동일한 내각들이 유지되는 결과적인 삼각형(110d')이 도 6에 도시된다. 일부 그러한 예들에 따르면, 도 5에 도시된 나머지 삼각형들은 삼각형들(110b, 110c 및 110d)과 동일한 방식으로 프로세싱될 수 있다.
순방향 정렬 프로세스의 결과들은 데이터 구조에 저장될 수 있다. 일부 그러한 예들에 따르면, 순방향 정렬 프로세스의 결과들은 순방향 정렬 행렬에 저장될 수 있다. 예컨대, 순방향 정렬 프로세스의 결과들은 행렬
Figure pct00015
에 저장될 수 있으며, 여기서 N은 삼각형들의 총 수를 표시한다.
DOA 데이터 및/또는 초기 변 길이 결정들이 에러들을 포함할 때, 오디오 디바이스 로케이션의 다수의 추정들이 발생할 것이다. 에러들은 일반적으로 순방향 정렬 프로세스 동안 증가할 것이다.
도 7은 순방향 정렬 프로세스 동안 발생한 오디오 디바이스 로케이션의 다수의 추정들의 예를 도시한다. 이 예에서, 순방향 정렬 프로세스는 삼각형의 정점들로서 7개의 오디오 디바이스 로케이션들을 갖는 삼각형들에 기초한다. 여기서, 삼각형들은 DOA 추정들에서의 추가 에러들로 인해 완벽하게 정렬되지 않는다. 도 7에 도시된 숫자들(1 내지 7)의 로케이션들은 순방향 정렬 프로세스에 의해 생성되는 추정된 오디오 디바이스 로케이션들에 대응한다. 이 예에서, "1"로 라벨링된 오디오 디바이스 로케이션 추정들은 일치하지만, 오디오 디바이스들(6 및 7)에 대한 오디오 디바이스 로케이션 추정들은 숫자들(6 및 7)이 로케이팅되는 상대적으로 더 큰 영역들에 의해 표시된 바와 같이, 더 큰 차이들을 나타낸다.
도 4로 돌아가면, 이 예에서, 블록(425)은 제1 시퀀스의 반전인 제2 시퀀스로 복수의 삼각형들 각각을 정렬시키는 역방향 정렬 프로세스를 포함한다. 일부 구현들에 따르면, 역방향 정렬 프로세스는 이전과 같지만, 반전 순서로
Figure pct00016
를 통해 트래버싱하는 것을 포함할 수 있다. 대안적인 예들에서, 역방향 정렬 프로세스는 정확히, 순방향 정렬 프로세스의 동작들의 시퀀스의 반전이 아닐 수 있다. 이 예에 따르면, 역방향 정렬 프로세스는 역방향 정렬 행렬을 생성하며, 이는 본원에서
Figure pct00017
로 표현될 수 있다.
도 8은 역방향 정렬 프로세스의 부분의 예를 제공한다. 도 8에 볼드체로 도시된 숫자들(1 내지 5)은 도 1, 도 2 및 도 5에 도시된 오디오 디바이스 로케이션들에 대응한다. 도 8에 도시되고 본원에 설명된 역방향 정렬 프로세스의 시퀀스는 단지 예일 뿐이다.
도 8에 도시된 예에서, 삼각형(110e)은 오디오 디바이스 로케이션들(3, 4 및 5)에 기초한다. 이 구현에서, 삼각형(110e)의 변 길이들(또는 "에지들")은 올바른 것으로 가정되고, 인접 삼각형들의 변 길이들은 그들과 일치하도록 강제된다. 이 예에 따르면, 삼각형(110f)의 변(45b)의 길이는 삼각형(110e)의 변(45a)의 길이와 일치하도록 강제된다. 내각들이 동일하게 유지되는 결과적인 삼각형(110f')이 도 8에 도시된다. 이 예에서, 삼각형(110c)의 변(35b)의 길이는 삼각형(110e)의 변(35a)의 길이와 일치하도록 강제된다. 내각들이 동일하게 유지되는 결과적인 삼각형(110c'')이 도 8에 도시된다. 일부 그러한 예들에 따르면, 도 5에 도시된 나머지 삼각형들은 역방향 정렬 프로세스가 모든 나머지 삼각형들을 포함할 때까지, 삼각형들(110c 및 110f)과 동일한 방식으로 프로세싱될 수 있다.
도 9는 역방향 정렬 프로세스 동안 발생한 오디오 디바이스 로케이션의 다수의 추정들의 예를 도시한다. 이 예에서, 역방향 정렬 프로세스는 삼각형들이 도 7을 참조하여 위에서 설명된 그들의 정점들과 동일한 7개의 오디오 디바이스 로케이션들을 갖는다는 것에 기초한다. 도 9에 도시된 숫자들(1 내지 7)의 로케이션들은 역방향 정렬 프로세스에 의해 생성되는 추정된 오디오 디바이스 로케이션들에 대응한다. 재차 여기서도, 삼각형들은 DOA 추정들에서의 추가 에러들로 인해 완벽하게 정렬되지 않는다. 이 예에서, 6 및 7로 라벨링된 오디오 디바이스 로케이션 추정들은 일치하지만, 오디오 디바이스들(1 및 2)에 대한 오디오 디바이스 로케이션 추정들은 더 큰 차이들을 나타낸다.
도 4로 돌아가면, 블록(430)은 순방향 정렬 행렬의 값들 및 역방향 정렬 행렬의 값들에 적어도 부분적으로 기초하여, 각각의 오디오 디바이스 로케이션의 최종 추정을 생성하는 것을 포함한다. 일부 예들에서, 각각의 오디오 디바이스 로케이션의 최종 추정을 생성하는 것은 평행 이동 및 스케일링된 순방향 정렬 행렬을 생성하기 위해 순방향 정렬 행렬을 평행 이동 및 스케일링하고 및 평행 이동 및 스케일링된 역방향 정렬 행렬을 생성하기 위해 역방향 정렬 행렬을 평행 이동 및 스케일링하는 것을 포함할 수 있다.
예컨대, 평행 이동 및 스케일링은 중심점들을 원점으로 이동시키고 유닛 프로베니우스 놈(Frobenius norm), 예컨대,
Figure pct00018
Figure pct00019
를 강제함으로써 고정된다.
일부 그러한 예들에 따르면, 각각의 오디오 디바이스 로케이션의 최종 추정을 생성하는 것은 또한 평행 이동 및 스케일링된 순방향 정렬 행렬 및 평행 이동 및 스케일링된 역방향 정렬 행렬에 기초하여 회전 행렬을 생성하는 것을 포함할 수 있다. 회전 행렬은 각각의 오디오 디바이스에 대한 복수의 추정된 오디오 디바이스 로케이션들을 포함할 수 있다. 순방향 및 역방향 정렬들 사이의 최적 회전은 예컨대, 특이 값 분해에 의해 발견될 수 있다. 일부 그러한 예들에서, 회전 행렬을 생성하는 것은 예컨대, 이하와 같이, 평행 이동 및 스케일링된 순방향 정렬 행렬 및 평행 이동 및 스케일링된 역방향 정렬 행렬 상에서 특이 값 분해를 수행하는 것을 포함할 수 있다:
Figure pct00020
위의 수학식에서, U는 좌측-특이 벡터를 표현하고 V는 행렬(
Figure pct00021
)의 우측-특이 벡터를 각각 표현한다.
Figure pct00022
는 특이 값들의 행렬을 표현한다. 위의 수학식은 회전 행렬
Figure pct00023
을 산출한다. 행렬 곱(
Figure pct00024
)은
Figure pct00025
Figure pct00026
와 정렬하기 위해 최적으로 회전되도록 하는 회전 행렬을 산출한다.
일부 예들에 따르면, 회전 행렬
Figure pct00027
을 결정한 후에, 정렬들은 예컨대, 이하와 같이, 평균화될 수 있다:
Figure pct00028
일부 구현들에서, 각각의 오디오 디바이스 로케이션의 최종 추정을 생성하는 것은 또한 각각의 오디오 디바이스 로케이션의 최종 추정을 생성하기 위해 각각의 오디오 디바이스에 대한 추정된 오디오 디바이스 로케이션들을 평균화하는 것을 포함할 수 있다. 다양한 개시된 구현들은 DOA 데이터 및/또는 다른 계산들이 상당한 에러들을 포함할 때에도, 견고한 것으로 입증되었다. 예컨대,
Figure pct00029
는 다수의 삼각형들로부터의 오버랩하는 정점들로 인해 동일한 노드의
Figure pct00030
개의 즉, 다수의 추정들을 포함한다. 공통 노드들에 걸친 평균화는 최종 추정
Figure pct00031
을 산출한다.
도 10은 추정된 및 실제 오디오 디바이스 로케이션들의 비교를 도시한다. 도 10에 도시된 예에서, 오디오 디바이스 로케이션들은 도 7 및 도 9를 참조하여 위에서 설명된 순방향 및 역방향 정렬 프로세스들 동안 추정된 것들에 대응한다. 이들 예들에서, DOA 추정들에서의 에러들은 15 도의 표준 편차를 가졌다. 그럼에도 불구하고, 각각의 오디오 디바이스 로케이션의 최종 추정들(그 각각은 도 10에 "x"에 의해 표현됨)은 실제 오디오 디바이스 로케이션들(그 각각은 도 10에 원에 의해 표현됨)에 잘 대응한다. 제1 시퀀스로 순방향 정렬 프로세스를 수행하고 제1 시퀀스에 반전된 제2 시퀀스로 역방향 정렬 프로세스를 수행함으로써, 도달 방향 추정들(데이터)의 에러들/부정확도들이 평균화되고 그리하여 환경의 오디오 디바이스들 로케이션들의 추정들의 전체 에러를 감소시킨다. 에러는 도 7(여기서 더 큰 정점 번호들은 더 큰 정렬 확산을 보여줌) 및 도 9(여기서 더 낮은 정점 번호들은 더 큰 확산을 보여줌)에서 도시된 바와 같이 정렬 시퀀스에서 누적되는 경향이 있다. 반전 순서로 시퀀스를 트래버싱하는 프로세스는 정렬 에러를 또한 반전시키고 그리하여 최종 로케이션 추정의 전체 에러를 평균화한다.
도 11은 본 개시내용의 다양한 양상들을 구현할 수 있는 장치의 구성요소들의 예들을 도시하는 블록도이다. 일부 예들에 따르면, 장치(1100)는 본원에서 개시된 방법들 중 적어도 일부를 수행하도록 구성된 스마트 오디오 디바이스(이를테면, 스마트 스피커)일 수 있거나, 이를 포함할 수 있다. 다른 구현들에서, 장치(1100)는 본원에서 개시된 방법들 중 적어도 일부를 수행하도록 구성된 다른 디바이스일 수 있거나, 이를 포함할 수 있다. 일부 이러한 구현들에서, 장치(1100)는 서버일 수 있거나 서버를 포함할 수 있다.
이 예에서, 장치(1100)는 인터페이스 시스템(1105) 및 제어 시스템(1110)을 포함한다. 인터페이스 시스템(1105)은 일부 구현들에서, 환경의 복수의 마이크로폰들 각각으로부터 입력을 수신하도록 구성될 수 있다. 인터페이스 시스템(1105)은 하나 이상의 네트워크 인터페이스들 및/또는 하나 이상의 외부 디바이스 인터페이스들(이를테면, 하나 이상의 USB(universal serial bus) 인터페이스들)을 포함할 수 있다. 일부 구현들에 따르면, 인터페이스 시스템(1105)은 하나 이상의 무선 인터페이스들을 포함할 수 있다. 인터페이스 시스템(1105)은 사용자 인터페이스를 구현하기 위한 하나 이상의 디바이스들 이를테면, 하나 이상의 마이크로폰들, 하나 이상의 스피커들, 디스플레이 시스템, 터치 센서 시스템 및/또는 제스처 센서 시스템을 포함할 수 있다. 일부 예들에서, 인터페이스 시스템(1105)은 제어 시스템(1110)과 메모리 시스템 이를테면, 도 11에 도시된 선택적 메모리 시스템(1115) 사이의 하나 이상의 인터페이스들을 포함할 수 있다. 그러나, 제어 시스템(1110)은 메모리 시스템을 포함할 수 있다.
제어 시스템(1110)은 예컨대, 범용 단일- 또는 다중-칩 프로세서, 디지털 신호 프로세서(DSP), 주문형 집적 회로(ASIC), 프로그래밍 가능 게이트 어레이(FPGA) 또는 다른 프로그래밍 가능한 로직 디바이스, 이산 게이트 또는 트랜지스터 로직 및/또는 이산 하드웨어 구성요소들을 포함할 수 있다. 일부 구현들에서, 제어 시스템(1110)은 하나 초과의 디바이스에 상주할 수 있다. 예컨대, 제어 시스템(1110)의 일부는 도 1에 도시된 환경(100) 내의 디바이스에 상주할 수 있고, 제어 시스템(1110)의 다른 부분은 환경(100) 외부에 있는 디바이스 이를테면, 서버, 모바일 디바이스(예컨대, 스마트폰 또는 태블릿 컴퓨터) 등에 상주할 수 있다. 인터페이스 시스템(1105)은 또한 일부 그러한 예들에서, 하나 초과의 디바이스에 상주할 수 있다.
일부 구현들에서, 제어 시스템(1110)은 본원에서 개시된 방법들을 적어도 부분적으로 수행하도록 구성될 수 있다. 일부 예들에 따르면, 제어 시스템(1110)은 예컨대, 도 4를 참조하여 위에서 설명된 방법들 및/또는 도 12 이하를 참조하여 아래에서 설명된 방법들을 구현하도록 구성될 수 있다. 일부 그러한 예들에서, 제어 시스템(1110)은 분류기로부터의 출력에 적어도 부분적으로 기초하여, 환경 내의 복수의 오디오 디바이스 로케이션들 각각의 추정을 결정하도록 구성될 수 있다.
일부 예들에서, 장치(1100)는 도 11에 도시된 선택적 마이크로폰 시스템(1120)을 포함할 수 있다. 마이크로폰 시스템(1120)은 하나 이상의 마이크로폰들을 포함할 수 있다. 일부 예들에서, 마이크로폰 시스템(1120)은 마이크로폰들의 어레이를 포함할 수 있다. 일부 예들에서, 장치(1100)는 도 11에 도시된 선택적 스피커 시스템(1125)을 포함할 수 있다. 스피커 시스템(1125)은 하나 이상의 확성기들을 포함할 수 있다. 일부 예들에서, 마이크로폰 시스템(1120)은 확성기들의 어레이를 포함할 수 있다. 일부 그러한 예들에서 장치(1100)는 오디오 디바이스일 수 있거나, 이를 포함할 수 있다. 예컨대, 장치(1100)는 도 1에 도시된 오디오 디바이스(105) 중 하나일 수 있거나, 이를 포함할 수 있다.
일부 예들에서, 장치(1100)는 도 11에 도시된 선택적 안테나 시스템(1130)을 포함할 수 있다. 일부 예들에 따르면, 안테나 시스템(1130)은 안테나들의 어레이를 포함할 수 있다. 일부 예들에서, 안테나 시스템(1130)은 전자기파들을 송신 및/또는 수신하도록 구성될 수 있다. 일부 구현들에 따르면, 제어 시스템(1110)은 안테나 시스템(1130)으로부터의 안테나 데이터에 기초하여, 환경의 2개의 오디오 디바이스들 사이의 거리를 추정하도록 구성될 수 있다. 예컨대, 제어 시스템(1110)은 안테나 데이터의 도달 시간 및/또는 안테나 데이터의 수신된 신호 강도에 따라 환경에서 2개의 오디오 디바이스들 사이의 거리를 추정하도록 구성될 수 있다.
본원에 설명된 방법들의 일부 또는 전부는 하나 이상의 비-일시적 매체들 상에 저장된 명령들(예컨대, 소프트웨어)에 따라 하나 이상의 디바이스들에 의해 수행될 수 있다. 그러한 비-일시적 매체들은 랜덤 액세스 메모리(RAM) 디바이스들, 판독 전용 메모리(ROM) 디바이스들 등을 포함하는(그러나 이에 제한되지 않음), 본원에 설명된 것들과 같은 메모리 디바이스들을 포함할 수 있다. 하나 이상의 비-일시적 매체들은 예컨대, 도 11에 도시된 선택적 메모리 시스템(1115) 및/또는 제어 시스템(1110)에 상주할 수 있다. 따라서, 본 개시내용에서 설명된 청구 대상의 다양한 혁신적인 양상들은 소프트웨어가 저장되어 있는 하나 이상의 비-일시적인 매체들에서 구현될 수 있다. 소프트웨어는 예컨대, 오디오 데이터를 프로세싱하도록 적어도 하나의 디바이스를 제어하기 위한 명령들을 포함할 수 있다. 소프트웨어는 예컨대, 도 11의 제어 시스템(1110)과 같은 제어 시스템의 하나 이상의 구성요소들에 의해 실행 가능할 수 있다.
위의 논의 대부분은 오디오 디바이스 자동-로케이션을 포함한다. 이하의 논의는 위에서 간략히 설명된 청취자 로케이션 및 청취자 각도 방위를 결정하는 일부 방법들에 대해 부연한다. 위의 설명에서, "회전"이라는 용어는 본질적으로 "방위"라는 용어가 이하의 설명에 사용되는 것과 동일한 방식으로 사용된다. 예컨대, 위에서 참조된 "회전"은 도 4 이하를 참조하여 위에서 설명된 프로세스 동안 개별 삼각형들의 회전이 아닌, 최종 스피커 기하학적 구조의 글로벌 회전을 지칭할 수 있다. 이 글로벌 회전 또는 방위는 예컨대, 청취자가 보고 있는 방향에 의해, 청취자의 코가 가리키는 방향 등에 의해, 청취자 각도 방위를 참조하여 분해(resolve)될 수 있다.
청취자 로케이션을 추정하기 위한 다양한 만족스러운 방법들이 당 업계에 알려져 있으며, 이들 중 일부가 아래에서 설명된다. 그러나, 청취자 각도 방위를 추정하는 것은 난제일 수 있다. 일부 관련 방법들은 아래에서 상세히 설명된다.
청취자 로케이션 및 청취자 각도 방위를 결정하는 것은 청취자에 대해 로케이팅된 오디오 디바이스들을 배향시키는 것과 같은 일부 바람직한 특징들을 가능하게 할 수 있다. 청취자 포지션 및 각도 방위를 아는 것은 예컨대, (만약 있다면) 청취자에 대해, 환경 내의 스피커들이 전방에 있는지, 후방에 있는지, 중앙 근처에 있는지 등의 결정을 허용한다.
오디오 디바이스 로케이션들과 청취자의 로케이션 및 방위 사이의 상관을 구성한 후에, 일부 구현들은 오디오 디바이스 로케이션 데이터, 오디오 디바이스 각도 방위 데이터, 청취자 로케이션 데이터 및 청취자 각도 방위 데이터를 오디오 렌더링 시스템에 제공하는 것을 포함할 수 있다. 대안적으로, 또는 부가적으로, 일부 구현들은 오디오 디바이스 로케이션 데이터, 오디오 디바이스 각도 방위 데이터, 청취자 로케이션 데이터 및 청취자 각도 방위 데이터에 적어도 부분적으로 기초하는 오디오 데이터 렌더링 프로세스를 포함할 수 있다.
도 12는 도 11에 도시된 것과 같은 장치에 의해 수행될 수 있는 방법의 일 예를 약술하는 흐름도이다. 본원에 설명된 다른 방법들과 같은, 방법(1200)의 블록들은 표시된 순서로 반드시 수행되는 것은 아니다. 더욱이, 그러한 방법들은 도시되고 그리고/또는 설명된 것보다 더 많거나 더 적은 블록들을 포함할 수 있다. 이 예에서, 방법(1200)의 블록들은 제어 시스템에 의해 수행되며, 이는 도 6에 도시된 제어 시스템(1110)일 수 있다(또는 이를 포함할 수 있음). 위에서 언급한 바와 같이, 일부 구현들에서, 제어 시스템(1100)은 단일 디바이스에 상주할 수 있는 반면, 다른 구현들에서, 제어 시스템(1100)은 2개 이상의 디바이스들에 상주할 수 있다.
이 예에서, 블록(1205)은 환경의 복수의 오디오 디바이스들의 각각의 오디오 디바이스에 대한 도달 방향(DOA) 데이터를 획득하는 것을 포함한다. 일부 예들에서, 복수의 오디오 디바이스들은 환경의 오디오 디바이스들의 전부 이를테면, 도 1에 도시된 오디오 디바이스들(105)의 전부를 포함할 수 있다.
그러나, 일부 경우들에서, 복수의 오디오 디바이스들은 환경의 모든 오디오 디바이스들의 서브세트만을 포함할 수 있다. 예컨대, 복수의 오디오 디바이스들은 환경의 모든 스마트 스피커들을 포함할 수 있지만, 환경 내의 다른 오디오 디바이스들 중 하나 이상을 포함하지 않을 수 있다.
DOA 데이터는 특정 구현에 의존하여, 다양한 방식들로 획득될 수 있다. 일부 경우들에서, DOA 데이터를 결정하는 것은 복수의 오디오 디바이스들 중 적어도 하나의 오디오 디바이스에 대한 DOA 데이터를 결정하는 것을 포함할 수 있다. 일부 예들에서, DOA 데이터는 테스트 신호를 재생성하기 위해 환경의 복수의 확성기들의 각각의 확성기를 제어함으로써 획득될 수 있다. 예컨대, DOA 데이터를 결정하는 것은 복수의 오디오 디바이스들 중 단일 오디오 디바이스에 대응하는 복수의 오디오 디바이스 마이크로폰들의 각각의 마이크로폰으로부터 마이크로폰 데이터를 수신하고 마이크로폰 데이터에 적어도 부분적으로 기초하여 단일 오디오 디바이스에 대한 DOA 데이터를 결정하는 것을 포함할 수 있다. 대안적으로, 또는 부가적으로, DOA 데이터를 결정하는 것은 복수의 오디오 디바이스들 중 단일 오디오 디바이스에 대응하는 하나 이상의 안테나들로부터 안테나 데이터를 수신하고 안테나 데이터에 적어도 부분적으로 기초하여 단일 오디오 디바이스에 대한 DOA 데이터를 결정하는 것을 포함할 수 있다.
일부 그러한 예들에서, 단일 오디오 디바이스 자체는 DOA 데이터를 결정할 수 있다. 일부 그러한 구현들에 따르면, 복수의 오디오 디바이스의 각각의 오디오 디바이스는 자체의 DOA 데이터를 결정할 수 있다. 그러나, 다른 구현들에서, 로컬 또는 원격 디바이스일 수 있는 다른 디바이스는 환경의 하나 이상의 오디오 디바이스들에 대한 DOA 데이터를 결정할 수 있다. 일부 구현들에 따르면, 서버는 환경의 하나 이상의 오디오 디바이스들에 대한 DOA 데이터를 결정할 수 있다.
도 12에 도시된 예에 따르면, 블록(1210)은 제어 시스템을 통해, DOA 데이터에 적어도 부분적으로 기초하여 오디오 디바이스 로케이션 데이터를 생성하는 것을 포함한다. 이 예에서, 오디오 디바이스 로케이션 데이터는 블록(1205)에서 참조된 각각의 오디오 디바이스에 대한 오디오 디바이스 로케이션의 추정을 포함한다.
오디오 디바이스 로케이션 데이터는 예컨대, 데카르트, 구면 또는 원통 좌표 시스템과 같은, 좌표 시스템의 좌표들일 수 있다(또는 이들을 포함할 수 있음). 좌표 시스템은 본원에 오디오 디바이스 좌표 시스템으로서 지칭될 수 있다. 일부 그러한 예들에서, 오디오 디바이스 좌표 시스템은 환경의 오디오 디바이스들 중 하나를 참조하여 배향될 수 있다. 다른 예들에서, 오디오 디바이스 좌표 시스템은 환경의 오디오 디바이스들 중 2개 사이의 라인에 의해 정의된 축을 참조하여 배향될 수 있다. 그러나, 다른 예들에서, 오디오 디바이스 좌표 시스템은 텔레비전, 방의 벽 등과 같은, 환경의 다른 부분을 참조하여 배향될 수 있다.
일부 예들에서, 블록(1210)은 도 4를 참조하여 위에 설명된 프로세스들을 포함할 수 있다. 일부 그러한 예들에 따르면, 블록(1210)은 DOA 데이터에 기초하여 복수의 삼각형들 각각에 대한 내각들을 결정하는 것을 포함할 수 있다. 일부 경우들에서, 복수의 삼각형들의 각각의 삼각형은 오디오 디바이스들 중 3개의 오디오 디바이스 로케이션들에 대응하는 정점들을 가질 수 있다. 일부 그러한 방법들은 내각들에 적어도 부분적으로 기초하여 각각의 삼각형들의 각각의 변에 대한 변 길이를 결정하는 것을 포함할 수 있다.
일부 그러한 방법들은 순방향 정렬 행렬을 생성하기 위해, 제1 시퀀스로 복수의 삼각형들 각각을 정렬시키는 순방향 정렬 프로세스를 수행하는 것을 포함할 수 있다. 일부 그러한 방법들은 역방향 정렬 행렬을 생성하기 위해, 제1 시퀀스의 반전인 제2 시퀀스로 복수의 삼각형들 각각을 정렬시키는 역방향 정렬 프로세스를 수행하는 것을 포함할 수 있다. 일부 그러한 방법은 순방향 정렬 행렬의 값들 및 역방향 정렬 행렬의 값들에 적어도 부분적으로 기초하여, 각각의 오디오 디바이스 로케이션의 최종 추정을 생성하는 것을 포함할 수 있다. 그러나, 방법(1200)의 일부 구현들에서, 블록(1210)은 도 4를 참조하여 위에 설명된 것들과 다른 방법들을 적용하는 것을 포함할 수 있다.
이 예에서, 블록(1215)은 제어 시스템을 통해, 환경 내의 청취자 로케이션을 표시하는 청취자 로케이션 데이터를 결정하는 것을 포함한다. 청취자 로케이션 데이터는 예컨대, 오디오 디바이스 좌표 시스템을 참조할 수 있다. 그러나, 다른 예들에서, 좌표 시스템은 청취자를 참조하여 또는 환경의 일부, 예컨대, 텔레비전, 방의 벽 등을 참조하여 배향될 수 있다.
일부 예들에서, 블록(1215)은 하나 이상의 발화를 하도록 청취자에게 (예컨대, 환경의 하나 이상의 확성기들로부터의 오디오 프롬프트를 통해) 촉구하고 DOA 데이터에 따라 청취자 로케이션을 추정하는 것을 포함할 수 있다. DOA 데이터는 환경의 복수의 마이크로폰들에 의해 획득되는 마이크로폰 데이터에 대응할 수 있다. 마이크로폰 데이터는 마이크로폰들에 의한 하나 이상의 발화들의 검출들과 대응할 수 있다. 마이크로폰들 중 적어도 일부는 확성기들과 공동배치될 수 있다. 일부 예들에 따르면, 블록(1215)은 삼각측량 프로세스를 포함할 수 있다. 예컨대, 블록(1215)은 예컨대, 도 13a를 참조하여 아래에 설명되는 바와 같이, 오디오 디바이스들을 통과하는 DOA 벡터들 사이의 교차 지점을 발견함으로써 사용자의 음성을 삼각측량하는 것을 포함할 수 있다. 일부 구현들에 따르면, 블록(1215)(또는 방법(1200)의 다른 동작)은 오디오 디바이스 좌표 시스템 및 청취자 좌표 시스템의 원점들을 공동배치하는 것을 포함할 수 있으며, 이는 청취자 로케이션이 결정된 이후이다. 오디오 디바이스 좌표 시스템 및 청취자 좌표 시스템의 원점들을 공동배치하는 것은 오디오 디바이스 좌표 시스템으로부터 청취자 좌표 시스템으로 오디오 디바이스 로케이션들을 변환하는 것을 포함할 수 있다.
이 구현에 따르면, 블록(1220)은 제어 시스템을 통해, 청취자 각도 방위를 표시하는 청취자 각도 방위 데이터를 결정하는 것을 포함한다. 청취자 각도 방위 데이터는 예컨대, 오디오 디바이스 좌표 시스템과 같은, 청취자 로케이션 데이터를 표현하기 위해 사용되는 좌표 시스템을 참조하여 만들어질 수 있다. 일부 그러한 예들에서, 청취자 각도 방위 데이터는 오디오 디바이스 좌표 시스템의 원점 및/또는 축을 참조하여 만들어질 수 있다.
그러나, 일부 구현들에서, 청취자 각도 방위 데이터는 환경의 청취자 로케이션 및 다른 지점, 이를테면, 텔레비전, 오디오 디바이스, 벽 등에 의해 정의된 축을 참조하여 만들어질 수 있다. 일부 그러한 구현들에서, 청취자 로케이션은 청취자 좌표 시스템의 원점을 정의하기 위해 사용될 수 있다. 청취자 각도 방위 데이터는 일부 그러한 예들에서, 청취자 좌표 시스템의 축을 참조하여 만들어질 수 있다.
블록(1220)을 수행하기 위한 다양한 방법들은 본원에서 개시된다. 일부 예들에 따르면, 청취자 각도 방위는 청취자 관찰 방향에 대응할 수 있다. 일부 그러한 예들에서, 청취자 관찰 방향은 예컨대, 청취자가 텔레비전과 같은 특정 오브젝트를 보고 있는 것을 가정함으로써, 청취자 로케이션 데이터를 참조하여 추론될 수 있다. 일부 그러한 구현들에서, 청취자 관찰 방향은 청취자 로케이션 및 텔레비전 로케이션에 따라 결정될 수 있다. 대안적으로, 또는 부가적으로, 청취자 관찰 방향은 청취자 로케이션 및 텔레비전 사운드바 로케이션에 따라 결정될 수 있다.
그러나, 일부 예들에서, 청취자 관찰 방향은 청취자 입력에 따라 결정될 수 있다. 그러한 일부 예들에 따르면, 청취자 입력은 청취자에 의해 홀딩된 디바이스로부터 수신된 관성 센서 데이터를 포함할 수 있다. 청취자는 환경 내 로케이션, 예컨대, 청취자가 대면하고 있는 방향에 대응하는 로케이션을 가리키기 위해 디바이스를 사용할 수 있다. 예컨대, 청취자는 사운딩 확성기(사운드를 재생성하고 있는 확성기)를 가리키기 위해 디바이스를 사용할 수 있다. 따라서, 그러한 예들에서, 관성 센서 데이터는 사운딩 확성기에 대응하는 관성 센서 데이터를 포함할 수 있다.
일부 그러한 경우들에서, 청취자 입력은 청취자에 의해 선택된 오디오 디바이스의 표시를 포함할 수 있다. 오디오 디바이스의 표시는 일부 예들에서, 선택된 오디오 디바이스에 대응하는 관성 센서 데이터를 포함할 수 있다.
그러나, 다른 예들에서, 오디오 디바이스의 표시는 청취자의 하나 이상의 발화들(예컨대, "텔레비전은 지금 내 전방에 있다.", "스피커 2는 지금 내 전방에 있다" 등)에 따라 이루어질 수 있다. 청취자의 하나 이상의 발화들에 따라 청취자 각도 방위 데이터를 결정하는 다른 예들이 아래에서 설명된다.
도 12에 도시된 예에 따르면, 블록(1225)은 제어 시스템을 통해, 청취자 각도 방위 및 청취자 로케이션에 대한 각각의 오디오 디바이스에 대한 오디오 디바이스 각도 방위를 표시하는 오디오 디바이스 각도 방위 데이터를 결정하는 것을 포함한다. 일부 그러한 예들에 따르면, 블록(1225)은 청취자 로케이션에 의해 정의된 지점 주위의 오디오 디바이스 좌표들의 회전을 포함할 수 있다. 일부 구현들에서, 블록(1225)은 오디오 디바이스 좌표 시스템으로부터 청취자 좌표 시스템으로 오디오 디바이스 로케이션 데이터의 변환을 포함할 수 있다. 일부 예들은 아래에서 설명된다.
도 13a는 도 12의 일부 블록들의 예들을 도시한다. 일부 그러한 예들에 따르면, 오디오 디바이스 로케이션 데이터는 오디오 디바이스 좌표 시스템(1307)을 참조하여, 오디오 디바이스들(1 내지 5) 각각에 대한 오디오 디바이스 로케이션의 추정을 포함한다. 이 구현에서, 오디오 디바이스 좌표 시스템(1307)은 그의 원점으로서 오디오 디바이스(2)의 마이크로폰의 로케이션을 갖는 데카르트 좌표 시스템이다. 여기서, 오디오 디바이스 좌표 시스템(1307)의 x 축은 오디오 디바이스(2)의 마이크로폰의 로케이션과 오디오 디바이스(1)의 마이크로폰의 로케이션 사이의 라인(1303)에 대응한다.
이 예에서, 청취자 로케이션은 하나 이상의 발화들(1327)을 행하도록 소파(103)에 앉아 있는 것으로 도시된 청취자(1305)에게 (예컨대, 환경(1300a) 내의 하나 이상의 확성기들로부터의 오디오 프롬프트를 통해) 촉구하고 도달 시간(TOA) 데이터에 따라 청취자 로케이션을 추정함으로써 결정된다. TOA 데이터는 환경의 복수의 마이크로폰들에 의해 획득되는 마이크로폰 데이터에 대응한다. 이 예에서, 마이크로폰 데이터는 오디오 디바이스들(1 내지 5) 중 적어도 일부(예컨대, 3개, 4개 또는 5개 전부)의 마이크로폰들에 의한 하나 이상의 발화들(1327)의 검출들과 대응한다.
대안적으로, 또는 부가적으로, DOA 데이터에 따른 청취자 로케이션은 오디오 디바이스들(1 내지 5) 중 적어도 일부(예컨대, 2개, 3개, 4개 또는 5개 전부)의 마이크로폰들에 의해 제공된다. 일부 그러한 예들에 따르면, 청취자 로케이션은 DOA 데이터에 대응하는, 라인들(1309a, 1309b 등)의 교차에 따라 결정될 수 있다.
이 예에 따르면, 청취자 로케이션은 청취자 좌표 시스템(1320)의 원점에 대응한다. 이 예에서, 청취자 각도 방위 데이터는 청취자 좌표 시스템(1320)의 y' 축에 의해 표시되며, 이는 청취자의 머리(1310)(및/또는 청취자의 코(1325))와 텔레비전(101)의 사운드바(1330) 사이의 라인(1313a)에 대응한다. 도 13a에 도시된 예에서, 라인(1313a)은 y' 축에 평행하다. 따라서, 각도(θ)는 y 축과 y' 축 사이의 각도를 표현한다. 이 예에서, 도 21의 블록(1225)은 청취자 좌표 시스템(1320)의 원점 주위의 오디오 디바이스 좌표들의 각도(θ)만큼의 회전을 포함할 수 있다. 따라서, 오디오 디바이스 좌표 시스템(1307)의 원점이 도 13a의 오디오 디바이스(2)에 대응하는 것으로 도시되지만, 일부 구현들은 청취자 좌표 시스템(1320)의 원점 주위의 오디오 디바이스 좌표들의 각도(θ)만큼의 회전 이전에, 청취자 좌표 시스템(1320)의 원점과 오디오 디바이스 좌표 시스템(1307)의 원점을 공동배치하는 것을 포함한다. 이러한 공동배치는 오디오 디바이스 좌표 시스템(1307)으로부터 청취자 좌표 시스템(1320)으로의 좌표 변환에 의해 수행될 수 있다.
사운드바(1330) 및/또는 텔레비전(101)의 로케이션은 일부 예들에서, 사운드바가 사운드를 방출하게 하고 DOA 및/또는 TOA 데이터에 따라 사운드바의 로케이션을 추정함으로써 결정될 수 있으며, 이는 오디오 디바이스들(1 내지 5) 중 적어도 일부(예컨대, 3개, 4개 또는 5개 전부)의 마이크로폰들에 의한 사운드의 검출들에 대응할 수 있다. 대안적으로, 또는 부가적으로, 사운드바(1330) 및/또는 텔레비전(101)의 로케이션은 TV까지 걸어가도록 사용자에게 촉구하고 DOA 및/또는 TOA 데이터에 의해 사용자의 스피치를 로케이팅함으로써 결정될 수 있으며, 이는 오디오 디바이스들(1 내지 5) 중 적어도 일부(예컨대, 3개, 4개 또는 5개 전부)의 마이크로폰들에 의한 사운드의 검출들에 대응할 수 있다. 그러한 방법들은 삼각측량을 포함할 수 있다. 그러한 예들은 사운드바(1330) 및/또는 텔레비전(101)이 어떠한 연관된 마이크로폰도 갖지 않는 상황들에서 유익할 수 있다.
사운드바(1330) 및/또는 텔레비전(101)이 연관된 마이크로폰을 갖는 일부 다른 예들에서, 사운드바(1330) 및/또는 텔레비전(101)의 로케이션은 본원에서 개시된 DOA 방법들과 같은, TOA 또는 DOA 방법들에 따라 결정될 수 있다. 일부 그러한 방법들에 따르면, 마이크로폰은 사운드바(1330)와 공동배치될 수 있다.
일부 구현들에 따르면, 사운드바(1330) 및/또는 텔레비전(101)은 연관된 카메라(1311)를 가질 수 있다. 제어 시스템은 청취자의 머리(1310)(및/또는 청취자의 코(1325))의 이미지를 캡처하도록 구성될 수 있다. 일부 그러한 예들에서, 제어 시스템은 청취자의 머리(1310)(및/또는 청취자의 코(1325))와 카메라(1311) 사이의 라인(1313a)을 결정하도록 구성될 수 있다. 청취자 각도 방위 데이터는 라인(1313a)에 대응할 수 있다. 대안적으로, 또는 부가적으로, 제어 시스템은 라인(1313a)과 오디오 디바이스 좌표 시스템의 y 축 사이의 각도(θ)를 결정하도록 구성될 수 있다.
도 13b는 청취자 각도 방위 데이터를 결정하는 부가적인 예를 도시한다. 이 예에 따르면, 청취자 로케이션은 도 12의 블록(2115)에서 이미 결정되었다. 여기서, 제어 시스템은 오디오 오브젝트(1335)를 환경(1300b) 내의 다양한 로케이션들로 렌더링하기 위해 환경(1300b)의 확성기들을 제어하고 있다. 일부 그러한 예들에서, 제어 시스템은 예컨대, 오디오 오브젝트(1335)가 청취자 좌표 시스템(1320)의 원점 주위를 회전하는 것처럼 보이도록 오디오 오브젝트(1335)를 렌더링함으로써, 오디오 오브젝트(1335)가 청취자(1305) 주위를 회전하는 것처럼 보이도록 확성기들로 하여금 오디오 오브젝트(1335)를 렌더링하게 할 수 있다. 이 예에서, 곡선 화살표(1340)는 오디오 오브젝트가 청취자(1305) 주위를 회전함에 따라 오디오 오브젝트(1335)의 궤적의 일부를 나타낸다.
일부 그러한 예들에 따르면, 청취자(1305)는 청취자(1305)가 대면하고 있는 방향에 오디오 오브젝트(1335)가 있을 때를 표시하는 사용자 입력(예컨대, "스톱"이라고 말하는 것)을 제공할 수 있다. 일부 그러한 예들에서, 제어 시스템은 청취자 로케이션과 오디오 오브젝트(1335)의 로케이션 사이의 라인(1313b)을 결정하도록 구성될 수 있다. 이 예에서, 라인(1313b)은 청취자 좌표 시스템의 y' 축에 대응하며, 이는 청취자(1305)가 대면하고 있는 방향을 표시한다. 대안적인 구현들에서, 청취자(1305)는 오디오 오브젝트(1335)가 환경의 전방에, 환경의 TV 로케이션에, 오디오 디바이스 로케이션 등에 있을 때를 표시하는 사용자 입력을 제공할 수 있다.
도 13c는 청취자 각도 방위 데이터를 결정하는 부가적인 예를 도시한다. 이 예에 따르면, 청취자 로케이션은 도 12의 블록(2115)에서 이미 결정되었다. 여기서, 청취자(1305)는 텔레비전(101) 또는 사운드바(1330)를 향해 핸드헬드 디바이스(1345)를 가리킴으로써, 청취자(1305)의 관찰 방향에 관한 입력을 제공하기 위해 핸드헬드 디바이스(1345)를 사용하고 있다. 핸드헬드 디바이스(1345) 및 청취자의 팔의 파선 윤곽은, 청취자(1305)가 텔레비전(101) 또는 사운드바(1330)를 향해 핸드헬드 디바이스(1345)를 가리키고 있던 시간 전의 시간에, 청취자(1305)가 이 예에서 오디오 디바이스(2)를 향해 핸드헬드 디바이스(1345)를 가리키고 있던 것을 표시한다. 다른 예들에서, 청취자(1305)는 오디오 디바이스(1)와 같은 다른 오디오 디바이스를 향해 핸드헬드 디바이스(1345)를 가리켰을 수 있다. 이 예에 따르면, 핸드헬드 디바이스(1345)는 오디오 디바이스(2)와 텔레비전(101) 또는 사운드바(1330) 사이의 각도(α)를 결정하도록 구성되며, 이는 오디오 디바이스(2)와 청취자(1305)의 관찰 방향 사이의 각도에 근사하다.
핸드헬드 디바이스(1345)는 일부 예들에서, 관성 센서 시스템 및 환경(1300c)의 오디오 디바이스들을 제어하고 있는 제어 시스템과 통신하도록 구성된 무선 인터페이스를 포함하는 셀룰러 전화일 수 있다. 일부 예들에서, 핸드헬드 디바이스(1345)는 예컨대, 사용자 프롬프트들을 (예컨대, 그래픽 사용자 인터페이스를 통해) 제공함으로써, 핸드헬드 디바이스(1345)가 원하는 방향을 가리키고 있음을 표시하는 입력을 수신함으로써, 대응하는 관성 센서 데이터를 저장하고 그리고/또는 대응하는 관성 센서 데이터를 환경(1300c)의 오디오 디바이스들을 제어하고 있는 제어 시스템에 송신하는 것 등 행함으로써, 필요한 기능성을 수행하도록 핸드헬드 디바이스(1345)를 제어하게 구성된 애플리케이션 또는 "앱"을 실행중일 수 있다.
이 예에 따르면, 제어 시스템(핸드헬드 디바이스(1345)의 제어 시스템 또는 환경(1300c)의 오디오 디바이스들을 제어하고 있는 제어 시스템일 수 있음)은 관성 센서 데이터에 따라, 예컨대, 자이로스코프 데이터에 따라, 라인들(1313c 및 1350)의 방위를 결정하도록 구성된다. 이 예에서, 라인(1313c)은 y' 축에 평행하고 청취자 각도 방위를 결정하기 위해 사용될 수 있다. 일부 예들에 따르면, 제어 시스템은 오디오 디바이스(2)와 청취자(1305)의 관찰 방향 사이의 각도(α)에 따라 청취자 좌표 시스템(1320)의 원점 주위에서 오디오 디바이스 좌표들에 대한 적절한 회전을 결정할 수 있다.
도 13d는 도 13c를 참조하여 설명된 방법에 따라 오디오 디바이스 좌표들에 대한 적절한 회전을 결정하는 일 예를 도시한다. 이 예에서, 오디오 디바이스 좌표 시스템(1307)의 원점은 청취자 좌표 시스템(1320)의 원점과 공동배치된다. 오디오 디바이스 좌표 시스템(1307) 및 청취자 좌표 시스템(1320)의 원점들을 공동배치하는 것은 청취자 로케이션이 결정되는 1215의 프로세스 후에 가능해진다. 오디오 디바이스 좌표 시스템(1307) 및 청취자 좌표 시스템(1320)의 원점들을 공동배치하는 것은 오디오 디바이스 좌표 시스템(1307)으로부터 청취자 좌표 시스템(1320)으로 오디오 디바이스 로케이션들을 변환하는 것을 포함할 수 있다. 각도(α)는 도 13c를 참조하여 위에 설명된 바와 같이 결정되었다. 따라서, 각도(α)는 청취자 좌표 시스템(1320)의 오디오 디바이스(2)의 원하는 방위에 대응한다. 이 예에서, 각도 β는 오디오 디바이스 좌표 시스템(1307)의 오디오 디바이스(2)의 방위에 대응한다. 이 예에서 β-α인 각도 θ는 오디오 디바이스 좌표 시스템(1307)의 y 축을 청취자 좌표 시스템(1320)의 y' 축과 정렬시키는데 필요한 회전을 표시한다.
일부 구현들에서, 도 12의 방법은 대응하는 오디오 디바이스 로케이션, 대응하는 오디오 디바이스 각도 방위, 청취자 로케이션 데이터 및 청취자 각도 방위 데이터에 적어도 부분적으로 기초하여, 환경의 오디오 디바이스들 중 적어도 하나를 제어하는 것을 포함할 수 있다.
예컨대, 일부 구현들은 오디오 디바이스 로케이션 데이터, 오디오 디바이스 각도 방위 데이터, 청취자 로케이션 데이터 및 청취자 각도 방위 데이터를 오디오 렌더링 시스템에 제공하는 것을 포함할 수 있다. 일부 예들에서, 오디오 렌더링 시스템은 도 11의 제어 시스템(1110)과 같은 제어 시스템에 의해 구현될 수 있다. 일부 구현들은 오디오 디바이스 로케이션 데이터, 오디오 디바이스 각도 방위 데이터, 청취자 로케이션 데이터 및 청취자 각도 방위 데이터에 적어도 부분적으로 기초하여, 오디오 데이터 렌더링 프로세스를 제어하는 것을 포함할 수 있다. 일부 그러한 구현들은 확성기 음향 성능 데이터를 렌더링 시스템에 제공하는 것을 포함할 수 있다. 확성기 음향 성능 데이터는 환경의 하나 이상의 확성기들에 대응할 수 있다. 확성기 음향 성능 데이터는 하나 이상의 드라이버들의 방위, 드라이버들의 수 또는 하나 이상의 드라이버들의 드라이버 주파수 응답을 표시할 수 있다. 일부 예들에서, 확성기 음향 성능 데이터는 메모리로부터 리트리브되고 그 후 렌더링 시스템에 제공될 수 있다.
기존의 유연한 렌더링 기술들은 CMAP(Center of Mass Amplitude Panning) 및 FV(Flexible Virtualization)를 포함한다. 높은 레벨로부터, 이들 기술들 둘 모두는 2개 이상의 스피커들의 세트를 통한 플레이백을 위해, 각각이 연관된 원하는 지각된 공간 포지션을 갖는 하나 이상의 오디오 신호들의 세트를 렌더링하며, 여기서 세트의 스피커들의 상대 활성화는 스피커들을 통해 플레이백되는 상기 오디오 신호들의 지각된 공간 포지션의 모델 및 스피커들의 포지션들에 대한 오디오 신호들의 원하는 지각된 공간 포지션의 근접도의 함수이다. 모델은 오디오 신호가 그의 의도된 공간 포지션 근처의 청취자에 의해 듣게 되는 것을 보장하고, 근접도 항은 이 공간 임프레션을 달성하기 위해 어느 스피커들이 사용되는지를 제어한다. 특히, 근접도 항은 오디오 신호의 원하는 지각된 공간 포지션 근처에 있는 스피커들의 활성화를 선호한다. CMAP 및 FV 둘 모두에 대해, 이 함수 관계는 2개의 항들 - 하나는 공간 양상에 대한 것이고 하나는 근접도에 대한 것임 - 의 합으로서 작성된 비용 함수로부터 편리하게 유도된다:
Figure pct00032
(1)
여기서, 세트
Figure pct00033
는 M개의 확성기들의 세트의 포지션들을 나타내고,
Figure pct00034
는 오디오 신호의 원하는 지각된 공간 포지션을 나타내고, g는 스피커 활성화들의 M 차원 벡터를 나타낸다. CMAP에 대해, 벡터에서의 각각의 활성화는 스피커 당 이득을 표현하는 반면, FV에 대해, 각각의 활성화는 필터를 표현한다(이러한 제2 경우에서 g는 특정 주파수에서 복소수 값들의 벡터로 동등하게 간주될 수 있고 상이한 g는 복수의 주파수들에 걸쳐 컴퓨팅되어 필터를 형성함). 활성화들의 최적 벡터는 활성화들에 걸쳐 비용 함수를 최소화함으로써 발견된다:
Figure pct00035
(2a)
비용 함수의 특정 정의들에서, 위의 최소화에서 기인하는 최적 활성화들의 절대 레벨을 제어하는 것이 어렵지만,
Figure pct00036
의 구성요소들 사이의 상대 레벨을 제어하는 것이 적절하다. 이 문제를 다루기 위해, 활성화들의 절대 레벨이 제어되도록
Figure pct00037
의 후속 정규화가 수행될 수 있다. 예컨대, 유닛 길이를 갖도록 하는 벡터의 정규화는 바람직할 수 있으며, 이는 일반적으로 사용된 일정한 파워 패닝 규칙들에 따른다:
Figure pct00038
(2b)
유연성 렌더링 알고리즘의 정확한 거동은 비용 함수의 2개의 항들(
Figure pct00039
Figure pct00040
)의 특정 구성에 의해 지시된다. CMAP에 대해,
Figure pct00041
은 연관된 활성화 이득들
Figure pct00042
(벡터 g의 요소들)에 의해 가중화되는 그러한 확성기들의 포지션들의 질량 중심에 확성기들의 세트로부터 플레이하는 오디오 신호의 지각된 공간 포지션을 배치하는 모델로부터 유도된다:
Figure pct00043
(3)
그 후, 수학식 3은 원하는 오디오 포지션과 활성화된 확성기들에 의해 생성된 것 사이의 제곱 에러를 표현하는 공간 비용으로 조작된다:
Figure pct00044
(4)
FV의 경우, 비용 함수의 공간 항은 상이하게 정의된다. 목표는 청취자의 좌측 귀 및 우측 귀에서 오디오 오브젝트 포지션
Figure pct00045
에 대응하는 양 귀 반응 b을 생성하는 것이다. 개념적으로, b는 필터들의 2x1 벡터이지만(각각의 귀마다 하나의 필터), 특정 주파수에서 복소수 값들의 2x1 벡터로서 더 편리하게 취급된다. 특정 주파수에서 이 표현으로 진행하면, 원하는 양 귀 반응은 오브젝트 포지션에 의해 HRTF 인덱스의 세트로부터 리트리브될 수 있다:
Figure pct00046
(5)
동시에, 확성기들에 의해 청취자의 귀들에서 생성되는 2x1 양 귀 반응 e은 복소수 스피커 활성화 값들의 Mx1 벡터 g와 곱해지는 2xM 음향 송신 행렬 H로서 모델링된다:
Figure pct00047
(6)
음향 송신 행렬 H은 청취자 포지션에 대한 확성기 포지션들의 세트
Figure pct00048
에 기초하여 모델링된다. 마지막으로, 비용 함수의 공간 구성요소는 원하는 양 귀 반응(수학식 5)과 확성기들에 의해 생성된 것(수학식 6) 사이의 제곱 에러로서 정의된다:
Figure pct00049
(7)
편리하게, 수학식들 4 및 7에서 정의된 CMAP 및 FV에 대한 비용 함수의 공간 항은 둘 모두 스피커 활성화들 g의 함수로서 이차 행렬(matrix quadratic)로 재배열될 수 있다:
Figure pct00050
(8)
여기서, A는 MxM 정방 행렬이고, B는 1xM 벡터이고, C는 스칼라이다. 행렬 A은 순위 2이고, 따라서 M > 2일 때 공간 에러 항이 0과 동일한 무한 수의 스피커 활성화들 g이 존재한다. 비용 함수의 제2 항
Figure pct00051
을 도입하는 것은 이 불확정성을 제거하고 다른 가능한 솔루션들과 비교하여 지각적으로 유익한 특성들을 갖는 특정 솔루션을 발생시킨다. CMAP 및 FV 둘 모두에 대해,
Figure pct00052
는 포지션
Figure pct00053
이 원하는 오디오 신호 포지션
Figure pct00054
으로부터 멀리 떨어져 있는 스피커들의 활성화가, 포지션이 원하는 포지션에 가까운 스피커들의 활성화보다 더 많이 불리하게 되도록 구성된다. 이 구성은 희박한 스피커 활성화들의 최적 세트를 산출하며, 여기서 원하는 오디오 신호의 포지션에 아주 근접하는 스피커들만이 현저하게 활성화되고, 실제로 스피커들의 세트 주위의 청취자 움직임에 지각적으로 더 견고한 오디오 신호의 공간 재생성(spatial reproduction)을 초래한다.
이를 위해, 비용 함수의 제2 항
Figure pct00055
은 스피커 활성화들의 제곱된 절대 값들의 거리 가중화된 합으로서 정의될 수 있다. 이것은 이하와 같이 행렬 형태로 콤팩트하게 표현된다:
Figure pct00056
(9a)
여기서, D는 원하는 오디오 포지션과 각각의 스피커 사이의 거리 페널티들의 대각 행렬이다:
Figure pct00057
,
Figure pct00058
(9b)
거리 페널티 함수는 다수의 형태들을 취할 수 있지만, 이하는 유용한 파라미터화이다:
Figure pct00059
(9c)
여기서,
Figure pct00060
는 원하는 오디오 포지션과 스피커 포지션 사이의 유클리드 거리이고 α 및 β는 튜닝 가능 파라미터들이다. 파라미터 α는 페널티의 글로벌 강도를 표시하고;
Figure pct00061
은 거리 페널티의 공간적 범위에 대응하고(
Figure pct00062
주위의 또는 더 멀리 떨어진 거리에서의 확성기들은 페널티를 받게 될 것임), β는 거리
Figure pct00063
에서 페널티의 시작의 돌발성(abruptness)을 설명한다.
수학식들 8 및 9a에 정의된 비용 함수의 2개의 항들을 조합하는 것은 전체 비용 함수를 산출한다:
Figure pct00064
(10)
0과 동일한 g에 대해 이 비용 함수의 미분을 설정하고 g를 푸는 것은 최적 스피커 활성화 솔루션을 산출한다:
Figure pct00065
(11)
일반적으로, 수학식 11에서의 최적 솔루션은 값이 음수인 스피커 활성화들을 산출할 수 있다. 유연성 렌더러의 CMAP 구성에 대해, 그러한 음수 활성화들은 바람직하지 않을 수 있고, 따라서 수학식 11은 모든 활성화들이 양수로 남아 있는 조건으로 최소화될 수 있다.
도 14 및 도 15는 4, 64, 165, -87, 및 -4도의 스피커 포지션들을 감안하면, 스피커 활성화들 및 오브젝트 렌더링 포지션들의 예시적인 세트를 예시하는 도면들이다.
도 14는 이들 특정 스피커 포지션들에 대해 수학식 11에 대한 최적의 솔루션을 포함하는 스피커 활성화들을 도시한다. 도 15는 개별 스피커 포지션들을 각각 주황색, 보라색, 녹색, 금색 및 청색 점들로서 플로팅한다. 도 15는 또한, 검정색 점선들에 의해 이상적인 오브젝트 포지션들에 연결되는, 녹색 점들로서 다수의 가능한 오브젝트 각도들에 대한 이상적인 오브젝트 포지션들(즉, 오디오 오브젝트들이 렌더링되는 포지션들) 및 적색 점들로서 이러한 오브젝트들에 대한 대응하는 실제 랜더링 포지션들을 도시한다.
본 개시내용의 특정 실시예들 및 애플리케이션들이 본원에서 설명되었지만, 본 개시내용의 범위를 벗어나지 않고 본원에서 설명된 실시예들 및 애플리케이션들에 대한 다수의 변동들이 가능하다는 것이 당업자들에게 명백할 것이다.
본 개시내용의 다양한 양상들은 다음의 열거된 예시적인 실시예들(EEE)로부터 인지될 수 있다:
1. 오디오 디바이스 로케이션 방법으로서,
복수의 오디오 디바이스들의 각각의 오디오 디바이스에 대한 도달 방향(DOA) 데이터를 획득하는 단계;
DOA 데이터에 기초하여 복수의 삼각형들 각각에 대한 내각들을 결정하는 단계 ― 복수의 삼각형들의 각각의 삼각형은 오디오 디바이스들 중 3개의 오디오 디바이스 로케이션들에 대응하는 정점들을 가짐 ― ;
내각들에 적어도 부분적으로 기초하여 각각의 삼각형들의 각각의 변에 대한 변 길이를 결정하는 단계;
순방향 정렬 행렬을 생성하기 위해, 제1 시퀀스로 복수의 삼각형들 각각을 정렬시키는 순방향 정렬 프로세스를 수행하는 단계;
역방향 정렬 행렬을 생성하기 위해, 제1 시퀀스의 반전인 제2 시퀀스로 복수의 삼각형들 각각을 정렬시키는 역방향 정렬 프로세스를 수행하는 단계; 및
순방향 정렬 행렬의 값들 및 역방향 정렬 행렬의 값들에 적어도 부분적으로 기초하여, 각각의 오디오 디바이스 로케이션의 최종 추정을 생성하는 단계를 포함하는, 오디오 디바이스 로케이션 방법.
2. EEE 1의 방법에 있어서, 각각의 오디오 디바이스 로케이션의 최종 추정을 생성하는 단계는,
평행 이동 및 스케일링된 순방향 정렬 행렬을 생성하도록 순방향 정렬 행렬을 평행 이동 및 스케일링하는 단계; 및
평행 이동 및 스케일링된 역방향 정렬 행렬을 생성도록 역방향 정렬 행렬을 평행 이동 및 스케일링하는 단계를 포함하는, 오디오 디바이스 로케이션 방법.
3. EEE 2의 방법에 있어서, 각각의 오디오 디바이스 로케이션의 최종 추정을 생성하는 단계는 평행 이동 및 스케일링된 순방향 정렬 행렬 및 평행 이동 및 스케일링된 역방향 정렬 행렬에 기초하여 회전 행렬을 생성하는 단계를 더 포함하고, 회전 행렬은 각각의 오디오 디바이스에 대한 복수의 추정된 오디오 디바이스 로케이션들을 포함하는, 오디오 디바이스 로케이션 방법.
4. EEE 3의 방법에 있어서, 회전 행렬을 생성하는 단계는 평행 이동 및 스케일링된 순방향 정렬 행렬 및 평행 이동 및 스케일링된 역방향 정렬 행렬에 대해 특이값 분해를 수행하는 단계를 포함하는, 오디오 디바이스 로케이션 방법.
5. EEE 3 또는 EEE 4의 방법에 있어서, 각각의 오디오 디바이스 로케이션의 최종 추정을 생성하는 단계는 각각의 오디오 디바이스 로케이션의 최종 추정을 생성하기 위해 각각의 오디오 디바이스에 대한 추정된 오디오 디바이스 로케이션들을 평균화하는 단계를 더 포함하는, 오디오 디바이스 로케이션 방법.
6. EEE 1 내지 EEE 5 중 어느 하나의 방법에 있어서, 변 길이를 결정하는 단계는,
삼각형의 제1 변의 제1 길이를 결정하는 단계; 및
삼각형의 내각들에 기초하여 삼각형의 제2 변 및 제3 변의 길이들을 결정하는 단계를 포함하는, 오디오 디바이스 로케이션 방법.
7. EEE 6의 방법에 있어서, 제1 길이를 결정하는 단계는 제1 길이를 미리 결정된 값으로 세팅하는 단계를 포함하는, 오디오 디바이스 로케이션 방법.
8. EEE 6의 방법에 있어서, 제 1 길이를 결정하는 단계는 도달 시간 데이터 또는 수신된 신호 강도 데이터 중 적어도 하나에 기초하는, 오디오 디바이스 로케이션 방법.
9. EEE 1 내지 EEE 8 중 어느 하나의 방법에 있어서, DOA 데이터를 획득하는 단계는 복수의 오디오 디바이스들 중 적어도 하나의 오디오 디바이스에 대한 DOA 데이터를 획득하는 단계를 포함하는, 오디오 디바이스 로케이션 방법.
10. EEE 9의 방법에 있어서, DOA 데이터를 결정하는 단계는 복수의 오디오 디바이스들 중 단일 오디오 디바이스에 대응하는 복수의 오디오 디바이스 마이크로폰들의 각각의 마이크로폰으로부터 마이크로폰 데이터를 수신하고 마이크로폰 데이터에 적어도 부분적으로 기초하여 단일 오디오 디바이스에 대한 DOA 데이터를 결정하는 단계를 포함하는, 오디오 디바이스 로케이션 방법.
11. EEE 9의 방법에 있어서, DOA 데이터를 결정하는 단계는 복수의 오디오 디바이스들 중 단일 오디오 디바이스에 대응하는 하나 이상의 안테나들로부터 안테나 데이터를 수신하고 안테나 데이터에 적어도 부분적으로 기초하여 단일 오디오 디바이스에 대한 DOA 데이터를 결정하는 단계를 포함하는, 오디오 디바이스 로케이션 방법.
12. EEE 1 내지 EEE 11 중 어느 하나의 방법에 있어서, 적어도 하나의 오디오 디바이스 로케이션의 최종 추정에 적어도 부분적으로 기초하여 오디오 디바이스들 중 적어도 하나를 제어하는 단계를 더 포함하는, 오디오 디바이스 로케이션 방법.
13. EEE 12의 방법에 있어서, 오디오 디바이스들 중 적어도 하나를 제어하는 단계는 오디오 디바이스들 중 적어도 하나의 확성기를 제어하는 단계를 포함하는, 오디오 디바이스 로케이션 방법.
14. EEE 1 내지 EEE 13 중 어느 하나의 방법을 수행하도록 구성된 장치.
15. 소프트웨어가 레코딩되어 있는 하나 이상의 비일시적 매체로서,
소프트웨어는 EEE 1 내지 EEE 13 중 어느 하나의 방법을 수행하도록 하나 이상의 디바이스들을 제어하기 위한 명령들을 포함하는, 하나 이상의 비일시적 매체.
16. 오디오 디바이스 구성 방법으로서,
제어 시스템을 통해, 환경의 복수의 오디오 디바이스들의 각각의 오디오 디바이스에 대한 오디오 디바이스 도달 방향(DOA) 데이터를 획득하는 단계;
제어 시스템을 통해, DOA 데이터에 적어도 부분적으로 기초하여 오디오 디바이스 로케이션 데이터를 생성하는 단계 ― 오디오 디바이스 로케이션 데이터는 각각의 오디오 디바이스에 대한 오디오 디바이스 로케이션의 추정을 포함함 ― ;
제어 시스템을 통해, 환경 내의 청취자 로케이션을 표시하는 청취자 로케이션 데이터를 결정하는 단계;
제어 시스템을 통해, 청취자 각도 방위를 나타내는 청취자 각도 방위 데이터를 결정하는 단계; 및
제어 시스템을 통해, 청취자 로케이션 및 청취자 각도 방위에 대한 각각의 오디오 디바이스에 대한 오디오 디바이스 각도 방위를 표시하는 오디오 디바이스 각도 방위 데이터를 결정하는 단계를 포함하는, 오디오 디바이스 구성 방법.
17. EEE 16의 방법에 있어서, 대응하는 오디오 디바이스 로케이션, 대응하는 오디오 디바이스 각도 방위, 청취자 로케이션 데이터 및 청취자 각도 방위 데이터에 적어도 부분적으로 기초하여, 오디오 디바이스 중 적어도 하나를 제어하는 단계를 더 포함하는, 오디오 디바이스 구성 방법.
18. EEE 16의 방법에 있어서, 오디오 디바이스 로케이션 데이터, 오디오 디바이스 각도 방위 데이터, 청취자 로케이션 데이터 및 청취자 각도 방위 데이터를 오디오 렌더링 시스템에 제공하는 단계를 더 포함하는, 오디오 디바이스 구성 방법.
19. EEE 16의 방법에 있어서, 오디오 디바이스 로케이션 데이터, 오디오 디바이스 각도 방위 데이터, 청취자 로케이션 데이터 및 청취자 각도 방위 데이터에 적어도 부분적으로 기초하여, 오디오 데이터 렌더링 프로세스를 제어하는 단계를 더 포함하는, 오디오 디바이스 구성 방법.
20. EEE 16 내지 EEE 19 중 어느 하나의 방법에 있어서, DOA 데이터를 획득하는 단계는 테스트 신호를 재생하기 위해 환경의 복수의 확성기들의 각각의 확성기를 제어하는 단계를 포함하는, 오디오 디바이스 구성 방법.
21. EEE 16 내지 EEE 20 중 어느 하나의 방법에 있어서, 청취자 로케이션 데이터 또는 청취자 각도 방위 데이터 중 적어도 하나는 청취자의 하나 이상의 발화들에 대응하는 DOA 데이터에 기초하는, 오디오 디바이스 구성 방법.
22. EEE 16 내지 EEE 19 중 어느 하나의 방법에 있어서, 청취자 각도 방위는 청취자 관찰 방향에 대응하는, 오디오 디바이스 구성 방법.
23. EEE 22의 방법에 있어서, 청취자 관찰 방향은 청취자 로케이션 및 텔레비전 로케이션에 따라 결정되는, 오디오 디바이스 구성 방법.
24. EEE 22의 방법에 있어서, 청취자 관찰 방향은 청취자 로케이션 및 텔레비전 사운드바 로케이션에 따라 결정되는, 오디오 디바이스 구성 방법.
25. EEE 22의 방법에 있어서, 청취자 관찰 방향은 청취자 입력에 따라 결정되는, 오디오 디바이스 구성 방법.
26. EEE 25의 방법에 있어서, 청취자 입력은 청취자에 의해 홀딩된 디바이스로부터 수신된 관성 센서 데이터를 포함하는, 오디오 디바이스 구성 방법.
27. EEE 25의 방법에 있어서, 관성 센서 데이터는 사운딩 확성기에 대응하는 관성 센서 데이터를 포함하는, 오디오 디바이스 구성 방법.
28. EEE 25의 방법에 있어서, 청취자 입력은 청취자에 의해 선택된 오디오 디바이스의 표시를 포함하는, 오디오 디바이스 구성 방법.
29. EEE 16 내지 EEE 28 중 어느 하나의 방법에 있어서, 확성기 음향 성능 데이터를 렌더링 시스템에 제공하는 단계를 더 포함하고, 확성기 음향 성능 데이터는 하나 이상의 드라이버들의 방위, 드라이버들의 수 또는 하나 이상의 드라이버들의 드라이버 주파수 응답 중 적어도 하나를 표시하는, 오디오 디바이스 구성 방법.
30. EEE 16 내지 EEE 29 중 어느 하나의 방법에 있어서, 오디오 디바이스 로케이션 데이터를 생성하는 단계는,
오디오 디바이스 DOA 데이터에 기초하여 복수의 삼각형들 각각에 대한 내각들을 결정하는 단계 ― 복수의 삼각형들의 각각의 삼각형은 오디오 디바이스들 중 3개의 오디오 디바이스 로케이션에 대응하는 정점들을 가짐 ― ;
내각들에 적어도 부분적으로 기초하여 각각의 삼각형들의 각각의 변에 대한 변 길이를 결정하는 단계;
순방향 정렬 행렬을 생성하기 위해, 제1 시퀀스로 복수의 삼각형들 각각을 정렬시키는 순방향 정렬 프로세스를 수행하는 단계;
역방향 정렬 행렬을 생성하기 위해, 제1 시퀀스의 반전인 제2 시퀀스로 복수의 삼각형들 각각을 정렬시키는 역방향 정렬 프로세스를 수행하는 단계; 및
순방향 정렬 행렬의 값들 및 역방향 정렬 행렬의 값들에 적어도 부분적으로 기초하여, 각각의 오디오 디바이스 로케이션의 최종 추정을 생성하는 단계를 포함하는, 오디오 디바이스 구성 방법.
31. EEE 16 내지 EEE 30 중 어느 하나의 방법을 수행하도록 구성된 장치.
32. 소프트웨어가 레코딩되어 있는 하나 이상의 비일시적 매체로서,
소프트웨어는EEE 16 내지 EEE 30 중 어느 하나의 방법을 수행하도록 하나 이상의 디바이스들을 제어하기 위한 명령들을 포함하는, 하나 이상의 비일시적 매체.

Claims (31)

  1. 환경의 복수의 적어도 4개의 오디오 디바이스들의 로케이션(location)을 결정하는 방법으로서,
    각각의 오디오 디바이스는 상기 복수의 오디오 디바이스들 중 상이한 오디오 디바이스에 의해 생성된 신호들을 검출하도록 구성되고, 상기 방법은,
    상기 환경의 복수의 오디오 디바이스들 중 다른 오디오 디바이스에 의해 생성된 신호들의 검출된 방향에 기초하여 도달 방향(direction of arrival; DOA) 데이터를 획득하는 단계;
    상기 도달 방향 데이터에 기초하여 복수의 삼각형들 각각에 대한 내각(interior angle)들을 결정하는 단계 ― 상기 복수의 삼각형들의 각각의 삼각형은 상기 복수의 오디오 디바이스들 중 3개의 오디오 디바이스들의 로케이션들에 대응하는 정점들을 가짐 ― ;
    상기 내각들 및 결정될 변 길이 만큼 분리된 상기 오디오 디바이스들에 의해 생성된 신호들에 기초하여 상기 삼각형들의 각각의 삼각형의 각각의 변에 대한 상기 변 길이를 결정는 단계, 또는
    상기 내각들에 기초하여 상기 변 길이를 결정하는 단계 ― 상기 삼각형들 중 하나의 삼각형의 하나의 변 길이는 미리 결정된 값으로 세팅됨 ― ;
    순방향 정렬 행렬을 생성하도록 제1 시퀀스로 상기 복수의 삼각형들 각각을 정렬하는 순방향 정렬 프로세스를 수행하는 단계 ― 상기 순방향 정렬 프로세스는 각각의 삼각형의 변 길이가 인접한 삼각형의 변 길이와 일치하도록 강제하고 상기 인접한 삼각형에 대해 결정된 내각들을 사용함으로써 수행됨 ― ;
    역방향 정렬 행렬을 생성하도록 상기 복수의 삼각형들 각각을 정렬하는 역방향 정렬 프로세스를 수행하는 단계 ― 상기 역방향 정렬 프로세스는 상기 순방향 정렬 프로세스로서 수행되지만, 상기 제1 시퀀스의 반전(reverse)인 제2 시퀀스로 수행됨 ― ; 및
    상기 순방향 정렬 행렬의 값들 및 상기 역방향 정렬 행렬의 값들에 적어도 부분적으로 기초하여, 각각의 오디오 디바이스 로케이션의 최종 추정을 생성하는 단계를 포함하는,
    환경의 복수의 적어도 4개의 오디오 디바이스들의 로케이션을 결정하는 방법.
  2. 제1 항에 있어서,
    상기 각각의 오디오 디바이스 로케이션의 최종 추정을 생성하는 단계는,
    평행 이동 및 스케일링된 순방향 정렬 행렬을 생성하도록 상기 순방향 정렬 행렬을 평행 이동 및 스케일링하는 단계; 및
    평행 이동 및 스케일링된 역방향 정렬 행렬을 생성하도록 상기 역방향 정렬 행렬을 평행 이동 및 스케일링하는 단계를 포함하고,
    상기 순방향 및 역방향 정렬 행렬들을 평행 이동 및 스케일링하는 단계는 개개의 행렬들의 중심들을 원점으로 이동시키고 각각의 행렬의 프로베니우스 노름(Frobenius norm)을 1로 강제하는 단계를 포함하는,
    환경의 복수의 적어도 4개의 오디오 디바이스들의 로케이션을 결정하는 방법.
  3. 제2 항에 있어서,
    상기 각각의 오디오 디바이스 로케이션의 최종 추정을 생성하는 단계는 상기 평행 이동 및 스케일링된 순방향 정렬 행렬 및 상기 평행 이동 및 스케일링된 역방향 정렬 행렬에 기초하여 추가 행렬을 생성하는 단계를 더 포함하고, 상기 추가 행렬은 각각의 오디오 디바이스에 대한 복수의 추정된 오디오 디바이스 로케이션들을 포함하는,
    환경의 복수의 적어도 4개의 오디오 디바이스들의 로케이션을 결정하는 방법.
  4. 제3 항에 있어서,
    상기 추가 행렬을 생성하는 단계는 상기 평행 이동 및 스케일링된 순방향 정렬 행렬 및 상기 평행 이동 및 스케일링된 역방향 정렬 행렬에 대해 특이값 분해(singular value decomposition)를 수행하는 단계를 포함하는,
    환경의 복수의 적어도 4개의 오디오 디바이스들의 로케이션을 결정하는 방법.
  5. 제1 항 내지 제4 항 중 어느 한 항에 있어서,
    상기 각각의 오디오 디바이스 로케이션의 최종 추정을 생성하는 단계는 다수의 삼각형들의 오버랩하는 정점들로부터 획득되는 상기 오디오 디바이스의 로케이션의 다수의 추정들을 평균화하는 단계를 더 포함하는,
    환경의 복수의 적어도 4개의 오디오 디바이스들의 로케이션을 결정하는 방법.
  6. 제1 항 내지 제5 항 중 어느 한 항에 있어서,
    상기 변 길이를 결정하는 단계는,
    삼각형의 제1 변의 제1 길이를 결정하는 단계; 및
    상기 삼각형의 내각들에 기초하여 상기 삼각형의 제2 변 및 제3 변의 길이들을 결정하는 단계를 포함하고,
    상기 제1 길이를 결정하는 단계는 상기 제1 길이를 미리 결정된 값으로 세팅하는 단계를 포함하거나, 상기 제1 길이를 결정하는 단계는 도달 시간 데이터 또는 수신된 신호 강도 데이터 중 적어도 하나에 기초하는,
    환경의 복수의 적어도 4개의 오디오 디바이스들의 로케이션을 결정하는 방법.
  7. 제1 항 내지 제6 항 중 어느 한 항에 있어서,
    각각의 오디오 디바이스는 복수의 오디오 디바이스 마이크로폰들을 포함하고, 상기 도달 방향 데이터를 결정하는 단계는, 상기 복수의 오디오 디바이스들 중 단일 오디오 디바이스에 대응하는 복수의 오디오 디바이스 마이크로폰들의 각각의 마이크로폰으로부터 마이크로폰 데이터를 수신하는 단계 및 상기 마이크로폰 데이터에 적어도 부분적으로 기초하여 상기 단일 오디오 디바이스에 대한 도달 방향 데이터를 결정하는 단계를 포함하는,
    환경의 복수의 적어도 4개의 오디오 디바이스들의 로케이션을 결정하는 방법.
  8. 제1 항 내지 제6 항 중 어느 한 항에 있어서,
    각각의 오디오 디바이스는 하나 이상의 안테나들을 포함하고, 상기 도달 방향 데이터를 결정하는 단계는 상기 복수의 오디오 디바이스들 중 단일 오디오 디바이스에 대응하는 하나 이상의 안테나들로부터 안테나 데이터를 수신하는 단계 및 상기 안테나 데이터에 적어도 부분적으로 기초하여 상기 단일 오디오 디바이스에 대한 도달 방향 데이터를 결정하는 단계를 포함하는,
    환경의 복수의 적어도 4개의 오디오 디바이스들의 로케이션을 결정하는 방법.
  9. 제1 항 내지 제8 항 중 어느 한 항에 있어서,
    적어도 하나의 오디오 디바이스 로케이션의 최종 추정에 적어도 부분적으로 기초하여 상기 오디오 디바이스들 중 적어도 하나를 제어하는 단계를 더 포함하는,
    환경의 복수의 적어도 4개의 오디오 디바이스들의 로케이션을 결정하는 방법.
  10. 제9 항에 있어서,
    상기 복수의 오디오 디바이스들의 각각의 오디오 디바이스는 확성기를 포함하고, 상기 오디오 디바이스들 중 적어도 하나를 제어하는 단계는 상기 오디오 디바이스들 중 적어도 하나의 확성기를 제어하는 단계를 포함하는,
    환경의 복수의 적어도 4개의 오디오 디바이스들의 로케이션을 결정하는 방법.
  11. 제1 항 내지 제10 항 중 어느 한 항의 방법을 수행하도록 구성된 장치.
  12. 프로그램이 컴퓨터에 의해 실행될 때, 상기 컴퓨터로 하여금 제1 항 내지 제10 항 중 어느 한 항의 방법을 수행하게 하는 명령들을 포함하는 컴퓨터 프로그램 제품.
  13. 제12 항의 컴퓨터 프로그램 제품을 포함하는 컴퓨터 판독가능 매체.
  14. 복수의 오디오 디바이스들의 오디오 디바이스를 구성하는 방법으로서,
    상기 복수의 오디오 디바이스들의 각각의 오디오 디바이스는 상기 복수의 오디오 디바이스들 중 동일한 오디오 디바이스 또는 상이한 오디오 디바이스에 의해 생성된 신호들을 검출하기 위한 하나 이상의 센서들을 포함하고, 상기 방법은,
    제어 시스템을 통해, 환경의 복수의 오디오 디바이스들의 각각의 오디오 디바이스에 대한 오디오 디바이스 도달 방향(DOA) 데이터를 획득하는 단계;
    상기 제어 시스템을 통해, 상기 도달 방향 데이터에 적어도 부분적으로 기초하여 오디오 디바이스 로케이션 데이터를 생성하는 단계 ― 상기 오디오 디바이스 로케이션 데이터는 각각의 오디오 디바이스에 대한 오디오 디바이스 로케이션의 추정을 포함함 ― ;
    상기 제어 시스템을 통해, 상기 환경 내의 청취자 로케이션을 표시하는 청취자 로케이션 데이터를 결정하는 단계;
    상기 제어 시스템을 통해, 청취자 각도 방위를 표시하는 청취자 각도 방위 데이터를 결정하는 단계; 및
    상기 제어 시스템을 통해, 상기 청취자 각도 방위 및 상기 청취자 로케이션에 대한 각각의 오디오 디바이스에 대한 오디오 디바이스 각도 방위를 표시하는 오디오 디바이스 각도 방위 데이터를 결정하는 단계를 포함하는,
    복수의 오디오 디바이스들의 오디오 디바이스를 구성하는 방법.
  15. 제14 항에 있어서,
    대응하는 오디오 디바이스 로케이션, 대응하는 오디오 디바이스 각도 방위, 상기 청취자 로케이션 데이터 및 상기 청취자 각도 방위 데이터에 적어도 부분적으로 기초하여, 상기 오디오 디바이스들 중 적어도 하나를 제어하는 단계를 더 포함하는,
    복수의 오디오 디바이스들의 오디오 디바이스를 구성하는 방법.
  16. 제14 항 또는 제15 항에 있어서,
    상기 오디오 디바이스 로케이션 데이터, 상기 오디오 디바이스 각도 방위 데이터, 상기 청취자 로케이션 데이터 및 상기 청취자 각도 방위 데이터를 오디오 렌더링 시스템에 제공하는 단계를 더 포함하는,
    복수의 오디오 디바이스들의 오디오 디바이스를 구성하는 방법.
  17. 제14 항 내지 제16 항 중 어느 한 항에 있어서,
    상기 오디오 디바이스 로케이션 데이터, 상기 오디오 디바이스 각도 방위 데이터, 상기 청취자 로케이션 데이터 및 상기 청취자 각도 방위 데이터에 적어도 부분적으로 기초하여, 오디오 데이터 렌더링 프로세스를 제어하는 단계를 더 포함하는,
    복수의 오디오 디바이스들의 오디오 디바이스를 구성하는 방법.
  18. 제14 항 내지 제17 항 중 어느 한 항에 있어서,
    각각의 오디오 디바이스는 확성기를 포함하고, 상기 도달 방향 데이터를 획득하는 단계는 테스트 신호를 재생하기 위해 상기 환경의 복수의 확성기들의 각각의 확성기를 제어하는 단계를 포함하는,
    복수의 오디오 디바이스들의 오디오 디바이스를 구성하는 방법.
  19. 제14 항 내지 제18 항 중 어느 한 항에 있어서,
    상기 청취자 로케이션 데이터 또는 상기 청취자 각도 방위 데이터 중 적어도 하나는 상기 청취자의 하나 이상의 발화(utterance)들에 대응하는 도달 방향 데이터에 기초하는,
    복수의 오디오 디바이스들의 오디오 디바이스를 구성하는 방법.
  20. 제14 항 내지 제19 항 중 어느 한 항에 있어서,
    상기 청취자 각도 방위는 청취자 관찰 방향에 대응하는,
    복수의 오디오 디바이스들의 오디오 디바이스를 구성하는 방법.
  21. 제20 항에 있어서,
    상기 청취자 관찰 방향은 상기 청취자 로케이션 및 텔레비전 로케이션에 따라 결정되는,
    복수의 오디오 디바이스들의 오디오 디바이스를 구성하는 방법.
  22. 제20 항에 있어서,
    상기 청취자 관찰 방향은 상기 청취자 로케이션 및 텔레비전 사운드바 로케이션에 따라 결정되는,
    복수의 오디오 디바이스들의 오디오 디바이스를 구성하는 방법.
  23. 제20 항에 있어서,
    상기 청취자 관찰 방향은 청취자 입력에 따라 결정되는,
    복수의 오디오 디바이스들의 오디오 디바이스를 구성하는 방법.
  24. 제20 항에 있어서,
    상기 청취자 입력은 상기 청취자에 의해 홀딩된 디바이스로부터 수신된 관성 센서 데이터를 포함하는,
    복수의 오디오 디바이스들의 오디오 디바이스를 구성하는 방법.
  25. 제24 항에 있어서,
    상기 관성 센서 데이터는 사운딩 확성기에 대응하는 관성 센서 데이터를 포함하는,
    복수의 오디오 디바이스들의 오디오 디바이스를 구성하는 방법.
  26. 제23 항에 있어서,
    상기 청취자 입력은 상기 청취자에 의해 선택된 오디오 디바이스의 표시를 포함하는,
    복수의 오디오 디바이스들의 오디오 디바이스를 구성하는 방법.
  27. 제14 항 내지 제26 항 중 어느 한 항에 있어서,
    확성기 음향 성능 데이터를 렌더링 시스템에 제공하는 단계를 더 포함하고, 상기 확성기 음향 성능 데이터는 하나 이상의 드라이버들의 방위, 드라이버들의 수 또는 하나 이상의 드라이버들의 드라이버 주파수 응답 중 적어도 하나를 표시하는,
    복수의 오디오 디바이스들의 오디오 디바이스를 구성하는 방법.
  28. 제14 항 내지 제27 항 중 어느 한 항에 있어서,
    상기 오디오 디바이스 로케이션 데이터를 생성하는 단계는 제1 항 내지 제10 항 중 어느 한 항의 방법에 따라 수행되는,
    복수의 오디오 디바이스들의 오디오 디바이스를 구성하는 방법.
  29. 제14 항 내지 제28 항 중 어느 한 항의 방법을 수행하도록 구성된 장치.
  30. 프로그램이 컴퓨터에 의해 실행될 때, 상기 컴퓨터로 하여금 제14 항 내지 제28 항 중 어느 한 항의 방법을 수행하게 하는 명령들을 포함하는 컴퓨터 프로그램 제품.
  31. 제30 항의 컴퓨터 프로그램 제품을 포함하는 컴퓨터 판독가능 매체.
KR1020227024417A 2019-12-18 2020-12-17 오디오 디바이스 자동-로케이션 KR20220117282A (ko)

Applications Claiming Priority (7)

Application Number Priority Date Filing Date Title
US201962949998P 2019-12-18 2019-12-18
US62/949,998 2019-12-18
EP19217580.0 2019-12-18
EP19217580 2019-12-18
US202062992068P 2020-03-19 2020-03-19
US62/992,068 2020-03-19
PCT/US2020/065769 WO2021127286A1 (en) 2019-12-18 2020-12-17 Audio device auto-location

Publications (1)

Publication Number Publication Date
KR20220117282A true KR20220117282A (ko) 2022-08-23

Family

ID=74141985

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020227024417A KR20220117282A (ko) 2019-12-18 2020-12-17 오디오 디바이스 자동-로케이션

Country Status (6)

Country Link
US (1) US20230040846A1 (ko)
EP (1) EP4079000A1 (ko)
JP (1) JP2023508002A (ko)
KR (1) KR20220117282A (ko)
CN (1) CN114846821A (ko)
WO (1) WO2021127286A1 (ko)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU2020323929A1 (en) 2019-07-30 2022-03-10 Dolby International Ab Acoustic echo cancellation control for distributed audio devices
JP2023552196A (ja) * 2020-12-03 2023-12-14 ドルビー ラボラトリーズ ライセンシング コーポレイション 音響シーンメトリックの推定のための音響ダイレクトシーケンススペクトラム拡散信号のオーケストレーション
EP4256813A2 (en) * 2020-12-03 2023-10-11 Dolby Laboratories Licensing Corporation Orchestration of acoustic direct sequence spread spectrum signals for estimation of acoustic scene metrics
CN118339853A (zh) * 2021-11-09 2024-07-12 杜比实验室特许公司 音频设备位置和声源位置的估计
WO2023086303A1 (en) 2021-11-09 2023-05-19 Dolby Laboratories Licensing Corporation Rendering based on loudspeaker orientation
WO2023086273A1 (en) 2021-11-10 2023-05-19 Dolby Laboratories Licensing Corporation Distributed audio device ducking

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6574339B1 (en) * 1998-10-20 2003-06-03 Samsung Electronics Co., Ltd. Three-dimensional sound reproducing apparatus for multiple listeners and method thereof
JP2010206451A (ja) * 2009-03-03 2010-09-16 Panasonic Corp カメラ付きスピーカ、信号処理装置、およびavシステム
WO2014087277A1 (en) * 2012-12-06 2014-06-12 Koninklijke Philips N.V. Generating drive signals for audio transducers
US9426598B2 (en) * 2013-07-15 2016-08-23 Dts, Inc. Spatial calibration of surround sound systems including listener position estimation
KR102226420B1 (ko) * 2013-10-24 2021-03-11 삼성전자주식회사 다채널 오디오 신호 생성 방법 및 이를 수행하기 위한 장치
US9544679B2 (en) * 2014-12-08 2017-01-10 Harman International Industries, Inc. Adjusting speakers using facial recognition
CN106339514A (zh) * 2015-07-06 2017-01-18 杜比实验室特许公司 从活动的音频源估计回响能量成分
EP3148224A3 (en) * 2015-09-04 2017-06-21 Music Group IP Ltd. Method for determining or verifying spatial relations in a loudspeaker system
US9961475B2 (en) * 2015-10-08 2018-05-01 Qualcomm Incorporated Conversion from object-based audio to HOA
CN106658340B (zh) * 2015-11-03 2020-09-04 杜比实验室特许公司 内容自适应的环绕声虚拟化
EP3515290B1 (en) * 2016-09-19 2023-06-21 ResMed Sensor Technologies Limited Detecting physiological movement from audio and multimodal signals
KR102533698B1 (ko) * 2016-12-13 2023-05-18 삼성전자주식회사 음향 출력 시스템을 구성하는 전자 장치, 음향 출력 장치 및 그 제어 방법
US10299060B2 (en) * 2016-12-30 2019-05-21 Caavo Inc Determining distances and angles between speakers and other home theater components
US10506361B1 (en) * 2018-11-29 2019-12-10 Qualcomm Incorporated Immersive sound effects based on tracked position

Also Published As

Publication number Publication date
US20230040846A1 (en) 2023-02-09
EP4079000A1 (en) 2022-10-26
WO2021127286A1 (en) 2021-06-24
CN114846821A (zh) 2022-08-02
JP2023508002A (ja) 2023-02-28

Similar Documents

Publication Publication Date Title
KR20220117282A (ko) 오디오 디바이스 자동-로케이션
WO2021037129A1 (zh) 一种声音采集方法及装置
US12003946B2 (en) Adaptable spatial audio playback
US9900685B2 (en) Creating an audio envelope based on angular information
US20220272454A1 (en) Managing playback of multiple streams of audio over multiple speakers
TW201120469A (en) Method, computer readable storage medium and system for localizing acoustic source
US20230026347A1 (en) Methods for reducing error in environmental noise compensation systems
US20240022869A1 (en) Automatic localization of audio devices
KR20200036820A (ko) 레이더 기반 음성 인식 서비스 장치 및 방법
US20240107255A1 (en) Frequency domain multiplexing of spatial audio for multiple listener sweet spots
US20240114308A1 (en) Frequency domain multiplexing of spatial audio for multiple listener sweet spots
CN116547991A (zh) 音频设备的自动定位
KR20200036203A (ko) 레이더 기반 음성 인식 서비스 장치 및 방법
WO2023086303A1 (en) Rendering based on loudspeaker orientation
US20240015459A1 (en) Motion detection of speaker units
CN116848857A (zh) 针对多个收听者最佳听音位置的空间音频频域复用
US20240111041A1 (en) Location-based audio configuration systems and methods
CN116830603A (zh) 针对多个收听者最佳听音位置的空间音频频域复用
US20230145713A1 (en) System and method for omnidirectional adaptive loudspeaker
CN118216163A (zh) 基于扩音器取向的渲染
CN118339853A (zh) 音频设备位置和声源位置的估计
CN116806431A (zh) 通过相互设备可听性在用户位置处的可听性
WO2022119990A1 (en) Audibility at user location through mutual device audibility
TW201433974A (zh) 行動裝置以及音效處理方法

Legal Events

Date Code Title Description
A201 Request for examination