Skip to main content

A toolbox for annotating objects one by one in nD

Project description

napari-nD-annotator

License BSD-3 PyPI Python Version tests codecov napari hub

A toolbox for annotating objects one by one in nD.

This plugin contains some tools to make 2D/3D (and technically any dimensional) annotation easier. Main features:

  • auto-filling labels
  • label slice interpolation (geometric mean, RPSV representation)
  • minimal contour segmentation

If the napari-bbox plugin is also installed (see Installation), you can also

  • list objects annotated with bounding boxes
  • visualize selected objects from different projections

This napari plugin was generated with Cookiecutter using @napari's cookiecutter-napari-plugin template.

Installation

You can install napari-nD-annotator via pip:

pip install napari-nD-annotator

The plugin is also available in napari-hub, to install it directly from napari, please refer to plugin installation instructions at the official napari website.

Optional packages

There are some functionalities which require additional Python packages.

Bounding boxes

The bounding box and object list functionality requires the napari-bbox Python package. If you want to use these features, install napari-bbox separately either using pip or directly from napari. You can also install it together with this plugin:

pip install napari-nD-annotator[bbox]

[!WARNING] The napari-bbox plugin currently works only with napari<=0.4.17. Do not install it with newer versions.

Minimal surface

To use the minimal surface method, you will need the minimal-surface Python package as well. Please install it using pip:

Separately:

pip install minimal-surface

Or bundled with the plugin:

pip install napari-nD-annotator[ms]

[!WARNING] The minimal-surface package is only available for Windows at the time. We are actively working on bringing it to Linux and Mac systems as well.

If you would like to install all optional packages, use

pip install napari-nD-annotator[all]

If any problems occur during installation or while using the plugin, please file an issue.

Usage

You can start napari with the plugin's widgets already opened as:

napari -w napari-nD-annotator "Object List" "Annotation Toolbox"

Bounding boxes

The main idea is to create bounding boxes around objects we want to annotate, crop them, and annotate them one by one. This has mainly two advantages when visualizing in 3D:

  1. We don't have to load the whole data into memory
  2. The surrounding objects won't occlude the annotated ones, making it easier to check the annotation.

Bounding boxes can be created from the Object list widget. The dimensionality of the bounding box layer will be determined from the image layer. As bounding boxes are created, a small thumbnail will be displayed.

The proposed pipeline goes as follows:

  1. Create a bounding box layer
  2. Select data parts using the bounding boxes
  3. Select an object from the object list
  4. Annotate the object
  5. Repeat from 3.

Slice interpolation

The Interpolation tab contains tools for estimating missing annotation slices from existing ones. There are multiple options:

  • Geometric: the interpolation will be determined by calculating the average of the corresponding contour points.
  • RPSV: A more sophisticated average contour calculation, see the preprint here.
  • Distance-based: a signed distance transform is applied to the annotations. The missing slices will be filled in using their weighted sum.

Note: Geometric and RPSV interpolation works only when there's a single connected mask on each slice. If you want to interpolate disjoint objects (e.g. dividing cells), use distance based interpolation instead.

Note: Distance-based interpolation might give bad results if some masks are too far away from each other on the same slice and there's a big offset compared to the other slice used in the interpolation. If you get unsatisfactory results, try annotating more slices (skip less frames).

https://user-images.githubusercontent.com/36735863/188876826-1771acee-93ba-4905-982e-bfb459329659.mp4

Minimal contour

This plugin can estimate a minimal contour, which is calculated from a point set on the edges of the object, which are provided by the user. This contour will follow some kind of image feature (pixels with high gradient or high/low intensity). Features:

  • With a single click a new point can be added to the set. This will also extend the contour with the curve shown in red
  • A double click will close the curve by adding both the red and gray curves to the minimal contour
  • When holding Shift, the gray and red highlight will be swapped, so the other curve can be added to the contour
  • With the Ctrl button down a straight line can be added instead of the minimal path
  • If the anchor points were misplaced, the last point can be removed by right-clicking, or the whole point set can be cleared by pressing Esc
  • The Param value at the widget will decide, how strongly should the contour follow edges on the image. Higher value means higher sensitivity to image data, while a lower value will be closer to straight lines.
  • Different features can be used, like image gradient or pixel intensities, and also user-defined features (using Python)
    • the image is accessed as the image variable, and the features should be stored in the features variable in the small code editor widget

