1. 目的
2. コマンド
3. 使用例
3.1. 最小値と最大値
3.2. ボクセル数および容積
3.3. 平均値と標準偏差
3.4. マスク画像を用いた計測
1. 目的
- 定量値(容積や拡散定量値など)の算出
2. コマンド
FSLのfslstats
コマンドを用いて、定量値を算出することが可能。
fslstats
のヘルプは次の通り。
Usage: fslstats [preoptions] <input> [options] preoption -t will give a separate output line for each 3D volume of a 4D timeseries preoption -K < indexMask > will generate seperate n submasks from indexMask, for indexvalues 1..n where n is the maximum index value in indexMask, and generate statistics for each submask Note - options are applied in order, e.g. -M -l 10 -M will report the non-zero mean, apply a threshold and then report the new nonzero mean -l <lthresh> : set lower threshold -u <uthresh> : set upper threshold -r : output <robust min intensity> <robust max intensity> -R : output <min intensity> <max intensity> -e : output mean entropy ; mean(-i*ln(i)) -E : output mean entropy (of nonzero voxels) -v : output <voxels> <volume> -V : output <voxels> <volume> (for nonzero voxels) -m : output mean -M : output mean (for nonzero voxels) -s : output standard deviation -S : output standard deviation (for nonzero voxels) -w : output smallest ROI <xmin> <xsize> <ymin> <ysize> <zmin> <zsize> <tmin> <tsize> containing nonzero voxels -x : output co-ordinates of maximum voxel -X : output co-ordinates of minimum voxel -c : output centre-of-gravity (cog) in mm coordinates -C : output centre-of-gravity (cog) in voxel coordinates -p <n> : output nth percentile (n between 0 and 100) -P <n> : output nth percentile (for nonzero voxels) -a : use absolute values of all image intensities -n : treat NaN or Inf as zero for subsequent stats -k <mask> : use the specified image (filename) for masking - overrides lower and upper thresholds -d <image> : take the difference between the base image and the image specified here -h <nbins> : output a histogram (for the thresholded/masked voxels only) with nbins -H <nbins> <min> <max> : output a histogram (for the thresholded/masked voxels only) with nbins and histogram limits of min and max Note - thresholds are not inclusive ie lthresh<allowed<uthresh
基本的な使い方は、次の通り。
# 基本 fslstats <入力画像> [オプション] # マスクを適用する場合 fslstats <入力画像> -mas <マスク画像> [オプション]
3. 使用例
fslstats
コマンドで、よくある使用例を紹介する。
3.1. 最小値と最大値
最小値と最大値は、オプション-R
を用いて計測する。
以下では、頭蓋除去済みの脳画像(T1_skull_stripped.nii.gz)における最小値と最大値を計測している。
fslstats T1_skull_stripped.nii.gz -R
0.000000 1307.000000
3.2. ボクセル数および容積
ボクセル数および容積の計測は、オプション-V
を用いる。似ているオプションで-v
があるが、オプション-V
では、信号値が0あるいはnanでない領域を対象に、計測する。他にも小文字・大文字で区別しているオプションがあるが、信号値がある領域のみを対象にしたい場合は、基本的に大文字オプション(例:-V, -M, -S)で計測するとよい。
以下では、灰白質(GM_seg.nii.gz)の容積を計測している。
fslstats GM_seg.nii.gz -V
882175 697814.250000 # 左からボクセル数、容積(mm^3)
3.3. 平均値と標準偏差
平均値を計測するにはオプション-M
を、標準偏差を計測するにはオプション-S
を用いる。
以下では、FA(FA.nii.gz)の平均値を算出している。
fslstats FA.nii.gz -M
0.276669
以下では、FA(FA.nii.gz)の標準偏差を算出している。
fslstats FA.nii.gz -S
0.186857
3.4. マスク画像を用いた計測
計測したい領域がある場合、オプション-k
で領域(マスク画像)を指定して計測するとよい。
例えば、白質(WM_seg.nii.gz)領域における、FAの平均値を計測したい場合、次のようになる。
fslstats FA.nii.gz -k WM_seg.nii.gz -M
0.507313
計測したい領域が複数あり、それらの領域にインデックス(値)が割り振られている画像(例:CSF=1, GM=2, WM=3の画像)があるとき、オプション-K
を用いると便利である。
例えば、白質を48領域分割したアトラス(JHU-ICBM-labels-1mm_indiv.nii.gz)を用いて平均値を計測する場合、次のようになる。
fslstats -K JHU-ICBM-labels-1mm_indiv.nii.gz FA.nii.gz -M
0.491841
0.512530
0.591286
0.667444
... [省略]
0.294148