赞
踩
最近被一个问题困扰,在执行Mrtrix3上的头部矫正代码的时候:
for_each * : dwifslpreproc IN/dwi_denoised_unringed.mif IN/dwi_denoised_unringed_preproc.mif -rpe_none -pe_dir AP
明明安装了fsl,但是运行结果却是报错(说没有找到 FSL eddy 的指令):
确实不知道该怎么处理,后来师兄和我说,可以直接使用fsl的eddy_correct函数,在终端里进行矫正,eddy_correct使用方法是:
- Usage: eddy_correct <4dinput> <4doutput> <reference_no> [<interp>]
- Choose interp from {trilinear,spline} def - trilinear
然后我就又去操作去了,依然报错:
- File "/usr/share/fsl/5.0/bin/imglob", line 78
- print "Usage: $0 [-extension/extensions] <list of names>"
- ^
- SyntaxError: Missing parentheses in call to 'print'. Did you mean print("Usage: $0 [-extension/extensions] <list of names>")?
-
- Usage: fslmerge <-x/y/z/t/a/tr> <output> <file1 file2 .......> [tr value in seconds]
- -t : concatenate images in time
- -x : concatenate images in the x direction
- -y : concatenate images in the y direction
- -z : concatenate images in the z direction
- -a : auto-choose: single slices -> volume, volumes -> 4D (time series)
- -tr : concatenate images in time and set the output image tr to the final option value
他报错的地方是官网文件,我就没仔细看报错原因,一直以为是我操作不当或者是fsl没有装好而导致的!我装了好几个fsl的版本,下载速度特别慢,导致我最近很无聊也很沮丧。
今天早上!正当装fsl无聊的时候,去做今天的五题,有一个Python2和Python3的区别!我当时看了一眼!没想到下午就遇到了!
Pyhton2.6和2.7以及Python3在Print语句上是有不同的,区别如下:
Python 2.6与Python 2.7部分地支持这种形式的print语法。在Python 2.6与Python 2.7里面,以下三种形式是等价的:
- print "hello world" #没有括号
- print ("hello world") #注意print后面有个空格
- print("hello world") #print()不能带有任何其它参数
但也只是部分地支持,特别是Python3后是没有print语句了,只有Print()函数
官网的这个文件可能是很早之前的了,用的版本是老版本的Print语句,和我现在用的Python不兼容,导致了报错
改正办法就是:去/usr/share/fsl/5.0/bin/imglob这个Python文件里,把所有Print语句改为Print()函数
然后运行,就可以了
一个小问题,又卡了好几天,导致了我最近的无聊,emm~
终于可以往下走了,真好
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。