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

Created offset calculations for Catphan604 #297

Closed
wants to merge 4 commits into from

Conversation

crcrewso
Copy link
Contributor

@crcrewso crcrewso commented May 24, 2020

HU linearity module differences, Fixes #289

HU linearity module differences
@coveralls
Copy link

coveralls commented May 24, 2020

Coverage Status

Coverage increased (+0.01%) to 83.858% when pulling eca9821 on crcrewso:CatPhan604HURegistration into 1230dc7 on jrkerns:master.

@crcrewso crcrewso changed the title Created offset calculations for Catphan604 Created offset calculations for Catphan604, Fixes #289 May 24, 2020
@crcrewso crcrewso changed the title Created offset calculations for Catphan604, Fixes #289 Created offset calculations for Catphan604 May 24, 2020
@crcrewso crcrewso closed this May 24, 2020
@crcrewso crcrewso reopened this May 24, 2020
@crcrewso
Copy link
Contributor Author

Closed was due to me trying to track down an error message. This was caused not by the code but by the way I was testing it. Code change should work well

Copy link
Owner

@jrkerns jrkerns left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm confused, why are you slicing off the far end?

@jrkerns
Copy link
Owner

jrkerns commented May 25, 2020

Okay so I tested this on a few more datasets, but they're all Varian so I'd like to ensure this works on other vendors' sets. I added some clarifications.

@crcrewso
Copy link
Contributor Author

I had removed the distal slice because it looked like there was about 2 mm of contrast material past the end of the wire on that end.

Why is the step size hard coded? What does that number represent?

I have access to GE CT data sets and Varian CBCT. I wonder if anyone has used the phantom with Elekta or if they come with a different phantom.

@crcrewso
Copy link
Contributor Author

I'm looking at the most recent version and it's pulling the slice one or two more proximal(?) than center.

Also, based on these image sets I'm wondering if the ROI diameter should be reduced to 4.5 mm to ensure that the ROI is always within the Contrast material. Some of those ROI's are right at the boundary.

Oasis_m02_d10_Pelvis_result_hu
Oasis_m02_d10_Thorax_result_hu
Oasis_m02_d10_Head_result_hu
CT_Ref_Pelvis_hu
CT_Ref_Head_hu

@jrkerns
Copy link
Owner

jrkerns commented Jun 29, 2020

After thinking about this I believe you'll be pretty happy with v2.4 and that this problem is an X/Y problem. Elekta comes with the CatPhan 503 (or used to; I haven't kept up).

-The step size is 2 as a performance hack. The step size is...well, the step size. Using a value of 2 means it looks at every other slice as it walks through the stack. This makes the analysis ~50% faster.
-It does indeed look like the contrast ROIs extend past the end of the ramp for the 604. this is why the "central" slice appears off w.r.t the ramp; it's the center of the contrast ROIs, not the ramp. I'm not sure this is actually a problem though. The ramp is consistent throughout its slices, so an evaluation +/- one or two slices should be consistent.
-In 2.4 you'll be able to construct your own phantom models and can offset the spatial resolution slice offset if desired.
-Also in 2.4, you can override the ROI size to your liking. You can see the upcoming documentation here: https://pylinac.readthedocs.io/en/latest/cbct_docs.html#customizing-module-locations.

Does this solve your problem?

@crcrewso
Copy link
Contributor Author

crcrewso commented Jul 6, 2020

Looking at your code and assumptions, I'm seeing a couple of ideological conflcts that I didn't understand before.

Catphan module distances are referenced off of the 528 module slice.

Would you be open to the following idea:

  • continue to use your current brute force to find a good starting point for the HU
  • calculate where 528 should be and analyze that slice
  • analyze the slice before and after (or 2?), slice with 'best' result becomes new 0
  • use new 0 and the CatPhan manuals to calculate the actual slices to analyze for each module based on distance.

I don't think the performance penalty would be too much of a pain for the current users.

@crcrewso
Copy link
Contributor Author

I'm looking at the repository and I can't see the version 2.4 you've referenced. Is there a hidden branch I'm not able to see?

@crcrewso crcrewso closed this Oct 7, 2020
@crcrewso crcrewso deleted the CatPhan604HURegistration branch October 7, 2020 01:50
jrkerns added a commit that referenced this pull request Nov 13, 2023
RAM-3072 Drop demo file usage for starshot

Approved-by: Randy Taylor
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.

CBCT HU Uniformity auto slice detectionn
3 participants