Deployment of Direction-of-Arrival Estimation Using Deep Learning
R2026bDirection of arrival (DOA) estimation is the process of determining the spatial directions from which signals arrive on an array of spatially separated sensors. Given measurements from these sensors, the deep learning model estimates the angles from which the signals arrive. The signals are affected by variations in noise and can have different signal characteristics.
This page provides an overview of examples that illustrate how to use deep learning models for estimating the direction of arrival (DOA) of signals and how to deploy these models on a desktop environment and on Raspberry Pi®.
Here are the steps in the workflow:
Generate Data
Create synthetic data using a uniform linear array (ULA) from Phased Array System Toolbox™. For more information on this data, see Direction-of-Arrival Estimation Using Deep Learning. This uniform linear array simulates signals arriving from different directions (angles) with variations in noise and signal characteristics so that they ensure robust training of the network model.
Train Convolutional Neural Network (CNN)
Define and train a convolutional neural network (CNN) to predict the arrival angle directly from the sensor array snapshots. The network learns spatial patterns in the array data without requiring explicit feature engineering. The DOA estimation is cast as a multi-label classification problem where the network predicts a probability vector corresponding to incident angles of arrival. Each element in the probability vector represents the likelihood of a source being present at the corresponding direction angle.
Compress Trained Network
Compress the trained deep learning model to reduce its size and improve inference efficiency for deployment. This step applies structured pruning to remove less important convolution filters, followed by projection techniques that replace layers with lower‑rank equivalents. Together, these methods reduce parameter count, memory footprint, and inference time while maintaining DOA estimation accuracy. For a detailed example, see Compress Deep DOA Estimation Network Using Pruning and Projection, which shows how to compress the trained network from this workflow and generate a lightweight model for efficient real-time execution on resource-constrained hardware.
Deploy Trained Model
Deploy the model you trained on a desktop environment and on Raspberry Pi.
These examples which show both the workflows: