Estimating Angle of Arrival (AoA) of multiple Echoes in a Steering Vector Space
This work addresses a critical bottleneck for applications like human or vehicle localization and multi-user separation in acoustic and RF systems, though it appears incremental as it builds on prior algorithms with a novel cancellation approach.
The paper tackles the problem of estimating multiple angles of arrival (AoA) for acoustic signals in noisy, multipath conditions where the source signal is unknown, and introduces SubAoA, an algorithm that improves accuracy for subsequent AoAs compared to existing methods while enabling real-time operation.
Consider a microphone array, such as those present in Amazon Echos, conference phones, or self-driving cars. One of the goals of these arrays is to decode the angles in which acoustic signals arrive at them. This paper considers the problem of estimating K angle of arrivals (AoA), i.e., the direct path's AoA and the AoA of subsequent echoes. Significant progress has been made on this problem, however, solutions remain elusive when the source signal is unknown (such as human voice) and the channel is strongly correlated (such as in multipath settings). Today's algorithms reliably estimate the direct-path-AoA, but the subsequent AoAs diverge in noisy real-world conditions. We design SubAoA, an algorithm that improves on the current body of work. Our core idea models signal in a new AoA sub-space, and employs a cancellation approach that successively cancels each AoA to decode the next. We explain the behavior and complexity of the algorithm from the first principles, simulate the performance across a range of parameters, and present results from real-world experiments. Comparison against multiple existing algorithms like GCC-PHAT, MUSIC, and VoLoc shows increasing gains for the latter AoAs, while our computation complexity allows real-time operation. We believe progress in multi-AoA estimation is a fundamental building block to various acoustic and RF applications, including human or vehicle localization, multi-user separation, and even (blind) channel estimation.