Skip to content

Conversation

@talonchandler
Copy link
Collaborator

I've added some debugging jigs here to start this process:

  • heres a path to a test 3D-to-2D phase reconstruction /hpc/projects/comp.micro/microscope_dev/2025-02-11-3d-to-2d-debug
  • phase_transfer_function is being saved to zeros (though absorption_transfer_function is non-zero), so that's certainly a bug, and a place to start.

camFoltz and others added 30 commits September 9, 2021 13:11
* Add option to automatically choose regularization parameter for single variable Tikhonov deconvolution

* Return reconstruction for chosen parameter, and 2 others around it, for user to choose

* Avoid computing L curve norm values when unnecessary for better efficiency

* Remove repeated computation on H_eff

* Reduce GPU memory for L curve and fix padding bug for 3D phase

* fix small gpu memory leak when running autotuning

* fix small gpu memory leak when running autotuning

* add option to output l-curve value

* update output to non-log scale

Co-authored-by: Tiffany Chien <[email protected]>
Co-authored-by: lihaoyeh <[email protected]>
Co-authored-by: camfoltz <[email protected]>
talonchandler and others added 14 commits February 27, 2024 14:35
* m1 document installation

* remove defunct NVIDIA installation instructions

* Update README.md

Co-authored-by: Ziwen Liu <[email protected]>

---------

Co-authored-by: Ziwen Liu <[email protected]>
* m1 document installation

* remove defunct NVIDIA installation instructions

* direct link to png

* example notebooks -> examples

* fix broken link
link BIA next to examples
* update a single example notebook

* zarr.open mode to "r"

* remove unused imports
* first-pass script and .html

* html -> pdf

* correct a docstring

* remove obsolete waveOrderWriter calls

* stub for iohub writer + correcting names of quantities

* Save reconstruction to OME zarr for viewing in napari

* fix mean/differential permittivity mistake

* fix comments

* don't track jupyter notebook

* clean path

* update pdf and readme

---------

Co-authored-by: Shalin Mehta <[email protected]>
* fix bug finding focus in stack with only one slice

* refactor for clarify

* formatting

* print -> warnings.warn

* test single-slice case

* fix test bugs

---------

Co-authored-by: Talon Chandler <[email protected]>
* author and release updates

* nits

---------

Co-authored-by: Shalin Mehta <[email protected]>
* migrate to pyproject.toml

* bump python

* remove inaccurate topics from pyproject.toml

* Revert "remove inaccurate topics from pyproject.toml"

This reverts commit 46a5e72500501b9bff3b8d5fb1fe467d44b3bd44.

