Skip to content

ONNX model inference#1215

Open
sammlapp wants to merge 48 commits intodevelopfrom
feat_onnx
Open

ONNX model inference#1215
sammlapp wants to merge 48 commits intodevelopfrom
feat_onnx

Conversation

@sammlapp
Copy link
Collaborator

No description provided.

sammlapp added 30 commits August 7, 2025 14:46
this doesn't seem ideal, but we can't add "inf" values to the hoplite db, and don't want to rescale or normalize because the hoplite db doesn't contain any additional scaling metadata
untested! need to check implementation and see how it works
The init method now allows specifying several common options such as
- bandpassing (crop spec)
- mel scale
- rescaling
- changing lower db limit
- spectrogram parameters
- image resizing

I added documentation of how to customize preprocessing as examples in SpectrogramPreprocessor.save_onnx() docstring
…fig())

Fixes #1171

also add wandb tests with pytest.skip option for both SpectrogramClassifier and LightningSpectrogramClassifier
this is a pretty big refactor aimed at making things like the BMZ Perch2/Birdnet/TF models and ONNXModel only need to implement batch_forward() and otherwise be able to use SpectrogramPreprocessor methods like .predict() and .embed()

The strategy is that you implement batch_forward as appropraite for the class, and it returns a dictionary of outputs. Then predict() and embed() just need to make the dataloader with self.predict_dataloader(), iterate the dataloader to get batches, call batch_forward() on each batch, and aggregate the results across batches.

Some things in the tutorials are likely broken after this refactor, I haven't run/tested/checked them.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant

Comments