napari-tmidas 0.2.2__py3-none-any.whl → 0.2.4__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (54) hide show
  1. napari_tmidas/__init__.py +35 -5
  2. napari_tmidas/_crop_anything.py +1520 -609
  3. napari_tmidas/_env_manager.py +76 -0
  4. napari_tmidas/_file_conversion.py +1646 -1131
  5. napari_tmidas/_file_selector.py +1455 -216
  6. napari_tmidas/_label_inspection.py +83 -8
  7. napari_tmidas/_processing_worker.py +309 -0
  8. napari_tmidas/_reader.py +6 -10
  9. napari_tmidas/_registry.py +2 -2
  10. napari_tmidas/_roi_colocalization.py +1221 -84
  11. napari_tmidas/_tests/test_crop_anything.py +123 -0
  12. napari_tmidas/_tests/test_env_manager.py +89 -0
  13. napari_tmidas/_tests/test_grid_view_overlay.py +193 -0
  14. napari_tmidas/_tests/test_init.py +98 -0
  15. napari_tmidas/_tests/test_intensity_label_filter.py +222 -0
  16. napari_tmidas/_tests/test_label_inspection.py +86 -0
  17. napari_tmidas/_tests/test_processing_basic.py +500 -0
  18. napari_tmidas/_tests/test_processing_worker.py +142 -0
  19. napari_tmidas/_tests/test_regionprops_analysis.py +547 -0
  20. napari_tmidas/_tests/test_registry.py +70 -2
  21. napari_tmidas/_tests/test_scipy_filters.py +168 -0
  22. napari_tmidas/_tests/test_skimage_filters.py +259 -0
  23. napari_tmidas/_tests/test_split_channels.py +217 -0
  24. napari_tmidas/_tests/test_spotiflow.py +87 -0
  25. napari_tmidas/_tests/test_tyx_display_fix.py +142 -0
  26. napari_tmidas/_tests/test_ui_utils.py +68 -0
  27. napari_tmidas/_tests/test_widget.py +30 -0
  28. napari_tmidas/_tests/test_windows_basic.py +66 -0
  29. napari_tmidas/_ui_utils.py +57 -0
  30. napari_tmidas/_version.py +16 -3
  31. napari_tmidas/_widget.py +41 -4
  32. napari_tmidas/processing_functions/basic.py +557 -20
  33. napari_tmidas/processing_functions/careamics_env_manager.py +72 -99
  34. napari_tmidas/processing_functions/cellpose_env_manager.py +415 -112
  35. napari_tmidas/processing_functions/cellpose_segmentation.py +132 -191
  36. napari_tmidas/processing_functions/colocalization.py +513 -56
  37. napari_tmidas/processing_functions/grid_view_overlay.py +703 -0
  38. napari_tmidas/processing_functions/intensity_label_filter.py +422 -0
  39. napari_tmidas/processing_functions/regionprops_analysis.py +1280 -0
  40. napari_tmidas/processing_functions/sam2_env_manager.py +53 -69
  41. napari_tmidas/processing_functions/sam2_mp4.py +274 -195
  42. napari_tmidas/processing_functions/scipy_filters.py +403 -8
  43. napari_tmidas/processing_functions/skimage_filters.py +424 -212
  44. napari_tmidas/processing_functions/spotiflow_detection.py +949 -0
  45. napari_tmidas/processing_functions/spotiflow_env_manager.py +591 -0
  46. napari_tmidas/processing_functions/timepoint_merger.py +334 -86
  47. {napari_tmidas-0.2.2.dist-info → napari_tmidas-0.2.4.dist-info}/METADATA +70 -30
  48. napari_tmidas-0.2.4.dist-info/RECORD +63 -0
  49. napari_tmidas/_tests/__init__.py +0 -0
  50. napari_tmidas-0.2.2.dist-info/RECORD +0 -40
  51. {napari_tmidas-0.2.2.dist-info → napari_tmidas-0.2.4.dist-info}/WHEEL +0 -0
  52. {napari_tmidas-0.2.2.dist-info → napari_tmidas-0.2.4.dist-info}/entry_points.txt +0 -0
  53. {napari_tmidas-0.2.2.dist-info → napari_tmidas-0.2.4.dist-info}/licenses/LICENSE +0 -0
  54. {napari_tmidas-0.2.2.dist-info → napari_tmidas-0.2.4.dist-info}/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: napari-tmidas
3
- Version: 0.2.2
3
+ Version: 0.2.4
4
4
  Summary: A plugin for batch processing of confocal and whole-slide microscopy images of biological tissues
5
5
  Author: Marco Meer
6
6
  Author-email: marco.meer@pm.me
@@ -41,46 +41,53 @@ Classifier: Development Status :: 2 - Pre-Alpha
41
41
  Classifier: Framework :: napari
42
42
  Classifier: Intended Audience :: Developers
43
43
  Classifier: License :: OSI Approved :: BSD License
44
- Classifier: Operating System :: OS Independent
44
+ Classifier: Operating System :: MacOS
45
+ Classifier: Operating System :: POSIX :: Linux
45
46
  Classifier: Programming Language :: Python
46
47
  Classifier: Programming Language :: Python :: 3
47
48
  Classifier: Programming Language :: Python :: 3 :: Only
48
- Classifier: Programming Language :: Python :: 3.9
49
49
  Classifier: Programming Language :: Python :: 3.10
50
50
  Classifier: Programming Language :: Python :: 3.11
51
51
  Classifier: Topic :: Scientific/Engineering :: Image Processing
52
- Requires-Python: >=3.9
52
+ Requires-Python: >=3.10
53
53
  Description-Content-Type: text/markdown
54
54
  License-File: LICENSE
55
- Requires-Dist: numpy
55
+ Requires-Dist: numpy<2.0,>=1.23.0
56
56
  Requires-Dist: magicgui
57
57
  Requires-Dist: tqdm
58
58
  Requires-Dist: qtpy
59
- Requires-Dist: scikit-image
59
+ Requires-Dist: scikit-image>=0.19.0
60
+ Requires-Dist: scikit-learn-extra>=0.3.0
60
61
  Requires-Dist: pyqt5
61
- Requires-Dist: tqdm
62
- Requires-Dist: scikit-image
62
+ Requires-Dist: zarr
63
63
  Requires-Dist: ome-zarr
64
64
  Requires-Dist: napari-ome-zarr
65
- Requires-Dist: torch
66
- Requires-Dist: torchvision
67
- Requires-Dist: timm
68
- Requires-Dist: opencv-python
69
- Requires-Dist: cmake
70
65
  Requires-Dist: nd2
71
66
  Requires-Dist: pylibCZIrw
72
67
  Requires-Dist: readlif
73
68
  Requires-Dist: tiffslide
74
- Requires-Dist: hydra-core
75
- Requires-Dist: eva-decord
76
69
  Requires-Dist: acquifer-napari
77
70
  Provides-Extra: testing
78
71
  Requires-Dist: tox; extra == "testing"
79
- Requires-Dist: pytest; extra == "testing"
72
+ Requires-Dist: pytest>=7.0.0; extra == "testing"
80
73
  Requires-Dist: pytest-cov; extra == "testing"
81
74
  Requires-Dist: pytest-qt; extra == "testing"
75
+ Requires-Dist: pytest-timeout; extra == "testing"
82
76
  Requires-Dist: napari; extra == "testing"
83
77
  Requires-Dist: pyqt5; extra == "testing"
78
+ Requires-Dist: psygnal>=0.8.0; extra == "testing"
79
+ Provides-Extra: clustering
80
+ Requires-Dist: scikit-learn-extra>=0.3.0; extra == "clustering"
81
+ Provides-Extra: deep-learning
82
+ Requires-Dist: torch>=1.12.0; extra == "deep-learning"
83
+ Requires-Dist: torchvision>=0.13.0; extra == "deep-learning"
84
+ Requires-Dist: timm; extra == "deep-learning"
85
+ Requires-Dist: opencv-python; extra == "deep-learning"
86
+ Requires-Dist: cmake; extra == "deep-learning"
87
+ Requires-Dist: hydra-core; extra == "deep-learning"
88
+ Requires-Dist: eva-decord; extra == "deep-learning"
89
+ Provides-Extra: all
90
+ Requires-Dist: napari-tmidas[clustering,deep-learning,testing]; extra == "all"
84
91
  Dynamic: license-file
85
92
 
86
93
  # napari-tmidas