* remove inaccurate topic metadata
* Phase reconstruction is invariant to voxel-size (#164)

* fix bug finding focus in stack with only one slice

* refactor for clarify

* formatting

* print -> warnings.warn

* test single-slice case

* fix test bugs

* z-scale-invariant test object

* no rescaling on output

* forward simulation takes a "brightness" - simulating real microscope

* fix example script

* add background parameter for fluorescence forward model

* test voxel-size invariance

* rename I_norm -> direct_intensity

* refactor to clarify discretization factor

* remove comment

* fix fluorescence example bug

* improved docsring

---------

Co-authored-by: Ivan Ivanov <[email protected]>

* np.product -> np.prod

---------

Co-authored-by: Ivan Ivanov <[email protected]>
* bump torch to unpin numpy

* add SPEC-0 conformant numpy requirement
* helper functions

* fluorescence wrap safety

* 3d phase wrap safety

* fix axial nyquist bug

* 2d phase wrap safety

* fix interaction between padding and wrap safety
* Phase reconstruction is invariant to voxel-size (#164)

* fix bug finding focus in stack with only one slice

* refactor for clarify

* formatting

* print -> warnings.warn

* test single-slice case

* fix test bugs

* z-scale-invariant test object

* no rescaling on output

* forward simulation takes a "brightness" - simulating real microscope

* fix example script

* add background parameter for fluorescence forward model

* test voxel-size invariance

* rename I_norm -> direct_intensity

* refactor to clarify discretization factor

* remove comment

* fix fluorescence example bug

* improved docsring

---------

Co-authored-by: Ivan Ivanov <[email protected]>

* poster scripting

* may 14 poster draft

* last-minute poster changes

* quick clearning

* checkpoint before svd refactor

* SVD refactor

* pass singular system

* update visualization script

* fix visualization script scaling

* correct phase recon regression, legacy recon assumes axially even green's function

* helper functions

* fluorescence wrap safety

* 3d phase wrap safety

* fix axial nyquist bug

* 2d phase wrap safety

* fix interaction between padding and wrap safety

* clean defaults

* refactor singular system computation

* remove accidental duplicate

* refactor visuals

* fix warnings from tensoring a tensor

* match defaults

* readme type

* handle napari dependency

* Revert "fix warnings from tensoring a tensor"

This reverts commit ca4e7c597dcf880d0c2d2b7859ed0e685522308c.

* Reapply "fix warnings from tensoring a tensor"

This reverts commit 790df573e82311226ca25f7c547c96a0d8fa7175.

* revive old version of greens tensor for backwards compatibility

* fix tests that fail because of napari on github

* wrap-safe vector transfer function

* sampling tests

* fourier-space oversampling

* better visualizations for debugging

* complex-valued napari visuals

* complex utils

* fix colormaps

* debugging coherent tfs

* formatting

* fix rotation matrices

* fix dc term

* cleaning up

* first-pass visuals checkpoint

* matplotlib visuals

* temporarily turn off rotations

* debugging progress

* example script to generate matplotlib tf figures

* add rose asset

* add all assets

* plot all stokes

* brighter plot for greens

* visual improvements

* revised rotation-symmetric Green's tensor

* ignore

* fix green's tensor units

* modify circular anisotropy gellman matrices so that all transfer function are hermitian

* improved matplotlib visuals

* clean up plotting script

* fix bug with 3x3 hardcoded shape

* update tf components

* minor reconstruction updates

* refactor greens tensor spectrum

* clean test script

* clean models

* simple memory reduction

* clean debug statements

* reorder svd for clean i/o

* invert phase contrast

* formatting

* padding warning

* revise visuals

* visual cleanup

* manage large reconstructions

* Transfer function visuals (#178)

* Bump torch to unpin numpy (#176)

* bump torch to unpin numpy

* add SPEC-0 conformant numpy requirement

* Bump torch to unpin numpy (#176)

* bump torch to unpin numpy

* add SPEC-0 conformant numpy requirement

* first-pass scripts

* cleanup greens

* clean transfer function support

* fix naming issue

* Wrap-safe transfer functions (#175)

* helper functions

* fluorescence wrap safety

* 3d phase wrap safety

* fix axial nyquist bug

* 2d phase wrap safety

* fix interaction between padding and wrap safety

* green's tensor surfaces

* dark theme default

---------

Co-authored-by: Ziwen Liu <[email protected]>

* matplotlib movie features

* cheaper default viz script

* move all visuals to /examples/visuals

* update examples/README to table

* typo

* update badges

* typo

* revise main README

* add 10-second slideshow

* Clean installation instructions

* cleanup vector model example

* minor cleanup

* remove matplotlib plot example

* edits to README

* clarify contrast mechanisms in README

* simplify example installation w/ `pip install waveorder[examples]`

* fix unintended diff

* clarify `examples/README.md`

* document 3d-to-2d transfer function

* test orthonormal bases

* fix accidental deletion

* add deprecation warnings

* remove plotting assets

* label transfer function and simulation axes

* guard type hint

* matplotlib visuals docs and type hints

* add type hints throughout models

* revert TYPE_CHECKING to strings

---------

Co-authored-by: Ivan Ivanov <[email protected]>
Co-authored-by: Ziwen Liu <[email protected]>
Co-authored-by: Shalin Mehta <[email protected]>
@talonchandler talonchandler marked this pull request as draft February 11, 2025 18:48
* styling actions inspired by iohub

* iohub -> waveorder

* skip flake8

* black and isort

* fix gh action

* black versioning

* black versioning

* remove mention of flake8
* stretched_multiply functions & tests

* first pass `apply_transfer_function_filter`

* check filter inputs

* improved comment

* test `apply_transfer_function_filter`

* pad and multiply instead of iterating over stretched multiply blocks

* phase reconstruction uses apply_transfer_function_filter

* revised strategy --- prepad, require stretch-multiply to be divisible, then crop

* fix tests --- now need divisibility

* refactor inverse filter

* refactor fluorescence deconvolution to support mismatched PSF and data

* refactor to support transfer function banks

* refactor phase and fluorescence to use "filter bank" functions

* remove transverse_downsample_factor and interpolation

* styling

* clearer variable names

* return real part only and update docs

* expect real-valued input arrays

* add `isotropic_thin_3d` TODO

* update tests

* put output on same device as input

* comment Ziwen's optimization suggestions
* fix dependencies

* move key pieces back to setup.cfg

* update imports

* move entirely to .toml --- basic working installation
* fix acq test

* fix test_reconstruct

* need all for tests

* fix filename

* remove all

* copy iohub gh actions; remove tox

* revert

* all for pr

* match recOrder's setup

* remove tox dependency

* try to match recOrder's test-and-deploy w/o tox

* reinstate tox

* only style with a single python version

* skip example scripts on github actions

* don't limit parallelism

* no mps test on ghactions

* debug ghactions

* remove false debug

* run subprocess in os.environ

* replace python with sys.executable

* remove debug

* skip examples temporarily
* store .npz files in correct place

* reduce clutter from local testing

* fix qlipp example bug

* clean pti tests
* ignore waveorder/_version.py

* update recOrder README figure

* updates plugin logo
@talonchandler
Copy link
Collaborator Author

Closing. Moved to (waveorder #441)[https://github.com/mehta-lab/waveorder/pull/441].

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

9 participants