{"name":"divisualisation","display_name":"Divisualisation","visibility":"public","icon":null,"categories":["Visualization"],"schema_version":"0.2.1","on_activate":null,"on_deactivate":null,"contributions":{"commands":[{"id":"divisualisation.spacetime","title":"Lift tracks & Divisualisation","python_name":"divisualisation._widget:SpacetimeWidget","short_title":null,"category":null,"icon":null,"enablement":null}],"readers":null,"writers":null,"widgets":[{"command":"divisualisation.spacetime","display_name":"Lift tracks & Divisualisation","autogenerate":false}],"sample_data":null,"themes":null,"menus":{},"submenus":null,"keybindings":null,"configuration":[]},"package_metadata":{"metadata_version":"2.4","name":"divisualisation","version":"0.1.0","dynamic":["license-file"],"platform":null,"supported_platform":null,"summary":"Visualize cell tracking errors","description":"# divisualisation\n\n[![PyPI](https://img.shields.io/pypi/v/divisualisation.svg?color=green)](https://pypi.org/project/divisualisation)\n[![tests](https://github.com/bentaculum/divisualisation/workflows/Tests/badge.svg)](https://github.com/bentaculum/divisualisation/actions)\n[![napari hub](https://img.shields.io/endpoint?url=https://api.napari-hub.org/shields/divisualisation)](https://napari-hub.org/plugins/divisualisation)\n\nA napari plugin to visualise cell-tracking errors, computed via [`traccuracy`](https://github.com/live-image-tracking-tools/traccuracy/), by lifting 2D/3D+time tracks into an interactive 3D \"spacetime\" view.\n\n> **🆕 divisualisation is now a fully fledged napari plugin, with a stateful spacetime lifted view that integrates with regular napari workflows.**\n\n2D tracking (bacteria) | 3D tracking (C. elegans nuclei)\n:-: | :-:\n<video src='https://github.com/user-attachments/assets/38d047b1-bc7b-4315-a192-97886a1bf906' width=180></video> | <video src='https://github.com/user-attachments/assets/3724faf2-9d24-428a-8b4f-84ee68646424' width=180/></video>\n\nWe originally introduced these visualisations to compare our results in [_Trackastra: Transformer-based cell tracking for live-cell microscopy_](https://github.com/weigertlab/trackastra) to other cell tracking algorithms.\n\n\n\n<video src='https://github.com/user-attachments/assets/99ac7295-cab5-43a0-9899-4fa007b110f7' width=60></video>\n\n\n## Installation\n\n1. Please install napari as outlined [here](https://napari.org/stable/tutorials/fundamentals/installation.html).\n\n2. After that, install divisualisation, either:\n    - from within napari via **Plugins → Install/Uninstall Plugins…** (search for \"divisualisation\"),\n    - or from PyPI:\n      ```\n      pip install divisualisation\n      ```\n    - or the latest development version from GitHub:\n      ```\n      pip install git+https://github.com/bentaculum/divisualisation.git\n      ```\n\nNote: requires Python ≥ 3.11 and napari ≥ 0.8.\n\n## Usage\n\nOpen **Plugins → divisualisation → Lift tracks & Divisualisation**. The widget has two independent workflows, each in its own box:\n\n- **Lift all tracks layers** — fold time into a `z` axis so every tracks layer rises out of the image plane into a 3D \"spacetime\" cone. Scrub the time slider to sweep through the cone; toggle off to restore the flat view exactly.\n- **Divisualisation** — assign ground-truth / predicted / FN-edge / FP-edge tracks layers via the role dropdowns (auto-guessed from layer names), **Compute edge errors** from the GT/predicted tracks plus their labels, and lift with the error colouring. **Color division edges** draws each layer's parent→daughter edges as coloured tails (napari otherwise draws them in uncolourable white).\n\n## Examples\n\nRun in ipython — each loads data into a viewer, adds the tracks and edge-error overlays, and docks the widget:\n\n- `example_2d.py` — bacteria (2D+t).\n- `example_3d.py` — C. elegans nuclei (3D+t, `z` scaled ×10).\n- `example_programmatic_2d.py` — fully scripted render (no GUI): build layers, lift with `SpacetimeLift`, overlay errors with `add_edge_error_tracks`, capture a `napari_animation` keyframe video.\n","description_content_type":"text/markdown","keywords":null,"home_page":null,"download_url":null,"author":null,"author_email":"Benjamin Gallusser <bgallusser@gmail.com>","maintainer":null,"maintainer_email":null,"license":"MIT License","classifier":["Development Status :: 3 - Alpha","Framework :: napari","Intended Audience :: Science/Research","Topic :: Scientific/Engineering","License :: OSI Approved :: MIT License","Programming Language :: Python :: 3.11","Programming Language :: Python :: 3.12","Programming Language :: Python :: 3.13","Programming Language :: Python :: 3.14"],"requires_dist":["napari>=0.8","superqt","napari-animation","magicgui","numpy","networkx","scipy","tqdm","traccuracy>=0.4.1","pytest; extra == \"dev\"","pytest-qt; extra == \"dev\"","ruff; extra == \"dev\"","mypy; extra == \"dev\"","pre-commit; extra == \"dev\"","twine; extra == \"dev\"","build; extra == \"dev\""],"requires_python":">=3.11","requires_external":null,"project_url":["Homepage, https://github.com/bentaculum/divisualisation","Source Code, https://github.com/bentaculum/divisualisation","Bug Tracker, https://github.com/bentaculum/divisualisation/issues","User Support, https://github.com/bentaculum/divisualisation/issues"],"provides_extra":["dev"],"provides_dist":null,"obsoletes_dist":null},"npe1_shim":false}