How can I use 3d interpolation on Dicom images to resize them?

3 次查看(过去 30 天)
I have used interpolation for 3D-matrix of the images. Because I want to resize the images with the size of 512x512 to 288x288 and the slices from 133 to 265. As an example in the below code:
% 3D interpolation
d = size(volume_image);
X = 1:1/scaleCoeff(1):d(1);
Y = 1:1/scaleCoeff(2):d(2);
zi= 1:1/scaleCoeff(3):d(3);
[Xn, Yn, Zin] = ndgrid(X, Y, zi);
MFinal = interpn(volume_image, Xn, Yn, Zin);
Example:
volume_image = (rows=512, columns=512, slices in 3rd dimenson=133)
scaleCoeff = [0.56250, 0.56250, 2]
X = 1x288
Y = 1x288
zi = 1x265
Xn = 288x288x265
Yn = 288x288x265
Zin = 288x288x265
MFinal = 288x288x265 , so that, (rows=288, columns=288, slices in 3rd dimenson=265)
However, there is a problem with it. When the new slices create, they are not as good as the original slices. So that, They look like a combination of their previous and next slices. Does everyone have an idea to apply 3D interpolation on Dicom images to resize them (to unification)?
  2 个评论
Bruno Luong
Bruno Luong 2018-11-1
'When the new slices create, they are not as good as the original slices. So that, They look like a combination of their previous and next slices'
Hmm that exactly a (linear) interpolation supposes to do.
If you don't want that effect, might by 'nearest' interpolation s suitable, it's just like replicate you images denser, but then it will have to jump to the next image at some point.
elham
elham 2018-11-1
编辑:elham 2018-11-1
@Bruno Luong: Yes, That's right. The 'nearest' interpolation is suitable. Thanks.

请先登录,再进行评论。

回答(1 个)

John Kearns
John Kearns 2021-6-14
Hey Mate,
Don't know if this is still an issue for you. But if you're limiting yourself to 3D data, you may also try to resize it using the image toolbox. Specifically, try the function imresize3().
Cheers,

类别

Help CenterFile Exchange 中查找有关 Interpolation 的更多信息

产品


版本

R2017b

Community Treasure Hunt

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

Start Hunting!

Translated by