Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

NEW: Solve the lamino-alignment problem #94

Draft
wants to merge 127 commits into
base: main
Choose a base branch
from

Conversation

carterbox
Copy link
Contributor

Purpose

Provide a function for solving the lamino-alignment problem with ADMM.

Approach

Solve the laminography + alignment problem using the Laminography operators, Lanczos Interpolation operator, and Flow solver which wraps OpenCV's Farneback's method.

Also includes some changes to the ThreadPool and scatter/gather CUDA kernels which should be merged separately.

Pre-Merge Checklists

Submitter

  • Write a helpfully descriptive pull request title.
  • Organize changes into logically grouped commits with descriptive commit messages.
  • Document all new functions.
  • Write tests for new functions or explain why they are not needed.
  • Build the documentation successfully
  • Use yapf to format python code.

Reviewer

  • Actually read all of the code.
  • Run the new code yourself.
  • Write a summary of the changes as you understand them.
  • Thank the submitter.

Because map_coordinates is not implemented for higher orders in
CuPy.
In theory, this should improve runtimes for long-lived Lamino
operators.
Make the CUDA scatter gather kernels for the Lamino operator
work for any number of dimensions because we will reuse it for
the Tomo operator.
Conflicts:
	src/tike/operators/cupy/flow.py
	src/tike/operators/cupy/lamino.py
	src/tike/operators/numpy/flow.py
	src/tike/operators/numpy/lamino.py
	tests/test_align.py
@pep8speaks
Copy link

pep8speaks commented Aug 27, 2020

Hello @carterbox! Thanks for updating this PR. We checked the lines you've touched for PEP 8 issues, and found:

Line 137:21: E131 continuation line unaligned for hanging indent
Line 141:21: E131 continuation line unaligned for hanging indent

Line 35:1: E402 module level import not at top of file
Line 36:1: E402 module level import not at top of file
Line 37:1: E402 module level import not at top of file

Line 45:5: E265 block comment should start with '# '

Line 35:1: E302 expected 2 blank lines, found 1

Line 27:13: E122 continuation line missing indentation or outdented

Line 52:81: E501 line too long (81 > 80 characters)

Line 19:31: E201 whitespace after '['
Line 19:45: E201 whitespace after '['

Line 352:81: E501 line too long (95 > 80 characters)

Line 32:24: E201 whitespace after '{'
Line 32:31: E202 whitespace before '}'

Comment last updated at 2021-07-27 16:34:15 UTC

Conflicts:
	src/tike/align/solvers/cross_correlation.py
	src/tike/operators/cupy/alignment.py
	src/tike/operators/cupy/gradient.py
	src/tike/ptycho/ptycho.py
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.

2 participants