-
Notifications
You must be signed in to change notification settings - Fork 17
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
Add a jax-based X-ray projector #433
Conversation
Codecov Report
@@ Coverage Diff @@
## main #433 +/- ##
==========================================
- Coverage 94.41% 93.32% -1.08%
==========================================
Files 86 87 +1
Lines 5470 5512 +42
==========================================
- Hits 5164 5144 -20
- Misses 306 368 +62
Flags with carried forward coverage won't be shown. Click here to find out more.
|
from ._linop import LinearOperator | ||
|
||
|
||
class XRayProject(LinearOperator): |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Naming is not consistent with existing CT projector classes: worth discussion.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
discussion: RadonTransform here, change the others in a separate PR
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
New discussion: XRayTransform
27fecba
to
83d129f
Compare
For now, it's the simplest (2D, not very configurable) example. Extension to 3D slice-by-slice should be straightforward.
The structure of the code requires input. I designed this so that the projector could easily be cut and pasted outside of SCICO if desired.
Timing versus ASTRA is encouraging, see
ct_projector_comparison.py
.