음환경, 소음진동

음원 위치추적의 기초 (Directinon Of Arrival, DOA)

Dr. 임만 2021. 7. 26. 06:00
반응형

서론

오늘은 이전에 잠깐 스터디와 실험을 진행해보았었던 음원위치추적의 기초이론에 대해서 정리해보고자 합니다.

음원위치추적은 음향쪽에서 입체음향, 음원인식과 더불어 다른분야의 기술과 함께 응용될 수 있는 기술이라고 개인적으로는 생각됩니다. (순수 건축음향이나 음질에 대한 연구는 아무래도 융복합 연구로 나아가기에는 제한적이지 않나 싶습니다)

 


이론

오늘 정리할 음원위치추적은 제일 단순하지만 강력한 Direction of arrival (통상 DOA로 명칭) 입니다.
고등학교 과학시간에 배웠었던 기억이 있는 이론을 적용한 아주 간단한 식인데요.

아래의 그림을 보면 1과 2 지점에 2개의 지점에 마이크로폰이 있다고 가정을 하겠습니다.
그리고 노란색 스파크 표시에서 소리가 발생하였다고 하겠습니다.

소리가 발생하였을 때 1과 2에 도달하는 소리에는 분명 시간차가 생길 것입니다.
쉽게 예를 들어봅시다.  1 지점에는 소리가 도달하는데 1초가 걸렸고 2 지점에는 0.95초가 걸렸습니다.
그렇다면 우리는 소리의 속도를 알기 때문에 1지점과 음원의 거리, 2지점과 음원의 거리를 알 수가 있습니다.

 

이 때 위 그림에서 1지점과 2지점 사이의 거리 d가 1, 2지점 사이의 중앙점과 음원의 거리인 r에 비해서 매우 작다고 가정을 해보면, 우리는 점선과 1과 음원사이의 직선의 각을 직각이라고 가정할 수가 있습니다.

또한 음원과 1과 2지점 사이의 거리는 Far-field가 형성될만한 거리여서(음원에 따라 다르지만 일반적으로 3 m였던 것 같습니다.) 1과 2지점에 도달하는 소리는 평면파라고 가정되어야 합니다.

이제 아래의 수식을 적용하면 1, 2지점 사이의 중앙점에서 음원의 방향을 알 수가 있습니다.

 

뭔가 괜히 수식이 나오고 그래서 어려워보일 수 있지만  몇가지 상황과 가정만 있으면 됩니다.

우선 다채널 마이크로폰 어레이가 필요합니다.
선형이 가장 간단하고 그외에도 정확도를 높이기 위해 고안된 아주 다양한 어레이가 있습니다.

개수가 많을 수록 좋은 것이 일반적이지만 개수에 따른 정확도 증가가 선형적이지는 않으므로 경제성과 편의성을 고려하셔서 선택하셔야 합니다. (수렴점이 있음)

가정은 2개를 만족해야 합니다.
1. 음원과의 거리가 마이크로폰의 간격에 비해서 매우 멀어야 함. (d<<l)
2. 음원에 수음되는 음은 평면파여야 한다.

 


간단한 음원 위치추적 실험 결과

제가 2개의 마이크로폰으로 했던 간단한 실험결과를 공유합니다.

- 3000원짜리 싸구려 마이크로폰으로 했고 Mic1과 Mic2의 간격은 15 cm, 9 cm, 3 cm  설정했습니다. (사진의 마이크로폰)
- 음원의 실제 각도는 0, 30, 60, 90도 (90도가 정면)에서 실시하였고 음원은 Spark source였습니다. (전기 충격음)
- 음원과의 거리는 1 m 입니다. (평면파 가정이 제대로 구현되지 않았을 듯 합니다 ㅎㅎ;; 이 때 사전테스트라 생각하고 막 했거든요) 
실험은 잔향시간 0.2초의 반무향실에서 진행되어 실험실에 의한 영향은 배제하였다고 볼 수 있습니다.
- 3회 반복하여 반복성도 측정했습니다.

 

실험 Setup 개요 및 실험용 마이크

그 결과 각도 에러는 아래의 그래프와 같이 나타났습니다. Pilot test라 어마어마하지요
경향을 말씀드리면, 정면에 가까울수록 에러가 줄어듭니다. 그리고 마이크로폰의 간격이 넓을 수록 정확했습니다.
설명 드리길, 간격이 음원과의 거리에 비해 작은것이 좋다고 했는데 이렇게 나온 이유는 두 개의 마이크로폰 간에 충분한 시간차가 있어야 하는데 그걸 구분할 Samplerate (해상도)가 확보되려면 어쩔 수 없었던 것으로 보여집니다.

결과를 보면 마이크로폰과 같은 면에 있는 0도의 경우에는 거의 Detecting이 안된다고 봐야겠네요. 선형 어레이 (Linear array)의 한계입니다.

 

옆에 사진은 두개의 마이크로폰으로 수음한 raw data입니다.
x축이 1초로 되어 있어서 2개 신호의 시작점이 거의 같은 것으로 보이시겠지만 실제로는 43 ms 정도 차이가 있습니다.

시간차를 구하는 알고리즘을 정확하게 짜는 것도 DOA의 정확성 확보에 중요한 연구주제입니다. 저는 간단하게 하려고 일부러 충격음을 써서 두개 신호의 Max 값을 detecting하는 방법을 썼습니다.

 

 

 


결론

간단하게 DOA 기반의 음원위치추적에 대해서 설명드렸습니다. DOA 정확도 향상을 위한 음원에 후처리하는 알고리즘은 무수히 많습니다.

1. 필터를 씌우는 방법으로 신호처리적 해결책이 있고,
2. 하드웨어 적으로 어레이를 다양하게 만들어보는 분도 있습니다.

음원위치추적은 Visual한 물체추적보다 간단하다는 강점은 있지만 Robustness에서 제약이 많이 있어서 연구가 계속 되고 있습니다.  쉽게 말해서 소음이 있으면  추적이 거의 안됩니다. ㅎㅎㅎ... 엄청난 제약이죠.  나는 앞에 있는 사람 말을 추적해야하는데 밖에서 더 큰 소리로 개라도 짖으면 바로 그쪽을 추적할 수도 있습니다.

그럼에도 불구하고 연구가 계속 되는 이유는 시각적 물체추적과 함께 복합적으로 사용되거나 하는 식으로 보조적 위치추적 장치가 될 수 있기 때문 같습니다.

 

적용할 만한 분야로는 그림처럼 로봇에 마이크로폰 어레이를 붙여서 방향을 찾는데 활용되기도 하고, 지능형 CCTV처럼 시각과 함께 사용되어서 소리가 난 방향으로 카메라를 돌려서 시지각의 한계를 극복하는데 사용되기도 합니다. 

 

저는 DOA에 관해서 아주아주 기초적인 접근 이론만 설명드렸습니다. (저는 옆에서 거들었을 뿐 실제 이 연구를 진행하던 친구는 따로 있었지요 ㅎㅎ)  참고용으로 활용해주시기 바랍니다.

 

반응형