Recent Releases of scikit-maad
scikit-maad - New stable release : v1.5.1
Release Notes
‼️ This new release fix a bug in the SPL module.
Previous versions incorrectly calculated the voltage conversion by omitting the division by 2 for the Vadc
parameter.
This resulted in voltage values that were twice as large as they should.
If you want to correct the voltage values obtained with the previous versions, you can simply divide the old results by 2.
In dB SPL, this lead to a 6 dB increase in the calculated sound pressure level. If you want to correct the SPL values obtained with the previous old version, you can simply subtract 6 dB from the old results.
We are really sorry for the inconvenient 🙏
This has been corrected in the new version 1.5.1. Ensure you are using the latest version (>=1.5.1) to obtain accurate voltage, pressure and dB SPL values.
Full Changelog: https://github.com/scikit-maad/scikit-maad/compare/v1.5.0...v1.5.1
New Contributor
- @sammlapp discovered the bug.
Biosphere - Bioacoustics and Acoustic Data Analysis
- Python
Published by shaupert 17 days ago

scikit-maad - New stable release : v1.5.0
Release Notes
We are pleased to announce the latest release with several important enhancement, fixes and documentation improvements to ensure compatibility with the latest versions of SciPy and scikit-image as well as with Xeno-Canto.
In this new version, 2 new alpha indices are implemented, aROI and nROI, the latter being a good proxy of the average species richness per 1 min soundscape.
New features
[ENH] add new alpha indices nROI and aROI + new tests
[ENH] Remove resampy dependency. Resample is now done with scipy.signal module
Bug Fixes
[FIX]: remove verbose in region_of_interest_index function
[FIX]: fix bug when calculating aROI. Results change between scikit-image 0.22 and 0.23 due to change in closing function- [INSTALL]:
[FIX]: Fixed compatibility with scipy version 1.15
[FIX]: the audio file format from xc
[FIX]: correct the format_features function
[FIX]: Adjusted the plot for graphical soundscapes
install
[INSTALL]: update pyproject.toml. Remove Python 3.8 / add 3.11 and 3.12
[INSTALL]: change the version of scikit-image to be >=0.23.1
[INSTALL]: update version and requirements
[INSTALL]: Update README.md
Documentation
[DOC] Updating support for python 3.11
[DOC] Web documentation fix
New Contributors
- @jscanass made their first contribution in https://github.com/scikit-maad/scikit-maad/pull/100
Biosphere - Bioacoustics and Acoustic Data Analysis
- Python
Published by shaupert 25 days ago

scikit-maad - New stable release : v1.4.3
Release Notes
We are pleased to announce the latest release with several important fixes and documentation improvements to ensure compatibility with the latest versions of SciPy and NumPy.
Bug Fixes
[FIX]: Updated to address the deprecation of the scipy.ndimage.morphology namespace. The grey_opening function should now be imported from the scipy.ndimage namespace. (Commit: 768e831)
[FIX]: Resolved an import error when using gaussian from scipy.signal in SciPy versions >= 1.13.0. Please use scipy.signal.windows.gaussian instead. (Commit: e434362)
[FIX]: Replaced the nyq parameter with fs in scipy.signal.firwin to maintain compliance with SciPy versions > 12.0.0. (Commit: 0f9e1d5)
[FIX]: Ensured compatibility with NumPy v2.0.0. (Commit: f8ecccd)
[FIX]: Added an internal function _quantile_is_valid to address the removal of this functionality in NumPy v2.0.0. (Commit: 9783bb7, e0d336b)
Documentation
[DOC]: Added a link to Google Colab in the ADI and ADI functions documentation for easier access. (Commit: 9bf1294)
[DOC]: Added a License badge to the documentation. (Commit: c9f9e9b)
[DOC]: Made minor improvements to the documentation webpage. (Commit: caa8b7d)
[DOC]: Updated the version number in the documentation. (Commit: b8a0d52)
Thank you to all contributors for helping us maintain the quality and compatibility of our codebase. We encourage users to upgrade to this latest version to benefit from these updates.
Full Changelog: https://github.com/scikit-maad/scikit-maad/compare/v1.4.2...v1.4.3
Biosphere - Bioacoustics and Acoustic Data Analysis
- Python
Published by juansulloa 9 months ago

