KR20230139756A - 위치 추론을 위한 전자 장치 및 시스템 - Google Patents
위치 추론을 위한 전자 장치 및 시스템 Download PDFInfo
- Publication number
- KR20230139756A KR20230139756A KR1020220111688A KR20220111688A KR20230139756A KR 20230139756 A KR20230139756 A KR 20230139756A KR 1020220111688 A KR1020220111688 A KR 1020220111688A KR 20220111688 A KR20220111688 A KR 20220111688A KR 20230139756 A KR20230139756 A KR 20230139756A
- Authority
- KR
- South Korea
- Prior art keywords
- signal
- electronic device
- parameter set
- value
- obtaining
- Prior art date
Links
- 230000004807 localization Effects 0.000 title claims abstract description 10
- 230000015654 memory Effects 0.000 claims abstract description 55
- 238000005457 optimization Methods 0.000 claims abstract description 42
- 230000006870 function Effects 0.000 claims description 100
- 230000005236 sound signal Effects 0.000 claims description 61
- 238000000034 method Methods 0.000 claims description 50
- 230000007613 environmental effect Effects 0.000 claims description 37
- 238000010801 machine learning Methods 0.000 claims description 27
- 238000004458 analytical method Methods 0.000 claims description 20
- 230000035772 mutation Effects 0.000 claims description 16
- 230000004044 response Effects 0.000 claims description 5
- 238000005259 measurement Methods 0.000 claims 4
- 238000010586 diagram Methods 0.000 description 22
- 238000013473 artificial intelligence Methods 0.000 description 21
- 238000004891 communication Methods 0.000 description 20
- 238000012545 processing Methods 0.000 description 13
- 238000010219 correlation analysis Methods 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 5
- 238000004590 computer program Methods 0.000 description 4
- 230000002068 genetic effect Effects 0.000 description 4
- 238000013528 artificial neural network Methods 0.000 description 3
- 230000001537 neural effect Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000002123 temporal effect Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 230000010267 cellular communication Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000013136 deep learning model Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 238000009499 grossing Methods 0.000 description 1
- 238000003064 k means clustering Methods 0.000 description 1
- 238000000691 measurement method Methods 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 238000000611 regression analysis Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000035945 sensitivity Effects 0.000 description 1
- 238000010206 sensitivity analysis Methods 0.000 description 1
- 238000012549 training Methods 0.000 description 1
- 238000013076 uncertainty analysis Methods 0.000 description 1
- 230000003936 working memory Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S15/00—Systems using the reflection or reradiation of acoustic waves, e.g. sonar systems
- G01S15/02—Systems using the reflection or reradiation of acoustic waves, e.g. sonar systems using reflection of acoustic waves
- G01S15/50—Systems of measurement, based on relative movement of the target
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S5/00—Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations
- G01S5/18—Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations using ultrasonic, sonic, or infrasonic waves
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- General Physics & Mathematics (AREA)
- Acoustics & Sound (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Evolutionary Computation (AREA)
- Mathematical Physics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Medical Informatics (AREA)
- Artificial Intelligence (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Computer Networks & Wireless Communication (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Otolaryngology (AREA)
- Signal Processing (AREA)
- Measurement Of Velocity Or Position Using Acoustic Or Ultrasonic Waves (AREA)
Abstract
본 개시는 위치 추론을 위한 전자 장치 및 시스템에 관한 건이다. 본 개시의 실시 예에 따른 전자 장치는 비가청 음향 신호를 출력하는 스피커, 비가청 음향 신호가 공간 구조에 의해 반사된 제1 반사파 신호를 수신하는 적어도 하나의 마이크, 하나 이상의 인스트럭션을 저장하는 메모리, 및 상기 메모리에 저장된 하나 이상의 인스트럭션을 실행하는 적어도 하나의 프로세서를 포함하되, 적어도 하나의 프로세서는, 비가청 음향 신호에 대응하는 기준 신호와, 제1 반사파 신호 간의 상관도(correlation)에 기초하여 신호 변화량을 획득하고, 신호 변화량이 객체의 움직임에 대응하는 제1 임계 값을 초과한 경우, 신호 변화량에 기초하여 공간 구조 내의 상기 객체의 위치에 대응하는 객체 위치 정보를 획득하고, 신호 변화량이 상기 공간 구조의 변경에 대응하는 제2 임계 값을 초과한 경우, 파형 최적화 모델을 이용하여 비가청 음향 신호에 대응하는 최종 파라미터 세트를 업데이트하는, 하나 이상의 인스트럭션을 실행한다.
Description
본 개시는 위치 추론을 위한 전자 장치 및 시스템에 관한 것이다. 구체적으로, 본 개시는 공간 구조에 최적화된 신호를 적응적으로 생성하고, 최적화된 신호에 기초하여 공간 구조 내의 객체의 위치를 추론하는 전자 장치 및 시스템에 관한 것이다.
IT(information technology)의 발달에 따라, 스마트 TV, AI 스피커, 가전제품, 스마트폰(smartphone), 태블릿 PC(tablet personal computer) 등 다양한 유형의 전자 장치들이 IOT 환경에서 연결되고 있다. 실내 위치 추론(Indoor Localization) 기술은 IOT 환경에서 큰 상업적, 사회적 가치로 인해 상당한 연구가 이루어지고 있다. 일반적으로 실내 위치 추론 기술은 정적 구조물에 대한 분석을 수행함으로써 위치를 추론한다. 최근에는, 송신단에서 특정 송신 신호를 정의하고 수신된 신호로부터 상관 분석(cross correlation) 매칭을 수햄함으로써, 동적 피사체에 대한 상관 분석의 시간적인 변화를 분석하는 위치 추론 기술이 시도되고 있다.
공간 구조, 신호를 출력하는 장치, 또는 온도 등과 같은 환경 조건에 따라 위치 추론의 결과가 다르기 때문에, 높은 정확도의 위치 추론에 대한 기술 수요가 지속적으로 증대되고 있다.
일 실시 예에 따른 위치 추론을 위한 전자 장치는, 비가청 음향 신호를 출력하는 스피커, 상기 출력된 비가청 음향 신호가 공간 구조에 의해 반사된 제1 반사파 신호를 수신하는 적어도 하나의 마이크, 하나 이상의 인스트럭션을 저장하는 메모리, 및 상기 메모리에 저장된 하나 이상의 인스트럭션을 실행하는 적어도 하나의 프로세서를 포함할 수 있다. 적어도 하나의 프로세서는, 상기 비가청 음향 신호에 대응하는 기준 신호와, 상기 수신된 제1 반사파 신호 간의 상관도(correlation)에 기초하여 신호 변화량을 획득하는 상기 하나 이상의 인스트럭션을 실행할 수 있다. 적어도 하나의 프로세서는, 상기 신호 변화량이 객체의 움직임에 대응하는 제1 임계 값을 초과한 경우, 상기 신호 변화량에 기초하여 상기 공간 구조 내의 상기 객체의 위치에 대응하는 객체 위치 정보를 획득하는 상기 하나 이상의 인스트럭션을 실행할 수 있다.. 적어도 하나의 프로세서는, 상기 신호 변화량이 상기 공간 구조의 변경에 대응하는 제2 임계 값을 초과한 경우, 파형 최적화 모델을 이용하여 상기 비가청 음향 신호에 대응하는 최종 파라미터 세트를 업데이트하는 상기 하나 이상의 인스트럭션을 실행할 수 있다.
일 실시 예에 따른 위치 추론을 위한 전자 장치는, 스피커, 적어도 하나의 마이크, 하나 이상의 인스트럭션을 저장하는 메모리, 및 상기 메모리에 저장된 하나 이상의 인스트럭션을 실행하는 적어도 하나의 프로세서를 포함할 수 있다. 상기 적어도 하나의 프로세서는, 현재 세대에 대응하는 제1 파라미터 세트를 획득하는 상기 하나 이상의 인스트럭션을 실행할 수 있다. 상기 적어도 하나의 프로세서는, 상기 제1 파라미터 세트에 기초하여, 상기 스피커로 하여금 복수의 후보 신호들을 출력하도록 제어하는 상기 하나 이상의 인스트럭션을 실행할 수 있다. 상기 적어도 하나의 프로세서는, 상기 적어도 하나의 마이크로 하여금 상기 복수의 후보 신호들이 공간 구조에 의해 반사된 제1 반사파 신호들을 수신하도록 제어하는 상기 하나 이상의 인스트럭션을 실행할 수 있다. 상기 적어도 하나의 프로세서는, 상기 제1 반사파 신호들에 기초하여 상기 복수의 후보 신호들에 대한 적합도(fitness) 값을 획득하는 상기 하나 이상의 인스트럭션을 실행할 수 있다. 상기 적어도 하나의 프로세서는, 상기 적합도 값에 대응하는 성능 값이 제1 임계 값을 초과하는지 여부인 종료 조건을 판단하는 상기 하나 이상의 인스트럭션을 실행할 수 있다. 상기 적어도 하나의 프로세서는, 상기 종료 조건이 만족되지 않는 경우, 상기 성능 값 및 상기 제1 파라미터 세트 간의 상관 관계에 기초하여 다음 세대에 대응하는 제2 파라미터 세트를 획득하는 상기 하나 이상의 인스트럭션을 실행할 수 있다.
일 실시 예에 따른 위치 추론(localization)을 위한 방법은, 비가청 음향 신호를 출력하는 단계;
상기 출력된 비가청 음향 신호가 공간 구조에 의해 반사된 제1 반사파 신호를 수신하는 단계, 상기 비가청 음향 신호에 대응하는 기준 신호와, 상기 수신된 제1 반사파 신호 간의 상관도(correlation)에 기초하여 신호 변화량을 획득하는 단계, 상기 신호 변화량이 객체의 움직임에 대응하는 제1 임계 값을 초과한 경우, 상기 신호 변화량에 기초하여 상기 공간 구조 내의 상기 객체의 위치에 대응하는 객체 위치 정보를 획득하는 단계, 및 상기 신호 변화량이 상기 공간 구조의 변경에 대응하는 제2 임계 값을 초과한 경우, 파형 최적화 모델을 이용하여 상기 비가청 음향 신호에 대응하는 최종 파라미터 세트를 업데이트하는 단계를 포함할 수 있다.
일 실시 예에 따른 위치 추론을 위한 방법에 있어서, 현재 세대에 대응하는 제1 파라미터 세트를 획득하는 단계, 상기 제1 파라미터 세트에 기초하여, 복수의 후보 신호들을 출력하는 단계, 상기 적어도 하나의 마이크로 하여금 상기 복수의 후보 신호들이 공간 구조에 의해 반사된 제1 반사파 신호들을 수신하는 단계, 상기 제1 반사파 신호들에 기초하여 상기 복수의 후보 신호들에 대한 적합도(fitness) 값을 획득하는 단계, 상기 적합도 값에 대응하는 성능 값이 제1 임계 값을 초과하는지 여부인 종료 조건을 판단하는 단계, 및 상기 종료 조건이 만족되지 않는 경우, 상기 성능 값 및 상기 제1 파라미터 세트 간의 상관 관계에 기초하여 다음 세대에 대응하는 제2 파라미터 세트를 획득하는 단계를 포함할 수 있다.
일 실시 예에 따른 위치 추론을 위한 시스템에 있어서, 적어도 하나의 제1 마이크를 포함하는 제1 전자 장치, 및 적어도 하나의 제2 마이크를 포함하는 제2 전자 장치를 포함할 수 있다. 상기 제1 전자 장치는, 제1 스피커, 하나 이상의 인스트럭션을 저장하는 제1 메모리, 및 상기 제1 메모리에 저장된 하나 이상의 인스트럭션을 실행하는 적어도 하나의 제1 프로세서를 더 포함할 수 있다. 상기 적어도 하나의 제1 프로세서는, 제1 현재 세대에 대응하는 제1 파라미터 세트를 획득하는 상기 하나 이상의 인스트럭션을 실행할 수 있다. 상기 적어도 하나의 제1 프로세서는, 상기 제1 파라미터 세트에 기초하여, 상기 제1 스피커로 하여금 제1 복수의 후보 신호들을 출력하도록 제어하는 상기 하나 이상의 인스트럭션을 실행할 수 있다. 상기 적어도 하나의 제1 프로세서는, 상기 적어도 하나의 제1 마이크로 하여금 상기 제1 복수의 후보 신호들이 공간 구조에 의해 반사된 제1 반사파 신호들을 수신하도록 제어하는 상기 하나 이상의 인스트럭션을 실행할 수 있다. 상기 적어도 하나의 제1 프로세서는, 상기 적어도 하나의 제2 마이크에 의해 수신된 상기 제1 복수의 후보 신호들에 대응하는 제1 데이터를 획득하는 상기 하나 이상의 인스트럭션을 실행할 수 있다. 상기 적어도 하나의 제1 프로세서는, 상기 제1 반사파 신호 및 상기 제1 데이터에 기초하여 상기 제1 복수의 후보 신호들에 대한 제1 적합도(fitness) 값을 획득하는 상기 하나 이상의 인스트럭션을 실행할 수 있다. 상기 적어도 하나의 제1 프로세서는, 상기 제1 적합도 값에 대응하는 제1 성능 값이 제1 임계 값을 초과하는지 여부인 제1 종료 조건을 식별하는 상기 하나 이상의 인스트럭션을 실행할 수 있다. 상기 적어도 하나의 제1 프로세서는, 상기 제1 종료 조건이 만족되지 않는 경우, 상기 제1 성능 값 및 상기 제1 파라미터 세트 간의 상관 관계에 기초하여 제1 다음 세대에 대응하는 제2 파라미터 세트를 획득하는 상기 하나 이상의 인스트럭션을 실행할 수 있다.
일 실시 예에 따른 위치 추론을 위한 시스템은, 제1 전자 장치, 및 제2 전자 장치를 포함할 수 있다. 상기 제1 전자 장치는, 제1 비가청 음향 신호를 출력하는 제1 스피커, 상기 출력된 제1 비가청 음향 신호가 공간 구조에 의해 반사된 제1 반사파 신호를 수신하는 적어도 하나의 제1 마이크, 하나 이상의 인스트럭션을 저장하는 제1 메모리, 및 상기 메모리에 저장된 하나 이상의 인스트럭션을 실행하는 적어도 하나의 제1 프로세서를 포함할 수 있다. 상기 적어도 하나의 제1 프로세서는, 상기 적어도 하나의 제1 마이크에 의해 수신된 상기 제1 반사파 신호 및 상기 제2 전자 장치에 의해 수신된 상기 제1 비가청 음향 신호 중 적어도 어느 하나와, 상기 제1 비가청 음향 신호에 대응하는 제1 기준 신호 간의 상관도(correlation)에 기초하여 제1 신호 변화량을 획득하는 상기 하나 이상의 인스트럭션을 실행할 수 있다. 상기 적어도 하나의 제1 프로세서는, 상기 제1 신호 변화량이 객체의 움직임에 대응하는 제1 임계 값을 초과한 경우, 상기 제1 신호 변화량에 기초하여 상기 공간 구조 내의 상기 객체의 위치에 대응하는 객체 위치 정보를 획득하는 상기 하나 이상의 인스트럭션을 실행할 수 있다. 상기 적어도 하나의 제1 프로세서는, 상기 제1 신호 변화량이 상기 공간 구조의 변경에 대응하는 제2 임계 값을 초과한 경우, 파형 최적화 모델을 이용하여 상기 제1 비가청 음향 신호에 대응하는 제1 최종 파라미터 세트를 업데이트하는 상기 하나 이상의 인스트럭션을 실행할 수 있다.
일 실시 예에 따르면, 본 개시의 기술적 과제를 해결하기 위하여, 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공한다.
도 1은 일 실시 예에 따른 전자 장치를 예시적으로 보여주는 블록도이다.
도 2a 내지 2c는 일 실시 예에 따른 전자 장치가 공간 구조에 최적화된 신호를 생성하는 방법을 예시적으로 보여주는 개념도들이다.
도 3a 내지 3d는 일 실시 예에 따른 위치 추론을 위한 신호 파형 최적화를 수행하는 방법을 보여주는 흐름도이다.
도 4a는 일 실시 예에 따른 상관 관계를 설명하기 위한 개념도이다.
도 4b는 일 실시 예에 따른 파형 위치 함수의 선택을 설명하기 위한 개념도이다.
도 4c는 일 실시 예에 따른 교차 연산 및 돌연변이 연산을 설명하기 위한 산점도이다.
도 4d는 일 실시 예에 따른 후보 신호들 간의 파형 위치를 설명하기 위한 개념도이다.
도 5는 일 실시 예에 따른 전자 장치가 공간 구조에 최적화된 신호를 이용하는 방법을 예시적으로 보여주는 개념도이다.
도 6a 내지 6c는 일 실시 예에 따른 위치 추론을 위한 신호 처리를 수행하는 방법을 보여주는 흐름도이다.
도 7a 내지 7b는 일 실시 예에 따른 반사파 신호의 수신 강도를 예시적으로 보여주는 그래프들이다.
도 8은 일 실시 예에 따른 객체 위치 정보를 획득하기 위한 머신러닝 모델을 예시적으로 보여주는 그래프이다.
도 9a 내지 9d는 일 실시 예에 따른 위치 추론의 결과를 예시적으로 보여주는 그래프들이다.
도 10은 일 실시 예에 따른 전자 장치를 예시적으로 보여주는 블록도이다.
도 11은 일 실시 예에 따른 시스템이 공간 구조에 최적화된 신호를 생성하는 방법을 예시적으로 보여주는 개념도이다.
도 12a 및 12b는 일 실시 예에 따른 시스템이 공간 구조에 최적화된 신호를 이용하는 방법을 예시적으로 보여주는 개념도들이다.
도 13a 및 13b는 일 실시 예에 따른 시스템이 웨이크업 디바이스를 선택하는 방법을 예시적으로 보여주는 개념도들이다.
도 2a 내지 2c는 일 실시 예에 따른 전자 장치가 공간 구조에 최적화된 신호를 생성하는 방법을 예시적으로 보여주는 개념도들이다.
도 3a 내지 3d는 일 실시 예에 따른 위치 추론을 위한 신호 파형 최적화를 수행하는 방법을 보여주는 흐름도이다.
도 4a는 일 실시 예에 따른 상관 관계를 설명하기 위한 개념도이다.
도 4b는 일 실시 예에 따른 파형 위치 함수의 선택을 설명하기 위한 개념도이다.
도 4c는 일 실시 예에 따른 교차 연산 및 돌연변이 연산을 설명하기 위한 산점도이다.
도 4d는 일 실시 예에 따른 후보 신호들 간의 파형 위치를 설명하기 위한 개념도이다.
도 5는 일 실시 예에 따른 전자 장치가 공간 구조에 최적화된 신호를 이용하는 방법을 예시적으로 보여주는 개념도이다.
도 6a 내지 6c는 일 실시 예에 따른 위치 추론을 위한 신호 처리를 수행하는 방법을 보여주는 흐름도이다.
도 7a 내지 7b는 일 실시 예에 따른 반사파 신호의 수신 강도를 예시적으로 보여주는 그래프들이다.
도 8은 일 실시 예에 따른 객체 위치 정보를 획득하기 위한 머신러닝 모델을 예시적으로 보여주는 그래프이다.
도 9a 내지 9d는 일 실시 예에 따른 위치 추론의 결과를 예시적으로 보여주는 그래프들이다.
도 10은 일 실시 예에 따른 전자 장치를 예시적으로 보여주는 블록도이다.
도 11은 일 실시 예에 따른 시스템이 공간 구조에 최적화된 신호를 생성하는 방법을 예시적으로 보여주는 개념도이다.
도 12a 및 12b는 일 실시 예에 따른 시스템이 공간 구조에 최적화된 신호를 이용하는 방법을 예시적으로 보여주는 개념도들이다.
도 13a 및 13b는 일 실시 예에 따른 시스템이 웨이크업 디바이스를 선택하는 방법을 예시적으로 보여주는 개념도들이다.
본 명세서에서, 공간 구조는 전자 장치가 위치한 공간의 구조로 이해될 수 있다. 예를 들어, 공간 구조는 공간의 경계, 공간 내에 위치한 객체(들), 및/또는 이들간의 관계로 형성되는 공간의 특성으로 이해될 수 있다. 따라서, 공간 구조는 공간 또는 공간의 특성에 따라 상이할 수 있다. 예를 들어, 공간이 변경된 경우(예컨대, 전자 장치의 위치가 이전 공간과 다른 공간으로 변경된 경우) 또는 공간의 특성이 변경된 경우(예컨대, 전자 장치의 위치가 같은 공간의 다른 위치로 변경된 경우, 공간 내의 객체의 위치가 변경된 경우 등), 전자 장치가 인식하는 공간 구조는 변경될 수 있다.
본 명세서에서, 위치 추론은 공간 구조 내의 객체의 위치 또는 객체의 움직임 등에 대한 정보를 획득하는 기능을 의미할 수 있다.
본 명세서에서, 파라미터 세트는 서브 파라미터 세트들의 집합일 수 있다. 서브 파라미터 세트들 각각은 대응하는 신호(예컨대, 복수의 후보 신호들 중 하나)의 파형 특징 함수(waveform feature function) 및 파형 위치 함수(waveform location function)를 포함할 수 있다.
본 명세서에서, 파형 특징 함수는, 대응하는 신호의 내재적인 특징을 나타내는 적어도 하나의 파라미터를 포함할 수 있다. 예를 들어, 파형 특징 함수는 대응하는 신호의 진폭, 주기, 및 모양(shape) 중 적어도 하나의 값에 대응하는 파라미터를 포함할 수 있으나, 이에 한정되는 것은 아니다. 예를 들어, 신호의 모양은 사인(sine)파, 삼각(triangle)파, 톱니(sawtooth)파, 사각(square)파, 펄스(pulse)파, 또는 이들의 조합일 수 있다.
본 명세서에서, 파형 위치 함수는, 대응하는 신호의 주파수 도메인에서의 위치 또는 시간 도메인에서의 위치를 나타내는 적어도 하나의 파라미터를 포함할 수 있다. 예를 들어, 파형 위치 함수는 주파수 범위(또는 대역), 주파수 간격, 및 지연 시간 중 적어도 하나의 값에 대응하는 파라미터를 포함할 수 있으나, 이에 한정되는 것은 아니다.
본 명세서에서, 타임 윈도우(time window)는 송신된 신호(예컨대, 처프 신호)에 대응하는 반사파 신호(예컨대, 에코(echo) 처프 신호)가 수신되어 시간 도메인에서 분할된 프레임을 의미할 수 있다. 예를 들어, 반사파 신호는 복수의 타임 윈도우들을 갖도록 복수의 서브 신호들로 분할될 수 있다. 예를 들어, 제1 서브 신호는 제1 타임 프레임에 대응하고, 제2 서브 신호는 제2 타임 프레임에 대응할 수 있다.
본 명세서에서, 안정성(stability) 값은 신호(예컨대, 반사파 신호)의 시간 도메인의 n 개의 시점들(또는 타임 윈도우들)에서 신호에 대응하는 측정 값(예컨대, 거리)들 간의 상호 유사도를 나타내는 값을 의미할 수 있다. 예를 들어, 안정성 값은, 제1 타임 윈도우에서의 반사파 신호에 기초하여 측정된 제1 거리 값과 제2 타임 윈도우에서의 반사파 신호에 기초하여 측정된 제2 거리 값 간의 유사도를 포함할 수 있다. 안정성 값은 강건성 값으로 지칭될 수 있다. 식별성(identification) 값은 직접파 신호(예컨대, 비가청 음향 신호)와 반사파 신호 간의 신호 유사도를 나타내는 값을 의미할 수 있다.
본 명세서에서, 세대(generation)는 유전 알고리즘(genetic algorithm)을 이용하여 생성된 복수의 신호들의 세트를 의미할 수 있다. 예를 들어, 유전 알고리즘은 반복적으로(iteratively) 수행되는데, 현재 반복(iteration)에서의 신호 세트가 현재 세대로 지칭될 수 있고, 다음 반복에서의 신호 세트가 다음 세대로 지칭될 수 있다. 본 명세서에서, 유전 알고리즘은 파형 최적화 모듈 또는 파형 최적화 모델로도 지칭될 수 있다.
본 명세서에서, 웨이크업 디바이스는 사용자의 키워드 음성 입력에 응답하는 장치를 의미한다. 웨이크업 디바이스는 키워드 음성 입력을 수신하는 제1 대기 모드로 동작할 수 있다. 웨이크업 디바이스는 키워드 음성 입력에 응답하여 추가적인 음성 입력을 수신하는 제2 대기 모드로 동작할 수 있다. 즉, 웨이크업 디바이스가 제1 대기 모드에서 제2 대기 모드로 전환될 때, 웨이크업 디바이스는 "웨이크업"할 수 있다.
본 명세서에서, "우수한 값" 또는 "값이 우수한" 등의 표현은, 미리 정의된 임계 값보다 크거나 작은 경우를 의미한다.
도 1은 일 실시 예에 따른 전자 장치를 예시적으로 보여주는 블록도이다.
일 실시 예에 있어서, 전자 장치(100)는 음향(acoustic) 신호(오디오 신호 또는 사운드 신호로 지칭될 수 있음)를 송수신하고, 음향 신호를 프로세싱하는 장치일 수 있다. 예를 들어, 전자 장치(100)는 휴대폰, 스마트 폰, 태블릿 PC, 디지털 카메라, 캠코더, 노트북 컴퓨터(laptop computer), 태블릿 PC, 데스크탑, 전자책 단말기, 디지털 방송용 단말기, PDA(Personal Digital Assistants), PMP(Portable Multimedia Player), MP3 플레이어, 착용형 기기(wearable device), 가전 장치(예컨대, TV, 냉장고, 에어컨, 공기청정기 등), AI(Artificial Intelligence) 스피커, 로봇 등과 같은 다양한 장치로 구현될 수 있으나, 이에 한정되지 않는다.
전자 장치(100)는 음향 신호에 기초하여 전자 장치(100)가 위치한 공간 구조를 인식할 수 있다. 전자 장치(100)는 공간 구조에 기초하여 음향 신호를 최적화하는 프로세싱을 수행할 수 있다.
일 실시 예에 있어서, 음향 신호는 비가청(inaudible) 주파수 대역의 신호(이하, 비가청 음향 신호)를 포함할 수 있다. 본 개시에 따르면, 사람의 청각으로 인지하지 못하는 비가청 음향 신호를 이용함으로써, 사람에게 불편함 없이 전자 장치(100)가 공간 구조의 변경 또는 객체의 움직임을 실시간으로 모니터링할 수 있다.
도 1을 참조하면, 전자 장치(100)는 통신 인터페이스(110), 사용자 인터페이스(120), 스피커(130), 마이크(140), 센서(150), 메모리(160), 및 프로세서(170)를 포함할 수 있다.
통신 인터페이스(110)는 전자 장치(100)와 외부의 다른 전자 장치(미도시) 또는 서버(미도시) 사이의 유선 또는 무선 통신 채널의 수립 및 수립된 통신 채널을 통한 통신 수행을 지원할 수 있다. 일 실시 예에 있어서, 통신 인터페이스(110)는 유선 또는 무선 통신을 통해 외부의 다른 전자 장치(미도시) 또는 서버(미도시)로부터 데이터를 수신하거나 외부의 다른 전자 장치(미도시) 또는 서버(미도시)로 데이터를 송신할 수 있다. 몇몇 실시 예들에 있어서, 통신 인터페이스(110)는 무선 통신 모듈(예컨대, 셀룰러 통신 모듈, 근거리 무선 통신 모듈, 또는 GNSS(global navigation satellite system) 통신 모듈) 또는 유선 통신 모듈(예컨대, LAN(local area network) 통신 모듈, 또는 전력선 통신 모듈)을 포함할 수 있고, 그 중 어느 하나의 통신 모듈을 이용하여 적어도 하나의 네트워크(예컨대, 근거리 통신 네트워크(예컨대, 블루투스, WiFi direct 또는 IrDA(infrared data association)) 또는 원거리 통신 네트워크(예컨대, 셀룰러 네트워크, 인터넷, 또는 컴퓨터 네트워크(예컨대, LAN 또는 WAN)))를 통하여 외부의 다른 전자 장치(미도시) 또는 서버(미도시)와 통신할 수 있다.
사용자 인터페이스(120)는 사용자가 전자 장치(100)를 제어하기 위한 데이터를 입력하는 수단을 의미할 수 있다. 예를 들어, 사용자 인터페이스(120)는 키 패드(key pad), 돔 스위치 (dome switch), 터치 패드(접촉식 정전 용량 방식, 압력식 저항막 방식, 적외선 감지 방식, 표면 초음파 전도 방식, 적분식 장력 측정 방식, 피에조 효과 방식 등), 조그 휠 또는 조그 스위치 중 적어도 하나를 포함할 수 있으나 이에 한정되는 것은 아니다. 일 실시 예에 있어서, 사용자 인터페이스(120)는 생략될 수 있다. 이 경우, 사용자 인터페이스(120)의 기능의 적어도 일부는 외부의 다른 전자 장치(미도시)에 구현될 수 있다.
스피커(130)는 비가청 음향 신호를 출력할 수 있다. 또한, 스피커(130)는 멀티미디어 재생 또는 녹음 재생 등의 용도로 사용될 수 있다. 도시되지 않았지만, 스피커(130)의 개수는 하나 이상일 수 있다. 이 경우, 적어도 하나의 스피커 각각은 전자 장치(100)에서 서로 다른 각도(또는 방향)에 배치됨으로써, 서로 다른 각도를 향해 비가청 음향 신호를 출력할 수 있다. 예를 들어, 비가청 음향 신호는 처프(chirp) 신호일 수 있다.
마이크(140)는 비가청 음향 신호가 공간 구조에 의해 반사된 반사파 신호를 수신할 수 있다. 또한, 마이크(140)는 사용자 음성 입력 등을 수신할 수 있다. 이 경우, 마이크(140)는 사용자 인터페이스(120)의 기능의 적어도 일부를 수행할 수 있다. 도시되지 않았지만, 마이크(140)의 개수는 하나 이상일 수 있다. 이 경우, 적어도 하나의 마이크 각각은 전자 장치(100)에서 서로 다른 각도(또는 방향)에 배치됨으로써, 서로 다른 각도로 전자 장치(100)를 향하는 반사파 신호를 수신할 수 있다.
센서(150)는 전자 장치(100) 주변의 환경 조건(ambient condition)을 감지하고, 감지된 환경 조건에 대응하는 전기 신호 또는 데이터 값인 환경 조건 정보를 생성할 수 있다. 여기서, 환경 조건 정보는 전자 장치(100)가 위치한 공간의 온도, 기압, 습도, 및 밀도 중 적어도 하나에 대한 정보를 포함할 수 있다. 일 실시 예에 있어서, 센서(150)는 생략될 수 있다. 이 경우, 센서(150)의 기능의 적어도 일부는 외부의 다른 전자 장치(미도시)에 구현될 수 있다. 전자 장치(100)는 통신 인터페이스(110)를 통해 외부의 다른 전자 장치(미도시)에 의해 생성된 환경 조건 정보를 수신할 수 있다.
메모리(160)에는 프로세서(170)에 의하여 처리되거나 처리될 예정인 데이터, 펌웨어, 소프트웨어, 및 프로세스 코드 등이 저장될 수 있다. 일 실시 예에 있어서, 메모리(160)에는 파형 최적화 모듈(161), 신호 처리 모듈(162), 위치 추론 모듈(163), 인공지능 모듈(164), 및 인공지능 모델 중 적어도 하나에 대응되는 데이터 및 프로그램 코드들이 저장될 수 있다.
예를 들어, 파형 최적화 모듈(161)은 공간 구조에 기초하여 비가청 음향 신호의 파형을 최적화할 수 있다. 파형 최적화 모듈(161)은 복수의 비가청 음향 신호들(또는 복수의 후보 신호들로 지칭될 수 있음)을 입력으로 하는 파형 최적화 모델을 이용하여, 공간 구조에 최적화된 최종 비가청 음향 신호(또는 최종 신호로 지칭될 수 있음)를 획득할 수 있다. 신호 처리 모듈(162)은 스피커(130)로 출력되는 다양한 신호들을 프로세싱할 수 있다. 위치 추론 모듈(163)은 비가청 음향 신호 및 대응하는 반사파 신호에 기초하여 객체의 위치를 추론할 수 있다.
인공지능 모듈(164)은 인공지능 모델(예컨대, 딥러닝 모델, 머신러닝 모델 등)을 훈련할 수 있다. 도시되지 않았지만, 인공지능 모듈(164) 또는 인공지능 모델은 기능 또는 목적에 따라 하나 이상일 수 있다. 일 실시 예에 있어서, 인공지능 모듈(164)은 훈련된 인공지능 모델을 이용하여, 비가청 음향 신호의 파형을 최적화할 수 있다. 일 실시 예에 있어서, 인공지능 모듈(164)은 훈련된 인공지능 모델을 이용하여, 데이터 간 상관 관계에 대한 회귀 분석을 수행할 수 있다. 일 실시 예에 있어서, 인공지능 모듈(164)은 훈련된 인공지능 모델을 이용하여, 데이터 간 상관 관계에 대한 클러스터링을 수행할 수 있다. 일 실시 예에 있어서, 인공지능 모듈(164)은 훈련된 인공지능 모델을 이용하여, 객체의 위치를 추론할 수 있다.
인공지능 모델은 복수의 신경망 레이어들을 포함할 수 있다. 복수의 신경망 레이어들 각각은, 가중치 값들을 포함할 수 있다. 인공지능 모델은 학습 데이터셋을 학습함으로써 인공지능 모델의 신경망 레이어들의 가중치 값들을 갱신할 수 있다.
메모리(160)는 전자 장치(100)의 주 기억 장치로 이용될 수 있다. 예를 들어, 메모리(160)는 플래시 메모리 타입(flash memory type), 하드디스크 타입(hard disk type), 멀티미디어 카드 마이크로 타입(multimedia card micro type), 카드 타입의 메모리(예를 들어 SD 또는 XD 메모리 등), DRAM(dynamic random access memory), SRAM(static random access memory), PRAM(phase-change random access memory), MRAM (magnetic random access memory), FeRAM(ferroelectric random access memory), RRAM(resistive random access memory), 롬(ROM, Read-Only Memory), EEPROM(Electrically Erasable Programmable Read-Only Memory), PROM(Programmable Read-Only Memory), 자기 메모리, 자기 디스크, 광디스크 중 적어도 하나의 타입의 저장매체를 포함할 수 있다. 메모리(160)는 버퍼 메모리, 워킹 메모리, 또는 캐시 메모리로서 지칭될 수 있다. 도시되지 않았지만, 메모리(160)의 개수는 하나 이상일 수 있다.
프로세서(170)는 전자 장치(100)에 포함된 구성들과 전기적으로 연결되어, 전자 장치(100)에 포함된 구성들의 제어 및/또는 통신에 관한 연산이나 데이터 처리를 수행할 수 있다. 예를 들어, 프로세서(170)는 CPU(central processing unit), AP(application processor), GPU(graphic processing unit), 또는 NPU(neural processing unit) 중 적어도 하나를 포함할 수 있다. 일 실시 예에 있어서, 프로세서(170)는 다른 구성들 중 적어도 하나로부터 수신된 명령 또는 데이터를 메모리(160)에 로드하여 처리하고, 결과 데이터를 메모리(160)에 저장할 수 있다. 도시되지 않았지만, 프로세서(170)는 기능 또는 목적에 따라 하나 이상일 수 있다. 이 경우, 적어도 하나의 프로세서는 전자 장치(100)에 포함된 구성들의 제어 및/또는 통신에 관한 연산이나 데이터 처리를 분산하여 수행할 수 있다. 예를 들어, 전자 장치(100)는 인공지능 모듈(162)을 실행하기 위한 별도의 프로세서, 예컨대, NPU(neural processing unit)를 더 포함할 수 있다.
프로세서(170)는 비가청 음향 신호(최종 비가청 음향 신호로 지칭될 수 있음)에 대응하는 기준(Reference) 신호와, 수신된 반사파 신호 간의 상관도(correlation)에 기초하여 신호 변화량을 획득할 수 있다. 여기서, 기준 신호는 반사파 신호와의 비교의 기준이 되는 신호를 의미하며, 미리 정의된 신호일 수 있다. 예를 들어, 기준 신호는 공간 구조의 변경, 환경 조건의 변경, 또는 객체의 움직임이 없는 상황에서 수신되는 반사파 신호일 수 있다. 기준 신호는 비가청 음향 신호 및 공간 구조에 따라 상이할 수 있다. 기준 신호 또는 그에 대응하는 값들은 메모리(160)에 저장될 수 있다. 반사파 신호는 스피커(130)로부터 출력된 비가청 음향 신호가 공간 구조에 의해 반사되어 마이크(140)로 입력된 신호일 수 있다.
프로세서(170)는 신호 변화량이 객체의 움직임에 대응하는 제1 임계 값을 초과한 경우, 신호 변화량에 기초하여 공간 구조 내의 객체의 위치에 대응하는 객체 위치 정보를 획득할 수 있다. 제1 임계 값은 객체의 위치가 변화함으로써 신호가 변화한 것인지, 아니면 다른 이유로 신호가 변화한 것인지 판단하기 위한 기준 값이다. 예를 들어, 신호 변화량이 객체의 움직임에 대응하는 제1 임계 값을 초과하지 않는 경우, 공간 구조 내의 객체의 위치가 변경된 것이 아니라, 전자 장치(100)의 위치(또는 방향)가 변화하거나 다른 요인으로 인해 신호 변화량이 발생된 것으로 해석될 수 있다. 따라서, 신호 변화량이 객체의 움직임에 대응하는 제1 임계 값을 초과하지 않는 경우에는, 프로세서(170)는 객체의 위치가 변경되지 않은 것으로 판단할 수 있다.
프로세서(170)는 신호 변화량이 공간 구조의 변경에 대응하는 제2 임계 값을 초과한 경우, 파형 최적화 모델을 이용하여 비가청 음향 신호에 대응하는 최종 파라미터 세트를 업데이트할 수 있다. 제2 임계 값은 공간 구조가 변경된 것인지 판단하기 위한 기준 값이다. 신호 변화량이 제2 임계 값을 초과하지 않는 경우에는, 프로세서(170)는 공간 구조의 변경이 없는 것으로 판단할 수 있다.
일 실시 예에 있어서, 공간 구조의 변경은 전자 장치(100)가 위치한 공간의 환경 조건(예컨대, 온도, 기압, 습도, 밀도 등)의 변경을 의미할 수 있다. 전자 장치(100)는 센서(150) 등을 통해 환경 조건에 대응하는 데이터(즉, 환경 조건 정보)를 획득할 수 있다. 전자 장치(100)는 환경 조건의 변경에 대응하여, 파형 최적화 모델을 이용하여 비가청 음향 신호에 대응하는 최종 파라미터 세트를 업데이트할 수 있다. 따라서, 환경 조건이 변경하더라도 변경된 환경 조건에 최적화된 비가청 음향 신호에 대응하는 최종 파라미터 세트가 업데이트될 수 있다.
일 실시 예에 있어서, 제1 임계 값은 제2 임계 값보다 클 수 있다. 일 실시 예에 있어서, 신호 변화량의 제1 임계 값의 초과 여부와 제2 임계 값의 초과 여부는 서로 다른 시구간 내에서의 신호 변화량에 기초하여 식별될 수 있다.
일 실시 예에 있어서, 프로세서(170)는 신호 변화량이 환경 조건의 변경에 대응하는 제3 임계 값을 초과한 경우, 파형 최적화 모델을 이용하여 비가청 음향 신호에 대응하는 최종 파라미터 세트를 업데이트할 수 있다. 제3 임계 값은 공간의 환경 조건이 변경된 것인지 판단하기 위한 기준 값이다. 신호 변화량이 제3 임계 값을 초과하지 않는 경우에는, 프로세서(170)는 환경 조건의 변경이 없는 것으로 판단할 수 있다.
일 실시 예에 있어서, 프로세서(170)는 현재 세대에 대응하는 제1 파라미터 세트를 획득할 수 있다. 예를 들어, 제1 파라미터 세트는 현재 세대에 포함되는 복수의 후보 신호들의 특징을 포함할 수 있다. 일 실시 예에 있어서, 현재 세대가 초기(initial) 세대인 경우, 프로세서(170)는 임의의 또는 미리 정의된 제1 파라미터 세트를 획득할 수 있다.
프로세서(170)는 제1 파라미터 세트에 기초하여, 스피커(130)로 하여금 복수의 후보 신호들을 출력하도록 제어할 수 있다. 예를 들어, 후보 신호들은 비가청 대역의 신호(즉, 비가청 음향 신호)들일 수 있다. 일 실시 예에 있어서, 복수의 후보 신호들은 서로 특정 시 간격 및/또는 주파수 간격을 가지고 출력될 수 있다.
프로세서(170)는 적어도 하나의 마이크(140)로 하여금 복수의 후보 신호들이 공간 구조에 의해 반사된 반사파 신호들을 수신하도록 제어할 수 있다.
프로세서(170)는 복수의 후보 신호들에 대응하는 반사파 신호들에 기초하여 복수의 후보 신호들에 대한 적합도(fitness) 값(들)을 획득할 수 있다. 즉, 프로세서(170)는 복수의 후보 신호들 각각에 대한 적합도 값을 획득할 수 있다. 일 실시 예에 있어서, 적합도 값은 안정성 값 및/또는 식별성 값을 포함할 수 있다.
일 실시 예에 있어서, 프로세서(170)는 적합도 값에 기초하여 성능 값을 계산할 수 있다. 일 실시 예에 있어서, 성능 값은 복수의 후보 신호들 각각의 안정성 값과 식별성 값을 변수로 하는 결정 함수의 반환 값일 수 있다. 일 실시 예에 있어서, 결정 함수는 안정성 값 및 식별성 값 중 어느 하나에 가중하여 성능 값을 반환할 수 있다.
프로세서(170)는 적합도 값에 대응하는 성능 값이 종료 임계 값을 초과하는지 여부인 종료 조건을 판단할 수 있다. 종료 임계 값은 사용자 또는 제조사의 설정에 따라 미리 정의된 값일 수 있다. 예를 들어, 종료 임계 값은 성능 값의 수렴 여부, 세대 교체 횟수(반복 횟수), 성능 값의 목표치 중 적어도 하나에 대응할 수 있다.
프로세서(170)는, 종료 조건이 만족되지 않는 경우, 성능 값 및 제1 파라미터 세트 간의 상관 관계에 기초하여 다음 세대에 대응하는 제2 파라미터 세트를 획득할 수 있다.
일 실시 예에 있어서, 프로세서(170)는 성능 값 및 제1 파라미터 세트 간의 상관 관계에 대응하는 분석 데이터를 획득할 수 있다. 예시적으로, 상관 관계는 성능 값과 신호의 진폭, 성능 값과 신호의 파형, 성능 값과 신호의 주기 등에 대한 상관 관계를 포함할 수 있으나, 이에 한정되지 않는다. 따라서, 상관 관계는 제1 파라미터 세트 내의 신호의 특징들 간의 상관 관계, 예컨대, 신호의 진폭과 신호의 파형 간의 상관 관계를 포함할 수 있다. 예를 들어, 분석 데이터는 입력 변수(예컨대, 파형 특징 함수, 타임 윈도우, 및/또는 파형 위치 함수 등)와 출력 값(예컨대, 성능 값, 및/또는 적합도 값) 간의 상관 계수, 상관성, 민감도 등을 포함할 수 있다.
일 실시 예에 있어서, 프로세서(170)는 불확실성(uncertainty) 분석 및 민감도(sensitivity) 분석을 수행함으로써, 성능 값 및 제1 파라미터 세트 간의 상관 관계에 대응하는 분석 데이터를 획득할 수 있다.
일 실시 예에 있어서, 프로세서(170)는 성능 값 및 제1 파라미터 세트를 입력으로 하는 클러스터링 모델을 이용하여, 성능 값 및 제1 파라미터 세트 간의 상관 관계에 대응하는 분석 데이터를 획득할 수 있다. 예를 들어, 클러스터링 모델은 K-Means Clustering, Mean Shift, Gaussian Mixture Model, DBSCAN, Agglomerative Clustering 등을 포함할 수 있으나, 이에 한정되지 않는다.
프로세서(170)는 분석 데이터 및 성능 값에 기초하여 파형 특징 함수 및 타임 윈도우를 선택할 수 있다. 일 실시 예에 있어서, 프로세서(170)는 안정성 값과 식별성 값에 기초하여 파형 특징 함수 및 타임 윈도우를 분류하여 선택할 수 있다. 예를 들어, 특정 파형 특징 함수 및 특정 타임 윈도우를 갖는 세트의 안정성 값 및 식별성 값 중 적어도 하나가, 안정성 값 및 식별성 값을 기초로 하는 함수의 결과 값에 있어서 비교적 높은 영향력(impact)을 갖는 경우, 프로세서(170)는 해당 세트를 선택할 수 있다.
예시적으로, 프로세서(170)는 안정성 값이 제1 기준 값(혹은 임계 값으로도 지칭될 수 있음)을 초과하는 파형 특징 함수 및 타임 윈도우를 갖는 제1 세트를 선택할 수 있다. 예를 들어, 프로세서(170)는 식별성 값이 제2 기준 값을 초과하는 파형 특징 함수 및 타임 윈도우를 갖는 제2 세트를 선택할 수 있다. 예를 들어, 프로세서(170)는 안정성 값이 제3 기준 값을 초과하고, 식별성 값이 제4 기준 값을 초과하는 파형 특징 함수 및 타임 윈도우를 갖는 제3 세트를 선택할 수 있다.
프로세서(170)는 선택된 파형 특징 함수 및 선택된 타임 윈도우 중 적어도 하나에 대해 교차(cross-over) 연산 및 돌연변이(mutation) 연산 중 적어도 하나를 수행함으로써, 제2 파라미터 세트를 획득 할 수 있다.
일 실시 예에 있어서, 프로세서(170)는 제1 세트 및 제2 세트에 대해 교차 연산을 하고, 제3 세트에 대해 돌연변이 연산을 수행할 수 있다. 프로세서(170)는 교차 연산 결과 및 돌연변이 연산 결과에 기초하여 제2 파라미터 세트를 획득할 수 있다.
일 실시 예에 있어서, 프로세서(170)는 성능 값, 선택된 파형 특징 함수, 및 선택된 타임 윈도우 중 적어도 하나에 기초하여 파형 위치 함수를 획득 할 수 있다.
일 실시 예에 있어서, 프로세서(170)는, 종료 조건이 만족되지 않는 경우, 현재 세대를 다음 세대로 교체하고, 종료 조건을 반복적으로 판단할 수 있다.
프로세서(170)는, 종료 조건이 만족된 경우, 복수의 후보 신호들 중 성능 값이 종료 임계 값을 초과하는 신호(예컨대, 최종 신호)에 대응하는 최종 파라미터 세트를 획득할 수 있다. 프로세서(170)는 획득된 최종 파라미터 세트에 기초하여 최종 파라미터 세트를 업데이트할 수 있다. 일 실시 예에 있어서, 프로세서(170)는 최종 파라미터 세트를 갖는 비가청 음향 신호에 대응하는 기준 신호를 획득할 수 있다. 기준 신호는 비가청 음향 신호가 공간 구조에 의해 반사된 반사파 신호에 대응할 수 있다.
일 실시 예에 있어서, 파형 최적화 모델에 신호 변화량 및 환경 조건 정보가 입력되면 최종 파라미터 세트를 출력하도록, 파형 최적화 모델이 학습될 수 있다. 따라서, 프로세서(170)는 파형 최적화 모델을 이용하여, 신호 변화량 및 환경 조건 정보로부터 최종 파라미터 세트를 획득할 수 있다.
일 실시 예에 있어서, 객체 위치 정보는, 전자 장치(100)와 객체 간의 거리에 대응하는 거리 정보, 및 전자 장치(100)와 객체가 형성하는 각도에 대응하는 각도 정보를 포함할 수 있다. 일 실시 예에 있어서, 객체 위치 정보는 전자 장치(100)를 원점(예컨대, (0, 0))으로 하는 객체의 좌표 값(예컨대, (x, y))을 포함할 수 있다.
일 실시 예에 있어서, 프로세서(170)는 비가청 음향 신호에 기초하여 거리 정보를 획득할 수 있다. 일 실시 예에 있어서, 프로세서(170)는 거리 정보를 입력으로 하는 머신러닝 모델을 이용하여 각도 정보를 획득할 수 있다. 예를 들어, 머신러닝 모델에 거리 정보가 입력되면 각도 정보를 출력하도록 머신러닝 모델이 학습될 수 있다.
일 실시 예에 있어서, 프로세서(170)는 (최적화된) 비가청 음향 신호에 대응하는 반사파 신호에 기초하여 객체 위치 정보(예컨대, 좌표 값)를 획득할 수 있다. 여기서, 반사파 신호는 미리 정의된 시 간격 내에서 타임 윈도우로 구분되는 복수의 신호들을 의미할 수 있다. 즉, 프로세서(170)는 반사파 신호에 대응하는 복수의 신호들을 입력으로 하는 머신러닝 모델을 이용하여 객체 위치 정보를 획득할 수 있다. 예를 들어, 머신러닝 모델에 반사파 신호에 대응하는 복수의 신호들이 입력되면 객체 위치 정보를 출력하도록 머신러닝 모델이 학습될 수 있다.
일 실시 예에 있어서, 머신러닝 모델의 손실 함수는 MSE(mean square error)로 구현될 수 있으나, 이에 제한되는 것은 아니다. 예를 들어, 머신러닝 모델의 손실 함수는 RMSE(root mean square error), 바이너리 교차 엔트로피(binary crossentropy), 범주형 교차 엔트로피(categorical crossentropy) 등 모델의 예측 값과 실제 값과의 차이를 표현하는 임의의 함수로 구현될 수 있다.
일 실시 예에 있어서, 프로세서(170)는 전자 장치(100)가 위치한 공간의 온도, 기압, 습도, 및 밀도 중 적어도 하나를 포함하는 환경 조건(ambient condition) 정보를 획득할 수 있다. 프로세서(170)는 환경 조건 정보에 기초하여 공간의 음속을 획득할 수 있다. 프로세서(170)는 음속에 더 기초하여 제2 파라미터 세트를 획득할 수 있다. 일 실시 예에 있어서, 센서(150)는 공간의 온도, 기압, 습도, 및 밀도 등을 감지할 수 있다. 센서(150)에서 감지된 온도, 기압, 습도, 및 밀도 등에 기초하여 환경 조건 정보가 생성될 수 있다.
일 실시 예에 있어서, 프로세서(170)는 환경 조건 정보, 적합도 값, 제1 파라미터 세트 중 적어도 하나를 입력으로 하는 머신러닝 모델에 기초하여 제2 파라미터 세트를 획득할 수 있다.
몇몇 실시 예들에 있어서, 전자 장치(100)의 구성은 도 1에 도시된 바에 한정되지 않으며, 도 1에 도시되지 않은 구성을 추가로 포함하거나, 도 1에 도시된 구성 중 일부를 생략할 수 있다. 상술한 실시 예들의 각각의 추가되는 특징들은 서로 모순되지 않는 범위에서 서로 결합되거나 조합될 수 있다.
도 2a 내지 2c는 일 실시 예에 따른 전자 장치가 공간 구조에 최적화된 신호를 생성하는 방법을 예시적으로 보여주는 개념도들이다. 설명의 편의를 위해, 도 1에서 설명한 내용과 중복되는 내용은 생략한다.
도 2a와 함께, 도 1을 참조하면, 전자 장치(100)는 현재 세대에 대응하는 제1 파라미터 세트를 획득할 수 있다. 제1 파라미터 세트는 복수의 서브 파라미터 세트들을 포함할 수 있다. 복수의 서브 파라미터 세트들 각각은 복수의 후보 신호들 중 하나에 대응할 수 있다. 예를 들어, 제1 서브 파라미터 세트는 제1 후보 신호의 파형 특징 함수, 파형 위치 함수, 및 타임 윈도우 중 적어도 하나를 나타내는 파라미터들의 조합일 수 있다. 제2 서브 파라미터 세트는 제2 후보 신호의 파형 특징 함수, 파형 위치 함수, 및 타임 윈도우 중 적어도 하나를 나타내는 파라미터들의 조합일 수 있다. 유사하게, 제n 서브 파라미터 세트는 제n 후보 신호의 파형 특징 함수, 파형 위치 함수, 및 타임 윈도우 중 적어도 하나를 나타내는 파라미터들의 조합일 수 있다. 예를 들어, n은 자연수일 수 있다.
전자 장치(100)는 제1 파라미터 세트에 기초하여 복수의 후보 신호들(예컨대, S1a, S1b, S1c, S1d)을 출력할 수 있다. 설명의 편의를 위해 네 개의 신호들만을 도시하였으나, 본 개시는 이에 제한되지 않는다. 예를 들어, 복수의 후보 신호들(예컨대, S1a, S1b, S1c, S1d)은 비가청 음역대의 주파수를 가질 수 있다. 예를 들어, 복수의 후보 신호들(예컨대, S1a, S1b, S1c, S1d)은 처프 신호들일 수 있다.
전자 장치(100)는 복수의 후보 신호들(예컨대, S1a, S1b, S1c, S1d) 각각을 미리 정의된 시간 동안 출력할 수 있다. 전자 장치(100)는 복수의 후보 신호들(예컨대, S1a, S1b, S1c, S1d) 각각을 순차적으로 출력할 수 있다. 예를 들어, 전자 장치(100)는 미리 정의된 시간 동안 후보 신호(S1a)를 출력하고, 미리 정의된 지연 시간 후에 미리 정의된 시간 동안 후보 신호(S2a)를 출력할 수 있다.
전자 장치(100)는 후보 신호(예컨대, S1a)에 대응하는 파형 위치 함수에 기초하여, 후보 신호(예컨대, S1a)를 출력할 수 있다. 예를 들어, 전자 장치(100)는 후보 신호(예컨대, S1a)를 미리 정의된 주파수 범위 내에서 출력할 수 있다. 예를 들어, 미리 정의된 주파수 범위는 비가청 음역대의 주파수 범위의 적어도 일부일 수 있다. 예를 들어, 전자 장치(100)는 후보 신호(S1a)를 제1 주파수 범위 내에서 출력하고, 후보 신호(S1b)를 제2 주파수 범위 내에서 출력할 수 있다. 일 실시 예에 있어서, 제1 주파수 범위와 제2 주파수 범위는 미리 정의된 주파수 간격만큼 이격될 수 있다.
일 실시 예에 있어서, 전자 장치(100)는 제1 스피커 및 제2 스피커를 포함할 수 있다. 제1 스피커 및 제2 스피커가 출력하는 신호들은 서로 다를 수 있다. 예를 들어, 제1 스피커는 후보 신호(S1a)를 출력하고, 제2 스피커는 후보 신호(S1b)를 출력할 수 있다.
도 2b와 함께, 도 1 및 도 2a를 참조하면, 전자 장치(100)는 복수의 후보 신호들이 공간 구조(10)에 의해 반사된 제1 반사파 신호들을 수신할 수 있다. 공간 구조(10)는 객체(11)(예컨대, 가구, 가전, 벽 등)를 포함할 수 있다. 예시적으로, 후보 신호(S1a)는 객체(11)에 의해 반사될 수 있다. 전자 장치(100)는 반사된 신호, 즉 제1 반사파 신호(SR1a)를 수신할 수 있다.
일 실시 예에 있어서, 전자 장치(100)는 제1 마이크 및 제2 마이크를 포함할 수 있다. 제1 마이크 및 제2 마이크 각각은 제1 반사파 신호들을 수신할 수 있다.
전자 장치(100)는 수신된 제1 반사파 신호들에 기초하여 복수의 후보 신호들에 대한 적합도 값들을 획득할 수 있다. 적합도 값은 안정성 값 및 식별성 값을 포함할 수 있다.
일 실시 예에 있어서, 전자 장치(100)는 수신된 제1 반사파 신호(예컨대, SR1a)를 미리 정의된 시 간격으로 나눌 수 있다. 전자 장치(100)는 수신된 제1 반사파 신호(예컨대, SR1a)에 기초하여, 미리 정의된 시 간격을 갖는 타임 윈도우로 나누어진 복수의 서브 신호들을 생성할 수 있다. 예를 들어, 제1 반사파 신호(예컨대, SR1a)는 타임 도메인에서 n 개의 서브 신호들로 나누어질 수 있다. 예를 들어, 제1 서브 신호는 제1 타임 윈도우에 대응하고, 제2 서브 신호는 제2 타임 윈도우에 대응하며, 제n 서브 신호는 제n 타임 윈도우에 대응할 수 있다.
일 실시 예에 있어서, 복수의 서브 신호들은 신호 분석에 적합하도록 전처리될 수 있다. 예를 들어, 전자 장치(100)는 복수의 서브 신호들에 기초하여, 잡음(noise) 제거, 평활화, 이상 값 제거, 스퓨리어스(spurious) 성분 제거, 추세 제거(detrend), 필터링 등의 작업을 수행할 수 있다.
전자 장치(100)는 복수의 서브 신호들에 기초하여 제1 반사파 신호(예컨대, SR1a)에 대응하는 후보 신호(S1a)의 안정성 값을 계산할 수 있다. 예를 들어, 안정성 값은 서로 인접한 타임 윈도우의 서브 신호들 간의 교차 상관분석(cross corealation)을 통해 계산될 수 있다.
일 실시 예에 있어서, 안정성 값은 복수의 서브 신호들에 기초하여 측정된 값들의 유사성을 의미할 수 있다. 예를 들어, 전자 장치(100)는 복수의 서브 신호들에 기초하여 전자 장치(100)와 임의의 객체(11) 간의 거리 값들을 계산할 수 있다. 예시적으로, 전자 장치(100)는 제1 서브 신호에 기초하여 제1 거리 값을 계산하고, 제2 서브 신호에 기초하여 제2 거리 값을 계산할 수 있다. 그러나, 본 개시는 거리 값에 한정되지 않으며, 전자 장치(100)는 공간 구조(10)의 특성을 내재하는 임의의 값을 계산할 수 있다. 전자 장치(100)는 거리 값들에 기초하여 제1 반사파 신호(예컨대, SR1a)에 대응하는 후보 신호(예컨대, S1a)의 안정성 값을 계산할 수 있다.
일 실시 예에 있어서, 전자 장치(100)는 센서(150) 또는 외부 장치로부터 환경 조건 정보를 획득할 수 있다. 전자 장치(100)는 환경 조건 정보에 기초하여 소리의 속도를 계산할 수 있다. 예를 들어, 환경 조건 정보 중 공간 구조(10) 내부의 온도에 기초하여 소리의 속도가 계산될 수 있으며, 다음과 같은 수학식 1의 관계를 따를 수 있다.
수학식 1을 참고하면, TC는 섭씨 온도로 정의되고, vsound는 소리의 속도로 정의된다. 따라서, 전자 장치(100)는 공간 구조(10) 내부의 섭씨 온도를 획득하고, 획득된 섭씨 온도에 기초하여 공간 구조(10)에서의 소리의 속도를 계산할 수 있다. 예시적으로 소리의 속도와 온도 간의 관계식을 설명하였으나, 전자 장치(100)는 소리의 속도를 결정하는 요소들을 획득하고, 소리의 속도와 요소들 간의 관계식에 기초하여 소리의 속도를 계산할 수 있다. 전자 장치(100)는 소리의 속도, 후보 신호(예컨대, S1a), 및 반사파 신호(예컨대, SR1a)에 기초하여 거리 값을 계산할 수 있다.
일 실시 예에 있어서, 안정성 값은 서브 신호들에 기초하여 계산된 거리 값들의 표준 편차로 계산될 수 있다. 이 경우, 안정성 값이 작을수록 대응하는 후보 신호(예컨대, S1a)의 안정성 또는 강건성이 우수한 것으로 평가될 수 있다.
일 실시 예에 있어서, 안정성 값은 다음과 같은 수학식 2의 관계를 따를 수 있다.
수학식 2를 참고하면, s는 스피커의 식별자로 정의되고, m은 마이크의 식별자로 정의되고, t는 타임 윈도우의 식별자로 정의되고, i는 타임 윈도우에 대응하는 신호의 개별 인덱스로 정의되고, n은 타임 윈도우에 대응하는 신호의 인덱스들의 개수로 정의된다. 또한, 은 직전 타임 윈도우(t-1)에 대응하는 값으로 정의되고, 은 현재 타임 윈도우(t)에 대응하는 값으로 정의된다. 는 스피커 s, 마이크 m, 타임 윈도우 t인 경우의 안정성 값으로 정의된다. 그러나, 수학식 2는 안정성 값을 계산하기 위한 일 예시에 불과하며, 반사파 신호의 타임 윈도우들에 대응하는 값들의 유사성을 계산하기 위한 임의의 수학식이 활용될 수 있음을 물론이다.
전자 장치(100)는 복수의 서브 신호들에 기초하여 제1 반사파 신호(예컨대, SR1a)에 대응하는 후보 신호(예컨대, S1a)의 식별성 값을 계산할 수 있다. 예를 들어, 식별성 값은 후보 신호(예컨대, S1a)와 후보 신호(예컨대, S1a)에 대응하는 제1 반사파 신호(예컨대, SR1a) 간의 교차 상관분석을 통해 계산될 수 있다. 일 실시 예에 있어서, 전자 장치(100)는, 교차 상관분석 전에, 제1 반사파 신호(예컨대, SR1a)의 고조파(harmonics)를 분해할 수 있다.
일 실시 예에 있어서, 안정성 값은 다음과 같은 수학식 3의 관계를 따를 수 있다.
수학식 3을 참고하면, s는 스피커의 식별자로 정의되고, m은 마이크의 식별자로 정의되고, t는 타임 윈도우의 식별자로 정의되고, i는 타임 윈도우에 대응하는 신호의 개별 인덱스로 정의되고, n은 타임 윈도우에 대응하는 신호의 인덱스들의 개수로 정의된다. 또한, 은 원본 신호(예컨대, 후보 신호)에 대응하는 값으로 정의되고, 은 원본 신호가 공간 구조(10)에 의해 반사된 반사파 신호에 대응하는 값으로 정의된다. 는 스피커 s, 마이크 m, 타임 윈도우 t인 경우의 식별성 값으로 정의된다. 그러나, 수학식 3은 식별성 값을 계산하기 위한 일 예시에 불과하며, 원본 신호와 반사파 신호의 신호 유사성을 계산하기 위한 임의의 수학식이 활용될 수 있음을 물론이다.
전자 장치(100)는 적합도 값에 기초하여 성능 값을 계산할 수 있다. 성능 값은 복수의 후보 신호들 각각의 안정성 값과 식별성 값을 변수로 하는 결정 함수의 반환 값일 수 있다. 예를 들어, 결정 함수는 다음과 같은 수학식 4의 관계를 따를 수 있다.
수학식 4를 참고하면, 는 스피커 s, 마이크 m, 타임 윈도우 t인 경우의 후보 신호의 성능 값으로 정의된다. 그러나, 수학식 4는 성능 값을 계산하기 위한 일 예시에 불과하며, 안정성 값 및 식별성 값 중 적어도 하나를 변수로 하는 임의의 수학식이 활용될 수 있음을 물론이다.
전자 장치(100)는 적합도 값에 대응하는 성능 값이 종료 임계 값을 초과하는지 여부(이하, 종료 조건)를 판단할 수 있다. 성능 값이 클수록 신호가 우수한 것으로 평가될 수 있다. 성능 값이 미리 정의된 종료 임계 값을 초과하는 경우, 종료 조건이 만족될 수 있다.
반대로, 성능 값이 작을수록 신호가 우수한 것으로 평가될 수 있다. 성능 값이 미리 정의된 종료 임계 값보다 작거나 같은(또는 작은) 경우, 종료 조건이 만족될 수 있다. 예를 들어, 종료 조건은 다음과 같은 수학식 5의 관계를 따를 수 있다.
수학식 5를 참고하면, 는 종료 임계 값으로 정의된다. 성능 값이 를 초과하는 경우, 전자 장치(100)는 종료 조건이 만족되지 않은 것으로 판단할 수 있다. 성능 값이 보다 작거나 같은 경우, 전자 장치(100)는 종료 조건이 만족된 것으로 판단할 수 있다.
일 실시 예에 있어서, 전자 장치(100)는 이전 세대들에 대응하는 성능 값들과 현재 세대의 성능 값들을 비교하여 수렴 여부를 판단할 수 있다. 현재 세대의 성능 값들 중 적어도 하나가 특정 값으로 수렴한 경우, 종료 조건이 만족될 수 있다.
일 실시 예에 있어서, 전자 장치(100)는 종료 조건을 판단하는 횟수를 카운트할 수 있다. 카운트된 횟수는 세대 교체 횟수와 동일할 수 있다. 카운트된 횟수가 임계 횟수를 초과하는 경우, 종료 조건이 만족될 수 있다.
종료 조건이 만족된 경우, 전자 장치(100)는 종료 조건을 만족한 성능 값을 갖는 후보 신호의 서브 파라미터 세트를 저장할 수 있다. 예를 들어, 서브 파라미터 세트는 메모리(160) 또는 스토리지(미도시)에 저장될 수 있다.
종료 조건이 만족되지 않은 경우, 전자 장치(100)는 성능 값 및 제1 파라미터 세트 간의 상관 관계에 기초하여 다음 세대에 대응하는 제2 파라미터 세트를 획득할 수 있다. 전자 장치(100)는 현재 세대를 다음 세대로 교체할 수 있다. 즉, 제1 파리미터 세트는 제2 파라미터 세트로 교체될 수 있다.
도 2c와 함께, 도 1, 2a 및 2b를 참조하면, 전자 장치(100)는 교체된 현재 세대(즉, 다음 세대)에 대응하는 교체된 제1 파라미터 세트(즉, 제2 파라미터 세트)에 기초하여, 복수의 후보 신호들(예컨대, S2a. S2b, S2c, S2d)을 출력할 수 있다. 전자 장치(100)는 복수의 후보 신호들(예컨대, S2a. S2b, S2c, S2d)의 반사파 신호들에 기초하여 성능 값들을 획득할 수 있다. 전자 장치(100)는 성능 값들에 기초하여 종료 조건이 만족될 때까지 반복하여 세대를 교체할 수 있다.
도 3a 내지 3d는 일 실시 예에 따른 위치 추론을 위한 신호 파형 최적화를 수행하는 방법을 보여주는 흐름도이다. 설명의 편의를 위해 도 1 내지 2c에서 설명한 내용과 중복되는 내용은 생략한다.
도 3a와 함께, 도 1 내지 2c를 참조하면, 전자 장치(100)가 위치 추론을 위한 신호 파형 최적화를 수행하는 방법은 단계 S310 내지 S380을 포함할 수 있다. 일 실시 예에 있어서, 단계 S310 내지 S380은 전자 장치(100) 또는 프로세서(170)에 의해 수행될 수 있다. 본 개시에 따른 위치 추론을 위한 신호 파형 최적화를 수행하는 방법은 도 3a에 도시된 바에 한정되지 않으며, 도 3a에 도시된 단계 중 어느 하나를 생략할 수도 있고, 도 3a에 도시되지 않은 단계를 더 포함할 수도 있다.
단계 S310에서, 전자 장치(100)는 현재 세대에 대응하는 제1 파라미터 세트를 획득할 수 있다. 제1 파라미터 세트는 복수의 후보 신호들 각각의 서브 파리미터 세트들을 포함할 수 있다. 일 실시 예에 있어서, 전자 장치(100)는 메모리(160) 또는 스토리지로부터 제1 파라미터 세트를 획득할 수 있다. 일 실시 예에 있어서, 전자 장치(100)는 외부 장치로부터 제1 파라미터 세트를 획득할 수 있다.
단계 S320에서, 전자 장치(100)는 제1 파라미터 세트에 기초하여 복수의 후보 신호들을 출력할 수 있다. 프로세서(170)는 제1 파라미터 세트에 기초하여 적어도 하나의 스피커(130)로 하여금 복수의 후보 신호들을 출력하도록 제어할 수 있다. 적어도 하나의 스피커(130)는 복수의 후보 신호들을 출력할 수 있다. 예를 들어, 전자 장치(100)는 제1 스피커 및 제2 스피커를 포함할 수 있으며, 스피커의 개수가 이에 한정되는 것은 아니다. 제1 스피커와 제2 스피커는 서로 같거나 다른 후보 신호들을 출력할 수 있다. 일 실시 예에 있어서, 복수의 후보 신호들은 미리 정의된 시 간격으로 출력될 수 있다.
단계 S330에서, 전자 장치(100)는 복수의 후보 신호들이 공간 구조(10)에 의해 반사된 제1 반사파 신호들을 수신할 수 있다. 프로세서(170)는 적어도 하나의 마이크(140)로 하여금 복수의 후보 신호들이 공간 구조에 의해 반사된 제1 반사파 신호들을 수신하도록 제어할 수 있다. 적어도 하나의 마이크(140)는 제1 반사파 신호들을 수신할 수 있다. 예를 들어, 전자 장치(100)는 제1 마이크 및 제2 마이크를 포함할 수 있으며, 스피커의 개수가 이에 한정되는 것은 아니다. 일 실시 예에 있어서, 프로세서(170)는 수신된 제1 반사파 신호들에 대한 전처리를 수행할 수 있다.
단계 S340에서, 전자 장치(100)는 제1 반사파 신호들에 기초하여 복수의 후보 신호들에 대한 적합도 값을 획득할 수 있다. 예를 들어, 프로세서(170)는 복수의 후보 신호들 각각에 대한 적합도 값을 계산할 수 있다.
단계 S350 및 S360에서, 전자 장치(100)는 적합도 값에 대응하는 성능 값이 제1 임계 값을 초과하는지 여부인 종료 조건을 판단할 수 있다. 종료 조건이 만족되는 경우(Yes), 절차는 종료된다. 종료 조건이 만족되지 않는 경우(No), 절차는 종료되지 않고 단계 S370으로 이동한다.
단계 S370에서, 전자 장치(100)는 성능 값 및 제1 파라미터 세트 간의 상관 관계에 기초하여 다음 세대에 대응하는 제2 파라미터 세트를 획득할 수 있다.
단계 S380에서, 전자 장치(100)는 현재 세대를 다음 세대로 교체하고, 절차는 단계 S320으로 이동한다.
도 3b와 함께, 도 1 내지 3a를 참조하면, 일 실시 예에 따른 단계 S370은 단계 S371 내지 S373을 포함할 수 있다. 일 실시 예에 있어서, 단계 S371 내지 S373은 전자 장치(100) 또는 프로세서(170)에 의해 수행될 수 있다. 단계 S370의 세부 단계들은 도 3b에 도시된 바에 한정되지 않으며, 도 3b에 도시된 단계 중 어느 하나를 생략할 수도 있고, 도 3b에 도시되지 않은 단계를 더 포함할 수도 있다.
단계 S371에서, 전자 장치(100)는 상관 관계에 대응하는 분석 데이터를 획득할 수 있다. 예를 들어, 프로세서(170)는 복수의 후보 신호들 각각의 성능 값 및 파라미터들 간의 상관 관계를 계산할 수 있다.
단계 S372에서, 전자 장치(100)는 상관 관계에 대응하는 분석 데이터에 기초하여 파형 특징 함수 및 타임 윈도우를 선택할 수 있다. 예를 들어, 프로세서(170)는 성능 값에 높은 상관 계수를 갖는 파형 특징 함수 및 타임 윈도우를 선택할 수 있다. 예를 들어, 프로세서(170)는 성능 값이 우수한 파형 특징 함수 및 타임 윈도우에 대하여, 성능 값의 우수성에 비례한 확률을 부여할 수 있다. 프로세서(170)는 부여된 확률에 기초하여 파형 특징 함수 및 타임 윈도우에 대해 선택 연산을 수행할 수 있다. 일 실시 예에 있어서, 프로세서(170)는 선택된 파형 특징 함수 및 타임 윈도우에 기초하여 파형 위치 함수를 재계산할 수 있다.
단계 S373에서, 전자 장치(100)는 선택된 파형 특징 함수 및 선택된 타임 윈도우 중 적어도 하나에 대해 교차 연산 및 돌연변이 연산 중 적어도 하나를 수행함으로써 제2 파라미터 세트를 획득할 수 있다. 예를 들어, 식별성 값이 우수한 파형 특징 함수에 대응하는 파라미터들과 안정성 값이 우수한 파형 특징 함수에 대응하는 파라미터들은 서로 교차될 수 있다. 예를 들어, 교차 연산은 단순 교차(simple cross-over), 복수점 교차(k-point cross-over), 균일 교차(uniform cross-over), 또는 산술 교차(arithmetic cross-over) 중 어느 하나의 교차 연산 방법으로 수행될 수 있다. 예를 들어, 식별성 값과 안정성 값 모두 우수한 파형 특징 함수에 대응하는 파라미터들은 일정한 확률로 변이될 수 있다. 교차 연산 및 돌연변이 연산을 수행함으로써, 다양한 파형 특징 함수에 대한 탐색이 가능하다.
도 3c와 함께, 도 1 내지 3a를 참조하면, 일 실시 예에 따른 단계 S370은 단계 S374 내지 S376을 포함할 수 있다. 일 실시 예에 있어서, 단계 S374 내지 S376은 전자 장치(100) 또는 프로세서(170)에 의해 수행될 수 있다. 단계 S370의 세부 단계들은 도 3c에 도시된 바에 한정되지 않으며, 도 3c에 도시된 단계 중 어느 하나를 생략할 수도 있고, 도 3c에 도시되지 않은 단계를 더 포함할 수도 있다.
단계 S374에서, 전자 장치(100)는 전자 장치(100)가 위치한 공간의 온도, 기압, 습도, 및 밀도 중 적어도 하나에 대응하는 정보를 포함하는 환경 조건 정보를 획득할 수 있다.
단계 S375에서, 전자 장치(100)는 환경 조건 정보에 기초하여 공간의 음속을 획득할 수 있다.
단계 S376에서, 전자 장치(100)는 음속에 기초하여 다음 세대에 대응하는 제2 파라미터 세트를 획득할 수 있다. 예를 들어, 거리 값에 기초하여 안정성 값을 계산하는 경우, 전자 장치(100)는 공간의 특징에 따른 음속에 기초하여 보다 정확한 안정성 값을 계산할 수 있다.
도 3d와 함께, 도 1 내지 3a를 참조하면, 일 실시 예에 따른 전자 장치(100)가 위치 추론을 위한 신호 파형 최적화를 수행하는 방법은 단계 S362 내지 S364를 더 포함할 수 있다. 일 실시 예에 있어서, 단계 S362 내지 S364는 전자 장치(100) 또는 프로세서(170)에 의해 수행될 수 있다. 그러나 도 3d에 도시된 바에 한정되지 않으며, 도 3d에 도시된 단계 중 어느 하나를 생략할 수도 있고, 도 3d에 도시되지 않은 단계를 더 포함할 수도 있다.
종료 조건이 만족되는 경우(Yes), 절차는 단계 S362로 이동한다. 단계 S362에서, 전자 장치(100)는 복수의 후보 신호들 중 종료 조건을 만족하는 최종 신호에 대응하는 최종 파라미터 세트를 획득할 수 있다. 최종 파라미터 세트는 전자 장치(100)의 메모리(160) 또는 스토리지(미도시)에 저장되거나, 외부 장치에 저장될 수 있다.
단계 S364에서, 전자 장치(100)는 최종 신호에 대응하는 기준 신호를 획득할 수 있다. 일 실시 예에 있어서, 전자 장치(100)는 최종 신호를 출력하고, 공간 구조의 변경, 환경 조건의 변경, 및 객체의 움직임이 없는 상황에서의 반사파 신호를 수신할 수 있다. 전자 장치(100)는 수신된 반사파 신호에 기초하여 기준 신호 또는 기준 신호에 대응하는 값들을 생성할 수 있다. 기준 신호 또는 그에 대응되는 값들은 전자 장치(100)의 메모리(160) 또는 스토리지(미도시)에 저장되거나, 외부 장치에 저장될 수 있다.
도 4a는 일 실시 예에 따른 상관 관계를 설명하기 위한 개념도이다. 도 4a와 함께, 도 1, 3a 및 3b를 참조하면, 전자 장치(100)는 상관 관계에 대응하는 분석 데이터(400)를 생성할 수 있다. 예를 들어, 상관 관계는 성능(Performance) 값 및 복수의 파라미터들 간의 상관 관계를 의미할 수 있다. 도 4a 에서는, 복수의 파라미터들 중 모양 함수(shape function), 주기(cycle), 진폭(amplitude)를 변수로 한 분석 데이터만을 도시하나, 본 개시는 이에 제한되지 않고, 신호의 내재적인 특성을 나타내는 임의의 파라미터들을 변수로 하여 상관 관계가 분석될 수 있다.
분석 데이터(400)는 정규화된 성능 값, 모양 함수, 주기, 진폭 간의 예시적인 상관 분석 결과이다. 예를 들어, x 축이 성능 값이고, y 축이 모양 함수인 경우, 성능 값과 모양 함수 간의 상관 분석 결과를 보여준다. x 축과 y 축이 서로 같은 값인 경우, 대응하는 값의 히스토그램을 보여준다.
일 실시 예에 있어서, 전자 장치(100)는 성능 값과 복수의 파라미터들(예컨대, 모양 함수, 주기, 진폭 등) 중 어느 하나 간의 상관 계수를 계산할 수 있다. 상관 계수가 미리 정의된 값을 초과하는 경우(즉, 높은 상관 계수를 갖는 경우), 전자 장치(100)는 분석 데이터(400)에 기초하여 높은 상관 계수를 갖는 파라미터들 중 우수한 성능 값에 대응되는 영역을 선택할 수 있다. 여기서, 성능 값은 작을수록 신호의 성능이 우수한 것으로 평가될 수 있다. 예를 들어, 성능 값이 미리 정의된 또는 적응적으로 결정되는 기준 값(예컨대, 0.1)보다 작은 경우의 파라미터들의 값을 선택할 수 있다. 예를 들어, 군집(C1)은 성능 값이 0.1 미만인 영역을 표시한다. 군집(C1)에 대응하는 모양 함수의 값은 0.2 내지 0.3이고, 주기의 값은 0.4 내지 0.6이고, 진폭의 값은 0.7 내지 0.9이다. 따라서, 전자 장치(100)는 후보 신호들 중 우수한 성능 값을 갖는 파형 특징 함수 및 타임 윈도우를 선택할 수 있다.
도 4b는 일 실시 예에 따른 파형 위치 함수의 선택을 설명하기 위한 개념도이다. 도 4a와 함께, 도 1, 3a, 3b, 4a를 참조하면, 전자 장치(100)는 분석 데이터(400)에 기초하여 선택된 파형 특징 함수에 대한 데이터 분포를 분석할 수 있다. 도 4b는 데이터 분포의 결과를 상자 수염 그림(box-and-whisker plot)으로 도시하나, 본 개시는 이에 한정되지 않고, 데이터 분포를 분석하는 임의의 방식으로 구현될 수 있음은 물론이다. 전자 장치(100)는 선택된 파형 특징 함수에 대한 데이터 분포에 기초하여 파형 위치 함수를 선택할 수 있다. 즉, 파형 특징 함수에 대응하는 신호의 주파수 도메인, 및/또는 시간 도메인에서의 위치가 결정될 수 있다.
도 4c는 일 실시 예에 따른 교차 연산 및 돌연변이 연산을 설명하기 위한 산점도이다. 도 4c와 함께, 도 1, 3a 및 3b를 참조하면, 산점도(scatter plot)는 후보 신호들 각각의 안정성 값과 식별성 값을 보여준다. x 축은 안정성 값에 대응하고, y 축은 식별성 값에 대응할 수 있다. 일 실시 예에 있어서, 안정성 값 및 식별성 값은 정규화된 값일 수 있다.
여기서, 안정성 값 및 식별성 값은 작을수록 우수한 것으로 평가될 수 있다. 그러나 본 개시는 이에 제한되지 않는다. 전자 장치(100)는 안정성 값이 제1 기준 값보다 작은 제1 세트를 선택하고, 식별성 값이 제2 기준 값보다 작은 제2 세트를 선택하고, 안정성 값이 제3 기준 값보다 작고 식별성 값이 제4 기준 값보다 작은 제3 세트를 선택할 수 있다. 전자 장치(100)는 제1 세트 및 제2 세트에 대해 교차 연산을 수행할 수 있다. 전자 장치(100)는 제3 세트에 대해 돌연변이 연산을 수행할 수 있다.
도 4d는 일 실시 예에 따른 후보 신호들 간의 파형 위치를 설명하기 위한 개념도이다. 도 4c와 함께, 도 1, 3a, 3b, 4a 및 4b를 참조하면, 전자 장치(100)는 파형 위치 함수에 기초하여 후보 신호들을 주파수 도메인 및 시간 도메인에 위치시킬 수 있다.
전자 장치(100)는 후보 신호들 각각이 파형 위치 함수의 주파수 영역(fR)에 위치하도록 제어할 수 있다. 주파수 영역(fR)은 전체 후보 신호들의 주파수 대역(예컨대, 18KHz~20KHz) 중 특정 후보 신호의 주파수 대역을 의미할 수 있다. 전자 장치(100)는 후보 신호들이 서로 지연 시간(tD)을 갖고 출력하도록 제어할 수 있다. 제1 후보 신호와 제1 후보 신호와 연속적으로 출력되는 제2 후보 신호는 제1 후보 신호와 지연 시간(tD)만큼 이격되어 출력될 수 있다. 전자 장치(100)는 후보 신호들이 서로 주파수 간격(fI)을 갖고 출력하도록 제어할 수 있다. 주파수 간격(fI)은 제1 후보 신호의 주파수 영역과 제2 후보 신호 간의 주파수 영역 간의 주파수 차이를 의미할 수 있다.
도 5는 일 실시 예에 따른 전자 장치가 공간 구조에 최적화된 신호를 이용하는 방법을 예시적으로 보여주는 개념도이다. 설명의 편의를 위해, 도 1의 전자 장치(100)의 기능, 구성, 및 동작은 전자 장치(500)의 기능, 구성, 및 동작과 유사하므로, 중복되는 내용은 생략한다. 도 1의 전자 장치(100)와 전자 장치(500)가 동일한 장치인 것을 가정하여 이하 설명한다.
도 5와 함께, 도 1 내지 2c를 참조하면, 전자 장치(500)는 비가청 음향 신호(IAS)를 출력할 수 있다. 예를 들어, 비가청 음향 신호(IAS)는 처프 신호일 수 있다. 일 실시 예에 있어서, 전자 장치(500)는 전자 장치(500)의 메모리 또는 스토리지에 저장된 최종 파라미터 세트(즉, 종료 조건을 만족하는 서브 파라미터 세트)에 기초하여 비가청 음향 신호(IAS)를 출력할 수 있다. 일 실시 예에 있어서, 전자 장치(100)는 외부 장치로부터 획득한 최종 파라미터 세트에 기초하여 비가청 음향 신호(IAS)를 출력할 수 있다.
일 실시 예에 있어서, 전자 장치(500)는 복수의 스피커들을 포함할 수 있다. 복수의 스피커들은 서로 다른 비가청 음향 신호(IAS)를 출력할 수 있다. 예를 들어, 제1 최종 파라미터 세트에 기초하여 제1 스피커에서 제1 비가청 음향 신호가 출력되고, 제2 최종 파라미터 세트에 기초하여 제2 스피커에서 제2 비가청 음향 신호가 출력될 수 있다. 즉, 전자 장치(500)는 스피커 별 최종 파라미터 세트에 기초하여 비가청 음향 신호(IAS)를 출력할 수 있다.
전자 장치(500)는 출력된 비가청 음향 신호(IAS)가 공간 구조(10)에 의해 반사된 제1 반사파 신호(RS)를 수신할 수 있다. 전자 장치(500)는 타임 윈도우에 기초하여 제1 반사파 신호(RS)를 나눌 수 있다. 일 실시 예에 있어서, 전자 장치(500)는 복수의 마이크들을 포함할 수 있다. 복수의 마이크들 각각은 제1 반사파 신호(RS)를 수신할 수 있다. 복수의 마이크들은 전자 장치(500)의 서로 다른 위치에 배치될 수 있다.
전자 장치(500)는 비가청 음향 신호(IAS)에 대응하는 기준 신호와, 수신된 제1 반사파 신호(RS) 간의 상관도(correlation)에 기초하여 신호 변화량을 획득할 수 있다. 상관도는 신호들 간의 상호 상관(cross-correlation)의 시간적인 변화를 의미할 수 있다. 예를 들어, 상관도가 높은 경우, 신호 변화량은 작은 것으로 판단되고, 상관도가 낮은 경우, 신호 변화량은 큰 것으로 판단될 수 있다.
신호 변화량이 미리 정의된 제1 임계 값을 초과한 경우, 전자 장치(500)는 공간 구조(10) 내에서 객체(예컨대, 사람)의 움직임이 발생했다고 판단할 수 있다. 제1 임계 값은 객체의 움직임에 대응하는 신호 변화량으로 미리 정의될 수 있다. 예를 들어, 공간 구조(10)의 제1 위치(12a)에 존재하는 사람이 제2 위치(12b)로 이동한 경우, 신호 변화량이 제1 임계 값을 초과할 수 있다. 전자 장치(500)는 신호 변화량에 기초하여 공간 구조(10) 내의 객체의 위치에 대응하는 객체 위치 정보를 획득할 수 있다. 즉, 전자 장치(500)는 객체에 대한 위치 추론을 수행할 수 있다.
일 실시 예에 있어서, 전자 장치(500)는 제1 반사파 신호(RS)에 기초하여 거리 정보를 획득할 수 있다. 전자 장치(500)는 거리 정보를 입력으로 하는 머신러닝 모델을 이용하여 각도 정보를 출력할 수 있다. 머신러닝 모델은 객체의 거리 정보를 입력으로 하여 객체의 각도 정보를 출력하도록 학습될 수 있다.
신호 변화량이 미리 정의된 제2 임계 값을 초과한 경우, 전자 장치(500)는 공간 구조(10)의 변경이 발생했다고 판단할 수 있다. 제2 임계 값은 공간 구조(10)의 변경에 대응하는 신호 변화량으로 미리 정의될 수 있다. 예를 들어, 공간 구조(10)의 제1 위치(11a)에 배치된 가구가 제2 위치(11b)로 변경된 경우, 신호 변화량이 제2 임계 값을 초과할 수 있다. 예를 들어, 공간 구조(10)의 환경 조건(예컨대, 온도)이 변경된 경우, 신호 변화량이 제2 임계 값을 초과할 수 있다. 전자 장치(500)는 파형 최적화 모델을 이용하여 비가청 음향 신호에 대응하는 최종 파라미터 세트를 업데이트할 수 있다. 여기서 파형 최적화 모델은 도 1 내지 4d에서 설명한 전자 장치(100)의 기능 및 동작을 의미할 수 있다. 파형 최적화 모델을 이용하여 최종 파라미터 세트를 업데이트하는 방법은 도 6b에서 상세하게 설명한다.
객체의 움직임에 대응하는 신호 변화량이 공간 구조(10)의 변경에 대응하는 신호 변화량보다 클 수 있다. 이에 따라, 제1 임계 값은 제2 임계 값보다 클 수 있다. 일 실시 예에 있어서, 제1 임계 값을 초과하는 신호 변화량이 발생한 경우, 제2 임계 값을 초과했다 하더라도 전자 장치는 공간 구조(10)의 변경이 발생한 것으로 판단하지 않을 수 있다.
일 실시 예에 있어서, 파형 최적화 모델은 신호 변화량 및 환경 조건 정보가 입력되는 최종 파라미터 세트가 출력되도록 학습된 모델일 수 있다.
일 실시 예에 있어서, 파형 최적화 모델은 도 1 내지 도 3d에서 설명한 유전 알고리즘을 이용한 파형 최적화 방법에 대응할 수 있다. 파형 최적화 모델의 세부 내용은 도 6b에서 상세하게 설명한다.
도 6a 내지 6c는 일 실시 예에 따른 위치 추론을 위한 신호 처리를 수행하는 방법을 보여주는 흐름도이다. 설명의 편의를 위해 도 1 내지 5에서 설명한 내용과 중복되는 내용은 생략한다.
도 6a와 함께, 도 5를 참조하면, 전자 장치(100)가 위치 추론을 위한 신호 처리를 수행하는 방법은 단계 S610 내지 S650을 포함할 수 있다. 일 실시 예에 있어서, 단계 S610 내지 S650은 전자 장치(500) 또는 전자 장치(500)의 프로세서에 의해 수행될 수 있다. 본 개시에 따른 위치 추론을 위한 신호 처리를 수행하는 방법은 도 6a에 도시된 바에 한정되지 않으며, 도 6a에 도시된 단계 중 어느 하나를 생략할 수 도 있고, 도 6a에 도시되지 않은 단계를 더 포함할 수도 있다.
단계 S610에서, 전자 장치(500)는 비가청 음향 신호를 출력할 수 있다. 예를 들어, 비가청 음향 신호는 도 3a 내지 3d에서 설명한 최종 신호에 대응할 수 있다. 전자 장치(500)는 최종 파라미터 세트에 기초하여 비가청 음향 신호를 출력할 수 있다.
단계 S620에서, 전자 장치(500)는 출력된 비가청 음향 신호가 공간 구조에 의해 반사된 제1 반사파 신호를 수신할 수 있다.
단계 S630에서, 전자 장치(500)는 비가청 음향 신호에 대응하는 기준 신호와, 수신된 제1 반사파 신호 간의 상관도에 기초하여 신호 변화량을 획득할 수 있다.
단계 S640에서, 전자 장치(500)는, 신호 변화량이 객체의 움직임에 대응하는 제1 임계 값을 초과한 경우, 신호 변화량에 기초하여 공간 구조 내의 객체의 위치에 대응하는 객체 위치 정보를 획득할 수 있다.
단계 S650에서, 전자 장치(500)는, 신호 변화량이 공간 구조의 변경에 대응하는 제2 임계 값을 초과한 경우, 파형 최적화 모델을 이용하여 비가청 음향 신호에 대응하는 최종 파라미터 세트를 업데이트할 수 있다. 일 실시 예에 있어서, 전자 장치(500)는, 신호 변화량이 환경 조건의 변경에 대응하는 제3 임계 값을 초과한 경우, 파형 최적화 모델을 이용하여 비가청 음향 신호에 대응하는 최종 파라미터 세트를 업데이트할 수 있다.
도 6b와 함께, 도 5를 참조하면, 일 실시 예에 따른 단계 S650은 단계 S651 내지 S659을 포함할 수 있다. 일 실시 예에 있어서, 단계 S651 내지 S659는 전자 장치(500) 또는 전자 장치(500)의 프로세서에 의해 수행될 수 있다. 단계 S650의 세부 단계들은 도 6b에 도시된 바에 한정되지 않으며, 도 6b에 도시된 단계 중 어느 하나를 생략할 수 도 있고, 도 6b에 도시되지 않은 단계를 더 포함할 수도 있다.
일 실시 예에 있어서, 도 6b에 도시된 단계들은 도 3a에 도시된 단계들에 대응할 수 있다. 예를 들어, 전자 장치(500)가 수행하는 단계 S651 내지 S658은 전자 장치(100)이 수행하는 단계 S310 내지 S380와 유사하므로, 중복되는 내용은 설명을 생략한다. 일 실시 예에 있어서, 도 6b에 도시된 단계들은 도 1 내지 5에서 설명한 적어도 하나의 실시 예들을 포함할 수 있다.
단계 S656에서, 종료 조건이 만족된 경우, 절차는 단계 S659로 이동한다. 단계 S659에서, 전자 장치(500)는 복수의 후보 신호들 중 성능 값이 제1 임계 값을 초과하는 신호에 대응하는 서브 파라미터 세트에 기초하여 최종 파라미터 세트를 업데이트할 수 있다. 일 실시 예에 있어서, 전자 장치(500)는 업데이트된 최종 파라미터 세트에 기초하여 비가청 음향 신호를 출력할 수 있다.
도 6b와 함께, 도 5를 참조하면, 일 실시 예에 따른 단계 S640은 단계 S642 및 S644을 포함할 수 있다. 일 실시 예에 있어서, 단계 S642 내지 S644는 전자 장치(500) 또는 전자 장치(500)의 프로세서에 의해 수행될 수 있다. 단계 S640의 세부 단계들은 도 6c에 도시된 바에 한정되지 않으며, 도 6c에 도시된 단계 중 어느 하나를 생략할 수 도 있고, 도 6c에 도시되지 않은 단계를 더 포함할 수도 있다.
단계 S642에서, 전자 장치(500)는 제1 반사파 신호에 기초하여 객체의 거리에 대응하는 거리 정보를 획득할 수 있다. 예를 들어, 거리 정보는 제1 반사파 신호와 비가청 음향 신호 간의 상호 상관 분석을 통해 획득될 수 있다.
단계 S644에서, 전자 장치(500)는 거리 정보를 입력으로 하는 머신러닝 모델에 기초하여 각도 정보를 획득할 수 있다. 전자 장치(500)는 학습된 머신러닝 모델을 메모리로 로드할 수 있다. 학습된 머신러닝 모델은 거리 정보에 기초하여 각도 정보를 출력할 수 있다. 일 실시 예에 있어서, 전자 장치(500)는 거리 정보와 각도 정보에 기초하여 공간 구조(10) 내의 객체 위치 정보를 획득할 수 있다.
도 7a 내지 7b는 일 실시 예에 따른 반사파 신호의 수신 강도를 예시적으로 보여주는 그래프들이다. 도 7a 내지 7b와 함께, 도 5를 참조하면, 전자 장치(500)는 제1 마이크(mic 1), 제2 마이크(mic 2), 및 제3 마이크(mic 3)을 포함할 수 있다. 다만, 전자 장치(500)의 개수는 이에 제한되지 않는다. 전자 장치(500)에서의 제1 내지 제3 마이크(mic 1, mic 2, mic 3)의 위치는 서로 다를 수 있다. 예를 들어, x 축은 시간에 대응하고, y 축은 마이크들 각각이 수신하는 반사파 신호의 수신 강도에 대응할 수 있다. 전자 장치(500)는 임의의 축을 기준으로 특정 각도(예컨대, 90°, 180°, 270°) 만큼 회전될 수 있다. 전자 장치(500)가 회전되지 않은 경우를 제1 각도(0°)로 회전된 것으로 가정하여 이하 설명한다. 즉, 전자 장치(500)가 제1 각도(0°)로 회전된 경우의 반사파 신호를 기준 신호로 정의할 수 있다.
도 7a를 참조하면, 전자 장치(500)의 공간 구조(10) 내의 위치는 변화하지 않고 특정 각도만큼 회전된 경우, 마이크들이 수신하는 반사파 신호들의 수신 강도를 예시적으로 보여준다. 도 7b를 참조하면, 전자 장치(500)의 공간 구조(10) 내의 위치가 변화되고 동시에 특정 각도만큼 회전된 경우, 마이크들이 수신하는 반사파 신호들의 수신 강도를 예시적으로 보여준다. 전자 장치(500)는 기준 신호 대비 반사파 신호의 신호 변화량에 기초하여 비가청 음향 신호에 대응하는 최종 파라미터 세트를 업데이트할지 여부를 결정할 수 있다.
도 8은 일 실시 예에 따른 객체 위치 정보를 획득하기 위한 머신러닝 모델을 예시적으로 보여주는 그래프이다. 도 8과 함께, 도 5 및 6b를 참조하면, 공간 구조(10) 내에서 객체(예컨대, 12a)의 움직임이 발생할 수 있다. 객체(예컨대, 12a)는 제1 시점(t1)부터 제5 시점(t5)까지 전자 장치(500)와의 특정 각도 및 특정 거리를 가지고 이동할 수 있다. 전자 장치(500)는 제1 내지 제3 마이크(mic 1, mic 2, mic 3)가 수신한 반사파 신호들 각각에 기초하여 객체의 거리에 대응하는 거리 정보를 획득할 수 있다.
설명의 편의를 위해, 각도 정보는 전자 장치(500)가 놓인 평면에서의 전자 장치(500)와 객체 간의 각도에 대응하고, 거리 정보는 전자 장치(500)와 객체 간의 거리에 대응하는 것으로 가정하여 이하 설명한다. 예를 들어, 제1 시점(t1)에서, 객체(예컨대, 12a)는 전자 장치(500) 기준 약 2m의 거리 및 60°의 각도로 떨어져 있고, 제2 시점(t2)에서, 객체(예컨대, 12a)는 전자 장치(500) 기준 약 1m의 거리 및 0°의 각도로 떨어져 있고, 제3 시점(t3)에서, 객체(예컨대, 12a)는 전자 장치(500) 기준 약 2m의 거리 및 -60°의 각도로 떨어져 있고, 제4 시점(t4)에서, 객체(예컨대, 12a)는 전자 장치(500) 기준 약 1m의 거리 및 0°의 각도로 떨어져 있고, 제5 시점(t5)에서, 객체(예컨대, 12a)는 전자 장치(500) 기준 약 2m의 거리 및 60°의 각도로 떨어져 있다.
전자 장치(500)는 거리 정보를 입력으로 하고, 거리 정보에 대응되는 각도 정보를 그라운드 트루스(ground truth)로 하여 머신러닝 모델을 학습시킬 수 있다. 그러나, 본 개시는 이에 제한되지 않으며, 외부 장치에 의해 머신러닝 모델이 학습될 수 있다. 전자 장치(500)는 학습된 머신러닝 모델을 이용할 수 있다. 예를 들어, 전자 장치(500)는 거리 정보를 입력으로 하는 머신러닝 모델에 기초하여 각도 정보를 획득(또는 추론)할 수 있다. 따라서, 전자 장치(500)는 거리 정보와 각도 정보에 기초하여 공간 구조(10) 내에서의 객체 위치 정보를 획득(또는 추론)할 수 있다.
도 9a 내지 9d는 일 실시 예에 따른 위치 추론의 결과를 예시적으로 보여주는 그래프들이다. 도 9a 내지 9d와 함께, 도 1 내지 8을 참조하면, x 축은 실제 값에 대응하고, y 축은 예측 값(거리 정보에 대응하는 거리 값 또는 각도 정보에 대응하는 각도 값)에 대응한다. 도 9a 및 9b는 일 실시 예에 따른 비가청 음향 신호가 최적화되지 않은 경우의 실제 값과 예측 값의 상관 관계를 보여준다. 도 9c 및 9d는 일 실시 예에 따른 비가청 음향 신호가 최적화된 경우의 실제 값과 예측 값의 상관 관계를 보여 준다. 도 9a 및 9b의 그래프들 대비 도 9c 및 9b의 그래프들의 상관 계수가 더 높다. 즉, 일 실시 예에 따른 파형 최적화 모델을 이용하여 비가청 음향 신호가 최적화된 경우의 위치 추론의 정확도가 상대적으로 높음을 알 수 있다.
도 10은 일 실시 예에 따른 전자 장치를 예시적으로 보여주는 블록도이다. 위치 추론을 위한 시스템(1000)(이하, 시스템)은 제1 전자 장치(1100) 및 제2 전자 장치(1200)를 포함할 수 있다.
도 10을 참조하면, 제1 전자 장치(1100)는 제1 마이크(1110), 제1 스피커(1120), 제1 메모리(1130), 및 제1 프로세서(1140)를 포함할 수 있다. 유사하게, 제2 전자 장치(1200)는 제2 마이크(1210), 제2 스피커(1220), 제2 메모리(1230), 및 제2 프로세서(1240)를 포함할 수 있다.
제1 및 제2 전자 장치(1100, 1200)의 구성, 기능, 동작은 도 1의 전자 장치(100) 또는 도 5의 전자 장치(500)와 유사하므로, 도 1 내지 9d에서 설명한 내용과 중복되는 내용은 이하 생략한다. 예를 들어, 제1 및 제2 마이크(1110, 1210)는 도 1의 마이크(140)와, 제1 및 제2 스피커(1120, 1220)은 도 1의 스피커(130)와, 제1 및 제2 메모리(1130, 1230)은 도 1의 메모리(160)와, 제1 및 제2 프로세서(1140, 1140)는 도 1의 프로세서(170)와 그 구성, 기능, 동작이 유사할 수 있다.
제1 스피커(1120)는 제1 비가청 음향 신호를 출력할 수 있다. 제1 프로세서(1140)는 제1 스피커(1120)로 하여금 제1 비가청 음향 신호를 출력하도록 제어할 수 있다.
제1 마이크(1110)는 출력된 제1 비가청 음향 신호가 공간 구조에 의해 반사된 제1 반사파 신호를 수신할 수 있다. 제1 프로세서(1140)는 제1 마이크(1110)로 하여금 제1 비가청 음향 신호를 수신하도록 제어할 수 있다.
제1 프로세서(1140)는 제1 마이크(1110)에 의해 수신된 제1 반사파 신호 및 제2 전자 장치(1200)에 의해 수신된 제1 비가청 음향 신호 중 적어도 어느 하나와, 제1 비가청 음향 신호에 대응하는 제1 기준 신호 간의 상관도에 기초하여 제1 신호 변화량을 획득할 수 있다. 여기서, 제1 기준 신호는 제1 마이크(1110)에 의해 수신된 제1 반사파 신호 또는 제2 전자 장치(1200)에 의해 수신된 제1 비가청 음향 신호와의 비교의 기준이 되는 신호를 의미하며, 미리 정의된 신호일 수 있다. 제1 기준 신호는 비교의 대상(예컨대, 제1 반사파 신호 또는 제1 비가청 음향 신호)에 따라 상이할 수 있다.
일 실시 예에 있어서, 제2 전자 장치(1200)의 제2 마이크(1210)는 제1 비가청 음향 신호를 수신할 수 있다. 제2 전자 장치(1200)는 수신된 제1 비가청 음향 신호에 대응하는 데이터를 제1 전자 장치(1100)로 송신할 수 있다.
제1 신호 변화량이 객체의 움직임에 대응하는 제1 임계 값을 초과한 경우, 제1 프로세서(1140)는 제1 신호 변화량에 기초하여 공간 구조 내의 객체의 위치에 대응하는 객체 위치 정보를 획득할 수 있다.
제1 신호 변화량이 공간 구조의 변경에 대응하는 제2 임계 값을 초과한 경우, 제1 프로세서(1140)는 파형 최적화 모델을 이용하여 제1 비가청 음향 신호에 대응하는 제1 최종 파라미터 세트를 업데이트할 수 있다.
일 실시 예에 있어서, 제1 프로세서(1140)는 제1 마이크(1110)에 의해 수신된 제1 반사파 신호 및 제2 전자 장치(1200)에 의해 수신된 제1 비가청 음향 신호 중 적어도 어느 하나에 기초하여, 제1 전자 장치(1100)의 위치 및 제2 전자 장치(1200)의 위치에 대응하는 장치 위치 정보를 획득할 수 있다.
일 실시 예에 있어서, 제1 프로세서(1140)는 객체 위치 정보 및 장치 위치 정보에 기초하여, 웨이크업 키워드에 대응하는 제1 사용자 음성 입력에 응답할 웨이크업(wake-up) 디바이스를 선택할 수 있다. 일 실시 예에 있어서, 제1 마이크(1110) 및 제2 마이크(1210) 중 적어도 하나는 제1 사용자 음성 입력을 수신할 수 있다. 일 실시 예에 있어서, 웨이크업 디바이스는 제1 전자 장치(1100) 또는 제2 전자 장치(1200)일 수 있다. 본 개시에 따르면, 복수의 전자 장치들(예컨대, 제1 전자 장치(1100) 및 제2 전자 장치(1200)) 중 하나의 전자 장치가 웨이크업 디바이스로 선택됨으로써, 복수의 전자 장치들 모두가 웨이크업하는 문제가 해소될 수 있다.
일 실시 예에 있어서, 웨이크업 디바이스는 제1 사용자 음성 입력에 응답하여 웨이크업할 수 있다. 웨이크업 디바이스는 제1 사용자 음성 입력 이후의 제2 사용자 음성 입력에 응답할 수 있다. 예를 들어, 제2 사용자 음성 입력은, 제1 전자 장치(1100) 및 제2 전자 장치(1200) 중 적어도 하나를 제어하는 명령에 대응할 수 있다.
일 실시 예에 있어서, 제2 스피커(1220)는 제2 비가청 음향 신호를 출력할 수 있다. 제2 마이크(1210)는 출력된 제2 비가청 음향 신호가 공간 구조에 의해 반사된 제2 반사파 신호와, 제1 마이크(1110)에 의해 출력된 제1 비가청 음향 신호를 수신할 수 있다. 제2 프로세서(1240)는 제2 마이크(1210)에 의해 수신된 제2 반사파 신호 및 제1 마이크(1110)에 의해 수신된 제2 비가청 음향 신호 중 적어도 하나와, 최종 비가청 음향 신호에 대응하는 제2 기준 신호 간의 상관도에 기초하여 제2 신호 변화량을 획득할 수 있다. 여기서, 제2 기준 신호는 제2 마이크(1210)에 의해 수신된 제2 반사파 신호 또는 제1 전자 장치(1100)에 의해 수신된 제2 비가청 음향 신호와의 비교의 기준이 되는 신호를 의미하며, 미리 정의된 신호일 수 있다. 제2 기준 신호는 비교의 대상(예컨대, 제2 반사파 신호 또는 제2 비가청 음향 신호)에 따라 상이할 수 있다.
제2 신호 변화량이 제1 임계 값을 초과한 경우, 제2 프로세서(1240)는 제2 신호 변화량에 기초하여 객체 위치 정보를 획득할 수 있다. 제2 신호 변화량이 제2 임계 값을 초과한 경우, 제2 프로세서(1240)는 파형 최적화 모델을 이용하여 제2 비가청 음향 신호에 대응하는 제2 최종 파라미터 세트를 업데이트할 수 있다.
일 실시 예에 있어서, 제1 프로세서(1140)는 제1 현재 세대에 대응하는 제1 파라미터 세트를 획득할 수 있다. 제1 프로세서(1140)는 제1 파라미터 세트에 기초하여, 제1 스피커(1120)로 하여금 제1 복수의 후보 신호들을 출력하도록 제어할 수 있다. 제1 프로세서(1140)는 제1 마이크(1110)로 하여금 제1 복수의 후보 신호들이 공간 구조에 의해 반사된 제1 반사파 신호들을 수신하도록 제어할 수 있다. 제1 프로세서(1140)는 제2 마이크(1210)에 의해 수신된 제1 복수의 후보 신호들에 대응하는 제1 데이터를 획득할 수 있다. 예를 들어, 제2 전자 장치(1200)는 제1 전자 장치(1100)로 제1 데이터를 송신할 수 있다. 제1 프로세서(1140)는 제1 반사파 신호 및 제1 데이터에 기초하여 제1 복수의 후보 신호들에 대한 제1 적합도 값을 획득할 수 있다. 제1 프로세서(1140)는 제1 적합도 값에 대응하는 제1 성능 값이 제1 임계 값을 초과하는지 여부인 제1 종료 조건을 식별할 수 있다. 제1 종료 조건이 만족되지 않는 경우, 제1 프로세서(1140)는 제1 성능 값 및 제1 파라미터 세트 간의 상관 관계에 기초하여 제1 다음 세대에 대응하는 제2 파라미터 세트를 획득할 수 있다.
일 실시 예에 있어서, 제1 복수의 후보 신호들 각각은 직접 신호와 간접 신호를 포함할 수 있다. 직접 신호와 간접 신호는 서로 다른 주파수 대역에 위치할 수 있다. 예를 들어, 직접 신호의 제1 주파수 대역과 간접 신호의 제2 주파수 대역은 서로 다를 수 있다. 직접 신호는 제2 전자 장치(1200)가 수신하기 위한 신호일 수 있다. 직접 신호는 제1 전자 장치(1100)에서 제2 전자 장치(1200)를 향해 직접적으로 방사된 신호일 수 있다. 간접 신호는 공간 구조에 방사되는 신호일 수 있다. 간접 신호는 제1 전자 장치(1100)의 모든 방향으로 방사될 수 있다. 간접 신호는 공간 구조에 의해 반사되어 제1 전자 장치(1100)가 수신하기 위한 신호일 수 있다.
일 실시 예에 있어서, 제1 프로세서(1140)는 제1 반사파 신호들에 기초하여 공간 구조에 방사되는 간접 신호에 대응하는 제1 적합도 값을 측정할 수 있다. 일 실시 예에 있어서, 제1 프로세서(1140)는 제1 데이터에 기초하여 제2 마이크(1210)에 의해 수신되는 직접 신호에 대응하는 제1 적합도 값을 측정할 수 있다.
일 실시 예에 있어서, 제1 종료 조건이 만족된 경우, 제1 프로세서(1140)는 제1 복수의 후보 신호들 중 제1 성능 값이 제1 임계 값을 초과하는 최종 신호에 대응하는 최종 파라미터 세트를 획득할 수 있다. 제1 프로세서(1140)는 최종 신호가 공간 구조에 의해 반사된 제2 반사파 신호에 대응하는 기준 신호를 획득할 수 있다. 일 실시 예에 있어서, 최종 신호는 직접 신호 및 간접 신호를 포함할 수 있다.
일 실시 예에 있어서, 제2 프로세서(1240)는 제2 현재 세대에 대응하는 제3 파라미터 세트를 획득할 수 있다. 제2 프로세서(1240)는 제3 파라미터 세트에 기초하여 제2 스피커(1220)로 하여금 제3 복수의 후보 신호들을 출력하도록 제어할 수 있다. 제2 프로세서(1240)는 제2 마이크(1210)로 하여금 복수의 후보 신호들이 공간 구조에 의해 반사된 제3 반사파 신호들을 수신하도록 제어할 수 있다.
일 실시 예에 있어서, 제1 프로세서(1140)는 제2 전자 장치(1200)로부터 제3 반사파 신호들에 대응하는 제3 데이터를 획득할 수 있다. 제1 프로세서(1140)는 제3 데이터에 기초하여 제3 복수의 후보 신호들에 대한 제2 적합도 값을 획득할 수 있다. 제1 프로세서(1140)는 제2 적합도 값에 대응하는 제2 성능 값이 제1 임계 값을 초과하는지 여부인 제2 종료 조건을 식별할 수 있다. 제2 종료 조건이 만족되지 않는 경우, 제1 프로세서(1140)는 제2 성능 값 및 제3 파라미터 세트 간의 상관 관계에 기초하여 제2 다음 세대에 대응하는 제4 파라미터 세트를 획득할 수 있다. 제2 종료 조건이 만족되지 않는 경우, 제1 프로세서(1140)는 제2 현재 세대를 제2 다음 세대로 교체할 수 있다.
일 실시 예에 있어서, 제2 프로세서(1240)는 제3 데이터에 기초하여 제3 복수의 후보 신호들에 대한 제2 적합도 값을 획득할 수 있다. 제2 프로세서(1240)는 제2 적합도 값에 대응하는 제2 성능 값이 제1 임계 값을 초과하는지 여부인 제2 종료 조건을 식별할 수 있다. 제2 종료 조건이 만족되지 않는 경우, 제2 프로세서(1240)는 제2 성능 값 및 제3 파라미터 세트 간의 상관 관계에 기초하여 제2 다음 세대에 대응하는 제4 파라미터 세트를 획득할 수 있다. 제2 종료 조건이 만족되지 않는 경우, 제2 프로세서(1240)는 제2 현재 세대를 제2 다음 세대로 교체할 수 있다.
도시되지 않았지만, 시스템(1000)은 n 개(n은 자연수)의 전자 장치들을 포함할 수 있다. 예시적으로, 시스템(1000)은 제3 전자 장치(미도시)를 더 포함할 수 있으며, 제1 전자 장치(1100) 또는 제2 전자 장치(1200)의 구성, 기능, 동작과 유사할 수 있다.
도 11은 일 실시 예에 따른 시스템이 공간 구조에 최적화된 신호를 생성하는 방법을 예시적으로 보여주는 개념도이다. 일 실시 예에 있어서, 시스템(1000)은 제1 전자 장치(1100) 및 적어도 하나의 제2 전자 장치(예컨대, 1200a, 1200b, 1200c)를 포함할 수 있다.
도 11과 함께, 도 10을 참조하면, 제1 전자 장치(1100)는 제1 현재 세대에 대응하는 제1 파라미터 세트를 획득할 수 있다. 제1 스피커(1120)는 제1 파라미터 세트에 기초하여 제1 복수의 후보 신호들(예컨대, S1a, S1b, S1c, S1d)을 출력할 수 있다. 일 실시 예에 있어서, 제1 스피커(1120)의 개수는 n 개일 수 있으며, n 개의 제1 스피커들 각각은 서로 다른 방향을 향하여 신호들을 출력할 수 있다. 예를 들어, n 개의 제1 스피커들 중 어느 하나는 제2 전자 장치(1200a)를 향하여 후보 신호(S1a)를 출력하고, 다른 하나는 제2 전자 장치(1200b)를 향하여 후보 신호(S1b)를 출력하고, 또다른 하나는 제2 전자 장치(1200c)를 향하여 후보 신호(S1c)를 출력하고, 나머지는 공간 구조(10)로 후보 신호(S1d)를 방사할 수 있다. 즉, 제1 전자 장치(1100)는 제2 전자 장치(예컨대, 1200a, 1200b, 1200c)를 향하여 개별적인 신호를 출력할 수 있다. 적어도 하나의 제1 마이크(1110)는 제1 복수의 후보 신호들(예컨대, S1d)이 공간 구조에 의해 반사된 제1 반사파 신호들(SR1d)을 수신할 수 있다.
제2 전자 장치(예컨대, 1200a)는 적어도 하나의 제2 마이크(1210)를 포함할 수 있다. 적어도 하나의 제2 마이크(1210)는 제1 복수의 후보 신호들(예컨대, S1a)를 수신할 수 있다. 제2 전자 장치(예컨대, 1200a)는 수신된 제1 복수의 후보 신호들(예컨대, S1a)에 대응하는 제1 데이터를 생성할 수 있다. 제1 전자 장치(1100)는 제2 전자 장치(예컨대, 1200a)로부터 제1 데이터를 획득(또는 수신)할 수 있다.
제1 전자 장치(1100)는 제1 반사파 신호들(SR1d) 및 제1 데이터에 기초하여 제1 복수의 후보 신호들(예컨대, S1a, S1b, S1c, S1d)에 대한 제1 적합도 값을 획득할 수 있다. 일 실시 예에 있어서, 제1 전자 장치(1100)는 제1 반사파 신호들(SR1d)에 기초하여 공간 구조(10)에 방사되는 간접 신호에 대응하는 제1 적합도 값을 측정할 수 있다. 여기서, 간접 신호는 후보 신호(S1d)에 대응할 수 있다. 제1 전자 장치(1100)는 제1 데이터에 기초하여, 직접 신호에 대응하는 제1 적합도 값을 측정할 수 있다. 여기서, 직접 신호는 후보 신호(예컨대, S1a, S1b, S1c)에 대응할 수 있다. 일 실시 예에 있어서, 직접 신호의 주파수 대역과 간접 신호의 주파수 대역은 서로 다를 수 있다.
제1 전자 장치(1100)는 제1 적합도 값에 대응하는 제1 성능 값이 제1 임계 값을 초과하는지 여부인 제1 종료 조건을 식별할 수 있다. 제1 종료 조건이 만족되지 않은 경우, 제1 전자 장치(1100)는 제1 성능 값 및 제1 파라미터 세트 간의 상관 관계에 기초하여 제1 다음 세대에 대응하는 제2 파라미터 세트를 획득할 수 있다.
도 12a 및 12b는 일 실시 예에 따른 시스템이 공간 구조에 최적화된 신호를 이용하는 방법을 예시적으로 보여주는 개념도들이다. 도 12a와 함께, 도 10 및 11을 참조하면, 제1 종료 조건이 만족된 경우, 제1 전자 장치(1100)는 제1 복수의 후보 신호들(예컨대, S1a, S1b, S1c, S1d) 중 제1 종료 조건을 만족하는 최종 신호(예컨대, IAS1a, IAS1b, IAS1c, IAS1d)에 대응하는 최종 파라미터 세트를 획득할 수 있다. 최종 신호는 직접 신호(IAS1a, IAS1b, IAS1c) 및 간접 신호(IASd1)를 포함할 수 있다. 제1 전자 장치(1100)는 간접 신호(IAS1d)가 공간 구조(10)에 의해 반사된 제2 반사파 신호(RS1d)를 획득할 수 있다.
일 실시 예에 있어서, 제1 전자 장치(1100)는 제1 전자 장치(1100)가 수신한 제2 반사파 신호(RS1d) 및 제2 전자 장치(예컨대, 1200a, 1200b, 1200c)가 수신한 최종 신호(예컨대, IAS1a, IAS1b, IAS1c) 중 적어도 하나에 기초하여 제1 전자 장치(1100)의 위치 및 제2 전자 장치(예컨대, 1200a, 1200b, 1200c)의 위치에 대응하는 장치 위치 정보를 획득할 수 있다.
도 12b와 함께, 도 10 및 11을 참조하면, 제2 전자 장치(예컨대, 1200a, 1200b, 1200c)는 제2 현재 세대에 대응하는 제3 파라미터 세트를 획득할 수 있다. 제2 전자 장치(예컨대, 1200a, 1200b, 1200c)는 제3 파라미터 세트에 기초하여 제3 복수의 후보 신호들을 출력할 수 있다. 제2 전자 장치(예컨대, 1200a, 1200b, 1200c)는 제3 반사파 신호들에 기초하여 제3 복수의 후보 신호들에 대한 제2 적합도 값을 획득할 수 있다. 제2 전자 장치(예컨대, 1200a, 1200b, 1200c)는 제2 적합도 값에 대응하는 제2 성능 값이 제1 임계 값을 초과하는지 여부는 제2 종료 조건을 식별할 수 있다. 종료 조건이 만족되지 않는 경우, 제2 전자 장치(예컨대, 1200a, 1200b, 1200c)는 제2 성능 값 및 제3 파라미터 세트 간의 상관 관계에 기초하여 제2 다음 세대에 대응하는 제4 파라미터 세트를 획득할 수 있다. 종료 조건이 만족된 경우, 제2 전자 장치(예컨대, 1200a, 1200b, 1200c)는 제3 복수의 후보 신호들 중 제1 종료 조건을 만족하는 최종 신호(예컨대, IAS2a, IAS2b, IAS2c, IAS2d)에 대응하는 최종 파라미터 세트를 획득할 수 있다. 최종 신호는 직접 신호 IAS2a, IAS2b, IAS2c) 및 간접 신호(IAS2d)를 포함할 수 있다. 제2 전자 장치(예컨대, 1200a, 1200b, 1200c)는 간접 신호(IAS2d)가 공간 구조(10)에 의해 반사된 제3 반사파 신호(RS2d)를 획득할 수 있다. 따라서, 공간 구조(10) 내에 복수의 제2 전자 장치들(예컨대, 1200a, 1200b, 1200c)이 존재하는 경우, 제2 전자 장치들(예컨대, 1200a, 1200b, 1200c) 각각은 서로 다른 최종 신호를 출력할 수 있다.
일 실시 예에 있어서, 제1 전자 장치(1100)는 제1 전자 장치(1100)가 수신한 제2 반사파 신호(RS1d), 제2 전자 장치(예컨대, 1200a, 1200b, 1200c)가 수신한 최종 신호(예컨대, IAS1a, IAS1b, IAS1c), 제2 전자 장치(예컨대, 1200a, 1200b, 1200c)가 수신한 제3 반사파 신호(RS2d) 중 적어도 하나에 기초하여 제1 전자 장치(1100)의 위치 및 제2 전자 장치(예컨대, 1200a, 1200b, 1200c)의 위치에 대응하는 장치 위치 정보를 획득할 수 있다.
도 13a 및 13b는 일 실시 예에 따른 시스템이 웨이크업 디바이스를 선택하는 방법을 예시적으로 보여주는 개념도들이다. 도 13a와 함께, 도 10 내지 12를 참조하면, 제1 위치(12a)에 존재하는 사람이 제2 위치(12b)로 이동한 경우를 가정하여 이하 설명한다. 제1 전자 장치(1100) 및/또는 제2 전자 장치(예컨대, 1200a, 1200b, 1200c)는 최종 신호를 이용하여 사람의 공간 구조 내의 위치를 실시간으로 추론할 수 있다. 예를 들어, 제1 전자 장치(1100)와 사람이 위치한 제2 위치(12b) 간의 거리는 제1 거리(D1)이고, 제2 전자 장치(1200a)와 사람이 위치한 제2 위치(12b) 간의 거리는 제2 거리(D2)인 것으로 추론될 수 있다.
도 13b와 함께, 도 1 내지 13a를 참조하면, 제1 전자 장치(1100) 및 제2 전자 장치(예컨대, 1200a, 1200b, 1200c) 제2 위치(12b)에 존재하는 사람이 발성한 웨이크업 키워드를 포함하는 문장을 제1 사용자 음성 입력으로 수신할 수 있다. 제1 전자 장치(1100)는 객체 위치 정보 및 장치 위치 정보에 기초하여 제1 사용자 음성 입력에 응답할 웨이크업 디바이스를 선택할 수 있다. 예를 들어, 객체 위치 정보 중 사람이 위치한 제2 위치(12b) 간의 거리가 가장 가까운 장치가 웨이크업 디바이스로 선택될 수 있다. 예를 들어, 제1 거리(D1)보다 제2 거리(D2)가 짧은 경우, 웨이크업 디바이스는 제2 전자 장치(1200a)일 수 있다. 예를 들어, 제2 거리(D2)보다 제1 거리(D1)가 짧은 경우, 웨이크업 디바이스는 제1 전자 장치(1100)일 수 있다. 따라서, 제1 사용자 음성 입력을 수신한 장치가 복수개라 하더라도, 하나의 장치만 제1 사용자 음성 입력에 응답할 수 있다.
일 실시 예에 있어서, 선택된 웨이크업 디바이스는 제1 사용자 음성 입력에 응답하여 웨이크업할 수 있다. 선택된 웨이크업 디바이스는 제1 사용자 음성 입력 이후의 제2 사용자 음성 입력을 수신할 수 있다.
일 실시 예에 있어서, 기기로 읽을 수 있는 저장매체는, 비일시적(non-transitory) 저장매체의 형태로 제공될 수 있다. 여기서, ‘비일시적 저장매체'는 실재(tangible)하는 장치이고, 신호(signal)(예: 전자기파)를 포함하지 않는다는 것을 의미할 뿐이며, 이 용어는 데이터가 저장매체에 반영구적으로 저장되는 경우와 임시적으로 저장되는 경우를 구분하지 않는다. 예로, '비일시적 저장매체'는 데이터가 임시적으로 저장되는 버퍼를 포함할 수 있다.
일 실시 예에 있어서, 본 명세서에 개시된 다양한 실시예들에 따른 방법은 컴퓨터 프로그램 제품(computer program product)에 포함되어 제공될 수 있다. 컴퓨터 프로그램 제품은 상품으로서 판매자 및 구매자 간에 거래될 수 있다. 컴퓨터 프로그램 제품은 기기로 읽을 수 있는 저장 매체(예: compact disc read only memory (CD-ROM))의 형태로 배포되거나, 또는 어플리케이션 스토어를 통해 또는 두개의 사용자 장치들(예: 스마트폰들) 간에 직접, 온라인으로 배포(예: 다운로드 또는 업로드)될 수 있다. 온라인 배포의 경우에, 컴퓨터 프로그램 제품(예: 다운로더블 앱(downloadable app))의 적어도 일부는 제조사의 서버, 어플리케이션 스토어의 서버, 또는 중계 서버의 메모리와 같은 기기로 읽을 수 있는 저장 매체에 적어도 일시 저장되거나, 임시적으로 생성될 수 있다.
Claims (51)
- 위치 추론(localization)을 위한 전자 장치(100)에 있어서,
비가청 음향 신호를 출력하는 스피커(130);
상기 출력된 비가청 음향 신호가 공간 구조에 의해 반사된 제1 반사파 신호를 수신하는 적어도 하나의 마이크(140);
하나 이상의 인스트럭션을 저장하는 메모리(160); 및
상기 메모리에 저장된 하나 이상의 인스트럭션을 실행하는 적어도 하나의 프로세서(170)를 포함하되, 상기 적어도 하나의 프로세서(170)는,
상기 비가청 음향 신호에 대응하는 기준 신호와, 상기 수신된 제1 반사파 신호 간의 상관도(correlation)에 기초하여 신호 변화량을 획득하고,
상기 신호 변화량이 객체의 움직임에 대응하는 제1 임계 값을 초과한 경우, 상기 신호 변화량에 기초하여 상기 공간 구조 내의 상기 객체의 위치에 대응하는 객체 위치 정보를 획득하고,
상기 신호 변화량이 상기 공간 구조의 변경에 대응하는 제2 임계 값을 초과한 경우, 파형 최적화 모델을 이용하여 상기 비가청 음향 신호에 대응하는 최종 파라미터 세트를 업데이트하는, 상기 하나 이상의 인스트럭션을 실행하는, 전자 장치(100).
- 제1항에 있어서,
상기 파형 최적화 모델을 이용하여 상기 비가청 음향 신호에 대응하는 상기 최종 파라미터 세트를 업데이트하는, 상기 하나 이상의 인스트럭션은,
(a) 현재 세대(generation)에 대응하는 제1 파라미터 세트를 획득하고,
(b) 상기 제1 파라미터 세트에 기초하여, 상기 스피커로 하여금 복수의 후보 신호들을 출력하도록 제어하고,
(c) 상기 적어도 하나의 마이크로 하여금 상기 복수의 후보 신호들이 상기 공간 구조에 의해 반사된 제2 반사파 신호들을 수신하도록 제어하고,
(d) 상기 제2 반사파 신호에 기초하여 상기 복수의 후보 신호들에 대한 적합도(fitness) 값을 측정하고,
(e) 상기 적합도 값들에 기초한 상기 복수의 후보 신호들에 대한 성능 값이 제1 임계 값을 초과하는지 여부인 종료 조건을 판단하고,
(f) 상기 종료 조건이 만족되지 않는 경우, 상기 성능 값 및 상기 제1 파라미터 세트 간의 상관 관계에 기초하여 다음 세대에 대응하는 제2 파라미터 세트를 획득하고,
(g) 상기 종료 조건이 만족된 경우, 상기 복수의 후보 신호들 중 상기 성능 값이 상기 제1 임계 값을 초과하는 신호에 대응하는 서브 파라미터 세트에 기초하여 상기 최종 파라미터 세트를 업데이트하는, 상기 하나 이상의 인스트럭션을 포함하는, 전자 장치(100).
- 제2항에 있어서,
상기 적어도 하나의 프로세서(170)는,
상기 종료 조건이 만족되지 않는 경우, 상기 현재 세대를 상기 다음 세대로 교체하여 상기 (b) 내지 (f) 동작을 반복적으로(iteratively) 수행하는, 상기 하나 이상의 인스트럭션을 더 포함하는, 전자 장치(100).
- 제1항 내지 제3항에 있어서,
상기 파형 최적화 모델은, 상기 신호 변화량 및 환경 조건 정보가 입력되면 상기 최종 파라미터 세트를 출력하도록 학습된, 전자 장치(100).
- 제1항 내지 제4항에 있어서,
상기 객체 위치 정보는, 상기 전자 장치와 상기 객체 간의 거리에 대응하는 거리 정보, 및 상기 전자 장치와 상기 객체가 형성하는 각도에 대응하는 각도 정보를 포함하는, 전자 장치(100).
- 제5항에 있어서,
상기 객체 위치 정보를 획득하는, 상기 하나 이상의 인스트럭션은,
상기 제1 반사파 신호에 기초하여 상기 거리 정보를 획득하고,
상기 거리 정보를 입력으로 하는 머신러닝 모델을 이용하여 상기 각도 정보를 출력하는, 상기 하나 이상의 인스트럭션을 포함하는, 전자 장치(100).
- 제6항에 있어서,
상기 머신러닝 모델은 상기 거리 정보를 입력으로 하여 상기 각도 정보를 출력하도록 학습된, 전자 장치(100).
- 위치 추론(localization)을 위한 전자 장치(100)에 있어서,
스피커(130);
적어도 하나의 마이크(140);
하나 이상의 인스트럭션을 저장하는 메모리(160); 및
상기 메모리에 저장된 하나 이상의 인스트럭션을 실행하는 적어도 하나의 프로세서(170)를 포함하되, 상기 적어도 하나의 프로세서(170)는,
(a) 현재 세대에 대응하는 제1 파라미터 세트를 획득하고,
(b) 상기 제1 파라미터 세트에 기초하여, 상기 스피커로 하여금 복수의 후보 신호들을 출력하도록 제어하고,
(c) 상기 적어도 하나의 마이크로 하여금 상기 복수의 후보 신호들이 공간 구조에 의해 반사된 제1 반사파 신호들을 수신하도록 제어하고,
(d) 상기 제1 반사파 신호들에 기초하여 상기 복수의 후보 신호들에 대한 적합도(fitness) 값을 획득하고,
(e) 상기 적합도 값에 대응하는 성능 값이 제1 임계 값을 초과하는지 여부인 종료 조건을 판단하고,
(f) 상기 종료 조건이 만족되지 않는 경우, 상기 성능 값 및 상기 제1 파라미터 세트 간의 상관 관계에 기초하여 다음 세대에 대응하는 제2 파라미터 세트를 획득하는, 상기 하나 이상의 인스트럭션을 실행하는, 전자 장치(100).
- 제8항에 있어서,
상기 적어도 하나의 프로세서(170)는,
상기 종료 조건이 만족되지 않는 경우, 상기 현재 세대를 상기 다음 세대로 교체하여 상기 (b) 내지 (f) 동작을 반복적으로(iteratively) 수행하는, 상기 하나 이상의 인스트럭션을 더 실행하는, 전자 장치(100).
- 제8항 및 제9항에 있어서,
상기 적어도 하나의 프로세서(170)는,
상기 종료 조건이 만족된 경우, 상기 복수의 후보 신호들 중 상기 성능 값이 상기 제1 임계 값을 초과하는 최종 신호에 대응하는 최종 파라미터 세트를 획득하고,
상기 최종 신호에 대응하는 기준(reference) 신호를 획득하는, 상기 하나 이상의 인스트럭션을 더 실행하는, 전자 장치(100).
- 제10항에 있어서,
상기 제1 및 제2 파라미터 세트 중 적어도 하나는 상기 복수의 후보 신호들 중 하나에 대응하는 복수의 서브 파라미터 세트들을 포함하고,
상기 복수의 서브 파라미터 세트들 및 상기 최종 파라미터 중 적어도 하나는, 대응하는 신호의 파형 특징 함수, 파형 위치 함수, 및 타임 윈도우(time window) 중 적어도 하나를 포함하고,
상기 파형 특징 함수는 상기 대응하는 신호의 진폭, 주기, 및 모양 중 적어도 하나의 값을 포함하고,
상기 파형 위치 함수는 상기 대응하는 신호의 주파수 범위, 주파수 간격, 및 지연 시간 중 적어도 하나의 값을 포함하는, 전자 장치(100).
- 제8항 내지 제11항에 있어서,
상기 적합도 값은 안정성(stability) 값과 식별성(identification) 값을 포함하고,
상기 안정성 값은 상기 제1 반사파 신호들 중 어느 하나의 제1 시점에 대응하는 측정 값과 제2 시점에 대응하는 측정 값의 상호 유사도(similarity) 값이고,
상기 식별성 값은 상기 복수의 후보 신호들 중 어느 하나와 대응하는 반사파 신호의 신호 유사도 값인, 전자 장치(100).
- 제12항에 있어서,
상기 성능 값은 상기 복수의 후보 신호들 각각의 상기 안정성 값과 상기 식별성 값을 변수로 하는 결정 함수의 반환 값이고,
상기 결정 함수는 상기 안정성 값 및 상기 식별성 값 중 어느 하나에 가중하여 상기 성능 값을 반환하는, 전자 장치(100).
- 제12항 및 제13항에 있어서,
상기 제2 파라미터 세트를 획득하는, 상기 하나 이상의 인스트럭션은,
상기 상관 관계에 대응하는 분석 데이터를 획득하고,
상기 분석 데이터 및 상기 성능 값에 기초하여 파형 특징 함수(waveform feature function) 및 타임 윈도우를 선택하고,
상기 선택된 파형 특징 함수 및 상기 선택된 타임 윈도우 중 적어도 하나에 대해 교차 연산 및 돌연변이 연산 중 적어도 하나를 수행함으로써, 상기 제2 파라미터 세트를 획득하는, 상기 하나 이상의 인스트럭션을 포함하는 전자 장치(100).
- 제14항에 있어서,
상기 제2 파라미터 세트를 획득하는, 상기 하나 이상의 인스트럭션은,
상기 성능 값, 상기 선택된 파형 특징 함수, 상기 선택된 타임 윈도우 중 적어도 하나에 기초하여 파형 위치 함수(waveform location function)를 획득하는, 상기 하나 이상의 인스트럭션을 더 포함하는, 전자 장치(100).
- 제14항 및 제15항에 있어서,
상기 분석 데이터 및 상기 성능 값에 기초하여 파형 특징 함수(waveform feature function) 및 타임 윈도우를 선택하는, 상기 하나 이상의 인스트럭션은,
상기 안정성 값이 제2 임계 값을 초과하는 상기 파형 특징 함수 및 상기 타임 윈도우를 갖는 제1 세트를 선택하고,
상기 식별성 값이 제3 임계 값을 초과하는 상기 파형 특징 함수 및 상기 타임 윈도우를 갖는 제2 세트를 선택하고,
상기 안정성 값이 제4 임계 값을 초과하고, 상기 식별성 값이 제5 임계 값을 초과하는 상기 파형 특징 함수 및 상기 타임 윈도우를 갖는 제3 세트를 선택하는, 상기 하나 이상의 인스트럭션을 포함하는, 전자 장치(100).
- 제16항에 있어서,
상기 선택된 파형 특징 함수 및 상기 선택된 타임 윈도우 중 적어도 하나에 대해 교차 연산 및 돌연변이 연산을 수행함으로써, 상기 제2 파라미터 세트를 획득하는, 상기 하나 이상의 인스트럭션은,
상기 제1 세트 및 상기 제2 세트에 대해 상기 교차 연산을 수행하고,
상기 제3 세트에 대해 상기 돌연변이 연산을 수행하고,
상기 교차 연산 결과 및 상기 돌연변이 연산 결과에 기초하여 상기 제2 파라미터 세트를 획득하는, 상기 하나 이상의 인스트럭션을 포함하는, 전자 장치(100).
- 제8항 내지 제17항에 있어서,
상기 제2 파라미터 세트를 획득하는, 상기 하나 이상의 인스트럭션은,
상기 전자 장치가 위치한 공간의 온도, 기압, 습도, 및 밀도 중 적어도 하나를 포함하는 환경 조건(ambient condition) 정보를 획득하고,
상기 환경 조건 정보에 기초하여 상기 공간의 음속을 획득하고,
상기 음속에 더 기초하여 상기 다음 세대에 대응하는 상기 제2 파라미터 세트를 획득하는, 상기 하나 이상의 인스트럭션을 포함하는 전자 장치(100).
- 제8항 내지 제18항에 있어서,
상기 제2 파라미터 세트를 획득하는, 상기 하나 이상의 인스트럭션은,
환경 조건(ambient condition) 정보, 상기 적합도 값, 상기 제1 파라미터 세트 중 적어도 하나를 입력으로 하는 제2 머신러닝 모델을 이용하여 상기 제2 파라미터 세트를 출력하는, 상기 하나 이상의 인스트럭션을 포함하는 전자 장치(100).
- 위치 추론(localization)을 위한 방법에 있어서,
비가청 음향 신호를 출력하는 단계(S610);
상기 출력된 비가청 음향 신호가 공간 구조에 의해 반사된 제1 반사파 신호를 수신하는 단계(S620);
상기 비가청 음향 신호에 대응하는 기준 신호와, 상기 수신된 제1 반사파 신호 간의 상관도(correlation)에 기초하여 신호 변화량을 획득하는 단계(S630);
상기 신호 변화량이 객체의 움직임에 대응하는 제1 임계 값을 초과한 경우, 상기 신호 변화량에 기초하여 상기 공간 구조 내의 상기 객체의 위치에 대응하는 객체 위치 정보를 획득하는 단계(S640); 및
상기 신호 변화량이 상기 공간 구조의 변경에 대응하는 제2 임계 값을 초과한 경우, 파형 최적화 모델을 이용하여 상기 비가청 음향 신호에 대응하는 최종 파라미터 세트를 업데이트하는 단계(S650)를 포함하는, 방법.
- 제20항에 있어서,
상기 파형 최적화 모델을 이용하여 상기 비가청 음향 신호에 대응하는 상기 최종 파라미터 세트를 업데이트하는 단계는,
(a) 현재 세대(generation)에 대응하는 제1 파라미터 세트를 획득하는 단계(S651);
(b) 상기 제1 파라미터 세트에 기초하여, 복수의 후보 신호들을 출력하는 단계(S652);
(c) 상기 복수의 후보 신호들이 상기 공간 구조에 의해 반사된 제2 반사파 신호들을 수신하는 단계(S653);
(d) 상기 제2 반사파 신호에 기초하여 상기 복수의 후보 신호들에 대한 적합도(fitness) 값을 측정하는 단계(S654);
(e) 상기 적합도 값들에 기초한 상기 복수의 후보 신호들에 대한 성능 값이 제1 임계 값을 초과하는지 여부인 종료 조건을 판단하는 단계(S655);
(f) 상기 종료 조건이 만족되지 않는 경우, 상기 성능 값 및 상기 제1 파라미터 세트 간의 상관 관계에 기초하여 다음 세대에 대응하는 제2 파라미터 세트를 획득하는 단계(S657); 및
(g) 상기 종료 조건이 만족된 경우, 상기 복수의 후보 신호들 중 상기 성능 값이 상기 제1 임계 값을 초과하는 신호에 대응하는 서브 파라미터 세트에 기초하여 상기 최종 파라미터 세트를 업데이트하는 단계(S659)를 포함하는, 방법.
- 제21항에 있어서,
상기 파형 최적화 모델을 이용하여 상기 비가청 음향 신호에 대응하는 상기 최종 파라미터 세트를 업데이트하는 단계는,
상기 종료 조건이 만족되지 않는 경우, 상기 현재 세대를 상기 다음 세대로 교체하여 상기 (b) 내지 (f) 동작을 반복적으로(iteratively) 수행하는 단계(S658)를 더 포함하는, 방법.
- 제20항 내지 제22항에 있어서,
상기 파형 최적화 모델은, 상기 신호 변화량 및 환경 조건 정보를 입력으로 하여 상기 최종 파라미터 세트를 출력하도록 학습된, 방법.
- 제20항 내지 제23항에 있어서,
상기 객체 위치 정보는, 상기 위치 추론을 위한 방법을 수행하는 전자 장치와 상기 객체 간의 거리에 대응하는 거리 정보, 및 상기 전자 장치 기준 상기 객체가 위치하는 방향에 대응하는 각도 정보를 포함하는, 방법.
- 제24항에 있어서,
상기 객체 위치 정보를 획득하는 단계는,
상기 제1 반사파 신호에 기초하여 상기 거리 정보를 획득하는 단계(S642); 및,
상기 거리 정보를 입력으로 하는 머신러닝 모델을 이용하여 상기 각도 정보를 출력하는 단계(S644)를 포함하는, 방법.
- 제25항에 있어서,
상기 머신러닝 모델은 상기 거리 정보를 입력으로 하여 상기 각도 정보를 출력하도록 학습된, 방법.
- 위치 추론(localization)을 위한 방법에 있어서,
(a) 현재 세대에 대응하는 제1 파라미터 세트를 획득하는 단계(S310);
(b) 상기 제1 파라미터 세트에 기초하여, 복수의 후보 신호들을 출력하는 단계(S320);
(c) 상기 적어도 하나의 마이크로 하여금 상기 복수의 후보 신호들이 공간 구조에 의해 반사된 제1 반사파 신호들을 수신하는 단계(S330);
(d) 상기 제1 반사파 신호들에 기초하여 상기 복수의 후보 신호들에 대한 적합도(fitness) 값을 획득하는 단계(S340);
(e) 상기 적합도 값에 대응하는 성능 값이 제1 임계 값을 초과하는지 여부인 종료 조건을 판단하는 단계(S350); 및
(f) 상기 종료 조건이 만족되지 않는 경우, 상기 성능 값 및 상기 제1 파라미터 세트 간의 상관 관계에 기초하여 다음 세대에 대응하는 제2 파라미터 세트를 획득하는 단계(S370)를 포함하는, 방법.
- 제27항에 있어서,
상기 종료 조건이 만족되지 않는 경우, 상기 현재 세대를 상기 다음 세대로 교체하여 상기 (b) 내지 (f) 단계를 반복적으로(iteratively) 수행하는 단계(S380)를 더 포함하는, 방법.
- 제27항 및 제28항에 있어서,
상기 종료 조건이 만족된 경우, 상기 복수의 후보 신호들 중 상기 종료 조건을 만족하는 최종 신호에 대응하는 최종 파라미터 세트를 획득하는 단계(S362); 및
상기 최종 신호에 대응하는 기준(reference) 신호를 획득하는 단계(S364)를 더 포함하는, 방법.
- 제29항에 있어서,
상기 제1 및 제2 파라미터 세트 중 적어도 하나는 상기 복수의 후보 신호들 중 하나에 대응하는 복수의 서브 파라미터 세트들을 포함하고,
상기 복수의 서브 파라미터 세트들 및 상기 최종 파라미터 중 적어도 하나는, 대응하는 신호의 파형 특징 함수, 파형 위치 함수, 및 타임 윈도우(time window) 중 적어도 하나를 포함하고,
상기 파형 특징 함수는 상기 대응하는 신호의 진폭, 주기, 및 모양 중 적어도 하나의 값을 포함하고,
상기 파형 위치 함수는 상기 대응하는 신호의 주파수 범위, 주파수 간격, 및 지연 시간 중 적어도 하나의 값을 포함하는, 방법.
- 제27항 내지 제30항에 있어서,
상기 적합도 값은 안정성(stability) 값과 식별성(identification) 값을 포함하고,
상기 안정성 값은 상기 제1 반사파 신호들 중 어느 하나의 제1 시점에 대응하는 측정 값과 제2 시점에 대응하는 측정 값의 상호 유사도(similarity) 값이고,
상기 식별성 값은 상기 복수의 후보 신호들 중 어느 하나와 대응하는 반사파 신호의 신호 유사도 값인, 방법.
- 제31항에 있어서,
상기 성능 값은 상기 복수의 후보 신호들 각각의 상기 안정성 값과 상기 식별성 값을 변수로 하는 결정 함수의 반환 값이고,
상기 결정 함수는 상기 안정성 값 및 상기 식별성 값 중 어느 하나에 가중하여 상기 성능 값을 반환하는, 방법.
- 제31항 및 제32항에 있어서,
상기 제2 파라미터 세트를 획득하는 단계는,
상기 상관 관계에 대응하는 분석 데이터를 획득하는 단계(S371);
상기 분석 데이터 및 상기 성능 값에 기초하여 파형 특징 함수(waveform feature function) 및 타임 윈도우를 선택하는 단계(S372); 및
상기 선택된 파형 특징 함수 및 상기 선택된 타임 윈도우 중 적어도 하나에 대해 교차 연산 및 돌연변이 연산 중 적어도 하나를 수행함으로써, 상기 제2 파라미터 세트를 획득하는 단계(S373)를 포함하는 방법.
- 제33항에 있어서,
상기 제2 파라미터 세트를 획득하는 단계는,
상기 성능 값, 상기 선택된 파형 특징 함수, 상기 선택된 타임 윈도우 중 적어도 하나에 기초하여 파형 위치 함수(waveform location function)를 획득하는 단계를 더 포함하는 방법.
- 제33항 및 제34항에 있어서,
상기 분석 데이터 및 상기 성능 값에 기초하여 파형 특징 함수(waveform feature function) 및 타임 윈도우를 선택하는 단계는,
상기 안정성 값이 제2 임계 값을 초과하는 상기 파형 특징 함수 및 상기 타임 윈도우를 갖는 제1 세트를 선택하는 단계;
상기 식별성 값이 제3 임계 값을 초과하는 상기 파형 특징 함수 및 상기 타임 윈도우를 갖는 제2 세트를 선택하는 단계; 및
상기 안정성 값이 제4 임계 값을 초과하고, 상기 식별성 값이 제5 임계 값을 초과하는 상기 파형 특징 함수 및 상기 타임 윈도우를 갖는 제3 세트를 선택하는 단계를 포함하는, 방법.
- 제35항에 있어서,
상기 선택된 파형 특징 함수 및 상기 선택된 타임 윈도우 중 적어도 하나에 대해 교차 연산 및 돌연변이 연산을 수행함으로써, 상기 제2 파라미터 세트를 획득하는 단계는,
상기 제1 세트 및 상기 제2 세트에 대해 상기 교차 연산을 수행하는 단계;
상기 제3 세트에 대해 상기 돌연변이 연산을 수행하는 단계; 및
상기 교차 연산 결과 및 상기 돌연변이 연산 결과에 기초하여 상기 제2 파라미터 세트를 획득하는 단계를 포함하는, 방법.
- 제27항 내지 제36항에 있어서,
상기 제2 파라미터 세트를 획득하는 단계는,
공간의 온도, 기압, 습도, 및 밀도 중 적어도 하나를 포함하는 환경 조건(ambient condition) 정보를 획득하는 단계(S374);
상기 환경 조건 정보에 기초하여 상기 공간의 음속을 획득하는 단계(S375); 및
상기 음속에 더 기초하여 상기 다음 세대에 대응하는 상기 제2 파라미터 세트를 획득하는 단계(S376)를 포함하는, 방법.
- 제27항 내지 제37항에 있어서,
상기 제2 파라미터 세트를 획득하는 단계는,
환경 조건(ambient condition) 정보, 상기 적합도 값, 상기 제1 파라미터 세트 중 적어도 하나를 입력으로 하는 제2 머신러닝 모델을 이용하여 상기 제2 파라미터 세트를 출력하는 단계를 포함하는, 방법.
- 위치 추론(localization)을 위한 시스템(1000)에 있어서,
적어도 하나의 제1 마이크(1110)를 포함하는 제1 전자 장치(1100); 및
적어도 하나의 제2 마이크를 포함하는 제2 전자 장치(1200)를 포함하되,
상기 제1 전자 장치(1100)는:
제1 스피커(1120);
하나 이상의 인스트럭션을 저장하는 제1 메모리(1130); 및
상기 제1 메모리(1130)에 저장된 하나 이상의 인스트럭션을 실행하는 적어도 하나의 제1 프로세서(1140)를 더 포함하되, 상기 적어도 하나의 제1 프로세서(1140)는,
(a) 제1 현재 세대에 대응하는 제1 파라미터 세트를 획득하고,
(b) 상기 제1 파라미터 세트에 기초하여, 상기 제1 스피커로 하여금 제1 복수의 후보 신호들을 출력하도록 제어하고,
(c) 상기 적어도 하나의 제1 마이크로 하여금 상기 제1 복수의 후보 신호들이 공간 구조에 의해 반사된 제1 반사파 신호들을 수신하도록 제어하고,
(d) 상기 적어도 하나의 제2 마이크에 의해 수신된 상기 제1 복수의 후보 신호들에 대응하는 제1 데이터를 획득하고,
(e) 상기 제1 반사파 신호 및 상기 제1 데이터에 기초하여 상기 제1 복수의 후보 신호들에 대한 제1 적합도(fitness) 값을 획득하고,
(f) 상기 제1 적합도 값에 대응하는 제1 성능 값이 제1 임계 값을 초과하는지 여부인 제1 종료 조건을 식별하고,
(g) 상기 제1 종료 조건이 만족되지 않는 경우, 상기 제1 성능 값 및 상기 제1 파라미터 세트 간의 상관 관계에 기초하여 제1 다음 세대에 대응하는 제2 파라미터 세트를 획득하는, 상기 하나 이상의 인스트럭션을 실행하는, 시스템(1000).
- 제39항에 있어서,
상기 제1 적합도 값을 측정하는, 상기 하나 이상의 인스트럭션은,
상기 제1 반사파 신호들에 기초하여, 상기 공간 구조에 방사되는 간접 신호에 대응하는 상기 제1 적합도 값을 측정하고,
상기 제1 데이터에 기초하여, 상기 적어도 하나의 제2 마이크에 의해 수신되는 직접 신호에 대응하는 상기 제1 적합도 값을 측정하는, 상기 하나 이상의 인스트럭션을 포함하는, 시스템(1000).
- 제40항에 있어서,
상기 직접 신호의 제1 주파수 대역과 상기 간접 신호의 제2 주파수 대역은 서로 다른, 시스템(1000).
- 제40항 및 제41항에 있어서,
상기 적어도 하나의 제1 프로세서(1140)는,
상기 제1 종료 조건이 만족된 경우, 상기 제1 복수의 후보 신호들 중 상기 제1 종료 조건을 만족하는 최종 신호에 대응하는 최종 파라미터 세트를 획득하되, 상기 최종 신호는 상기 직접 신호 및 상기 간접 신호를 포함하고,
상기 간접 신호가 상기 공간 구조에 의해 반사된 제2 반사파 신호에 대응하는 기준(reference) 신호를 획득하는, 상기 하나 이상의 인스트럭션을 더 실행하는, 시스템(1000).
- 제39항 내지 제42항에 있어서,
상기 제2 전자 장치(1200)는:
제2 스피커(1220); 및
하나 이상의 인스트럭션을 저장하는 제2 메모리(1230); 및
상기 제2 메모리(1230)에 저장된 인스트럭션을 실행하는 적어도 하나의 제2 프로세서(1240)를 더 포함하되, 상기 적어도 하나의 제2 프로세서(1240)는,
제2 현재 세대에 대응하는 제3 파라미터 세트를 획득하고,
상기 제3 파라미터 세트에 기초하여, 상기 제2 스피커로 하여금 제3 복수의 후보 신호들을 출력하도록 제어하고,
상기 적어도 하나의 제2 마이크로 하여금 상기 제3 복수의 후보 신호들이 상기 공간 구조에 의해 반사된 제3 반사파 신호들을 수신하도록 제어하는, 상기 제2 메모리에 저장된 적어도 하나 이상의 인스트럭션을 실행하는, 시스템(1000).
- 제43항에 있어서,
상기 적어도 하나의 제1 프로세서(1140)는,
상기 제2 전자 장치로부터 상기 제3 반사파 신호들에 대응하는 제3 데이터를 획득하고,
상기 제3 데이터에 기초하여 상기 제3 복수의 후보 신호들에 대한 제2 적합도 값을 획득하고,
상기 제2 적합도 값에 대응하는 제2 성능 값이 상기 제1 임계 값을 초과하는지 여부인 제2 종료 조건을 식별하고,
상기 제2 종료 조건이 만족되지 않는 경우, 상기 제2 성능 값 및 상기 제3 파라미터 세트 간의 상관 관계에 기초하여 제2 다음 세대에 대응하는 제4 파라미터 세트를 획득하는, 상기 하나 이상의 인스트럭션을 더 실행하는, 시스템(1000).
- 제43항에 있어서,
상기 적어도 하나의 제2 프로세서(1240)는,
상기 제3 반사파 신호들에 기초하여 상기 제3 복수의 후보 신호들에 대한 제2 적합도 값을 획득하고,
상기 제2 적합도 값에 대응하는 제2 성능 값이 상기 제1 임계 값을 초과하는지 여부인 제2 종료 조건을 식별하고,
상기 종료 조건이 만족되지 않는 경우, 상기 제2 성능 값 및 상기 제3 파라미터 세트 간의 상관 관계에 기초하여 제2 다음 세대에 대응하는 제4 파라미터 세트를 획득하는, 상기 하나 이상의 인스트럭션을 더 실행하는, 시스템(1000).
- 위치 추론(localization)을 위한 시스템(1000)에 있어서,
제1 전자 장치(1100); 및
제2 전자 장치(1200)를 포함하되,
상기 제1 전자 장치(1100)는:
제1 비가청 음향 신호를 출력하는 제1 스피커(1120);
상기 출력된 제1 비가청 음향 신호가 공간 구조에 의해 반사된 제1 반사파 신호를 수신하는 적어도 하나의 제1 마이크(1110);
하나 이상의 인스트럭션을 저장하는 제1 메모리(1130); 및
상기 제1 메모리(1130)에 저장된 하나 이상의 인스트럭션을 실행하는 적어도 하나의 제1 프로세서(1140)를 포함하되, 상기 적어도 하나의 제1 프로세서(1140)는,
상기 적어도 하나의 제1 마이크(1110)에 의해 수신된 상기 제1 반사파 신호 및 상기 제2 전자 장치(1200)에 의해 수신된 상기 제1 비가청 음향 신호 중 적어도 어느 하나와, 상기 제1 비가청 음향 신호에 대응하는 제1 기준 신호 간의 상관도(correlation)에 기초하여 제1 신호 변화량을 획득하고,
상기 제1 신호 변화량이 객체의 움직임에 대응하는 제1 임계 값을 초과한 경우, 상기 제1 신호 변화량에 기초하여 상기 공간 구조 내의 상기 객체의 위치에 대응하는 객체 위치 정보를 획득하고,
상기 제1 신호 변화량이 상기 공간 구조의 변경에 대응하는 제2 임계 값을 초과한 경우, 파형 최적화 모델을 이용하여 상기 제1 비가청 음향 신호에 대응하는 제1 최종 파라미터 세트를 업데이트하는, 상기 하나 이상의 인스트럭션을 실행하는, 시스템(1000).
- 제46항에 있어서,
상기 적어도 하나의 제1 프로세서(1140)는,
상기 적어도 하나의 제1 마이크(1110)에 의해 수신된 상기 제1 반사파 신호 및 상기 제2 전자 장치(1200)에 의해 수신된 상기 제1 비가청 음향 신호 중 적어도 하나에 기초하여 상기 제1 전자 장치의 위치 및 상기 제2 전자 장치의 위치에 대응하는 장치 위치 정보를 획득하는, 상기 하나 이상의 인스트럭션을 더 실행하는, 시스템(1000).
- 제47항에 있어서,
상기 적어도 하나의 제1 프로세서(1140)는,
상기 객체 위치 정보 및 상기 장치 위치 정보에 기초하여, 웨이크업 키워드에 대응하는 제1 사용자 음성 입력에 응답할 웨이크업(wake-up) 디바이스를 선택하고,
상기 웨이크업 디바이스는 상기 제1 전자 장치 또는 상기 제2 전자 장치인, 상기 하나 이상의 인스트럭션을 더 실행하는, 시스템(1000).
- 제48항에 있어서,
상기 웨이크업 디바이스는:
상기 제1 사용자 음성 입력에 응답하여 웨이크업하고,
상기 제1 사용자 음성 입력 이후의 제2 사용자 음성 입력을 수신하는, 시스템(1000).
- 제46항 내지 제49항에 있어서,
상기 제2 전자 장치(1200)는:
제2 비가청 음향 신호를 출력하는 제2 스피커(1220);
상기 출력된 제2 비가청 음향 신호가 상기 공간 구조에 의해 반사된 제2 반사파 신호와, 상기 제1 비가청 음향 신호를 수신하는 적어도 하나의 제2 마이크(1210);
하나 이상의 인스트럭션을 저장하는 제2 메모리(1230); 및
상기 제2 메모리(1230)에 저장된 하나 이상의 인스트럭션을 실행하는 적어도 하나의 제2 프로세서(1240)를 포함하되, 상기 적어도 하나의 제2 프로세서(1240)는,
상기 적어도 하나의 제2 마이크에 의해 수신된 상기 제2 반사파 신호 및 상기 적어도 하나의 제1 마이크에 의해 수신된 상기 제2 비가청 음향 신호 중 적어도 하나와, 상기 제2 비가청 음향 신호에 대응하는 제2 기준 신호 간의 상관도(correlation)에 기초하여 제2 신호 변화량을 획득하고,
상기 제2 신호 변화량이 상기 제1 임계 값을 초과한 경우, 상기 제2 신호 변화량에 기초하여 상기 객체 위치 정보를 획득하고,
상기 제2 신호 변화량이 상기 제2 임계 값을 초과한 경우, 상기 파형 최적화 모델을 이용하여 상기 제2 비가청 음향 신호에 대응하는 제2 최종 파라미터 세트를 업데이트하는, 상기 하나 이상의 인스트럭션을 실행하는, 시스템(1000).
- 제20항 내지 제38항 중 어느 한 항의 방법을 컴퓨터에서 수행하기 위한 프로그램이 기록된 컴퓨터로 읽을 수 있는 기록매체.
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP23781191.4A EP4428575A1 (en) | 2022-03-28 | 2023-03-09 | Electronic device and system for location inference |
PCT/KR2023/003224 WO2023191333A1 (ko) | 2022-03-28 | 2023-03-09 | 위치 추론을 위한 전자 장치 및 시스템 |
US18/127,473 US20230305144A1 (en) | 2022-03-28 | 2023-03-28 | Electronic device and system for localization |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020220038381 | 2022-03-28 | ||
KR20220038381 | 2022-03-28 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20230139756A true KR20230139756A (ko) | 2023-10-05 |
Family
ID=88293718
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020220111688A KR20230139756A (ko) | 2022-03-28 | 2022-09-02 | 위치 추론을 위한 전자 장치 및 시스템 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20230139756A (ko) |
-
2022
- 2022-09-02 KR KR1020220111688A patent/KR20230139756A/ko unknown
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11170201B2 (en) | Method and apparatus for recognizing object | |
JP6030184B2 (ja) | 持続波超音波信号を使用したタッチレス感知およびジェスチャー認識 | |
KR20200052448A (ko) | 지식 그래프에 기초하여 데이터베이스들을 통합하는 시스템 및 방법 | |
KR20220025143A (ko) | 신경망 프로세싱 유닛 | |
KR20200046188A (ko) | 인공 지능 모델을 재구성하기 위한 전자 장치 및 그의 제어 방법 | |
KR20190089628A (ko) | 복수 개의 전자 디바이스를 이용하여 신경망 모델을 처리하는 방법 및 시스템 | |
US20230091104A1 (en) | Electronic device and operating method thereof | |
US11457314B2 (en) | Method, terminal and terminal case for converting sound data | |
KR20180054365A (ko) | 제품의 판매 정보를 제공하는 방법 및 장치 | |
US20220269718A1 (en) | Method And Apparatus For Tracking Object | |
WO2011094934A1 (en) | Method and apparatus for modelling personalized contexts | |
CN115081643B (zh) | 对抗样本生成方法、相关装置及存储介质 | |
US11531912B2 (en) | Electronic apparatus and server for refining artificial intelligence model, and method of refining artificial intelligence model | |
US9241243B1 (en) | Step triangulation | |
CN109583583B (zh) | 神经网络训练方法、装置、计算机设备及可读介质 | |
CN113390429B (zh) | 一种导航方法及装置 | |
CN112673367A (zh) | 用于预测用户意图的电子设备和方法 | |
US20210192322A1 (en) | Method For Determining A Confidence Level Of Inference Data Produced By Artificial Neural Network | |
US20200259773A1 (en) | Communication routing based on physical status | |
KR20230139756A (ko) | 위치 추론을 위한 전자 장치 및 시스템 | |
EP4428575A1 (en) | Electronic device and system for location inference | |
US11796637B1 (en) | Fall detection on uneven surfaces using radar | |
US11961512B2 (en) | System and method for providing voice assistance service | |
US11336424B1 (en) | Clock drift estimation | |
US20220309394A1 (en) | Electronic device and operation method of the same |