3

我在 matlab 中将 DICOM 图像加载为矩阵。我的问题是,如何在每个正交方向上显示该图像的特定切片?

与位置 100 处的视图切片 x 类似,y=0,z=0

4

1 回答 1

4

如果你的矩阵是 M,并且有 d 维(3,或者你有什么)并且你想绘制一个维度之一的一维“切片”,那么:

  plot(squeeze(M(n1,n2, ...,:,...));

其中 n1,n2,... 是要切片的维度 x,y,... 的位置,运算符 (:) 是要绘制的维度。

例如,给定一个 5 维矩阵 M=rand(10,10,10,10,10),让我们围绕一些点(x=n1,y=n2 等...)对第 4 维进行切片

   M=rand(10,10,10,10,10);
   n1=4; n2=7; n3=3; n5=5; 
   plot(squeeze(M(n1,n2, n3, :, n5)));

如果切片是二维的,那么您可以使用 imshow 或 imagesc 来显示二维切片,例如显示第 2 维和第 4 维:

 imagesc(squeeze(M(n1,:,n3,:,n5)))
于 2012-10-14T00:34:55.590 回答