Skip to content

SeatizenDOI/drone-workflow

GitHub contributors GitHub forks GitHub issues License GitHub pull requests GitHub stars GitHub watchers

Drone Workflow

Installation

To ensure a consistent environment for all users, this project uses a Conda environment defined in a requirements.yml file. Follow these steps to set up your environment:

I wish you good luck for the installation. You will need gdal...

  1. Install dependencies (test on ubuntu 24.04):

    sudo apt-get update && sudo apt-get install wkhtmltopdf
  2. Install Conda: If you do not have Conda installed, download and install Miniconda or Anaconda.

  3. Create the Conda Environment: Navigate to the root of the project directory and run the following command to create a new environment from the requirements.yml file:

    conda env create -f requirements.yml
  4. Activate the Environment: Once the environment is created, activate it using:

    conda activate drone_workflow_env

Usage

To run the workflow, navigate to the project root and execute:

python workflow.py [OPTIONS]

Input Parameters

The script allows you to select an input method from several mutually exclusive options:

  • -efol, --enable_folder: Use data from a session folder.
  • -eses, --enable_session: Use data from a single session.
  • -ecsv, --enable_csv: Use data from a CSV file.

Input Paths

You can specify the paths to the files or folders to be used as input:

  • -pfol, --path_folder: Path to the session folder. Default: /home/bioeos/Documents/Bioeos/plancha-session.
  • -pses, --path_session: Path to a specific session. Default: /media/bioeos/E/202309_plancha_session/20230926_REU-HERMITAGE_ASV-2_01/.
  • -pcsv, --path_csv_file: Path to the CSV file containing the inputs. Default: ./csv_inputs/retry.csv.

Datarmor

Build singularity container

module load singularity/3.6.4

singularity build -f drone_workflow.sif docker://seatizendoi/drone-workflow:latest

PBS

#!/bin/bash

#PBS -l select=1:ncpus=32:mem=40g
#PBS -l walltime=2:00:00
#PBS -N drone_workflow
#PBS -q omp
#PBS -S /bin/bash
#PBS -J 1-2

signal_handler() {
        pkill --parent "${$}"
}
trap signal_handler EXIT
cd /home1/datahome/villien/PBS/drone_workflow/

module load singularity/3.6.4


singularity run --pwd /home/seatizen/app/ \
--bind /home/ifremer-rbe-doi-rummo/drone/drone_serge:/home/seatizen/sessions \
drone_upscaling.sif -c -efol -pfol /home/seatizen/sessions -ip $PBS_ARRAY_INDEX

qstat -f $PBS_JOBID

Contributing

Contributions are welcome! To contribute, please follow these steps:

  1. Fork the repository.
  2. Create a new branch for your feature or fix.
  3. Commit your changes with clear, descriptive messages.
  4. Push your branch and submit a pull request.

License

This framework is distributed under the wtfpl license. See LICENSE for more information.

Partenaire logo

About

Drone workflow to generate metadata from a drone session

Resources

License

Code of conduct

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published