[Insight-developers] Brains2 / missing functionalities / contributions
Luis Ibanez
luis . ibanez at kitware . com
Wed, 29 May 2002 23:23:41 -0400
Sayan,
This is very positive feedback,and a good
oportunity for testing ITK.
As far as I can see from their Brains2 User's Guide
1) ROIs
They manually delineate structures on the images,
slice by slice. These delineation get saved in files.
It seems that they created a data structure for supporting
the delineations. We could probably support this by
creating something like a vector of strings and on each
string store the 'freeman' encoding of the contour.
That should be relatively compact for storage but probably
painful for operations....it depends on what operations
they apply.
2) Masks
They basically convert the ROI to a mask (that looks like
a simple image of booleans (probably chars) since they can
have several of them loaded at the same time.
This is perfectly done with the new SpatialObject that UNC is
working on based on the SpatialFunction conc
ept that Damion
introduced along with its associated conditional iterators.
The SpatialObject support models for better anatomical
shapes and provides the right interface for testing (inside/outside),
and measuring parameters like surfaces and volumes. Shape model
based segmentation is a much better way to go than insisting in
facilitating manual segmentations. SpatialObjects also will
support boolean operations for composing complex shapes from
simpler modular shapes.
2) Tailarach BoundingBox and associated Mask,
This is a bit more of an application issue.
The way they define the Tailarach frame is by following a
protocol based on user interaction. (I think MrX does the same)
ITK doesn't have interface level since it is not an application.
We could however think in an automated way of defining the Tailarach
frame and that could be really helpful. After seeing the Brad's
experiments on segmenting the brain with the itkCurvatureFlowImageFilter,
(and probably with others of the LevelSet filters) it seems feasible to
automate a procedure for defining this bounding box.
Again, an "itkBrainSpatialObject" is a better way to go.
(probably a combination of both will be the safest bet).
The frame could be defined by setting seven sensors in the
SpatialObject and registering these sensors with the brain.
1 sensor for the Anterior Commisure
1 sensor for the Posterior Commisure
1 sensor for the top of the parietal lobe
1 sensor for the bottom of the temporal lobe
1 sensor for the back of the occipital lobe
1 sensor for the front of the frontal lobe
2 sensor for the sides of the parietotemporal lobe
Sensors are simply small blocks of images that are predesigned to
match a small region of a particular structure.
The registration of these sensors can be guided by some strategy,
at the style of the "Deformable Organisms" that were presented in
last MICCAI, it is an artificial animal with sensors, a neural
network and probably a fuzzy logic controller
3) Image file filters
We can improve on this...
4) Algorithmic components missing...
It would be nice to ask them for a list of the algorithms
that they may be interested on. Probably some of them are
already in the toolkit disguised with a different name,
or can be built using existing components.
They seem to be willing to create the missing components
and incorporate them in the toolkit. That's fits well
our expectations of making of ITK a self-sustained community,
it will be a matter of introducing them to the coding style
and the architectural structure of the toolkit.
It could be a good idea in WA5 to include some tasks related
with "assisting new contributors", which ranges from explaining
templates to them, to debugging their code, to run tests and
tune parameters.
This is a pretty time consuming tasks as we have already
seen from the previous months of activity on the users-list,
but seems to be the only way of getting more people interested
and involved in the toolkit can be self-sustained.
Can we invite them to a Tcon ?
(probably after we discuss these topics internally)
Luis
1