Microcontroller Image Classification

Project Goal: Deploy a machine learning model on a microcontroller to optimize inference speed, performance accuracy, and power consumption.

Outcome: A convolutional neural network model predicts landscape images from six classes with 80% accuracy and with a time for inference of 41.1ms (~24.32 inferences/second). Model runs on STM32 Cortex M4 Core.

Poster download: [PDF]

Key Features:

Machine learning model:

Hardware analysis:

Optimization:

Images:

Sample of training images dataset.


CNN architecture, input/output sizes and parameters.


CNN confusion matrix showing difficulty distinguishing glaciers and mountains.


Size vs Accuracy graph of different tested model. Pruned, Quantized-Aware-Trained (PQAT) on far right was the chosen model.




all-engineering-projects