celldetective 1.2.1__py3-none-any.whl → 1.2.2__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.
- celldetective/__main__.py +12 -5
- celldetective/events.py +28 -2
- celldetective/gui/about.py +0 -1
- celldetective/gui/analyze_block.py +3 -18
- celldetective/gui/btrack_options.py +126 -21
- celldetective/gui/classifier_widget.py +67 -111
- celldetective/gui/configure_new_exp.py +37 -4
- celldetective/gui/control_panel.py +14 -30
- celldetective/gui/generic_signal_plot.py +793 -0
- celldetective/gui/gui_utils.py +401 -226
- celldetective/gui/json_readers.py +0 -2
- celldetective/gui/layouts.py +269 -25
- celldetective/gui/measurement_options.py +14 -23
- celldetective/gui/neighborhood_options.py +3 -15
- celldetective/gui/plot_measurements.py +10 -23
- celldetective/gui/plot_signals_ui.py +53 -687
- celldetective/gui/process_block.py +320 -186
- celldetective/gui/retrain_segmentation_model_options.py +30 -47
- celldetective/gui/retrain_signal_model_options.py +5 -14
- celldetective/gui/seg_model_loader.py +129 -113
- celldetective/gui/signal_annotator.py +89 -99
- celldetective/gui/signal_annotator2.py +5 -9
- celldetective/gui/styles.py +32 -0
- celldetective/gui/survival_ui.py +49 -712
- celldetective/gui/tableUI.py +0 -1
- celldetective/gui/thresholds_gui.py +38 -11
- celldetective/gui/viewers.py +6 -7
- celldetective/io.py +60 -82
- celldetective/measure.py +374 -15
- celldetective/neighborhood.py +1 -7
- celldetective/preprocessing.py +2 -4
- celldetective/relative_measurements.py +0 -3
- celldetective/scripts/analyze_signals.py +0 -1
- celldetective/scripts/measure_cells.py +1 -3
- celldetective/scripts/measure_relative.py +1 -2
- celldetective/scripts/segment_cells.py +16 -12
- celldetective/scripts/segment_cells_thresholds.py +17 -10
- celldetective/scripts/track_cells.py +18 -18
- celldetective/scripts/train_segmentation_model.py +1 -2
- celldetective/scripts/train_signal_model.py +0 -3
- celldetective/segmentation.py +1 -1
- celldetective/signals.py +17 -8
- celldetective/tracking.py +2 -1
- celldetective/utils.py +42 -2
- {celldetective-1.2.1.dist-info → celldetective-1.2.2.dist-info}/METADATA +19 -12
- celldetective-1.2.2.dist-info/RECORD +92 -0
- {celldetective-1.2.1.dist-info → celldetective-1.2.2.dist-info}/WHEEL +1 -1
- celldetective-1.2.1.dist-info/RECORD +0 -91
- {celldetective-1.2.1.dist-info → celldetective-1.2.2.dist-info}/LICENSE +0 -0
- {celldetective-1.2.1.dist-info → celldetective-1.2.2.dist-info}/entry_points.txt +0 -0
- {celldetective-1.2.1.dist-info → celldetective-1.2.2.dist-info}/top_level.txt +0 -0
|
@@ -7,12 +7,11 @@ import datetime
|
|
|
7
7
|
import os
|
|
8
8
|
import json
|
|
9
9
|
from celldetective.io import auto_load_number_of_frames, load_frames, interpret_tracking_configuration
|
|
10
|
-
from celldetective.utils import extract_experiment_channels,
|
|
10
|
+
from celldetective.utils import extract_experiment_channels, ConfigSectionMap, _get_img_num_per_channel, extract_experiment_channels
|
|
11
11
|
from celldetective.measure import drop_tonal_features, measure_features
|
|
12
12
|
from celldetective.tracking import track
|
|
13
13
|
from pathlib import Path, PurePath
|
|
14
14
|
from glob import glob
|
|
15
|
-
from shutil import rmtree
|
|
16
15
|
from tqdm import tqdm
|
|
17
16
|
import numpy as np
|
|
18
17
|
import pandas as pd
|
|
@@ -21,7 +20,6 @@ import os
|
|
|
21
20
|
from natsort import natsorted
|
|
22
21
|
from art import tprint
|
|
23
22
|
from tifffile import imread
|
|
24
|
-
import threading
|
|
25
23
|
|
|
26
24
|
tprint("Track")
|
|
27
25
|
|
|
@@ -60,7 +58,6 @@ parent1 = Path(pos).parent
|
|
|
60
58
|
expfolder = parent1.parent
|
|
61
59
|
config = PurePath(expfolder,Path("config.ini"))
|
|
62
60
|
assert os.path.exists(config),'The configuration file for the experiment could not be located. Abort.'
|
|
63
|
-
print("Configuration file: ",config)
|
|
64
61
|
|
|
65
62
|
# from exp config fetch spatial calib, channel names
|
|
66
63
|
movie_prefix = ConfigSectionMap(config,"MovieSettings")["movie_prefix"]
|
|
@@ -76,10 +73,9 @@ nbr_channels = len(channel_names)
|
|
|
76
73
|
# from tracking instructions, fetch btrack config, features, haralick, clean_traj, idea: fetch custom timeline?
|
|
77
74
|
instr_path = PurePath(expfolder,Path(f"{instruction_file}"))
|
|
78
75
|
if os.path.exists(instr_path):
|
|
79
|
-
print(f"Tracking instructions for the {mode} population
|
|
76
|
+
print(f"Tracking instructions for the {mode} population have been successfully loaded...")
|
|
80
77
|
with open(instr_path, 'r') as f:
|
|
81
78
|
instructions = json.load(f)
|
|
82
|
-
print("Reading the following instructions: ",instructions)
|
|
83
79
|
btrack_config = interpret_tracking_configuration(instructions['btrack_config_path'])
|
|
84
80
|
|
|
85
81
|
if 'features' in instructions:
|
|
@@ -102,7 +98,7 @@ if os.path.exists(instr_path):
|
|
|
102
98
|
else:
|
|
103
99
|
post_processing_options = None
|
|
104
100
|
else:
|
|
105
|
-
print('
|
|
101
|
+
print('Tracking instructions could not be located... Using a standard bTrack motion model instead...')
|
|
106
102
|
btrack_config = interpret_tracking_configuration(None)
|
|
107
103
|
features = None
|
|
108
104
|
mask_channels = None
|
|
@@ -117,7 +113,7 @@ label_path = natsorted(glob(pos+f"{label_folder}"+os.sep+"*.tif"))
|
|
|
117
113
|
if len(label_path)>0:
|
|
118
114
|
print(f"Found {len(label_path)} segmented frames...")
|
|
119
115
|
else:
|
|
120
|
-
print(f"No segmented frames have been found. Please run segmentation first
|
|
116
|
+
print(f"No segmented frames have been found. Please run segmentation first. Abort...")
|
|
121
117
|
os.abort()
|
|
122
118
|
|
|
123
119
|
# Do this if features or Haralick is not None, else don't need stack
|
|
@@ -168,14 +164,20 @@ def measure_index(indices):
|
|
|
168
164
|
# Multithreading
|
|
169
165
|
indices = list(range(img_num_channels.shape[1]))
|
|
170
166
|
chunks = np.array_split(indices, n_threads)
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
167
|
+
|
|
168
|
+
import concurrent.futures
|
|
169
|
+
|
|
170
|
+
with concurrent.futures.ThreadPoolExecutor() as executor:
|
|
171
|
+
executor.map(measure_index, chunks)
|
|
172
|
+
|
|
173
|
+
# threads = []
|
|
174
|
+
# for i in range(n_threads):
|
|
175
|
+
# thread_i = threading.Thread(target=measure_index, args=[chunks[i]])
|
|
176
|
+
# threads.append(thread_i)
|
|
177
|
+
# for th in threads:
|
|
178
|
+
# th.start()
|
|
179
|
+
# for th in threads:
|
|
180
|
+
# th.join()
|
|
179
181
|
|
|
180
182
|
df = pd.concat(timestep_dataframes)
|
|
181
183
|
df.reset_index(inplace=True, drop=True)
|
|
@@ -202,8 +204,6 @@ trajectories, napari_data = track(None,
|
|
|
202
204
|
clean_trajectories_kwargs=post_processing_options,
|
|
203
205
|
volume=(shape_x, shape_y),
|
|
204
206
|
)
|
|
205
|
-
print(trajectories)
|
|
206
|
-
print(trajectories.columns)
|
|
207
207
|
|
|
208
208
|
# out trajectory table, create POSITION_X_um, POSITION_Y_um, TIME_min (new ones)
|
|
209
209
|
# Save napari data
|
|
@@ -11,11 +11,10 @@ from tqdm import tqdm
|
|
|
11
11
|
import numpy as np
|
|
12
12
|
import random
|
|
13
13
|
|
|
14
|
-
from celldetective.utils import load_image_dataset,
|
|
14
|
+
from celldetective.utils import load_image_dataset, augmenter, interpolate_nan
|
|
15
15
|
from celldetective.io import normalize_multichannel
|
|
16
16
|
from stardist import fill_label_holes
|
|
17
17
|
from art import tprint
|
|
18
|
-
import matplotlib.pyplot as plt
|
|
19
18
|
from distutils.dir_util import copy_tree
|
|
20
19
|
from csbdeep.utils import save_json
|
|
21
20
|
|
|
@@ -5,11 +5,8 @@ Copright © 2023 Laboratoire Adhesion et Inflammation, Authored by Remy Torro.
|
|
|
5
5
|
import argparse
|
|
6
6
|
import os
|
|
7
7
|
import json
|
|
8
|
-
from pathlib import Path, PurePath
|
|
9
8
|
from glob import glob
|
|
10
|
-
from tqdm import tqdm
|
|
11
9
|
import numpy as np
|
|
12
|
-
import gc
|
|
13
10
|
from art import tprint
|
|
14
11
|
from celldetective.signals import SignalDetectionModel
|
|
15
12
|
from celldetective.io import locate_signal_model
|
celldetective/segmentation.py
CHANGED
|
@@ -3,7 +3,7 @@ Segmentation module
|
|
|
3
3
|
"""
|
|
4
4
|
import json
|
|
5
5
|
import os
|
|
6
|
-
from .io import locate_segmentation_model,
|
|
6
|
+
from .io import locate_segmentation_model, normalize_multichannel
|
|
7
7
|
from .utils import _estimate_scale_factor, _extract_channel_indices
|
|
8
8
|
from pathlib import Path
|
|
9
9
|
from tqdm import tqdm
|
celldetective/signals.py
CHANGED
|
@@ -9,7 +9,7 @@ from tensorflow.keras.losses import CategoricalCrossentropy, MeanSquaredError, M
|
|
|
9
9
|
from tensorflow.keras.metrics import Precision, Recall, MeanIoU
|
|
10
10
|
from tensorflow.keras.models import load_model,clone_model
|
|
11
11
|
from tensorflow.config.experimental import list_physical_devices, set_memory_growth
|
|
12
|
-
from tensorflow.keras.utils import to_categorical
|
|
12
|
+
from tensorflow.keras.utils import to_categorical
|
|
13
13
|
from tensorflow.keras import Input, Model
|
|
14
14
|
from tensorflow.keras.layers import Conv1D, BatchNormalization, Dense, Activation, Add, MaxPooling1D, Dropout, GlobalAveragePooling1D, Concatenate, ZeroPadding1D, Flatten
|
|
15
15
|
from tensorflow.keras.callbacks import Callback
|
|
@@ -18,13 +18,12 @@ from sklearn.metrics import jaccard_score, balanced_accuracy_score, precision_sc
|
|
|
18
18
|
from scipy.interpolate import interp1d
|
|
19
19
|
from scipy.ndimage import shift
|
|
20
20
|
|
|
21
|
-
from celldetective.io import
|
|
21
|
+
from celldetective.io import locate_signal_model, get_position_pickle, get_position_table
|
|
22
22
|
from celldetective.tracking import clean_trajectories, interpolate_nan_properties
|
|
23
23
|
from celldetective.utils import regression_plot, train_test_split, compute_weights
|
|
24
24
|
import matplotlib.pyplot as plt
|
|
25
25
|
from natsort import natsorted
|
|
26
26
|
from glob import glob
|
|
27
|
-
import shutil
|
|
28
27
|
import random
|
|
29
28
|
from celldetective.utils import color_from_status, color_from_class
|
|
30
29
|
from math import floor, ceil
|
|
@@ -3074,7 +3073,7 @@ def mean_signal(df, signal_name, class_col, time_col=None, class_value=[0], retu
|
|
|
3074
3073
|
3. Tracks with missing or NaN values in the specified signal are ignored during calculation.
|
|
3075
3074
|
4. Tracks are aligned based on their 'FRAME' values and the specified `time_col` (if provided).
|
|
3076
3075
|
"""
|
|
3077
|
-
|
|
3076
|
+
|
|
3078
3077
|
assert signal_name in list(df.columns),"The signal you want to plot is not one of the measured features."
|
|
3079
3078
|
if isinstance(class_value,int):
|
|
3080
3079
|
class_value = [class_value]
|
|
@@ -3083,6 +3082,11 @@ def mean_signal(df, signal_name, class_col, time_col=None, class_value=[0], retu
|
|
|
3083
3082
|
max_duration = ceil(np.amax(df.groupby(['position','TRACK_ID']).size().values))
|
|
3084
3083
|
else:
|
|
3085
3084
|
max_duration = forced_max_duration
|
|
3085
|
+
|
|
3086
|
+
abs_time = False
|
|
3087
|
+
if isinstance(time_col, (int,float)):
|
|
3088
|
+
abs_time = True
|
|
3089
|
+
|
|
3086
3090
|
n_tracks = len(df.groupby(['position','TRACK_ID']))
|
|
3087
3091
|
signal_matrix = np.zeros((n_tracks,int(max_duration)*2 + 1))
|
|
3088
3092
|
signal_matrix[:,:] = np.nan
|
|
@@ -3094,11 +3098,16 @@ def mean_signal(df, signal_name, class_col, time_col=None, class_value=[0], retu
|
|
|
3094
3098
|
cclass = track_group[class_col].to_numpy()[0]
|
|
3095
3099
|
if cclass != 0:
|
|
3096
3100
|
ref_time = 0
|
|
3101
|
+
if abs_time:
|
|
3102
|
+
ref_time = time_col
|
|
3097
3103
|
else:
|
|
3098
|
-
|
|
3099
|
-
|
|
3100
|
-
|
|
3101
|
-
|
|
3104
|
+
if not abs_time:
|
|
3105
|
+
try:
|
|
3106
|
+
ref_time = floor(track_group[time_col].to_numpy()[0])
|
|
3107
|
+
except:
|
|
3108
|
+
continue
|
|
3109
|
+
else:
|
|
3110
|
+
ref_time = time_col
|
|
3102
3111
|
if conflict_mode=='mean':
|
|
3103
3112
|
signal = track_group.groupby('FRAME')[signal_name].mean().to_numpy()
|
|
3104
3113
|
elif conflict_mode=='first':
|
celldetective/tracking.py
CHANGED
|
@@ -10,7 +10,6 @@ from celldetective.measure import measure_features
|
|
|
10
10
|
from celldetective.utils import rename_intensity_column, velocity_per_track
|
|
11
11
|
from celldetective.io import view_on_napari_btrack, interpret_tracking_configuration
|
|
12
12
|
|
|
13
|
-
from btrack.datasets import cell_config
|
|
14
13
|
import os
|
|
15
14
|
import subprocess
|
|
16
15
|
|
|
@@ -153,6 +152,8 @@ def track(labels, configuration=None, stack=None, spatial_calibration=1, feature
|
|
|
153
152
|
df_temp = pd.DataFrame(x_scaled, columns=columns, index = df.index)
|
|
154
153
|
df[columns] = df_temp
|
|
155
154
|
|
|
155
|
+
# set dummy features to NaN
|
|
156
|
+
df.loc[df['dummy'],['class_id']+columns] = np.nan
|
|
156
157
|
df = df.sort_values(by=[column_labels['track'],column_labels['time']])
|
|
157
158
|
df = velocity_per_track(df, window_size=3, mode='bi')
|
|
158
159
|
|
celldetective/utils.py
CHANGED
|
@@ -17,7 +17,6 @@ import json
|
|
|
17
17
|
from csbdeep.utils import normalize_mi_ma
|
|
18
18
|
from glob import glob
|
|
19
19
|
from urllib.request import urlopen
|
|
20
|
-
from urllib.parse import urlparse
|
|
21
20
|
import zipfile
|
|
22
21
|
from tqdm import tqdm
|
|
23
22
|
import shutil
|
|
@@ -2435,4 +2434,45 @@ def collapse_trajectories_by_status(df, status=None, projection='mean', populati
|
|
|
2435
2434
|
group_table = group_table.sort_values(by=groupby_columns + [status],ignore_index=True)
|
|
2436
2435
|
group_table = group_table.reset_index(drop=True)
|
|
2437
2436
|
|
|
2438
|
-
return group_table
|
|
2437
|
+
return group_table
|
|
2438
|
+
|
|
2439
|
+
def step_function(t, t_shift, dt):
|
|
2440
|
+
|
|
2441
|
+
"""
|
|
2442
|
+
Computes a step function using the logistic sigmoid function.
|
|
2443
|
+
|
|
2444
|
+
This function calculates the value of a sigmoid function, which is often used to model
|
|
2445
|
+
a step change or transition. The sigmoid function is defined as:
|
|
2446
|
+
|
|
2447
|
+
.. math::
|
|
2448
|
+
f(t) = \\frac{1}{1 + \\exp{\\left( -\\frac{t - t_{shift}}{dt} \\right)}}
|
|
2449
|
+
|
|
2450
|
+
where `t` is the input variable, `t_shift` is the point of the transition, and `dt` controls
|
|
2451
|
+
the steepness of the transition.
|
|
2452
|
+
|
|
2453
|
+
Parameters
|
|
2454
|
+
----------
|
|
2455
|
+
t : array_like
|
|
2456
|
+
The input values for which the step function will be computed.
|
|
2457
|
+
t_shift : float
|
|
2458
|
+
The point in the `t` domain where the transition occurs.
|
|
2459
|
+
dt : float
|
|
2460
|
+
The parameter that controls the steepness of the transition. Smaller values make the
|
|
2461
|
+
transition steeper, while larger values make it smoother.
|
|
2462
|
+
|
|
2463
|
+
Returns
|
|
2464
|
+
-------
|
|
2465
|
+
array_like
|
|
2466
|
+
The computed values of the step function for each value in `t`.
|
|
2467
|
+
|
|
2468
|
+
Examples
|
|
2469
|
+
--------
|
|
2470
|
+
>>> import numpy as np
|
|
2471
|
+
>>> t = np.array([0, 1, 2, 3, 4, 5])
|
|
2472
|
+
>>> t_shift = 2
|
|
2473
|
+
>>> dt = 1
|
|
2474
|
+
>>> step_function(t, t_shift, dt)
|
|
2475
|
+
array([0.26894142, 0.37754067, 0.5 , 0.62245933, 0.73105858, 0.81757448])
|
|
2476
|
+
"""
|
|
2477
|
+
|
|
2478
|
+
return 1/(1+np.exp(-(t-t_shift)/dt))
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: celldetective
|
|
3
|
-
Version: 1.2.
|
|
3
|
+
Version: 1.2.2
|
|
4
4
|
Summary: description
|
|
5
5
|
Home-page: http://github.com/remyeltorro/celldetective
|
|
6
6
|
Author: Rémy Torro
|
|
@@ -12,14 +12,14 @@ Requires-Dist: wheel
|
|
|
12
12
|
Requires-Dist: nbsphinx
|
|
13
13
|
Requires-Dist: nbsphinx-link
|
|
14
14
|
Requires-Dist: sphinx-rtd-theme
|
|
15
|
-
Requires-Dist: sphinx
|
|
16
|
-
Requires-Dist: jinja2
|
|
15
|
+
Requires-Dist: sphinx
|
|
16
|
+
Requires-Dist: jinja2
|
|
17
17
|
Requires-Dist: ipykernel
|
|
18
18
|
Requires-Dist: stardist
|
|
19
19
|
Requires-Dist: cellpose<3
|
|
20
20
|
Requires-Dist: scikit-learn
|
|
21
21
|
Requires-Dist: btrack
|
|
22
|
-
Requires-Dist: tensorflow
|
|
22
|
+
Requires-Dist: tensorflow~=2.15.0
|
|
23
23
|
Requires-Dist: napari
|
|
24
24
|
Requires-Dist: tqdm
|
|
25
25
|
Requires-Dist: mahotas
|
|
@@ -32,9 +32,10 @@ Requires-Dist: seaborn
|
|
|
32
32
|
Requires-Dist: opencv-python-headless==4.7.0.72
|
|
33
33
|
Requires-Dist: liblapack
|
|
34
34
|
Requires-Dist: gputools
|
|
35
|
-
Requires-Dist: lmfit
|
|
36
|
-
Requires-Dist: superqt[cmap]
|
|
35
|
+
Requires-Dist: lmfit
|
|
36
|
+
Requires-Dist: superqt[cmap]
|
|
37
37
|
Requires-Dist: matplotlib-scalebar
|
|
38
|
+
Requires-Dist: numpy==1.26.4
|
|
38
39
|
|
|
39
40
|
# Celldetective
|
|
40
41
|
|
|
@@ -165,23 +166,25 @@ steps.
|
|
|
165
166
|
|
|
166
167
|
To use the software, you must install python, *e.g.* through
|
|
167
168
|
[Anaconda](https://www.anaconda.com/download). We developed and tested
|
|
168
|
-
the software in Python 3.9.
|
|
169
|
+
the software in Python 3.9 and more recently 3.11.
|
|
169
170
|
|
|
170
171
|
# Installation
|
|
171
172
|
|
|
172
173
|
## Stable release
|
|
173
174
|
|
|
174
|
-
Celldetective
|
|
175
|
+
Celldetective requires a version of Python between 3.9 and 3.11 (included). If your Python version is older or more recent, consider using `conda` to create an environment as described below.
|
|
176
|
+
|
|
177
|
+
With the proper Python version, Celldetective can be directly installed with `pip`:
|
|
175
178
|
|
|
176
179
|
``` bash
|
|
177
180
|
pip install celldetective
|
|
178
181
|
```
|
|
179
182
|
|
|
180
|
-
We recommend that you create an environment to use Celldetective, *e.g.*
|
|
183
|
+
We recommend that you create an environment to use Celldetective, to protect your package versions and fix the Python version *e.g.*
|
|
181
184
|
with `conda`:
|
|
182
185
|
|
|
183
186
|
``` bash
|
|
184
|
-
conda create -n celldetective python=3.
|
|
187
|
+
conda create -n celldetective python=3.11 pyqt
|
|
185
188
|
conda activate celldetective
|
|
186
189
|
pip install celldetective
|
|
187
190
|
```
|
|
@@ -207,6 +210,10 @@ will be immediately available in the python environment:
|
|
|
207
210
|
git clone git://github.com/remyeltorro/celldetective.git
|
|
208
211
|
cd celldetective
|
|
209
212
|
|
|
213
|
+
# optional: create an environment
|
|
214
|
+
conda create -n celldetective python=3.11 pyqt
|
|
215
|
+
conda activate celldetective
|
|
216
|
+
|
|
210
217
|
# install the celldetective package in editable/development mode
|
|
211
218
|
pip install -r requirements.txt
|
|
212
219
|
pip install -e .
|
|
@@ -229,10 +236,10 @@ with package requirements for other projects. Run the following lines to
|
|
|
229
236
|
create an environment named \"celldetective\":
|
|
230
237
|
|
|
231
238
|
``` bash
|
|
232
|
-
conda create -n celldetective python=3.
|
|
239
|
+
conda create -n celldetective python=3.11 pyqt
|
|
233
240
|
conda activate celldetective
|
|
234
241
|
pip install -r requirements.txt
|
|
235
|
-
pip install .
|
|
242
|
+
pip install -e .
|
|
236
243
|
```
|
|
237
244
|
|
|
238
245
|
The installation of the dependencies will take a few minutes (up to half
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
celldetective/__init__.py,sha256=PH25g2_AZt7N5Jg1KB3YT9wFvfMr9lIb2WxYzmDqlX4,105
|
|
2
|
+
celldetective/__main__.py,sha256=Ua_3mAlW5Y53ih3rkZrAeYfvOc8-Xz6sZosyUCFtTZI,14842
|
|
3
|
+
celldetective/events.py,sha256=D07LyzBerq4QkXKRhMj0ZChzNkqBrW45E9TgBtEa3tk,4735
|
|
4
|
+
celldetective/extra_properties.py,sha256=8DkxTvVs7gASsnnGurVZ3_zt6uR0pvvJhBKO2LC6hGk,5118
|
|
5
|
+
celldetective/filters.py,sha256=b0qKwHor1fvNA_dHovP17nQz8EsW5YlyhT2TJnayn08,3615
|
|
6
|
+
celldetective/io.py,sha256=ZenCko4gdyJE0hwdTb2DWEXhUJRoF5FwAcpgZRdZtAo,85024
|
|
7
|
+
celldetective/measure.py,sha256=7bfCUdLfJbGmFWWwhu_C9-l1buj_-We7izBaFWTe4ok,54910
|
|
8
|
+
celldetective/neighborhood.py,sha256=GjF_fTmtcU8jq5XZT-DnDSp28VDTrsaHjIGJG7W2Ppk,52799
|
|
9
|
+
celldetective/preprocessing.py,sha256=iV5or20s8XPJXQZDsWzis7OBaqzPDyAo_cwcDVDuX5A,38188
|
|
10
|
+
celldetective/relative_measurements.py,sha256=qPHC6gtUaICNGKh6Qfh8y6NA4OUJauGcaj9_TUbrswg,24998
|
|
11
|
+
celldetective/segmentation.py,sha256=H_6BH_RKaG6injUPZ3gQzQ112pMyzQ33u5GEpLE9dsQ,30426
|
|
12
|
+
celldetective/signals.py,sha256=485axzJwE3xsSsN4AmBQlZ2at7uWu9QRg0XrUHvLBUE,120552
|
|
13
|
+
celldetective/tracking.py,sha256=HGeOtfQ-nmpaea9_Q-sq2WcwZfdPXRH028JyFlt6eUs,37901
|
|
14
|
+
celldetective/utils.py,sha256=UkRHPHWZixj8HOI8pc79jgsRjWvpCkF-2lfJ9JfddgA,86311
|
|
15
|
+
celldetective/datasets/segmentation_annotations/blank,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
16
|
+
celldetective/datasets/signal_annotations/blank,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
17
|
+
celldetective/gui/__init__.py,sha256=2_r2xfOj4_2xj0yBkCTIfzlF94AHKm-j6Pvpd7DddQc,989
|
|
18
|
+
celldetective/gui/about.py,sha256=fed6nh-WwKy6bEbavy6L62P0CQB8VsOO0PajOjHsnFk,1694
|
|
19
|
+
celldetective/gui/analyze_block.py,sha256=sat8RECEeZxlaconZZIxI0IrIjwJo121PcBXqJmA1-o,24756
|
|
20
|
+
celldetective/gui/btrack_options.py,sha256=OrvbG5coZhLRk5jtXiLFJu34z1hWHN9kHkBiZ7XMZoI,39269
|
|
21
|
+
celldetective/gui/classifier_widget.py,sha256=hyonoHikEkqEsxtE1PZ6cFAn72KcxfSIp8H8PlFPL1c,15822
|
|
22
|
+
celldetective/gui/configure_new_exp.py,sha256=Eyr-M4FH-4xrUJbIGNdKXAtXb_ULr8lCol26JSzXEww,20125
|
|
23
|
+
celldetective/gui/control_panel.py,sha256=vU6dfjiO2nmDiY-qF2xCzcwDih6M87ItYTJOeOP51c8,19006
|
|
24
|
+
celldetective/gui/generic_signal_plot.py,sha256=OzlFr2RxspkyxW1YIhl_c3q63RXAngMPouYPhEtk0S0,29509
|
|
25
|
+
celldetective/gui/gui_utils.py,sha256=snYUefDEFpIP8RlsNG4QhfI0rLiVE9_t1E8Q7dMIj4k,27747
|
|
26
|
+
celldetective/gui/json_readers.py,sha256=Su3angSobroeGrrumGgQcs3Cr_9l9p52-Hfm3qneVcI,3664
|
|
27
|
+
celldetective/gui/layouts.py,sha256=feeAYh7I21ZgH-x4I7lg2DAvz5PBm71D7MovCrtb9QE,47325
|
|
28
|
+
celldetective/gui/measurement_options.py,sha256=fDm8mlak8o9jC8OHhmou9kAmrVY8fCZ8ZKZ0bimhuPo,47133
|
|
29
|
+
celldetective/gui/neighborhood_options.py,sha256=BvWwsIX1KWogUgHWRZptqY3ZRmH1aj7r8tiLmbRFhW4,19783
|
|
30
|
+
celldetective/gui/plot_measurements.py,sha256=SBFkY3542hW4H_vllOCMxMOgBz09KUE2FLhhgI8avXk,51024
|
|
31
|
+
celldetective/gui/plot_signals_ui.py,sha256=dQINAOyOmAOHMfmjfCsx1hJ7HGeCgNCq8kESuADbQqo,15864
|
|
32
|
+
celldetective/gui/process_block.py,sha256=PdgKKEfr-GFad3P1y0n9LB_OaIBvuBuaQdBRtzRNhDg,72245
|
|
33
|
+
celldetective/gui/retrain_segmentation_model_options.py,sha256=eGGrimwmNfJXRPRpZ6NZ74TWx6TK70HoNRHnJl1_8XQ,22292
|
|
34
|
+
celldetective/gui/retrain_signal_model_options.py,sha256=XigNdGlNu3KWB_MYBcKQhfXjcWwVZNMmu0qmxNoo14E,21919
|
|
35
|
+
celldetective/gui/seg_model_loader.py,sha256=vWvPMU6nkTiQfI-x2WjQHrdJGFdV4a4Ne-4YIOq_YZ8,18153
|
|
36
|
+
celldetective/gui/signal_annotator.py,sha256=5Ho7o6lze3BWUbCKJ-53Jh4S46QlTmUq237FAAOfECA,87069
|
|
37
|
+
celldetective/gui/signal_annotator2.py,sha256=Y43JSCg3bO_QL7zsqdeQ-FY8TNq_5WiV1cHO-knK0QE,109375
|
|
38
|
+
celldetective/gui/signal_annotator_options.py,sha256=ztFFgA70SJ0QkntxYGsgDNCvSuSR5GjF7_J6pYVYc1g,11020
|
|
39
|
+
celldetective/gui/styles.py,sha256=fup0_U1Zk0IJAjyruHde_r-X7d7cTMcrpPLPl-HuKAM,4820
|
|
40
|
+
celldetective/gui/survival_ui.py,sha256=tzvtI0eC0bgd7Lfm20HqU7rfCJ60gy9a_Sc9cZLSKhs,9439
|
|
41
|
+
celldetective/gui/tableUI.py,sha256=9yJ4CjeNAQoYdHXfsVvD0qr_IdYWuQwIBhvfU3QoNtc,40602
|
|
42
|
+
celldetective/gui/thresholds_gui.py,sha256=t1hTDdaJTJWHBt9vtRCE4B1TsVHhobQwCpKfntVgaQI,50510
|
|
43
|
+
celldetective/gui/viewers.py,sha256=mCyE9DaUX2rGq65oYEwyEfNtEUPrHdoFNg2MRp1kXs4,27701
|
|
44
|
+
celldetective/icons/logo-large.png,sha256=FXSwV3u6zEKcfpuSn4unnqB0oUnN9cHqQ9BCKWytrpg,36631
|
|
45
|
+
celldetective/icons/logo.png,sha256=wV2OS8_dU5Td5cgdPbCOU3JpMpTwNuYLnfVcnQX0tJA,2437
|
|
46
|
+
celldetective/icons/signals_icon.png,sha256=vEiKoqWTtN0-uJgVqtAlwCuP-f4QeWYOlO3sdp2tg2w,3969
|
|
47
|
+
celldetective/icons/splash-test.png,sha256=W9smcuuwJUF9DU-rz4aACx7_rCmGRsxYUGPBDlDnrJk,17523
|
|
48
|
+
celldetective/icons/splash.png,sha256=J_1jPJylxwHGzGF1xCGocc-BmylHtHTII9VJSLKnezY,17895
|
|
49
|
+
celldetective/icons/splash0.png,sha256=qVXsrYUinm5g6-vbHcqwyjh8SIqs9lEqPWnPa1WijaQ,14233
|
|
50
|
+
celldetective/icons/survival2.png,sha256=8zsualD7d9VPAecoFA4Om9TFARErqpJzMg6U7XANXf4,4479
|
|
51
|
+
celldetective/icons/vignette_signals2.png,sha256=hsVOdQDpEfMGM45aaSeacEm3lvxbquRKKYutiS9qoS0,20743
|
|
52
|
+
celldetective/icons/vignette_signals2.svg,sha256=muGNcQudV1jG-bmFd9FwV-Wb8PcrRV5osdZ7pHR7Ekk,5947
|
|
53
|
+
celldetective/links/zenodo.json,sha256=7WKRuZY7MHTR-IChWBbU0i47H_479NtlxsCGaJn9-xM,22728
|
|
54
|
+
celldetective/models/pair_signal_detection/blank,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
55
|
+
celldetective/models/segmentation_effectors/blank,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
56
|
+
celldetective/models/segmentation_effectors/primNK_cfse/config_input.json,sha256=gwEGP5wc6iVcwLrR5IbEb-9lTbdQuPyLLFYXh00374U,509
|
|
57
|
+
celldetective/models/segmentation_effectors/primNK_cfse/cp-cfse-transfer,sha256=ps4BAzGxr2i2R0uBGJqfF9wjg5bIeSeBGQb0YcUChhY,26559970
|
|
58
|
+
celldetective/models/segmentation_effectors/primNK_cfse/training_instructions.json,sha256=DqEO4_oQuQmJkZiefREXz8ts60svoqxIQB-LMScuCnc,909
|
|
59
|
+
celldetective/models/segmentation_effectors/ricm-bimodal/config_input.json,sha256=4KUHF-DAHcJgJf9wiGEd880qxRMRKCkiFjDi0PE7Dvg,10579
|
|
60
|
+
celldetective/models/segmentation_effectors/ricm-bimodal/ricm-bimodal,sha256=xmTtQVIlrqLMitjS8WKhnVxcUFuJDbvmn0TghUMM6pE,26559153
|
|
61
|
+
celldetective/models/segmentation_effectors/ricm-bimodal/training_instructions.json,sha256=yIz0oMDX2lTCjwMO0PlRp_7B_RD9O9aMQizd-6SAQEc,831
|
|
62
|
+
celldetective/models/segmentation_generic/blank,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
63
|
+
celldetective/models/segmentation_targets/blank,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
64
|
+
celldetective/models/signal_detection/blank,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
65
|
+
celldetective/models/tracking_configs/mcf7.json,sha256=iDjb8i6yxs0GleW39dvY3Ld5bZJatlXJrwI8PG3vCT0,1780
|
|
66
|
+
celldetective/models/tracking_configs/ricm.json,sha256=L-vmwCR1f89U-qnH2Ms0cBfPFR_dxIWoe2ccH8V-QBA,2727
|
|
67
|
+
celldetective/models/tracking_configs/ricm2.json,sha256=DDjJ6ScYcDWvlsy7ujPID8v8H28vcNcMuZmNR8XmGxo,2718
|
|
68
|
+
celldetective/scripts/analyze_signals.py,sha256=YE05wZujl2hQFWkvqATBcCx-cAd_V3RxnvKoh0SB7To,2194
|
|
69
|
+
celldetective/scripts/measure_cells.py,sha256=L9TRc8B1_Y1jco29fWm4MVNicTFQNVeA_4Vbu3o_H1o,11735
|
|
70
|
+
celldetective/scripts/measure_relative.py,sha256=L_NjIUfHSGupkAKLZkubBHJdZh0ugPhCTJem80b0zMM,4261
|
|
71
|
+
celldetective/scripts/segment_cells.py,sha256=bnNacgp_6qpb1fvwPizxVctsUNiFBegKalo-PSpXPEU,8262
|
|
72
|
+
celldetective/scripts/segment_cells_thresholds.py,sha256=6ERg-hxdHMSgXPQSBPtYt2lccTlkz9ZLktYgb57Avmw,5168
|
|
73
|
+
celldetective/scripts/track_cells.py,sha256=ezNpenAYBz010iMZNRIk0qwGAceiXRLvY7ZxoQcT2IM,8052
|
|
74
|
+
celldetective/scripts/train_segmentation_model.py,sha256=XExaGg8kkdirgN206J0mwiWtqeRE076-Ld2b89tReAI,9229
|
|
75
|
+
celldetective/scripts/train_signal_model.py,sha256=D643wKVYg-LWHF2VU9FWKSuazXrpCpQK0YjGqoIimD0,3167
|
|
76
|
+
tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
77
|
+
tests/test_events.py,sha256=eLFwwEEJfQAdwhews3-fn1HSvzozcNNFN_Qn0gOvQkE,685
|
|
78
|
+
tests/test_filters.py,sha256=iJksl_HgquqGzPPv46qpNtlD4rkBpZ5eVtIotgZ7LDs,656
|
|
79
|
+
tests/test_io.py,sha256=gk5FmoI7ANEczUtNXYRxc48KzkfYzemwS_eYaLq4_NI,2093
|
|
80
|
+
tests/test_measure.py,sha256=FEUAs1rVHylvIvubCb0bJDNGZLVmkgXNgI3NaGQ1dA8,4542
|
|
81
|
+
tests/test_neighborhood.py,sha256=gk5FmoI7ANEczUtNXYRxc48KzkfYzemwS_eYaLq4_NI,2093
|
|
82
|
+
tests/test_preprocessing.py,sha256=FI-Wk-kc4wWmOQg_NLCUIZC1oti396wr5cC-BauBai0,1436
|
|
83
|
+
tests/test_segmentation.py,sha256=_HB8CCq-Ci6amf0xAmDIUuwtBUU_EGpgqLvcvSHrGug,3427
|
|
84
|
+
tests/test_signals.py,sha256=No4cah6KxplhDcKXnU8RrA7eDla4hWw6ccf7xGnBokU,3599
|
|
85
|
+
tests/test_tracking.py,sha256=8hebWSqEIuttD1ABn-6dKCT7EXKRR7-4RwyFWi1WPFo,8800
|
|
86
|
+
tests/test_utils.py,sha256=NKRCAC1d89aBK5cWjTb7-pInYow901RrT-uBlIdz4KI,3692
|
|
87
|
+
celldetective-1.2.2.dist-info/LICENSE,sha256=OXLcl0T2SZ8Pmy2_dmlvKuetivmyPd5m1q-Gyd-zaYY,35149
|
|
88
|
+
celldetective-1.2.2.dist-info/METADATA,sha256=yBHxQ0wF0j9HE_EVb39sby8wF4-AflSJ79UzC8TIYtE,12833
|
|
89
|
+
celldetective-1.2.2.dist-info/WHEEL,sha256=GV9aMThwP_4oNCtvEC2ec3qUYutgWeAzklro_0m4WJQ,91
|
|
90
|
+
celldetective-1.2.2.dist-info/entry_points.txt,sha256=2NU6_EOByvPxqBbCvjwxlVlvnQreqZ3BKRCVIKEv3dg,62
|
|
91
|
+
celldetective-1.2.2.dist-info/top_level.txt,sha256=6rsIKKfGMKgud7HPuATcpq6EhdXwcg_yknBVWn9x4C4,20
|
|
92
|
+
celldetective-1.2.2.dist-info/RECORD,,
|
|
@@ -1,91 +0,0 @@
|
|
|
1
|
-
celldetective/__init__.py,sha256=PH25g2_AZt7N5Jg1KB3YT9wFvfMr9lIb2WxYzmDqlX4,105
|
|
2
|
-
celldetective/__main__.py,sha256=TQzL_FLAeEF1YIyRZXMiai40xXy21roPPV23ig4jwG0,14494
|
|
3
|
-
celldetective/events.py,sha256=s2pWnR3Z1fcB15sET5WsF2Pi6v6qv16hks_m3WiklNs,3658
|
|
4
|
-
celldetective/extra_properties.py,sha256=8DkxTvVs7gASsnnGurVZ3_zt6uR0pvvJhBKO2LC6hGk,5118
|
|
5
|
-
celldetective/filters.py,sha256=b0qKwHor1fvNA_dHovP17nQz8EsW5YlyhT2TJnayn08,3615
|
|
6
|
-
celldetective/io.py,sha256=28rN_spEv-kV3teTxCdz4qUygcbAs7S6wJ24wumwreU,86023
|
|
7
|
-
celldetective/measure.py,sha256=kTKoGeCEYvACOf-pg11NPfyByogBMIC91lIZA-qZk1E,41344
|
|
8
|
-
celldetective/neighborhood.py,sha256=u8VfR1Olo20zVcB0y2hzjZOCfXV1u2C5SDJTlWJ2J64,53042
|
|
9
|
-
celldetective/preprocessing.py,sha256=TKOJTc5o4rSgXqtYeZz-0ox062dD494VMiie3L-9aV4,38305
|
|
10
|
-
celldetective/relative_measurements.py,sha256=WRTUewDZ7JKSjPZUZVQ5hUusevAYsFGHjkzCZ3yKHzg,25056
|
|
11
|
-
celldetective/segmentation.py,sha256=L2VJKmOewC1CNZPiWCO6yUfxt78u9k1NHPr2qTyTaBM,30458
|
|
12
|
-
celldetective/signals.py,sha256=ec955qS7DfjePXeynNXCI6RQz0zpi3818-CBTwcDFDI,120428
|
|
13
|
-
celldetective/tracking.py,sha256=k5CtlLqH8WjTwAu7ELwBd9VUuiVPjaNxL5h07KKgjEQ,37860
|
|
14
|
-
celldetective/utils.py,sha256=CqGgzcSdVl0V11v3tSrlXsDbWP2x4JbPM9LzRLNvU9w,85157
|
|
15
|
-
celldetective/datasets/segmentation_annotations/blank,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
16
|
-
celldetective/datasets/signal_annotations/blank,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
17
|
-
celldetective/gui/__init__.py,sha256=2_r2xfOj4_2xj0yBkCTIfzlF94AHKm-j6Pvpd7DddQc,989
|
|
18
|
-
celldetective/gui/about.py,sha256=i-y54Opb10pKTVNUEcJC-D6Cbiqud2EJ3ZLayXqhdqc,1715
|
|
19
|
-
celldetective/gui/analyze_block.py,sha256=vF3ORldZBZHnXUHCj4PeI6KXJ3skY0qV28LxuazGdmk,25429
|
|
20
|
-
celldetective/gui/btrack_options.py,sha256=eQEf63yTUsPCN-d1LqgAMmUQpfv2FH85FqnOSaR-9Q8,35575
|
|
21
|
-
celldetective/gui/classifier_widget.py,sha256=yS0yqCH_i8eJNDraoTNPjjJJu9wFYJbpr0FXCJJAnfU,17566
|
|
22
|
-
celldetective/gui/configure_new_exp.py,sha256=ANJ-Zn4sjBphtj_aoJu6m1PFEKyv9gxeh9XqS6xOGjk,18969
|
|
23
|
-
celldetective/gui/control_panel.py,sha256=LNWixLPyR3wHb-fq-RWdRir-E1R3eLkxi3uBTDsm0WM,19845
|
|
24
|
-
celldetective/gui/gui_utils.py,sha256=PidFfdc8XASeIzZO5pfKgwqe4vROG7-KpYMcBZ42jdw,22673
|
|
25
|
-
celldetective/gui/json_readers.py,sha256=fTrNrlxv9NCae8ZJexBEHxI3yCLRqt6F0Yo1OeDycfA,3686
|
|
26
|
-
celldetective/gui/layouts.py,sha256=Qrs_5ugNaLWy6l72zzPegrV8idfNWEnNNA2ltH1DC_M,37768
|
|
27
|
-
celldetective/gui/measurement_options.py,sha256=i0CdAfupHJAqhOT7RsufEK919sAzQnFBkQO4IAMYZL0,47704
|
|
28
|
-
celldetective/gui/neighborhood_options.py,sha256=cWCu3dP0jdC6RHOrotTeH8E07F2mJyzQZQYN374g_z4,20550
|
|
29
|
-
celldetective/gui/plot_measurements.py,sha256=xUoGxV6uXcen-t4yWtAmcGTUayICI-FxTVKPrWMNlfg,51799
|
|
30
|
-
celldetective/gui/plot_signals_ui.py,sha256=96iMud47aDGErVht_kQdUS9f0uQAIYeAg3OaGk4XBVw,44551
|
|
31
|
-
celldetective/gui/process_block.py,sha256=oT0bmZqqOjSZvdthqBKoy9MejButRrqdmZQRnUWfJy8,67366
|
|
32
|
-
celldetective/gui/retrain_segmentation_model_options.py,sha256=8mZpW5fb5ts6HjKPzRpG0_tIOQgtsQth_h7ruLdKVss,22954
|
|
33
|
-
celldetective/gui/retrain_signal_model_options.py,sha256=6OqiulBk4Rn709jyENl5rHKpOHJoUsEzslxSxhRugHw,22478
|
|
34
|
-
celldetective/gui/seg_model_loader.py,sha256=uKp8oab-4QdTGqb-tb6bOD-FLD_154GOvgWFYz97BwY,17350
|
|
35
|
-
celldetective/gui/signal_annotator.py,sha256=ArcLcFBH-FZaTqGVSGhir4f-UIor7POot9_Ht-oWRxk,87539
|
|
36
|
-
celldetective/gui/signal_annotator2.py,sha256=pO8kIJqvpueOGRWfqFks9bub0CtuxHfTl794Wj_VYw8,109622
|
|
37
|
-
celldetective/gui/signal_annotator_options.py,sha256=ztFFgA70SJ0QkntxYGsgDNCvSuSR5GjF7_J6pYVYc1g,11020
|
|
38
|
-
celldetective/gui/styles.py,sha256=Vw4wr6MQ4iBwhOY-ZWAxFDZZ3CNohmEnuPPazwhJaho,4129
|
|
39
|
-
celldetective/gui/survival_ui.py,sha256=sWY5rsxLaNHgfUCB0fphBM2c8J4LLY9q5cdSxF1aq1Q,33792
|
|
40
|
-
celldetective/gui/tableUI.py,sha256=Tgq7fr1eSuVpGbuUlg0qTp3rFXP_zNGdbMZGI3Yq3kI,40636
|
|
41
|
-
celldetective/gui/thresholds_gui.py,sha256=b8SkG4DlfxBRjacKTe1NSNkq7rJm8lnSLifH-mg846k,49529
|
|
42
|
-
celldetective/gui/viewers.py,sha256=buBholjAieaVVb6YinVhxPshEHxBEU3er_N0UrkwAew,27734
|
|
43
|
-
celldetective/icons/logo-large.png,sha256=FXSwV3u6zEKcfpuSn4unnqB0oUnN9cHqQ9BCKWytrpg,36631
|
|
44
|
-
celldetective/icons/logo.png,sha256=wV2OS8_dU5Td5cgdPbCOU3JpMpTwNuYLnfVcnQX0tJA,2437
|
|
45
|
-
celldetective/icons/signals_icon.png,sha256=vEiKoqWTtN0-uJgVqtAlwCuP-f4QeWYOlO3sdp2tg2w,3969
|
|
46
|
-
celldetective/icons/splash-test.png,sha256=W9smcuuwJUF9DU-rz4aACx7_rCmGRsxYUGPBDlDnrJk,17523
|
|
47
|
-
celldetective/icons/splash.png,sha256=J_1jPJylxwHGzGF1xCGocc-BmylHtHTII9VJSLKnezY,17895
|
|
48
|
-
celldetective/icons/splash0.png,sha256=qVXsrYUinm5g6-vbHcqwyjh8SIqs9lEqPWnPa1WijaQ,14233
|
|
49
|
-
celldetective/icons/survival2.png,sha256=8zsualD7d9VPAecoFA4Om9TFARErqpJzMg6U7XANXf4,4479
|
|
50
|
-
celldetective/icons/vignette_signals2.png,sha256=hsVOdQDpEfMGM45aaSeacEm3lvxbquRKKYutiS9qoS0,20743
|
|
51
|
-
celldetective/icons/vignette_signals2.svg,sha256=muGNcQudV1jG-bmFd9FwV-Wb8PcrRV5osdZ7pHR7Ekk,5947
|
|
52
|
-
celldetective/links/zenodo.json,sha256=7WKRuZY7MHTR-IChWBbU0i47H_479NtlxsCGaJn9-xM,22728
|
|
53
|
-
celldetective/models/pair_signal_detection/blank,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
54
|
-
celldetective/models/segmentation_effectors/blank,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
55
|
-
celldetective/models/segmentation_effectors/primNK_cfse/config_input.json,sha256=gwEGP5wc6iVcwLrR5IbEb-9lTbdQuPyLLFYXh00374U,509
|
|
56
|
-
celldetective/models/segmentation_effectors/primNK_cfse/cp-cfse-transfer,sha256=ps4BAzGxr2i2R0uBGJqfF9wjg5bIeSeBGQb0YcUChhY,26559970
|
|
57
|
-
celldetective/models/segmentation_effectors/primNK_cfse/training_instructions.json,sha256=DqEO4_oQuQmJkZiefREXz8ts60svoqxIQB-LMScuCnc,909
|
|
58
|
-
celldetective/models/segmentation_effectors/ricm-bimodal/config_input.json,sha256=4KUHF-DAHcJgJf9wiGEd880qxRMRKCkiFjDi0PE7Dvg,10579
|
|
59
|
-
celldetective/models/segmentation_effectors/ricm-bimodal/ricm-bimodal,sha256=xmTtQVIlrqLMitjS8WKhnVxcUFuJDbvmn0TghUMM6pE,26559153
|
|
60
|
-
celldetective/models/segmentation_effectors/ricm-bimodal/training_instructions.json,sha256=yIz0oMDX2lTCjwMO0PlRp_7B_RD9O9aMQizd-6SAQEc,831
|
|
61
|
-
celldetective/models/segmentation_generic/blank,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
62
|
-
celldetective/models/segmentation_targets/blank,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
63
|
-
celldetective/models/signal_detection/blank,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
64
|
-
celldetective/models/tracking_configs/mcf7.json,sha256=iDjb8i6yxs0GleW39dvY3Ld5bZJatlXJrwI8PG3vCT0,1780
|
|
65
|
-
celldetective/models/tracking_configs/ricm.json,sha256=L-vmwCR1f89U-qnH2Ms0cBfPFR_dxIWoe2ccH8V-QBA,2727
|
|
66
|
-
celldetective/models/tracking_configs/ricm2.json,sha256=DDjJ6ScYcDWvlsy7ujPID8v8H28vcNcMuZmNR8XmGxo,2718
|
|
67
|
-
celldetective/scripts/analyze_signals.py,sha256=c_vdd6Z0yAcuNAQJioVH5k6WmOnQBuvRqdWkn6fnCjg,2204
|
|
68
|
-
celldetective/scripts/measure_cells.py,sha256=ex9fOcc8CP7RTVBbSyNHX5yHozhhl1XhTmHJXvtIr1Y,11870
|
|
69
|
-
celldetective/scripts/measure_relative.py,sha256=lGW3zxtXcr4jEPMMkhLbc--OE6vE5GGlLnxa9ma7yfY,4296
|
|
70
|
-
celldetective/scripts/segment_cells.py,sha256=YtTVPjaaLuIqBaV3hlpa__fMeDB3trTPOFJRfEl0jQs,8231
|
|
71
|
-
celldetective/scripts/segment_cells_thresholds.py,sha256=GbWXa6xoO8s4PinJPZIxAuosw4vpzyJ7FiFYpSURojk,4998
|
|
72
|
-
celldetective/scripts/track_cells.py,sha256=qATUotwsFrINe_uBMGlcCZbFU0iT1J9K8bEZ3TVouIg,8173
|
|
73
|
-
celldetective/scripts/train_segmentation_model.py,sha256=Fm-46uhn5zd_1iwRiunBq_ziqiO4Fv-bzS5OgS0B_2c,9284
|
|
74
|
-
celldetective/scripts/train_signal_model.py,sha256=LNLIViFEMzyDZvbdfU2L1p90uu2Bha5FLH2qCKSX424,3234
|
|
75
|
-
tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
76
|
-
tests/test_events.py,sha256=eLFwwEEJfQAdwhews3-fn1HSvzozcNNFN_Qn0gOvQkE,685
|
|
77
|
-
tests/test_filters.py,sha256=iJksl_HgquqGzPPv46qpNtlD4rkBpZ5eVtIotgZ7LDs,656
|
|
78
|
-
tests/test_io.py,sha256=gk5FmoI7ANEczUtNXYRxc48KzkfYzemwS_eYaLq4_NI,2093
|
|
79
|
-
tests/test_measure.py,sha256=FEUAs1rVHylvIvubCb0bJDNGZLVmkgXNgI3NaGQ1dA8,4542
|
|
80
|
-
tests/test_neighborhood.py,sha256=gk5FmoI7ANEczUtNXYRxc48KzkfYzemwS_eYaLq4_NI,2093
|
|
81
|
-
tests/test_preprocessing.py,sha256=FI-Wk-kc4wWmOQg_NLCUIZC1oti396wr5cC-BauBai0,1436
|
|
82
|
-
tests/test_segmentation.py,sha256=_HB8CCq-Ci6amf0xAmDIUuwtBUU_EGpgqLvcvSHrGug,3427
|
|
83
|
-
tests/test_signals.py,sha256=No4cah6KxplhDcKXnU8RrA7eDla4hWw6ccf7xGnBokU,3599
|
|
84
|
-
tests/test_tracking.py,sha256=8hebWSqEIuttD1ABn-6dKCT7EXKRR7-4RwyFWi1WPFo,8800
|
|
85
|
-
tests/test_utils.py,sha256=NKRCAC1d89aBK5cWjTb7-pInYow901RrT-uBlIdz4KI,3692
|
|
86
|
-
celldetective-1.2.1.dist-info/LICENSE,sha256=OXLcl0T2SZ8Pmy2_dmlvKuetivmyPd5m1q-Gyd-zaYY,35149
|
|
87
|
-
celldetective-1.2.1.dist-info/METADATA,sha256=cjQ13u8SwSQ5ayCkYTkj_TbXTPpqky7HB1eMdx37KIA,12405
|
|
88
|
-
celldetective-1.2.1.dist-info/WHEEL,sha256=Mdi9PDNwEZptOjTlUcAth7XJDFtKrHYaQMPulZeBCiQ,91
|
|
89
|
-
celldetective-1.2.1.dist-info/entry_points.txt,sha256=2NU6_EOByvPxqBbCvjwxlVlvnQreqZ3BKRCVIKEv3dg,62
|
|
90
|
-
celldetective-1.2.1.dist-info/top_level.txt,sha256=6rsIKKfGMKgud7HPuATcpq6EhdXwcg_yknBVWn9x4C4,20
|
|
91
|
-
celldetective-1.2.1.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|