-
Notifications
You must be signed in to change notification settings - Fork 7
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
Import error and data availability for MCIR/MR_recon_file.py contribution #8
Comments
Hi Michele,
thanks for reaching out.
Sharing these data will likely not be possible since they contain
patientdata (even though they are not mine to share anyway).
I have a tool that will create the same file but with a moving numerical
phantom inside, and then you should be able to run that code with that
file instead.
I will put the data into the tool and see if it is successful, then I will
get back to you.
Best regards
Johannes
--
Johannes Mayer
Quantitative MRI
Physikalisch-Technische Bundesanstalt
Abbestr. 2-12
10587 Berlin, Germany
***@***.***
phone: +49 30 3481 7233
Please visit www.ptb.de
Von: "Michele Scipioni" ***@***.***>
An: "SyneRBI/SIRF-Contribs" ***@***.***>
Kopie: "Subscribed" ***@***.***>
Datum: 11.02.2022 16:55
Betreff: [SyneRBI/SIRF-Contribs] Import error correction and data
availability for MCIR/MR_recon_file.py contribution (Issue #8)
Here I will be referring to MCIR/MR_recon_file.py.
I am aware that the README file states that this code is based on an old
version of SIRF and that it's possible that parts of that code won't work
with a recent install. For instance, most of the initial imports are not
working and should be replaced with
# import engine module
import sirf.Gadgetron as pMR
import sirf.Reg as pReg
# import further modules
import numpy as np
import matplotlib.pyplot as plt
#import sys
from cil.optimisation.functions import LeastSquares, L2NormSquared,
ZeroFunction, \
IndicatorBox,
OperatorCompositionFunction, BlockFunction
from cil.optimisation.algorithms import FISTA, CGLS, GD, PDHG
from cil.optimisation.operators import LinearOperator,
CompositionOperator, BlockOperator
from cil.framework import BlockDataContainer
from ccpi.filters.regularisers import FGP_TV, TGV
from cil.framework import DataContainer as cilDataContainer
I will be happy to correct the error myself once I am able to run the
code, but the data used here are not provided to the user, so the code
itself is not as useful as it could be in reproducing the results of the
paper.
I have just started working on a similar problem involving MCIR based on a
stack-of-spiral UTE sequence, for the MR part of the protocol, and wanted
to see if I could use SIRF functionality for that. It would be great to be
able to start form a working example like this.
I really hope you would be open to sharing some of those data, and then I
can take care to update the code so that it can run with a current version
of SIRF and all the dependencies.
Best!
?
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you are subscribed to this thread.Message
ID: ***@***.***>
|
That's possibly even better! |
@mscipio what is the import error? I suppose it is this line?
If you are only interested in the MR side of things, I would argue that SIRF master + CIL 21.3.1 should work for you, as the RPE encoding has made it into master recently. May I ask how you are currently running or plannig to run the code? |
The import error at least based on my recent SuperBuild installation is the fact that the current version of the MR script tries to import all the At a later stage, I would be interested in the PET part as well, but I would be happy for now to be able to run the MR side of the problem, and I agree that the current SIRF master should let me do it. |
Ah, OK, so replacing |
That, plus the fact that OLD IMPORTfrom ccpi.optimisation.functions import LeastSquares, L2NormSquared, ZeroFunction, \
IndicatorBox, FunctionOperatorComposition, BlockFunction
from ccpi.optimisation.algorithms import FISTA, CGLS, GradientDescent, PDHG
from ccpi.optimisation.operators import LinearOperator, CompositionOperator, BlockOperator
from ccpi.framework import BlockDataContainer
import sys
sys.path.append('/home/sirfuser/devel/buildVM/sources/CCPi-FrameworkPlugins/Wrappers/Python/ccpi/plugins/')
from regularisers import FGP_TV, TGV
from ccpi.framework import DataContainer as cilDataContainer NEW IMPORTfrom cil.optimisation.functions import LeastSquares, L2NormSquared, ZeroFunction, \
IndicatorBox, OperatorCompositionFunction, BlockFunction
from cil.optimisation.algorithms import FISTA, CGLS, GD, PDHG
from cil.optimisation.operators import LinearOperator, CompositionOperator, BlockOperator
from cil.framework import BlockDataContainer
from ccpi.filters.regularisers import FGP_TV, TGV
from cil.framework import DataContainer as cilDataContainer |
Hi, sorry I did not see your message before. Here you find a better and hopefully more up-to-date starting point for an MR-MCIR reconstruction: https://github.com/SyneRBI/SIRF-Exercises/blob/MCIR_CIL/notebooks/MR/mr_mcir_grpe.ipynb I will send you a link with the example data to download in an email. If you have any questions let me know! |
@ckolbPTB should we edit the README and refer to the new functionality in SIRF-Exercises? No point in duplicating. |
Here I will be referring to MCIR/MR_recon_file.py.
I am aware that the README file states that this code is based on an old version of SIRF and that it's possible that parts of that code won't work with a recent install. For instance, most of the initial imports are not working and should be replaced with
I will be happy to correct the error myself once I am able to run the code, but the data used here are not provided to the user, so the code itself is not as useful as it could be in reproducing the results of the paper.
I have just started working on a similar problem involving MCIR based on a stack-of-spiral UTE sequence, for the MR part of the protocol, and wanted to see if I could use SIRF functionality for that. It would be great to be able to start form a working example like this.
I really hope you would be open to sharing some of those data, and then I can take care to update the code so that it can run with a current version of SIRF and all the dependencies.
Best!
The text was updated successfully, but these errors were encountered: