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

[Feature] <SNR scaling> #76

Open
oliverchampion opened this issue Aug 14, 2024 · 4 comments
Open

[Feature] <SNR scaling> #76

oliverchampion opened this issue Aug 14, 2024 · 4 comments
Assignees

Comments

@oliverchampion
Copy link
Collaborator

Feature description

As we use the realistic phantom for unit testing, SNR is poorly defined. The phantom uses T1/T2 values to generate realistic tissue contrasts. This means that "noise" is added to the signal, but that this does not mean "SNR" is 1/noise. It also means that SNR changes per organ (depending on their T1/T2 values). It makes the phantom more realistic, but the SNR is harder to define.

Describe the solution

For our paper, I think it is "easier" to have unit tests at fixed SNR-levels, instead of fixed noise levels.
To me there are two solutions;
1: We could simulate a noise-less signal curve using the phantom, and then rescale per tissue and add noise for unit testing purposes.
2: We could have an option to turn off T1/T2 weighting in the phantom and generate the json files with this option turned off.

Describe alternatives

No response

Additional context

No response

Are you working on this?

Yes

@oliverchampion
Copy link
Collaborator Author

@etpeterson I tagged you as the unit testing is more of your IP. I will try and work on option 2 :). Let me know if it is a bad idea :)

@oliverchampion oliverchampion changed the title [Feature] <title> [Feature] <SNR scaling> Aug 14, 2024
@oliverchampion
Copy link
Collaborator Author

This should be solved in my latest pull request :).

@etpeterson
Copy link
Contributor

This should be solved in my latest pull request :).

So this is being worked on? If so, you should assign it to yourself so nobody else starts work on it too.

@etpeterson
Copy link
Contributor

@etpeterson I tagged you as the unit testing is more of your IP. I will try and work on option 2 :). Let me know if it is a bad idea :)

Not actually sure how the two options differ. It sounds like both generate noiseless phantom data and then the noise is added again later. I think maybe option 1 is still generating noisy json data and 2 doesn't? If that's the case then I think I'd prefer 2 so we can scale the noise on the test side more easily.

@oliverchampion oliverchampion self-assigned this Aug 20, 2024
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

No branches or pull requests

2 participants