Closed aTrotier closed 1 year ago
AcquisitionData(kspace::Array{Complex{T},6}) is not working for rectangular kspace
AcquisitionData(kspace::Array{Complex{T},6})
N = 128 N2 = 80 x = shepp_logan(N) # simulation params = Dict{Symbol, Any}() params[:simulation] = "fast" params[:trajName] = "Cartesian" params[:numProfiles] = floor(Int64, N) params[:numSamplingPerProfile] = N acqData = simulation(x, params) #reco params[:reco] = "direct" params[:reconSize] = (N,N) x_approx = reconstruction(acqData, params) kspace = kDataCart(acqData) x_approx2 = ifftshift(ifft(ifftshift(kspace))) acqCS = AcquisitionData(kspace[:,1:N2,:,:,:,:]) params[:reco] = "direct" params[:reconSize] = (N,N2) x_cs = reconstruction(acqCS, params)
returns the error
ArgumentError: step cannot be zero steprange_last(::Int64, ::Int64, ::Int64)@range.jl:329 StepRange@range.jl:316[inlined] range_start_step_length@range.jl:207[inlined] _range@range.jl:159[inlined] #range#68@range.jl:138[inlined] cartesianSubsamplingIdx(::Tuple{Int64, Int64}, ::MRIBase.Trajectory{Float64})@Cartesian2D.jl:67 var"#fourierEncodingOp#119"(::Vector{Int64}, ::Int64, ::Vector{ComplexF64}, ::Bool, ::Base.Pairs{Symbol, Union{}, Tuple{}, NamedTuple{(), Tuple{}}}, ::typeof(MRIOperators.fourierEncodingOp), ::Tuple{Int64, Int64}, ::MRIBase.Trajectory{Float64}, ::String)@EncodingOp.jl:160 #104@none:0[inlined] iterate@generator.jl:47[inlined] collect(::Base.Generator{UnitRange{Int64}, MRIOperators.var"#104#106"{Base.Pairs{Symbol, Any, Tuple{Symbol, Symbol}, NamedTuple{(:slice, :correctionMap), Tuple{Int64, Vector{ComplexF64}}}}, Tuple{Int64, Int64}, Vector{Vector{Int64}}, Vector{MRIBase.Trajectory{Float64}}}})@array.jl:787 #encodingOps_simple#102@EncodingOp.jl:19[inlined] reconstruction_direct(::MRIBase.AcquisitionData{Float64, 2}, ::Tuple{Int64, Int64}, ::Vector{Vector{ComplexF64}}, ::Vector{ComplexF64})@DirectReconstruction.jl:31 reconstruction(::MRIBase.AcquisitionData{Float64, 2}, ::Dict{Symbol, Any})@Reconstruction.jl:39
AcquisitionData(kspace::Array{Complex{T},6})
is not working for rectangular kspacereturns the error