Skip to content

Apposed Cellcast - #320

Draft
gnodar01 wants to merge 12 commits into
cp5from
appose-demo
Draft

gnodar01 wants to merge 12 commits into
cp5from
appose-demo

Conversation

@gnodar01

@gnodar01 gnodar01 commented Oct 9, 2026

Copy link
Copy Markdown
Member

This PR builds on #239 by adding the apposed RunCellCast plugin. This plugin runs in an appose environment and therefore relies on CellProfiler/CellProfiler#5203. It uses cellcast to provide Stardist2D (H&E + fluo) and Stardist3D (fluo) models running on GPU regardless of platform (via webGPU). It also allows for custom weight files.

In general it forms the basis of officially supported, apposed plugins, capable of running plugins that require extra dependencies (even from .app/.exe variants of CellProfiler), without the user needing to manually set up the environments.

- create appose/napari env
- launch nepari and transfer image on run
- don't ignore src
This reverts commit 03107d7.

It works but not quite ready for production use
This reverts commit 1433f93.

It worked, but we don't actually want pixelshuffel as an apposed plugin
it was just for testing viability
- Make worker script single function entrypoint with model dispatch
- Refactor to allow for keeping the environment alive and the model
  within it warm, across execution cycles
@gnodar01
gnodar01 added this pull request to stack #321 October 9, 2026 02:17
- In order to use import_library feature, not yet published
- Wrap cellcast worker in import_library
- Simplifies caching logic by avoiding use of globals()
- Allows persisting plain variables across tasks within the imported
  library

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant