[Insight-developers] proposal for ROI class

Lydia Ng lng@insightful.com
Thu, 10 May 2001 18:43:48 -0700


This is a follow up to last week's tcon
discussion on ROI's (region of interest).

In registration there is often a need to restrict
the registration process to some region of interest
e.g. inside the CT circle, inside an organ etc ...

I am putting together some ideas on how we should
represent ROI in ITK which we can discuss in this
week's tcon.

What access modes do we want to support?
==========================================
The ones I need for my registration algorithms are:
(1) iterate through all points in the ROI
(2) randomly sample points from an ROI (for mutual information)


Representation options:
=======================
(A) Binary mask:

Mode (1) access can be achieve by a for loop and checking if
pixel is in ROI.
Mode (2) access can be achieve by uniformly sampling the whole
image, if pixel is not in ROI - choose another one.

Requires the char image the same size as the input images.

(B) PointSet containing all points in ROI:

Can easily support both mode of access.
But can more memory expensive than (A) if ROI covers
a large portion of the image.

(C) PhysicalObject:

The UNC folks are working on a PhysicalObject base class
with four virtual member functions:

> 1) specify a physical transformation to position the object in space
> 2) bool for: is point x within the object
> 3) generate a binary instance of the object in an image
> 4) quantify the quality of fit of the object to an image

I am not sure of the underlying representation, perhaps Stephen
can talk about it a bit more at the tcon.

----------------------------
What do people prefer? Are there other contenders?

Lydia