First things first, I love dogs, the 4th member of my family, Tobiah Iscariot (medium size poodle dog) is not only very smart but somethings I sware he is able to understand every word I say.
We walk in the park every day in the morning and is frustrating when you encounter other dogs that are not using their leash, for Toby the pressure of having to deal with unwanted encounters and possible fights with other male dogs. For me, the main reason is safety, safety for small children, people with cynophobia ( dog phobia ), or other small animals that just want peace in their lives.
I got you covered, my solution involves the usage of embedded machine vision to detect dogs that are not using a leash, audio alerts to kindly advise people to put their dogs on a leash, and WhatsApp messages (with photo evidence) and alert local security.
For detecting man best friend, we are using the Arduino Portenta paired with its camera shield running under the hood a Tensor Flow image calcification model. the device communicates over serial (UART) to the Adafruit Audio FX Sound Board and for sending the image we are sending the image over MQTT then the server takes care of the rest.
The image classification training was performed by collecting 90 side images of dogs with dogs wearing and not wearing a leash. You probably know ( i didn't know that the Arduino Portenta is currently only capable of running TensorFlow lite image classification models, this is perfectly fine for my use case and adjusted the parameters to better suit my use case.
I normally trained models in the past using regular Tensorflow with hundreds if not thousands of images ( and I did that for this project) but I ended up switching to ended Edge Impulse. I immediately fell in love with the easy-to-use interface, CLI command options, and the option to export to Tensorflow Lite models with huge optimizations. (love it guys)
I hope you like this project and if you are a dog owner, please put a leash on your dog if you are in a public space.
BONUS
I also train on my computer a regular Tensorflow object classification model using 600 images (yep a lot of time) the model is able to detect dogs and leashes, perfect for live video object classification running on a GPU accelerated device.
Comments