mehta-lab / waveorder

Wave optical models and inverse algorithms for label-agnostic imaging of density & orientation.
BSD 3-Clause "New" or "Revised" License
15 stars 4 forks source link

Update a single PTI example notebook #159

Closed talonchandler closed 7 months ago

talonchandler commented 7 months ago

This PR updates a single example notebook PTI_Experiment_Recon3D_anisotropic_target_small.ipynb so that it runs with the latest version of the waveorder. It requires a 500 MB download and a ~15-minute single-CPU reconstruction, so I have not added it to the test suite. Additionally, I have documented that this notebook now runs, while the others serve as dcoumentation.

This updated notebook gives me high confidence that the results in the remaining notebooks are reproducible in principle, though exact reproduction will require more extensive migration + computation.

Together with the reconstruction example scripts that are part of our automated test suit here, this example notebook serves as a very good jumping-off point for PTI reconstructions.

ziw-liu commented 7 months ago

In 'Load sample images', the zarr.open call should use mode="r" to prevent creating/writing and provide FileNotFound errors if data was not downloaded properly.

edit: different from iohub.open_ome_zarr() which defaults to "r", zarr.open() defaults to "a"

ziw-liu commented 7 months ago

Low priority: we should run black on these notebooks at some point.

ziw-liu commented 7 months ago

In 'Load sample images', the zarr.open call should use mode="r" to prevent creating/writing and provide FileNotFound errors if data was not downloaded properly.

edit: different from iohub.open_ome_zarr() which defaults to "r", zarr.open() defaults to "a"

Also here:

# Load the processed results
PTI_file_name = '/path/to/Anisotropic_target_small/Anisotropic_target_small_processed.zarr'
reader = zarr.open(PTI_file_name)
PTI_array = np.array(reader["Row_0/Col_0/f_tensor/array"])