Neural Networks for Microcontrollers (nn4mc) is a Python package for generating microcontroller code in c from pre-trained models. Our intended audience is roboticists looking to embed intelligence into their applications; however, anyone interested in using a neural network in a microcontroller will find this software useful.
Project description
Neural Networks for Microcontrollers: Python
This is a python implementation of Neural Networks for Microcontrollers (nn4mc) (originally implemented in C++) that allows for the translation of trained neural network models to C code for use in embedded systems.
Development Status
Please note that nn4mc_py is still in development and may have many bugs. We are working hard on getting everything operating seamlessly, and feel free to reach out with any questions.
Using nn4mc
Installation
Simply use the Python package manager pip and run the following command.
pip install nn4mc
Usage
You will most likely only need to import the translator module
import nn4mc.translator as nnTr
Then you can translate a file with the following command
nnTr.translate("path/to/file", 'hdf5', "output/path")
What about packages other than Keras?
We currently develop instructionals on converting packages from multiple sources to Keras.
Technical Questions
Please direct your technical questions to Stack Overflow using the nn4mc tag or e-mail Sarah.AguasvivasManzano@colorado.edu. Also feel free to initiate a new issue in our github repository.
Getting Involved
- For bug report or feature requests please submit a GitHub issue.
- For contributions please submit a pull request
Citing nn4mc:
We encourage to use the following citation references for academic use of nn4mc.
BibTeX citation:
@misc{nn4mc,
title={Embedded Neural Networks for Robot Autonomy},
author={Sarah {Aguasvivas Manzano} and Dana Hughes and Cooper Simpson and Radhen Patel and Nikolaus Correll},
year={2019},
note={International Symposium of Robotics Research (ISRR 2019)},
eprint={1911.03848},
archivePrefix={arXiv},
primaryClass={cs.RO}
}
APA Format:
Manzano, S. A., Hughes, D., Simpson, C., Patel, R., & Correll, N. (2019). Embedded Neural Networks for Robot Autonomy.
International Symposium of Robotics Research (ISRR 2019). arXiv preprint arXiv:1911.03848.
Contributors:
nn4mc is supported by the Correll Lab at the University of Colorado Boulder. We also receive support from the Airforce Office of Scientific Research (AFOSR), we are very grateful for this support.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distribution
File details
Details for the file nn4mc-0.3.0-py2.py3-none-any.whl
.
File metadata
- Download URL: nn4mc-0.3.0-py2.py3-none-any.whl
- Upload date:
- Size: 43.4 kB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.7.1 importlib_metadata/4.8.1 pkginfo/1.8.2 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.1 CPython/3.9.6
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | cb4f26b6866ae7fa8e94e210f76c2aa19c058610e6b403c68c881f750b7401be |
|
MD5 | fa406896bc07e21f861303f656a24146 |
|
BLAKE2b-256 | 706b4eb3ccf1fc6efc9088969b3219aed8c48e25a232f1084317a684c8178cc8 |