Agenda&Status 082410: Difference between revisions

From KitwarePublic
Jump to navigationJump to search
(Created page with '= How to Join the Tcon = == Number to Call == * 1-800-728-9607 (in the US) or * +1 9139049873 (international) * access code 6815251 == Webex == * Meeting link * https://emeet…')
 
 
(9 intermediate revisions by 3 users not shown)
Line 17: Line 17:


= Technical Topics =
= Technical Topics =
== uncrustify Code Cleanup (Hans) ==
Please review the branch:  http://github.com/hjmjohnson/ITK/tree/uncrustify_cleanup.  It contains the uncrustified version of the code.
== itkStaticConstMacro (Hans) ==
I'd like to discuss creating a new macro called "itkEnumerationMacro" that will remove nearly all instances of itkStaticConstMacro in the code.
* Reference materials: http://public.kitware.com/Bug/view.php?id=11158
* In version 3.20 and earlier, this always defaulted to the enumerated type version of the itkStaticConstMacro.
* The enumeration option for "template defined integer values" makes coding a lot easier
* The "static const unsigned int" option requires definitions of those variables "outside" the class definition if they are to be used across compliation units (i.e. with explicit instantiation).


== Stable ITK 3.20 ==
== Stable ITK 3.20 ==
Line 26: Line 41:


* Marcus Hanwell to summarize
* Marcus Hanwell to summarize
* Details in the [[ITK/Gerrit|ITK Gerrit Wiki page]]
* URL: http://review.source.kitware.com/
* URL: http://review.source.kitware.com/
* All developers must create their accounts.
* All developers must create their accounts.
Line 33: Line 49:
** Reviewers must be required from each contractor ?
** Reviewers must be required from each contractor ?
* Define workflow
* Define workflow
[[image:ITKv4-TransitionPlanProposal.png|529px]]
* [[ITK_Release_4/Migration Plan/Phases|Phases]]
== Testing Data in MIDAS ==
* [[ITK_Release_4/Testing Data|ITKv4 Testing Data]]
=== Data on MIDAS ===
At:
* http://midas.kitware.com/community/view/5
=== MIDASapp ===
Allows to download data on-the-fly, at run-time while running the testing.  Data is cached (only downloaded once or when updated).
* http://www.kitware.com/midaswiki/index.php/MIDAScpp
* svn co https://www.kitware.com/svn/KWPublic/trunk/MIDAS/MIDAScpp
* Dashboard http://www.cdash.org/CDash/index.php?project=MIDAS


== Sequestered Reference Applications ==
== Sequestered Reference Applications ==


We have already made significant changes, and they are not being recorded yet. It is time to setup these reference applications.
* Slicer
* Slicer
* OTB
* OTB
Line 42: Line 80:
* V3D Plugins
* V3D Plugins
* IGSTK
* IGSTK
 
* Optional
** Insight Applications (ITKApps from v3.20)
** ITK tests from v3.20


== DICOM ==
== DICOM ==
Line 48: Line 88:
Dan and Mathieu to report
Dan and Mathieu to report
* [[ITKv4_DICOM_Communications_Discussion | Beginnings of a requirements document]].  Comments welcome.
* [[ITKv4_DICOM_Communications_Discussion | Beginnings of a requirements document]].  Comments welcome.
* Updating openjpeg
* Updating openjpeg : DONE !
* Introducing JPEG2000
* Introducing JPEG2000 : DONE !
* Updating to GDCM 2.0
* Updating to GDCM 2.0
* Release Saturday 14th ?
* Release date for ITKv4-A02 ?


== Simple ITK ==
== Simple ITK ==
Line 60: Line 100:
** Define requirements
** Define requirements
* [[ITK_Release_4/SimpleITK|Simple ITK Layer]]
* [[ITK_Release_4/SimpleITK|Simple ITK Layer]]
* Wrapping for C#
* Adding more filters


== Wrapping ==
== Wrapping ==
Line 74: Line 116:
** Brian Avants to lead discussion on registration refactoring.
** Brian Avants to lead discussion on registration refactoring.


== Modularization ==
=== ITK Readers for Microscopy formats ===


