Vasudev, Please see my comments interleaved below. On Fri, Mar 18, 2016, at 11:40, Dev vasu wrote: > Dear Sir, > > Following are the outputs > >1. vasudev@vasudev-OptiPlex-780:~/Documents/Pipelines-master$ cat version.txt > Development after v3.13.2 You are using an unreleased version of the HCP Pipeline Scripts. It appears that you downloaded the very latest code in the GitHub repository as of the time of your download. While I do not believe that this is what is causing your current problem, I do not recommend using an unreleased version unless you know of a very specific recent change that you are wanting to use or test. Otherwise, you should get a released version of the product by visiting https://github.com/Washington-University/Pipelines/releases. I would suggest that you download and use version v3.13.2. > 2.vasudev@vasudev-OptiPlex-780:~/Documents/Pipelines-master$ cat > ${FREESURFER_HOME}/build-stamp.txt > freesurfer-Linux-centos6_x86_64-stable-pub-v5.3.0 This is the wrong version of FreeSurfer to be using. The HCP Pipeline Scripts require an HCP-specific version of FreeSurfer. Please see: https://github.com/Washington-University/Pipelines/wiki/v3.4.0-Release-Notes,-Installation,-and-Usage#prerequisites Note that the HCP Pipeline Scripts require FreeSurfer version 5.3.0-HCP. You are using FreeSurfer version 5.3.0. Your FreeSurfer build-stamp.txt file should be reporting something like the following: freesurfer-Linux-centos6_x86_64-stable-pub-v5.3.0-HCP *This is likely to be the source of your current problem since the mris_make_surfaces binary (which is giving you a segmentation fault) is different between the version 5.3.0 and version 5.3.0-HCP of FreeSurfer.* > 3. Environmental script for sourcing FREESURFER_HOME : > > export FREESURFER_HOME=/usr/local/freesurfer > ${FREESURFER_HOME}/SetUpFreeSurfer.sh > /dev/null 2>&1 I am less interested in the running of the script that sets up FreeSurfer (SetUpFreeSurfer.sh) and more interested in making sure that when you run a command like: cat ${FREESURFER_HOME}/build-stamp.txt you have sourced your own environment set up script (your modification of the Examples/Scripts/SetUpHCPPipeline.sh script) before running the cat command. > 4.Path for mris_make_surfaces > vasudev@vasudev-OptiPlex-780:~/Documents/Pipelines-master$ which > mris_make_surfaces > /usr/local/freesurfer/bin/mris_make_surfaces > > 5.Output from mris_make_surfaces --all-info > > vasudev@vasudev-OptiPlex-780:~/Documents/Pipelines-master$ mris_make_surfaces > --all-info > ProgramName: mris_make_surfaces ProgramArguments: --all-info > ProgramVersion: $Name: stable5 $ TimeStamp: 2016/03/18-16:20:13-GMT > BuildTimeStamp: May 13 2013 16:24:28 CVS: $Id: > mris_make_surfaces.c,v1.127.2.6 2013/05/12 22:28:01 nicks Exp $ User: > vasudev Machine: vasudev-OptiPlex-780 > Platform: Linux PlatformVersion: 3.19.0-25-generic CompilerName: GCC > CompilerVersion: 40400 This confirms for me that you are using the wrong version of FreeSurfer. The version of mris_make_surfaces in FreeSurfer v5.3.0-HCP has a more recent build time stamp. > 6. Invocation of PreFreeSurferPipeline.sh : > vasudev@vasudev-OptiPlex-780:~/Documents/Pipelines-master/PreFreeSurfer$/./PreFreeSurferPipeline.sh You do not seem to be using the approach I recommended of *not modifying the PreFreeSurferPipeline.sh script* and instead using the available command line arguments for that script to specify the input files and the operations to perform. If you were using the approach I recommended, a simple invocation of the script like you show: $ ./PreFreeSurferPipeline.sh would fail miserably because you haven't specified even the --path or --subject command line arguments necessary to tell the script the primary data directory for this run. > 7. The result after the successful run of PreFreeSurferPipeline.sh > > Running FAST segmentation > FLIRT pre-alignment > Running BBR >.120524 0.999997 0.002582 -0.000243 0.000000 -0.002583 0.999993 - > .002809 0.000000 0.000235 0.002810 0.999996 0.000000 0.269985 - > 0.265698 > .479317 1.000000 > > START: T2w2T1Reg > > Do 17. Mär 22:50:30 CET 2016 - PreFreeSurferPipeline.sh - Performing Bias > Field Correction > > Do 17. Mär 22:50:30 CET 2016 - PreFreeSurferPipeline.sh - mkdir -p > /media/vasudev/Daten/HCP_Subject/mgh_1010/T1w/BiasFieldCorrection_s-qrtT1wXT1w > > START: BiasFieldCorrection > > .222666 > .976528 > .8651950 > > END: BiasFieldCorrection > > Do 17. Mär 22:53:25 CET 2016 - PreFreeSurferPipeline.sh - Performing Atlas > Registration to MNI152 (FLIRT and FNIRT) > > > START: AtlasRegistration to MNI152 > > END: AtlasRegistration to MNI152 > > Do 17. Mär 23:09:01 CET 2016 - PreFreeSurferPipeline.sh - Completed " > What you have provided does not appear to be the full standard output (or full standard error) from a run of PreFreeSurferPipeline.sh. For example, I was hoping to see the output log messages that come very early in the script that report on such things as all the variables that are set by command line arguments and some of the relevant environment variable settings. There are also subsequent log messages that should be in the standard output that would tell me things such as whether you are "Performing Gradient Nonlinearity Correction" or "NOT PERFORMING GRADIENT DISTORTION CORRECTION", "Performing ... Readout Distortion Correction" or "NOT PERFORMING READOUT DISTORTION CORRECTION", "Performing Bias Field Correction", etc. All of these messages should be included in the standard output generated by a run of PreFreeSurferPipeline.sh. These would help us determine what is really happening before the point at which your run of the FreeSurferPipeline.sh script aborts. The full standard output will generally be a fairly large set of text and to get it you will need to run PreFreeSurferPipeline.sh and capture the stdout and stderr. Please see: http://tldp.org/HOWTO/Bash-Prog-Intro-HOWTO-3.html for an introduction to redirecting stdout and stderr to files. **However**, before you try to capture and send the stdout and stderr, you really need to do the following 4 things. 1. Install and use a released version of the HCP Pipeline Scripts (not a "Development" version). 2. Install and make sure you are using the required version of FreeSurfer. 3. Do not use a modified version of PreFreeSurferPipeline.sh, instead make use of the command line arguments that are available as part of that script by starting with the Examples/Scripts/PreFreeSurferPipelineBatch.sh and setting up the environment variables in a script like Examples/Scripts/SetUpHCPPipeline.sh. 4. Similarly, do not use a modified version of FreeSurferPipeline.sh, instead use the same approach as I've recommended for the PreFreeSurferPipeline.sh script. There is an example "batch" script for you to use as a starting point for running the FreeSurferPipeline.sh script also. Tim -- Timothy B. Brown Business & Technology Application Analyst III Pipeline Developer (Human Connectome Project) tbbrown(at)wustl.edu ________________________________________
The material in this message is private and may contain Protected Healthcare Information (PHI). If you are not the intended recipient, be advised that any unauthorized use, disclosure, copying or the taking of any action in reliance on the contents of this information is strictly prohibited. If you have received this email in error, please immediately notify the sender via telephone or return mail. _______________________________________________ HCP-Users mailing list [email protected] http://lists.humanconnectome.org/mailman/listinfo/hcp-users
