I have assigned my students the below projects to work on Edge impulse using the TinyML kit. However, I would like to ask, with respect to your experience and the product specifications, which can work with the Arduino Nano 33 sense and which requires a Raspberry pi or ESP32-CAM:
Pothole detection and localization (Image based)
Smart bird feeder for bird recognition (Image, might include sound later)
Eye test based on speech recognition
I am still not fully aware of the Arduino 33 sene maximum capabilities and limitations when implementing tinyML image based applications
The Nano 33 can handle a lot of different applications, including low-resolution image classification, keyword spotting, and low-sample-rate sensor data (e.g. motion/gesture recognition with accelerometers).
Anything that requires object localization and/or detection will run very poorly (or not at all) on the Nano. For #1, you will probably need an ESP32, OpenMV Cam, or Pi. If #2 is just image classification, that will likely run decently well on the Nano. Assuming that #3 is keyword spotting, that should run on a Nano.
Thank you for the prompt reply!
I will experiment with the Nano on the 3 topics in order to check its performance and the resolution
for the first project, It can be made to only say that there is a pothole here or not. I think this way it can be treated as an image classification problem and run on the Nano.
for this one it should classify which bird it is from for example 5 pre trained bird species. But I am guessing from your previous answer that it will not be able to handle more than one bird in an image ? Is the Raspberry PI 3 B+ compatible with EdgeImpulse for these kind of applications?
The system will be trained to detect some letters a, b, c ,d etc… Therefore it should work with no issues
For #2, the Nano should support multiple classes. In my experience, you start running into issues over about 5-6 classes, as you start needing more complex models and/or better resolution.
I just a final question concerning this thread. Does Edge Impulse support Raspberry PI 3 B+, if yes is there any guide to setting it up? Mainly for project 2
I can only find Raspberry PI 4 as supported board in the documentation, however from a simple search in the forum some threads discuss Raspberry PI 3
I managed to run EI models on the RPI 3B+ when we released the Linux support about a year and a half ago. I have to say that I haven’t tested it again since.
You should be able to set it up smoothly using the same tutorial as the RPI4 but I cannot 100% guarantee it will work. If the edge-impulse-linux cli does not fully work, the Python SDK and the C++ build should work! Just keep in mind that it will be a bit slower than the inference time you will obtain from the studio.
Do not hesitate to let us know if everything works as expected, I am sure many people would be interested too!