From efd61b270c83da132e96b647fe34290a6a1c2103 Mon Sep 17 00:00:00 2001 From: Loic-Lenof <loic.lenof@gmail.com> Date: Tue, 12 Jul 2022 16:21:57 +0200 Subject: [PATCH] Re-structuration + Update README + modified "audio_f" paths + added text to README.md --- BBPs/1-BBP_detection.py | 6 ++-- BBPs/2-manual_verification.py | 6 ++-- Clicks/1-detection_of_clicks.py | 6 ++-- Clicks/3-projection_3features.py | 2 +- Clicks/__pycache__/ClickUtils.cpython-39.pyc | Bin 6127 -> 0 bytes README.md | 31 ++++++++++++++++++- Whistles/1-Identification_of_whistles.py | 6 ++-- Whistles/2-get_stats_of_whistles.py | 6 ++-- 8 files changed, 46 insertions(+), 17 deletions(-) delete mode 100644 Clicks/__pycache__/ClickUtils.cpython-39.pyc diff --git a/BBPs/1-BBP_detection.py b/BBPs/1-BBP_detection.py index 5b0a901..2f7f7f5 100644 --- a/BBPs/1-BBP_detection.py +++ b/BBPs/1-BBP_detection.py @@ -22,9 +22,9 @@ print("Importation of packages done!") #%% Parameters # Paths print("\rSetting up parameters...", end="\r") -audio_f = "/media/loic/DOLPHINFREE/Acoustique" # Path to recordings -csv_f = "./../CSV_data" # Path to data in csv -save_f = "./Results" # Path to results +audio_f = "./../Audio_data" # Path to recordings +csv_f = "./../CSV_data" # Path to data in csv +save_f = "./Results" # Path to results # For functions sr = 512000 # sample rate of the recordings diff --git a/BBPs/2-manual_verification.py b/BBPs/2-manual_verification.py index e540a24..5413427 100644 --- a/BBPs/2-manual_verification.py +++ b/BBPs/2-manual_verification.py @@ -23,9 +23,9 @@ print("Importation of packages done!") #%% Parameters print("\rSetting up parameters...", end="\r") # Paths -audio_f = "/media/loic/DOLPHINFREE/Acoustique" # Path to recordings -csv_f = "./../CSV_data" # Path to data in csv -save_f = "./Results" # Path to results +audio_f = "./../Audio_data" # Path to recordings +csv_f = "./../CSV_data" # Path to data in csv +save_f = "./Results" # Path to results # For functions sr = 512000 # sample rate of the recordings diff --git a/Clicks/1-detection_of_clicks.py b/Clicks/1-detection_of_clicks.py index a189c6c..5739e8b 100644 --- a/Clicks/1-detection_of_clicks.py +++ b/Clicks/1-detection_of_clicks.py @@ -20,9 +20,9 @@ print("Importation of packages done!") #%% Parameters # Paths print("\rSetting up parameters...", end="\r") -audio_f = "/media/loic/DOLPHINFREE/Acoustique" # Path to audio data -csv_f = "./../CSV_data" # Path to csv data -save_f = "./Results/peaks_02052022" # Path to save results +audio_f = "./../Audio_data" # Path to recordings +csv_f = "./../CSV_data" # Path to csv data +save_f = "./Results/peaks_02052022" # Path to save results # Audio parameters sr = 512000 # sample rate of the recordings diff --git a/Clicks/3-projection_3features.py b/Clicks/3-projection_3features.py index 54df7fb..ad7bd6d 100644 --- a/Clicks/3-projection_3features.py +++ b/Clicks/3-projection_3features.py @@ -24,7 +24,7 @@ print("Importation of packages done!") #%% Parameters print("\rSetting up parameters...", end="\r") -audio_f = "/media/loic/DOLPHINFREE/Acoustique" # Path to audio data +audio_f = "./../Audio_data" # Path to recordings csv_f = "./../CSV_data" # Path to csv data res_f = "./Results" # Path to save results peaks_f = "peaks_02052022" # Path to save results diff --git a/Clicks/__pycache__/ClickUtils.cpython-39.pyc b/Clicks/__pycache__/ClickUtils.cpython-39.pyc deleted file mode 100644 index 637b1f10f4e9ed909a15627bce8f38dc038a2d95..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6127 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 diff --git a/README.md b/README.md index 5b42868..7fb42ba 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,31 @@ # Scripts-DOLPHINFREE - Scripts used for mdpi article +A repository containing scripts and data used in *Lehnhoff et al, 2022* (in submission process). + +## Description +This repository contains the files used to analyse data obtained during the <a href="https://umr-marbec.fr/en/the-projects/dolphinfree/">DOLPHINFREE project</a>. The goal was to detect and identify clicks and whisltes in audio recordings of common dolphins. + +"BBPs", "Clicks" and "Whisltes" folders each treat a type of signal emitted by dolphins. +- Each folder contains numbered scripts for step-by-step execution. +- ___Utils.py files contain the functions necessary to the execution of the other scripts +- "Results" and other subfolders contain... results and other outputs (surprise surprise). + +"Stats" folder contains the files used to carry on a statistical analysis of extracted data. +"CSV_data" folder contains the visual observations made during experiments. +"Audio_data" folder is empty. Files cannot be made available publicly due to the presence of copyrighted elements. + +## Get Started +.py files were developped using Python 3.9.7. +If needed, you can add missing packages to your environement using: +```bash +$ pip install name-package +``` + +.matlab files can be executed in matlab or octave. + +## Contact +Feel free to contact me if you have questions, tips or anything else to say. I'd really appreciate it! + +Loïc Lehnhoff - <loic.lehnhoff@gmail.com> + +## Publication +**IN SUBMISSION PROCESS:** Lehnhoff, L.; Glotin, H.; Bernard, S.; Dabin, W.; Le Gall, Y.; Menut, E.; Meheust, E.; Peltier, H.; Pochat, A.; Pochat, K.; Rimaud, T.; Sourget, Q.; Spitz, J.; Van Canneyt, O.; Mérigot, B. *Behavioural response of common *dolphins Delphinus* delphis to a bio-inspired acoustic device for limiting fishery by-catch.* Sustainability **2022**, 1, 0 \ No newline at end of file diff --git a/Whistles/1-Identification_of_whistles.py b/Whistles/1-Identification_of_whistles.py index f914876..766961b 100644 --- a/Whistles/1-Identification_of_whistles.py +++ b/Whistles/1-Identification_of_whistles.py @@ -22,9 +22,9 @@ print("Importation of packages complete!") #%% Parameters # Paths print("\rSetting up parameters...", end="\r") -audio_f = "/media/loic/DOLPHINFREE/Acoustique" # Path to recordings -csv_f = "./../CSV_data" # Path to data in csv -save_f = "./Trajectories" # Path were +audio_f = "./../Audio_data" # Path to recordings +csv_f = "./../CSV_data" # Path to data in csv +save_f = "./Trajectories" # Path were # Audio parameters start = 0 # start time for signal (in sec) diff --git a/Whistles/2-get_stats_of_whistles.py b/Whistles/2-get_stats_of_whistles.py index eded8ab..af3151c 100644 --- a/Whistles/2-get_stats_of_whistles.py +++ b/Whistles/2-get_stats_of_whistles.py @@ -22,9 +22,9 @@ print("Importation of packages complete!") #%% Parameters print("\rSetting up parameters...", end="\r") -audio_f = "/media/loic/DOLPHINFREE/Acoustique" # Path to recordings -csv_f = "./../CSV_data" # Path to data in csv -save_f = "./Trajectories" # Path were +audio_f = "./../Audio_data" # Path to recordings +csv_f = "./../CSV_data" # Path to data in csv +save_f = "./Trajectories" # Path were results_f = "./Evaluation" keep_if = 1 # minimal length of a whistle to be kept -- GitLab