Example #1
0
def do_bet(head, fracval, fourD, logpath, tmpdir, prov_list):
    bet = fsl.BET()
    prefile = head.split("/")[-1]
    prefile_wo_ext = prefile[: prefile.find(".nii")]
    if fourD == False:
        bet.inputs.in_file = head
        bet.inputs.out_file = tmpdir + prefile_wo_ext + version + str(fracval) + "frac_3D.nii.gz"
        bet.inputs.frac = fracval
        bet.inputs.mask = True
        xnatmaster.add_to_log(logpath, bet.cmdline)
        prov_list = xnatmaster.track_provenance(
            prov_list,
            "/import/monstrum/Applications/fsl_4.1.7/bin/bet",
            "v2",
            head + " " + tmpdir + prefile_wo_ext + version + str(fracval) + "frac_3D.nii.gz -m",
        )
        result = bet.run()
        slice_bet(tmpdir, tmpdir + prefile_wo_ext + version + str(fracval) + "frac_3D.nii.gz")
        return tmpdir + prefile_wo_ext + version + str(fracval) + "frac_3D"
    else:
        bet.inputs.in_file = head
        bet.inputs.mask = True
        bet.inputs.out_file = tmpdir + prefile_wo_ext + version + str(fracval) + "frac_4D.nii.gz"
        bet.inputs.functional = True
        bet.inputs.frac = fracval
        xnatmaster.add_to_log(logpath, bet.cmdline)
        prov_list = xnatmaster.track_provenance(
            prov_list,
            "/import/monstrum/Applications/fsl_4.1.7/bin/bet",
            "v2",
            head + " " + tmpdir + prefile_wo_ext + version + str(fracval) + "frac_4D.nii.gz -F",
        )
        result = bet.run()
        slice_bet(tmpdir, tmpdir + prefile_wo_ext + version + str(fracval) + "frac_4D.nii.gz")
        return tmpdir + prefile_wo_ext + version + str(fracval) + "frac_4D"
Example #2
0
def do_bet(head, fracval, fourD, logpath, tmpdir, prov_list):
    bet = fsl.BET()
    prefile = head.split('/')[-1]
    prefile_wo_ext = prefile[:prefile.find(".nii")]
    if fourD == False:
        bet.inputs.in_file = head
        bet.inputs.out_file = tmpdir + prefile_wo_ext + version + str(
            fracval) + 'frac_3D.nii.gz'
        bet.inputs.frac = fracval
        bet.inputs.mask = True
        xnatmaster.add_to_log(logpath, bet.cmdline)
        prov_list = xnatmaster.track_provenance(
            prov_list, '/import/monstrum/Applications/fsl_4.1.7/bin/bet', 'v2',
            head + ' ' + tmpdir + prefile_wo_ext + version + str(fracval) +
            'frac_3D.nii.gz -m')
        result = bet.run()
        slice_bet(
            tmpdir, tmpdir + prefile_wo_ext + version + str(fracval) +
            'frac_3D.nii.gz')
        return tmpdir + prefile_wo_ext + version + str(fracval) + 'frac_3D'
    else:
        bet.inputs.in_file = head
        bet.inputs.mask = True
        bet.inputs.out_file = tmpdir + prefile_wo_ext + version + str(
            fracval) + 'frac_4D.nii.gz'
        bet.inputs.functional = True
        bet.inputs.frac = fracval
        xnatmaster.add_to_log(logpath, bet.cmdline)
        prov_list = xnatmaster.track_provenance(
            prov_list, '/import/monstrum/Applications/fsl_4.1.7/bin/bet', 'v2',
            head + ' ' + tmpdir + prefile_wo_ext + version + str(fracval) +
            'frac_4D.nii.gz -F')
        result = bet.run()
        slice_bet(
            tmpdir, tmpdir + prefile_wo_ext + version + str(fracval) +
            'frac_4D.nii.gz')
        return tmpdir + prefile_wo_ext + version + str(fracval) + 'frac_4D'
Example #3
0
 formname = formname.replace(" ", "_")
 nonzeroi = str(i).lstrip("0")
 nonzerosubid = str(subj_id).lstrip("0")
 newoutdir = (
     outdir + str(nonzerosubid) + "_" + str(nonzeroi) + "/" + str(seq_id) + "_" + str(seqname) + "/bet/"
 )
 if (
     not xnatmaster.ensure_dir_exists(newoutdir)
     and xnatmaster.ensure_write_permissions(newoutdir)
     and not xnatmaster.ensure_dir_exists(newtmpdir)
     and xnatmaster.ensure_write_permissions(newtmpdir)
 ):
     sys.exit(1)
 ##New dir str end
 print "Form: " + str(formname)
 xnatmaster.add_to_log(logpath, "Processing sequence: " + seqname + ":" + str(seq_id))
 global prov_list
 prov_list = []
 betfound = 0
 niftifound = 0
 donewithsequence = 0
 niftifound = xnatmaster.existing_nifti(i, seq_id, central)
 if niftifound < 1:
     print "Could not find nifti for this scan. Please run dicoms2nifti before this script."
     sys.exit(1)
 if findexisting == "1":
     xnatmaster.add_to_log(logpath, "Checking for existing BET: " + seq_id)
     betfound = xnatmaster.existing_bet(i, seq_id, central)
     if betfound > 0:
         if download == "1":
             xnatmaster.get_bet(i, seq_id, newoutdir, central, proj_name, subj_id)
Example #4
0
            formname = formname.replace("(", "_")
            formname = formname.replace(")", "_")
            formname = formname.replace(" ", "_")
            nonzeroi = str(i).lstrip('0')
            nonzerosubid = str(subj_id).lstrip('0')
            newoutdir = outdir + str(nonzerosubid) + '_' + str(
                nonzeroi) + '/' + str(seq_id) + '_' + str(seqname) + '/bet/'
            if not xnatmaster.ensure_dir_exists(
                    newoutdir) and xnatmaster.ensure_write_permissions(
                        newoutdir) and not xnatmaster.ensure_dir_exists(
                            newtmpdir) and xnatmaster.ensure_write_permissions(
                                newtmpdir):
                sys.exit(1)
##New dir str end
            print "Form: " + str(formname)
            xnatmaster.add_to_log(
                logpath, "Processing sequence: " + seqname + ":" + str(seq_id))
            global prov_list
            prov_list = []
            betfound = 0
            niftifound = 0
            donewithsequence = 0
            niftifound = xnatmaster.existing_nifti(i, seq_id, central)
            if niftifound < 1:
                print "Could not find nifti for this scan. Please run dicoms2nifti before this script."
                sys.exit(1)
            if findexisting == '1':
                xnatmaster.add_to_log(logpath,
                                      "Checking for existing BET: " + seq_id)
                betfound = xnatmaster.existing_bet(i, seq_id, central)
                if betfound > 0:
                    if download == '1':