* Gabe Hart to report of initial [[ITK_Release_4/Modularization|Modularization]] efforts
* Exploration of Ryppl
** Interaction with Boost
** Brad King & Dave Cole Report
== Microscopy ==
* Scheduling a dedicated tcon for this topic.
=== Gathering Feedback from the attendees to the [[ITK_Release_4/Microscopy/Related Events#Hackathon_at_HHMI:_V3D-ITK_Plugins|Hackathon in Janelia Farm (HHMI)]] ===
* Luis to report
* [[ITK_Release_4/Microscopy|Microscopy community]].
** Pixel types used
** Image Dimensions (2,3,4,5)
** Channels as dimension ?
** Time as dimension ?
** Memory organization ?
*** [http://insight-journal.org/browse/publication/646 Alternative Memory Models for ITK Images] ?
** Multi-scale datasets
** Needs for Object representation data structures
=== Management of Large Datasets ===
* Sean Megason & Arnaud Gelas
** Needs
*** Large data sets (greater than RAM) - 100GB to 1TB per experiment
*** PixelType may be scalar, vector, or tensor
*** How to deal with multiple channels and time points (e.g. dimensions, vector)
*** ordering dimensions for iteration (e.g. tracking nuclei needs time before channel whereas segmentation might want channel before time)
*** Crop and resample n dimensional image into m dimensional image (m<n)
*** Having a multi-resolution representation for images ? ( ala JPEG2000, or wavelets ?)
**Partial solutions
*** meta reader - n-dimensional image set stored on disk (or database) as series of 2-d images. Reader can grab any subset of dimensions and stream. Needs an n-dimensional container (hashtable) that can be sorted.
=== ITK Readers for Microscopy formats ===
* There's a need for readers in the microscopy community in order to be able to use ITK
* There's a need for readers in the microscopy community in order to be able to use ITK
** Zeiss (LSM and ZVI)
** Zeiss (LSM and ZVI)
Line 123: Line 130:


* Migration Completed
* Migration Completed
** Workflow
** Procedure for contributing Patches: http://www.itk.org/Wiki/ITK/Git#Contributing_Patches
*** The [http://progit.org Pro Git book] has [http://progit.org/book/ch5-0.html examples of distributed workflows]
*** Master & Next ? See [[Git/Workflow/Topic|here]].
*** Topic Branches: See the [[ITK/Git#Topic_Stage|ITK Topic Stage]], and an example [http://itk.org/gitweb?p=ITK.git;a=commitdiff;h=d9c85541 topic merge].
*** Dashboard Branches
**** Master Nightly: so all nightly builds use same source
*** Hooks
**** Come to agreement on which hooks to use for ITK4 (Lorensen)
**** KWStyle?
 
* Updating Dashboard Machines to Git
* Updating Dashboard Machines to Git
* Contractors to send information to Kitware about the developers who should receive Git write access.
* Contractors to send information to Kitware about the developers who should receive Git write access.
** (include email and public SSH key)
** (include email and public SSH key)
== Before Giving Git Write Access ==
* Changing '''LICENSE''' to [http://www.opensource.org/licenses/apache2.0.php Apache 2.0]




Line 164: Line 157:




* Hans Johnson to report on compilers cleanup.
== Unit testing framework ==
** and experiences with Git workflow.


== Unit testing framework ==
A [[ITK_Release_4/UnitTesting|tutorial has been drafted]] using the Google Testing framework.
A [[ITK_Release_4/UnitTesting|tutorial has been drafted]] using the Google Testing framework.


Line 173: Line 164:


=== Coding Style ===
=== Coding Style ===
[[ITKv4_StyleChangeProposal]]
[[ITKv4_StyleChangeProposal]]
* Fixing KWStyle/CDash/CTest for Git : Brad Davis report
* Fixing KWStyle/CDash/CTest for Git : Brad Davis report
* The [http://google-styleguide.googlecode.com/svn/trunk/cppguide.xml Google C+++ Style Guide] is a good example of a style guide. Although the specifics may differ, the format and coverage of this guide is very nice. We may consider producing a similar Guide for ITKv4.

Latest revision as of 18:02, 24 August 2010

How to Join the Tcon

Number to Call

  • 1-800-728-9607 (in the US) or
  • +1 9139049873 (international)
  • access code 6815251

Webex

Project Management

  • Date of next meeting? 4-6 october?

Technical Topics

uncrustify Code Cleanup (Hans)

Please review the branch: http://github.com/hjmjohnson/ITK/tree/uncrustify_cleanup. It contains the uncrustified version of the code.


itkStaticConstMacro (Hans)

I'd like to discuss creating a new macro called "itkEnumerationMacro" that will remove nearly all instances of itkStaticConstMacro in the code.

  • Reference materials: http://public.kitware.com/Bug/view.php?id=11158
  • In version 3.20 and earlier, this always defaulted to the enumerated type version of the itkStaticConstMacro.
  • The enumeration option for "template defined integer values" makes coding a lot easier
  • The "static const unsigned int" option requires definitions of those variables "outside" the class definition if they are to be used across compliation units (i.e. with explicit instantiation).


Stable ITK 3.20

  • How to get it.
  • Maintenance rules (gate keeper ?)

Gerrit is ON

ITKv4-TransitionPlanProposal.png

Testing Data in MIDAS

Data on MIDAS

At:

MIDASapp

Allows to download data on-the-fly, at run-time while running the testing. Data is cached (only downloaded once or when updated).

Sequestered Reference Applications

We have already made significant changes, and they are not being recorded yet. It is time to setup these reference applications.

DICOM

Dan and Mathieu to report

Simple ITK

  • Design Discussions
  • Sandbox in Github
  • Aggregating an ARB (composed of potential future users)
    • Define requirements
  • Simple ITK Layer
  • Wrapping for C#
  • Adding more filters

Wrapping

  • Plans for wrapping
  • Tools
    • Pros and Cons
  • Wrapping
  • update from brad on wrapitk test (new swig usage that addresses existing concerns)?

Refactoring Optimization Framework

ITK Readers for Microscopy formats

  • There's a need for readers in the microscopy community in order to be able to use ITK
    • Zeiss (LSM and ZVI)
    • Leica (LIF)
    • Olympus (OIB)
    • Nikon ()
  • BioFormats has readers and example files for these. It is Java with C++ bindings for ITK, BUT it's GPL.

Software Process

Migration to Git

  • Migration Completed
  • Updating Dashboard Machines to Git
  • Contractors to send information to Kitware about the developers who should receive Git write access.
    • (include email and public SSH key)


Clean up Releases

Release Tag Date Major Changes
Alpha-01 August 7 VS6,BCC55, SunCC (5.7?), Metrowerks Removal (based on compiler features), Remove large Images
Alpha-02 August 14 CMake Variables configuration cleanup
Alpha-03 August 21 GDCM 2.0, OpenJpeg-v2, +JPEG2000
Alpha-04 August 28 Third party libraries update: TIFF, JPEG, PNG

ITKv4-TransitionPlanProposal.png


Unit testing framework

A tutorial has been drafted using the Google Testing framework.

Tools

Coding Style

ITKv4_StyleChangeProposal

  • Fixing KWStyle/CDash/CTest for Git : Brad Davis report
  • The Google C+++ Style Guide is a good example of a style guide. Although the specifics may differ, the format and coverage of this guide is very nice. We may consider producing a similar Guide for ITKv4.