scikit-maad - New stable release : v1.4.2
Fixes:
- Improved multiprocessing context in example.
- Corrected default plot values.
- Addressed column name issues in date_parser.
- Enhanced plot axis display.
- General fixes in plotting and template matching.
- Replaced 'selem' with 'footprint' for compatibility with scikit-image.
- Improved input validation for metadata retrieval.
Enhancements:
- Added metadata reading for any wav files.
- Parallelized graphical_soundscapes function.
- Enhanced verbose task execution display.
- Added local maxima detection in spectrograms.
Documentation:
- Updated examples for new date_parser.
- Refreshed version 1.4.2 documentation.
- Added new examples and images to the gallery.
Development:
- Universal date_parser modification.
- Introduced heatmap functions for better visualization.
- Added tests for template matching and spectrogram peaks.
We encourage users to upgrade to this latest version to take advantage of these improvements and enhancements.
Biosphere - Bioacoustics and Acoustic Data Analysis
- Python
Published by juansulloa about 1 year ago

scikit-maad - New stable release : v1.4.1
We're excited to announce the release of a new minor version of our package, incorporating several enhancements, bug fixes, and documentation improvements. Here's a summary of the updates:
Enhancements:
- Added the possibility to read metadata from any WAV file, similar to the functionality in sox -i.
- Improved verbose display of execution of tasks.
- Added functionality to parallelize graphical soundscapes.
- Introduced a new function to find local maxima in spectrograms.
- Enhanced the verbose display of task execution.
- Added a new feature to compute graphical soundscapes.
- Included a new example for graphical soundscapes.
Bug Fixes:
- Fixed NaN issues for ACTmean and TFSD.
- Addressed a minor bug for plotting graphical soundscapes.
- Ensured the time column is formatted as a string.
- Resolved an issue with the time column.
- Fixed a bug when saving Audacity annotations with labels.
- Improved input validation and file search for the get_metadata_dir function.
- Fixed a bug related to plotting and removed unnecessary plt.show() calls.
- Replaced selem with footprint in scikit-image.
- Made minor adjustments to ensure generalization in the usage of the graphical_soundscape function.
- Corrected an issue with template matching function.
Documentation:
- Updated README.md.
- Edited docstrings for proper display with Sphinx.
- Fixed examples to work with macOS.
- Added images for the example gallery in documentation.
Additionally, various tests were adjusted and added to ensure the reliability and functionality of the package.
Biosphere - Bioacoustics and Acoustic Data Analysis
- Python
Published by shaupert about 1 year ago

scikit-maad - New stable release : v1.4.0
This new release adheres to the guidelines for a more robust, stable, and responsive package, aiming to enhance performance and enable more reproducible scientific research.
We now integrate a continuous integration and continuous development process to ensure that scikit-maad is supported on different operating systems (UNIX, Windows and MacOSX) with different versions of Python.
With this update, we can easily track deprecated functions and anticipate future releases of the required packages.
Additionally, we have addressed all the detected bugs and made necessary fixes.
In particular, we have added the following functionalities:
New features
Template matching: new spectrogram template matching function to easily find stereotyped signals in audio recordings.
Acoustic features: new functions to compute robust spectral (peak frequency, spectral quantiles, bandwidth) and temporal features (duration, temporal_quantile) on audio signals.
Documentation
The updated documentation with new functions is still here: scikit-maad.github.io
Fixed bugs
Ensured swift integration with latest versions of scipy, numpy, pandas and scikit-image.
Enhancements
We worked to meet all of the standards listed on pyOpenSci
- Advances in packaging best practices to ensure continuous integration and continuous development
- Shifted to project.toml for packaging
- CONTRIBUTING.md file: helps newcomers understand the project's contribution process and encourages active participation.
- Github workflows for testing on multiple platforms and multiple versions of Python
- Templates for reporting issues on GitHub
- Community guidelines including contribution guidelines in the CONTRIBUTING.md file
Test
We improved the test coverage by adding tests for most of the main functions: spectrogram, alpha_indices, shape_features, and more. We used both, pytest with specific tests and doctest that tests the examples provided for each function in the documentation.
Note
Be aware that the v1.4.0 may be not compatible with older versions of Python (<=3.7).
Contributors
We would like to extend our sincere gratitude to all the contributors who have taken the time to submit issues and provide advice. Your valuable input and feedback have been instrumental in improving our software and ensuring its continued development. Thank you for your support and for helping us create a better experience for all users. In particular, we would like to thank:
- saguileran [Sebastian Aguilera Novoa]
- Bengt [Bengt Lüer]
- NickleDave [David Nicholson]
- thealejandroperilla [Gabriel Perilla]
- pierromond [Pierre Aumond]
- modantailleur
Biosphere - Bioacoustics and Acoustic Data Analysis
- Python
Published by shaupert almost 2 years ago