@@ -88,13 +95,13 @@ Dynamic: license-file
88
95
  [![License BSD-3](https://img.shields.io/pypi/l/napari-tmidas.svg?color=green)](https://github.com/macromeer/napari-tmidas/raw/main/LICENSE)
89
96
  [![PyPI](https://img.shields.io/pypi/v/napari-tmidas.svg?color=green)](https://pypi.org/project/napari-tmidas)
90
97
  [![Python Version](https://img.shields.io/pypi/pyversions/napari-tmidas.svg?color=green)](https://python.org)
98
+ [![Downloads](https://static.pepy.tech/badge/napari-tmidas)](https://pepy.tech/project/napari-tmidas)
91
99
  [![tests](https://github.com/macromeer/napari-tmidas/workflows/tests/badge.svg)](https://github.com/macromeer/napari-tmidas/actions)
92
- [![napari hub](https://img.shields.io/endpoint?url=https://api.napari-hub.org/shields/napari-tmidas)](https://napari-hub.org/plugins/napari-tmidas)
93
- <!-- [![codecov](https://codecov.io/gh/macromeer/napari-tmidas/branch/main/graph/badge.svg)](https://codecov.io/gh/macromeer/napari-tmidas) -->
94
- The `napari-tmidas` plugin consists of a growing collection of pipelines for fast batch processing of confocal and whole slide microscopy images of biological tissues. This is a WIP and based on the CLI version of [T-MIDAS](https://github.com/MercaderLabAnatomy/T-MIDAS).
100
+
101
+ This napari plugin consists of a growing collection of pipelines for fast batch processing of confocal and whole slide microscopy images of biological tissues. This is a WIP and based on the [T-MIDAS terminal](https://github.com/MercaderLabAnatomy/T-MIDAS).
95
102
 
96
103
  ## Features
97
- Currently, napari-tmidas provides pipelines as widgets for batch image conversion / cropping / processing, ROI colocalization and label inspection (cf. [Usage](#usage) below).
104
+ Currently, **napari-tmidas** provides pipelines as widgets for batch image conversion and processing, object cropping, label image inspection and ROI colocalization (cf. [usage](#usage) below). You can request new batch image processing features in [issues](https://github.com/MercaderLabAnatomy/napari-tmidas/issues).
98
105
 
99
106
  ## Installation
100
107
 
@@ -110,11 +117,21 @@ Now you can install `napari-tmidas` via [pip]:
110
117
 
111
118
  pip install napari-tmidas
112
119
 
120
+ **For deep learning features** (Batch Crop Anything with SAM2, Spotiflow, Careamics, Trackastra), also install:
121
+
122
+ pip install 'napari-tmidas[deep-learning]'
123
+
124
+ Or install everything at once:
125
+
126
+ pip install 'napari-tmidas[all]'
127
+
113
128
  It is recommended though to install the **latest development version**. Please also execute this command from time to time in the activated environment to benefit from newly added features:
114
129
 
115
- pip install git+https://github.com/macromeer/napari-tmidas.git
130
+ pip install git+https://github.com/MercaderLabAnatomy/napari-tmidas.git
116
131
 
117
- To use the Batch Crop Anything pipeline, we need to install **Segment Anything 2** (2D/3D):
132
+ ### Additional Setup for Batch Crop Anything
133
+
134
+ To use the Batch Crop Anything pipeline with SAM2, you need to install SAM2 separately:
118
135
 
119
136
  cd /opt # if the folder does not exist: mkdir /opt && cd /opt
120
137
  git clone https://github.com/facebookresearch/sam2.git && cd sam2
@@ -126,12 +143,10 @@ If you want to batch compress image data using [Zstandard](https://github.com/fa
126
143
 
127
144
  ~~sudo apt-get install zstd~~ # Pre-installed on Linux :man_shrugging:
128
145
 
129
- brew install zstd # for macOS (requires [Homebrew](https://brew.sh/)
146
+ brew install zstd # for macOS (requires Homebrew)
130
147
  pip install zstandard # Windows with Python >= 3.7
131
148
 
132
-
133
-
134
- And you are done!
149
+ And you are done!
135
150
 
136
151
  ## Usage
137
152
 
@@ -143,19 +158,22 @@ You can then find the installed plugin in the Plugins tab.
143
158
 
144
159
  ### Microscopy Image Conversion
145
160
 
146
- You can start this pipeline via `Plugins > T-MIDAS > Batch Microscopy Image Conversion`. Currently, this pipeline supports the conversion of `.nd2, .lif, .ndpi, .czi` and acquifer data. After scanning a folder of your choice for microscopy image data, select a file in the first column of the table and preview and export any image data it contains.
161
+ Converts `.lif, .nd2, .czi, .ndpi` and Acquifer data to TIF or OME-Zarr formats. Scan a folder, select files, and export with preserved spatial metadata.
147
162
 
163
+ **Supported Formats:**
164
+ - **TIF** - Standard format for compatibility
165
+ - **OME-Zarr** - Recommended for large datasets, [spec v0.5](https://ngff.openmicroscopy.org/latest/) compliant with automatic physical metadata extraction (voxel sizes, spacing)
148
166
 
149
167
  <img src="https://github.com/user-attachments/assets/e377ca71-2f30-447d-825e-d2feebf7061b" alt="Microscopy Image Conversion Widget" style="width:75%; height:auto;">
150
168
 
151
169
 
152
170
  ### Image Processing
153
171
 
154
- 1. After opening `Plugins > T-MIDAS > Batch Image Processing`, enter the path to the folder containing the images to be processed (currently supports TIF, later also ZARR). You can also filter for filename suffix.
172
+ 1. You start with entering the path to the folder containing the images to be processed (currently supports TIF, later also ZARR) and optionally a filter for filename suffix
155
173
 
156
174
  ![image](https://github.com/user-attachments/assets/41ecb689-9abe-4371-83b5-9c5eb37069f9)
157
175
 
158
- 2. As a result, a table appears with the found images. You can click on them to inspect them in the viewer.
176
+ 2. After indexing the files, a table appears with the found images. You can click on them to inspect them in the viewer.
159
177
 
160
178
  ![image](https://github.com/user-attachments/assets/8360942a-be8f-49ec-bc25-385ee43bd601)
161
179
 
@@ -176,7 +194,27 @@ Note that whenever you click on an `Original File` or `Processed File` in the ta
176
194
  The image processing capabilities are powered by several excellent open-source tools:
177
195
  - [Cellpose 4](https://github.com/MouseLand/cellpose): Advanced cell segmentation
178
196
  - [Trackastra](https://github.com/weigertlab/trackastra): Cell tracking and analysis
197
+ - [VisCy](https://github.com/mehta-lab/VisCy): Virtual staining using deep learning
179
198
  - [CAREamics](https://github.com/CAREamics/careamics): Content-aware image restoration and enhancement
199
+ - [Spotiflow](https://github.com/weigertlab/spotiflow): Accurate and efficient spot detection for fluorescence microscopy
200
+
201
+ #### Processing Function Documentation
202
+
203
+ Detailed documentation for specific processing functions:
204
+
205
+ **Core Processing**
206
+ - [Basic Processing Functions](docs/basic_processing.md) - Label and intensity operations, channel splitting/merging, time series
207
+ - [Cellpose Segmentation](docs/cellpose_segmentation.md) - Deep learning cell/nucleus segmentation
208
+ - [TrackAstra Tracking](docs/trackastra_tracking.md) - Cell tracking across time-lapse data
209
+ - [VisCy Virtual Staining](docs/viscy_virtual_staining.md) - Virtual staining of phase/DIC images using deep learning
210
+
211
+ **Analysis and Quality Control**
212
+ - [Grid View: Intensity + Labels Overlay](docs/grid_view_overlay.md) - Visual QC for segmentation results
213
+ - [Intensity-Based Label Filtering](docs/intensity_label_filter.md) - Filter labels by signal intensity
214
+ - [Regionprops Analysis](docs/regionprops_analysis.md) - Extract quantitative properties from labels
215
+
216
+ **Advanced Processing**
217
+ - [Advanced Processing Functions](docs/advanced_processing.md) - Denoising (CAREamics), spot detection (Spotiflow), SciPy/scikit-image filters, compression, colocalization
180
218
 
181
219
  ### Batch Label Inspection
182
220
  If you have already segmented a folder full of images and now you want to maybe inspect and edit each label image, you can use the `Plugins > T-MIDAS > Batch Label Inspection`, which automatically saves your changes to the existing label image once you click the `Save Changes and Continue` button (bottom right).
@@ -184,7 +222,8 @@ If you have already segmented a folder full of images and now you want to maybe
184
222
  <img src="https://github.com/user-attachments/assets/0bf8c6ae-4212-449d-8183-e91b23ba740e" alt="Batch Label Inspection Widget" style="width:75%; height:auto;">
185
223
 
186
224
  ### Crop Anything
187
- This pipeline combines the Segment Anything Model (SAM) for automatic object detection with an interactive interface for selecting and cropping multiple objects from images. To launch the widget, open `Plugins > T-MIDAS > Batch Crop Anything`. Cropping works like this: Enter 2D view and go to the first z slice where the object to be cropped is appearing. Activate/select the points layer and click on the object. Terminal shows progress. You can then proceed to select another object (always do this in 2D mode)
225
+
226
+ This pipeline combines the Segment Anything Model (SAM2; supports YX, ZYX and TYX data) for automatic object detection with an interactive interface for selecting and cropping multiple objects from images. To launch the widget, open `Plugins > T-MIDAS > Batch Crop Anything`. Cropping works like this: Enter 2D view and go to the first z slice where the object to be cropped is appearing. Activate/select the points layer and click on the object. Terminal shows progress. You can then proceed to select another object (always do this in 2D mode)
188
227
 
189
228
  <img src="https://github.com/user-attachments/assets/6d72c2a2-1064-4a27-b398-a9b86fcbc443" alt="Crop Anything Widget" style="width:75%; height:auto;">
190
229
 
@@ -192,6 +231,7 @@ This pipeline combines the Segment Anything Model (SAM) for automatic object det
192
231
 
193
232
 
194
233
  ### ROI Colocalization
234
+
195
235
  This pipeline quantifies colocalization between labeled regions of interest (ROIs) across multiple image channels. It determines the extent of overlap between ROIs in a reference channel and those in one or two other channels. The output is a table of colocalization counts. Optionally, the size of reference channel ROIs, as well as the total or median size of colocalizing ROIs in the other channels, can be included. Colocalization is determined using Boolean masking. The number of colocalizing instances is determined by counting unique label IDs within the overlapping regions. Typically, the reference channel contains larger structures, while other channels contain smaller, potentially nested, structures. For example, the reference channel might contain cell bodies, with the second and third channels containing nuclei and sub-nuclear objects, respectively.
196
236
 
197
237
  <img src="https://github.com/user-attachments/assets/2f9022a0-7b88-4588-a448-250f07a634d7" alt="ROI Colocalization Widget" style="width:75%; height:auto;">
@@ -0,0 +1,63 @@
1
+ napari_tmidas/__init__.py,sha256=48HQJ_uxFKXuVl-ZU0AspiS9E6L0ONo5Tullsu3n-x4,1216
2
+ napari_tmidas/_crop_anything.py,sha256=aNrwZiIu9RIyo1wq_R0V24nCEgCFLFPLj0rvwqB6TZw,140754
3
+ napari_tmidas/_env_manager.py,sha256=q318BZXA337a2bCs2-ZDTy10VWMuncj9TJHQtWgs2q4,2463
4
+ napari_tmidas/_file_conversion.py,sha256=lSgPJdLU0nTyIUKaOF4h6exceSGWsAa06pwWdBsz53o,90816
5
+ napari_tmidas/_file_selector.py,sha256=XPrgiz3F5EsZwoemIAmys5MAzeMxdotFqs7BWl8ZMVQ,93448
6
+ napari_tmidas/_label_inspection.py,sha256=tAw9HwcMNG6yWnoyAMRvLBvCcOf5YVA9zDm8LHYom9E,11377
7
+ napari_tmidas/_processing_worker.py,sha256=vkaxjte4YJxlSCTCAtKJe85EeftVaBW7ym9OUQVZ_xU,10654
8
+ napari_tmidas/_reader.py,sha256=RvFjAW0bdQWbUQ3wXxDAIH0GnLrh6cw2m3gkEvkEhOc,2225
9
+ napari_tmidas/_registry.py,sha256=yunbEoDe1JZREMab4BeP7wka17IwK1toV5g1imju30c,2148
10
+ napari_tmidas/_roi_colocalization.py,sha256=0ZSs7JlJKPhGibnETf6Rj746T3YV4AUgynWmZbmNjHw,92257
11
+ napari_tmidas/_sample_data.py,sha256=khuv1jemz_fCjqNwEKMFf83Ju0EN4S89IKydsUMmUxw,645
12
+ napari_tmidas/_ui_utils.py,sha256=wBmaR-3wdgizb234atsjUU2DElsM5-tf4TIsxGLaHzI,1499
13
+ napari_tmidas/_version.py,sha256=NRw4Jle4n9v_DD2wtplRqflGCvX8OU5eAjycYY0vY3Y,704
14
+ napari_tmidas/_widget.py,sha256=Uab5WuJK2fgdlGga6iNnHsiZjRMUq2KM3u0N5JJW8DA,5495
15
+ napari_tmidas/_writer.py,sha256=wbVfHFjjHdybSg37VR4lVmL-kdCkDZsUPDJ66AVLaFQ,1941
16
+ napari_tmidas/napari.yaml,sha256=1Am1dA0-ZtCXk6veIT6jrMz3zwQ7dF8_p9tZTFx_vTg,2641
17
+ napari_tmidas/_tests/test_crop_anything.py,sha256=vUgO8ue-BtWvQvIoHjeD5-UUnlnJYV0478GQRgsGtAY,4763
18
+ napari_tmidas/_tests/test_env_manager.py,sha256=IQDhdGBRV_YJrYAK6U8cXbDZyvmG9YNWA8prjCWCdsM,2927
19
+ napari_tmidas/_tests/test_file_selector.py,sha256=Sbu0BCXTaQAeUJLtOVjIC87AUARbi8J0bXBlMJe53ew,2687
20
+ napari_tmidas/_tests/test_grid_view_overlay.py,sha256=11-l7qqA6Tfi5Pf1VKRTPDg3dG61zrZPxG2SV3mM0Rg,6367
21
+ napari_tmidas/_tests/test_init.py,sha256=xGic9AQn-VtEOloUWIrH1P6_KvJp61nILk35Y09FHTA,3424
22
+ napari_tmidas/_tests/test_intensity_label_filter.py,sha256=PB2aWx48A4qpJ52uR0wIdE9LaFwRKdNwpOVfkiguB0s,7694
23
+ napari_tmidas/_tests/test_label_inspection.py,sha256=oUW4aJoM3ePEckZmPZNEwfDfob8brUsPGbfrHRnSL8c,2891
24
+ napari_tmidas/_tests/test_processing_basic.py,sha256=Ua_7VSQ--D_cIT6ptupRsW6rN37BTyipT5mp4GX3BYI,19652
25
+ napari_tmidas/_tests/test_processing_worker.py,sha256=X6F3Z2LH-7jd442wj1eerL8U1NS-BORV6SHTib7NsD4,4534
26
+ napari_tmidas/_tests/test_reader.py,sha256=gN_2StATLZYUL56X27ImJTVru_qSoFiY4vtgajcx3H0,975
27
+ napari_tmidas/_tests/test_regionprops_analysis.py,sha256=IGAEtdg83R9aH8wsINR8VCvNBgpYk6g3lH0S1IyBMLk,17030
28
+ napari_tmidas/_tests/test_registry.py,sha256=Kf2G-8Y0mMRECDR-V_qpj-OMgQReBkFWyTHkGx6CRGQ,4504
29
+ napari_tmidas/_tests/test_sample_data.py,sha256=D1HU_C3hWpO3mlSW_7Z94xaYHDtxz0XUrMjQoYop9Ag,104
30
+ napari_tmidas/_tests/test_scipy_filters.py,sha256=SUcgyFh2IY4YVJvVO6_J1JdgkCsYdW36RgpHLkkp2vg,6268
31
+ napari_tmidas/_tests/test_skimage_filters.py,sha256=TgvwcE_1kpdRzg5Hex9z9IoJc5Mt7IJjbpsdmZFiOGc,9869
32
+ napari_tmidas/_tests/test_split_channels.py,sha256=aMvjppoHlPAuwWLGYa1UcfBM_fvu0zM7Elam5JWaAQw,7448
33
+ napari_tmidas/_tests/test_spotiflow.py,sha256=BLSaD8z8r2zbkYEGmfQ3JkSgw5OkvEORnSzpbkIIz4Y,2578
34
+ napari_tmidas/_tests/test_tyx_display_fix.py,sha256=rhKbmM1rkPAAUeV3x3VuJkzXwEoqgi3Gtrxi1PP4ijs,4804
35
+ napari_tmidas/_tests/test_ui_utils.py,sha256=jRHma8i_kWkZD8uvu98Z8Fw5NorocRvA_gjap93nb48,2464
36
+ napari_tmidas/_tests/test_widget.py,sha256=0qKDzyfqGnKKY6smqYiruZEWBQjW5fU98ZHeSE5Ei2Q,3263
37
+ napari_tmidas/_tests/test_windows_basic.py,sha256=nELpwQErf5m1mStIns5jZ4l5BD-_J9XG8IP_CrhSGWw,2311
38
+ napari_tmidas/_tests/test_writer.py,sha256=4_MlZM9a5So74J16_4tIOJc6pwTOw9R0-oAE_YioIx4,122
39
+ napari_tmidas/processing_functions/__init__.py,sha256=osXY9jSgDsrwFaS6ShPHP0wGRxMuX1mHRN9EDa9l41g,1891
40
+ napari_tmidas/processing_functions/basic.py,sha256=3kA7GwCJDkkPyIRMZL5hFDSbz-8jjehMlWsQtjdOlro,44500
41
+ napari_tmidas/processing_functions/careamics_denoising.py,sha256=DFE_6lefeqckAvx-1EqwzJSU3iR3g3ujBGRnF_fnpoM,11638
42
+ napari_tmidas/processing_functions/careamics_env_manager.py,sha256=ca3e4a8s5mMZdgbYLtk21sXDyhIAulgvH1x5k__wDjw,10342
43
+ napari_tmidas/processing_functions/cellpose_env_manager.py,sha256=0HFlHZVbXs2nEead6-VUrHjPhkFkcujP-a0-5Ys_mvA,16718
44
+ napari_tmidas/processing_functions/cellpose_segmentation.py,sha256=qChVwyvGL5nqXjeS0pD0XOxgkyojdiHVXghvdMzdpWI,12280
45
+ napari_tmidas/processing_functions/colocalization.py,sha256=_QZu1rI_Mt4lnME0YhaAg0RP9Wjof0smpbJoqXoGXR8,25518
46
+ napari_tmidas/processing_functions/file_compression.py,sha256=mxR-yqBdc-T1XI3StIXpW8h5xGdCOtLQjt8uoRFpDSY,6859
47
+ napari_tmidas/processing_functions/grid_view_overlay.py,sha256=pZ-5CsHx2tvvW_3QCz5d1-UpleHPES9pj40ZhAf4rrQ,22991
48
+ napari_tmidas/processing_functions/intensity_label_filter.py,sha256=BymvHtFmiqh_eSuix6RtsfjJV7s0fD54OJuIt82sf8Q,13722
49
+ napari_tmidas/processing_functions/regionprops_analysis.py,sha256=ySmzlY_F8uXWQIoSXJFge30jkWFg6G8HhjDVbk4v2rU,45828
50
+ napari_tmidas/processing_functions/sam2_env_manager.py,sha256=w-X493XdHWAE8UhyHhEEVJ3uvLi2VdS-UFU7yPqnagg,2569
51
+ napari_tmidas/processing_functions/sam2_mp4.py,sha256=lEdrqQP36_kw2g3soyu81CCRXCkI5DdSExfq5Bc5kig,11523
52
+ napari_tmidas/processing_functions/scipy_filters.py,sha256=1Y69F5Pe-MEJPwQEs_6Ci3ncFuTKiRAuKRvDxmOQUPw,17871
53
+ napari_tmidas/processing_functions/skimage_filters.py,sha256=Nhv6E8_YcRZ2s1FMkzDJNHr64fpMbUSHpUIY7nuvMHs,25192
54
+ napari_tmidas/processing_functions/spotiflow_detection.py,sha256=2FLnDNXLc0eNj8vhp_XBv_bukX5pJOEhuiyXbUzzcyU,32811
55
+ napari_tmidas/processing_functions/spotiflow_env_manager.py,sha256=07J_tYADMvIVIr_afniSNt8uEduecqpNblSWEj9aH7Q,20323
56
+ napari_tmidas/processing_functions/timepoint_merger.py,sha256=7pXyfcI2rXZz6_TP3v_WejmMFivNVyUzkzBmifMiFKA,27424
57
+ napari_tmidas/processing_functions/trackastra_tracking.py,sha256=IkFk5HoEZmKdcu5jXri4WMhHN1KTADDMxSpeYfPgSbo,9976
58
+ napari_tmidas-0.2.4.dist-info/licenses/LICENSE,sha256=tSjiOqj57exmEIfP2YVPCEeQf0cH49S6HheQR8IiY3g,1485
59
+ napari_tmidas-0.2.4.dist-info/METADATA,sha256=NBJTIL9QGfMkrLPVq4G-Xr-HNeZ7G2zWOlbAAM0F0uo,14856
60
+ napari_tmidas-0.2.4.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
61
+ napari_tmidas-0.2.4.dist-info/entry_points.txt,sha256=fbVjzbJTm4aDMIBtel1Lyqvq-CwXY7wmCOo_zJ-jtRY,60
62
+ napari_tmidas-0.2.4.dist-info/top_level.txt,sha256=63ybdxCZ4SeT13f_Ou4TsivGV_2Gtm_pJOXToAt30_E,14
63
+ napari_tmidas-0.2.4.dist-info/RECORD,,
File without changes
@@ -1,40 +0,0 @@
1
- napari_tmidas/__init__.py,sha256=YNBLESwk8jr_TlDdkSC1CwH0tf0CKHF1i2_efzLjdpk,589
2
- napari_tmidas/_crop_anything.py,sha256=2UMUddQ6mdX96FiJPKpQnG1P1atFrxlz41JYWM3933k,103088
3
- napari_tmidas/_file_conversion.py,sha256=V6evJmggUwOFzJO203Y5ltboHXEWNJQckZPedGRkrLI,72203
4
- napari_tmidas/_file_selector.py,sha256=tuWxfmHuvILp70cGl6bsEyhRxKNum45GKD6-st-1hnM,43056
5
- napari_tmidas/_label_inspection.py,sha256=74V36y5EnGs0vWK1FC7Kui4CPLBW_SIg885PSKeZsJ4,9184
6
- napari_tmidas/_reader.py,sha256=A9_hdDxtVkVGmbOsbqgnARCSvpEh7GGPo7ylzmbnu8o,2485
7
- napari_tmidas/_registry.py,sha256=fxBPLFCvXtjSHfcVIRb6KI9DkqIWRUpPPg_3pD8sXns,2110
8
- napari_tmidas/_roi_colocalization.py,sha256=OVjdHvtFN07DgrtTX8uqbrxZL6jVwl2L3klorgW2C9k,43196
9
- napari_tmidas/_sample_data.py,sha256=khuv1jemz_fCjqNwEKMFf83Ju0EN4S89IKydsUMmUxw,645
10
- napari_tmidas/_version.py,sha256=OjGGK5TcHVG44Y62aAqeJH4CskkZoY9ydbHOtCDew50,511
11
- napari_tmidas/_widget.py,sha256=u9uf9WILAwZg_InhFyjWInY4ej1TV1a59dR8Fe3vNF8,4794
12
- napari_tmidas/_writer.py,sha256=wbVfHFjjHdybSg37VR4lVmL-kdCkDZsUPDJ66AVLaFQ,1941
13
- napari_tmidas/napari.yaml,sha256=1Am1dA0-ZtCXk6veIT6jrMz3zwQ7dF8_p9tZTFx_vTg,2641
14
- napari_tmidas/_tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
15
- napari_tmidas/_tests/test_file_selector.py,sha256=Sbu0BCXTaQAeUJLtOVjIC87AUARbi8J0bXBlMJe53ew,2687
16
- napari_tmidas/_tests/test_reader.py,sha256=gN_2StATLZYUL56X27ImJTVru_qSoFiY4vtgajcx3H0,975
17
- napari_tmidas/_tests/test_registry.py,sha256=DSI6NdmuIS1sYAa3LrVge0rOS5Ycb3TXFXxol3vDyRA,2061
18
- napari_tmidas/_tests/test_sample_data.py,sha256=D1HU_C3hWpO3mlSW_7Z94xaYHDtxz0XUrMjQoYop9Ag,104
19
- napari_tmidas/_tests/test_widget.py,sha256=I_d-Cra_CTcS0QdMItg_HMphvhj0XCx81JnFyCHk9lg,2204
20
- napari_tmidas/_tests/test_writer.py,sha256=4_MlZM9a5So74J16_4tIOJc6pwTOw9R0-oAE_YioIx4,122
21
- napari_tmidas/processing_functions/__init__.py,sha256=osXY9jSgDsrwFaS6ShPHP0wGRxMuX1mHRN9EDa9l41g,1891
22
- napari_tmidas/processing_functions/basic.py,sha256=NJj7pjVPGZwH2H8lnDtxxK-p3JLpcayAqfmTduuPFDw,26777
23
- napari_tmidas/processing_functions/careamics_denoising.py,sha256=DFE_6lefeqckAvx-1EqwzJSU3iR3g3ujBGRnF_fnpoM,11638
24
- napari_tmidas/processing_functions/careamics_env_manager.py,sha256=QfmhY5CaeFboUGTxeDlQDPi9WSfeBWp56Zz_qc2luew,11219
25
- napari_tmidas/processing_functions/cellpose_env_manager.py,sha256=EWNuHuY0PPw8_mL61ElZ58M0-DTduPKuWUdvsrmKV8I,6191
26
- napari_tmidas/processing_functions/cellpose_segmentation.py,sha256=miRPIsrkv0jL1jNdUFwlTkmr6-m9g7U7k9ijyeatUY0,13410
27
- napari_tmidas/processing_functions/colocalization.py,sha256=AiTTVAcVhKuuHZhrj5IHwbzns7-GE6ewvFqhYy1L-do,7657
28
- napari_tmidas/processing_functions/file_compression.py,sha256=mxR-yqBdc-T1XI3StIXpW8h5xGdCOtLQjt8uoRFpDSY,6859
29
- napari_tmidas/processing_functions/sam2_env_manager.py,sha256=WzKOLFeu1KZRRBryKdWkDm6QJolhs3rCj-KD6Q-z9dE,2897
30
- napari_tmidas/processing_functions/sam2_mp4.py,sha256=NF0dWar2uyP_yQWxC8e08J6198C2qxEIzQccSI_5g40,10352
31
- napari_tmidas/processing_functions/scipy_filters.py,sha256=kKpDAlQQ0ZNbkt77QUWi-Bwolk6MMDvtG_bZJV3MjOo,1612
32
- napari_tmidas/processing_functions/skimage_filters.py,sha256=tSBx0nal88ixxVbu5o7ojTn90HgsUTt-aA_T6XLvmyY,16320
33
- napari_tmidas/processing_functions/timepoint_merger.py,sha256=DwL5vZBSplXt9dBBrKtMm9aH_NvT3mY7cdbeGg2OU_Y,16567
34
- napari_tmidas/processing_functions/trackastra_tracking.py,sha256=IkFk5HoEZmKdcu5jXri4WMhHN1KTADDMxSpeYfPgSbo,9976
35
- napari_tmidas-0.2.2.dist-info/licenses/LICENSE,sha256=tSjiOqj57exmEIfP2YVPCEeQf0cH49S6HheQR8IiY3g,1485
36
- napari_tmidas-0.2.2.dist-info/METADATA,sha256=cY8vgH2bnjC9elLZ0uxIBVJeTckVbg7UxnV2L5u4wTc,12742
37
- napari_tmidas-0.2.2.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
38
- napari_tmidas-0.2.2.dist-info/entry_points.txt,sha256=fbVjzbJTm4aDMIBtel1Lyqvq-CwXY7wmCOo_zJ-jtRY,60
39
- napari_tmidas-0.2.2.dist-info/top_level.txt,sha256=63ybdxCZ4SeT13f_Ou4TsivGV_2Gtm_pJOXToAt30_E,14
40
- napari_tmidas-0.2.2.dist-info/RECORD,,