QutEcoacoustics / audio-analysis

The audio analysis code (AnalysisPrograms.exe) for the QUT Ecoacoustics Research Group
https://ap.qut.ecoacoustics.info/
Apache License 2.0
52 stars 12 forks source link

Issue500 koala recognizer3 #521

Open towsey opened 2 years ago

towsey commented 2 years ago

Title of PR

What is the purpose of this PR? To approve a new call recognizer for the male Koala.

Changes

1) Create a new class, config file and unit test for the recognition of koala calls. Call this the Mark3 recognizer to contrast with the first recognizer (now ten years old) and Mark2 made by Ivan. 2) Clean up the four generations of classes to detect oscillation events. Delete the first experimental version Oscillations2010,cs. 3) Make two oscillation classes available for generic recognizers. These have different algorithms. Classes are OscillationDetection2012 and OscillationDetection2019. Add extensive documentation and Log comments to these classes so the user can determine what is happening when config parameters are changed. 4) Refactor the GenericRecognizer code so that the PostProcessing methods are outside the main loop. This enables non-generic call recognizers to process calls in three steps: i) event detection using profiles; ii) filtering of profile events using custom code for the species; and iii) the post-processing steps. 5) Add extensive commentary to the header of the main Koala recognition class to explain the what and why of the recognizer.

Issues

At the time of submitting this pull request, there is one failing unit test which tests the compression of spectrograms prepared from acoustic indices. I did not write this unit test and I am not sure why it is now failing because it has passed on previous occasions while I have worked in this branch. The error is an out of memory issue because the matrix has a large dimension.

Visual Changes

None

Final Checklist