我想在头颅MRI的图像切片上执行二维傅立叶变换。 我尝试了以下代码但未成功:( 错误消息包含在下面)
>> clear all
>>
>> info = dicominfo('MR000026.dcm');
Y = dicomread(info);
J=imadjust(Y,stretchlim(Y),[0 1]);
F = fftshift(fft2(fftshift(J)));
Undefined function 'fftn' for input arguments of type 'int16'.
Error in fft2 (line 19)
f = fftn(x);
>> info = dicominfo('MR000026.dcm');
Y = dicomread(info);
F = fftshift(fft2(fftshift(Y)));
Undefined function 'fftn' for input arguments of type 'int16'.
Error in fft2 (line 19)
f = fftn(x);
>> info = dicominfo('MR000026.dcm');
Y = dicomread(info);
F = fft2(Y);
Undefined function 'fftn' for input arguments of type 'int16'.
Error in fft2 (line 19)
f = fftn(x);
答案 0 :(得分:1)
您收到的错误消息说明了这一点:fft2
并不适用于uint16
输入类型。
在处理之前将Y转换为double
:
Y = im2double( Y );
甚至只是
Y = double( Y );