Main Content

ML-Based Bird and Squirrel Detector (Raspberry Pi and AWS)

You can use ML tools from AWS and connect them to a Raspberry Pi to ID birds at your bird feeder.

System Overview
As shown in the diagram below, the Raspberry Pi sends pictures from my bird feeder to an S3 bucket at AWS. When a new image arrives in S3, this invokes a Python Lambda function that sends the photo to AWS Rekognition, which uses its ML-based image recognition capabilities to determine what’s in the photo. If a bird is detected, this triggers a message to an SNS topic, which you can use to get a text or email. If a squirrel is detected, a message is sent to a different SNS topic. So you might use texts to notify yourself of a squirrel sighting so you can go chase it away, and use email to notify yourself about interesting birds. Or you could even hook up the Raspberry Pi to shoot water at any squirrels invading the bird feeder (which might be a project for next summer). Eventually I added a simple web site built using the AWS S3 static web site approach, to allow easy viewing of the best pictures.

To complete this project you’ll need some Python skills (I’ve provided my code, but you’ll need to make a few modifications for your situation) and a medium-level understanding of AWS.”

Link to article