Skip to content
Snippets Groups Projects

Overhaul of the detection moldule and new command-line Interface with ketos-run

Merged Bruno Padovese requested to merge ketos-run into development

This change introduces many modifications and new functionalities:

Mainly, it is an overhaul of the detection moldule and the addition of the command-line Interface ketos-run to run trained models.

  • New method load_audio_representation_from_file <ketos.audio.load_audio_representation_from_file>. This method loads the parsed audio representation directly from a model_file. It also supports custom audio representations.

  • The dictionary with the audio representations available in ketos has been moved from the parsing module to the audio module.

  • New method load_input_transform_function <ketos.neural_networks.load_input_transform_function>. This method loads a custom input transform function directly from the model_file.

  • Method load_model_file <ketos.neural_networks.load_model_file> has been modified to support custom useer defined neural network architectures

  • User defined code such as custom audio representations and architectures will now be saved in the trained model file inside a folder named "custom". Custom audio orepresentations will be saved in a file named custom_audio_representation.py. Custom architectures will be saved in a file named custom_architecture.

  • Deprecated argument load_audio_repr in <ketos.neural_networks.load> in favor of the new method load_audio_representation_from_file.

Overhaul of the detection module:

  • Method merge_overlapping_detections <ketos.neural_networks.dev_utils.detection.merge_overlapping_detections> merges overlapping or adjacent detections.

  • New Method merge_consecutive_detections <ketos.neural_networks.dev_utils.detection.merge_consecutive_detections> merges consecutive detections.

  • New Method add_detection_buffer <ketos.neural_networks.dev_utils.detection.add_detection_buffer> adds a time buffer around detections

  • New Method convert_sequence_to_snapshot <ketos.neural_networks.dev_utils.detection.convert_sequence_to_snapshot> Converts the raw output from a sequence model to a standard snapshot format.

  • New Method apply_detection_threshold <ketos.neural_networks.dev_utils.detection.apply_detection_threshold> Filters out detection scores below or at a specified threshold and returns a list of tuples, where each tuple consists of a label (the index of the score) and the score itself.

  • New Method filter_by_threshold <ketos.neural_networks.dev_utils.detection.filter_by_threshold> Converts the raw output from a snapshot model to a standard format.

  • New Method filter_by_label <ketos.neural_networks.dev_utils.detection.filter_by_label> Filter a detection dataframe by a label.

  • New Method compute_score_running_avg <ketos.neural_networks.dev_utils.detection.compute_score_running_avg> Compute the running avg of scores given a window frame.

  • New Method batch_load_hdf5_data <ketos.neural_networks.dev_utils.detection.batch_load_hdf5_data> Loads HDF5 data in batches from a specified file and yields it for processing.

  • New Method batch_load_audio_file_data <ketos.neural_networks.dev_utils.detection.batch_load_audio_file_data> Loads data batches of audio data from a given AudioFrameLoader.

I have updated the pytest for the detection module, and tutorials, but havent created one yet for ketos-run.

I know this is a big change for just one branch. I will do my best to make it more modular and incremental going forward.

Merge request reports

Pipeline #2001 passed

Pipeline passed for a6703562 on ketos-run

Merged by Bruno PadoveseBruno Padovese 1 year ago (Aug 14, 2023 6:30pm UTC)

Merge details

  • Changes merged into with d9c8acc0.
  • Deleted the source branch.

Pipeline #2083 passed

Pipeline passed for d9c8acc0 on development

Activity

Filter activity
  • Approvals
  • Assignees & reviewers
  • Comments (from bots)
  • Comments (from users)
  • Commits & branches
  • Edits
  • Labels
  • Lock status
  • Mentions
  • Merge request status
  • Tracking
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
Please register or sign in to reply
Loading