Ever wandered how fast are the major microcontroller boards to run Tensorflow Lite neural networks? In this post we'll find it out for the case of Fully Connected networks.
A few days ago I asked a poll on my Twitter for who do you think would be the fastest board for TinyML among Arduino Portenta H7, Teensy 4.0 and STM32 Nucleo H743ZI2. Both Portenta and Nucleo ranked on par at first position, leaving Teensy behind.
This post will answer that poll with real-world numbers: all of them share an ARM Cortex M7 cpu, but which one is the winner?
Let's check it out (it includes a lot of charts)!
Perform pure video motion detection on RGB images with your cheap Esp32-camera and save photo captures to the flash memory or SD card without hassle! Easy to use and fully customizable!
How tiny is TinyML? How fast is TinyML?
Do you want to get some REAL numbers on embedded machine learning on Arduino, STM32, ESP32, Seeedstudio boards (and more coming)?
This page will answer all your questions!
Do you want to transform your cheap esp32-cam in a DIY surveillance camera with moton detection AND photo capture?
Look no further: this post explains STEP-BY-STEP all you need to know to build one yourself!
Painless TinyML Convolutional Neural Network on your Arduino and STM32 boards: the MNIST dataset example!
Are you fascinated by TinyML and Tensorflow for microcontrollers?
Do you want to run a CNN (Convolutional Neural Network) on your Arduino and STM32 boards?
Do you want to do it without pain?
EloquentTinyML is the library for you!
You will be surprised by how much accuracy you can achieve in just a few kylobytes of resources: Decision Tree, Random Forest and XGBoost (Extreme Gradient Boosting) are now available on your microcontrollers: highly RAM-optmized implementations for super-fast classification on embedded devices.
Fourier Transform is probably the most well known algorithm for feature extraction from time-dependent data (in particular speech data), where frequency holds a great deal of information. Sadly, computing the transform over the whole spectrum of the signal still requires O(NlogN) with the best implementation (FFT - Fast Fourier Transform); we would like to achieve faster computation on our microcontrollers.
In this post I propose a partial, naive linear-time implementation of the Fourier Transform you can use to extract features from your data for Machine Learning models.
Let's revamp the post I wrote about word classification using Machine Learning on Arduino, this time using a proper microphone (the MP34DT05 mounted on the Arduino Nano 33 BLE Sense) instead of a chinese, analog one: will the results improve?