我正在尝试运行这个教程 http://emmanuelle.github.io/segmentation-of-3-d-tomography-images-with-python-and-scikit-image.html
我想用Python进行三维断层扫描图像的分割。
我在开始时直接挣扎,重塑了形象。
这是代码:
%matplotlib inline
import numpy as np
import matplotlib.pyplot as plt
import time as time
data = np.fromfile('/data/data_l67/dalladas/Python3/Daten/Al8Cu_1000_g13_t4_200_250.vol', dtype=np.float32)
data.shape
(60940800,)
data.reshape((50,1104,104))
----------------------------------------------- ---------------------------- ValueError Traceback(最近一次调用 最后)in() ----> 1 data.reshape((50,1104,104))
ValueError:无法将大小为30470400的数组重塑为形状 (50,1104,104)
有人可以帮帮我吗?
答案 0 :(得分:10)
似乎有一个错字,因为1104*1104*50=60940800
并且您正在尝试重塑为尺寸50,1104,104
。因此,您似乎需要将104更改为1104。
答案 1 :(得分:5)
data.reshape((50,1104,-1))
适合我
答案 2 :(得分:2)
在矩阵术语中,元素的数量始终等于行和列的no的乘积。这里条件不匹配