Proposals:Integration with R Language: Difference between revisions

From KitwarePublic
Jump to navigationJump to search
(Added use cases)
 
(6 intermediate revisions by 2 users not shown)
Line 10: Line 10:
https://www.kitware.com/InfovisWiki/index.php/R_Titan_Integration
https://www.kitware.com/InfovisWiki/index.php/R_Titan_Integration


= Suggested Implementation =
= Use Cases =
 
* Statistical Segmentation of Images
** Multi-modality segmentation
* Statistical Analysis of features extracted from images
** Group registration
** Atlas based segmentation
* Segmentation of Images/Volumes using ITK
** Multi-dimensional array(s) pre-existing in '''R'''
** Results are passed back into '''R'''
** Visualization of results in ITK (through '''R'''?)
* Registration of Images/Volumes using ITK
** Multi-dimensional array(s) pre-existing in '''R'''
** Results are passed back into '''R'''
** Visualization of results in ITK (through '''R'''?)
 
= Suggested Implementations =


== Data Bridge ==
== Data Bridge ==
Line 16: Line 32:
Making some ITK data structures visible from '''R''' by converting or adapting them to '''R''' vectors. And conversely, adapting '''R''' vectors into ITK data structures.
Making some ITK data structures visible from '''R''' by converting or adapting them to '''R''' vectors. And conversely, adapting '''R''' vectors into ITK data structures.


=== The candidate ITK classes are ===
=== Candidate ITK classes ===
 
* itk::FixedArray (and derived classes)
** itk::Point
** itk::Vector
** itk::Index
** itk::Offset
** itk::CovariantVector
** itk::RGBPixel
** itk::RGBAPixel
* itk::VariableLenghtVector
* itk::Matrix
* itk::Containers
** itk::VectorContainer
** itk::MapContainer
* itk::Image
** itk::PixelContainer
* itk::Sample
* itk::KdTree
 
=== Candidate STL classes ===


* FixedArray (and derived classes)
** Point
** Vector
** Index
** Offset
** CovariantVector
* VariableLenghtVector
* Containers
** VectorContainer
** MapContainer
* Image
** PixelContainer
* STL Containers
* STL Containers
** std::list
** std::list
Line 35: Line 59:
** std::map
** std::map
** std::set
** std::set
== Wrapping (WrapITK) ==
Adapting the wrapping process of WrapITK in order to expose ITK functionalities from R.
== R Interface Examples with other languages ==
* http://www.omegahat.org/RSPerl/
* http://www.omegahat.org/RSPython/
* http://www.omegahat.org/GccTranslationUnit/
* http://www.omegahat.org/Combinations/
* http://dirk.eddelbuettel.com/code/rcpp.html

Latest revision as of 15:46, 10 August 2009

Background

This page hosts discussions on how to integrate functionalities of ITK with R language (http://www.r-project.org/)


A reference for this effort is the integration of R in the Titan package (based on VTK).

https://www.kitware.com/InfovisWiki/index.php/R_Titan_Integration

Use Cases

  • Statistical Segmentation of Images
    • Multi-modality segmentation
  • Statistical Analysis of features extracted from images
    • Group registration
    • Atlas based segmentation
  • Segmentation of Images/Volumes using ITK
    • Multi-dimensional array(s) pre-existing in R
    • Results are passed back into R
    • Visualization of results in ITK (through R?)
  • Registration of Images/Volumes using ITK
    • Multi-dimensional array(s) pre-existing in R
    • Results are passed back into R
    • Visualization of results in ITK (through R?)

Suggested Implementations

Data Bridge

Making some ITK data structures visible from R by converting or adapting them to R vectors. And conversely, adapting R vectors into ITK data structures.

Candidate ITK classes

  • itk::FixedArray (and derived classes)
    • itk::Point
    • itk::Vector
    • itk::Index
    • itk::Offset
    • itk::CovariantVector
    • itk::RGBPixel
    • itk::RGBAPixel
  • itk::VariableLenghtVector
  • itk::Matrix
  • itk::Containers
    • itk::VectorContainer
    • itk::MapContainer
  • itk::Image
    • itk::PixelContainer
  • itk::Sample
  • itk::KdTree

Candidate STL classes

  • STL Containers
    • std::list
    • std::queue
    • std::map
    • std::set


Wrapping (WrapITK)

Adapting the wrapping process of WrapITK in order to expose ITK functionalities from R.


R Interface Examples with other languages