Some projects are built for a singular purpose, like turning on lighting strips to the beat of music, or roasting a hot dog via a sundial. But there are also the projects that are extendable – the ones where you realize that it could actually have a couple of use cases! These types of projects could solve maybe two or three challenges simultaneously, like a machine learning model that could use a camera to count skittles and count cards. And then there’s the over achiever projects that could be effective in half a dozen use cases, all within the same framework. Sumit with Team TensorCrop has built one of those projects, and on top of that it aims to solve real world challenges, ranging from assisting in farming, to tracking wildfires or illegal logging, and it’s all done through environmental sensing and audio analysis.
His project utilizes the RedBoard Artemis ATP (with the on-board microphone) to conduct ML audio analyses with a variety of use cases.
One example could be detecting harmful or beneficial organisms for plants; Sumit gives the example that flowers listen for bees, and it helps make their nectar sweeter. Another use case is detecting specific frequencies for wood cutting tools to determine if illegal logging is occurring. Sumit also took advantage of the SparkFun Environmental Combo Breakout to encourage lower use of fertilizers, pesticides and insecticides, and instead to take advantage of ML models to determine abnormalities in crop growth and photosynthesis rate.
Even though the dataset he used for audio was downloaded from Kaggle, he didn’t directly download the audio data onto the microcontroller – he rerecorded it with the Artemis microphone so that the device itself could actually run inference. He used a Python script to stream audio from the Artemis Apollo3 microphone, and then used an audio splitter to split audio files into one-second increments so that they could be trained on the Artemis board.
The audio training entails labeling the the data; in Sumit’s case the wanted sounds would be “aedes, anopheles, culex, bee, chainsaw,” as seen in his code.
Ultimately, once the training is finished, the model is converted into a lite model so that it can be deployed on an edge device.
Much like a sunflower, the sky is the limit for Sumit and this project. He aims to track the height of plants, develop systems using servos to cover plants in the event that CO2, temperature and light aren’t enough to encourage healthy growth, and measure environmental data to notify surrounding people if there may be a fire.
It’s a good reminder for all of us that most projects can be extended or repurposed to solve dozens of other problems, whether that’s in our own lives or affecting the globe. So pick up an old project this week and see how you can tweak it slightly to solve an entirely different challenge, and happy hacking!