Hello
I’m using AudioMoth devices (version 1.0.0) to record bird sounds in African savanna with settings of: 1-min recording length; 32-Htz sample rate (SR); “medium” gain, using; a “SanDisk Extreme” 32GB micro-SIM card with 1.5V Energizer Alkaline Batteries.
I’m trying to detect bird songs using the R packages warbleR (https://rpubs.com/marcelo-araya-salas/110155) &/or monitoR (https://rdrr.io/cran/bioacoustics/f/vignettes/tutorial.Rmd) using the following workflow. 1) identify “event windows” (i.e. a range of sound-attributes associated with the bird-call of interest, that may also include other similar bird calls), 2) extract 22 – 27 specific sound-attributes included in the event windows and label as bird of interest (yes) or not (no), 3) predict bird-calls of interest in other sound recordings using a Random Forest Model. I can use the workflow to make good predictions using bird-calls imported from Xeno-canto (https://www.xeno-canto.org/; 44 Hz SR), however I can’t use the same protocol to make similar predictions using my AudioMoth sound recordings.
From the sonograms (see attached; continuous time on x-axis, frequency on y-axis in Hz), it seems that the AudioMoth recordings have a poorer resolution and higher background noise than the Xeno-canto ones (even when the 44-Hz Xeno-canto calls are downscaled to 32-Hz). Could this causing the problem? Alternatively, perhaps there is an issue with using the AudioMoth .WAV files instead of .wav files in these packages?
Has anyone conducted similar analyses and experienced similar problems? Any help would be greatly appreciated. I am happy to share specific sound-clips and script if needed.
Thank you for your help!
Hi everyone,
I'm hoping someone can help me with a similar issue I'm having with warbleR as gordonc--I'm trying to figure out the appropriate parameters for my autodetect function. I have adjusted multiple parameters a bunch of times to try and have the program "find" the song I'm interested in, but I'm not having any luck. The .wav files that are being used here are all from xeno-canto, so they all definitely have the song in the file that I'm interested in. It will pick bits and pieces of the spectrogram but it won't read the entire thing. I've attached a .tiff file and .wav files for you all to see as an example, and I've included the code as well.
Thanks so much in advance!!
Sarah
sub <- wavs[sample(1:length(wavs), 3)]
sub autodetec(flist = sub, bp = c(1, 8), threshold = 15,
mindur = 0.05, maxdur = 3, envt = "abs",
ssmooth = 600, ls = TRUE, res = 100, flim= c(0, 8),
wl = 2000, set =TRUE, sxrow = 10, rows = 15, redo = TRUE,
it = "tiff", img = TRUE, smadj = "end")
Hi gordonc,
We will also be working with Audiomoth+warbleR package monitoring bird migration. How long does the autodetect takes to run through a night's recording (10-12h)? Ours need 5h to do so, which I it's a lot.
Many thanks !
Rob
Nt! Good to hear you're making progress. Now you can label your events and then start "training" your Random Forest model with the variables of the autodetection. Therefore you first have to find out which variables will give the best results (this will take some trial and error to find the best results).
Good luck!
Thank you for the advice Jan. Given your help I've now been able to find event-windows in my AudioMoth data (i.e. step one of my workflow). My problem was that I was focusing on the Freq and Duration attributes in autodetect and not so much on the Amplitude attributes. I found that I was able to reliably detect my event-window by fine-tuning the "threshold", "ssmooth" and "wl" attributes (see attached).
Again, thank you for your help
Hello, Do you know where in the progress the problem starts? If it starts at step 1 of your workflow (finding the audio effents), you can try to change the sensitivity of the autodetection. Notice that in the tutorials of the packages they only use A-quality recordings from Xeno-Canto. So the parameters they use in the tutorials will work fine for recordings with similar quality. If you have recordings with more noise or calls that are not as loud, the autodetection will not detect the calls or only a small part of a call (making classification a lot more difficult). I'm using the bioacoustics package (threshold detection) in R to detect bat calls on my Audiomoth-recordings. Because bat calls are usually above the noise level this works fine. I've tried the same script (with different parameters) on some bird recordings that I've made with a Audiomoth. Because bird sounds are much lower and therefore more disturbed by background noise it was a lot harder to find the right parameters for the autodetection. I have not tried to classify this bird calls yet, but only finding them with the autodetection wasn't that easy. So the first step to get some result is to fine-tune the autodetection: run the autodetection with different parameters and compare the results in the data tables with the spectrograms of the recording to find the best parameters for the detection.
Hope this will help. Greetings, Jan