From 2bdaae11dbe4d86521bf327ea4891f17ecda2530 Mon Sep 17 00:00:00 2001 From: Laura Beghini Date: Fri, 21 Jun 2024 13:35:20 +0200 Subject: [PATCH 1/4] fix for noise matrix absence in Navigator.jl --- src/Navigator.jl | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/src/Navigator.jl b/src/Navigator.jl index 5a07568..c31d0f5 100644 --- a/src/Navigator.jl +++ b/src/Navigator.jl @@ -43,11 +43,16 @@ function NavCorr!(nav::Array{Complex{T}, 4}, acqData::AcquisitionData, params::D end remove_ref_ph!(nav, addData.numlines, 1) # remove the reference phase - noisestd = std(addData.noisemat, dims=[1]).^2 + if addData.noisemat != nothing + noisestd = std(addData.noisemat, dims=[1]).^2 - # Compute weights for the coils average - weights = comp_weights(abs.(nav), noisestd, addData.numlines, addData.numslices) - nav = sum(weights .* nav, dims=(1,2,)) # coils and samples average for each line + # Compute weights for the coils average + weights = comp_weights(abs.(nav), noisestd, addData.numlines, addData.numslices) + nav = sum(weights .* nav, dims=(1,2,)) # coils and samples average for each line + + else + nav = sum(nav, dims=(1,2,)) + end # Compute navigator phase cartes_index = findall(x -> isnan(x), nav) From f846a6fcefe66b768d4d3807d5a7681bd9e70d7c Mon Sep 17 00:00:00 2001 From: Laura Beghini Date: Wed, 25 Sep 2024 15:11:08 +0200 Subject: [PATCH 2/4] allow for double wrap correction in the future --- src/Navigator.jl | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/Navigator.jl b/src/Navigator.jl index c31d0f5..88e0e5e 100644 --- a/src/Navigator.jl +++ b/src/Navigator.jl @@ -258,8 +258,7 @@ function wrap_corr!(nav::Array{Float64, 4}, wrapped_points::Array{Int8, 2}, corr invertNavSign!(nav, correlation, slices) wrapped_points_local = reshape(wrapped_points, (1, 1, size(wrapped_points)...)) - idx_pos = findall(x->x==1, wrapped_points_local) - nav[idx_pos] = nav[idx_pos] .+ (2*pi) + nav = nav .+ ((2*pi) .* wrapped_points_local) invertNavSign!(nav, correlation, slices) return nav From 32cc1b9b174fa7d2b5d1e5f2187e231d547ecb4c Mon Sep 17 00:00:00 2001 From: Laura Beghini Date: Fri, 21 Jun 2024 13:35:20 +0200 Subject: [PATCH 3/4] fix for noise matrix absence in Navigator.jl --- src/Navigator.jl | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/src/Navigator.jl b/src/Navigator.jl index 5a07568..c31d0f5 100644 --- a/src/Navigator.jl +++ b/src/Navigator.jl @@ -43,11 +43,16 @@ function NavCorr!(nav::Array{Complex{T}, 4}, acqData::AcquisitionData, params::D end remove_ref_ph!(nav, addData.numlines, 1) # remove the reference phase - noisestd = std(addData.noisemat, dims=[1]).^2 + if addData.noisemat != nothing + noisestd = std(addData.noisemat, dims=[1]).^2 - # Compute weights for the coils average - weights = comp_weights(abs.(nav), noisestd, addData.numlines, addData.numslices) - nav = sum(weights .* nav, dims=(1,2,)) # coils and samples average for each line + # Compute weights for the coils average + weights = comp_weights(abs.(nav), noisestd, addData.numlines, addData.numslices) + nav = sum(weights .* nav, dims=(1,2,)) # coils and samples average for each line + + else + nav = sum(nav, dims=(1,2,)) + end # Compute navigator phase cartes_index = findall(x -> isnan(x), nav) From ce4e71df10bc429d76f9c4374d4b730650f73262 Mon Sep 17 00:00:00 2001 From: Laura Beghini Date: Wed, 25 Sep 2024 15:11:08 +0200 Subject: [PATCH 4/4] allow for double wrap correction in the future --- src/Navigator.jl | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/Navigator.jl b/src/Navigator.jl index c31d0f5..88e0e5e 100644 --- a/src/Navigator.jl +++ b/src/Navigator.jl @@ -258,8 +258,7 @@ function wrap_corr!(nav::Array{Float64, 4}, wrapped_points::Array{Int8, 2}, corr invertNavSign!(nav, correlation, slices) wrapped_points_local = reshape(wrapped_points, (1, 1, size(wrapped_points)...)) - idx_pos = findall(x->x==1, wrapped_points_local) - nav[idx_pos] = nav[idx_pos] .+ (2*pi) + nav = nav .+ ((2*pi) .* wrapped_points_local) invertNavSign!(nav, correlation, slices) return nav