view quantification.xml @ 1:aba3655fdef0 draft

"planemo upload for repository https://github.com/ohsu-comp-bio/quantification commit 897a7dc7cb43e45d6f0fdfe2b2970e59f20f8853"
author watsocam
date Fri, 11 Mar 2022 23:35:52 +0000
parents 928db0f952e3
children 46b897eb2c8e
line wrap: on
line source

<tool id="quantification" name="Quantification" version="@VERSION@.5" profile="17.09">
    <description>Single cell quantification, a module for single-cell data extraction given a segmentation mask and multi-channel image.</description>
    <macros>
        <import>macros.xml</import>
    </macros>
 
    <expand macro="requirements"/>
    @VERSION_CMD@

    <command detect_errors="exit_code"><![CDATA[
    ln -s '$image' '${image.name}'.ome.tiff;
    ln -s '$primary_mask' '${primary_mask.name}'.ome.tiff; 
    #for $mask in $supp_masks:
    ln -s '$mask' '${mask.name}'.ome.tiff;
    #end for

    mkdir ./tool_out;

    @CMD_BEGIN@
    
    python \$QUANT_PATH
    --masks 
    '${primary_mask.name}'.ome.tiff
    #if $supp_masks
    #for $mask in $supp_masks:
    '${mask.name}'.ome.tiff
    #end for
    #end if

    --image '${image.name}'.ome.tiff
    --output ./tool_out
   
    #if $mask_props
    --mask_props $mask_props
    #end if
    #if $intensity_props
    --intensity_props $intensity_props
    #end if

    --channel_names '$channel_names';

    cp tool_out/*cellMasks.csv cellMasks.csv
    ]]></command>

    <inputs>
        <param name="image" type="data" format="tiff" label="Registered TIFF"/>
        <param name="primary_mask" type="data" format="tiff" label="Primary Cell Mask"/>
        <param name="supp_masks" type="data" multiple="true" optional="true" format="tiff" label="Additional Cell Masks"/>
        <param name="channel_names" type="data" format="csv" label="Marker Channels"/>
        <param name="mask_props" type="text" label="Mask Metrics" help="Space separated list of additional metrics to be calculated for every mask."/>
        <param name="intensity_props" type="text" label="Intensity Metrics" help="Space separated list of additional metrics to be calculated for every marker separately."/>
    </inputs>

    <outputs>
        <data format="csv" name="cellmask" from_work_dir="cellMasks.csv" label="CellMaskQuant"/>
        <collection type="list" name="quantification" label="${tool.name} on ${on_string}">
            <discover_datasets pattern="__designation_and_ext__" format="csv" directory="tool_out/" visible="true"/>
        </collection>
     </outputs>
    <help><![CDATA[
# Single cell quantification
Module for single-cell data extraction given a segmentation mask and multi-channel image. The CSV structure is aligned with histoCAT output.

**CommandSingleCellExtraction.py**:

* `--masks` Paths to where masks are stored (Ex: ./segmentation/cellMask.tif) -> If multiple masks are selected the first mask will be used for spatial feature extraction but all will be quantified

* `--image` Path to image(s) for quantification.  (Ex: ./registration/*.h5) -> works with .h(df)5 or .tif(f)

* `--output` Path to output directory. (Ex: ./feature_extraction)

* `--channel_names` csv file containing the channel names for the z-stack (Ex: ./my_channels.csv)

# Run script
`python CommandSingleCellExtraction.py --masks ./segmentation/cellMask.tif ./segmentation/membraneMask.tif --image ./registration/Exemplar_001.h5  --output ./feature_extraction --channel_names ./my_channels.csv`

# Main developer
Denis Schapiro (https://github.com/DenisSch)

Joshua Hess (https://github.com/JoshuaHess12)

Jeremy Muhlich (https://github.com/jmuhlich)
    ]]></help>
    <expand macro="citations" />
</tool>