-
Notifications
You must be signed in to change notification settings - Fork 7
/
fs_deface.sh
executable file
·96 lines (84 loc) · 1.95 KB
/
fs_deface.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
#!/bin/bash
# Deface all identifiable structural images in a Freesurfer 6/7 subject directory
#
# AUTHOR : Mike Tyszka, Ph.D.
# PLACE : Caltech
# DATES : 2020-04-01 JMT From scratch
# 2023-09-29 JMT Switch to voxface for defacing
#
# Full list of mgz images generated by FS 6/7 recon-all in <subj_dir>/mri
#
# Identifiable and in the same space
# ----
# T1.mgz
# [T2.mgz]
# nu.mgz
# orig.mgz
# orig_nu.mgz
# rawavg.mgz
#
# Identifiable and in separate spaces
# orig/*.mgz
#
# Deidentified
# ----
# aparc+aseg.mgz
# aparc.DKTatlas+aseg.mgz
# aparc.a2009s+aseg.mgz
# aseg.auto.mgz
# aseg.auto_noCCseg.mgz
# aseg.mgz
# aseg.presurf.hypos.mgz
# aseg.presurf.mgz
# brain.finalsurfs.mgz
# brain.mgz
# brainmask.auto.mgz
# brainmask.mgz
# ctrl_pts.mgz
# filled.mgz
# lh.ribbon.mgz
# norm.mgz
# rh.ribbon.mgz
# ribbon.mgz
# wm.asegedit.mgz
# wm.mgz
# wm.seg.mgz
# wmparc.mgz
# FS subject recon directory
if [ $# -lt 1 ]
then
echo "USAGE : fs_deface.sh <Freesurfer 6/7 subject recon folder>"
exit
else
subj_dir=$1
fi
echo ""
echo "----"
echo "Deface Freesurfer recon data in ${subj_dir}"
echo "----"
subj_id=$(basename ${subj_dir})
# All identifiable images are in <subj_dir>/mri
mri_dir=${subj_dir}/mri
# Loop over all structural images that potentially contain face information
for mgz_fname in \
${mri_dir}/T1*.mgz \
${mri_dir}/T2*.mgz \
${mri_dir}/nu.mgz \
${mri_dir}/orig*mgz \
${mri_dir}/rawavg.mgz \
${mri_dir}/orig/*.mgz
do
echo ""
echo "$(basename ${mgz_fname})"
# Nifti version of MGZ image (defaced in place)
nii_fname=${mgz_fname/.mgz/.nii.gz}
echo " Converting ${mgz_fname} to ${nii_fname}"
mri_convert "${mgz_fname}" "${nii_fname}" > /dev/null
echo " Defacing ${nii_fname} in place"
voxface -v -i "${nii_fname}"
echo " Converting defaced ${nii_fname} to ${mgz_fname}"
mri_convert "${nii_fname}" "${mgz_fname}" > /dev/null
# Cleanup .nii.gz image
echo " Removing intermediate Nifti images"
rm -rf "${nii_fname}"
done