[Insight-developers] Questions about ROI implementation

Kent Williams norman-k-williams@uiowa.edu
Wed, 9 Apr 2003 15:29:26 -0500


I'm supposed to implement an ROI (Region of Interest) type in ITK.  ROIs =
 are=20
used in Brains2 to outline brain features, and are most often manually=20
traced, slice by slice, then combined to define a solid.  So basically th=
ey=20
are a list of 2D points in a slice.

I have 2 basic questions about implementing ROIs:

1. I'll derive them from itk::SpatialObject, but is there a subclass of=20
itk::SpatialObject that would be more apropos?  Looking through the=20
documentation and source code, I'm not picking up many clues.  It looks l=
ike=20
it's straightforward to read in the ROI file, create itk:SpatialObjectPoi=
nt=20
objects and add them as children.

It also looks as though deriving from a 2D BlobSpatialObject would be clo=
se;=20
the main behavior we need to add for our purposes is a way to add and rem=
ove=20
points, for interactive tracing.

2. Is there any class I should inherit from for reading and writing a fil=
e of=20
our ROI files? I know about ImageIO but I'm not seeing any similar framew=
ork=20
for reading and writing spatial objects.  Should there be such a framewor=
k?