scikit-maad - Stable Release : v1.3.12
This release is a minor update of the release v1.3.6.
Update of the Xeno-Canto functions to fix the problem when a query contains the keyword "type".
The updated function xc_query now is able to deal with the new API of Xeno-Canto.
Biosphere - Bioacoustics and Acoustic Data Analysis
- Python
Published by shaupert over 2 years ago

scikit-maad - Stable Release : v1.3.11
This release is a minor update of the release v1.3.6.
This release fix minor problems in xeno-canto functions and update setup.py in order to avoid warning or error when installing scikit-maad on Google Colab.
Biosphere - Bioacoustics and Acoustic Data Analysis
- Python
Published by shaupert over 2 years ago

scikit-maad - Stable Release : v1.3.6
New examples
- add a new example to use multiCPU functionality to compute indices
New functionalities
In module util :
Audio metadata utilities with new functions :
- check_file_format : Check Wave file consistency. Check if WAVE format is correct and if file name follows standard format. The standard format is SITENAME_DATE_TIME.WAV, with DATE as YYYYMMDD and TIME as HHMMSS
- audio_header : Get audio header information from WAVE file. Header information includes, sample rate, bit depth, number of channels, number of samples, file size and duration.
- filename_info : Get information from filename when using standard format. The standard format is SITENAME_DATE_TIME.WAV, with DATE as YYYYMMDD and TIME as HHMMSS.
- get_metadata_file : Get metadata asociated with audio recordings in audio file. Metadata includes basic information of the audio file format (sample rate, number of channels, bit depth and file size), and date information from the filename. Note however, that this function is intended for use only with audio files with a self-describing header.
- get_metadata_dir : Get metadata asociated with audio recordings in a directory. Metadata includes basic information of the audio file format (sample rate, number of channels, bit depth and file size), and date information from the filename. Note however, that this function is intended for use only with audio files with a self-describing header.
Parser
- read_raven_annot : Read raven annotations file (or labeling file) and return a Pandas Dataframe with the bounding box and the label of each region of interest (ROI). If the file exists but has no annotations, the function returns and empty dataframe.
- write_raven_annot : Write audio segmentation to text file in Audacity format, a file that can be imported and modified with Audacity. If the dataframe has no frequency delimiters, annotations are saved with standard Audacity format (temporal segmentation). If the dataframe has temporal and frequencial delimiters, the annotations are saved as spectral selection style (spectro-temporal selection). If the dataframe is empty, the function saves an empty file.
In module sound :
Transform the signal
- gain : Apply amplification or attenuation to the audio signal.
Minor changes
- fix a bug in format_features
- add an argument in rand_cmap to change the seed
- fix a bug in entropy (when only zeros, entropy is 1)
- fix a bug in ADI and AEI calculation. The result is now similar to soundecology R package (see more details here :[https://github.com/scikit-maad/scikit-maad/issues/43]).
- add an optional argument to spectrogram to allow detrend to be off. This is interesting only when computing ADI and AEI
- update xeno-canto functions in order to be compliant with the new API.
- add an argument to overlay_rois in order to adapt the edge_color to the number of unique labels
- add warning in region_of_interest_index. default parameters are deprecated
- add new argument max_ratio_xy in region_of_interest_index. it defines the maximum ratio between the vertical axis (y) and horizontal axis (x) that is allowed for a ROI. This is very convenient to remove vertical spikes (e.g. rain). 10 seems a reasonable value to remove most of spikes due to light to medium rainfall.
Biosphere - Bioacoustics and Acoustic Data Analysis
- Python
Published by shaupert over 2 years ago

scikit-maad - Stable release : v1.3
This release contains new functions and new functionalities for some functions :
List of new functions :
- in the module sound :
normalize : Normalize audio signal to desired amplitude or decibell full scale value (dBFS).
trim : Slices a time series, from a initial timemin_t
to an ending timemax_t
.
- in the module util : xeno-canto scraper
xc_query : Collect metadata from xeno-canto depending on the search terms and store them in a dataframe
xc_multi_query : Performs multiple queries to xeno-canto
xc_selection : Select a maximum number of recordings depending on their quality and duration in order to create a homogeneous dataset
xc_download : Download audio files from xeno-canto. It will create directories for each species if needed
- in the module spl : active or detection distance estimation
attenuation_dB : Compute the attenuation in decibels taking into account the geometric, atmospheric and habitat attenuation contributions.
dBSPL_per_bin : Function to spread the sound pressure level (Energy in dB) along a frequency vector (bins).
detection_distance : Compute the detection distance also known as detection range or detection radius or active space.
pressure_at_r0 : Estimate the pressure p0 at distance r0 from pressure p measured at distance r. This function takes into account the geometric, atmospheric and habitat attenuations.
dBSPL_at_r0 : Estimate the sound pressure level L0 (dB SPL) at distance r0 from sound pressure level L measured at distance r. This function takes into account the geometric, atmospheric and habitat attenuations.
apply_attenuation : Apply attenuation of a temporal signal p0 after propagation between the reference distance r0 and the final distance r taken into account the geometric, atmospheric and habitat attenuation contributions.
List of functions with new functionalities :
- in module util :
we modified the function overlay_rois in order to add the possibility to display the bounding box with text label
we modified the function read_audacity_annot in order to be able to extract 2D annotations (time-frequency segmentation) as well as 1D annotations (only time segmentation).
- in module features :
Change in acoustic_eveness_index and acoustic_diversity_index in order to be compliant with R package Soundecology
- in module rois :
we added functionalities to find_rois_cwt and to plot_shape
List of new examples :
plot_wookpecker_drumming_characteristics.py : download audio files from Xeno-Canto and automatically extract characteristics
plot_xenocanto_wookpecker_activities.py : download metadata from Xeno-Canto to infer species activities
plot_sound_degradation_due_to_attenuation.py : simulation of sound degradation due to geometric, atmospheric and habitat attenuation
And the documentation is still here : scikit-maad.github.io/
Biosphere - Bioacoustics and Acoustic Data Analysis
- Python
Published by shaupert about 3 years ago

scikit-maad - Stable release: v1.2
This release contains all the functions that are described in the paper that was submitted in April 2021 to the journal Methods in Ecology and Evolution.
Contents : modules
. sound : The module sound is an ensemble of functions to load and preprocess audio signals.
. rois : The module rois has a collection of functions to segment and find regions of interest in audio and spectrograms.
. features : The module features is an ensemble of functions to characterize audio signals using temporal and spectral features, and ecoacoustic indices.
. spl : The module spl is a collection of functions used to describe the physics of acoustic waves.
. utils: The module utils has a handfull of useful set of tools used in the audio analysis framework (parser, plot, math, conversion...)
Documentation is here : https://scikit-maad.github.io/
Biosphere - Bioacoustics and Acoustic Data Analysis
- Python
Published by shaupert almost 4 years ago

scikit-maad - Release v1.1
Last release of the first version of Scikit-MAAD that was released for the first time in 2018.
This release is ready for production but it's better to wait for the next version of Scikit-MAAD that will be soon available (January 2021)
Contents : subpackages
- sound : functions to load, process and transform an audio into a spectrogram
- rois : functions to segment regions of interest (ROI)
- features : functions to extract shape features and centroids corresponding to the ROIs
- ecoacoustics : functions to compute ecoacoustics indices
- cluster : do_PCA and hdda functions. (will be deprecated for v2)
- util : bunch of functions
Biosphere - Bioacoustics and Acoustic Data Analysis
- Python
Published by scikit-maad over 4 years ago
