https://github.com/red-portal/widebanddoa.jl
https://github.com/red-portal/widebanddoa.jl
Last synced: 3 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/red-portal/widebanddoa.jl
- Owner: Red-Portal
- License: mit
- Created: 2023-12-21T22:33:39.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2024-11-20T20:11:29.000Z (7 months ago)
- Last Synced: 2025-01-18T03:45:59.056Z (5 months ago)
- Language: Julia
- Size: 23.3 MB
- Stars: 1
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
[](http://krkim.me/WidebandDoA.jl/)
[](https://github.com/Red-Portal/WideBandDOA.jl/actions/workflows/CI.yml?query=branch%3Amain)# WidebandDoA
This repository provides the code to reproduce the paper:
> Fully Bayesian Wideband Direction-of-Arrival Estimation with RJMCMC## Installation
```julia
using Pkg
Pkg.add(url="https://github.com/Red-Portal/ReversibleJump.jl.git")
Pkg.add(url="https://github.com/Red-Portal/WidebandDoA.jl.git")
```However, to run the unit tests, some additioanal work is needed.
First, go to the root director of `WidebandDoA`, and execute the following:
```julia
using Pkg
Pkg.activate("test")
Pkg.develop(url="https://github.com/Red-Portal/ReversibleJump.jl.git")
Pkg.develop(url="https://github.com/Red-Portal/MCMCTesting.jl.git")
```
This is necessary because Julia's test runner is not a fan of unregistered packages like `ReversibleJump` and `MCMCTesting`.
Then, you should be able to run the tests:
```julia
using Pkg
Pkg.test("WidebandDoA")
```## Demonstration
We provide a comprehensive demonstration of the package in the [documentation](https://krkim.me/WidebandDoA.jl/dev/demonstration/).
For instance, for signals generated from `k = 4` sources with the following angle-frequency spectrum:
We show how to obtain estimate the model order through our Bayesian model:

and the direction-of-arrivals:

One can also reconstruct the latent source signals as follows:
