Title:
1 A New Automatic Approach for Cerebrovascular 3-D
Volume Segmentation with New MIP-Based Technique
for Validation
M. Sabry M., Charles B. Sites, Aly A. Farag,
Stephen Hushek, and Thomas Moriarty
2Terminology
MRI Magnetic Resonance Imaging MRA Magnetic
Resonance Angiography MRV Magnetic Resonance
Ventriculargrams DSA Digital Subtraction
Angiography MIP Maximum Intensity
Projection VTK Visualizarion Toolkit
3Why Cerebrovascular Segmentation?
- Accurate description of the vascular tree is very
- important to assist in clinical applications,
e.g., - Surgical Planning.
- Quantitative Diagnosis.
- Monitoring Disease Progress.
4Objectives
- Segment Arteries from MRA
- Segment Veins from MRV
- Validate Results
5Background
- The histogram of MRA volume could be classified
into three intensity regions - (LOW) Fluid surrounding brain tissue, bone and
the air. - (Medium) Brain tissues including both the grey
and white matter. - 3. (High) fat adjacent to arteries veins a
255.
a
6Design
- We present a modified version of 3-D computer
graphics - Region-Filling algorithm to sweep the vascular
tree from - Seed Locations and segment the desired structure.
- Our Algorithm Consists of Two Basic Steps
- Image Seed Selection
- Definition of Vascular Tree
7Image Seed Selection
- MRA images are acquired from the lower portion of
the nasal cavity upward to the top of the skull.
- Since Carotid Arteries is the largest artery in
brain, The seed image will be selected
automatically, since it contains the largest high
intensity cross sections of Carotid
- All Carotid voxels are marked parents. They
will be used to retrieve children voxels
later.
8Vascular Tree Definition
- Each voxel in MRA volume is the center of a cube
of length 3 voxels. - Each parent is compared with the 26-adjacent
neighbor children. - If the intensity level of the child falls in the
range a-255, it is added to the
Segmented_Volume . - Parent / Child method eliminated the possibility
of having unrelated tissues that get connected to
segmented vascular tree.
9How to Calculate a ?
- Lets define ? as the ratio of the segmented
volume to the total volume.
- Our Research team found that when ? 1.5
4.5, excellent segmentation results are
achieved. - If ? is greater than this range, a should be
Increased. - If ? is lower than this range, a should be
Decreased. - It is found that a 20 40 is a good initial
estimate.
10MRA Validation
- MRA validation is extremely difficult because of
the vascular tree complexity. - There exists no phantoms that mimics the
complexity of the vascular tree especially those
vessels whose diameters less than 1mm. - Practitioners usually validate the resulting
cerebrovascular volume by rotating the visualized
3-D model by certain angles in order that the
views at these angles agree with the available
2-D images taken by DSA, X-ray, or MIP.
11MIP (Maximum Intensity Projection)
- MIP is the state-of-the-art volume rendering
technique to produce two-dimensional images of
the vascular trees from 3D MRA data at different
viewpoints.
- MIP Exploits The Fact
- Intensity of Vascular tree are higher than those
of the surrounding tissues.
- Although the idea behind MIP algorithm seems to
be easy especially at angles 0, 90, but the
implementation is quite difficult to be general
for any angle ?.
12MIP Cont.
- How Does it Work ?
- Parallel virtual rays are applied to the volume
at certain angle ?. - The max. intensity voxel in the path of each ray
is searched. - The searched voxels forms a MIP image at angle ?.
- Rays are rotated around certain axis to find the
rest of the MIP images.
13MIP Cont.
14MIP Cont.
The Rays are allowed to rotate around ? X-axis ?
Y-axis ? Z-axis In steps of 5 degrees
Z
X
Y
15Results
- MRA data sets were collected using GE MEDICAL
SYSTEMS Genesis Signa MRI system. - MRA data are 256x256x117, 1 mm.
- MRV data are 256x256x84, 2 mm.
- Our algorithms are implemented using C under
Unix on SGI-Onyx 2 Supercomputer. - We used VTK as a visualization toolkit to render
results in stereo on Immersa-Desk virtual reality
system.
16MRA Results
Side By Side Visual Validation for Patient 1
Before Segmentation (First Row)
? 0 ? 25 ? 45
? 90
After Segmentation (Second Row)
17MRA Results Cont.
Side By Side Visual Validation for Patient 2
Before Segmentation (First Row)
? 0 ? 25 ? 45
? 90
After Segmentation (Second Row)
18MRA Results Cont.
3D Visualization on Imersa-Desk
Patient 1
Patient 2
After Segmentation
19MRV Results
3D Visualization on Imersa-Desk
Patient 3
20Conclusion
- We have presented a robust technique for
automatic segmentation of the vascular tree from
MRA and MRV. - We also presented a new MIP-based technique for
validating the segmentation algorithm by
projecting both the original and segmented volume
at different angles and compare the resultant MIP
images side by side. - A radiologist and a neurosurgeon have validated
our results successfully. The accuracy of the
results has shown details of the vascular
structure down to the limits of the MRI system.
21(No Transcript)
22CVIP_Medica
- I started the nucleus of a medical software
package called CVIP_Medica. - This library is supposed to offer an extensive
practical algorithms and utility functions for
medical researchers. - The library is built entirely in C under Unix.
- Although it is a medical library, but there are
common utilities that may be shared between
different groups in the lab. - The library is open source for CVIP students,
such that each one can access and modify it to
suit his goals.
23Medica Design
- The library is designed to be AS GENERAL AS
possible i.e, not specific to certain
application. - The function names are selected to reflect their
usage.
Ex PGMVolume class void Read(int
READING) void SaveProcessedVolume() void
SaveProcessedVolume(char pathPrefix) void
SaveSegmentedVolume() void SegmentTree(int Rmin,
int Rmax, int SeedSliceNo) void
Histogram() void MIP_Z(int startAngle, int
endAngle, int stepAngle) void MIP_Y(int
startAngle, int endAngle, int stepAngle) void
MIP_X(int startAngle, int endAngle, int
stepAngle)
Ex PGMFile class char Read(char
filename) Void Save() int
SaveProcessedFile(char newfilename) int
Save(char newfilename, char image) char
Invert() char Segment(int Rmin, int Rmax, int
RENDER) int Histogram()
24Medica Example 1
- Ex 1
- include PGMVolume.h
- int main()
- PGMFile file
- char image file.Read(/sw/people.kingtut/msa
bry/patient1.pgm") - image file.Segment(40, 200, WHITE)
- image file.Invert()
- file.Save(segment.pgm", image)
25Medica Example 2
- Ex 1
- include PGMVolume.h
- int main()
- PGMVolume volume("/msabry/sarah.006","/msabry/tmp
/va", "pgm" , 1, 117) - volume.Read(FORMAL)
- volume.SegmentTree(40, 255, 113)
- volume1.MIP_Z(0, 90, 5)
- volume1.MIP_Y(0, 90, 5)
- volume1.MIP_X(0, 90, 5)
26Future Work
Segmentation of the Vascular Tree from the
surrounding noise and tissues using one of the
classification techniques.
27Achievements
- This work has been accepted in CARS
CARS 2002 Computer Assisted Radiology and Surgery
16th International Congress and Exhibition June
26-29, 2002 Palais des Congrès, Paris, France
- This work has been nominated for SGI Award
- for Excellence in Visualization
28Thank You
Mohamed Sabry