无法从 Mathematica 中的 Image3D 函数创建体积

Cannot create volume from Image3D function in Mathematica

我在使用 Mathematica 的 Image3D 函数时遇到错误。我正在尝试使用该函数从数组 imagevar 创建一个 3D 体积,其中包含 10 个灰度二值图像。

images = FileNames["*.png"];
count = 1;
Do[imagevar[count++] = Import[image], {image, images}]
Image3D[imagevar[]]

每当我 运行 它时,它 returns 会出现以下错误消息:

在计算 Image3D::imgarray 期间:指定的参数 imagevar[] 应该是具有机器大小数字的 3 或 4 阶数组。

相反,当我尝试做

Image3D[FileNames["*.jpg"]]

相反,它也给了我同样的错误。

我已经确保图像的所有值都在 0 到 255 之间。 感谢您的帮助。

您的 Mathematica 语法非常不稳定。您可能首先不应该使用 Do 或任何其他循环结构。在我们尝试走路之前让我们采取一些小步骤......

根据文档和我的经验,Image3D[{img1,img2}] 将 2D 图像列表(列表为 {img1,img2}})加载到 3D 图像中。所以你可以试试:

images = FileNames["*.png"];
img1 = Import[images[[1]]];
img2 = Import[images[[2]]];
Image3D[{img1,img2}]

看看你得到了什么。如果您没有获得包含前两张 2D 图像的 3D 图像,则说明发生了一些非常奇怪的事情。

现在是时候回家了,所以我稍后会回来看看你过得怎么样。如果这可行,您剩下要做的就是弄清楚如何构建您要使用的所有 2D 图像的列表。