Target localisation for multi-static radar
Find a file
2024-03-16 05:20:34 +00:00
api Update readme and minor fixes 2024-03-16 05:20:34 +00:00
cesium Add Cesium container 2024-02-05 13:43:59 +00:00
common Can finally do arbitrary message sizes 2024-03-03 08:55:28 +00:00
event Update readme and minor fixes 2024-03-16 05:20:34 +00:00
script Update readme and minor fixes 2024-03-16 05:20:34 +00:00
test/event I think I finally got enu2ecef working 2024-02-29 15:28:03 +00:00
.gitignore Add pycache git ignore 2024-02-09 14:48:58 +00:00
.gitmodules Remove cesium submodule grr 2024-02-04 12:08:48 +00:00
docker-compose.yml Add API saving and remove save folder 2024-03-09 01:52:45 +00:00
example.png Update readme and minor fixes 2024-03-16 05:20:34 +00:00
LICENSE Initial commit 2024-01-29 18:26:41 +10:30
README.md Update readme and minor fixes 2024-03-16 05:20:34 +00:00

3lips

Target localisation for multi-static radar using ellipse intersections. Not a dating app.

See a live instance at http://3lips.30hours.dev.

3lips example display

Features

  • Provides a JSON API for geolocation of targets given blah2 radar nodes.
  • Uses a CesiumJS web front-end to visualise data.
  • Ability to compare a number of algorithms for target localisation.

Usage

  • Install docker and docker-compose on the host machine.
  • Clone this repository to some directory.
  • Edit the ./config/config.yml file for scenario.
  • Run the docker compose command.
sudo git clone http://github.com/30hours/3lips /opt/3lips
sudo docker compose up -d —build

The API front-end is available at http://localhost:49156.

Method of Operation

The association uses the following algorithm:

  • ADS-B associator will associate the highest SNR target within some delay and Doppler boundary around the truth.

The target localisation uses 1 of the following algorithms:

  • Ellipse parametric samples an ellipse (2D) at 0 altitude. Find intersections between 3 or more ellipses such that the distance to each point is under some threshold.

  • Ellipsoid parametric samples an ellipsoid (3D). Find intersections between 3 or more ellipsoids such that the distance to each point is under some threshold.

  • Spherical intersection a closed form solution which applies when a common receiver or transmitter are used. As described in Two Methods for Target Localization in Multistatic Passive Radar.

The system architecture is as follows:

  • The API server and HTML pages are served through a Flask in Python.
  • An initial API request with a new set of parameters (algorithms or radar nodes) will add these parameters to a common processing loop. This is so fair comparisons can be made between these parameters on the same input data.
  • A set of API parameters will continue to be processed unless there is no API call in some specified time - see main.py to update. This allows the latest geolocation to be provided, rather than adding to the processing loop and waiting for the update from the next time increment.

Future Work

  • Implement an association algorithm that is not reliant on ADS-B truth.
  • Choose to use detection or track data from each radar.
  • Long term plots to show metrics such as 2D location accuracy to ADS-B, number of aircraft tracked, etc.
  • Scale number of samples in ellipse/ellipsoid to size of shape.

License

MIT