Since you mentioned you’re comming from a MATLAB/OpenCV background, my suggestion would be to use OpenCV for the 'heavy lifting' of image handling (capturing frames, resizing, or motion-triggering) but definitely go with a Machine Learning model (like TensorFlow Lite) for the actual recognition. Traditional OpenCV (like Haar cascades) struggles with the varied shapes of animals and lighting conditions in a lawn...
For a Pi 4 or 5, starting with a lightweight model like MobileNet SSD or TinyYOLO via TensorFlow Lite will give you much better accuracy for cats/dogs than classical OpenCV methods. As Gordon77 suggested, if you want high performance (30fps+), the Raspberry Pi AI Kit (Hailo-8L)or the new AI Camera IMX500 are fantastic because they offload the processing from the CPU...
here are the official links:
https://www.raspberrypi.com/products/ai-kit/
https://www.raspberrypi.com/products/ai-camera/
I'd love to hear which path you take—are you planning to use an off-the-shelf model or fine-tune your own???
For a Pi 4 or 5, starting with a lightweight model like MobileNet SSD or TinyYOLO via TensorFlow Lite will give you much better accuracy for cats/dogs than classical OpenCV methods. As Gordon77 suggested, if you want high performance (30fps+), the Raspberry Pi AI Kit (Hailo-8L)or the new AI Camera IMX500 are fantastic because they offload the processing from the CPU...
here are the official links:
https://www.raspberrypi.com/products/ai-kit/
https://www.raspberrypi.com/products/ai-camera/
I'd love to hear which path you take—are you planning to use an off-the-shelf model or fine-tune your own???
Statistics: Posted by oliver2003 — Thu Jan 15, 2026 4:45 am