Differences between revisions 7 and 8
Deletions are marked like this. Additions are marked like this.
Line 47: Line 47:
Assume the outputs are saved as flash30avg_inu.mgz and flash5avg_inu.mgz. Note that, a program called mri_ Assume the outputs are saved as flash30avg_inu.mgz and flash5avg_inu.mgz. Note that, a program called mri_apply_inu_correction can be used to
apply the bias field correction result to each individual echo volumes. Type the program name for usage.
Line 49: Line 50:
Step 4: Step 4: At this stage, skull-stripping is required. One option is to generated a synthesized volume using 0.9527*flash30avg_inu.mgz - 0.3039*flash5avg_inu.mgz, where the weights are precomputed and the weighted average will have good gray/white CNR. The "mri_ms_LDA" program mentioned above can be used to compute this weighted average. The usual skull-stripping in FreeSurfer can then be used to get the mask for brain regions. We will call this brain mask as brain_mask.mgz, which is needed in the following subcortical segmentation.

Step 5: Subcortical segmentation can be performed in two ways. One is to use the synthesized volume (and convert to true COR format, i.e., BYTE intensity tyep), and apply the subcortical segmentation using the RB atlas and the standard FreeSurfer subcortical segmentation procedure.
We also built a specific atlas for MEF data, which has exactly two channels (one for flash30, and one for flash5).



MEF refers to the multi-echo FLASH sequence.

MEF provides several advantages over simple FLASH sequence or even the MPRAGE sequence, in that it has less distortion, higher contrast-to-noise ratio for subcortical structures, and it allows the direct estimation of underlying tissue parameters. One disadvantage is that the large dimensionality of the data (multiple-volumes for the same subject) makes it harder for the data analysis.

FreeSurfer is not optimized for the processing of MEF data yet, and this page describes some possible processing schemes.

Scheme #1 (synthesize a single image and then apply the standard FreeSurfer pipeline):

Like in typically FreeSurfer processing stream where multiple scans (of the same contrast property) are averaged after motion correction to generate a single volume for later processing, the multiple volumes from the MEF sequence can also be combined to get one volume of good quality.

Due to the difference in image contrast of images acquired at different flip angle or echo time settings, a simple average would fail. Weighted average or nonlinear combination is thus necessary. FreeSurfer has tools for both approaches.

The weighted linear averaging approach is described in our thickness validation paper. The idea is to apply the Linear Discriminant Analysis (LDA) technique in order to find a optimal set of weights (a projection vector) such that the weighted averging volume has the best contrast-to-noise ratio between a pair of tissue classes (usually between WM and GM).

The program "mri_ms_LDA" can be used to compute this weighting, and the usage is:

  • mri_ms_LDA -lda 2 3 -label manual_label.mgz -weight weights.txt input_vol1 input_vol2 ... input_volN

where "-lda 2 3" indicates optimizing for the two tissue classes with label 2 and 3. "manual_label.mgz" is the manual labeling volume (maybe partially labelled) that should contain voxels with values 2 or 3. "weights.txt" is the output text file containing the computed weights. input_vol# are the MEF volumes (assumed to be already registered and have the same size as the label volume). The number of weights will equal to the number of input volumes.

Usually, the optimal weighting can be computed from a set of training subjects, and then the average weights can be used to process new data.

Suppose the weights are computed, mri_ms_LDA can be used to apply them to new MEF data as follows:

  • mri_ms_LDA -lda 2 3 -weight optimal_weights.txt -W -synth synthesized_vol.mgz input_vol1 input_vol2 ... input_volN

where "synthesized_vol.mgz" is the output volume generated by the weighted average.

The nonlinear synthesization scheme uses the program "mri_ms_fitparms" to first estimate the tissue parameter map (T1, PD, and/or T2*), and then "mri_synthesize" can be used to generate a new image volume with good gray/white contrast from the tissue parameter maps.

Of the two approaches, the nonlinear one works better so far since the dimension reduction is actually performed in two steps: first reducing the input data dimension to 3 (tissue parameter maps), and then to the final single volume. Optimal weighting computation with the LDA method is sensitive to manual ROI selection when the input data dimension is high. But mri_ms_LDA can be more easily used to find the optimal combination for any pair of tissue classes.

Scheme #2 (processing in the multi-spectral space):

This scheme is still under active investigation.

One major disadvantage of the first scheme is that one cannot easily get a single volume optimal for both gray/white segmentation and gray/CSF segmentation. Thus, ideally segmentation and surface reconstruction are better performed direcly using the multi-spetral information of the MEF data. However, a very high dimensional intensity space can still cause much trouble for existing multi-spectral segmentation methods. In the approach we currently take, we usually first generate one single average volume for each flip angle setting. In the following we assume that the MEF sequence uses two flip angle settings, flash30 and flash5. The whole procedure for surface reconstruction from such a MEF data set can be summarized as follows (insider notes: example scripts can be found under /autofs/space/dijon_035/users/xhan/pfizer/mef_avg/scripts)

Step 1: Generate average volume for flash30 (and flash5 respectively):

  • mri_average -noconform flash30_echo?.mgz flash30_avg_tmp.mgz

Step 2: Convert the avgerage volumes above to COR size and resolution, but not converting to BYTE type:

  • mri_transform_to_COR -out_type 3 flash30_avg_tmp.mgz flash30_avg.mgz

The option "-out_type 3" keeps the output volume intensity value in float-type. Similarly, we get flash5_avg.mgz.

Step 3: Apply INU correction using N3 on the two average volumes. Usually, two passes of nu_correct are enough at this stage. Assume the outputs are saved as flash30avg_inu.mgz and flash5avg_inu.mgz. Note that, a program called mri_apply_inu_correction can be used to apply the bias field correction result to each individual echo volumes. Type the program name for usage.

Step 4: At this stage, skull-stripping is required. One option is to generated a synthesized volume using 0.9527*flash30avg_inu.mgz - 0.3039*flash5avg_inu.mgz, where the weights are precomputed and the weighted average will have good gray/white CNR. The "mri_ms_LDA" program mentioned above can be used to compute this weighted average. The usual skull-stripping in FreeSurfer can then be used to get the mask for brain regions. We will call this brain mask as brain_mask.mgz, which is needed in the following subcortical segmentation.

Step 5: Subcortical segmentation can be performed in two ways. One is to use the synthesized volume (and convert to true COR format, i.e., BYTE intensity tyep), and apply the subcortical segmentation using the RB atlas and the standard FreeSurfer subcortical segmentation procedure. We also built a specific atlas for MEF data, which has exactly two channels (one for flash30, and one for flash5).

MEF (last edited 2008-04-29 11:45:53 by localhost)