我刚刚开始探索NiftyNet,我认为这将对我的项目有所帮助。
我正在尝试训练一个使用segmentation_application进行分割的网络。但是,我构建了自己的config.ini文件,在运行net_run.py时收到了错误:
错误:参数
我正在按照配置文件要求设置axcodes=A,R,S。我还尝试了不同的字符串列表('A','R','S';A,R,S;(A,R,S);.
我的config.ini文件声明:
[T2]
csv_file = /home/jose/niftynet/data/uNet/test_data/data_file.csv
spatial_window_size = (257,257,30)
pixdim = (1.0, 1.0, 1.0)
axcodes= A,R,S
interp_order = 1我做错了什么?
发布于 2018-02-06 11:47:18
您可能已经尝试过只返回字母'A‘、'R’和'S‘的axcodes=['A', 'R', 'S'],并且可能触发错误,因为程序在每个字符串中查找另一种类型的信息。因此,我认为您正在寻找A = str(A),它以正确的方式使用变量,即将'variable value A转换为"string“。
在A,R,S的情况下,其中一个变量可能是整数。尝试:
A = str(A)
R = str(R)
S = str(S)
axcodes = [A, R, S]在“A”、“R”、“S”的情况下,指的是元组列表中的字符串,而不是列表列表中的字符串。
如果是(A,R,S),你指的是元组列表之外的变量.
另外,:尝试使用print "Variable "%s" is type %s" % (A, type(A))并查看类型的变量"A“是什么。
编辑1
尝试如下(文件:根文件夹“。包括在内;置于括号和interp_order增加到默认值)
csv_file = ./home/jose/niftynet/data/uNet/test_data/data_file.csv
spatial_window_size = (257,257,30)
pixdim = (1.0, 1.0, 1.0)
axcodes= (A,R,S)
interp_order = 3编辑2
根据文档这里,应该是axcodes=('A', 'R', 'S'),但是您说您尝试过了。也许字母的顺序是关键。
发布于 2018-02-06 15:05:21
问题在config.ini文件的其余部分。
在[parcellation]部分,我还有另一个axcodes=''给出了错误。
https://stackoverflow.com/questions/48642153
复制相似问题