Skip to content

Minor Error in Structural Image Registration: Could not find /tmp/fsl_[process_id]_ox_asl/tmp_asl_reg/low2high #32

@ellarowsthorn

Description

@ellarowsthorn

Hi everyone, I have been a user of BASIL for a while now, but have more recently been coming across an issue relating to structural image registration. Error: "could not find a supported file with prefix "/tmp/fsl_[process_id]_ox_asl/tmp_asl_reg/low2high". I believe I have found the cause.
Rest assured, this does not seem to affect any downstream processes from what I can tell, but verification of this from others is welcome!

Looking into oxford_asl.in, when BASIL runs the structural image registration there are a few potential options, such boundary-based registration (when using the --reg-init-bbr flag) or FLIRT:

if [ ! -z $reg_init_bbr ]; then
         Log "Using BBR for initial registration"
            fslmaths $regfrom -thr 0 -bin $tempdir/mask_reg_init
            extraoptions=$extraoptions" -m $tempdir/mask_reg_init --tissseg $tempdir/tissseg"
            regto=low2high_final
        else
            Log "Initial registration is FLIRT only"
            extraoptions=$extraoptions" --mainonly"
            regto=lowtohigh
        fi
# Save the registered image
 imcp $tempdir/tmp_asl_reg/$regto $tempdir/asl2struc_initial

As you may notice, the resulting file is expected to be named either "low2high_final" or "lowtohigh" respectively. However, in asl_reg.in the files are saved as "low2high" when running FLIRT, which, due to the typo, causes errors for copying the NIFTI file to asl2struc_initial. While this file usually also gets copied over to the output directory with the --qc-output flag, I don't think it is otherwise directly used by further processes.

Although I'm yet to test this myself, I believe changing this portion of the code to the below could fix the error for the FLIRT registration:

if [ ! -z $reg_init_bbr ]; then
            Log "Using BBR for initial registration"
            fslmaths $regfrom -thr 0 -bin $tempdir/mask_reg_init
            extraoptions=$extraoptions" -m $tempdir/mask_reg_init --tissseg $tempdir/tissseg"
            regto=low2high_final
        else
            Log "Initial registration is FLIRT only"
            extraoptions=$extraoptions" --mainonly"
            regto=low2high
        fi
# Save the registered image
 imcp $tempdir/tmp_asl_reg/$regto $tempdir/asl2struc_initial

TLDR: feel free to ignore so long as your structural registration otherwise worked :)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions