cell-data-loader 0.0.3__tar.gz → 0.0.4__tar.gz

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.
@@ -0,0 +1,491 @@
1
+ data/3368914_4_non_tumor filter=lfs diff=lfs merge=lfs -text
2
+ data/4173633_5 filter=lfs diff=lfs merge=lfs -text
3
+ data/H6-13_Mars1+dapi filter=lfs diff=lfs merge=lfs -text
4
+ data filter=lfs diff=lfs merge=lfs -text
5
+ data/4173633_5/4173633_5.svs filter=lfs diff=lfs merge=lfs -text
6
+ data/H6-13_Mars1+dapi/Snap-15313.czi filter=lfs diff=lfs merge=lfs -text
7
+ data/H6-13_Mars1+dapi/Snap-15315.czi filter=lfs diff=lfs merge=lfs -text
8
+ data/H6-13_Mars1+dapi/Snap-15317.czi filter=lfs diff=lfs merge=lfs -text
9
+ data/3368914_4_non_tumor/ny=45056_nx=35840.jpg filter=lfs diff=lfs merge=lfs -text
10
+ data/4173633_5/1,[[:space:]]contrast[[:space:]]check filter=lfs diff=lfs merge=lfs -text
11
+ data/H6-13_Mars1+dapi/Snap-15310.czi filter=lfs diff=lfs merge=lfs -text
12
+ data/H6-13_Mars1+dapi/Snap-15311.czi filter=lfs diff=lfs merge=lfs -text
13
+ data/H6-13_Mars1+dapi/Snap-15314.czi filter=lfs diff=lfs merge=lfs -text
14
+ data/H6-13_Mars1+dapi/Snap-15316.czi filter=lfs diff=lfs merge=lfs -text
15
+ data/H6-13_Mars1+dapi/Snap-15319.czi filter=lfs diff=lfs merge=lfs -text
16
+ data/H6-13_Mars1+dapi/tiff filter=lfs diff=lfs merge=lfs -text
17
+ data/4173633_5/back filter=lfs diff=lfs merge=lfs -text
18
+ data/4173633_5/tumor filter=lfs diff=lfs merge=lfs -text
19
+ data/H6-13_Mars1+dapi/Snap-15312.czi filter=lfs diff=lfs merge=lfs -text
20
+ data/H6-13_Mars1+dapi/Snap-15318.czi filter=lfs diff=lfs merge=lfs -text
21
+ data/4173633_5/non[[:space:]]tumor filter=lfs diff=lfs merge=lfs -text
22
+ data/H6-13_Mars1+dapi/Snap-15309.czi filter=lfs diff=lfs merge=lfs -text
23
+ data/4173633_5/back/ny=10752_nx=17920.jpg filter=lfs diff=lfs merge=lfs -text
24
+ data/4173633_5/back/ny=10752_nx=22528.jpg filter=lfs diff=lfs merge=lfs -text
25
+ data/4173633_5/back/ny=12288_nx=26624.jpg filter=lfs diff=lfs merge=lfs -text
26
+ data/4173633_5/back/ny=14336_nx=22528.jpg filter=lfs diff=lfs merge=lfs -text
27
+ data/4173633_5/back/ny=15872_nx=23040.jpg filter=lfs diff=lfs merge=lfs -text
28
+ data/4173633_5/back/ny=3584_nx=2048.jpg filter=lfs diff=lfs merge=lfs -text
29
+ data/4173633_5/back/ny=11264_nx=16384.jpg filter=lfs diff=lfs merge=lfs -text
30
+ data/4173633_5/back/ny=13824_nx=23552.jpg filter=lfs diff=lfs merge=lfs -text
31
+ data/4173633_5/back/ny=18432_nx=26112.jpg filter=lfs diff=lfs merge=lfs -text
32
+ data/4173633_5/back/ny=14848_nx=22528.jpg filter=lfs diff=lfs merge=lfs -text
33
+ data/4173633_5/back/ny=16896_nx=23040.jpg filter=lfs diff=lfs merge=lfs -text
34
+ data/4173633_5/back/ny=17408_nx=24064.jpg filter=lfs diff=lfs merge=lfs -text
35
+ data/4173633_5/back/ny=18432_nx=27136.jpg filter=lfs diff=lfs merge=lfs -text
36
+ data/4173633_5/back/ny=9728_nx=20480.jpg filter=lfs diff=lfs merge=lfs -text
37
+ data/4173633_5/tumor/ny=10240_nx=17408.jpg filter=lfs diff=lfs merge=lfs -text
38
+ data/4173633_5/back/ny=13824_nx=27136.jpg filter=lfs diff=lfs merge=lfs -text
39
+ data/4173633_5/back/ny=14336_nx=24576.jpg filter=lfs diff=lfs merge=lfs -text
40
+ data/4173633_5/back/ny=15360_nx=35328.jpg filter=lfs diff=lfs merge=lfs -text
41
+ data/4173633_5/back/ny=17920_nx=26624.jpg filter=lfs diff=lfs merge=lfs -text
42
+ data/4173633_5/back/ny=9216_nx=19456.jpg filter=lfs diff=lfs merge=lfs -text
43
+ data/4173633_5/back/ny=16896_nx=28672.jpg filter=lfs diff=lfs merge=lfs -text
44
+ data/H6-13_Mars1+dapi/tiff/Snap-15318.tif filter=lfs diff=lfs merge=lfs -text
45
+ data/4173633_5/back/ny=11776_nx=19968.jpg filter=lfs diff=lfs merge=lfs -text
46
+ data/4173633_5/back/ny=15872_nx=33792.jpg filter=lfs diff=lfs merge=lfs -text
47
+ data/4173633_5/back/ny=11776_nx=18432.jpg filter=lfs diff=lfs merge=lfs -text
48
+ data/4173633_5/back/ny=14336_nx=19968.jpg filter=lfs diff=lfs merge=lfs -text
49
+ data/4173633_5/back/ny=14848_nx=19968.jpg filter=lfs diff=lfs merge=lfs -text
50
+ data/4173633_5/back/ny=22528_nx=54272.jpg filter=lfs diff=lfs merge=lfs -text
51
+ data/4173633_5/tumor/ny=10240_nx=24576.jpg filter=lfs diff=lfs merge=lfs -text
52
+ data/4173633_5/back/ny=14336_nx=25088.jpg filter=lfs diff=lfs merge=lfs -text
53
+ data/4173633_5/back/ny=14336_nx=32256.jpg filter=lfs diff=lfs merge=lfs -text
54
+ data/4173633_5/back/ny=17408_nx=25088.jpg filter=lfs diff=lfs merge=lfs -text
55
+ data/4173633_5/back/ny=8192_nx=19456.jpg filter=lfs diff=lfs merge=lfs -text
56
+ data/4173633_5/back/ny=17920_nx=26112.jpg filter=lfs diff=lfs merge=lfs -text
57
+ data/4173633_5/tumor/ny=14848_nx=18432.jpg filter=lfs diff=lfs merge=lfs -text
58
+ data/4173633_5/back/ny=12288_nx=16896.jpg filter=lfs diff=lfs merge=lfs -text
59
+ data/4173633_5/back/ny=13824_nx=19968.jpg filter=lfs diff=lfs merge=lfs -text
60
+ data/4173633_5/back/ny=15360_nx=19968.jpg filter=lfs diff=lfs merge=lfs -text
61
+ data/4173633_5/back/ny=16384_nx=25088.jpg filter=lfs diff=lfs merge=lfs -text
62
+ data/4173633_5/back/ny=17408_nx=27136.jpg filter=lfs diff=lfs merge=lfs -text
63
+ data/4173633_5/back/ny=18432_nx=23552.jpg filter=lfs diff=lfs merge=lfs -text
64
+ data/4173633_5/tumor/ny=15872_nx=19456.jpg filter=lfs diff=lfs merge=lfs -text
65
+ data/4173633_5/back/ny=10752_nx=22016.jpg filter=lfs diff=lfs merge=lfs -text
66
+ data/4173633_5/back/ny=14336_nx=20480.jpg filter=lfs diff=lfs merge=lfs -text
67
+ data/4173633_5/back/ny=22016_nx=54272.jpg filter=lfs diff=lfs merge=lfs -text
68
+ data/4173633_5/tumor/ny=11776_nx=16384.jpg filter=lfs diff=lfs merge=lfs -text
69
+ data/4173633_5/back/ny=10240_nx=19456.jpg filter=lfs diff=lfs merge=lfs -text
70
+ data/4173633_5/back/ny=10240_nx=20992.jpg filter=lfs diff=lfs merge=lfs -text
71
+ data/4173633_5/back/ny=18944_nx=21504.jpg filter=lfs diff=lfs merge=lfs -text
72
+ data/4173633_5/tumor/ny=14336_nx=28160.jpg filter=lfs diff=lfs merge=lfs -text
73
+ data/4173633_5/back/ny=1536_nx=56832.jpg filter=lfs diff=lfs merge=lfs -text
74
+ data/4173633_5/back/ny=18944_nx=23040.jpg filter=lfs diff=lfs merge=lfs -text
75
+ data/4173633_5/back/ny=9216_nx=18432.jpg filter=lfs diff=lfs merge=lfs -text
76
+ data/4173633_5/back/ny=12800_nx=13824.jpg filter=lfs diff=lfs merge=lfs -text
77
+ data/4173633_5/back/ny=14848_nx=23040.jpg filter=lfs diff=lfs merge=lfs -text
78
+ data/4173633_5/back/ny=9216_nx=17408.jpg filter=lfs diff=lfs merge=lfs -text
79
+ data/4173633_5/back/ny=11264_nx=15872.jpg filter=lfs diff=lfs merge=lfs -text
80
+ data/4173633_5/back/ny=11776_nx=22016.jpg filter=lfs diff=lfs merge=lfs -text
81
+ data/4173633_5/back/ny=16384_nx=19456.jpg filter=lfs diff=lfs merge=lfs -text
82
+ data/4173633_5/back/ny=9728_nx=24064.jpg filter=lfs diff=lfs merge=lfs -text
83
+ data/4173633_5/back/ny=18432_nx=26624.jpg filter=lfs diff=lfs merge=lfs -text
84
+ data/4173633_5/back/ny=10752_nx=16896.jpg filter=lfs diff=lfs merge=lfs -text
85
+ data/4173633_5/back/ny=14848_nx=24064.jpg filter=lfs diff=lfs merge=lfs -text
86
+ data/4173633_5/back/ny=22016_nx=53760.jpg filter=lfs diff=lfs merge=lfs -text
87
+ data/4173633_5/back/ny=9216_nx=19968.jpg filter=lfs diff=lfs merge=lfs -text
88
+ data/4173633_5/back/ny=13824_nx=20480.jpg filter=lfs diff=lfs merge=lfs -text
89
+ data/4173633_5/back/ny=15360_nx=19456.jpg filter=lfs diff=lfs merge=lfs -text
90
+ data/4173633_5/back/ny=19968_nx=55296.jpg filter=lfs diff=lfs merge=lfs -text
91
+ data/4173633_5/back/ny=9728_nx=20992.jpg filter=lfs diff=lfs merge=lfs -text
92
+ data/4173633_5/back/ny=10752_nx=20992.jpg filter=lfs diff=lfs merge=lfs -text
93
+ data/4173633_5/back/ny=11264_nx=19968.jpg filter=lfs diff=lfs merge=lfs -text
94
+ data/4173633_5/back/ny=13824_nx=16896.jpg filter=lfs diff=lfs merge=lfs -text
95
+ data/4173633_5/back/ny=13824_nx=19456.jpg filter=lfs diff=lfs merge=lfs -text
96
+ data/4173633_5/back/ny=17408_nx=23552.jpg filter=lfs diff=lfs merge=lfs -text
97
+ data/4173633_5/back/ny=12800_nx=18432.jpg filter=lfs diff=lfs merge=lfs -text
98
+ data/4173633_5/back/ny=16384_nx=21504.jpg filter=lfs diff=lfs merge=lfs -text
99
+ data/4173633_5/back/ny=17920_nx=27136.jpg filter=lfs diff=lfs merge=lfs -text
100
+ data/4173633_5/back/ny=20992_nx=15360.jpg filter=lfs diff=lfs merge=lfs -text
101
+ data/4173633_5/back/ny=10240_nx=17920.jpg filter=lfs diff=lfs merge=lfs -text
102
+ data/4173633_5/back/ny=10752_nx=25600.jpg filter=lfs diff=lfs merge=lfs -text
103
+ data/4173633_5/back/ny=11776_nx=18944.jpg filter=lfs diff=lfs merge=lfs -text
104
+ data/4173633_5/back/ny=11776_nx=23552.jpg filter=lfs diff=lfs merge=lfs -text
105
+ data/4173633_5/back/ny=11776_nx=25088.jpg filter=lfs diff=lfs merge=lfs -text
106
+ data/4173633_5/back/ny=12800_nx=26112.jpg filter=lfs diff=lfs merge=lfs -text
107
+ data/4173633_5/back/ny=14336_nx=27648.jpg filter=lfs diff=lfs merge=lfs -text
108
+ data/4173633_5/back/ny=23040_nx=51200.jpg filter=lfs diff=lfs merge=lfs -text
109
+ data/4173633_5/back/ny=32768_nx=13824.jpg filter=lfs diff=lfs merge=lfs -text
110
+ data/4173633_5/tumor/ny=18944_nx=23552.jpg filter=lfs diff=lfs merge=lfs -text
111
+ data/4173633_5/back/ny=10752_nx=16384.jpg filter=lfs diff=lfs merge=lfs -text
112
+ data/4173633_5/back/ny=12288_nx=25600.jpg filter=lfs diff=lfs merge=lfs -text
113
+ data/4173633_5/back/ny=14336_nx=31232.jpg filter=lfs diff=lfs merge=lfs -text
114
+ data/4173633_5/back/ny=16384_nx=20480.jpg filter=lfs diff=lfs merge=lfs -text
115
+ data/4173633_5/back/ny=19968_nx=20992.jpg filter=lfs diff=lfs merge=lfs -text
116
+ data/4173633_5/back/ny=28160_nx=18432.jpg filter=lfs diff=lfs merge=lfs -text
117
+ data/4173633_5/back/ny=9728_nx=16896.jpg filter=lfs diff=lfs merge=lfs -text
118
+ data/4173633_5/back/ny=9728_nx=23552.jpg filter=lfs diff=lfs merge=lfs -text
119
+ data/H6-13_Mars1+dapi/tiff/Snap-15311.tif filter=lfs diff=lfs merge=lfs -text
120
+ data/4173633_5/back/ny=13824_nx=22016.jpg filter=lfs diff=lfs merge=lfs -text
121
+ data/4173633_5/back/ny=16896_nx=22016.jpg filter=lfs diff=lfs merge=lfs -text
122
+ data/4173633_5/back/ny=19456_nx=20992.jpg filter=lfs diff=lfs merge=lfs -text
123
+ data/H6-13_Mars1+dapi/tiff/Snap-15319_combine.jpg filter=lfs diff=lfs merge=lfs -text
124
+ data/4173633_5/back/ny=13312_nx=24576.jpg filter=lfs diff=lfs merge=lfs -text
125
+ data/4173633_5/back/ny=15360_nx=20992.jpg filter=lfs diff=lfs merge=lfs -text
126
+ data/4173633_5/back/ny=15872_nx=32256.jpg filter=lfs diff=lfs merge=lfs -text
127
+ data/4173633_5/back/ny=9216_nx=17920.jpg filter=lfs diff=lfs merge=lfs -text
128
+ data/4173633_5/back/ny=16384_nx=20992.jpg filter=lfs diff=lfs merge=lfs -text
129
+ data/4173633_5/back/ny=14336_nx=15360.jpg filter=lfs diff=lfs merge=lfs -text
130
+ data/4173633_5/back/ny=12800_nx=25088.jpg filter=lfs diff=lfs merge=lfs -text
131
+ data/4173633_5/back/ny=14336_nx=31744.jpg filter=lfs diff=lfs merge=lfs -text
132
+ data/4173633_5/back/ny=16896_nx=23552.jpg filter=lfs diff=lfs merge=lfs -text
133
+ data/4173633_5/back/ny=19456_nx=20480.jpg filter=lfs diff=lfs merge=lfs -text
134
+ data/4173633_5/back/ny=20992_nx=55296.jpg filter=lfs diff=lfs merge=lfs -text
135
+ data/4173633_5/back/ny=7680_nx=17920.jpg filter=lfs diff=lfs merge=lfs -text
136
+ data/4173633_5/back/ny=14848_nx=34816.jpg filter=lfs diff=lfs merge=lfs -text
137
+ data/4173633_5/back/ny=17920_nx=20992.jpg filter=lfs diff=lfs merge=lfs -text
138
+ data/4173633_5/back/ny=18944_nx=22528.jpg filter=lfs diff=lfs merge=lfs -text
139
+ data/4173633_5/back/ny=21504_nx=54784.jpg filter=lfs diff=lfs merge=lfs -text
140
+ data/4173633_5/back/ny=11264_nx=23040.jpg filter=lfs diff=lfs merge=lfs -text
141
+ data/4173633_5/back/ny=11776_nx=21504.jpg filter=lfs diff=lfs merge=lfs -text
142
+ data/4173633_5/back/ny=14848_nx=21504.jpg filter=lfs diff=lfs merge=lfs -text
143
+ data/4173633_5/back/ny=18944_nx=24064.jpg filter=lfs diff=lfs merge=lfs -text
144
+ data/4173633_5/back/ny=10240_nx=16384.jpg filter=lfs diff=lfs merge=lfs -text
145
+ data/4173633_5/back/ny=10240_nx=25088.jpg filter=lfs diff=lfs merge=lfs -text
146
+ data/4173633_5/back/ny=12288_nx=20480.jpg filter=lfs diff=lfs merge=lfs -text
147
+ data/4173633_5/tumor/ny=12288_nx=16384.jpg filter=lfs diff=lfs merge=lfs -text
148
+ data/4173633_5/back/ny=10752_nx=18432.jpg filter=lfs diff=lfs merge=lfs -text
149
+ data/4173633_5/back/ny=12800_nx=15360.jpg filter=lfs diff=lfs merge=lfs -text
150
+ data/4173633_5/back/ny=14848_nx=22016.jpg filter=lfs diff=lfs merge=lfs -text
151
+ data/4173633_5/back/ny=16896_nx=20992.jpg filter=lfs diff=lfs merge=lfs -text
152
+ data/4173633_5/tumor/ny=16384_nx=26112.jpg filter=lfs diff=lfs merge=lfs -text
153
+ data/4173633_5/back/ny=15872_nx=19968.jpg filter=lfs diff=lfs merge=lfs -text
154
+ data/4173633_5/back/ny=9728_nx=19456.jpg filter=lfs diff=lfs merge=lfs -text
155
+ data/4173633_5/back/ny=11264_nx=15360.jpg filter=lfs diff=lfs merge=lfs -text
156
+ data/4173633_5/back/ny=10752_nx=24576.jpg filter=lfs diff=lfs merge=lfs -text
157
+ data/4173633_5/back/ny=11264_nx=25600.jpg filter=lfs diff=lfs merge=lfs -text
158
+ data/4173633_5/back/ny=15872_nx=22016.jpg filter=lfs diff=lfs merge=lfs -text
159
+ data/4173633_5/back/ny=16384_nx=25600.jpg filter=lfs diff=lfs merge=lfs -text
160
+ data/4173633_5/back/ny=17920_nx=19968.jpg filter=lfs diff=lfs merge=lfs -text
161
+ data/4173633_5/back/ny=20992_nx=18944.jpg filter=lfs diff=lfs merge=lfs -text
162
+ data/4173633_5/back/ny=21504_nx=16896.jpg filter=lfs diff=lfs merge=lfs -text
163
+ data/4173633_5/tumor/ny=16384_nx=19968.jpg filter=lfs diff=lfs merge=lfs -text
164
+ data/4173633_5/back/ny=9728_nx=18432.jpg filter=lfs diff=lfs merge=lfs -text
165
+ data/4173633_5/back/ny=10240_nx=19968.jpg filter=lfs diff=lfs merge=lfs -text
166
+ data/4173633_5/back/ny=11776_nx=26624.jpg filter=lfs diff=lfs merge=lfs -text
167
+ data/4173633_5/back/ny=17920_nx=22528.jpg filter=lfs diff=lfs merge=lfs -text
168
+ data/4173633_5/back/ny=7168_nx=18432.jpg filter=lfs diff=lfs merge=lfs -text
169
+ data/4173633_5/tumor/ny=11776_nx=15872.jpg filter=lfs diff=lfs merge=lfs -text
170
+ data/H6-13_Mars1+dapi/tiff/Snap-15309.tif filter=lfs diff=lfs merge=lfs -text
171
+ data/4173633_5/back/ny=13824_nx=32768.jpg filter=lfs diff=lfs merge=lfs -text
172
+ data/4173633_5/back/ny=15360_nx=34304.jpg filter=lfs diff=lfs merge=lfs -text
173
+ data/4173633_5/back/ny=20480_nx=14848.jpg filter=lfs diff=lfs merge=lfs -text
174
+ data/4173633_5/back/ny=21504_nx=54272.jpg filter=lfs diff=lfs merge=lfs -text
175
+ data/4173633_5/back/ny=9216_nx=22528.jpg filter=lfs diff=lfs merge=lfs -text
176
+ data/4173633_5/back/ny=10752_nx=15872.jpg filter=lfs diff=lfs merge=lfs -text
177
+ data/4173633_5/back/ny=11264_nx=17920.jpg filter=lfs diff=lfs merge=lfs -text
178
+ data/4173633_5/back/ny=17408_nx=29184.jpg filter=lfs diff=lfs merge=lfs -text
179
+ data/4173633_5/back/ny=20480_nx=13824.jpg filter=lfs diff=lfs merge=lfs -text
180
+ data/4173633_5/back/ny=21504_nx=55296.jpg filter=lfs diff=lfs merge=lfs -text
181
+ data/4173633_5/back/ny=12288_nx=25088.jpg filter=lfs diff=lfs merge=lfs -text
182
+ data/4173633_5/back/ny=12800_nx=23552.jpg filter=lfs diff=lfs merge=lfs -text
183
+ data/4173633_5/back/ny=16896_nx=22528.jpg filter=lfs diff=lfs merge=lfs -text
184
+ data/4173633_5/back/ny=16896_nx=25088.jpg filter=lfs diff=lfs merge=lfs -text
185
+ data/4173633_5/back/ny=20480_nx=55296.jpg filter=lfs diff=lfs merge=lfs -text
186
+ data/4173633_5/back/ny=12800_nx=24576.jpg filter=lfs diff=lfs merge=lfs -text
187
+ data/H6-13_Mars1+dapi/tiff/Snap-15316.tif filter=lfs diff=lfs merge=lfs -text
188
+ data/4173633_5/back/ny=10240_nx=22016.jpg filter=lfs diff=lfs merge=lfs -text
189
+ data/4173633_5/back/ny=11776_nx=15360.jpg filter=lfs diff=lfs merge=lfs -text
190
+ data/4173633_5/back/ny=12800_nx=26624.jpg filter=lfs diff=lfs merge=lfs -text
191
+ data/4173633_5/back/ny=14336_nx=15872.jpg filter=lfs diff=lfs merge=lfs -text
192
+ data/4173633_5/back/ny=8704_nx=18432.jpg filter=lfs diff=lfs merge=lfs -text
193
+ data/4173633_5/back/ny=13824_nx=25600.jpg filter=lfs diff=lfs merge=lfs -text
194
+ data/4173633_5/back/ny=16896_nx=20480.jpg filter=lfs diff=lfs merge=lfs -text
195
+ data/4173633_5/back/ny=17920_nx=23040.jpg filter=lfs diff=lfs merge=lfs -text
196
+ data/4173633_5/back/ny=14336_nx=19456.jpg filter=lfs diff=lfs merge=lfs -text
197
+ data/4173633_5/back/ny=19968_nx=54784.jpg filter=lfs diff=lfs merge=lfs -text
198
+ data/4173633_5/back/ny=22528_nx=54784.jpg filter=lfs diff=lfs merge=lfs -text
199
+ data/4173633_5/back/ny=13824_nx=24576.jpg filter=lfs diff=lfs merge=lfs -text
200
+ data/4173633_5/back/ny=14336_nx=24064.jpg filter=lfs diff=lfs merge=lfs -text
201
+ data/4173633_5/back/ny=20992_nx=54784.jpg filter=lfs diff=lfs merge=lfs -text
202
+ data/4173633_5/back/ny=14336_nx=32768.jpg filter=lfs diff=lfs merge=lfs -text
203
+ data/4173633_5/back/ny=16384_nx=23552.jpg filter=lfs diff=lfs merge=lfs -text
204
+ data/4173633_5/back/ny=20480_nx=15360.jpg filter=lfs diff=lfs merge=lfs -text
205
+ data/4173633_5/back/ny=9216_nx=23040.jpg filter=lfs diff=lfs merge=lfs -text
206
+ data/4173633_5/tumor/ny=11776_nx=33792.jpg filter=lfs diff=lfs merge=lfs -text
207
+ data/4173633_5/back/ny=13312_nx=27136.jpg filter=lfs diff=lfs merge=lfs -text
208
+ data/4173633_5/back/ny=15360_nx=24064.jpg filter=lfs diff=lfs merge=lfs -text
209
+ data/4173633_5/back/ny=15872_nx=33280.jpg filter=lfs diff=lfs merge=lfs -text
210
+ data/4173633_5/back/ny=18944_nx=20992.jpg filter=lfs diff=lfs merge=lfs -text
211
+ data/4173633_5/back/ny=8192_nx=31744.jpg filter=lfs diff=lfs merge=lfs -text
212
+ data/4173633_5/back/ny=17408_nx=22016.jpg filter=lfs diff=lfs merge=lfs -text
213
+ data/4173633_5/tumor/ny=8192_nx=17920.jpg filter=lfs diff=lfs merge=lfs -text
214
+ data/4173633_5/back/ny=12288_nx=27648.jpg filter=lfs diff=lfs merge=lfs -text
215
+ data/4173633_5/back/ny=12800_nx=25600.jpg filter=lfs diff=lfs merge=lfs -text
216
+ data/4173633_5/back/ny=15360_nx=18944.jpg filter=lfs diff=lfs merge=lfs -text
217
+ data/4173633_5/back/ny=9216_nx=20480.jpg filter=lfs diff=lfs merge=lfs -text
218
+ data/4173633_5/back/ny=13312_nx=24064.jpg filter=lfs diff=lfs merge=lfs -text
219
+ data/4173633_5/back/ny=20992_nx=14336.jpg filter=lfs diff=lfs merge=lfs -text
220
+ data/4173633_5/back/ny=9728_nx=21504.jpg filter=lfs diff=lfs merge=lfs -text
221
+ data/4173633_5/back/ny=10240_nx=18432.jpg filter=lfs diff=lfs merge=lfs -text
222
+ data/4173633_5/back/ny=10752_nx=18944.jpg filter=lfs diff=lfs merge=lfs -text
223
+ data/4173633_5/back/ny=14848_nx=32768.jpg filter=lfs diff=lfs merge=lfs -text
224
+ data/4173633_5/back/ny=17408_nx=20992.jpg filter=lfs diff=lfs merge=lfs -text
225
+ data/4173633_5/back/ny=22528_nx=53248.jpg filter=lfs diff=lfs merge=lfs -text
226
+ data/4173633_5/tumor/ny=14848_nx=19456.jpg filter=lfs diff=lfs merge=lfs -text
227
+ data/4173633_5/back/ny=11264_nx=21504.jpg filter=lfs diff=lfs merge=lfs -text
228
+ data/4173633_5/back/ny=17920_nx=23552.jpg filter=lfs diff=lfs merge=lfs -text
229
+ data/4173633_5/back/ny=10752_nx=17408.jpg filter=lfs diff=lfs merge=lfs -text
230
+ data/4173633_5/back/ny=12288_nx=26112.jpg filter=lfs diff=lfs merge=lfs -text
231
+ data/4173633_5/back/ny=12800_nx=27136.jpg filter=lfs diff=lfs merge=lfs -text
232
+ data/4173633_5/back/ny=20480_nx=19968.jpg filter=lfs diff=lfs merge=lfs -text
233
+ data/4173633_5/back/ny=13824_nx=29696.jpg filter=lfs diff=lfs merge=lfs -text
234
+ data/4173633_5/back/ny=17920_nx=20480.jpg filter=lfs diff=lfs merge=lfs -text
235
+ data/4173633_5/back/ny=20992_nx=14848.jpg filter=lfs diff=lfs merge=lfs -text
236
+ data/4173633_5/back/ny=9728_nx=18944.jpg filter=lfs diff=lfs merge=lfs -text
237
+ data/4173633_5/back/ny=11776_nx=25600.jpg filter=lfs diff=lfs merge=lfs -text
238
+ data/4173633_5/back/ny=12288_nx=22016.jpg filter=lfs diff=lfs merge=lfs -text
239
+ data/4173633_5/back/ny=12288_nx=24576.jpg filter=lfs diff=lfs merge=lfs -text
240
+ data/4173633_5/back/ny=13312_nx=15360.jpg filter=lfs diff=lfs merge=lfs -text
241
+ data/4173633_5/back/ny=15872_nx=21504.jpg filter=lfs diff=lfs merge=lfs -text
242
+ data/4173633_5/back/ny=16896_nx=24064.jpg filter=lfs diff=lfs merge=lfs -text
243
+ data/4173633_5/back/ny=16896_nx=27648.jpg filter=lfs diff=lfs merge=lfs -text
244
+ data/4173633_5/back/ny=12288_nx=17920.jpg filter=lfs diff=lfs merge=lfs -text
245
+ data/4173633_5/back/ny=19968_nx=20480.jpg filter=lfs diff=lfs merge=lfs -text
246
+ data/4173633_5/back/ny=21504_nx=19968.jpg filter=lfs diff=lfs merge=lfs -text
247
+ data/4173633_5/back/ny=8704_nx=18944.jpg filter=lfs diff=lfs merge=lfs -text
248
+ data/4173633_5/tumor/ny=18944_nx=41472.jpg filter=lfs diff=lfs merge=lfs -text
249
+ data/4173633_5/back/ny=10240_nx=25600.jpg filter=lfs diff=lfs merge=lfs -text
250
+ data/4173633_5/back/ny=11264_nx=18432.jpg filter=lfs diff=lfs merge=lfs -text
251
+ data/4173633_5/back/ny=12800_nx=17920.jpg filter=lfs diff=lfs merge=lfs -text
252
+ data/4173633_5/back/ny=19456_nx=54784.jpg filter=lfs diff=lfs merge=lfs -text
253
+ data/4173633_5/back/ny=19968_nx=14848.jpg filter=lfs diff=lfs merge=lfs -text
254
+ data/H6-13_Mars1+dapi/tiff/Snap-15313.tif filter=lfs diff=lfs merge=lfs -text
255
+ data/4173633_5/back/ny=9728_nx=23040.jpg filter=lfs diff=lfs merge=lfs -text
256
+ data/4173633_5/tumor/ny=12288_nx=15872.jpg filter=lfs diff=lfs merge=lfs -text
257
+ data/4173633_5/back/ny=0_nx=0.jpg filter=lfs diff=lfs merge=lfs -text
258
+ data/4173633_5/back/ny=10752_nx=23040.jpg filter=lfs diff=lfs merge=lfs -text
259
+ data/4173633_5/back/ny=13824_nx=21504.jpg filter=lfs diff=lfs merge=lfs -text
260
+ data/4173633_5/back/ny=20480_nx=15872.jpg filter=lfs diff=lfs merge=lfs -text
261
+ data/4173633_5/back/ny=8704_nx=19456.jpg filter=lfs diff=lfs merge=lfs -text
262
+ data/4173633_5/back/ny=9728_nx=16384.jpg filter=lfs diff=lfs merge=lfs -text
263
+ data/4173633_5/back/ny=12800_nx=16384.jpg filter=lfs diff=lfs merge=lfs -text
264
+ data/4173633_5/back/ny=13312_nx=26624.jpg filter=lfs diff=lfs merge=lfs -text
265
+ data/4173633_5/back/ny=13824_nx=26624.jpg filter=lfs diff=lfs merge=lfs -text
266
+ data/4173633_5/back/ny=16384_nx=28672.jpg filter=lfs diff=lfs merge=lfs -text
267
+ data/4173633_5/back/ny=17920_nx=24064.jpg filter=lfs diff=lfs merge=lfs -text
268
+ data/4173633_5/tumor/ny=13824_nx=27648.jpg filter=lfs diff=lfs merge=lfs -text
269
+ data/4173633_5/back/ny=18432_nx=22016.jpg filter=lfs diff=lfs merge=lfs -text
270
+ data/4173633_5/back/ny=20480_nx=29184.jpg filter=lfs diff=lfs merge=lfs -text
271
+ data/4173633_5/back/ny=15360_nx=22528.jpg filter=lfs diff=lfs merge=lfs -text
272
+ data/4173633_5/back/ny=16896_nx=26624.jpg filter=lfs diff=lfs merge=lfs -text
273
+ data/4173633_5/back/ny=9216_nx=21504.jpg filter=lfs diff=lfs merge=lfs -text
274
+ data/4173633_5/back/ny=9216_nx=22016.jpg filter=lfs diff=lfs merge=lfs -text
275
+ data/4173633_5/back/ny=9728_nx=22528.jpg filter=lfs diff=lfs merge=lfs -text
276
+ data/H6-13_Mars1+dapi/tiff/Snap-15312.tif filter=lfs diff=lfs merge=lfs -text
277
+ data/4173633_5/back/ny=10752_nx=23552.jpg filter=lfs diff=lfs merge=lfs -text
278
+ data/4173633_5/back/ny=12288_nx=19968.jpg filter=lfs diff=lfs merge=lfs -text
279
+ data/4173633_5/back/ny=12800_nx=17408.jpg filter=lfs diff=lfs merge=lfs -text
280
+ data/4173633_5/back/ny=13312_nx=23552.jpg filter=lfs diff=lfs merge=lfs -text
281
+ data/4173633_5/back/ny=14336_nx=18944.jpg filter=lfs diff=lfs merge=lfs -text
282
+ data/H6-13_Mars1+dapi/tiff/Snap-15315.tif filter=lfs diff=lfs merge=lfs -text
283
+ data/4173633_5/back/ny=15360_nx=10240.jpg filter=lfs diff=lfs merge=lfs -text
284
+ data/4173633_5/back/ny=12288_nx=19456.jpg filter=lfs diff=lfs merge=lfs -text
285
+ data/4173633_5/back/ny=16384_nx=30208.jpg filter=lfs diff=lfs merge=lfs -text
286
+ data/4173633_5/back/ny=17920_nx=25088.jpg filter=lfs diff=lfs merge=lfs -text
287
+ data/4173633_5/back/ny=17920_nx=25600.jpg filter=lfs diff=lfs merge=lfs -text
288
+ data/4173633_5/back/ny=20480_nx=19456.jpg filter=lfs diff=lfs merge=lfs -text
289
+ data/4173633_5/back/ny=21504_nx=15872.jpg filter=lfs diff=lfs merge=lfs -text
290
+ data/4173633_5/back/ny=22528_nx=53760.jpg filter=lfs diff=lfs merge=lfs -text
291
+ data/4173633_5/back/ny=12288_nx=14848.jpg filter=lfs diff=lfs merge=lfs -text
292
+ data/4173633_5/back/ny=14336_nx=22016.jpg filter=lfs diff=lfs merge=lfs -text
293
+ data/4173633_5/back/ny=19968_nx=14336.jpg filter=lfs diff=lfs merge=lfs -text
294
+ data/4173633_5/back/ny=23040_nx=51712.jpg filter=lfs diff=lfs merge=lfs -text
295
+ data/4173633_5/back/ny=9728_nx=22016.jpg filter=lfs diff=lfs merge=lfs -text
296
+ data/4173633_5/back/ny=10240_nx=21504.jpg filter=lfs diff=lfs merge=lfs -text
297
+ data/4173633_5/back/ny=19968_nx=18944.jpg filter=lfs diff=lfs merge=lfs -text
298
+ data/H6-13_Mars1+dapi/tiff/Snap-15314.tif filter=lfs diff=lfs merge=lfs -text
299
+ data/4173633_5/back/ny=13312_nx=25600.jpg filter=lfs diff=lfs merge=lfs -text
300
+ data/4173633_5/back/ny=13824_nx=15872.jpg filter=lfs diff=lfs merge=lfs -text
301
+ data/4173633_5/back/ny=13824_nx=23040.jpg filter=lfs diff=lfs merge=lfs -text
302
+ data/4173633_5/back/ny=10240_nx=23552.jpg filter=lfs diff=lfs merge=lfs -text
303
+ data/4173633_5/back/ny=15360_nx=31744.jpg filter=lfs diff=lfs merge=lfs -text
304
+ data/4173633_5/back/ny=17408_nx=28672.jpg filter=lfs diff=lfs merge=lfs -text
305
+ data/4173633_5/back/ny=22528_nx=51712.jpg filter=lfs diff=lfs merge=lfs -text
306
+ data/4173633_5/back/ny=12288_nx=23040.jpg filter=lfs diff=lfs merge=lfs -text
307
+ data/4173633_5/back/ny=13824_nx=15360.jpg filter=lfs diff=lfs merge=lfs -text
308
+ data/4173633_5/back/ny=14848_nx=20992.jpg filter=lfs diff=lfs merge=lfs -text
309
+ data/4173633_5/back/ny=15360_nx=32256.jpg filter=lfs diff=lfs merge=lfs -text
310
+ data/4173633_5/back/ny=8704_nx=17920.jpg filter=lfs diff=lfs merge=lfs -text
311
+ data/4173633_5/back/ny=11264_nx=20992.jpg filter=lfs diff=lfs merge=lfs -text
312
+ data/4173633_5/back/ny=14336_nx=23040.jpg filter=lfs diff=lfs merge=lfs -text
313
+ data/4173633_5/back/ny=14848_nx=23552.jpg filter=lfs diff=lfs merge=lfs -text
314
+ data/4173633_5/back/ny=15872_nx=18944.jpg filter=lfs diff=lfs merge=lfs -text
315
+ data/H6-13_Mars1+dapi/tiff/Snap-15310.tif filter=lfs diff=lfs merge=lfs -text
316
+ data/4173633_5/back/ny=10240_nx=24064.jpg filter=lfs diff=lfs merge=lfs -text
317
+ data/4173633_5/back/ny=16896_nx=29184.jpg filter=lfs diff=lfs merge=lfs -text
318
+ data/4173633_5/back/ny=17408_nx=20480.jpg filter=lfs diff=lfs merge=lfs -text
319
+ data/4173633_5/back/ny=13824_nx=31744.jpg filter=lfs diff=lfs merge=lfs -text
320
+ data/4173633_5/back/ny=12288_nx=24064.jpg filter=lfs diff=lfs merge=lfs -text
321
+ data/4173633_5/back/ny=13824_nx=22528.jpg filter=lfs diff=lfs merge=lfs -text
322
+ data/4173633_5/back/ny=18432_nx=23040.jpg filter=lfs diff=lfs merge=lfs -text
323
+ data/4173633_5/back/ny=10240_nx=20480.jpg filter=lfs diff=lfs merge=lfs -text
324
+ data/4173633_5/back/ny=11776_nx=20480.jpg filter=lfs diff=lfs merge=lfs -text
325
+ data/4173633_5/back/ny=12288_nx=23552.jpg filter=lfs diff=lfs merge=lfs -text
326
+ data/4173633_5/back/ny=15360_nx=23552.jpg filter=lfs diff=lfs merge=lfs -text
327
+ data/4173633_5/tumor/ny=14848_nx=18944.jpg filter=lfs diff=lfs merge=lfs -text
328
+ data/4173633_5/back/ny=11776_nx=22528.jpg filter=lfs diff=lfs merge=lfs -text
329
+ data/4173633_5/back/ny=13824_nx=32256.jpg filter=lfs diff=lfs merge=lfs -text
330
+ data/4173633_5/tumor/ny=9728_nx=24576.jpg filter=lfs diff=lfs merge=lfs -text
331
+ data/4173633_5/back/ny=19968_nx=15360.jpg filter=lfs diff=lfs merge=lfs -text
332
+ data/4173633_5/back/ny=21504_nx=16384.jpg filter=lfs diff=lfs merge=lfs -text
333
+ data/H6-13_Mars1+dapi/tiff/Snap-15319_combine_1.jpg filter=lfs diff=lfs merge=lfs -text
334
+ data/4173633_5/back/ny=11264_nx=25088.jpg filter=lfs diff=lfs merge=lfs -text
335
+ data/4173633_5/back/ny=11776_nx=23040.jpg filter=lfs diff=lfs merge=lfs -text
336
+ data/4173633_5/back/ny=12288_nx=28160.jpg filter=lfs diff=lfs merge=lfs -text
337
+ data/4173633_5/back/ny=15360_nx=21504.jpg filter=lfs diff=lfs merge=lfs -text
338
+ data/4173633_5/back/ny=30720_nx=12288.jpg filter=lfs diff=lfs merge=lfs -text
339
+ data/4173633_5/back/ny=20992_nx=20480.jpg filter=lfs diff=lfs merge=lfs -text
340
+ data/4173633_5/back/ny=8704_nx=17408.jpg filter=lfs diff=lfs merge=lfs -text
341
+ data/H6-13_Mars1+dapi/tiff/Snap-15317.tif filter=lfs diff=lfs merge=lfs -text
342
+ data/4173633_5/back/ny=10752_nx=20480.jpg filter=lfs diff=lfs merge=lfs -text
343
+ data/4173633_5/back/ny=17408_nx=26112.jpg filter=lfs diff=lfs merge=lfs -text
344
+ data/4173633_5/back/ny=19456_nx=25088.jpg filter=lfs diff=lfs merge=lfs -text
345
+ data/4173633_5/back/ny=21504_nx=53760.jpg filter=lfs diff=lfs merge=lfs -text
346
+ data/4173633_5/back/ny=7680_nx=19456.jpg filter=lfs diff=lfs merge=lfs -text
347
+ data/4173633_5/back/ny=10752_nx=25088.jpg filter=lfs diff=lfs merge=lfs -text
348
+ data/4173633_5/back/ny=17408_nx=25600.jpg filter=lfs diff=lfs merge=lfs -text
349
+ data/4173633_5/back/ny=20992_nx=15872.jpg filter=lfs diff=lfs merge=lfs -text
350
+ data/4173633_5/tumor/ny=8192_nx=17408.jpg filter=lfs diff=lfs merge=lfs -text
351
+ data/4173633_5/back/ny=11776_nx=24576.jpg filter=lfs diff=lfs merge=lfs -text
352
+ data/4173633_5/back/ny=13824_nx=28160.jpg filter=lfs diff=lfs merge=lfs -text
353
+ data/4173633_5/back/ny=15360_nx=20480.jpg filter=lfs diff=lfs merge=lfs -text
354
+ data/4173633_5/back/ny=15360_nx=22016.jpg filter=lfs diff=lfs merge=lfs -text
355
+ data/4173633_5/back/ny=7680_nx=17408.jpg filter=lfs diff=lfs merge=lfs -text
356
+ data/4173633_5/back/ny=9216_nx=20992.jpg filter=lfs diff=lfs merge=lfs -text
357
+ data/4173633_5/back/ny=10240_nx=23040.jpg filter=lfs diff=lfs merge=lfs -text
358
+ data/4173633_5/back/ny=22016_nx=53248.jpg filter=lfs diff=lfs merge=lfs -text
359
+ data/4173633_5/back/ny=10752_nx=21504.jpg filter=lfs diff=lfs merge=lfs -text
360
+ data/4173633_5/back/ny=11776_nx=14848.jpg filter=lfs diff=lfs merge=lfs -text
361
+ data/4173633_5/back/ny=17408_nx=23040.jpg filter=lfs diff=lfs merge=lfs -text
362
+ data/4173633_5/back/ny=12288_nx=18432.jpg filter=lfs diff=lfs merge=lfs -text
363
+ data/4173633_5/back/ny=11264_nx=19456.jpg filter=lfs diff=lfs merge=lfs -text
364
+ data/4173633_5/back/ny=12288_nx=18944.jpg filter=lfs diff=lfs merge=lfs -text
365
+ data/4173633_5/back/ny=16896_nx=24576.jpg filter=lfs diff=lfs merge=lfs -text
366
+ data/4173633_5/back/ny=22016_nx=54784.jpg filter=lfs diff=lfs merge=lfs -text
367
+ data/4173633_5/tumor/ny=11776_nx=17408.jpg filter=lfs diff=lfs merge=lfs -text
368
+ data/4173633_5/back/ny=12800_nx=19968.jpg filter=lfs diff=lfs merge=lfs -text
369
+ data/4173633_5/back/ny=13312_nx=18432.jpg filter=lfs diff=lfs merge=lfs -text
370
+ data/4173633_5/back/ny=18432_nx=25600.jpg filter=lfs diff=lfs merge=lfs -text
371
+ data/4173633_5/back/ny=20992_nx=16384.jpg filter=lfs diff=lfs merge=lfs -text
372
+ data/4173633_5/back/ny=28160_nx=7680.jpg filter=lfs diff=lfs merge=lfs -text
373
+ data/4173633_5/back/ny=13312_nx=14848.jpg filter=lfs diff=lfs merge=lfs -text
374
+ data/4173633_5/back/ny=13312_nx=26112.jpg filter=lfs diff=lfs merge=lfs -text
375
+ data/4173633_5/back/ny=18432_nx=22528.jpg filter=lfs diff=lfs merge=lfs -text
376
+ data/4173633_5/back/ny=18944_nx=25088.jpg filter=lfs diff=lfs merge=lfs -text
377
+ data/4173633_5/back/ny=7168_nx=17920.jpg filter=lfs diff=lfs merge=lfs -text
378
+ data/4173633_5/back/ny=14848_nx=35328.jpg filter=lfs diff=lfs merge=lfs -text
379
+ data/4173633_5/back/ny=17920_nx=22016.jpg filter=lfs diff=lfs merge=lfs -text
380
+ data/4173633_5/back/ny=19456_nx=24576.jpg filter=lfs diff=lfs merge=lfs -text
381
+ data/4173633_5/back/ny=20480_nx=16384.jpg filter=lfs diff=lfs merge=lfs -text
382
+ data/4173633_5/back/ny=20480_nx=54784.jpg filter=lfs diff=lfs merge=lfs -text
383
+ data/4173633_5/tumor/ny=9728_nx=17408.jpg filter=lfs diff=lfs merge=lfs -text
384
+ data/4173633_5/back/ny=12800_nx=22016.jpg filter=lfs diff=lfs merge=lfs -text
385
+ data/4173633_5/back/ny=29184_nx=8192.jpg filter=lfs diff=lfs merge=lfs -text
386
+ data/4173633_5/back/ny=7680_nx=18432.jpg filter=lfs diff=lfs merge=lfs -text
387
+ data/4173633_5/back/ny=8192_nx=18944.jpg filter=lfs diff=lfs merge=lfs -text
388
+ data/4173633_5/back/ny=10752_nx=19968.jpg filter=lfs diff=lfs merge=lfs -text
389
+ data/4173633_5/back/ny=11264_nx=16896.jpg filter=lfs diff=lfs merge=lfs -text
390
+ data/4173633_5/back/ny=18944_nx=19968.jpg filter=lfs diff=lfs merge=lfs -text
391
+ data/4173633_5/back/ny=23040_nx=50688.jpg filter=lfs diff=lfs merge=lfs -text
392
+ data/4173633_5/back/ny=10240_nx=22528.jpg filter=lfs diff=lfs merge=lfs -text
393
+ data/4173633_5/back/ny=10752_nx=19456.jpg filter=lfs diff=lfs merge=lfs -text
394
+ data/4173633_5/back/ny=11776_nx=17920.jpg filter=lfs diff=lfs merge=lfs -text
395
+ data/4173633_5/back/ny=12800_nx=19456.jpg filter=lfs diff=lfs merge=lfs -text
396
+ data/4173633_5/back/ny=14336_nx=14848.jpg filter=lfs diff=lfs merge=lfs -text
397
+ data/4173633_5/back/ny=15872_nx=24064.jpg filter=lfs diff=lfs merge=lfs -text
398
+ data/4173633_5/back/ny=8704_nx=19968.jpg filter=lfs diff=lfs merge=lfs -text
399
+ data/4173633_5/back/ny=11264_nx=18944.jpg filter=lfs diff=lfs merge=lfs -text
400
+ data/4173633_5/back/ny=11264_nx=22016.jpg filter=lfs diff=lfs merge=lfs -text
401
+ data/4173633_5/back/ny=22016_nx=55296.jpg filter=lfs diff=lfs merge=lfs -text
402
+ data/4173633_5/back/ny=22528_nx=51200.jpg filter=lfs diff=lfs merge=lfs -text
403
+ data/4173633_5/back/ny=12800_nx=14848.jpg filter=lfs diff=lfs merge=lfs -text
404
+ data/4173633_5/back/ny=13312_nx=16384.jpg filter=lfs diff=lfs merge=lfs -text
405
+ data/4173633_5/back/ny=13312_nx=19456.jpg filter=lfs diff=lfs merge=lfs -text
406
+ data/4173633_5/back/ny=15872_nx=34304.jpg filter=lfs diff=lfs merge=lfs -text
407
+ data/4173633_5/back/ny=18432_nx=24576.jpg filter=lfs diff=lfs merge=lfs -text
408
+ data/4173633_5/back/ny=18432_nx=25088.jpg filter=lfs diff=lfs merge=lfs -text
409
+ data/4173633_5/back/ny=10240_nx=18944.jpg filter=lfs diff=lfs merge=lfs -text
410
+ data/4173633_5/back/ny=20992_nx=19968.jpg filter=lfs diff=lfs merge=lfs -text
411
+ data/4173633_5/back/ny=13312_nx=22016.jpg filter=lfs diff=lfs merge=lfs -text
412
+ data/4173633_5/back/ny=14336_nx=26112.jpg filter=lfs diff=lfs merge=lfs -text
413
+ data/4173633_5/back/ny=7680_nx=18944.jpg filter=lfs diff=lfs merge=lfs -text
414
+ data/4173633_5/tumor/ny=11264_nx=17408.jpg filter=lfs diff=lfs merge=lfs -text
415
+ data/4173633_5/back/ny=14848_nx=32256.jpg filter=lfs diff=lfs merge=lfs -text
416
+ data/4173633_5/back/ny=14848_nx=33280.jpg filter=lfs diff=lfs merge=lfs -text
417
+ data/4173633_5/back/ny=17408_nx=40960.jpg filter=lfs diff=lfs merge=lfs -text
418
+ data/H6-13_Mars1+dapi/tiff/Snap-15319_combine.tif filter=lfs diff=lfs merge=lfs -text
419
+ data/4173633_5/back/ny=12288_nx=20992.jpg filter=lfs diff=lfs merge=lfs -text
420
+ data/4173633_5/back/ny=13312_nx=18944.jpg filter=lfs diff=lfs merge=lfs -text
421
+ data/4173633_5/back/ny=16384_nx=22528.jpg filter=lfs diff=lfs merge=lfs -text
422
+ data/4173633_5/back/ny=20480_nx=20480.jpg filter=lfs diff=lfs merge=lfs -text
423
+ data/4173633_5/tumor/ny=20480_nx=14336.jpg filter=lfs diff=lfs merge=lfs -text
424
+ data/4173633_5/back/ny=13824_nx=26112.jpg filter=lfs diff=lfs merge=lfs -text
425
+ data/4173633_5/back/ny=14336_nx=20992.jpg filter=lfs diff=lfs merge=lfs -text
426
+ data/4173633_5/back/ny=15360_nx=33280.jpg filter=lfs diff=lfs merge=lfs -text
427
+ data/4173633_5/back/ny=15360_nx=34816.jpg filter=lfs diff=lfs merge=lfs -text
428
+ data/4173633_5/back/ny=17408_nx=26624.jpg filter=lfs diff=lfs merge=lfs -text
429
+ data/4173633_5/back/ny=22528_nx=50688.jpg filter=lfs diff=lfs merge=lfs -text
430
+ data/4173633_5/back/ny=10240_nx=15872.jpg filter=lfs diff=lfs merge=lfs -text
431
+ data/4173633_5/back/ny=11776_nx=20992.jpg filter=lfs diff=lfs merge=lfs -text
432
+ data/4173633_5/back/ny=12288_nx=27136.jpg filter=lfs diff=lfs merge=lfs -text
433
+ data/4173633_5/back/ny=12800_nx=16896.jpg filter=lfs diff=lfs merge=lfs -text
434
+ data/4173633_5/back/ny=12800_nx=20480.jpg filter=lfs diff=lfs merge=lfs -text
435
+ data/4173633_5/back/ny=13824_nx=14848.jpg filter=lfs diff=lfs merge=lfs -text
436
+ data/4173633_5/back/ny=13824_nx=18944.jpg filter=lfs diff=lfs merge=lfs -text
437
+ data/4173633_5/back/ny=14336_nx=30720.jpg filter=lfs diff=lfs merge=lfs -text
438
+ data/4173633_5/back/ny=14336_nx=5120.jpg filter=lfs diff=lfs merge=lfs -text
439
+ data/4173633_5/back/ny=18432_nx=21504.jpg filter=lfs diff=lfs merge=lfs -text
440
+ data/4173633_5/tumor/ny=11776_nx=16896.jpg filter=lfs diff=lfs merge=lfs -text
441
+ data/4173633_5/back/ny=16896_nx=28160.jpg filter=lfs diff=lfs merge=lfs -text
442
+ data/4173633_5/back/ny=18432_nx=19968.jpg filter=lfs diff=lfs merge=lfs -text
443
+ data/4173633_5/back/ny=9728_nx=17920.jpg filter=lfs diff=lfs merge=lfs -text
444
+ data/4173633_5/back/ny=15360_nx=33792.jpg filter=lfs diff=lfs merge=lfs -text
445
+ data/4173633_5/back/ny=9728_nx=15872.jpg filter=lfs diff=lfs merge=lfs -text
446
+ data/4173633_5/back/ny=12800_nx=24064.jpg filter=lfs diff=lfs merge=lfs -text
447
+ data/4173633_5/back/ny=13824_nx=24064.jpg filter=lfs diff=lfs merge=lfs -text
448
+ data/4173633_5/back/ny=8192_nx=27136.jpg filter=lfs diff=lfs merge=lfs -text
449
+ data/4173633_5/back/ny=13824_nx=25088.jpg filter=lfs diff=lfs merge=lfs -text
450
+ data/4173633_5/back/ny=21504_nx=19456.jpg filter=lfs diff=lfs merge=lfs -text
451
+ data/4173633_5/back/ny=11776_nx=19456.jpg filter=lfs diff=lfs merge=lfs -text
452
+ data/4173633_5/back/ny=15360_nx=23040.jpg filter=lfs diff=lfs merge=lfs -text
453
+ data/4173633_5/back/ny=17408_nx=21504.jpg filter=lfs diff=lfs merge=lfs -text
454
+ data/4173633_5/back/ny=17408_nx=28160.jpg filter=lfs diff=lfs merge=lfs -text
455
+ data/4173633_5/back/ny=18944_nx=20480.jpg filter=lfs diff=lfs merge=lfs -text
456
+ data/4173633_5/back/ny=3584_nx=512.jpg filter=lfs diff=lfs merge=lfs -text
457
+ data/H6-13_Mars1+dapi/tiff/Snap-15319.tif filter=lfs diff=lfs merge=lfs -text
458
+ data/4173633_5/back/ny=13312_nx=25088.jpg filter=lfs diff=lfs merge=lfs -text
459
+ data/4173633_5/back/ny=15872_nx=20480.jpg filter=lfs diff=lfs merge=lfs -text
460
+ data/4173633_5/back/ny=15872_nx=34816.jpg filter=lfs diff=lfs merge=lfs -text
461
+ data/4173633_5/back/ny=17408_nx=27648.jpg filter=lfs diff=lfs merge=lfs -text
462
+ data/4173633_5/tumor/ny=13312_nx=29184.jpg filter=lfs diff=lfs merge=lfs -text
463
+ data/4173633_5/back/ny=14336_nx=23552.jpg filter=lfs diff=lfs merge=lfs -text
464
+ data/4173633_5/back/ny=15872_nx=31744.jpg filter=lfs diff=lfs merge=lfs -text
465
+ data/4173633_5/back/ny=18944_nx=22016.jpg filter=lfs diff=lfs merge=lfs -text
466
+ data/4173633_5/back/ny=20992_nx=19456.jpg filter=lfs diff=lfs merge=lfs -text
467
+ data/4173633_5/back/ny=16896_nx=26112.jpg filter=lfs diff=lfs merge=lfs -text
468
+ data/4173633_5/back/ny=16896_nx=27136.jpg filter=lfs diff=lfs merge=lfs -text
469
+ data/4173633_5/back/ny=19456_nx=23552.jpg filter=lfs diff=lfs merge=lfs -text
470
+ data/4173633_5/back/ny=9728_nx=19968.jpg filter=lfs diff=lfs merge=lfs -text
471
+ data/4173633_5/back/ny=13312_nx=16896.jpg filter=lfs diff=lfs merge=lfs -text
472
+ data/4173633_5/back/ny=16384_nx=22016.jpg filter=lfs diff=lfs merge=lfs -text
473
+ data/4173633_5/back/ny=19456_nx=24064.jpg filter=lfs diff=lfs merge=lfs -text
474
+ data/4173633_5/tumor/ny=9216_nx=18944.jpg filter=lfs diff=lfs merge=lfs -text
475
+ data/4173633_5/back/ny=18944_nx=25600.jpg filter=lfs diff=lfs merge=lfs -text
476
+ data/4173633_5/back/ny=11264_nx=23552.jpg filter=lfs diff=lfs merge=lfs -text
477
+ data/4173633_5/back/ny=15872_nx=23552.jpg filter=lfs diff=lfs merge=lfs -text
478
+ data/4173633_5/back/ny=16896_nx=25600.jpg filter=lfs diff=lfs merge=lfs -text
479
+ data/4173633_5/back/ny=10240_nx=16896.jpg filter=lfs diff=lfs merge=lfs -text
480
+ data/4173633_5/back/ny=10752_nx=15360.jpg filter=lfs diff=lfs merge=lfs -text
481
+ data/4173633_5/back/ny=13824_nx=31232.jpg filter=lfs diff=lfs merge=lfs -text
482
+ data/4173633_5/back/ny=15360_nx=32768.jpg filter=lfs diff=lfs merge=lfs -text
483
+ data/4173633_5/back/ny=15872_nx=22528.jpg filter=lfs diff=lfs merge=lfs -text
484
+ data/4173633_5/tumor/ny=9728_nx=29184.jpg filter=lfs diff=lfs merge=lfs -text
485
+ data/4173633_5/back/ny=11264_nx=20480.jpg filter=lfs diff=lfs merge=lfs -text
486
+ data/4173633_5/back/ny=16384_nx=33280.jpg filter=lfs diff=lfs merge=lfs -text
487
+ data/4173633_5/back/ny=18432_nx=24064.jpg filter=lfs diff=lfs merge=lfs -text
488
+ data/4173633_5/back/ny=18944_nx=54784.jpg filter=lfs diff=lfs merge=lfs -text
489
+ data/4173633_5/back/ny=20992_nx=16896.jpg filter=lfs diff=lfs merge=lfs -text
490
+ data/4173633_5/back/ny=8192_nx=18432.jpg filter=lfs diff=lfs merge=lfs -text
491
+ data/*/*/*/* filter=lfs diff=lfs merge=lfs -text
@@ -1,6 +1,6 @@
1
- Metadata-Version: 2.1
1
+ Metadata-Version: 2.3
2
2
  Name: cell_data_loader
3
- Version: 0.0.3
3
+ Version: 0.0.4
4
4
  Summary: Converts general images of cells into formats and labels for deep learning pipelines
5
5
  Project-URL: Homepage, https://github.com/mleming/CellDataLoader
6
6
  Author-email: Matt Leming <mleming@mgh.harvard.edu>
@@ -23,6 +23,8 @@ Cell Data Loader
23
23
 
24
24
  Cell Data Loader is a simple AI support tool in Python that can take in images of cells (or other image types) and output them with minimal effort to formats that can be read by Pytorch (Tensor) or Tensorflow (Numpy) format. With Cell Data Loader, users have the option to output their cell images as whole images, sliced images, or, with the support of [CellPose](https://github.com/MouseLand/cellpose), segment their images by cell and output those individually.
25
25
 
26
+ It can also be used for normal computer vision research, which is why CellPose is not a strict dependency.
27
+
26
28
  To install Cell Data Loader, simply type into a standard UNIX terminal
27
29
 
28
30
  pip install cell-data-loader
@@ -72,7 +74,12 @@ for label,image in dataloader:
72
74
  Alternatively, if you have one folder or file list with images that have different naming conventions, a regex match is supported:
73
75
 
74
76
  ~~~python
75
- imfiles = ['/path/to/CANCER_image1.png','/path/to/CANCER_image2.png','/path/to/CANCER_image3.png','/path/to/HEALTHY_image1.png','/path/to/HEALTHY_image2.png','/path/to/HEALTHY_image3.png']
77
+ imfiles = ['/path/to/CANCER_image1.png',
78
+ '/path/to/CANCER_image2.png',
79
+ '/path/to/CANCER_image3.png',
80
+ '/path/to/HEALTHY_image1.png',
81
+ '/path/to/HEALTHY_image2.png',
82
+ '/path/to/HEALTHY_image3.png']
76
83
 
77
84
  dataloader = CellDataloader(imfiles,label_regex = ["CANCER","HEALTHY"])
78
85
  for label,image in dataloader:
@@ -91,11 +98,26 @@ imfolder = '/path/to/folder'
91
98
 
92
99
  dataloader = CellDataloader(imfolder,
93
100
  dim = (64,64),
94
- batch_size = 32,
95
- dtype = "numpy", # Can also be "torch"
101
+ batch_size = 64,
102
+ dtype = "torch", # Can also be "numpy"
96
103
  label_regex = None,
97
- n_channels = 3, # This is detected in the first read image by default, if not provided; it re-samples all images to force this number of channels
98
- match_labels = False, # Outputs proportional amounts of each label in the dataset
104
+ verbose = True,
105
+ segment_image = "whole", # "whole" outputs the whole image, resized
106
+ # to dim; "sliced" cuts the image checkerboard pattern into
107
+ # dim-shaped outputs, so it's suitable for large images; "cell"
108
+ # segments cells from the image using CellPose, though it throws
109
+ # an error if CellPose is not installed properly. CellPose is
110
+ # not included by default in the dependencies and needs to be
111
+ # installed separately by the user.
112
+ n_channels = 3, # Detected in first image by default; re-samples all
113
+ # images to force this number of channels
114
+ augment_image = True, # Augments the output image in the standard
115
+ # ways -- rotation, color jiggling, etc.
116
+ label_balance = True, # Outputs proportional amounts of each label
117
+ # in the dataset
118
+ gpu_ids = None, # GPUs that the outputs are read to, if present.
119
+ channels_first = True # Places channels either first, before the
120
+ # batch dimension, or last
99
121
  )
100
122
  ~~~
101
123
 
@@ -103,6 +125,12 @@ dataloader = CellDataloader(imfolder,
103
125
  Dependencies
104
126
  ------------
105
127
 
128
+ Note that the strict dependencies are automatically downloaded just with
129
+
130
+ pip install cell-data-loader
131
+
132
+ However, to get support with cell-segmentation-specific images (i.e., segment="cell"), [CellPose](https://github.com/MouseLand/cellpose) needs to be installed. GPU integration with CellPose would also need to be handled separately.
133
+
106
134
  Strict dependencies:
107
135
 
108
136
  numpy
@@ -119,8 +147,3 @@ Soft dependencies:
119
147
  CellPose # For cell segmentation support
120
148
  Tensorflow
121
149
 
122
- Note that some of the dependencies are not strict and vary depending on usage. Numpy is a hard requirement, but Tensorflow is not if the user only uses the Torch capabilities. If the user attempts to load cell images in "cell" mode without a working Cellpose installation, CellDataLoader will throw an error. Cellpose needs be be installed separately to use "cell" mode:
123
-
124
- pip install cellpose
125
-
126
- And GPU integration is a separate matter.
@@ -3,6 +3,8 @@ Cell Data Loader
3
3
 
4
4
  Cell Data Loader is a simple AI support tool in Python that can take in images of cells (or other image types) and output them with minimal effort to formats that can be read by Pytorch (Tensor) or Tensorflow (Numpy) format. With Cell Data Loader, users have the option to output their cell images as whole images, sliced images, or, with the support of [CellPose](https://github.com/MouseLand/cellpose), segment their images by cell and output those individually.
5
5
 
6
+ It can also be used for normal computer vision research, which is why CellPose is not a strict dependency.
7
+
6
8
  To install Cell Data Loader, simply type into a standard UNIX terminal
7
9
 
8
10
  pip install cell-data-loader
@@ -52,7 +54,12 @@ for label,image in dataloader:
52
54
  Alternatively, if you have one folder or file list with images that have different naming conventions, a regex match is supported:
53
55
 
54
56
  ~~~python
55
- imfiles = ['/path/to/CANCER_image1.png','/path/to/CANCER_image2.png','/path/to/CANCER_image3.png','/path/to/HEALTHY_image1.png','/path/to/HEALTHY_image2.png','/path/to/HEALTHY_image3.png']
57
+ imfiles = ['/path/to/CANCER_image1.png',
58
+ '/path/to/CANCER_image2.png',
59
+ '/path/to/CANCER_image3.png',
60
+ '/path/to/HEALTHY_image1.png',
61
+ '/path/to/HEALTHY_image2.png',
62
+ '/path/to/HEALTHY_image3.png']
56
63
 
57
64
  dataloader = CellDataloader(imfiles,label_regex = ["CANCER","HEALTHY"])
58
65
  for label,image in dataloader:
@@ -71,11 +78,26 @@ imfolder = '/path/to/folder'
71
78
 
72
79
  dataloader = CellDataloader(imfolder,
73
80
  dim = (64,64),
74
- batch_size = 32,
75
- dtype = "numpy", # Can also be "torch"
81
+ batch_size = 64,
82
+ dtype = "torch", # Can also be "numpy"
76
83
  label_regex = None,
77
- n_channels = 3, # This is detected in the first read image by default, if not provided; it re-samples all images to force this number of channels
78
- match_labels = False, # Outputs proportional amounts of each label in the dataset
84
+ verbose = True,
85
+ segment_image = "whole", # "whole" outputs the whole image, resized
86
+ # to dim; "sliced" cuts the image checkerboard pattern into
87
+ # dim-shaped outputs, so it's suitable for large images; "cell"
88
+ # segments cells from the image using CellPose, though it throws
89
+ # an error if CellPose is not installed properly. CellPose is
90
+ # not included by default in the dependencies and needs to be
91
+ # installed separately by the user.
92
+ n_channels = 3, # Detected in first image by default; re-samples all
93
+ # images to force this number of channels
94
+ augment_image = True, # Augments the output image in the standard
95
+ # ways -- rotation, color jiggling, etc.
96
+ label_balance = True, # Outputs proportional amounts of each label
97
+ # in the dataset
98
+ gpu_ids = None, # GPUs that the outputs are read to, if present.
99
+ channels_first = True # Places channels either first, before the
100
+ # batch dimension, or last
79
101
  )
80
102
  ~~~
81
103
 
@@ -83,6 +105,12 @@ dataloader = CellDataloader(imfolder,
83
105
  Dependencies
84
106
  ------------
85
107
 
108
+ Note that the strict dependencies are automatically downloaded just with
109
+
110
+ pip install cell-data-loader
111
+
112
+ However, to get support with cell-segmentation-specific images (i.e., segment="cell"), [CellPose](https://github.com/MouseLand/cellpose) needs to be installed. GPU integration with CellPose would also need to be handled separately.
113
+
86
114
  Strict dependencies:
87
115
 
88
116
  numpy
@@ -99,8 +127,3 @@ Soft dependencies:
99
127
  CellPose # For cell segmentation support
100
128
  Tensorflow
101
129
 
102
- Note that some of the dependencies are not strict and vary depending on usage. Numpy is a hard requirement, but Tensorflow is not if the user only uses the Torch capabilities. If the user attempts to load cell images in "cell" mode without a working Cellpose installation, CellDataLoader will throw an error. Cellpose needs be be installed separately to use "cell" mode:
103
-
104
- pip install cellpose
105
-
106
- And GPU integration is a separate matter.
@@ -0,0 +1,72 @@
1
+ #!/usr/bin/python3
2
+
3
+ from src.cell_data_loader import CellDataloader
4
+
5
+ try:
6
+ import tensorflow as tf
7
+ except:
8
+ try:
9
+ from keras import tensorflow as tf
10
+ except:
11
+ raise Exception("Need valid tensorflow")
12
+
13
+ import numpy
14
+ import os
15
+
16
+ def example_numpy(verbose=True):
17
+
18
+ """
19
+ Replace these folders with whatever folders of cells you may have. Note that
20
+ the test/train folders in this script are the same -- you would need to
21
+ have a separate train/test set in your own implementation
22
+ """
23
+ wd = os.path.dirname(os.path.realpath(__file__))
24
+ imfolder1 = os.path.join(wd,'data',
25
+ '3368914_4_non_tumor')
26
+ imfolder2 = os.path.join(wd,'data',
27
+ '4173633_5')
28
+
29
+ model = resnet50()
30
+ model = tf.keras.applications.resnet50.ResNet50(
31
+ include_top=True,
32
+ weights='imagenet',
33
+ input_tensor=None,
34
+ input_shape=None,
35
+ pooling=None,
36
+ classes=1000
37
+ )
38
+
39
+ # Train
40
+
41
+ dataloader_train = CellDataloader(imfolder1,imfolder2,
42
+ dtype="numpy",verbose=False)
43
+
44
+ z = None
45
+ for epoch in range(100):
46
+ for image,y in dataloader_train:
47
+ if z is None:
48
+ z_dim = list(y.shape)
49
+ z_dim[1] = 1000 - z_dim[1]
50
+ z = np.zeros(z_dim)
51
+ y = np.concatenate(y,z,axis=1)
52
+ model.fit(image,y)
53
+
54
+ # Test
55
+
56
+ model.eval()
57
+ dataloader_test = CellDataloader(imfolder1,imfolder2,dtype="torch",
58
+ verbose=False)
59
+ total_images = 0
60
+ sum_accuracy = 0
61
+ for image,y in dataloader_test:
62
+ total_images += image.shape[0]
63
+ y_pred = model(image)
64
+ y_pred = y_pred[:,:y.shape[1]]
65
+ sum_accuracy += torch.sum(torch.argmax(y_pred,axis=1) == \
66
+ torch.argmax(y,axis=1))
67
+
68
+ accuracy = sum_accuracy / total_images
69
+ if verbose: print("Final accuracy: %.4f" % sum_accuracy)
70
+
71
+ if __name__ == "__main__":
72
+ example_numpy()
@@ -0,0 +1,88 @@
1
+ #!/usr/bin/python3
2
+
3
+ from cell_data_loader import CellDataloader
4
+ from torchvision.models import resnet50 #, ResNet50_Weights
5
+ import torch
6
+ import os
7
+ import glob
8
+
9
+ def example_torch(gpu_ids = None,verbose=True):
10
+
11
+ """
12
+ Replace these folders with whatever folders of cells you may have. Note that
13
+ the test/train folders in this script are the same -- you would need to
14
+ have a separate train/test set in your own implementation
15
+ """
16
+
17
+ wd = os.path.dirname(os.path.dirname(os.path.realpath(__file__)))
18
+ model_folder = os.path.join(wd,'checkpoints')
19
+ os.makedirs(model_folder,exist_ok=True)
20
+ model_file = os.path.join(model_folder,'torch_model.pt')
21
+
22
+ # Training data folders
23
+ imfolder1_train = os.path.join(wd,'data',
24
+ '3368914_4_non_tumor')
25
+ imfolder2_train = os.path.join(wd,'data',
26
+ '4173633_5')
27
+
28
+ # Test data folders
29
+ imfolder1_test = os.path.join(wd,'data','3368914_4_non_tumor')
30
+ imfolder2_test = os.path.join(wd,'data','4173633_5')
31
+
32
+ # Get a pretrained model from torchvision
33
+ if os.path.isfile(model_file):
34
+ if verbose: print("Loading %s" % model_file)
35
+ model = torch.load(model_file)
36
+ else:
37
+ model = resnet50(pretrained=True)
38
+
39
+ if gpu_ids is not None:
40
+ model.to(gpu_ids)
41
+
42
+ # Train
43
+
44
+ model.train()
45
+ loss_fn = torch.nn.MSELoss(reduction='sum')
46
+ optimizer = torch.optim.Adam(model.parameters(), lr=1e-5)
47
+ dataloader_train = CellDataloader(imfolder1_train,imfolder2_train,
48
+ dtype="torch",
49
+ verbose=False, gpu_ids=gpu_ids)
50
+ if verbose: print("Beginning training")
51
+ n_epochs = 500
52
+ for epoch in range(n_epochs):
53
+ l = 0
54
+ c = 0
55
+ for image,y in dataloader_train:
56
+ y_pred = model(image)
57
+ y_pred = y_pred[:,:y.size()[1]]
58
+ loss = loss_fn(y_pred, y)
59
+ l += float(loss)
60
+ c += 1
61
+ optimizer.zero_grad()
62
+ loss.backward()
63
+ optimizer.step()
64
+ torch.save(model,model_file)
65
+ if verbose:
66
+ print(
67
+ "Epoch {epoch:d}/{n_epochs:d}: loss: {loss:.5f}".format(
68
+ epoch=epoch,n_epochs=e_epochs,loss=l/c)
69
+ )
70
+ # Test
71
+
72
+ model.eval()
73
+
74
+ dataloader_test = CellDataloader(imfolder1_test,imfolder2_test,
75
+ dtype="torch",verbose=False, gpu_ids = gpu_ids)
76
+ total_images = 0
77
+ sum_accuracy = 0
78
+ for image,y in dataloader_test:
79
+ total_images += image.size()[0]
80
+ y_pred = model(image)
81
+ y_pred = y_pred[:,:y.size()[1]]
82
+ sum_accuracy += torch.sum(torch.argmax(y_pred,axis=1) == \
83
+ torch.argmax(y,axis=1))
84
+ accuracy = sum_accuracy / total_images
85
+ if verbose: print("Final accuracy: %.4f" % accuracy)
86
+
87
+ if __name__ == "__main__":
88
+ example_torch()
@@ -0,0 +1,9 @@
1
+ #!/bin/bash
2
+
3
+ #git init
4
+ git add README.md example_numpy.py example_torch.py src tests requirements.txt pyproject.toml
5
+ #git rm src/cell_data_loader/slice_images_out.py src/cell_data_loader/cell_segmenter.py
6
+ git commit -m "Updated example torch, added toml"
7
+ git branch -M main
8
+ #git remote add origin https://github.com/mleming/CellDataLoader.git
9
+ git push -u origin main
@@ -2,7 +2,7 @@
2
2
 
3
3
  name = "cell_data_loader"
4
4
 
5
- version = "0.0.3"
5
+ version = "0.0.4"
6
6
 
7
7
  dependencies = [
8
8
  "numpy",
@@ -202,7 +202,6 @@ class CellDataloader():#BaseDataset):
202
202
  label_balance = True,
203
203
  cell_box_regex = None,
204
204
  cell_box_filelist = None,
205
- filelists = None,
206
205
  n_channels = None,
207
206
  channels_first = True,
208
207
  match_labels=False):
@@ -359,7 +358,7 @@ class CellDataloader():#BaseDataset):
359
358
  if self.dtype == "numpy":
360
359
  self.label_batch = np.zeros((self.batch_size,self.n_labels))
361
360
  elif self.dtype == "torch":
362
- self.label_batch = torch.zeros(self.batch_size,self.n_labels,
361
+ self.label_batch = torch.zeros((self.batch_size,self.n_labels),
363
362
  device = self.gpu_ids)
364
363
  sample = self.image_objects[0]
365
364
  if n_channels is None:
@@ -486,12 +485,16 @@ class CellDataloader():#BaseDataset):
486
485
  im = self.next_im()
487
486
  assert(not isinstance(im,int))
488
487
  if self.dtype == "torch":
488
+ if len(im.size()) == 2 and self.n_channels == 1:
489
+ im = torch.unsqueeze(im,2)
489
490
  self.batch[i,...] = torch.unsqueeze(im,0)
490
491
  if self.channels_first:
491
492
  b = torch.moveaxis(self.batch,-1,1)
492
493
  else:
493
494
  b = self.batch
494
495
  elif self.dtype == "numpy":
496
+ if len(im.shape) == 2 and self.n_channels == 1:
497
+ im = np.expand_dims(im,axis=2)
495
498
  self.batch[i,...] = np.expand_dims(im,axis=0)
496
499
  if self.channels_first:
497
500
  b = np.moveaxis(self.batch,-1,1)
@@ -8,7 +8,7 @@ import numpy as np
8
8
  import torch
9
9
 
10
10
  wd = os.path.dirname(os.path.dirname(os.path.realpath(__file__)))
11
- im_root = os.path.join(os.path.dirname(wd),'cell_data_loader_data')
11
+ im_root = os.path.join(wd,'data')
12
12
  #imfile_svs = os.path.join(im_root,'10447627_1.svs')
13
13
  imfolder1 = os.path.join(im_root,'4173633_5')
14
14
  imfolder2 = os.path.join(im_root,'3368914_4_non_tumor')
@@ -159,21 +159,22 @@ class TestSimple(unittest.TestCase):
159
159
  if not torch.cuda.is_available():
160
160
  print("No available GPU for torch -- skipping")
161
161
  continue
162
- device = torch.cuda.current_device()
162
+ devices = [torch.cuda.device(i) for i in range(torch.cuda.device_count())]
163
163
  elif dtype == "numpy":
164
164
  continue
165
- dataset = CellDataloader(imfolder1,imfolder2,imfolder3,dim=dim,
166
- batch_size=batch_size,dtype=dtype,match_labels=True,
167
- gpu_ids = device)
168
- for x,y in dataset:
169
- if dtype == "torch":
170
- self.assertEquals(device,x.device.index)
171
- self.assertEquals(device,y.device.index)
172
- break
173
- elif dtype == "numpy":
174
- break
175
- else:
176
- break
165
+ for device in devices:
166
+ dataset = CellDataloader(imfolder1,imfolder2,imfolder3,dim=dim,
167
+ batch_size=batch_size,dtype=dtype,match_labels=True,
168
+ gpu_ids = device.idx)
169
+ for x,y in dataset:
170
+ if dtype == "torch":
171
+ self.assertEqual(device.idx,x.device.index)
172
+ self.assertEqual(device.idx,y.device.index)
173
+ break
174
+ elif dtype == "numpy":
175
+ break
176
+ else:
177
+ break
177
178
 
178
179
  if __name__ == "__main__":
179
180
  unittest.main()
@@ -1,60 +0,0 @@
1
- #!/usr/bin/python3
2
-
3
- from src.cell_data_loader import CellDataloader
4
- from keras import tensorflow as tf
5
- import numpy
6
- import os
7
-
8
- def example_numpy():
9
-
10
- """
11
- Replace whese with folders locally on your computer -- script will not work
12
- without new folders.
13
- """
14
- wd = os.path.dirname(os.path.realpath(__file__))
15
- imfolder_test = os.path.join(os.path.dirname(wd),'cell_data_loader_data',
16
- '3368914_4_non_tumor')
17
- imfolder_train = os.path.join(os.path.dirname(wd),'cell_data_loader_data',
18
- '4173633_5')
19
-
20
- model = resnet50()
21
- model = tf.keras.applications.resnet50.ResNet50(
22
- include_top=True,
23
- weights='imagenet',
24
- input_tensor=None,
25
- input_shape=None,
26
- pooling=None,
27
- classes=1000
28
- )
29
-
30
- # Train
31
-
32
- dataloader_train = CellDataloader(imfolder_train,imfolder_test,
33
- dtype="numpy",verbose=False)
34
-
35
- for epoch in range(5):
36
- for image,y in dataloader_train:
37
- #print("image.size(): %s" % str(image.shape))
38
- #print("y.size(): %s" % str(y.shape))
39
- y_pred = y_pred[:,:2]
40
- #print("y_pred.size(): %s" % str(y_pred.shape))
41
- model.fit(y_pred,y)
42
-
43
- # Test
44
-
45
- model.eval()
46
- dataloader_test = CellDataloader(imfolder_test,imfolder_train,dtype="torch",
47
- verbose=False)
48
- total_images = 0
49
- sum_accuracy = 0
50
- for image,y in dataloader_test:
51
- total_images += image.shape[0]
52
- y_pred = model(image)
53
- sum_accuracy += torch.sum(torch.argmax(y_pred,axis=1) == \
54
- torch.argmax(y,axis=1))
55
-
56
- accuracy = sum_accuracy / total_images
57
- #print("Final accuracy: %.4f" % sum_accuracy)
58
-
59
- if __name__ == "__main__":
60
- example_numpy()
@@ -1,60 +0,0 @@
1
- #!/usr/bin/python3
2
-
3
- from src.cell_data_loader import CellDataloader
4
- from torchvision.models import resnet50
5
- import torch
6
- import os
7
-
8
- def example_torch():
9
-
10
- """
11
- Replace whese with folders locally on your computer -- script will not work
12
- without new folders.
13
- """
14
- wd = os.path.dirname(os.path.realpath(__file__))
15
- imfolder_test = os.path.join(os.path.dirname(wd),'cell_data_loader_data',
16
- '3368914_4_non_tumor')
17
- imfolder_train = os.path.join(os.path.dirname(wd),'cell_data_loader_data',
18
- '4173633_5')
19
- model = resnet50()
20
-
21
- # Train
22
-
23
- model.train()
24
- loss_fn = torch.nn.MSELoss(reduction='sum')
25
- optimizer = torch.optim.Adam(model.parameters(), lr=1e-5)
26
- dataloader_train = CellDataloader(imfolder_train,imfolder_test,
27
- dtype="torch",
28
- verbose=False)
29
-
30
- for epoch in range(5):
31
- for image,y in dataloader_train:
32
- #print("image.size(): %s" % str(image.size()))
33
- #print("y.size(): %s" % str(y.size()))
34
- y_pred = model(image)
35
- y_pred = y_pred[:,:2]
36
- #print("y_pred.size(): %s" % str(y_pred.size()))
37
- loss = loss_fn(y_pred, y)
38
- optimizer.zero_grad()
39
- loss.backward()
40
- optimizer.step()
41
-
42
- # Test
43
-
44
- model.eval()
45
-
46
- dataloader_test = CellDataloader(imfolder_test,imfolder_train,dtype="torch",
47
- verbose=False)
48
- total_images = 0
49
- sum_accuracy = 0
50
- for image,y in dataloader_test:
51
- total_images += image.size()[0]
52
- y_pred = model(image)
53
- sum_accuracy += torch.sum(torch.argmax(y_pred,axis=1) == \
54
- torch.argmax(y,axis=1))
55
-
56
- accuracy = sum_accuracy / total_images
57
- #print("Final accuracy: %.4f" % sum_accuracy)
58
-
59
- if __name__ == "__main__":
60
- example_torch()
@@ -1,9 +0,0 @@
1
- #!/bin/bash
2
-
3
- #git init
4
- git add README.md example_numpy.py example_torch.py src tests requirements.txt
5
- git rm src/cell_data_loader/slice_images_out.py src/cell_data_loader/cell_segmenter.py
6
- git commit -m "First commit"
7
- git branch -M main
8
- git remote add origin https://github.com/mleming/CellDataLoader.git
9
- git push -u origin main