Global or local whitening/normalization for refine_template#103
Global or local whitening/normalization for refine_template#103jdickerson95 wants to merge 40 commits intodevelopment_v1.2from
Conversation
Renames items in docstring without any functionality change Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
|
The loading and pre-processing logic is getting a bit messy within the codebase given all the options that a user could turn on/off now. Separate to this PR I'm going to think about utility organization within Leopard-EM to see if there's ways to make the code easier to reason about. |
|
I've refactored a little bit from the differentiable refine PR onwards to have the utils a bit more explicit. |
…eley/Leopard-EM into jd_ctf_aberrations
Jd particle shifts
CTF aberrations now included
Add a differentiable refine template
Add ability to refine_template from a movie
mgiammar
left a comment
There was a problem hiding this comment.
@jdickerson95 I've gone through the smaller files in the PR and have made some change requests. Still need to go over the larger changes, namely core_differentiable_refine.py, particle_stack.py, refine_template_manager.py, and backend_setup.py.
Something I'm noticing with this PR is we're staring to leverage the result CSV file heavily for particle parsing when there are many elements that are hard to fit into a tabular data format (e.g. Zernike dict, aniso mag params). I'm wondering if there's utility in working with JSON data more frequently for describing data results. Open question and not in-scope for this PR.
mgiammar
left a comment
There was a problem hiding this comment.
@jdickerson95 Besides the outlying comments, PR looks good to me. Once those are merged and have verification that the code is working for the optimization workflows happy to merge
|
I think I've handled all the changes. I'll test that nothing broke the optimization workflows before merging with dev 1.2 |
Refine template now either fully uses full micrograph for filters and normalization (making it same as match results), or uses the particle for filters and normalization.
The everything is loaded in utils.py and passed into particle stack, which will make it easy to refine from a movie.
Closes #99