Mercurial > repos > astroteam > source_extractor_astro_tool
diff source_extractor_astro_tool.xml @ 0:f4648bd69d48 draft default tip
planemo upload for repository https://github.com/esg-epfl-apc/tools-astro/tree/main/tools commit 89e20bd2ec941d1d362da85bd81230419a1a4b2a
author | astroteam |
---|---|
date | Fri, 18 Jul 2025 14:23:35 +0000 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/source_extractor_astro_tool.xml Fri Jul 18 14:23:35 2025 +0000 @@ -0,0 +1,172 @@ +<tool id="source_extractor_astro_tool" name="source-extractor" version="0.0.1+galaxy0" profile="24.0"> + <requirements> + <requirement type="package" version="6.1.4">astropy</requirement> + <requirement type="package" version="3.10.3">matplotlib</requirement> + <requirement type="package" version="1.21.4">wget</requirement> + <requirement type="package" version="1.4.1">sep</requirement> + <requirement type="package" version="1.2.33">oda-api</requirement> + <requirement type="package" version="2025.6.11">tifffile</requirement> + <requirement type="package" version="9.4.0">ipython</requirement> + <!--Requirements string 'nb2workflow>=1.3.30' can't be converted automatically. Please add the galaxy/conda requirement manually or modify the requirements file!--> + </requirements> + <command detect_errors="exit_code">ipython '$__tool_directory__/source_extraction.py'</command> + <environment_variables> + <environment_variable name="BASEDIR">$__tool_directory__</environment_variable> + <environment_variable name="GALAXY_TOOL_DIR">$__tool_directory__</environment_variable> + </environment_variables> + <configfiles> + <inputs name="inputs" filename="inputs.json" data_style="paths" /> + </configfiles> + <inputs> + <param name="input_file" type="data" label="Input file" format="data" optional="false" /> + <param name="mask_file" type="data" label="Mask file" format="data" optional="true" /> + <param name="thresh" type="float" value="1.5" label="thresh" optional="false" /> + <param name="err_option" type="select" label="err_option" optional="false"> + <option value="array_rms">array_rms</option> + <option value="float_globalrms" selected="true">float_globalrms</option> + <option value="none">none</option> + </param> + <param name="maskthresh" type="float" value="0.0" label="maskthresh" optional="false" /> + <param name="minarea" type="integer" value="5" label="minarea" optional="false" /> + <param name="filter_case" type="select" label="Filter Case" optional="false"> + <option value="default" selected="true">default</option> + <option value="file">file</option> + <option value="none">none</option> + </param> + <param name="filter_file" type="data" label="Filter file" format="data" optional="true" /> + <param name="filter_type" type="select" label="filter_type" optional="false"> + <option value="conv">conv</option> + <option value="matched" selected="true">matched</option> + </param> + <param name="deblend_nthresh" type="integer" value="32" label="deblend_nthresh" optional="false" /> + <param name="deblend_cont" type="float" value="0.005" label="deblend_cont" optional="false" /> + <param name="clean" type="boolean" checked="true" label="clean" optional="false" /> + <param name="clean_param" type="float" value="1.0" label="clean_param" optional="false" /> + <param name="bw" type="integer" value="64" label="bw" optional="false" /> + <param name="bh" type="integer" value="64" label="bh" optional="false" /> + <param name="fw" type="integer" value="3" label="fw" optional="false" /> + <param name="fh" type="integer" value="3" label="fh" optional="false" /> + <param name="fthresh" type="float" value="0.0" label="fthresh" optional="false" /> + </inputs> + <outputs> + <data label="${tool.name} -> source_extraction bkg_picture" name="out_source_extraction_bkg_picture" format="auto" from_work_dir="bkg_picture_galaxy.output" /> + <data label="${tool.name} -> source_extraction rms_picture" name="out_source_extraction_rms_picture" format="auto" from_work_dir="rms_picture_galaxy.output" /> + <data label="${tool.name} -> source_extraction data_picture" name="out_source_extraction_data_picture" format="auto" from_work_dir="data_picture_galaxy.output" /> + <data label="${tool.name} -> source_extraction sources_picture" name="out_source_extraction_sources_picture" format="auto" from_work_dir="sources_picture_galaxy.output" /> + <data label="${tool.name} -> source_extraction segmentation_map_picture" name="out_source_extraction_segmentation_map_picture" format="auto" from_work_dir="segmentation_map_picture_galaxy.output" /> + <data label="${tool.name} -> source_extraction segmentation_map" name="out_source_extraction_segmentation_map" format="auto" from_work_dir="segmentation_map_galaxy.output" /> + <data label="${tool.name} -> source_extraction bkg_array" name="out_source_extraction_bkg_array" format="auto" from_work_dir="bkg_array_galaxy.output" /> + <data label="${tool.name} -> source_extraction rms_array" name="out_source_extraction_rms_array" format="auto" from_work_dir="rms_array_galaxy.output" /> + <data label="${tool.name} -> source_extraction catalog_table" name="out_source_extraction_catalog_table" format="auto" from_work_dir="catalog_table_galaxy.output" /> + </outputs> + <tests> + <test expect_num_outputs="9"> + <param name="input_file" location="https://gitlab.renkulab.io/astronomy/mmoda/source-extractor/-/raw/5680fc685979c56c69f98eec8153673422abfa72/input.fits" /> + <param name="thresh" value="1.5" /> + <param name="err_option" value="float_globalrms" /> + <param name="maskthresh" value="0.0" /> + <param name="minarea" value="5" /> + <param name="filter_case" value="default" /> + <param name="filter_type" value="matched" /> + <param name="deblend_nthresh" value="32" /> + <param name="deblend_cont" value="0.005" /> + <param name="clean" value="True" /> + <param name="clean_param" value="1.0" /> + <param name="bw" value="64" /> + <param name="bh" value="64" /> + <param name="fw" value="3" /> + <param name="fh" value="3" /> + <param name="fthresh" value="0.0" /> + <assert_stdout> + <has_text text="*** Job finished successfully ***" /> + </assert_stdout> + </test> + </tests> + <help>Source extractor +================ + +This tool can be used to extract luminous sources from sky images. It is +entirely based on the +`sep <https://sep.readthedocs.io/en/stable/index.html>`__ package, which +is built on `Source +Extractor <https://sextractor.readthedocs.io/en/latest/Introduction.html>`__. + +Input +----- + +Important input parameters: + +1. **Input file** (``.fits`` or ``.tiff``) - A single-channel sky image + to analyze. + +2. **Mask file** (``.fits`` or ``.tiff``; optional) - A 2D numpy array. + True values, or numeric values greater than **maskthresh**, are + considered masked. Masking a pixel is equivalent to setting data to + zero and noise (if present) to infinity. + +3. **thresh** - Threshold pixel value for detection: + ``thresh * err[j, i]``, where ``err[j, i]`` is given by the + **err_option** parameter; ``j`` and ``i`` represent the pixel indices + +4. **err_option** - Sets the error that is taken into account into the + detection of sources: + + - ``none`` - The value of **thresh** is taken as an absolute + threshold. + - ``array_rms`` - An array of the background RMS, i.e. for each + individual pixel. + - ``float_globalrms`` - A float value of the global background RMS. + +The rest of the parameters are described in the documentations of +`sep.Background <https://sep.readthedocs.io/en/stable/api/sep.Background.html#sep.Background>`__ +and +`sep.extract <https://sep.readthedocs.io/en/stable/api/sep.extract.html#sep.extract>`__. + +Output +------ + +Source Catalog +~~~~~~~~~~~~~~ + +The catalogue of sources is explained +`here <https://sep.readthedocs.io/en/stable/api/sep.extract.html#sep.extract>`__. + +Images +~~~~~~ + +There are 4 images as output: + +- **Background**: + + - ``.fits``: The output of ``sep.Background`` function, i.e. the + estimated 2D background of the input image. + - ``.png``: The gray-scale image of the previously described array + +- **Background noise**: + + - ``.fits``: The RMS of the background image. + - ``.png``: The gray-scale image of the previously described array + +- **Input image** - The gray-scale input image. +- **Sources** - The sources on the background subtracted input image +- **Segmentation map**: + + - ``.fits``: Each pixel is labeled with 0 or object ID (``0`` = + background; ``i+1`` = object ``i``). + - ``.png``: Binary mask (``1`` = source, ``0`` = background). + +Acknowledgement +--------------- + +Bertin, E. & Arnouts, S. 1996: `SExtractor: Software for source +extraction <https://ui.adsabs.harvard.edu/abs/1996A%26AS..117..393B/abstract>`__, +Astronomy & Astrophysics Supplement 317, 393 + +Barbary, (2016), SEP: Source Extractor as a library, Journal of Open +Source Software, 1(6), 58, doi:10.21105/joss.00058 +</help> + <citations> + <citation type="doi">10.1051/aas:1996164</citation> + <citation type="doi">10.21105/joss.00058</citation> + </citations> +</tool> \ No newline at end of file