Skip to content

Commit 6524473

Browse files
committed
updated script
1 parent ed97339 commit 6524473

File tree

1 file changed

+40
-9
lines changed

1 file changed

+40
-9
lines changed

calibration/sim_modulation_depth_from_beads.py

Lines changed: 40 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -21,11 +21,11 @@
2121
import localize_psf.rois as roi_fns
2222
import localize_psf.localize as localize
2323

24-
24+
use_gpu = False
2525
tstamp = datetime.datetime.now().strftime("%Y_%m_%d_%H;%M;%S")
2626

2727
# data files
28-
data_dirs = [Path(r"G:\2022_07_07\07_sim_calibration_0.2um_beads")]
28+
data_dirs = [Path(r"I:\2022_07_07\07_sim_calibration_0.2um_beads")]
2929

3030
# color channel information
3131
ignore_color = [False, False, False]
@@ -138,11 +138,18 @@
138138

139139
# identify beads in first image
140140
coords, fit_results, imgs_filtered = \
141-
localize.localize_beads(img_middle_wf, dxy, dz, min_fit_amp[ic], roi_size=roi_size,
142-
filter_sigma_small=filters_small_sigma, filter_sigma_large=filters_large_sigma,
141+
localize.localize_beads(img_middle_wf,
142+
dxy,
143+
dz,
144+
min_fit_amp[ic],
145+
roi_size=roi_size,
146+
filter_sigma_small=filters_small_sigma,
147+
filter_sigma_large=filters_large_sigma,
143148
min_spot_sep=min_spot_sep,
144-
dist_boundary_min=min_boundary_distance, sigma_bounds=sigma_bounds,
145-
fit_amp_min=min_fit_amp[ic])
149+
dist_boundary_min=min_boundary_distance,
150+
sigma_bounds=sigma_bounds,
151+
fit_amp_min=min_fit_amp[ic],
152+
use_gpu_fit=use_gpu)
146153

147154
fps_temp = fit_results["fit_params"]
148155
ips_temp = fit_results["init_params"]
@@ -237,13 +244,37 @@
237244

238245
# do fitting
239246
# todo: fitting on gpu not working ... not sure if the problem is the fixed parameters or something else
240-
fps[ic][:, it, iz, ia, ip, :], fit_states, chi_sqrs, niters, fit_t = \
241-
localize.fit_rois(img_rois, coords_rois, fps_start[ic], fixed_params=fixed_params, use_gpu=False) #, use_gpu=False #, debug=True)
247+
fit_results = localize.fit_rois(img_rois,
248+
coords_rois,
249+
fps_start[ic],
250+
fixed_params=fixed_params,
251+
use_gpu=use_gpu)
252+
253+
fps[ic][:, it, iz, ia, ip, :] = fit_results["fit_params"]
254+
chi_sqrs = fit_results["chi_sqrs"]
255+
niters = fit_results["niters"]
256+
fit_states = fit_results["fit_states"]
257+
fit_states_key = fit_results["fit_states_key"]
258+
259+
def get_key(code):
260+
msg = "message not found"
261+
for k, v in fit_states_key.items():
262+
if code == v:
263+
msg = k
264+
break
265+
return msg
242266

243267
for aaa in range(np.min([nrois_to_plot, len(fps_start[ic])])):
244-
localize.plot_gauss_roi(fps[ic][aaa, it, iz, ia, ip], rois[ic][aaa], imgs_now,
268+
str = f"fit iters={niters[aaa]:d}" \
269+
f" with result '{get_key(fit_states[aaa]):s}', and " \
270+
f"chi squared = {chi_sqrs[aaa]:.1g}"
271+
272+
localize.plot_gauss_roi(fps[ic][aaa, it, iz, ia, ip],
273+
rois[ic][aaa],
274+
imgs_now,
245275
coords,
246276
init_params=fps_start[ic][aaa],
277+
string=str,
247278
prefix=f"roi={aaa:d}_ic={ic:d}_iz={iz:d}_it={it:d}_ia={ia:d}_ip={ip:d}_",
248279
save_dir=roi_save_dir)
249280

0 commit comments

Comments
 (0)