Progress Report:Bayesian Classification

From NAMIC Wiki
Jump to: navigation, search
Home < Progress Report:Bayesian Classification

BAYESIAN CLASSIFIER IMAGE FILTER

File:BayesianProgWeekProject.ppt

Introduction

Utilizing Bayes's Rule along with an edge-preserving, affine invariant noise remover, brain imagery can be successfully segmented.

Use Case

I'd like to segment a brain image or volume into 'N' classes in a very general manner. I will provide the data and the number of classes that I expect and the algorithm will output a segmented data image or volume with 'N' classes.

Data

We are using the 28 UCI Schizo cases (structural) for this project. data.

Algorithm

  1. The user decides the number of distinct classes in the data: 'N' (default, N = 2)
  2. Generate 'N' prior images (default, 'N' uniform prior images)
  3. Generate 'N' statistical distributions (default, 'N' normal distributions)
  4. Generate 'N' data images by applying the statistical distributions to the raw data
  5. Generate 'N' posterior images by applying Bayes' rule to the prior and data images
  6. Smooth the posterior images for 'm' iterations using an anisotropic PDE and renormalize after each iteration (default, m = 5)
  7. Apply maximum a posteriori rule to apply labeling and finalize segmentation

Porting the Code to an ITK filter

The following are ideas per our 06/Sep/2005 project TCON:

  • Let's subdivide the code into 3 classes:
  1. An initializer class
  2. A generic Bayesian classifier class
  3. A Bayesian classifier with posterior smoothing class
  • Filter data inputs include:
  1. The raw data volume (required, restricted to scalar images)
  2. 'N' prior images (optional) {default, 'N' uniform prior images}
  3. 'N' statistical distributions (optional) {default, 'N' normal distributions}
  4. A segmentation mask (optional) {default, no mask}
  • Filter control inputs include:
  1. Number of Classes 'N' (optional) {default, N = 2}
  2. Number of posterior smoothing iterations 'm' (optional) {default, m = 5}
  • A wish list of future control inputs include:
  1. Other smoothing parameters
  • Filter data outputs include:
  1. The resulting labelmap segmentation
  2. The intermediate posterior maps (optional)

Project Status

  • Fully implemented and tested in Matlab and in ITK.
  • The working ITK code is currently being ported to an ITK filter for inclusion in the CVS repository.
  • The working ITK code has been committed to the SandBox.

Publications

  • Algorithm details currently in submission to SPIE.
  • ITK implementation published in the Insight Journal.

Contacts