[RESOLVED] Hcp_longitudinal_freesurfer implementation in v0.98.6

Hello Jure

When I run qunex hcp_longitudinal_freesurfer, I encounter the following issue:

/bin/sh: /opt/HCP/HCPpipelines/FreeSurfer/LongitudinalFreeSurferPipeline.sh: No such file or directory

I’m using 0.98.6 version, Please let me know how to run the same, appreciate the help in advance.

Regards
Suhas

Hi Suhas,

The longitudinal FreeSurfer pipeline is not yet fully developed on the HCP Pipelines side. It is not yet integrated into their master or released version but is sitting on a feature development branch (GitHub - Washington-University/HCPpipelines at feature/longitudinal_fs).

What you would need to do to get it up and running is a bit tricky as you would need to swap the HCP Pipelines within the container with the longitudinal FreeSurfer version. Below are instructions about how to do this:

Step 1: Create a local copy of the development version of HCP pipelines (let’s say in /home/suhas/HCPpipelines, adapt this path as suits your system). Execute the following in terminal:

cd /home/suhas
git clone git@github.com:Washington-University/HCPpipelines.git
cd HCPpipelines
git checkout feature/longitudinal_fs

Step 2: Now we have HCPpipelines with the longitudinal FS in them located on our disk at /home/suhas/HCPpipelines. Next, we need to run QuNex by overwriting the HCPpipelines in the container with the modified version you have sitting outside, if you are using Docker container use:

qunex_container hcp_longitudinal_freesurfer \
    ... parameters ...
    --dockeropt="-v /home/suhas/HCPpipelines:/opt/HCP/HCPpipelines"

The important thing is the --dockeropt parameter at the end. What this does is it binds a folder on the system’s volume (-v) over a folder inside the container’s volume. In our case it binds the HCPpipelines sitting in your home folder (the ones with longitudinal FS in them) over the ones in the container.

If you are using Singularity use:

qunex_container hcp_longitudinal_freesurfer \
    ... parameters ...
    --bind="/home/suhas/HCPpipelines:/opt/HCP/HCPpipelines"

--bind achieves the same for Singularity as dockeropt -v for Docker.

Let me know how it goes. Note that this is a development version of HCP Pipelines so not everything is fully tested. Also longitudinal FS right now is not yet plugged to additional commands (e.g. PostFreeSurfer). I am not sure what you are planning to do with this, but additional work might be needed from here on to do what you want to do.

Best, Jure

@demsarjure I came here to ask if there’s additional documentation anywhere re running hcp_longitudinal_freesurfer (i was having trouble figuring out exactly how i needed to have my folder structured, batch file configured, etc from the info on this page), but it sounds from this thread like it’s a work in progress and there’s likely to be more in the future, is that correct? Thanks!

Hi, you are correct. This is a work in progress. We are working together with the team behind HCP pipelines to get this up and running in a fashion that will be as easy as possible for users (no need ot manually restructure folders, etc.). Once the pipeline is fully developed on HCP side (longitudinal freesurfer is more or less done, they are working on longitudinal_post_freesurfer), it will be supported extremely quickly through QuNex. On our end, things are more or less ready, this is why the hcp_longitudinal_freesurfer command exists, but is is not yet supported out of the box.

Thank you, it’s great to have that cleared up! Will keep an eye out for updates.