https://github.com/bmw-lab-msu/spie-optics-and-photonics-23-drone-rotor-analysis

Code for "Preliminary Analysis of Drone Propeller Signals Using Wingbeat-Modulation Lidar", published in SPIE Optics and Photonics 2023.

https://github.com/bmw-lab-msu/spie-optics-and-photonics-23-drone-rotor-analysis

Science Score: 39.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
    Found 2 DOI reference(s) in README
  • Academic publication links
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (9.8%) to scientific vocabulary

Keywords

drone-detection
Last synced: 10 months ago · JSON representation

Repository

Code for "Preliminary Analysis of Drone Propeller Signals Using Wingbeat-Modulation Lidar", published in SPIE Optics and Photonics 2023.

Basic Info
  • Host: GitHub
  • Owner: BMW-lab-MSU
  • License: bsd-3-clause
  • Language: MATLAB
  • Default Branch: main
  • Homepage:
  • Size: 48.8 KB
Statistics
  • Stars: 0
  • Watchers: 2
  • Forks: 0
  • Open Issues: 0
  • Releases: 0
Topics
drone-detection
Created over 3 years ago · Last pushed about 1 year ago
Metadata Files
Readme License

README.md

SPIE Optics and Photonics 2023: Drone Propeller Rotation Analysis

This repository contains the code used in our paper Preliminary Analysis of Drone Propeller Signals Using Wingbeat-Modulation Lidar, which was published in the SPIE Optics and Photonics "Applications of Machine Learning" conference.

Path setup

Run the setup.m script to add the feature-extraction folder to your matlab path. Or just add it manually using addpath()

Directory setup

The code has been written to use relative paths. This can be changed if desired.

Here's the directory structure this code is set to use:

i-etc-2023 ├── code │   ├── combineScans.m │   ├── LICENSE │   ├── nestedcell2mat.m │   ├── orientationTrainTestSplit.m │   ├── randomTrainTestSplit.m │   └── README.md └── data ├── on-axis ├── perpendicular ├── raw ├── testing └── training

Recreating results

Our code is split into multiple parts: data wrangling and preprocessing, training, testing, and figure creation.

Data wrangling

  1. Run combineScans.m to combine all raw data into one data structure.
  2. Run extractAllFeatures.m to preprocess the data and extract features.
  3. Run randomTrainTestSplit.m and orientationTrainTestSplit.m to split the data into training and testing sets.

Training

Run the experiment*.m files to run the training experiments. These scripts launch the Classification Learner with the appropriate data. You are then free to run whatever models you like in the Classification Learner.

Models must be exported and saved manually, unfortunately.

Testing

Once the models have been trained and exported from the Classification Learner application, run the testing scripts: - testModel.m tests the random split - perpendicularModelTest.m tests the models trained on perpendicular data - onAxisModelTest.m tests the models trained on on-axis/parallel data

Figure creation

Figure creation scripts are in the figures directory. These scripts are designed to be run from the figures directory. If you run them from elsewhere, you'll need to update the data directory paths appropriately.

Owner

  • Name: BMW Lab @ MSU
  • Login: BMW-lab-MSU
  • Kind: organization
  • Location: Montana State University

GitHub Events

Total
  • Push event: 1
Last Year
  • Push event: 1