我试图用python和python-vtk处理MHD图像文件.该文件放在谷歌驱动器:mhd.
我想将它转换为numpy数组,然后根据给定的值"500例如"分割它们.然后计算摘要信息.我按照这个
[post]的说明如何将3D vtkDataSet转换为numpy数组?
但它对我的情况不起作用.
import vtk
imageReader = vtk.vtkMetaImageReader()
imageReader.SetFileName(testfile1)
imageReader.Update()
# from vtk.util.numpy_support import numpy_to_vtk, vtk_to_numpy does not work for the data type issue
image = imageReader.GetOutput()
# List the dimensions of the image, for example
print image.GetDimensions()
pixelspace = imageReader.GetPixelSpacing()
Run Code Online (Sandbox Code Playgroud)
这里出现错误:
AttributeError: GetPixelSpacing
Run Code Online (Sandbox Code Playgroud)
我怎么能实现转换?
当我完成数据拆分时,我怎么能将它们保存回mhd(或原始数据会更好?)
我在python 2.7.3中工作,并尝试读取PNG_Files_R.csv包含以下信息的csv文件:
"Group","Sample","T0" \n
"HereausCPC","61","sample06_1_T0-Subvolume-resample_scale-1_x.png"
Run Code Online (Sandbox Code Playgroud)
我希望逐行读取每行中的文件,第一行除外.但我永远不会使用list()来获取行数,它报告''str'对象不可调用'
import Image
import os,csv
path_working="/media/Research/TEST_Program/PNG_Files"
path_now=os.getcwd()
os.chdir(path_working)
csv_filename='PNG_Files_R.csv'
f = open('PNG_Files_R.csv', 'rb')
reader = csv.reader(f)
rows = list(csv.reader(f))
lineNum = len(rows)
for rowNum in range(1,lineNum):
print rows[rowNum][0]
Run Code Online (Sandbox Code Playgroud)
我重新启动python,然后没有错误弹出
非常感谢!