实现目标(记录)
显示从mask中裁取的patch块(三维数组ndarray)
上代码!
# labels为一个三维数组
def plot(labels):
mask = np.where(labels > 0.3,labels,0)
fig = plt.figure()
ax = fig.add_subplot(111, projection="3d")
# 设置三个轴的尺度
ax.set_xlim([0, 64])
ax.set_ylim([0, 64])
ax.set_zlim([0, 64])
ax.scatter(
np.where(mask == 1)[2],
np.where(mask == 1)[1],
np.where(mask == 1)[0],
zdir="z",
c="red",
alpha=0.5,
marker=".",
)
# 为子图设置横轴标题
ax.set_xlabel('X')
ax.set_ylabel('Y')
ax.set_zlabel('Z')
plt.show()
效果图~
存在小瑕疵:在python中显示,无法旋转看图像
其实代码上主要就是在 ax.scatter中X,Y,Z上值的设定,没想到大半夜被我在草稿纸上推出来了(虽然就三行,但是思路不到位,就是白费),抱着试一试的心态,成功了。