OceanStreamIO / oceanstream

Oceanstream is a Python library which can be used as a CLI tool to process raw acoustic data from echosounders. It uses echopype as a backend. Developed at @pineviewlabs
https://oceanstream.io
MIT License
4 stars 3 forks source link

Added CLI utility and re-organized the project modules #152

Closed beatfactor closed 9 months ago

beatfactor commented 9 months ago

This PR adds a CLI module which allows users to process the entire workflow using different arguments. It is still in preview mode and several things are missing before we can publish it in the pip repository.

To use it from inside the project, run:

python -m oceanstream.cli

Usage:

usage: cli.py [-h] --raw-data-source RAW_DATA_SOURCE [--output-folder OUTPUT_FOLDER] [--sonar-model SONAR_MODEL] [--export-csv] [--config CONFIG] [--profile] [-l {DEBUG,INFO,WARNING,ERROR,CRITICAL}]

Process hydroacoustic data.

optional arguments:
  -h, --help            show this help message and exit
  --raw-data-source RAW_DATA_SOURCE
                        Path to a raw data file or directory containing multiple raw data files
  --output-folder OUTPUT_FOLDER
                        Destination path for saving processed data. Defaults to a predefined directory if not specified.
  --sonar-model SONAR_MODEL
                        Sonar model used to collect the data (EK60, EK80, etc.)
  --export-csv          Write CSV output files with processed data
  --config CONFIG       Path to a configuration file
  --profile             Display profiling information for mask creation
  -l {DEBUG,INFO,WARNING,ERROR,CRITICAL}, --log-level {DEBUG,INFO,WARNING,ERROR,CRITICAL}
                        Set the logging level
ruxandra-valcu commented 9 months ago

Once Mihai's comments are addressed, this can be approved, from my perspective