Skip to main content

A plugin to that fits an ellipsoid to a set of user clicked points in 3D

Project description

fitellipsoid

License GNU GPL v3.0 PyPI Python Version

codecov napari hub npe2

A plugin to find the best ellipsoid to fit a set of points clicked by the user. With just a few clicks (10 is the absolute minimum) around the cells/nuclei boundaries, the plugin fits an ellipsoid and returns its parameters. This can be used to analyze tissue geometry, mecanical stress, provide training databases for segmentation algorithms,...

FitEllipsoid widget example


Installation

You can install fitellipsoid via pip:

conda create -n fitellipsoid-env python=3.11
conda activate fitellispoid-env
pip install -U 'napari[all]'
pip install fitellipsoid
napari

🧪 Usage Instructions

  1. Open your 3D image stack in Napari.

  2. Launch the FitEllipsoid plugin from the plugin menu.

  3. Select the point layer created by the plugin and begin clicking along the boundary of your object:

    • 🖱️ Left-click to add a point
    • 🖱️ Right-click to remove the last added point
  4. Once you've added at least 10 points, click on the "Fit Ellipsoid" button.

  5. A blue ellipsoid will be fitted and displayed.

    • ✅ If the shape fits well, you're done with that object.
    • ❌ If it doesn't, return to the corresponding point layer and add or adjust points.
  6. Repeat the process for all objects you'd like to segment.
    The plugin automatically adds a new point layer after each fit.

  7. When you're finished, save the results as a .csv file and optionally export a segmentation mask.

Contributors

  • Pierre Weiss - Project lead, core plugin development
  • Clément Cazorla - Added the segmentation mask generation

Contributing

Contributions are very welcome. Tests can be run with tox, please ensure the coverage at least stays the same before you submit a pull request.

License

Distributed under the terms of the GNU GPL v3.0 license, "fitellipsoid" is free and open source software

Issues

If you encounter any problems, please [file an issue] along with a detailed description.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

fitellipsoid-0.0.6.tar.gz (670.0 kB view details)

Uploaded Source

Built Distribution

fitellipsoid-0.0.6-py3-none-any.whl (39.3 kB view details)

Uploaded Python 3

File details

Details for the file fitellipsoid-0.0.6.tar.gz.

File metadata

  • Download URL: fitellipsoid-0.0.6.tar.gz
  • Upload date:
  • Size: 670.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.16

File hashes

Hashes for fitellipsoid-0.0.6.tar.gz
Algorithm Hash digest
SHA256 e64b03f4c3fd40979417bef5083ffd26c620539fd4f5953dde880e99a1c54221
MD5 dde66bf37a839178e0519a870ca74d74
BLAKE2b-256 7f9a8e14914c575f5f04d55dcb6c61308a5ee1bca113d957d51b84ba30597c54

See more details on using hashes here.

File details

Details for the file fitellipsoid-0.0.6-py3-none-any.whl.

File metadata

  • Download URL: fitellipsoid-0.0.6-py3-none-any.whl
  • Upload date:
  • Size: 39.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.16

File hashes

Hashes for fitellipsoid-0.0.6-py3-none-any.whl
Algorithm Hash digest
SHA256 f2a17266da8b5e65813b34f4872148203411fbe1908cd3241b02c8226f728c5d
MD5 c81608af5da902b523fef764e6200896
BLAKE2b-256 a2b5e306df6796fd1caa166ac205f3da3114568b43f288a74d5b944b742aa8ea

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page