This repository contains the scripts we used to assess force-torque sensor data for a paper that is currently under review.
This project is licensed under the MIT License.
A preprint of the paper is available at arxiv.org:
@misc{gerdes2024fieldassessmentforcetorque,
title={Field Assessment of Force Torque Sensors for Planetary Rover Navigation},
author={Levin Gerdes and Carlos Pérez del Pulgar and Raúl Castilla Arquillo and Martin Azkarate},
year={2024},
eprint={2411.04700},
archivePrefix={arXiv},
primaryClass={cs.RO},
doi={10.48550/arXiv.2411.04700},
url={https://arxiv.org/abs/2411.04700},
}
The preprint was prepared with version v0.1-preprint of this code.
Both bibtex and formatted text citation can be copied using Github's "Cite this Repository" button in the right-hand side toolbar.
This repository uses Python 3.10. All requirements are listed in pyproject.toml.
Install them via uv
uv sync
uv pip install -e .
or pip
python3 -m venv .venv
source .venv/bin/activate
pip install -e .
Point the scripts to the Baseprod traverse data. You can use your own path like so:
-
Set the environment variable for your path, e.g.
export BASEPROD_TRAVERSE_PATH="/mnt/baseprod/sensor_data"
-
Alternatively, modify the default path (if no correct environment variable is found) in preprocessing/traverse_overview.
-
Check how much data is usable according to the distance computed by Fy/Tx with preprocessing/find_usable.py.
python -m preprocessing.find_usable
-
Generate the dataset for the later machine learning with preprocessing/export_classification_stats.py.
python -m preprocessing.export_classification_stats
Creates three output files (
training_data.csv
,training_data_ft.csv
,training_data_imu.csv
) containing the data for all sensors, only the force torque sensors, and only the IMU data, respectively.If only a subset of FTSs should be included,
--fts_names FL FR
can be passed to only include the data from FTSsFL
andFR
(plus IMU) for example. -
Plot FTS and IMU data with preprocessing/plot_fts_imu.py
python -m preprocessing.plot_fts_imu
From the project's root, invoke
python -m ml.svm --csv training_data_ft.csv --data_source fts
or
python -m ml.train --csv training_data.csv --data_source all
See all possible arguments by passing --help
.