Difference between revisions of "SimpleITK"

From KitwarePublic
Jump to navigationJump to search
Line 50: Line 50:
 
* Coding Style
 
* Coding Style
 
** Copyright Headers & License
 
** Copyright Headers & License
* Const correctness
+
* Const correctness (can we avoid using const's completely?)
 
* Testing
 
* Testing
 
* Managing basic types  
 
* Managing basic types  
Line 56: Line 56:
 
** Regions
 
** Regions
 
** Transforms
 
** Transforms
* Not so basic types
+
* Not so basic types (could these be enums passed as ivars?)
 
** Interpolators
 
** Interpolators
 
** Optimizers
 
** Optimizers

Revision as of 13:45, 15 July 2010

Simple ITK

Goals

  • Provide an easy-access layer to ITK for non-C++ expert developers

Sandbox

Scope

Suggested Areas to Cover

  • IO
  • Basic Filters
  • Registration
    • Basic Framework
    • Deformable registration
      • BSplines
      • Demons
  • Segmentation
    • Region Growing
    • Level Sets
    • Classifiers

Types

  • Image pixel types supported
    • int8_t
    • int16_t
    • int32_t
    • float
  • Image dimensions supported
    • 3D
    • Is 2D managed as a 3D image of 1 slice ?
      • Performance penalty for neighborhood filters... ?
      • Could be "2D" versions of 3D filters, i.e. RecursiveGaussianFilter2D. This would work on a slice-by-slice basis.

Languages

Wrapped languages will be any that SWIG supports, if someone is willing to write tests / any needed glue code.

  • C++ Layer
  • Python
  • Lua
  • Java
  •  ?

Implementation Details

  • Coding Style
    • Copyright Headers & License
  • Const correctness (can we avoid using const's completely?)
  • Testing
  • Managing basic types
    • Arrays
    • Regions
    • Transforms
  • Not so basic types (could these be enums passed as ivars?)
    • Interpolators
    • Optimizers
    • Metrics

Plan

  • Image classes
  • IO

TCons

Tcon topics 7/15/2010

Toll-Free #:      1-800-704-9804 
International #:  1-404-920-6604
Participant Code: 61466276

Thursday, July 15th, 3:30-5:00pm EDT
(2:30-4:00pm Central).
  • General architecture
  • Wrapping efficiency