# reduce resolution of an MRI image

7 vues (au cours des 30 derniers jours)
Mehri Mehrnia le 13 Oct 2023
to reduce the resolution of grayscale MRI image, I cut the sorrounding area of k-space(FFT of the image). the rsult I get is reasonable, however the values of matrix in the resolut is several times larger than the initial one. the initial(original) image is in [0,4091] while the resolt can go beyond 60,000. I guess I need to use a scaling but no idea?
function [k_space_volume_shrinked,fftshow_k_space_volume_shrinked,shrinked_LGE_volume]=...
compute_shrinked_k_space_3D_anisotropic(LGE_volume,shrinking_percentage)
org_size=size(LGE_volume)
%shrinking_percentage=[shrinking_percentage_X,shrinking_percentage_Y,shrinking_percentage_Z]
reduction=(shrinking_percentage./100).*org_size
start_point=round(reduction/2)
first_dimension= start_point(1,1):org_size(1,1)-start_point(1,1);
second_dimension=start_point(1,2):org_size(1,2)-start_point(1,2);
Third_dimension=start_point(1,3):org_size(1,3)-start_point(1,3) ;
k_space_volume=fftshift(fftn(LGE_volume));
k_space_volume_shrinked= k_space_volume(first_dimension,second_dimension,Third_dimension);
fftshow_k_space_volume_shrinked=log(1+abs(k_space_volume_shrinked));
%% shrinked k-space to image
shrinked_LGE_volume=abs(ifftn(k_space_volume_shrinked));
##### 2 commentairesAfficher AucuneMasquer Aucune
Mehri Mehrnia le 14 Oct 2023
this is not scientific approach, there must be a reason behind it
Walter Roberson le 14 Oct 2023
Why not use fftn and then ifftn specifying the desired output size?

Connectez-vous pour commenter.

### Réponses (2)

dpb le 14 Oct 2023
newimage=rescale(newimage,0,max(oldimage,'all'));
maybe???
##### 0 commentairesAfficher -2 commentaires plus anciensMasquer -2 commentaires plus anciens

Connectez-vous pour commenter.

Walter Roberson le 14 Oct 2023
When you fft() a 1D signal, the first output bin is sum() of the 1D signal. Now, if you were to think about sum() of the signal divided by the number of elements in the signal, that would be the exact same as thinking about the mean() of the signal. When you ifft(), the rest of the frequency components are used to reconstruct the wave form, and then the first output bin divided by the length of the signal (the mean) is added to each element of the output signal.
Now suppose that you fft() and you discard some of the frequency components, and then you ifft() that without changing that first output bin. The length of the signal would be shorter, so first bin divided by the (new) length of the signal would be a larger value than the original so the output range would be more extreme than before (unless the mean of the 1D signal happened to be 0)
##### 0 commentairesAfficher -2 commentaires plus anciensMasquer -2 commentaires plus anciens

Connectez-vous pour commenter.

### Catégories

En savoir plus sur MRI dans Help Center et File Exchange

### Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by