猿问

无法使用 Numpy 和 Matplotlib 在 Python 中绘制 3D 医学图像

我想使用 Python、Numpy 和 Matplotlib 绘制 3D 医学图像。我一直在尝试使用以下代码段来显示它们,但图像本身没有呈现。


import os

import imageio

import matplotlib.pyplot as plt, numpy as np

from mpl_toolkits.mplot3d import Axes3D


def make_ax(grid=False):

    fig = plt.figure()

    ax = fig.gca(projection='3d')

    ax.set_xlabel("x")

    ax.set_ylabel("y")

    ax.set_zlabel("z")

    ax.grid(grid)

    return ax


x=os.listdir('Path to .dcm images')

print(x)

vol = imageio.volread('Path to .dcm images') 

print(vol.shape)


ax = make_ax(True)

ax.voxels(vol, edgecolors='gray')

plt.show()

犯罪嫌疑人X
浏览 186回答 1
1回答

Helenr

voxel根据文档,期望布尔值 - 或者可以被视为布尔值的东西。您正在传递整数数据,任何非零都被视为真。您的大部分数据都是非零的,因此您会得到所显示的大灰色立方体。它的呈现方式没有任何问题 - 您只是选择了错误的方式来可视化您拥有的数据。
随时随地看视频慕课网APP

相关分类

Python
我要回答