- Paper and presentation matrial
- Problem Statement
- Novelty
- System Overview
- Environment Setting
- Usage
- Project Period
- Authors
All details of this project are explained on matrials listed below.
UAV (Unmanned Aerial Vehicle) can be abused by bad actors for malicious purposes. One example is a kamikaze attack where a UAV crashed into one of the electrical grid in Pennsylvania in July 2020. There are many research that published how to detect malicious UAV using cameras, radars, and lidars. However, there is little research that predict UAV velocity. Using the previously mentioned equipment will be expensive. Therefore, a microphone will be used to collect the dataset. Then, that dataset will be used to predict if a UAV exceeds our given velocity boundary.
- There is little research about predicting UAV velocity.
- There is many research that detects UAV using many kind of equipment. However, there is little research on detecting UAV velocity over regulation. This research is inspired by [1] that predicts any car acceleration or deceleration.
- Acoustic data costs less and easier to get data.
- There are many research that uses a camera, radar, lidar, or microphones to detect a UAV. This research focuses on using one microphone to collect our data, as using a microphone is cheaper than the previously mentioned equipment and is easier to collect data with it.
- Microphone records UAV sounds, and a speed gun is used to detect the speed of the UAV (due to limitation, the speedgun used cannot detect anything under 10 mph).
- Recorded sound is arranged by a label that slow(0-9 mph) or fast(10~ mph).
- The data extract feature uses various methods.
- SVM, Random Forest, LGBM was used for Machine Learning, and CNN was used for Deep Learning.
- Python 3.7.0
- librosa 0.9.1
- numpy 1.20.3
- pandas 1.3.4
- sounddevice 0.4.1
- wavio 0.0.4
- sklearn 0.24.2
- lightgbm 3.3.2
- pytorch 1.11
pip install librosa
pip install numpy
pip install pandas
pip install sounddevice
pip install wavio
pip install sklearn
pip install lightgbm
You can use wav file dataset collected in person. After colleting dataset, you can train a model with a command below.
python MachineLearning.py
python train.py -lr [learning rate] -batch [batch] -epochs [training epoch] -dataset [dataset path]
- example
train.py -lr 0.001 -batch 128 -epochs 50 -dataset ./dataset
You can check the trained model accuracy with a command below.
python train.py --test -model_weights [path]
- example
python train.py --test -model_weights ./models/cnn_model_0.94
April. 19, 2022 - August. 3, 2022
- Eunyoung Bang
- Kangwon National University
- Department of Computer Science and Engineering
- [email protected]
- Yeongmin Seo
- DaeguCatholic University
- Cyber Security
- [email protected]
- Jeongyoun Seo
- Sangmyung University
- Human Intelligence Information Engineering
- [email protected]
- Raymond Zeng
- Purdue University
- Cyber Security
- [email protected]
- Aminata Niang
- Institut Polytechnique de Paris
- Network and Computer Engineering
- [email protected]
[1] H. V. Koops and F. Franchetti, "An ensemble technique for estimating vehicle speed and gear position from acoustic data," 2015 IEEE Int. Conf. on Digit. Signal Process. (DSP), 2015, pp. 422-426, doi: 10.1109/ICDSP.2015.7251906.