我有两个文件:一个包含图像,另一个包含分割。我可以通过运行以下命令来读取两者:
import glob
nrrd_filenames = glob.glob('/Users/mostafa/Desktop/PyRadiomics/Labeled Segmentation/*')
nrrd_filenames.sort()
image_filenames = glob.glob('/Users/mostafa/Desktop/PyRadiomics/Image/*')
image_filenames.sort()
但是当我想运行这个命令时:
for i,file in enumerate(nrrd_filenames):
cmd='pyradiomics '+file+' '+image_filenames[i]+' -o results'+str(i)+'.csv -f csv'
os.system(cmd)
我会收到这个错误:
usage: pyradiomics image|batch [mask] [Options]
pyradiomics: error: unrecognized arguments: /Users/mostafa/Desktop/PyRadiomics/Image/CT_A0257.nrrd
usage: pyradiomics image|batch [mask] [Options]
pyradiomics: error: unrecognized arguments: /Users/mostafa/Desktop/PyRadiomics/Image/CT_G0045.nrrd
代码似乎无法读取 image_filenames
的内容。
答案 0 :(得分:0)
您有两个文件路径:
/Users/mostafa/Desktop/PyRadiomics/Labeled Segmentation/*
是 nrrd 文件的路径。
/Users/mostafa/Desktop/PyRadiomics/Image/*
是图像文件的路径。
您的无效路径错误是图像目录中的一个 nrrd 文件,pyradiomics: error: unrecognized arguments: /Users/mostafa/Desktop/PyRadiomics/Image/CT_G0045.nrrd
您可能会遇到的另一个问题是目录名称中的空格。在构造命令时,您应该用下划线替换空格或使用引号。像 cmd='pyradiomics "'+file+'" "'+image_filenames[i]+'" -o results'+str(i)+'.csv -f csv'
这样的东西应该可以工作。