-
Hi, I am able to reconstruct an coil-combined image from a multicoil non-cartesian acquisition : nufftOp = MRIReco.NFFTOp((N, N), traj_MR)
im = Matrix(nufftOp'*(dcf.*raw_test))
sens = estimateCoilSensitivities(reshape(im,(300,300,1,1,12)))
#MIRTjim.jim(dropdims(abs.(sens),dims=(3,4)), title="Sensitivity")
sensOp = MRIReco.SensitivityOp(reshape(sens,(300*300,12)))
im_sens = sensOp' * vec(Matrix(nufftOp'*(dcf.*raw_test)))
#im_sens = sensOp' * vec(im)
p = Plots.heatmap(abs.(reshape(im_sens,(300,300))),color = :greys,aspect_ratio = 1) The input are : julia> nufftOp'*(dcf.*raw_test)
Linear operator
nrow: 90000
ncol: 12
eltype: ComplexF64
symmetric: false
hermitian: false
nprod: 0
ntprod: 0
nctprod: 0
julia> sensOp'
Adjoint of the following LinearOperator:
Linear operator
nrow: 1080000
ncol: 90000
eltype: ComplexF64
symmetric: false
hermitian: false
nprod: 12
ntprod: 0
nctprod: 3 My only concerns is that I suppose it is a limitation from the LinearOperators package and the only to get rid of it will be to move to something else like :
|
Beta Was this translation helpful? Give feedback.
Replies: 3 comments 1 reply
-
I think you are correct. |
Beta Was this translation helpful? Give feedback.
-
Yes, LinearOperators right now only seem to support multiplications with vectors. It is really a downside that we have so many packages in that domain since it hinders us from mixing operator implementations. |
Beta Was this translation helpful? Give feedback.
-
For sure, an harmonization between the MR toolbox can be great in order to mix the operator. |
Beta Was this translation helpful? Give feedback.
Yes, LinearOperators right now only seem to support multiplications with vectors. It is really a downside that we have so many packages in that domain since it hinders us from mixing operator implementations.