Mark Dow

Space Software

Example volumes

MNI ICBM color composite human brain volumes

MNI ICBM  color rendered top  MNI ICBM color sagital medial  color composite, MRI channels, and mask comparison  venous sinus mask, link to


    False color composite volumes are constructed from MRI of human brains, with each contrast represented in separate color channels. The weighted image values are non-linearly scaled to emphasize various aspects of human brain anatomy.

    1H MRI provides a 3-D map of hydrogen nuclei, mostly within water molecules, weighted by nuclear spin relaxation rates. Different weighting provides slightly different information about the density and molecular environment of hydrogen nuclei.

    The ICBM 152 Nonlinear atlases version 2009, are volumes constructed from non-linearly coregistered averages from MRI volumes of 152 subjects. They provide spectacular detail and low noise for typical features of the human brain. Comparable volumes for T1, T2 and PD (proton/spin density) weighting are included. Averages of many subjects are frequently used in neuroscience as coregistration targets for spatially transforming MRI data of individuals into a common space (coordinate system), often called MNI space.

High contrast color MNI ICBM 152 2009 asymmetric brain

    Below are example sections of a color composite volume (left) of the masked brain, uses exagerrated contrast and gamma transforms to highlight mid-brain and white matter contrast differences. Red: -T2, Green T1, blue PD. At right are example sections of the three primary contrasts (T2, T1, PD) of the ICBM 2009c asymmetric non-linear coregistration of 152 adults.
adult human brain, color components composite
-T2, T1, -PD as an RGB color composite (left), and T2, T1, PD native grayscale example sections

    Note that several details are degraded or lost, mostly in low and high luminance regions. For example the ventricles are included in the brain mask but the ventricle septum (midline above center) and choroid plexus (in inferior horn of the lateral ventricles) are not visible in the color composite but are visible in the in the T1-weighted image (second from right).

:
adult human brain, color components composite
(click for large image)
A variety of sections and a few surface renderings of the masked color composite brain.


    The brain mask used (see volume data) is an edited version of the brain mask included with ICBM 2009c distribution. The mask generally extends to or past the neocortex and other brain structures, including some meninges, but a feathered and slightly eroded version is used for each contrast/color channel to avoid meninges and edge artifacts.
:
color composite, MRI channels, and mask comparison
(click for large image)
Example section of color composite (left), the T1, -T2, and -PD MRI contrasts (center) which correspond with the green, red and blue color channels, respectively, and the binary mask (pink at right) with the T1 image background.

T1 provides most high spatial frequency luminance edge detail.

The exterior neocortex edge ...

Occipital pole ...

Volume data

All data use the MNI coordinate system. Those with extension .vol.gz are Space Volume type 7 file type, compressed.
See ICBM 152 Nonlinear atlases version 2009 for downloading the raw data as well as other derived volumes (Grey matter, white matter, CSF probability maps, etc.)

High contrast 24-bit (3 x 8-bit) color volume:
t2-t1-pd_brain_high_contrast_24-bit_color.vol.gz    (5 MB)
Brain mask, 8-bit using only two values, used for color composite:
mask_brain_tweaked_e.vol.gz


[To Do: NifTi format (8-bit or 16 bit?) ]
[To Do:
header images
forward links
low contrast version
peripheral brain structures
skull, etc.
renderings
section animations
]


Brain part masks, MNI ICBM 152 2009 asymmetric brain

venous sinuses mask, renderings
(click for large image)
Rendering of the venous sinuses mask. The mask is binary, slightly smoothed for rendering.


venous sinuses mask, rendered rotation
stereo pair, cross-view, click for large animation (15 MB)
Renderings of the venous sinuses mask.

Mask volume data

Venous sinuses mask, 8-bit binary (using only two values)
mask_venous_sinuses_b.vol.gz



To Do: Construction procedure notes (new page)

Space Software, Matlab
MNI ICBM 152 asymmetric 2009c

Construct scaled 8-bit copies of each volume (T1, T2, PD contrast)

    The raw volumes are in a NiFti-1 data  format using a16-bit signed integer representation. Space Software can read and write to this format, but it is convenient to work with 8-bit values for tinker with and compositing color volumes. The values are non-linearly scaled  before reducing the bit depth to preserve information. This scaling was a rough guess on the first pass based on visual inspection and histograms. Sometime I might redo these steps using a better approximation of the desired final scaling.
    There is a wide dynamic range for a small number of high values (T1 high, T2/PD low), particularly in large nerves, anterior commisure, etc.. An asymmetric sigmoid transform would preserve a bit of this information well.

Open T1 volume (not masked)
File | Open
mni_icbm152_t1_tal_nlin_asym_09c.nii
Non-linear scaling
Colors | Transforms and Histogram
Min./Max. = 0/100
Black point = 13, White Point = 100
Gamma = .5
Colors | Apply Color Transform to Values
Convert to 8 bit grayscale
Volume | Color depth | 8 bit Grayscale
File | Save As
mni_icbm152_t1_tal_nlin_asym_09c_8bit_contrast.vol.gz

Repeat with T2 and PD volumes:

T2
mni_icbm152_t2_tal_nlin_asym_09c.nii

Black point = 100, White Point = 25
Gamma = 1.5
              
 mni_icbm152_t2_tal_nlin_asym_09c_8bit_contrast.vol.gz

PD
mni_icbm152_pd_tal_nlin_asym_09c.nii

Black point = 100, White Point = 50
Gamma = 1.0
              
 mni_icbm152_pd_tal_nlin_asym_09c_8bit_contrast.vol.gz

Brain mask tweaking

    The brain mask that comes with the MNI ICBM 2009 distribution is based on the T1 data and is pretty good.
mni_icbm152_t1_tal_nlin_asym_09c_mask.nii
good wrt. including brain and excluding non-brain at most externally exposed neocortical brain surface

    But for purposes of masking each of the contrasts, which are not exactly corregistered at edges and have edge artifacts, I tweaked it.

Work on an 8-bit copy of the MNI T1 brain mask.
mask_brain.vol.gz
 
First approach [Too hard, too tedious, too arbitrary, abandoned. It did serve to expand the mask a bit, which is used in the second approach, below.]

Shift a copy of the mask by one voxel (mm) and merge with the original, effectively expanding the mask in one direction

endless fussing
copy crop shift and merge
gaussian blur, histogram clip, etc.
poke, poke, poke at particular regions

crop to original volume dimensions

mask_brain_tweaked_c.vol.gz 

Second approach

Use a mask that includes more than all of the brain, except for a few spots

mask_brain_tweaked_d.vol.gz

Threshold T1: WP/BP = 20/20 to 80/80
The T1 brain is quite uniform across its surface between ~20 and 80, but connected to some meninges goo and posterior sinus below ~60. 

Threshold T1: WP/BP = 40/40
What is the corresponding 16-bit value of this threshold in the original T1 volume?
overlay mask, color and 70% transparency

Manually add to mask any on brain that are above this threshold (white at edge of transparent green mask. Make sure mask includes all of cortex, brainstem and cerebellum, but don't fuss over where the appropriate boundary between brain and nerves/midline sinus/other impinging tissue.
Repeat at lower T1 threshold
Threshold T1: WP/BP = 30/30
Lot of poking, lot of avoiding meninges goo

Repeat at successively higherT1 thresholds, editing the mask where there is a luminance valley between features just below the threshold
Threshold T1: WP/BP = 30/30 up to about 70/70
Lot of poking, lot of avoiding meninges goo

Use a lower threshold at base of brainstem, below most inferior part of cerebellum? This should
have some a gradient of intensity normalization applied.
Threshold T1: WP/BP = 20/20

What's with the discontinuity in sharpness between the 4th and 5th plane from the bottom? Maybe do some manual copy paste of the 5th plane to hide this a bit.


Trim nerves.
Estimate base of nerve by brainstem surface continuation.

Tweaking the mask (also see Tweaking a binary mask)

Use an intermediate masked volume and toggling mask  to clean up low value boundaries and features.

Setup
T1 8-bit as underlying volume
gamma ~1.7 to emphasize low value boundaries

Mask for editing.
40-80% transparent

Original MNI mask as a secondary guide mask

70% transparent
Red High = .9 for cyan
visibility off most of the time

Edit
Most of the time the mask for editing was current
Edit |Pen
rapid toggling of mask visibility
check local surface orientation, local navigation
<,>-keys

draw on mask
poke, poke, poke
switch edit color
Edit | Select Edit Color
0 or 255
poke, poke, poke
repeat

check against original mask occasionally
sanity check new edits
find regions that need editing

review each region at each orientation after edits
check smoothness criteria

Feather and apply mask to each contrast

    This procedure is somewhat arbitrarily adjusted for each of the three contrast volumes, T1, T2 and PD. Each has different edge characteristics that cause an artifactual shift of contrast ratios, and therefore color and brightness in a color composite. By feathering the edge of the mask differently for each, these artifacts can be visually minimized and the imperfections of the mask deemphasized. The general procedure is:
open an original contrast (e.g. mni_icbm152_t2_tal_nlin_asym_09c.nii or ..._8bit_contrast.vol.gz
open mask (e.g. mask_brain_tweaked_e.vol.gz) as overlay
gaussian blur of mask (8-bit grayscale)
Volume | Make Filtered Overlay | Gaussian, 1 to about 3 mm FWHM
this makes a modified copy of the mask
close original (unblurred) mask
mask with the feathered (blurred edges) copy
adjust the brighntess/contrast/gamma of the mask edges
          set Black point of mask to >= 128 (effectively erodes mask)
visually check how this affects the masked volume edges
apply the non-linear transform changes to the mask
Color | Apply Transform to Values
Apply mask to values
Overlay | Mask with this Overlay
Overlay | Merge All
adjust BP/WP/G, to set relative values and maximize contrast in interesting regions
Colors | Apply Color Transform to Values
Change to 8-bit for use as a color component
Save
as .vol, uncompressed so Matlab can open without decompression

[Make color composite
>> composite_Space_volumes()
open and visually check.
Adjust color transforms and iterate above.]

The feathering parameters for each contrast are:

T2 (t2_8bit_contrast.vol, or another suitably transformed copy of the 16-bit mni_icbm152_t2_tal_nlin_asym_09c.nii):

3 mm gaussian smooth of mask
brightness contrast of BP/WP = 160/255 of mask
transform
mask and merge (to inverted and transformed volume, for black background)
BP/WP = 30/210 (G = 1.1 might be a bit better, less magenta in GM)
transform

T1:
3 mm gaussian smooth of mask
brightness contrast of BP/WP = 160/255 of mask
transform
mask and merge
BP/WP = 30/240, G = .7 (.8 might be a bit better, less magenta in GM)
transform

PD:
3 mm gaussian smooth of mask
brightness contrast of BP/WP = 192/255 of mask
transform
mask and merge
BP/WP = 30/220, G = .8
transform

Trim masked brain manually in a few obvious regions, those that will impede erosion?


Not ideal for all contrasts at all locations.

original T1 brain mask: 1886582 mm3 = 1,887 cm3
tweaked_c brain mask: 2043078 mm3 = 2,033 cm3
tweaked_d brain mask: 1924000 mm3 = 1,924 cm3
tweaked_e brain mask: 1895000 mm3 = 1,895 cm3
tweaked_e brain mask: 1896215 mm3 = 1,896 cm3

Segmentation masks


Created as 8-bit overlays of 8-bit contrast volumes
File/Overlay | New Blank Overlay, overlapping one of the converted MNI ICBM 2009 volumes

Maintain dimensions and origins of all MNI ICBM 2009 volumes:

Dimensions [x, y, z] = [193, 229, 193]
Origin [x, y, z] = [96, 132, 78]      (wrt. corner voxel centered on [0,0,0], using Space Software RAS coordinate system convention)
Voxel size [x, y, z] = [1.0, 1.0, 1.0]
See Volumes | Volume Information

They can be cropped without effect, but sometime I might want to convert back to the MNI ICBM 2009 format conventions, and recropping to exact full size is painful.
If I use 2x resampling the RAM needed for several segmented will be an issue and cropping will be helpful.

Crop a volume to match a target volume's dimension and origin:

There is a relatively painless way to crop to a particular size:
Open a target volume, one with the target size and origin
Create a blank overlay volume
File/Overlay | New Blank Overlay
Overlap the current volume
The new overlay inherits the size and origin of the underlying volume

Close the target volume
overlay the cropped mask
merge blank volume with mask
Overlays | Merge All


Pituitary segmentation, MNI multimodal

mask_pituitary.vol.gz

Contrast is T1-T2-PD +++

Optic nerve segmentation

mask_optic_nerve.vol.gz

Pons artery segmentation

mask_pons_artery.vol.gz


Composite segmentations with brain mask, for visual check of segmentation and where contrast ugliness occurs.

merge all masks
This might need to be done separately for each channel
Feather and threshold mask edges. T2 and PD need to be eroded a small amount.
Erosion might be different for fine detail added to the mask.
Fractional shifts (of masks) would be ideal but would require resampling.
Maybe x2 for all masks and volumes, only using +-1/2 voxel shifts.

mask and merge with three 8-bit contrasts separately
feather and erode appropriately for each contrast
File | Save As uncompressed .vol

run MATLAB 3-color composite program
composite_Space_volumes.m
Hardcode relative file paths (and mask dimensions if they've changed).
>> composite_Space_volumes()

load and inspect

set default transforms


Dural venous sinuses

[To Do: Describe segmentation procedure.]
Mask T1 volume with brain mask. The boundary between venous sinuses and brain then has a high negative gradient (sharp edge).
Threshold the remaning T1 volume at a single value that includes all of venous sinuses.
Overlay a bland venous sinus binary mask volume.
Use 3-D fill, with a colored mask to distinguish it from the thresholded T1.
At the base, and near the sigmoid sinuses, manual drawing and iterative approximation is needed, using previous experience.
Tweak, smooth, tweak.
Render and make a rotation movie of a binary mask

Make a smoothed copy

Volume | Make Filtered Overlay | Gaussian, 2.0 mm FWHM isotropic

Close the original mask

It might look a bit better if it were oversampled, either before or after gaussian smoothing. But rendering takes longer, and small details will only appear for large images. What are reasonable parameters for oversampling x 2 or x 3?

Adjust color transform
BP/WP/G =  80/255/2.0

Set rendering parameters
Rendering | Render Parameters ...
dark threshold =  0
gradiant threshold =  0
smoothing = 1.0

Surface/Lighting
ambient = 70
diffuse = 50
difuse contrast = 50
reflected = 30
specularity = 3



Render Movie
[To Do: Note bad behavior and workaround.]

Magnification: 3 (3-key)

Center volume
Volume | Volume Information ...
Center, at nearest voxel

If stereo pair, adjust overlap so the pair doesn't interfere.
Space Software bug: 3/21/11 With "rotate or slice through" movie setup, volume cues are rendered even if they are not currently active.
Movie | Movie Setup ...
Rotate or Slice Through:
any slice or rotation parameters
OK and Make

Notbrain

Same procedure but inverting the brain mask

Different contrasts, those with black off brain, + + +

To Do: Segment and remove contiguous CSF magenta (- + +), but not eyes etc.
manually fix up
feather exterior side?


References

ICBM 152 Nonlinear atlases version 2009 methods:
Image pre-processing included non-uniform intensity correction (Sled, 1998) and intensity normalization to a range of 0–100. All T1w MRI data was then transformed into the Talairach-like MNI stereotaxic space using minctracc (Collins, Neelin et al. 1994). Brain masking was performed using BET (Smith, 2002). Age-based subgroups of subjects were created, and all scans within each group were then automatically re-registered to the stereotaxic space using the appropriate template. For each group, an iterative nonlinear co-registration algorithm (Grabner, Janke et al. 2006, Fonov, 2010 under review), was applied to obtain the group averages. The T1-based transformation was then applied to the T2, PD and tissue classified volumes to generate average atlases for these data. Methodological details can be found in (Fonov, 2010 under review).

The following publications should be referenced when using the ICBM 152 Nonlinear atlases version 2009:

VS Fonov, AC Evans, K Botteron, CR Almli, RC McKinstry, DL Collins and BDCG, Unbiased average age-appropriate atlases for pediatric studies, NeuroImage, In Press, ISSN 1053–8119, DOI: 10.1016/j.neuroimage.2010.07.033

VS Fonov, AC Evans, RC McKinstry, CR Almli and DL Collins Unbiased nonlinear average age-appropriate brain templates from birth to adulthood NeuroImage, Volume 47, Supplement 1, July 2009, Page S102 Organization for Human Brain Mapping 2009 Annual Meeting, DOI: 10.1016/S1053-8119(09)70884-5


------------------------------------

 Public Domain DedicationThis work is dedicated to the Public Domain.
There are no restrictions on use of the volumes and images on this page. [See ICBM MNI 2009 for original volume data and stipulations on redistribution.] Claiming to be the originator of the material, explicitly or implicitly, is bad
karma. A link (if appropriate), a note to dow[at]uoregon.edu, and credit are appreciated but not required.


Comments are welcome (dow[at]uoregon.edu).