The aim of this project is to improve object detection accuracy by taking advantage of multiple drones' viewpoints. An host must be setup in order to receive predictions from the nodes of the swarm (baseStation folder) The hosts of the swarm need to run the IPCHandler code
Our system is able to improve detection accuracy by eliminating some false positives and false negatives. Detailed comparisons, in terms of precision and recall, between our multi-host system and a single-host system are shown in the report.
- IPCHandler/ : folder containing the inter process communication handler (for getting data from the python process through UNIX socket). It must be executed on the nodes of the network.
- structures/ : folder containing structures and functions that handle the communication with other hosts
- baseStation/ : folder containing the code for executing the base station
1. Install Go: https://golang.org/dl/
2. Install dependencies: go get github.com/dedis/protobuf
3. Run base station to receive rounds' predictions: baseStation/baseStation --address=<IP:PORT>, IP:PORT indicate the address for reaching the base station
4. Run the hosts in the swarm: IPChandler/IPChandler
- baseStation/baseStation -address=127.0.0.1:3000
- IPChandler/IPChandler -nodeID=1 -address=127.0.0.1:5001 -peers=127.0.0.1:5002,127.0.0.1:5003 -class=person -BS=127.0.0.1:3000
- IPChandler/IPChandler -nodeID=2 -address=127.0.0.1:5002 -peers=127.0.0.1:5001,127.0.0.1:5003 -class=person -BS=127.0.0.1:3000
- IPChandler/IPChandler -nodeID=3 -address=127.0.0.1:5003 -peers=127.0.0.1:5001,127.0.0.1:5002 -class=person -BS=127.0.0.1:3000