view omero_roi_import.xml @ 1:e957793051a8 draft

planemo upload for repository https://github.com/Helmholtz-UFZ/galaxy-tools/tree/main/tools/omero commit a86e6a3189535d12ade221ffbeeaa9d04ad39583
author ufz
date Fri, 06 Sep 2024 08:26:12 +0000
parents 9051b91545f6
children 4f4dc352d660
line wrap: on
line source

<tool id="omero_roi_import" name="OMERO ROI Import" version="@TOOL_VERSION@+galaxy@VERSION_SUFFIX@"
      profile="20.01" license="MIT">
    <description> with ezomero </description>
    <macros>
        <token name="@TOOL_VERSION@">5.18.0</token>
        <token name="@VERSION_SUFFIX@">2</token>
    </macros>
    <xrefs>
        <xref type="bio.tools">omero</xref>
    </xrefs>
    <requirements>
        <requirement type="package" version="3.0.1">ezomero</requirement>
        <requirement type="package" version="2.2.2">pandas</requirement>
        <!-- openjdk is needed: https://github.com/conda-forge/omero-py-feedstock/pull/16 -->
        <requirement type="package" version="21.0.2">openjdk</requirement>
    </requirements>
    <command detect_errors="exit_code"><![CDATA[
        python '$__tool_directory__/omero_roi_upload.py'  
        --input_file '$input'  
        --image_id $id  
        --user '$__user__.extra_preferences.get("omero_account|username", $test_username)'  
        --psw '$__user__.extra_preferences.get("omero_account|password", $test_password)'  
        --host '$omero_host'  
        --port $omero_port  
        --log_file '$log'  
    ]]></command>
    <inputs>
        <param argument="input" type="data" format="tabular" optional="false" label="Tab File with ROIs" help="Select ROIs Tabular file"/>
        <param argument="id" type="integer" value="" optional="false" label="Image ID where annotate the ROIs"/>
        <param name="omero_host" type="text" label="OMERO host URL">
            <validator type="regex" message="Enter a valid host location, for example, your.omero.server">^[a-zA-Z0-9._-]*$</validator>
            <validator type="expression" message="No two dots (..) allowed">'..' not in value</validator>
        </param>
        <param argument="omero_port" type="integer" optional="false" value="4064" label="OMERO port"/>
        <param name="test_username" type="hidden" value=""/>
        <param name="test_password" type="hidden" value=""/>
    </inputs>
    <outputs>
        <data name="log" format="txt"/>
    </outputs>
    <tests>
        <test>
            <param name="omero_host" value="host.docker.internal"/>
            <param name="omero_port" value="6064"/>
            <param name="id" value="1"/>
            <param name="input" value="input_roi.tsv"/>
            <param name="test_username" value="root"/>
            <param name="test_password" value="omero"/>
            <output name="log" value="output_table_roi.txt" ftype="txt">
                <assert_contents>
                    <has_text text="ROI ID: 7 for row 7"/>
                </assert_contents>
            </output>
        </test>
    </tests>
    <help>

Description
-----------

Tool to upload Regions of Interest (ROIs) to an OMERO server based on shape data provided
in a tabular format (TSV file). The tool reads the shape information from the TSV file, creates the
corresponding ROIs in OMERO, and links them to a specified image.

**Column Headers**:

        - shape, x, y, x_rad, y_rad, width, height, label, fontSize, x1, y1, x2, y2, points, fill_color, stroke_color, stroke_width, z, c, t, roi_name, roi_description

- *Shape Type*:

    The **shape** column indicates the type of shape being defined, such as Ellipse, Label, Line, Point, Polygon, Polyline, or Rectangle.

- *Position and Dimensions*:

    The columns **x**, **y**, **x_rad**, **y_rad**, **width**, and **height** specify the position and dimensions of the shapes, where applicable. For example, Ellipse uses x, y, x_rad, and y_rad, while Rectangle uses x, y, width, and height.

- *Text Labels*:

    The **label** and **fontSize** columns are used for the Label shape, specifying the text content and font size.

- *Line Coordinates*:

    The columns **x1**, **y1**, **x2**, and **y2** are used for defining the start and end points of a Line.

- *Point Coordinates*:

    The **points** column is used for defining multiple points in shapes like Polygon and Polyline. The points are listed as coordinate pairs.

- *Colors*:

    The **fill_color** and **stroke_color** columns define the fill and stroke colors of the shapes in RGBA format.

- *Stroke Width*:

    The **stroke_width** column specifies the width of the stroke or border around the shapes.

- *Z, C, T Coordinates*:

    The **z**, **c**, and **t** columns indicate the Z-plane, channel, and time point to which the shape is associated in the image stack.

- *ROI Identification*:

    The **roi_name** and **roi_description** columns provide a name and description for each ROI, allowing for easy identification and documentation within OMERO.

    </help>
    <citations>
        <citation type="doi">10.1038/nmeth.1896</citation>
    </citations>
</tool>