galaxyproteomics / tools-galaxyp

Galaxy Tool Shed repositories maintained and developed by the GalaxyP community
MIT License
34 stars 57 forks source link

Add QuPath ROI splitter #710

Closed npinter closed 1 year ago

npinter commented 1 year ago

This tool processes QuPath cell detection-based annotations extracted from TMA (Tissue Microarray) projects. Users must first run the provided QuPath script locally to generate GeoJSON files containing the annotations. The generated GeoJSON files are then uploaded to Galaxy as a collection. The tool processes these GeoJSON files and splits the annotations by ROI, outputting the results as a collection of text files, each containing x and y coordinates.

The QuPath (Groovy) script can be found in this repo https://github.com/npinter/ROIsplitter. I'm not sure if it's better to have the Python script in the tool directory (as it is now) or to have some sort of a direkt link to my repo.

Thanks :)

bgruening commented 1 year ago

I think the script here is ok. The alternative is to create a cond package of your scripts.

bgruening commented 1 year ago

@npinter a few thoughts.

npinter commented 1 year ago

@npinter a few thoughts.

* we can merge the Biocontainers PR, it will create a "mulled" container

* we can then explicitly require this container, but then it will not work with conda

* as it is now, it also will not work on most of the Galaxy instances because this new channel is not enabled in most instances

* enabling this channel in Galaxy will potentially cause a lot of trouble, so I would not even recommend it. There are reasons why we only support bioconda and conda-forge

* we could try to move this one package to conda-forge

* we could use opencv and build an OpenGL container - similar to your current biocontainers PR

Thanks!! Since https://github.com/opencv/opencv-python#installation-and-usage recommends using the headless variant, I tend to move the headless package to conda-forge.

I don't know how to get OpenGL working in a mulled container, I would need some help here. There is pyopengl availiable as a conda package but I don't think it will be compatible with opencv.

npinter commented 1 year ago

Adding a headless version to conda-forge is already discussed here https://github.com/conda-forge/opencv-feedstock/issues/293 and here https://github.com/rapidsai/ci-imgs/pull/31.

npinter commented 1 year ago

I don't know how to continue with the mulled container and/or if opencv with libGL/openGL is part of the container. The last test raised: ModuleNotFoundError: No module named 'cv2'

bgruening commented 1 year ago

Läuft! :)

bgruening commented 1 year ago

You can add it to EU now :)