AOT-biomaps 2.9.186__py3-none-any.whl → 2.9.294__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.
Potentially problematic release.
This version of AOT-biomaps might be problematic. Click here for more details.
- AOT_biomaps/AOT_Acoustic/StructuredWave.py +2 -2
- AOT_biomaps/AOT_Acoustic/_mainAcoustic.py +11 -6
- AOT_biomaps/AOT_Experiment/Tomography.py +74 -4
- AOT_biomaps/AOT_Experiment/_mainExperiment.py +95 -55
- AOT_biomaps/AOT_Recon/AOT_Optimizers/DEPIERRO.py +48 -13
- AOT_biomaps/AOT_Recon/AOT_Optimizers/LS.py +406 -13
- AOT_biomaps/AOT_Recon/AOT_Optimizers/MAPEM.py +118 -38
- AOT_biomaps/AOT_Recon/AOT_Optimizers/MLEM.py +303 -102
- AOT_biomaps/AOT_Recon/AOT_Optimizers/PDHG.py +443 -12
- AOT_biomaps/AOT_Recon/AOT_PotentialFunctions/RelativeDifferences.py +10 -14
- AOT_biomaps/AOT_Recon/AOT_SparseSMatrix/SparseSMatrix_CSR.py +274 -0
- AOT_biomaps/AOT_Recon/AOT_SparseSMatrix/SparseSMatrix_SELL.py +328 -0
- AOT_biomaps/AOT_Recon/AOT_SparseSMatrix/__init__.py +2 -0
- AOT_biomaps/AOT_Recon/AOT_biomaps_kernels.cubin +0 -0
- AOT_biomaps/AOT_Recon/AlgebraicRecon.py +243 -113
- AOT_biomaps/AOT_Recon/AnalyticRecon.py +26 -41
- AOT_biomaps/AOT_Recon/BayesianRecon.py +81 -146
- AOT_biomaps/AOT_Recon/PrimalDualRecon.py +157 -94
- AOT_biomaps/AOT_Recon/ReconEnums.py +27 -2
- AOT_biomaps/AOT_Recon/ReconTools.py +229 -12
- AOT_biomaps/AOT_Recon/__init__.py +1 -0
- AOT_biomaps/AOT_Recon/_mainRecon.py +60 -53
- AOT_biomaps/__init__.py +4 -69
- {aot_biomaps-2.9.186.dist-info → aot_biomaps-2.9.294.dist-info}/METADATA +2 -1
- aot_biomaps-2.9.294.dist-info/RECORD +47 -0
- aot_biomaps-2.9.186.dist-info/RECORD +0 -43
- {aot_biomaps-2.9.186.dist-info → aot_biomaps-2.9.294.dist-info}/WHEEL +0 -0
- {aot_biomaps-2.9.186.dist-info → aot_biomaps-2.9.294.dist-info}/top_level.txt +0 -0
|
@@ -10,7 +10,7 @@ from abc import ABC, abstractmethod
|
|
|
10
10
|
|
|
11
11
|
|
|
12
12
|
class Recon(ABC):
|
|
13
|
-
def __init__(self, experiment, saveDir = None, isGPU = config.get_process() == 'gpu',
|
|
13
|
+
def __init__(self, experiment, saveDir = None, isGPU = config.get_process() == 'gpu', isMultiCPU = True):
|
|
14
14
|
self.reconPhantom = None
|
|
15
15
|
self.reconLaser = None
|
|
16
16
|
self.experiment = experiment
|
|
@@ -21,7 +21,6 @@ class Recon(ABC):
|
|
|
21
21
|
self.CRC = None
|
|
22
22
|
|
|
23
23
|
self.isGPU = isGPU
|
|
24
|
-
self.isMultiGPU = isMultiGPU
|
|
25
24
|
self.isMultiCPU = isMultiCPU
|
|
26
25
|
|
|
27
26
|
if str(type(self.experiment)) != str(Tomography):
|
|
@@ -31,7 +30,7 @@ class Recon(ABC):
|
|
|
31
30
|
def run(self,withTumor = True):
|
|
32
31
|
pass
|
|
33
32
|
|
|
34
|
-
def save(self, withTumor=True, overwrite=False, date=None):
|
|
33
|
+
def save(self, withTumor=True, overwrite=False, date=None, show_logs=True):
|
|
35
34
|
"""
|
|
36
35
|
Save the reconstruction results (reconPhantom is with tumor, reconLaser is without tumor) and indices of the saved recon results, in numpy format.
|
|
37
36
|
|
|
@@ -62,7 +61,8 @@ class Recon(ABC):
|
|
|
62
61
|
filepathIndices = os.path.join(filepath, "indices.npy")
|
|
63
62
|
np.save(filepathIndices, np.array(self.indices))
|
|
64
63
|
|
|
65
|
-
|
|
64
|
+
if show_logs:
|
|
65
|
+
print(f"Reconstruction results saved to {os.path.dirname(filepath)}")
|
|
66
66
|
|
|
67
67
|
@abstractmethod
|
|
68
68
|
def checkExistingFile(self, date = None):
|
|
@@ -165,10 +165,9 @@ class Recon(ABC):
|
|
|
165
165
|
data_range = theta.max() - theta.min()
|
|
166
166
|
ssim_value = ssim(self.experiment.OpticImage.phantom, theta, data_range=data_range)
|
|
167
167
|
self.SSIM.append(ssim_value)
|
|
168
|
-
|
|
169
|
-
def show(self, withTumor=True, savePath=None):
|
|
170
|
-
fig, axs = plt.subplots(1, 2, figsize=(20, 10))
|
|
168
|
+
|
|
171
169
|
|
|
170
|
+
def show(self, withTumor=True, savePath=None):
|
|
172
171
|
if withTumor:
|
|
173
172
|
if self.reconPhantom is None or self.reconPhantom == []:
|
|
174
173
|
raise ValueError("Reconstructed phantom with tumor is empty. Run reconstruction first.")
|
|
@@ -176,9 +175,31 @@ class Recon(ABC):
|
|
|
176
175
|
image = self.reconPhantom[-1]
|
|
177
176
|
else:
|
|
178
177
|
image = self.reconPhantom
|
|
179
|
-
|
|
178
|
+
if self.experiment.OpticImage is None:
|
|
179
|
+
fig, axs = plt.subplots(1, 1, figsize=(10, 10))
|
|
180
|
+
else:
|
|
181
|
+
fig, axs = plt.subplots(1, 2, figsize=(20, 10))
|
|
182
|
+
# Phantom original
|
|
183
|
+
im1 = axs[1].imshow(
|
|
184
|
+
self.experiment.OpticImage.phantom,
|
|
185
|
+
cmap='hot',
|
|
186
|
+
vmin=0,
|
|
187
|
+
vmax=1,
|
|
188
|
+
extent=(
|
|
189
|
+
self.experiment.params.general['Xrange'][0],
|
|
190
|
+
self.experiment.params.general['Xrange'][1],
|
|
191
|
+
self.experiment.params.general['Zrange'][1],
|
|
192
|
+
self.experiment.params.general['Zrange'][0]
|
|
193
|
+
),
|
|
194
|
+
aspect='equal'
|
|
195
|
+
)
|
|
196
|
+
axs[1].set_title("Phantom with tumor")
|
|
197
|
+
axs[1].set_xlabel("x (mm)", fontsize=12)
|
|
198
|
+
axs[1].set_ylabel("z (mm)", fontsize=12)
|
|
199
|
+
axs[1].tick_params(axis='both', which='major', labelsize=8)
|
|
200
|
+
# Phantom reconstruit
|
|
180
201
|
im0 = axs[0].imshow(
|
|
181
|
-
|
|
202
|
+
image,
|
|
182
203
|
cmap='hot',
|
|
183
204
|
vmin=0,
|
|
184
205
|
vmax=1,
|
|
@@ -190,29 +211,11 @@ class Recon(ABC):
|
|
|
190
211
|
),
|
|
191
212
|
aspect='equal'
|
|
192
213
|
)
|
|
193
|
-
axs[0].set_title("
|
|
214
|
+
axs[0].set_title("Reconstructed phantom with tumor")
|
|
194
215
|
axs[0].set_xlabel("x (mm)", fontsize=12)
|
|
195
216
|
axs[0].set_ylabel("z (mm)", fontsize=12)
|
|
196
217
|
axs[0].tick_params(axis='both', which='major', labelsize=8)
|
|
197
|
-
|
|
198
|
-
im1 = axs[1].imshow(
|
|
199
|
-
image,
|
|
200
|
-
cmap='hot',
|
|
201
|
-
vmin=0,
|
|
202
|
-
vmax=1,
|
|
203
|
-
extent=(
|
|
204
|
-
self.experiment.params.general['Xrange'][0],
|
|
205
|
-
self.experiment.params.general['Xrange'][1],
|
|
206
|
-
self.experiment.params.general['Zrange'][1],
|
|
207
|
-
self.experiment.params.general['Zrange'][0]
|
|
208
|
-
),
|
|
209
|
-
aspect='equal'
|
|
210
|
-
)
|
|
211
|
-
axs[1].set_title("Reconstructed phantom with tumor")
|
|
212
|
-
axs[1].set_xlabel("x (mm)", fontsize=12)
|
|
213
|
-
axs[1].set_ylabel("z (mm)", fontsize=12)
|
|
214
|
-
axs[1].tick_params(axis='both', which='major', labelsize=8)
|
|
215
|
-
axs[1].tick_params(axis='y', which='both', left=False, right=False, labelleft=False)
|
|
218
|
+
axs[0].tick_params(axis='y', which='both', left=False, right=False, labelleft=False)
|
|
216
219
|
else:
|
|
217
220
|
if self.reconLaser is None or self.reconLaser == []:
|
|
218
221
|
raise ValueError("Reconstructed laser without tumor is empty. Run reconstruction first.")
|
|
@@ -220,9 +223,31 @@ class Recon(ABC):
|
|
|
220
223
|
image = self.reconLaser[-1]
|
|
221
224
|
else:
|
|
222
225
|
image = self.reconLaser
|
|
223
|
-
|
|
226
|
+
if self.experiment.OpticImage is None:
|
|
227
|
+
fig, axs = plt.subplots(1, 1, figsize=(10, 10))
|
|
228
|
+
else:
|
|
229
|
+
fig, axs = plt.subplots(1, 2, figsize=(20, 10))
|
|
230
|
+
# Laser original
|
|
231
|
+
im1 = axs[1].imshow(
|
|
232
|
+
self.experiment.OpticImage.laser.intensity,
|
|
233
|
+
cmap='hot',
|
|
234
|
+
vmin=0,
|
|
235
|
+
vmax=np.max(self.experiment.OpticImage.laser.intensity),
|
|
236
|
+
extent=(
|
|
237
|
+
self.experiment.params.general['Xrange'][0],
|
|
238
|
+
self.experiment.params.general['Xrange'][1],
|
|
239
|
+
self.experiment.params.general['Zrange'][1],
|
|
240
|
+
self.experiment.params.general['Zrange'][0]
|
|
241
|
+
),
|
|
242
|
+
aspect='equal'
|
|
243
|
+
)
|
|
244
|
+
axs[1].set_title("Laser without tumor")
|
|
245
|
+
axs[1].set_xlabel("x (mm)", fontsize=12)
|
|
246
|
+
axs[1].set_ylabel("z (mm)", fontsize=12)
|
|
247
|
+
axs[1].tick_params(axis='both', which='major', labelsize=8)
|
|
248
|
+
# Laser reconstruit
|
|
224
249
|
im0 = axs[0].imshow(
|
|
225
|
-
|
|
250
|
+
image,
|
|
226
251
|
cmap='hot',
|
|
227
252
|
vmin=0,
|
|
228
253
|
vmax=np.max(self.experiment.OpticImage.laser.intensity),
|
|
@@ -232,36 +257,18 @@ class Recon(ABC):
|
|
|
232
257
|
self.experiment.params.general['Zrange'][1],
|
|
233
258
|
self.experiment.params.general['Zrange'][0]
|
|
234
259
|
),
|
|
235
|
-
aspect='equal'
|
|
260
|
+
aspect='equal'
|
|
236
261
|
)
|
|
237
|
-
axs[0].set_title("
|
|
262
|
+
axs[0].set_title("Reconstructed laser without tumor")
|
|
238
263
|
axs[0].set_xlabel("x (mm)", fontsize=12)
|
|
239
264
|
axs[0].set_ylabel("z (mm)", fontsize=12)
|
|
240
265
|
axs[0].tick_params(axis='both', which='major', labelsize=8)
|
|
241
|
-
|
|
242
|
-
im1 = axs[1].imshow(
|
|
243
|
-
image,
|
|
244
|
-
cmap='hot',
|
|
245
|
-
vmin=0,
|
|
246
|
-
vmax=np.max(self.experiment.OpticImage.laser.intensity),
|
|
247
|
-
extent=(
|
|
248
|
-
self.experiment.params.general['Xrange'][0],
|
|
249
|
-
self.experiment.params.general['Xrange'][1],
|
|
250
|
-
self.experiment.params.general['Zrange'][1],
|
|
251
|
-
self.experiment.params.general['Zrange'][0]
|
|
252
|
-
),
|
|
253
|
-
aspect='equal'
|
|
254
|
-
)
|
|
255
|
-
axs[1].set_title("Reconstructed laser without tumor")
|
|
256
|
-
axs[1].set_xlabel("x (mm)", fontsize=12)
|
|
257
|
-
axs[1].set_ylabel("z (mm)", fontsize=12)
|
|
258
|
-
axs[1].tick_params(axis='both', which='major', labelsize=8)
|
|
259
|
-
axs[1].tick_params(axis='y', which='both', left=False, right=False, labelleft=False)
|
|
266
|
+
axs[0].tick_params(axis='y', which='both', left=False, right=False, labelleft=False)
|
|
260
267
|
|
|
261
268
|
# Colorbar commune
|
|
262
269
|
fig.subplots_adjust(bottom=0.2)
|
|
263
270
|
cbar_ax = fig.add_axes([0.25, 0.08, 0.5, 0.03])
|
|
264
|
-
cbar = fig.colorbar(
|
|
271
|
+
cbar = fig.colorbar(im0, cax=cbar_ax, orientation='horizontal')
|
|
265
272
|
cbar.set_label('Normalized Intensity', fontsize=12)
|
|
266
273
|
cbar.ax.tick_params(labelsize=8)
|
|
267
274
|
|
AOT_biomaps/__init__.py
CHANGED
|
@@ -74,6 +74,9 @@ from .AOT_Recon.AOT_Optimizers.DEPIERRO import *
|
|
|
74
74
|
from .AOT_Recon.AOT_Optimizers.MAPEM import *
|
|
75
75
|
from .AOT_Recon.AOT_Optimizers.MLEM import *
|
|
76
76
|
from .AOT_Recon.AOT_Optimizers.PDHG import *
|
|
77
|
+
# SPARSE S-MATRIX
|
|
78
|
+
from .AOT_Recon.AOT_SparseSMatrix.SparseSMatrix_CSR import *
|
|
79
|
+
from .AOT_Recon.AOT_SparseSMatrix.SparseSMatrix_SELL import *
|
|
77
80
|
# POTENTIAL FUNCTIONS
|
|
78
81
|
from .AOT_Recon.AOT_PotentialFunctions.Huber import *
|
|
79
82
|
from .AOT_Recon.AOT_PotentialFunctions.Quadratic import *
|
|
@@ -82,7 +85,7 @@ from .AOT_Recon.AOT_PotentialFunctions.RelativeDifferences import *
|
|
|
82
85
|
from .Config import config
|
|
83
86
|
from .Settings import *
|
|
84
87
|
|
|
85
|
-
__version__ = '2.9.
|
|
88
|
+
__version__ = '2.9.294'
|
|
86
89
|
__process__ = config.get_process()
|
|
87
90
|
|
|
88
91
|
def initialize(process=None):
|
|
@@ -135,74 +138,6 @@ def initialize(process=None):
|
|
|
135
138
|
|
|
136
139
|
|
|
137
140
|
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
141
|
|
|
207
142
|
|
|
208
143
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: AOT_biomaps
|
|
3
|
-
Version: 2.9.
|
|
3
|
+
Version: 2.9.294
|
|
4
4
|
Summary: Acousto-Optic Tomography
|
|
5
5
|
Home-page: https://github.com/LucasDuclos/AcoustoOpticTomography
|
|
6
6
|
Author: Lucas Duclos
|
|
@@ -15,6 +15,7 @@ Requires-Dist: nvidia-ml-py3==7.352.0
|
|
|
15
15
|
Requires-Dist: numpy==1.26.4
|
|
16
16
|
Requires-Dist: torch==2.7.0
|
|
17
17
|
Requires-Dist: scipy==1.13.1
|
|
18
|
+
Requires-Dist: cupy-cuda12x==13.6.0
|
|
18
19
|
Dynamic: author
|
|
19
20
|
Dynamic: author-email
|
|
20
21
|
Dynamic: home-page
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
AOT_biomaps/Config.py,sha256=ghEOP1n8aO1pR-su13wMeAZAxZRfry5hH67NbtZ8SqI,3614
|
|
2
|
+
AOT_biomaps/Settings.py,sha256=v8fPhnvvcfBJP29m1RLOTEr3jndGLGwbUiORXmsj2Bo,2853
|
|
3
|
+
AOT_biomaps/__init__.py,sha256=86X2xRJNI72niePVEmyZMqO0Y4vQeag7ZSHPM3kc4Pk,4250
|
|
4
|
+
AOT_biomaps/AOT_Acoustic/AcousticEnums.py,sha256=s5kXa6jKzbS4btwbubrVcynLOr0yg5tth5vL_FGfbMk,1802
|
|
5
|
+
AOT_biomaps/AOT_Acoustic/AcousticTools.py,sha256=al7xXKMY5e-qQQ7nrQVPVAmqYiB320OluNlY6ti8iKc,7539
|
|
6
|
+
AOT_biomaps/AOT_Acoustic/FocusedWave.py,sha256=3kGKKDx_3Msy5COYqIwzROPORGWvNjw8UsDanBfkMXE,11037
|
|
7
|
+
AOT_biomaps/AOT_Acoustic/IrregularWave.py,sha256=yZhtxkR6zlciRcEpdTR0BAhvgQl40XHKFaF8f4VXarE,3035
|
|
8
|
+
AOT_biomaps/AOT_Acoustic/PlaneWave.py,sha256=xza-rj5AUWDecLkGDxRcULrwZVWeBvGnEP2d51TyR04,1447
|
|
9
|
+
AOT_biomaps/AOT_Acoustic/StructuredWave.py,sha256=jTLVlOhYLWJb5MxZPxhq3OFVlz2McoyMPBmfLvnekDU,18209
|
|
10
|
+
AOT_biomaps/AOT_Acoustic/__init__.py,sha256=t9M2rRqa_L9pk7W2FeELTkHEMuP4DBr4gBRldMqsQbg,491
|
|
11
|
+
AOT_biomaps/AOT_Acoustic/_mainAcoustic.py,sha256=RdmhRF1i0KAlpsP7_wnZ7F4J27br3eUc4XR91Qq7C64,44158
|
|
12
|
+
AOT_biomaps/AOT_Experiment/Focus.py,sha256=B2nBawmv-NG2AWJx9zgQ8GlN6aFB9FwTSqX-M-phKXg,3193
|
|
13
|
+
AOT_biomaps/AOT_Experiment/Tomography.py,sha256=Ri83b4GMrxJO60qWsK9JInS9a7HU2Q8uqpjD3Xkl9OY,24488
|
|
14
|
+
AOT_biomaps/AOT_Experiment/__init__.py,sha256=H9zMLeBLA6uhbaHohAa-2u5mDDxqJi8oE5c6tShdQp8,308
|
|
15
|
+
AOT_biomaps/AOT_Experiment/_mainExperiment.py,sha256=zSfuNrsz7nhiKrGIdK6CAXjlI2T6qYC5-JXHFgPNzhc,24674
|
|
16
|
+
AOT_biomaps/AOT_Optic/Absorber.py,sha256=jEodzRy7gkEH-wbazVasRQiri0dU16BfapmR-qnTSvM,867
|
|
17
|
+
AOT_biomaps/AOT_Optic/Laser.py,sha256=uzQwxswjU0kZWix3CmZLoWmhsBa3VhN27STprNv-xB8,2986
|
|
18
|
+
AOT_biomaps/AOT_Optic/OpticEnums.py,sha256=b349_JyjHqQohmjK4Wke-A_HLGaqb3_BKbyUqFC4jxY,499
|
|
19
|
+
AOT_biomaps/AOT_Optic/__init__.py,sha256=HSUVhfz0NzwHHZZ9KP9Xyfu33IgP_rYJX86J-gEROlo,321
|
|
20
|
+
AOT_biomaps/AOT_Optic/_mainOptic.py,sha256=Wk63CcgWbU-ygMfjNK80islaUbGGJpTXgZY3_C2KQNY,8179
|
|
21
|
+
AOT_biomaps/AOT_Recon/AOT_biomaps_kernels.cubin,sha256=Li4HdWpr65ONf82FqFAjZ8w3ob9UuJucDWGAAvBF77Q,83680
|
|
22
|
+
AOT_biomaps/AOT_Recon/AlgebraicRecon.py,sha256=CGBXZyYEZ3TOTFOKSt-h7NGuFbuI9PNr3YTWTbSLxDo,46832
|
|
23
|
+
AOT_biomaps/AOT_Recon/AnalyticRecon.py,sha256=RaQ5AJ1HUmSct0BgjZ0GWSJg7SALCn3Q0laqj1yyhAE,7123
|
|
24
|
+
AOT_biomaps/AOT_Recon/BayesianRecon.py,sha256=RnnPa-tTcvirwiNPnCRZnSM4NWeEEltYET-piBbp34g,12671
|
|
25
|
+
AOT_biomaps/AOT_Recon/DeepLearningRecon.py,sha256=RfVcEsi4GeGqJn0_SPxwQPQx6IQjin79WKh2UarMRLI,1383
|
|
26
|
+
AOT_biomaps/AOT_Recon/PrimalDualRecon.py,sha256=JbFhxiyUoSTnlJgHbOWIfUUwhwfZoi39RJMnfkagegY,16504
|
|
27
|
+
AOT_biomaps/AOT_Recon/ReconEnums.py,sha256=KAf55RqHAr2ilt6pxFrUBGQOn-7HA8NP6TyL-1FNiXo,19714
|
|
28
|
+
AOT_biomaps/AOT_Recon/ReconTools.py,sha256=A4IQV7IETu9MgYr7hjLNPTImzjf8CEU4cZ2e0EgJNWA,19878
|
|
29
|
+
AOT_biomaps/AOT_Recon/__init__.py,sha256=xs_argJqXKFl76xP7-jiUc1ynOEEtY7XZ0gDxD5uVZc,246
|
|
30
|
+
AOT_biomaps/AOT_Recon/_mainRecon.py,sha256=exoa2UBMfMHjemxAU9dW0mhEfsP6Oe1qjSfrTrgbIcY,13125
|
|
31
|
+
AOT_biomaps/AOT_Recon/AOT_Optimizers/DEPIERRO.py,sha256=qA1n722GLQJH3V8HcLr5q_GxEwBS_NRlIT3E6JZk-Ag,9479
|
|
32
|
+
AOT_biomaps/AOT_Recon/AOT_Optimizers/LS.py,sha256=bCu1rKzFXPbYQ7jV3L3E_jVQpb6LIEC5MIlN1-mCNdY,22814
|
|
33
|
+
AOT_biomaps/AOT_Recon/AOT_Optimizers/MAPEM.py,sha256=vQLCB0L4FSXJKn2_6kdIdWrI6WZ82KuqUh7CSqBGVuo,25766
|
|
34
|
+
AOT_biomaps/AOT_Recon/AOT_Optimizers/MLEM.py,sha256=v5wITKacemu_hY391-cZDSpw4R95XqyLGivQWa-gOOc,21254
|
|
35
|
+
AOT_biomaps/AOT_Recon/AOT_Optimizers/PDHG.py,sha256=oSojwug5mcZedKOWAV7YPMlCp0Qy_Aed0fjHRuyZWpo,28622
|
|
36
|
+
AOT_biomaps/AOT_Recon/AOT_Optimizers/__init__.py,sha256=tNGVulINaqQZzcs5cvCMAT5ypGdoFWRnxtl9y7ePECk,106
|
|
37
|
+
AOT_biomaps/AOT_Recon/AOT_PotentialFunctions/Huber.py,sha256=dRd1t5OBag_gVmfji3L0QrA1GJ_702LcCkLH32Bot0M,3285
|
|
38
|
+
AOT_biomaps/AOT_Recon/AOT_PotentialFunctions/Quadratic.py,sha256=wTbzcXxMdEl9ReEXrL43DOJQecokBwJYU_s2kQUASZY,2545
|
|
39
|
+
AOT_biomaps/AOT_Recon/AOT_PotentialFunctions/RelativeDifferences.py,sha256=ZlWaKsNPCMfy4fWxYFT2pSoKMbysQkJH4N1WbbWncq4,2493
|
|
40
|
+
AOT_biomaps/AOT_Recon/AOT_PotentialFunctions/__init__.py,sha256=RwrJdLOFbAFBFnRxo5xdlOyeZgtQRDaRWDN9-uCGUiY,84
|
|
41
|
+
AOT_biomaps/AOT_Recon/AOT_SparseSMatrix/SparseSMatrix_CSR.py,sha256=RACc2P5oxmp0uPLAGnNj9mEtAxa_OlepNgCawKij3jI,12062
|
|
42
|
+
AOT_biomaps/AOT_Recon/AOT_SparseSMatrix/SparseSMatrix_SELL.py,sha256=WTqHBeglUxRx-jy6CcoETgqYSSHYTwi2zR5NrJcPXGU,14449
|
|
43
|
+
AOT_biomaps/AOT_Recon/AOT_SparseSMatrix/__init__.py,sha256=8nou-hqjQjuCTLhoL5qv4EM_lMPFviAZAZKSPhi84jE,67
|
|
44
|
+
aot_biomaps-2.9.294.dist-info/METADATA,sha256=8c8tnkhnARdI6acSPSrB1FQloxgjuoNHKslkkgIq7xM,700
|
|
45
|
+
aot_biomaps-2.9.294.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
46
|
+
aot_biomaps-2.9.294.dist-info/top_level.txt,sha256=6STF-lT4kaAnBHJYCripmN5mZABoHjMuY689JdiDphk,12
|
|
47
|
+
aot_biomaps-2.9.294.dist-info/RECORD,,
|
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
AOT_biomaps/Config.py,sha256=ghEOP1n8aO1pR-su13wMeAZAxZRfry5hH67NbtZ8SqI,3614
|
|
2
|
-
AOT_biomaps/Settings.py,sha256=v8fPhnvvcfBJP29m1RLOTEr3jndGLGwbUiORXmsj2Bo,2853
|
|
3
|
-
AOT_biomaps/__init__.py,sha256=Do2yZDpPCTLSkc3c8N_PXUsI-93MG7hfYvmhEmutaos,4242
|
|
4
|
-
AOT_biomaps/AOT_Acoustic/AcousticEnums.py,sha256=s5kXa6jKzbS4btwbubrVcynLOr0yg5tth5vL_FGfbMk,1802
|
|
5
|
-
AOT_biomaps/AOT_Acoustic/AcousticTools.py,sha256=al7xXKMY5e-qQQ7nrQVPVAmqYiB320OluNlY6ti8iKc,7539
|
|
6
|
-
AOT_biomaps/AOT_Acoustic/FocusedWave.py,sha256=3kGKKDx_3Msy5COYqIwzROPORGWvNjw8UsDanBfkMXE,11037
|
|
7
|
-
AOT_biomaps/AOT_Acoustic/IrregularWave.py,sha256=yZhtxkR6zlciRcEpdTR0BAhvgQl40XHKFaF8f4VXarE,3035
|
|
8
|
-
AOT_biomaps/AOT_Acoustic/PlaneWave.py,sha256=xza-rj5AUWDecLkGDxRcULrwZVWeBvGnEP2d51TyR04,1447
|
|
9
|
-
AOT_biomaps/AOT_Acoustic/StructuredWave.py,sha256=LlHBxGYmTsM1gQVaJXlUxIOsqg6zTIPBAZK46v3UUiE,18205
|
|
10
|
-
AOT_biomaps/AOT_Acoustic/__init__.py,sha256=t9M2rRqa_L9pk7W2FeELTkHEMuP4DBr4gBRldMqsQbg,491
|
|
11
|
-
AOT_biomaps/AOT_Acoustic/_mainAcoustic.py,sha256=YZK5KnG60CyHlQaxYg-J4tGVY3SzJPB4t8uvNwU1HMI,43934
|
|
12
|
-
AOT_biomaps/AOT_Experiment/Focus.py,sha256=B2nBawmv-NG2AWJx9zgQ8GlN6aFB9FwTSqX-M-phKXg,3193
|
|
13
|
-
AOT_biomaps/AOT_Experiment/Tomography.py,sha256=H3DZKSzoGZlV9gEpRyCgIW7KPn-qZn3V2RTmf6DUrmE,20901
|
|
14
|
-
AOT_biomaps/AOT_Experiment/__init__.py,sha256=H9zMLeBLA6uhbaHohAa-2u5mDDxqJi8oE5c6tShdQp8,308
|
|
15
|
-
AOT_biomaps/AOT_Experiment/_mainExperiment.py,sha256=SbDmSNQoNS5G0-QwpV94KeV6XtdN5xzfFCnQPQWrH1Y,21891
|
|
16
|
-
AOT_biomaps/AOT_Optic/Absorber.py,sha256=jEodzRy7gkEH-wbazVasRQiri0dU16BfapmR-qnTSvM,867
|
|
17
|
-
AOT_biomaps/AOT_Optic/Laser.py,sha256=uzQwxswjU0kZWix3CmZLoWmhsBa3VhN27STprNv-xB8,2986
|
|
18
|
-
AOT_biomaps/AOT_Optic/OpticEnums.py,sha256=b349_JyjHqQohmjK4Wke-A_HLGaqb3_BKbyUqFC4jxY,499
|
|
19
|
-
AOT_biomaps/AOT_Optic/__init__.py,sha256=HSUVhfz0NzwHHZZ9KP9Xyfu33IgP_rYJX86J-gEROlo,321
|
|
20
|
-
AOT_biomaps/AOT_Optic/_mainOptic.py,sha256=Wk63CcgWbU-ygMfjNK80islaUbGGJpTXgZY3_C2KQNY,8179
|
|
21
|
-
AOT_biomaps/AOT_Recon/AlgebraicRecon.py,sha256=sMuH3Sg5OOzcVUoOHtaeyrq3BNK5lNcuS_WkqcDppME,38696
|
|
22
|
-
AOT_biomaps/AOT_Recon/AnalyticRecon.py,sha256=vjeTUnaZrtnLHnx6goseeJsd165KbSugQYwUXJFXapU,7596
|
|
23
|
-
AOT_biomaps/AOT_Recon/BayesianRecon.py,sha256=iAaAn9nwkvJ3Ilip_y2ywDKShpcbWzHATznmF84mNrQ,16844
|
|
24
|
-
AOT_biomaps/AOT_Recon/DeepLearningRecon.py,sha256=RfVcEsi4GeGqJn0_SPxwQPQx6IQjin79WKh2UarMRLI,1383
|
|
25
|
-
AOT_biomaps/AOT_Recon/PrimalDualRecon.py,sha256=iJPXUjxvvrIJVp6bo-W87T8ZXJneRmejt-SEjKQPPC0,9451
|
|
26
|
-
AOT_biomaps/AOT_Recon/ReconEnums.py,sha256=oyT9qIfEpE_ChPQihM8-6b0UOtNmuE4weUpO8lJCB38,18641
|
|
27
|
-
AOT_biomaps/AOT_Recon/ReconTools.py,sha256=dz0ZmyT5ggJEaBXJJS7WbsWpj0fTa2rZqym_qdQ2hbk,10610
|
|
28
|
-
AOT_biomaps/AOT_Recon/__init__.py,sha256=LDbNpsjS8_TJrXMKzkpzSAj5trVuCW57AWQaJBrzd0I,244
|
|
29
|
-
AOT_biomaps/AOT_Recon/_mainRecon.py,sha256=2Mv0hC4wGq0-fwQL7xkGFXr-VunnPq4nfLpaPdUvHGg,12682
|
|
30
|
-
AOT_biomaps/AOT_Recon/AOT_Optimizers/DEPIERRO.py,sha256=Oc5Z_G2EGctN4y1NNmZMBF6kzPnaaCjjLr32ecHTVoo,8012
|
|
31
|
-
AOT_biomaps/AOT_Recon/AOT_Optimizers/LS.py,sha256=DOaNHmyQNXBG2JbYpprKtoX9bnRT0DL_faKQqH1LNrs,4020
|
|
32
|
-
AOT_biomaps/AOT_Recon/AOT_Optimizers/MAPEM.py,sha256=suH4bNq_DN7pZYOyV2kESAaFKA6guyxv1NoRQJbdkMc,22818
|
|
33
|
-
AOT_biomaps/AOT_Recon/AOT_Optimizers/MLEM.py,sha256=QIowCEeTetIkxMeB-fe32vbamTXHNT2ycvVofgdun6U,11805
|
|
34
|
-
AOT_biomaps/AOT_Recon/AOT_Optimizers/PDHG.py,sha256=TGN_QLYr4k47ZGRMvcWsLbqjRqFOWm2y97-hFhvmv6k,7930
|
|
35
|
-
AOT_biomaps/AOT_Recon/AOT_Optimizers/__init__.py,sha256=tNGVulINaqQZzcs5cvCMAT5ypGdoFWRnxtl9y7ePECk,106
|
|
36
|
-
AOT_biomaps/AOT_Recon/AOT_PotentialFunctions/Huber.py,sha256=dRd1t5OBag_gVmfji3L0QrA1GJ_702LcCkLH32Bot0M,3285
|
|
37
|
-
AOT_biomaps/AOT_Recon/AOT_PotentialFunctions/Quadratic.py,sha256=wTbzcXxMdEl9ReEXrL43DOJQecokBwJYU_s2kQUASZY,2545
|
|
38
|
-
AOT_biomaps/AOT_Recon/AOT_PotentialFunctions/RelativeDifferences.py,sha256=dgB3Vt40S5D1VerHr-h-YnzB5xNCt6amE19-C0zyIpU,2253
|
|
39
|
-
AOT_biomaps/AOT_Recon/AOT_PotentialFunctions/__init__.py,sha256=RwrJdLOFbAFBFnRxo5xdlOyeZgtQRDaRWDN9-uCGUiY,84
|
|
40
|
-
aot_biomaps-2.9.186.dist-info/METADATA,sha256=F11c7iL4j3-23XzvqCybInryycDDpyEUmRuY_W8Zz7c,663
|
|
41
|
-
aot_biomaps-2.9.186.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
42
|
-
aot_biomaps-2.9.186.dist-info/top_level.txt,sha256=6STF-lT4kaAnBHJYCripmN5mZABoHjMuY689JdiDphk,12
|
|
43
|
-
aot_biomaps-2.9.186.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|