This functionality can be used by selecting the Minimal Contour tab in the Annotation Toolbox widget, which will create a new layer called Anchors.

Warning: Do not remove the Anchors layer!

Warning: Some utility layers appear in the layer list when using the plugin. These are marked with a lock (:lock:) symbol. Do not remove them or modify their data, as this will most probably break the plugin! However, you can change their appearance, e.g. their color settings.

Intensity-based:

https://user-images.githubusercontent.com/36735863/191023482-0dfafb5c-003a-47f6-a21b-8582a4e3930f.mp4

Gradient-based:

https://user-images.githubusercontent.com/36735863/191024941-f20f63a0-8281-47d2-be22-d1ec34fe1f5d.mp4

Custom feature:

https://user-images.githubusercontent.com/36735863/191025028-3f807bd2-1f2e-40d2-800b-48af820a7dbe.mp4

Shortcuts

Action Mouse Keyboard
Increment selected label Shift + Wheel ⬆️ E
Decrement selected label Shift + Wheel ⬇️ Q
Previous slice Ctrl + Wheel ⬆️* A
Next slice Ctrl + Wheel ⬇️* D
Increase paint brush size of labels layer Alt + Wheel ⬆️ W
Decrease paint brush size of labels layer Alt + Wheel ⬇️ S
Interpolate - Ctrl+I
Change between 'Anchors' and the labels layer - Ctrl+Tab
Jump to layer #i - Ctrl+'i'**

*Built-in functionality of napari

**i: 0-9

Note: you can check the list of available shortcuts by clicking the ? button in the bottom right corner of the main widget.

License

Distributed under the terms of the BSD-3 license, "napari-nD-annotator" 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

napari-nD-annotator-0.2.3.tar.gz (615.4 kB view details)

Uploaded Source

Built Distributions

napari_nD_annotator-0.2.3-cp312-cp312-win_amd64.whl (976.7 kB view details)

Uploaded CPython 3.12 Windows x86-64

napari_nD_annotator-0.2.3-cp312-cp312-win32.whl (938.6 kB view details)

Uploaded CPython 3.12 Windows x86

napari_nD_annotator-0.2.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.3 MB view details)

Uploaded CPython 3.12 manylinux: glibc 2.17+ x86-64

napari_nD_annotator-0.2.3-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl (3.2 MB view details)

Uploaded CPython 3.12 manylinux: glibc 2.17+ i686

napari_nD_annotator-0.2.3-cp312-cp312-macosx_10_9_x86_64.whl (1.4 MB view details)

Uploaded CPython 3.12 macOS 10.9+ x86-64

napari_nD_annotator-0.2.3-cp311-cp311-win_amd64.whl (989.2 kB view details)

Uploaded CPython 3.11 Windows x86-64

napari_nD_annotator-0.2.3-cp311-cp311-win32.whl (947.0 kB view details)

Uploaded CPython 3.11 Windows x86

napari_nD_annotator-0.2.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.3 MB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ x86-64

