Skip to content

surak/bird

Repository files navigation

Bird detector

This is a toy project, where I join a bunch of different technologies to better follow birds!

Most of the time in this project has been trying to make the Arducam 16mp Autofocus camera work. Now that I know, it's easier. I should have used the Picamera2 and Libcamera from the beginning, and left the old method of grabbing images with default OpenCV behind.

Hardware requirements:

Software requirements:

TL;DR:

cd ~
wget -O install_pivariety_pkgs.sh https://github.com/ArduCAM/Arducam-Pivariety-V4L2-Driver/releases/download/install_script/install_pivariety_pkgs.sh
chmod +x ./install_pivariety_pkgs.sh
sudo ./install_pivariety_pkgs.sh -p libcamera
sudo ./install_pivariety_pkgs.sh -p libcamera_apps
sudo apt install python3-opencv

Already on requirements.txt:

Running

  • As of today, I'm using mobilenet_v2 heavily quantized, which gave me 30fps, compared to 1.6fps on Yolo7 with ONNX.
  • run_app.sh calls uvicorn on port 5000

TODO

  • There's something going on with the rectangles and the detection. I am not sure if it's calculating on the small buffer and going to the big one.
    • I think it's because the inference buffer and the display buffer have to be multiples of each other, but I'm not sure.
  • Fine-tune on birds
  • A full pipeline for PyTorch's models to be trained in a supercomputer, and quantized and reduced to run at a decent performance on the Raspberry Pi.
  • Fix the autofocus on the Pi5. It's not working, and I'm not sure why.

Acknowledgments:

About

Everybody knows that bird is the word

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published