OpenMV-Image-Classification/README.md

35 lines
1.6 KiB
Markdown
Raw Permalink Normal View History

2024-09-15 00:43:58 +00:00
# OpenMV Classification Training
This repository contains a Jupyter notebook that demonstrates how to perform post-training integer quantization on machine learning models. This technique is particularly useful for reducing model size and improving inference speed, especially on low-power devices like the [OpenMV](https://openmv.io) camera.
## Features
- **Post-training Integer Quantization**: Optimize a model by converting 32-bit floating-point numbers to 8-bit fixed-point numbers.
- **Low-Power Device Compatibility**: The notebook is tailored for devices with limited computational resources, such as the OpenMV camera.
- **Efficient Model Deployment**: The techniques demonstrated ensure smaller model sizes and faster inference.
## Getting Started
### Setup
1. Clone the repository:
```bash
2024-09-15 00:52:44 +00:00
git clone https://github.com/thelocker98/openmv-classification-training.git
cd openmv-classification-training
2024-09-15 00:43:58 +00:00
```
3. Run the notebook using Jupyter
```bash
jupyter lab
```
## How to Use
- **Open the Notebook**: Launch the notebook and execute all code cells in sequence.
- **Use Your Own Images**: Follow the steps outlined in the notebook to use your own images for training or testing.
- **Deploy the Model**:
- Copy the quantized model from the `models` folder and load it onto the OpenMV camera.
- Transfer the `boot.py` and `labels.txt` files from the `OpenMV code` folder to the camera.
- Unplug and reconnect the camera to automatically run the model.
## References
- [OpenMV Camera](https://openmv.io)
- [Google post on model quantization](https://ai.google.dev/edge/litert/models/post_training_integer_quant)