A python api for BirdNET-Lite and BirdNET-Analyzer
Project description
birdnetlib
A python api for BirdNET-Lite and BirdNET-Analyzer
Installation
birdnetlib
requires Python 3.7+ and prior installation of Tensorflow Lite, librosa and ffmpeg. See BirdNET-Analyzer for more details on installing the Tensorflow-related dependencies.
pip install birdnetlib
Documentation
birdnetlib
provides a common interface for BirdNET-Lite and BirdNET-Analyzer.
Using BirdNET-Lite
To use the BirdNET-Lite model, use the LiteAnalyzer
class.
from birdnetlib import Recording
from birdnetlib.analyzer_lite import LiteAnalyzer
# Load and initialize the BirdNET-Lite models.
analyzer = LiteAnalyzer()
recording = Recording(
analyzer,
"sample.mp3",
lat=35.4244,
lon=-120.7463,
week=18,
min_conf=0.25,
)
recording.analyze()
print(recording.detections) # Returns list of detections.
recording.detections
contains a list of detected species, along with time ranges and confidence value.
[{'common_name': 'House Finch',
'confidence': 0.5744,
'end_time': 12.0,
'scientific_name': 'Haemorhous mexicanus',
'start_time': 9.0},
{'common_name': 'House Finch',
'confidence': 0.4496,
'end_time': 15.0,
'scientific_name': 'Haemorhous mexicanus',
'start_time': 12.0}]
Using BirdNET-Analyzer
To use the newer BirdNET-Analyzer model, use the Analyzer
class.
from birdnetlib import Recording
from birdnetlib.analyzer import Analyzer
# Load and initialize the BirdNET-Analyzer models.
analyzer = Analyzer()
recording = Recording(
analyzer,
"sample.mp3",
lat=35.4244,
lon=-120.7463,
week=18,
min_conf=0.25,
)
recording.analyze()
print(recording.detections)
About BirdNET-Lite and BirdNET-Analyzer
birdnetlib
uses models provided by BirdNET-Lite and BirdNET-Analyzer under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International Public License.
BirdNET-Lite and BirdNET-Analyzer were developed by the K. Lisa Yang Center for Conservation Bioacoustics at the Cornell Lab of Ornithology.
For more information on BirdNET analyzers, please see the project repositories below:
birdnetlib
is not associated with BirdNET-Lite, BirdNET-Analyzer or the K. Lisa Yang Center for Conservation Bioacoustics.
About birdnetlib
birdnetlib
is created and maintained by Joe Weiss.
Project Goals
- Establish a unified API for interacting with Tensorflow-based BirdNET analyzers
- Enable python-based test cases for BirdNET analyzers
- Make it easier to use BirdNET in python-based projects
- Make it easier to migrate to new BirdNET versions/models as they become available
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for birdnetlib-0.0.8-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b70786a4165f1b14125f7464ef8b15cdc86c9b9072273efcb183c7adab003ac9 |
|
MD5 | 0baa5c46ff3fefdd371f55c35b2265c3 |
|
BLAKE2b-256 | 360b2e831579c6d3770e054fbe83f4dbed67dd539eb636b23128ddc6de5591ac |