napari_nD_annotator-0.2.3-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl (3.2 MB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ i686

napari_nD_annotator-0.2.3-cp311-cp311-macosx_10_9_x86_64.whl (1.4 MB view details)

Uploaded CPython 3.11 macOS 10.9+ x86-64

napari_nD_annotator-0.2.3-cp310-cp310-win_amd64.whl (988.3 kB view details)

Uploaded CPython 3.10 Windows x86-64

napari_nD_annotator-0.2.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.2 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

napari_nD_annotator-0.2.3-cp310-cp310-macosx_10_9_x86_64.whl (1.4 MB view details)

Uploaded CPython 3.10 macOS 10.9+ x86-64

napari_nD_annotator-0.2.3-cp39-cp39-win_amd64.whl (985.9 kB view details)

Uploaded CPython 3.9 Windows x86-64

napari_nD_annotator-0.2.3-cp39-cp39-win32.whl (946.1 kB view details)

Uploaded CPython 3.9 Windows x86

napari_nD_annotator-0.2.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.2 MB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

napari_nD_annotator-0.2.3-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl (3.1 MB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ i686

napari_nD_annotator-0.2.3-cp39-cp39-macosx_10_9_x86_64.whl (1.4 MB view details)

Uploaded CPython 3.9 macOS 10.9+ x86-64

napari_nD_annotator-0.2.3-cp38-cp38-win_amd64.whl (993.2 kB view details)

Uploaded CPython 3.8 Windows x86-64

napari_nD_annotator-0.2.3-cp38-cp38-win32.whl (952.1 kB view details)

Uploaded CPython 3.8 Windows x86

napari_nD_annotator-0.2.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.3 MB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ x86-64

napari_nD_annotator-0.2.3-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl (3.2 MB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ i686

napari_nD_annotator-0.2.3-cp38-cp38-macosx_10_9_x86_64.whl (1.4 MB view details)

Uploaded CPython 3.8 macOS 10.9+ x86-64

File details

Details for the file napari-nD-annotator-0.2.3.tar.gz.

File metadata

  • Download URL: napari-nD-annotator-0.2.3.tar.gz
  • Upload date:
  • Size: 615.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.9.18

File hashes

Hashes for napari-nD-annotator-0.2.3.tar.gz
Algorithm Hash digest
SHA256 5ca6fa82045a39f533e0e7f90f786510160d0632699a894ec4ff780d0c1e7b84
MD5 c140f3c330306a9f2d19c6cae3d99f5a
BLAKE2b-256 f430d7629bb73308ae9ff5da77d46f5121b00560c6efbe9d7e0250cd8fc830d9

See more details on using hashes here.

File details

Details for the file napari_nD_annotator-0.2.3-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for napari_nD_annotator-0.2.3-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 86b60cca3be9991314eebb6324d727eed374d2cd6cfe102bd2999a12f7705b3f
MD5 e2b48b7dab016df88744569bc5e886cb
BLAKE2b-256 a57e2cc0331b11e82dce6d4949df6b86f9183129b2cbeac0efb3961080ee8702

See more details on using hashes here.

File details

Details for the file napari_nD_annotator-0.2.3-cp312-cp312-win32.whl.

File metadata

File hashes

Hashes for napari_nD_annotator-0.2.3-cp312-cp312-win32.whl
Algorithm Hash digest
SHA256 4de73f2b1b8189d911302efb409b2484f2b968e2eda8c41addfbadbbb485a41f
MD5 1bd87aa4bdeb049707c25eebbf1a35b6
BLAKE2b-256 ac7c60465a50c3b453b8f22237d12db840d2cc7f299464aa8cbf9958d4325e79

See more details on using hashes here.

File details

Details for the file napari_nD_annotator-0.2.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for napari_nD_annotator-0.2.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 5b8367fe6bc701c27d2f5302ba0e48d06504da27f540fd3d22aa000b3499dc8a
MD5 d70a8ab90ecceaa0fabb5a009349508e
BLAKE2b-256 00aa3c8e96653955c043c04015f7ecdc978faec9194ff56f7b27c99ea7e28299

See more details on using hashes here.

File details

Details for the file napari_nD_annotator-0.2.3-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for napari_nD_annotator-0.2.3-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 1c91ff487204af5f7cefddffeddd46affd3910c690bed42ab44bcbc61bc3ac77
MD5 a8ed4e80710f19af09a8ea3d81a91474
BLAKE2b-256 bd608b97fa24d74e81e46425f49da2033d0afc37750283511200c2fe3c81b8a7

See more details on using hashes here.

File details

Details for the file napari_nD_annotator-0.2.3-cp312-cp312-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for napari_nD_annotator-0.2.3-cp312-cp312-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 6aaf55d3bfd0fb2ea82966bea8fa869faf055d2971354002bc366044d9e69c68
MD5 7124e56f03beede028d50115cef77723
BLAKE2b-256 4c46d7e6ab3059301fdee6e813d425ca33363d8d1984e442cc1c9ecb31f5189d

See more details on using hashes here.

File details

Details for the file napari_nD_annotator-0.2.3-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for napari_nD_annotator-0.2.3-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 9a031c03716db10220488aab0f0352e765cc003790d3a2648ec88c3e5b8f9ff9
MD5 dd0d497e87ab91b364e46dfa851bd688
BLAKE2b-256 7328f136dca5a2f4516c53bccf6cecf82c885d9498634cb16d14adaae198ec25

See more details on using hashes here.

File details

Details for the file napari_nD_annotator-0.2.3-cp311-cp311-win32.whl.

File metadata

File hashes

Hashes for napari_nD_annotator-0.2.3-cp311-cp311-win32.whl
Algorithm Hash digest
SHA256 3a7655d61945f1ccc1fa9885c57cfceeef7b1c7c871a195c38317b16e561f595
MD5 809a2b9e1ef65922ca95d6d3a2ed29dd
BLAKE2b-256 56d2a69e7f80a4e805075520af65e12993a00f9c5c73503743f7d0eb37b9bd79

See more details on using hashes here.

File details

Details for the file napari_nD_annotator-0.2.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for napari_nD_annotator-0.2.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 5987da8ebd9d774bf425e7938965c6380c621842d870cf545bf1188f46dfbd47
MD5 c6ac8b8e99deb89952a57190f8a6cd17
BLAKE2b-256 8e2bd8b418a73065d6b43df4c98808bd55f87ed738888d275dc0855985ec91ce

See more details on using hashes here.

File details

Details for the file napari_nD_annotator-0.2.3-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for napari_nD_annotator-0.2.3-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 ae5e8839e3ed14d386e26399100849879f84c0abb7351beaf049a8057896aa8f
MD5 d80dde2d7574491f837c454a1aaf043c
BLAKE2b-256 7309b30f7f5d694b8674e11598a892c54d81adf31d7ff8cdc504a35970c7d891

See more details on using hashes here.

File details

Details for the file napari_nD_annotator-0.2.3-cp311-cp311-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for napari_nD_annotator-0.2.3-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 78d6721a3949cdaf1b1d2a72107a2cc87c08646e09ff321301cbd742b7e3d6ad
MD5 5c665c8959ea143365d67abf4c9d5606
BLAKE2b-256 7359d4cc222f8b21ba9b096141626dc553139fd68d3bd1fe2f72bd9014ef4464

See more details on using hashes here.

File details

Details for the file napari_nD_annotator-0.2.3-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for napari_nD_annotator-0.2.3-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 a1dc9689cc72a20b2c37983077bd56e9d72961ea674e44d5d83971f4938a27cc
MD5 447f7c3a4a666b97f7c475fbb9025242
BLAKE2b-256 833aaae4395c3a7ce27ceafd84c7f612d3280a3acadaa672aa290b0e07b182cd

See more details on using hashes here.

File details

Details for the file napari_nD_annotator-0.2.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for napari_nD_annotator-0.2.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 a9d7c0fda5b3a2370e8b69665119cd132dbe5c05afd3c310353be05e11a095e5
MD5 6a16c60f2ab53ae0a82521281f4668c9
BLAKE2b-256 89b91d7ce9392b0454271944c6fe4da65ac9b3b2075c1c15e5ee8060732fc3bc

See more details on using hashes here.

File details

Details for the file napari_nD_annotator-0.2.3-cp310-cp310-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for napari_nD_annotator-0.2.3-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 b3024beecab65f0b54eefbe37c6123a68801dbb732c8a70c813d50ff1dd21e07
MD5 08240d6df3b149b35ce364d200bdba0b
BLAKE2b-256 1c7c54953b7dae821186f5c73430b70ee8b3692b6c2069224c4eff3ac06d1900

See more details on using hashes here.

File details

Details for the file napari_nD_annotator-0.2.3-cp39-cp39-win_amd64.whl.

File metadata

File hashes

Hashes for napari_nD_annotator-0.2.3-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 643ded9ec2d15f3a0cead8d8e692a2ba88851366ff55b75bf0049c9cab53a9b8
MD5 46b8aed5c0a90255d57bfa666fc09799
BLAKE2b-256 b5744faab41d5d25aa189c4fcecb641df1d31bbd5e7eb532ee7607c66d6f7a1d

See more details on using hashes here.

File details

Details for the file napari_nD_annotator-0.2.3-cp39-cp39-win32.whl.

File metadata

File hashes

Hashes for napari_nD_annotator-0.2.3-cp39-cp39-win32.whl
Algorithm Hash digest
SHA256 d96fcb0703b89306222cda46302333f84b3c8710ace042564822d51646951237
MD5 6105c5af9dce5316c8de2d1097b4ee74
BLAKE2b-256 2587d12d2c20d218712530a45d8ce5533504421478637d6aec26a77caab8fcf1

See more details on using hashes here.

File details

Details for the file napari_nD_annotator-0.2.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for napari_nD_annotator-0.2.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 67c5ea2e166b17c881485b7e931175c8ffff5cc5162cbb7ce0026daf8fff229c
MD5 7d6c1c8a9b6a384c14d05e360bc01e09
BLAKE2b-256 3d078d854f595039ae9cf0faccb0194ce50c6ec8bc1514f9aabd30dde5145a18

See more details on using hashes here.

File details

Details for the file napari_nD_annotator-0.2.3-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for napari_nD_annotator-0.2.3-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 18ecf0c21b17288145db50ff589170a0b461f95f9db5f1053798aa51713a858e
MD5 487e189c24825e099dd75d9c97713ca8
BLAKE2b-256 6da87a65bf8d833be2b342bf63f6903c7a7beb8afbd3f57b934a2cde9214cdeb

See more details on using hashes here.

File details

Details for the file napari_nD_annotator-0.2.3-cp39-cp39-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for napari_nD_annotator-0.2.3-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 f0e2b37d91c2f559f4fa372accd468034e6650d5426fe5858d199956a9eeb8eb
MD5 e65d3391de83122e8f32090893c3c4d7
BLAKE2b-256 7f49b839f148bfadc723a4b4886b210c84f22d7378c6f51edd1ffb0d787f7b73

See more details on using hashes here.

File details

Details for the file napari_nD_annotator-0.2.3-cp38-cp38-win_amd64.whl.

File metadata

File hashes

Hashes for napari_nD_annotator-0.2.3-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 1a9c0aa04d25a1b7cf3467d5d7599e391e20b8ade1063871f3c53c9f7c495534
MD5 d1bd755348b5b89a901f3891e83b3ca3
BLAKE2b-256 7b2bcd088ea5346f7fe72a7d418762030a957ca0944f3f6dbac2db0252c7dd87

See more details on using hashes here.

File details

Details for the file napari_nD_annotator-0.2.3-cp38-cp38-win32.whl.

File metadata

File hashes

Hashes for napari_nD_annotator-0.2.3-cp38-cp38-win32.whl
Algorithm Hash digest
SHA256 356175f7a14b99147ebbd55f88aa4f282fbd1e4a2a9514bb4e6e3b2f0b2e7fb5
MD5 1ad37b4c98acb8c78d95740cf65801fe
BLAKE2b-256 ec0c3fc3237882a1d1a086aa8b23040a09329d5150dec981f4d2c18006019d32

See more details on using hashes here.

File details

Details for the file napari_nD_annotator-0.2.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for napari_nD_annotator-0.2.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 20af93f3f8f737419d234a9ee2f6c553177859add80dc9270b6e3e9a06c62276
MD5 9c7cc9e4e94b1199e5389bbe39b86d2c
BLAKE2b-256 149296661c4180c7640b4b963624de5f900e1a46a7d7e230cc8b2c7916372f24

See more details on using hashes here.

File details

Details for the file napari_nD_annotator-0.2.3-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for napari_nD_annotator-0.2.3-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 80a21b8f831ae56c77421624291a88915bb1b6c5f46f5cd5c8626904279465ef
MD5 cc8c74eb48483c2482af4637710c2735
BLAKE2b-256 1b5e64f3da11459d9443ddeb7cf78029a4bf4a201051a3fb3d0fa325c037c3e2

See more details on using hashes here.

File details

Details for the file napari_nD_annotator-0.2.3-cp38-cp38-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for napari_nD_annotator-0.2.3-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 e4d40af58e01d442bdc0e01a2afd564e4d15411f3b4c4e591532f692c2cd6671
MD5 4d0bbfc7e6c8bf5cf42272802e84331e
BLAKE2b-256 4d7e5495e1e08605b5718646d006fe3ba89cbfbe939ca28483b84ce004b3eb74

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 Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page