Crate birdnet_onnx

Crate birdnet_onnx 

Source
Expand description

§birdnet-onnx

A Rust library for running inference on BirdNET and Perch ONNX models.

§Supported Models

  • BirdNET v2.4: 48kHz, 3s segments (144,000 samples)
  • BirdNET v3.0: 32kHz, 5s segments (160,000 samples)
  • Perch v2: 32kHz, 5s segments (160,000 samples)

§Example

use birdnet_onnx::Classifier;

let classifier = Classifier::builder()
    .model_path("model.onnx")
    .labels_path("labels.txt")
    .with_cuda()
    .build()?;

let result = classifier.predict(&audio_segment)?;
for pred in &result.predictions {
    println!("{}: {:.1}%", pred.species, pred.confidence * 100.0);
}

Re-exports§

pub use execution_providers::available_execution_providers;
pub use tensorrt_config::TensorRTConfig;

Modules§

execution_providers
Execution provider availability detection.
ort_execution_providers
ExecutionProviders provide hardware acceleration to Sessions.
tensorrt_config
TensorRT execution provider configuration

Structs§

Classifier
Thread-safe classifier for bird species detection
ClassifierBuilder
Builder for constructing a Classifier
LocationScore
Species probability score from meta model based on location and date.
ModelConfig
Model configuration derived from detected model type.
Prediction
Single species prediction.
PredictionResult
Complete inference result.
RangeFilter
Thread-safe range filter for location-based species filtering
RangeFilterBuilder
Builder for constructing a RangeFilter

Enums§

Error
Errors that can occur during classifier operations.
ExecutionProviderInfo
Information about execution providers (hardware backends).
LabelFormat
Expected label format per model type.
ModelType
Supported model types.

Functions§

calculate_week
Calculate week number for BirdNET meta model (48-week year, 4 weeks per month).
init_runtime
Initialize ONNX Runtime with auto-detected library path.
validate_coordinates
Validate geographic coordinates.
validate_date
Validate date parameters for BirdNET calendar.

Type Aliases§

Result
Result type alias using [Error].