forked from ImSwitch/ImSwitch
-
Notifications
You must be signed in to change notification settings - Fork 16
Open
Description
We want to renew the STORMController. On top of the current implementation where we simply store the information in a ZARR container provided by Arkitekt, we also want to have the ability to process the frames locally using the new microeye implementation.
The core functionalities that should be exposed via the RESTApi via the APIExport should be:
Asynchronous behaviour via Arkitekt (remote processing):
- Start/Stop frame acquisition with given parameters into a micro store / zarr store
- have signal updates about the current state (e.g. image number)
Synchronous behaviour via microeye (local processing):
- Setup parameters for frame reconstruction for microeye via endpoint e.g. via a dedicated pydantic type
- Start/stop frame reconstruction with given parameters
- we want to record frames as fast as possible (e.g. use getChunk) and process frames in background thread
- we want to store the raw data and the reconstructed result
- We want to store the reconstructed image locally under the data path (look how the experimentcontroller does it)
- We want to provide updates on the processing via a signal so that we can consume this in the frontend via the associated socket connection
- Retreive the last reconstructed image as the filepath inside the data path (save result as tif)
We want to remove the current behaviour with the worker and implement a new way to work asynchronously in general
all _widget related items should be removed as we do not rely on QT-based operation anymore.
Copilot
Metadata
Metadata
Assignees
Labels
No labels