You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This software provides code, setup instructions, and tools to implement a Bayesian Enhanced Angle of Arrival (AoA) Estimator.
14
+
It conducts the full pipeline, starting by conducting classic antenna-array signal processing to estimate the AoA. Then, these
15
+
estimations are computed into physical-informed priors, and this is fed into a Bayesian Regression Model, which produces
16
+
the final AoA estimation. The software is designed to be modular, allowing for easy integration with various antenna arrays and signal processing techniques.
17
+
keywords:
18
+
- RFID
19
+
- Bayesian Machine Learning
20
+
- Physics-Informed
21
+
- Signal Processing
22
+
- Antenna-Array
23
+
- Wireless Communication
24
+
- Radio Frequency
25
+
license: MIT
26
+
version: 1.0.0
27
+
date-released: 2025-09-02
28
+
preferred-citation:
29
+
type: software
30
+
authors:
31
+
- family-names: "Martínez Benelmekki"
32
+
given-names: "Nedal"
33
+
orcid: "https://orcid.org/0009-0003-1955-5006"
34
+
affiliation: "Wireless Information Networking Group, UAB"
35
+
title: "Bayesian Enhanced AoA Estimator: A Physics-Informed Machine Learning Approach for Accurate Angle of Arrival Estimation"
This software provides code, setup instructions, and tools to implement a Bayesian Enhanced Angle of Arrival (AoA) Estimator.
41
+
It conducts the full pipeline, starting by conducting classic antenna-array signal processing to estimate the AoA. Then, these
42
+
estimations are computed into physical-informed priors, and this is fed into a Bayesian Regression Model, which produces
43
+
the final AoA estimation. The software is designed to be modular, allowing for easy integration with various antenna arrays and signal processing techniques.
Copy file name to clipboardExpand all lines: README.md
+106-5Lines changed: 106 additions & 5 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -2,6 +2,46 @@
2
2
3
3
AoA estimator for passive UHF RFID based on Bayesian regression and classical antenna array signal processing. Combines physics-informed priors with Pyro-based uncertainty quantification.
The Bayesian-Enhanced-AoA-Estimator provides a comprehensive framework for estimating the Angle of Arrival (AoA) in passive UHF RFID systems. This project combines:
34
+
35
+
1.**Classical Antenna Array Processing**: Implements traditional techniques like Phase-difference estimation, Delay-and-Sum beamforming, and MUSIC algorithm.
36
+
37
+
2.**Bayesian Regression Approach**: Leverages probabilistic programming with Pyro to incorporate physics-informed priors and estimate uncertainty.
38
+
39
+
3.**Multi-frequency Fusion**: Combines data from multiple frequencies to improve estimation accuracy and robustness.
40
+
41
+
4.**Uncertainty Quantification**: Provides confidence metrics for all estimates, essential for real-world deployment.
42
+
43
+
This approach significantly improves AoA estimation accuracy compared to classical methods alone, particularly in challenging low-SNR environments and multi-path scenarios typical in indoor RFID deployments.
44
+
5
45
## 📊 Dataset Structure
6
46
7
47
### 📂 File Naming Convention
@@ -114,16 +154,55 @@ A comprehensive end-to-end RFID AoA estimation pipeline that:
114
154
- Performs error analysis and method comparison
115
155
- Outputs organized figures and complete analysis reports
116
156
157
+
## 🐍 Python Implementation
158
+
159
+
The repository includes Python implementations that use Bayesian methods through Pyro:
160
+
161
+
### 📄 `bayesian_regression.py`
162
+
163
+
Core implementation of the Bayesian AoA estimator:
164
+
165
+
- Defines physics-informed prior distributions based on antenna array geometry
166
+
- Implements probabilistic model for phase and RSSI observations
167
+
- Performs Bayesian inference using Pyro's SVI engine
168
+
- Provides posterior distributions for AoA estimates with uncertainty quantification
169
+
- Handles multi-frequency data fusion through hierarchical modeling
170
+
171
+
### 📄 `beamforming.py`
172
+
173
+
Provides functions to conduct classic antenna-array analysis of DS Beamforming and Weigthed DS Beamforming.
174
+
175
+
### 📄 `data_management.py`
176
+
177
+
Utility module for preprocessing and managing the dataset:
178
+
179
+
- Reads and parses CSV files from RFID experiments
180
+
- Converts raw measurements to complex phasors
181
+
- Handles data cleaning and outlier removal
182
+
- Provides data loaders compatible with PyTorch/Pyro
183
+
184
+
### 📄 `MUSIC.py`
185
+
186
+
Provides functions to conduct classic antenna-array analysis of the MUSIC algorithm.
187
+
188
+
### 📄 `phase_difference.py`
189
+
190
+
Provides functions to conduct classic antenna-array analysis of the phase difference analysis.
191
+
192
+
### 📄 `visualization.py`
193
+
194
+
Comprehensive visualization tools.
195
+
117
196
## 📁 Repository Structure
118
197
119
198
The repository is organized with the following key directories:
120
199
121
-
### `/MATLAB`
200
+
### `/data`
122
201
123
-
Contains all MATLAB implementation scripts:
202
+
Raw and processed datasets:
124
203
125
-
-`process_experimental_data.m`: Preprocessing script for raw CSV data
0 commit comments