Skip to content

A realtime acoustic bird classification system for the Raspberry Pi 4B built on the TFLite version of BirdNET.

License

Notifications You must be signed in to change notification settings

Svardsten53/BirdNET-Pi

 
 

Repository files navigation

BirdNET-Pi

A realtime acoustic bird classification system for the Raspberry Pi 4B

Icon made by Freepik from www.flaticon.com

Introduction

BirdNET-Pi is built on the TFLite version of BirdNET by @kahst using pre-built TFLite binaries by @PINTO0309 . It is able to recognize bird sounds from a USB sound card in realtime and share its data with the rest of the world.

Check out birds from around the world

Currently listening in these countries . . . that I know of . . .

  • The United States
  • Germany
  • South Africa
  • France
  • Austria
  • Sweden
  • Scotland
  • Norway

If your installation isn't in one of the countries listed above, please let me know so that I can add your country to the list! Let me know either in a GitHub issue, or email me and let me know where your BirdNET-Pi is listening.

Features

  • 24/7 recording and BirdNET-Lite analysis
  • BirdWeather integration (you will need to be issued a BirdWeather ID -- for now, request that from @timsterc here)
  • Web interface access to all data and logs
  • Automatic extraction of detected data (creating audio clips of detected bird sounds)
  • Spectrograms available for all extractions
  • MariaDB integration
  • NoMachine remote desktop (for personal use only)
  • Live audio stream
  • Integrated phpSysInfo
  • New species mobile notifications from Pushed.co (for iOS users only)
  • Localization supported

Requirements

  • A Raspberry Pi 4B
  • An SD Card with the 64-bit version of RaspiOS installed (please use Bullseye) (download the latest here)
  • A USB Microphone or Sound Card

Installation

Headless installation guide available HERE
Pre-installeld beta image available for testing HERE

The system can be installed with:

curl -s https://raw.githubusercontent.com/mcguirepr89/BirdNET-Pi/main/newinstaller.sh | bash

Access

The BirdNET-Pi system can be accessed from any web browser on the same network:

Access Credentials:

  • Username:birdnet
  • Password: The "CADDY_PWD" password set during installation

Uninstallation

/usr/local/bin/uninstall.sh && cd ~ && rm -drf BirdNET-Pi

Troubleshooting and Ideas

I want this to work for you! If you have any trouble, or if my documentation is wrong, I'd like to get things right.

If you encounter any issues at any point, or have questions, comments, concerns, ideas, or want to share something, please take a look through the open and closed issues and the community discussions. PLEASE feel invited to open a new issue if you don't find the help you need. Likewise, please accept my invitation to start a new discussion to get a conversation started around your topic.

If you are not a GitHub user and need help, you can email me, but I hope you will consider making a GitHub account so that your questions can be answered here for others as well. I expect this project will attract more bird-enthusiasts than Linux-enthusiasts, so please don't feel like any question is too novice or, pardon the phrase, stupid to ask. I want to help!

Sharing

Please join a Discussion!! and please join BirdWeather!! I hope that if you find BirdNET-Pi has been worth your time, you will share your setup, results, customizations, etc. HERE and will consider making your installation public.

ToDo, Notes, and Coming Soon

Internationalization:

The bird names are in English by default, but other localized versions are available thanks to the wonderful efforts of @patlevin. Please unzip model/labels_l18n.zip and replace model/labels.txt with your corresponding language. For instance, if you want the Swedish labels, rename the current labels.txt to labels_en.txt and then rename labels_sv.txt to labels.txt. (I will make this more straightforward in the future.)

Realtime Analysis Predictions View

The pre-built TFLite binaries for this project also support the BirdNET-Demo, which I am currently testing for integration into the BirdNET-Pi. If you know anything about JavaScript and are willing to help, please let me know in the Live Analysis discussion.

Tips and Coming Soon:

For some reason, the system seems to run more efficiently and the birds sound better when you Star on GitHub the project :)

Expect FULL internationalization options during installation (and available post-installation) for the following languages:

  • German
  • Swedish
  • French
  • Spanish

and detection/database localization for the following languages:

Language Missing Species out of 6,362 Missing labels (%)
Afrikaans 5774 90.76%
Catalan 544 8.55%
Chinese 264 4.15%
Croatian 370 5.82%
Czech 683 10.74%
Danish 460 7.23%
Dutch 264 4.15%
Estonian 3171 49.84%
Finnish 518 8.14%
French 264 4.15%
German 264 4.15%
Hungarian 2688 42.25%
Icelandic 5588 87.83%
Indonesian 5550 87.24%
Italian 524 8.24%
Japanese 640 10.06%
Latvian 4821 75.78%
Lithuanian 597 9.38%
Norwegian 325 5.11%
Polish 265 4.17%
Portuguese 2742 43.10%
Russian 808 12.70%
Slovak 264 4.15%
Slovenian 5532 86.95%
Spanish 348 5.47%
Swedish 264 4.15%
Thai 5580 87.71%
Ukrainian 646 10.15%

About

A realtime acoustic bird classification system for the Raspberry Pi 4B built on the TFLite version of BirdNET.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • PHP 72.5%
  • Shell 15.4%
  • HTML 8.5%
  • Python 2.9%
  • CSS 0.7%