First of all, forgive me if I sound stupid. I am still learning Audio Processing. So I am trying to make a machine learning model for detecting a specific insect through sound.

  • Here is a sample raw audio waveplot using librosa library: **Figure  1: ** Before Processing

  • After some preprocessing, applying High- pass filter and normalize it here is the output: enter image description here

My questions are:

  1. The next step would be to extract features from this, do I have to frame the audio manually and extract the features from that specific frame? Like this? enter image description here

    1. How would I remove the silence where the sound of the insects is not present?
    2. Or do I have to analyze it directly for the whole duration of the sound? I have tested Librosa's Library in generating Spectrogram, here is the output:

enter image description here

  1. Any good resources you can recommend for beginners?

Thank you so much.


1 Answer 1


Typically, for analyses like this, you do overlapping windows with a hop size that is fixed fraction of the window size. So, for example, you might start by doing analyses of 1024 frames per window, and move the window forward 256 samples per analysis. Depending on how the data looks then, you may or may not want to apply a window function (like Hamming or the like) to each window.

But since you're basically trying to remove noise, it might be simpler to take an example of the noise itself, and then try to reduce that noise from the original sample. Take the FFT of the noise, subtract the frequency bins of the noise from the frequency bins of the sample, and run an inverse FFT to produce the final filtered result. If you take this approach, make sure to only do FFTs at half the sample rate.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.