MATLAB爱好者论坛-LabFans.com

MATLAB爱好者论坛-LabFans.com (https://www.labfans.com/bbs/index.php)
-   资料存档 (https://www.labfans.com/bbs/forumdisplay.php?f=72)
-   -   在Matlab中将多个2D图像堆叠为3D (https://www.labfans.com/bbs/showthread.php?t=23091)

poster 2019-12-10 20:30

在Matlab中将多个2D图像堆叠为3D
 
我有25张2D图像(大小相等),每张图像代表均匀分布的一层。每个图像都是灰度和黑色(或导入后在数据矩阵中等于0的值)是需要删除的背景。

我的问题是:
[LIST][*]如何将这25张图像合并为一张3D图像?如何在每一个之间画一些间距?
[*]如何去除背景色?是否可以创建某种色标,其中等于0的值将是透明的?
[/LIST]一些其他数据:
[LIST][*]这些图像为DCM格式(DICOM图像),我使用dicomread函数导入它们。
[*]每个图像(320x320 px)代表一层4毫米厚,层之间的间距为1.2毫米。我们可以假设每个图像的宽度约为120-125毫米
[/LIST]
[B]回答:[/B]

[B]2D转换为3D矩阵:[/B]

>> a = magic(3) a = 8 1 6 3 5 7 4 9 2 >> b = ones(3) b = 1 1 1 1 1 1 1 1 1 >> c = zeros(3) c = 0 0 0 0 0 0 0 0 0 >> d(:,:,1)= a d = 8 1 6 3 5 7 4 9 2 >> d(:,:,2)= b d(:,:,1) = 8 1 6 3 5 7 4 9 2 d(:,:,2) = 1 1 1 1 1 1 1 1 1 >> d(:,:,3)= c d(:,:,1) = 8 1 6 3 5 7 4 9 2 d(:,:,2) = 1 1 1 1 1 1 1 1 1 d(:,:,3) = 0 0 0 0 0 0 0 0 0 [B]透明度:[/B]

将透明体素设置为NaN的值。大多数图形只是将NaN留为空白空间。

[B]相关项目[/B]

您可能对[URL="http://www.mathworks.com/matlabcentral/fileexchange/764"]SliceOMatic[/URL]感兴趣

我在MathWorks的第一个项目是[URL="http://www.mathworks.com/matlabcentral/fileexchange/1713-three-dimensional-reconstruction-from-planar-slices"]一个与您相似的演示[/URL] 。它是从平面切片(未配准)重建3-D实体。大部分工作在注册中。

这也是一个[URL="http://blogs.mathworks.com/videos/2009/12/11/advanced-making-a-sweeping-slice-through-volume-of-data/"]相关的项目[/URL] ,可能也很有趣。



[url=https://stackoverflow.com/questions/2176192]更多&回答...[/url]


所有时间均为北京时间。现在的时间是 04:55

Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.