ITK Release 4/Microscopy: Difference between revisions
From KitwarePublic
Jump to navigationJump to search
Agouaillard (talk | contribs) |
|||
(40 intermediate revisions by 4 users not shown) | |||
Line 6: | Line 6: | ||
* Very Large datasets (TeraBytes) | * Very Large datasets (TeraBytes) | ||
** Examples: | |||
*** Brainbow dataset = 11000x15000x1000 x (RGB) = 500 Gigabytes for one 3D image. | |||
*** In-toto imaging dataset = 1000x1000x200x1000x5 ~ 500 GB for one imaging session (one organ) | |||
*** Data acquisition | |||
**** Today 100Gb / day | |||
**** Tomorrow 1 Tb / day | |||
**** 3D Stacks of 250Mb (8 seconds to acquire, 900 to deconvolve) | |||
**** J.J. Field Optics Express 2010. | |||
* Temporal data (2D+t, 3D+t) | * Temporal data (2D+t, 3D+t) | ||
* Multiple Components | * Multiple Components | ||
Line 18: | Line 26: | ||
* Management of multi-gigabyte datasets (TeraBytes being the standard to look for in 5 years) | * Management of multi-gigabyte datasets (TeraBytes being the standard to look for in 5 years) | ||
* Richer set of classes for object representations | * Richer set of classes for object representations | ||
* Support for commonly used File Formats | |||
== File Formats == | |||
* Support for commonly used [[ITK_Release_4/Microscopy/File Formats|File Formats]] | |||
== Image Registration == | |||
* Image registration for microscopy applications | |||
* [[ITK_Release_4/Microscopy/Image Registration|Image Registration]] | |||
= Reference Applications = | = Reference Applications = | ||
Line 23: | Line 41: | ||
* [[ITK_Release_4/Microscopy/Collaborating Groups|Collaborating Groups]] | * [[ITK_Release_4/Microscopy/Collaborating Groups|Collaborating Groups]] | ||
* [[ITK_Release_4/Microscopy/Reference Applications|Reference Applications]] | * [[ITK_Release_4/Microscopy/Reference Applications|Reference Applications]] | ||
= Related Events = | |||
* [[ITK_Release_4/Microscopy/Related Events|Related Events]] | |||
= Tcons = | |||
== August 12th 2010 == | |||
=== Attendees === | |||
* Alex Gouaillard - A*STAR | |||
* Sean Megason - Harvard | |||
* Arnaud Gelas - Harvard | |||
* Kishore Mosaliganti - Harvard | |||
* Marc Niethammer -UNC | |||
* Cory Quammen -UNC | |||
* Russ Taylor - UNC | |||
* Marcus Hanwell - Kitware | |||
* Brad Lowekamp - NLM | |||
* Luis Ibanez - Kitware | |||
* Dominik Spinczyk - Silesian University | |||
* Dhanannjay Deo - Kitware | |||
=== Topics === | |||
==== Challenges ==== | |||
* Large Images: Larger than local RAM | |||
* Pixel Types: | |||
** Scalar, Vector, Tensor, | |||
* Time | |||
* Many channels | |||
** sometimes they are packaged as "RGB" for convenience, but are really independent channels. | |||
* Cropping M-Dimensional image into N-Dimensional image (e.g. 4D --> 3D) | |||
* Dealing with multi-resolution images | |||
** Jpeg 2000 | |||
** TIFFs ? | |||
* Non-regular spacing | |||
** Across Z (in optical confocal microscopy) | |||
** Across time (time points not acquired regularly) | |||
=== Technologies Needed === | |||
* Being able to extract subpieces from a larger image | |||
** Boost hash map (MultiIndexContainer http://www.boost.org/doc/libs/1_39_0/libs/multi_index/doc/index.html) | |||
* Need time-date-stamps in images (maybe at the slice level) | |||
* Data structures | |||
** For image of multiple channels ? | |||
*** Most common algorithms access a full channel at a time | |||
**** instead of accessing all the components of a given pixel | |||
** Streaming? (off-memory) | |||
*** Extend many filters to support streaming | |||
** Sub-sampled version of the image | |||
* JAVA World | |||
** How to interface with them | |||
** Using Java libraries from C++ | |||
** Using C++ libraries from Java | |||
* File Formats | |||
** Synergy with Bioformats | |||
** Support Microscopy formats. | |||
** Reverse engineering existing code | |||
** Extend the ITK TIFF reader to support mult-channels (Luis volunteered to do it) | |||
** Synergy with ImageJ | |||
*** ITK Plugins | |||
* I/O | |||
** Reading specific channels (channel regions) | |||
** Reading specific time points or time regions | |||
** Reading subsampled versions of the image | |||
** Making them non-blocking | |||
*** Attempt prediction of next region to load (when doing streaming). | |||
* Remote computing, HPC | |||
** Large datasets | |||
*** processing data remotely | |||
*** sending scripts & to be executed in data servers | |||
=== Meetings === | |||
* "Automated Imaging & High-Throughput Phenotyping" (December 5th-8th) | |||
** http://meetings.cshl.edu/meetings/autoimag10.shtml | |||
= Microscopy Conferences to Promote ITK = |
Latest revision as of 15:48, 4 May 2011
Microscopy
Overview
Microscopy applications bring new challenges to ITK at many different levels
- Very Large datasets (TeraBytes)
- Examples:
- Brainbow dataset = 11000x15000x1000 x (RGB) = 500 Gigabytes for one 3D image.
- In-toto imaging dataset = 1000x1000x200x1000x5 ~ 500 GB for one imaging session (one organ)
- Data acquisition
- Today 100Gb / day
- Tomorrow 1 Tb / day
- 3D Stacks of 250Mb (8 seconds to acquire, 900 to deconvolve)
- J.J. Field Optics Express 2010.
- Examples:
- Temporal data (2D+t, 3D+t)
- Multiple Components
- Very large number of objects of interest per image
Technical Details
The toolkit needs
- More explicit representation of time and channels
- Management of multi-resolution datasets
- Management of multi-gigabyte datasets (TeraBytes being the standard to look for in 5 years)
- Richer set of classes for object representations
- Support for commonly used File Formats
File Formats
- Support for commonly used File Formats
Image Registration
- Image registration for microscopy applications
- Image Registration
Reference Applications
Related Events
Tcons
August 12th 2010
Attendees
- Alex Gouaillard - A*STAR
- Sean Megason - Harvard
- Arnaud Gelas - Harvard
- Kishore Mosaliganti - Harvard
- Marc Niethammer -UNC
- Cory Quammen -UNC
- Russ Taylor - UNC
- Marcus Hanwell - Kitware
- Brad Lowekamp - NLM
- Luis Ibanez - Kitware
- Dominik Spinczyk - Silesian University
- Dhanannjay Deo - Kitware
Topics
Challenges
- Large Images: Larger than local RAM
- Pixel Types:
- Scalar, Vector, Tensor,
- Time
- Many channels
- sometimes they are packaged as "RGB" for convenience, but are really independent channels.
- Cropping M-Dimensional image into N-Dimensional image (e.g. 4D --> 3D)
- Dealing with multi-resolution images
- Jpeg 2000
- TIFFs ?
- Non-regular spacing
- Across Z (in optical confocal microscopy)
- Across time (time points not acquired regularly)
Technologies Needed
- Being able to extract subpieces from a larger image
- Boost hash map (MultiIndexContainer http://www.boost.org/doc/libs/1_39_0/libs/multi_index/doc/index.html)
- Need time-date-stamps in images (maybe at the slice level)
- Data structures
- For image of multiple channels ?
- Most common algorithms access a full channel at a time
- instead of accessing all the components of a given pixel
- Most common algorithms access a full channel at a time
- Streaming? (off-memory)
- Extend many filters to support streaming
- Sub-sampled version of the image
- For image of multiple channels ?
- JAVA World
- How to interface with them
- Using Java libraries from C++
- Using C++ libraries from Java
- File Formats
- Synergy with Bioformats
- Support Microscopy formats.
- Reverse engineering existing code
- Extend the ITK TIFF reader to support mult-channels (Luis volunteered to do it)
- Synergy with ImageJ
- ITK Plugins
- I/O
- Reading specific channels (channel regions)
- Reading specific time points or time regions
- Reading subsampled versions of the image
- Making them non-blocking
- Attempt prediction of next region to load (when doing streaming).
- Remote computing, HPC
- Large datasets
- processing data remotely
- sending scripts & to be executed in data servers
- Large datasets
Meetings
- "Automated Imaging & High-Throughput Phenotyping" (December 5th-8th)