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

Siemens mMR_ACR updates #88

Merged
merged 11 commits into from
Aug 25, 2024
Merged

Siemens mMR_ACR updates #88

merged 11 commits into from
Aug 25, 2024

Conversation

KrisThielemans
Copy link
Member

This PR provides updates using @pjmark's files

@KrisThielemans
Copy link
Member Author

Initial BSMR result for 200s of data (with initial step-size 0.5 after 4310 updates): image
image

@pjmark, this looks oversmoothed, correct? We can change the penalty strength.

Also, could you provide some detail on the VOI masks you give? for instance, for the "all I get 4 clusters (or arguably a few more) of indices.
image
Some info on what these are would be great.

@KrisThielemans
Copy link
Member Author

@pjmark, the registered mu-map that you created does not contain the bed. Is that correct? (Looks like we have some bias due to that).

@pjmark
Copy link

pjmark commented Aug 21, 2024

@pjmark, the registered mu-map that you created does not contain the bed. Is that correct? (Looks like we have some bias due to that).

Yes, you need the hardware mu-map in addition, which you can generate from the raw data/e7tools.

Not sure how STIR geometry relates to the scanner, but perhaps you could just resample the SIemens hardware to your NIfTI space?

@pjmark
Copy link

pjmark commented Aug 21, 2024

From the images, I can defo say the hardware mu-map is needed. And yes a bit too smooth.

For the sampling masks, they are many concentric rings, going from the centre to the outside of any insert. This can be simplified for your case, i.e., using only the masks which cover just the insert without concentric sampling

@pjmark
Copy link

pjmark commented Aug 21, 2024

on second thought, the images look the 'other way' round without the attenuation of the bed... something is not right. But still the bed is needed.

@KrisThielemans
Copy link
Member Author

@pjmark, the registered mu-map that you created does not contain the bed. Is that correct? (Looks like we have some bias due to that).

Yes, you need the hardware mu-map in addition, which you can generate from the raw data/e7tools.

Not sure how STIR geometry relates to the scanner, but perhaps you could just resample the SIemens hardware to your NIfTI space?

Sadly, this is one of many things that we have neglected. Obviously, the exact location of the hardware mumap is important (including z-shifts). @NicoleJurjew started looking at this recently but is on holiday.

@pjmark
Copy link

pjmark commented Aug 21, 2024

Sadly, this is one of many things that we have neglected. Obviously, the exact location of the hardware mumap is important (including z-shifts). @NicoleJurjew started looking at this recently but is on holiday.

I could generate it and then remap it to the space of your NIfTI. Do you think you may have some extra shifts?

@KrisThielemans
Copy link
Member Author

could generate it and then remap it to the space of your NIfTI. Do you think you may have some extra shifts?

that'd be amazing. As long as your "complete" mu-map is self-consistent, I guess the remapping has to work.

@pjmark
Copy link

pjmark commented Aug 21, 2024

that'd be amazing. As long as your "complete" mu-map is self-consistent, I guess the remapping has to work.

I did it! I'm pretty sure it's correct. I will send you an email with the NIfTI hardware mu-map. You just need to add the object and hardware together and it should work. I would start with the old trusted EMML/OSEM perhaps to see if we are artefact free.

@KrisThielemans
Copy link
Member Author

Thanks a lot @pjmark . OSEM full count with some smoothing looks good now!
image

@KrisThielemans
Copy link
Member Author

This should be ready now. I'm constructing the reference image.

@casperdcl maybe you do the lint etc? I've removed some redundancy in finding file locations, but there's plenty still in other places.

@KrisThielemans KrisThielemans marked this pull request as ready for review August 23, 2024 11:33
@KrisThielemans
Copy link
Member Author

image
Top-left: OSEM 1800s, Top-right: OSEM 200s, Bottom-left: BSREM with RDP 200s

@KrisThielemans
Copy link
Member Author

Plots obtained with plot_BSREM_metrics.py using a reference image obtained with run_BSREM after 21920 updates:

objective function

Siemens_mMR_ACR_BSREM_objectives
Siemens_mMR_ACR_BSREM_objectives_last

metrics

Siemens_mMR_ACR_metrics_BSREM_OSEM
Siemens_mMR_ACR_metrics_BSREM

Images

Siemens_mMR_ACR_OSEM_diff_image_at_0 01_0 005
Siemens_mMR_ACR_ref_diff_image_at_0 01_0 005
Siemens_mMR_ACR_image_at_0 01_0 005

@KrisThielemans KrisThielemans merged commit d9d249f into main Aug 25, 2024
2 checks passed
@KrisThielemans KrisThielemans deleted the Siemens_mMR_ACR2 branch August 25, 2024 08:05
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants