Difference between revisions of "Engineering:TCON 2008"

From NAMIC Wiki
Jump to: navigation, search
Line 21: Line 21:
 
***Still 25% slower, but not 100x slower
 
***Still 25% slower, but not 100x slower
 
**Rendering time has been increased by an order of magnitude
 
**Rendering time has been increased by an order of magnitude
 +
* OK for Kitware to put Slicer3 screenshots on Flickr? (see [http://flickr.com/photos/kitware/ Kitware's Flickr account])
  
 
==2008-04-03==
 
==2008-04-03==

Revision as of 19:20, 17 April 2008

Home < Engineering:TCON 2008

Back to TCON:Main

Slicer 3 Dartboard

Link to the Slicer 3 Dartboard here

2008-04-17

Attendees: Jim, Tina, Steve, Katie, Jeff, Sebastien, Vince

Topics:

  • 2008_Annual_Scientific_Report
  • 2008_Summer_Project_Week
  • VTK (5.2) and CMake (2.6) release schedules
    • VTK Plan on branching next week
    • CMake is on RC8, guessing will branch in 1-2 weeks
  • VTK (5.2) performance issues when rendering
    • In the meshing project we have seen a significant reduction in the rendering of a large number of vtkSphereSource and vtkPointWidgets in 5.2 as compared to 5.0
      • 100x performance hit in debug mode on Linux
      • Jeff added code to make sure the check doesn't happen more than once/sec.
      • Still 25% slower, but not 100x slower
    • Rendering time has been increased by an order of magnitude
  • OK for Kitware to put Slicer3 screenshots on Flickr? (see Kitware's Flickr account)

2008-04-03

Jim, Curt, Tina, Nicole, Wendy, Steve, Brad, Xiaodong, Vince, Ron, Nathan

Agenda

<flash>file=dti_glyphs.swf|width=800|height=600|quality=best|loop=true|play=true</flash>
  • CMake 2.6 release candidates have been cut with .rpm and .deb output targets!
    • Will will work with Katie on this
  • Jim is going to visit Kitware to talk about BSpline registration

2008-03-27

Attendees: Steve, Will, Xiaodong, Nathan, Katie, Wendy, Tina, Nicole, Marco, Sebastien

  • Nathan will discuss presentation of fluid mechanics projects.
  • Update from Core 1 + Core 2 meetings in Utah earlier this week.
  • Discussion of Module Chaining (Marco and All)
    • Requested by Core 1 to systematize common use case
    • Need several steps in an analysis process to act like a single command
    • Would like something akin to the EMSegment workflow wizard, but as command line module rather than built-in module

Highlights:

Nathan's overview: discussing visualization options for his fluid velocity vector fields for tractography algorithm. Steve mentions a few options:

  • A LDDMM module in Slicer2 that does animated vector field visualization (work done in collaboration with Johns Hopkins: Anthony Kolasny, Mike Miller, et al.).
  • Another option would be to try using ParaView as a way to flesh out specifics, and then build a more custom tool for tractography later. Will will point Nathan to documentation for file formats, data formats, etc. or help with any questions, and Nathan will try this out.

Discussion of these topics at the engineering review in Utah:

  • chaining modules together
  • grid wizard (Marco) for grid and batch computing
  • Bspline registration
  • setting up repositories for collecting slicer modules (as technology transition mechanism)
  • how this will fit into the slicer build process
  • diffusion weighted imaging, shape analysis, and segmentation
  • dicom to nrrd converter...

Milestones were set for April-end, Project week, and AHM.

Module chaining discussion (see link above):

  • Java version as first goal -- eventually C++ implementation.
  • Discussion about module discovery process and how will chained modules be packaged: (c++ stub programs? or

or discovery find chain-descriptor xml files? shell scripts? (cross-platform issues)...)

  • Goal: By project week in June we would like to be able to chain modules developed by Core 1.

Sebastien's update on module building: Wiki will be updated today with status. (link)

2008-03-20

Attendees: Tina, Jim, Will, Wendy, Xiaodong, Nathan, Martin, Marco

  • Progress Report - read over the assignments. We will look for progress from June 1, 2007 to May 30, 2008.
  • June 23-27 is the summer project week. We will make first pass on projects in late April.
  • Module discussion: Martin wanted to understand the state of module creation and usage within Slicer. Sebastien is working on modules that are built against an installed module. Terry is working on built-in modules for Slicer. Jim is working on modules using CMake in the NTRIC repository.
  • Nathan- write a command line, Slicer module that is a wrapper to a web service. Nathan thinks he can get this done prior to the June AHM. We referred to Jim's presentation at the Utah SLC Core 1/Core 2 meeting.
  • We will talk about grid wizard next week at SLC


2008-03-13

Attendees: Jim, Nicole, Dan, Xiaodong, Vince, Sebastian, Alex, Curt, Steve, Will, Terry

2008-03-06

Attendees: Steve, Jim, Katie, Nicole, Tina, Xiaodong, Marco, Ron

Highlights:

2008-02-28

  • Attendees: Jim, Steve, Wendy, Katie, Tina, Jeff, and Marco (Grid Wizard Guy)
  • Discussion on time series analysis (viewer, scene markup). Initial viewer will be a general tool for comparing images.
  • Avalanche of new features in grid wizard and GSlicer3
    • Proxy around Command Line Modules
    • Extends command line with specifications for ranges of values as well as specify remote resources (data) that need to be transferred to/from the grid.
    • Uses Velocity for parameter template engine
    • Grid selection and authentication still being refined for Slicer
    • Could be extended to other grid types (LSF, etc.)
    • Lots of information on the website. Instructions for installation. A bit daunting for non-grid people. Some of us will have to work through the instructions step by step to evaluate.

2008-02-21

  • Attendees: Xiaodong, Jim, Katie, Nicole, Will, Steve, Nathan, Tina, Ron, Padma, Marco

- Nathan brought us up to date on fluid mechanics tractography

- Padma Sundaram: SCIrun environment supports EEG processing

- Marco is releasing Grid Wizard alpha version

- Nathan brought up the helical digital phantom web service. Currently the thinking is that it can be accessed through a web service. We suggested that Nathan write a wrapper, consistent with Slicer's execution module, to invoke the web service. However, since it is not available in source form, NAMIC cannot accept it as part of the NAMIC Kit proper. We can guide Nathan in the execution of this module.

2008-02-14

  • Attendees: Xiaodong, Katie, Will, Sebastien, Steve, Mike, Wendy, Haiyi, Dan, Curt, Tina

Other NA-MIC Projects

16 - CPack (Katie): Slicer3 compiles and packs using the new C-tools with some bug fixes. Using CMake to select desired modules, using something similar to cygwin. Official Slicer3 snapshot tagged. Different Tcl/Tk versions are currently used for different platform. This need to be addressed.

17 - Slicer GUI Style Guide and Cookbook {Wendy}: This will be a long term effort. During the programming week, the design and implementation details were discussed. The Cookbook will be launched from Slicer, act like KWWidget tour.

18 - Volume rendering (Steve): UI is fairly stable.

19 - Volume rendering using Cuda (Steve):

20 - 3D W Widgets and Picking (Will): found a list of candidates of widgets for Slicer. A few bug fixes for VTK.

21 - XNAT Integration (Dan): Requirements were gathered for a XNAT application that organizes files and caches files from XNAT repositories. Some XML format issues have been addressed.

22 - KWWidgets Roadmap (Sebastien): Gathered requirements. Been working down the list of the feature requirements.

External Collaboration

1 - Astronomical coordinate system support [Harvard IIC] (Mike): Astronomical datasets are quite different from medical dataset. Wendy helped with re-centering data. Made progress in converting between coordinate systems (Cartesian to Spherical).

2 - New Meshing Techniques into NA-MIC [Univ. of Iowa]

3 - Meshing Workflow into Slicer [Univ. of Iowa] (Curt): Will be integrated into Slicer soon. Command line program using VTK.

4 - Evaluating NA-MIC Tools for Small Animal Imaging Workflows [NCI] (Curt):

5 - IGSTK-Slicer [Georgetown] (Haiyi): Successful tracking data using IGSTK.

6 - Japanese Intelligent Surgical Instrument Project [AIST]

7 - GoFigure:High-Level Microscopy Image analysis Application and Algorithms [CalTech-Harvard Medical School]

8 - Doing microscopy image analysis with Slicer3 [The Ohio State University]

9 - fMRI Analysis with Slicer 3 [The Ohio State University]

10 - Resampling DTIs with Slicer 3 [BWH]

11 - Analyzing fMRI and concurrent EEG with Slicer and SCIRun [BWH]

12 - Bayesian hierarchical models for fMRI variance components analysis [BWH]

2008-02-07

  • Attendees: Ron, Will, Steve, Wendy, Nicole, David G, Mark S., Casey, Sebastien, Curt, Luca

DBPs

1 - Stochastic Tractography in Schizophrenia (need to be invited to follow-up TCon)

2 - Cortical thickness analysis - testing EM segmenter to their data. They estimated parameters and tested during the week. The goal now is to compare ITK-MS and EM segment module to see how these two tools compare for cortical thickness. They are reviewing the tools using the same patient data.

3 - (Mark Scully) Legion segmentation using EM segmenter and other options - worked with Brad using 2 channels of data. Flare as 3rd channel caused problems. Desired to have T1/T2/Flair together as three channel dataset. Marcel is going to deliver his segmentation algorithm software to them to compare results.

4 - Robotic Prostate Interventions - (David Gobbi) Working on transrectal biopsy module for Slicer. They had a previous module for transcranial biopsies. One of the most exciting developments was a new prototol "open IGT-Link" which will replace navitrack inside Slicer. Image transfer is working over this protocol. A simulator is being developed for the robot. A few VTK bugs may have been discovered during this process, but it isn't on the top priority list right now.

5 - Prostate Cancer - Wrote new ITK filter that has been submitted to the Sandbox. They are looking at spherical wavelets for shape segmentation. The wiki page will be updated soon.

Other NA-MIC Projects

1 - Groupwise Registration - (Casey) New Bspline registration method is being developed here. It has been used for another project by Casey (#6). Page needs to be updated.

2 - (Need to be invited to follow-up TCon)

3 - (Need to be invited to follow-up TCon))

4 - (Need to be invited to follow-up TCon). Page needs to be updated

5 - Incorporating DTI tools into NAMIC toolkit - They are gathering a dataset that has both structural and DTI data in agreement. Previous dataset was missing part of cortex. UNCDB2 dataset has full coverage of the brain. Resolution is a bit lower, but full coverage is an advantage. Page is close to up to data. Just submitted a paper to ISBI 2008 and working on MICCAI paper, as well.

  • NITRIC is g-forge and would be a good place for automated build process for Slicer modules. This could make it easier to configure Slicer in client labs without need to build from source. This is still being developed by the NA-MIC core team. There is an entry on the collaboration section of the NA-MIC website. Also www.slicer.org/Documentation link.

6 - (Casey) Worked with Serdar using groupwise registration tool. They are currently evaluating results of this study. More images will be added.

7 - (John Melanakos) Spent last week working with collaborators on the MICCAI paper. Project page is well filled.

8 - (Need to be invited to follow-up TCon)

9 - (Need to be invited to follow-up TCon)

10 - MRML scenes for execution model. Some of the issues Brad was having have been resolved. Alex is making adjustments to MRML library as needed for the EM segmentation model.

11 - (Curt) Unstructured Grids in Slicer - Finite Element modeling process was originally in a standalone VTK application. The first Slicer module integration did not use MRML based storage. We are now creating subclasses of Model and Unstructured grid data for storage and display in Slicer. Some minor issues need to be worked out, but the MRML extensions for UnstructuredGrid datatypes are working.

12 - Python (Luca) MatPlotLib plots are close to happening within Slicer. Steve believes it is 80% complete. Python command line modules are working now. Multiple arguments had to be worked by Luca. He has developed Python-based CLI modules. The event broker is discussed here because it affects the interaction with Python, because a Mutex lock has to be placed on the MRML scene. Dan has been helping with metamodules - a single Python module which calls other mothers (hierarchical execution, recipes, etc.).

  • Ron asked about using this scripting technique for the ModelMaker. Some of the parameter setting, etc. could be set in the top module. Nicole will look at this. Kilian said that he wanted to call the "modelmaker" from another module.
  • A need was identified for new wiki pages: (1) scripted modules, (2) metamodules, (2) python scripted modules

13 - (Luca) Transform hardening - Sometimes images are not XYZ alligned. How will command line modules treat an object if it is the child of a transform. The module needs to be able to apply xforms to data (after hierarchy is flattened) to get xformed data. Jim and Steve talked through this lately becomes of the transforms access two-directions (from parents / to parents, etc.) They are looking at how to change the model.

14 - (Steve) MRML support for out-of-core processing - Steve put a link to a new page. Dan, Jim, Wendy, Steve, etc. working through NAC renewal grant (5 years). Multiresolution and asynchronous data are likely targets for this effort, but it will be a long-term effort.

15 - Event Broker discussion - Steve has made process on this, but this wiki page is older. See the event broker page. (look at link under Objective). New term "observation" : completely introspectable. A full dependency between objects is implemented. When a subject issues a "modified" event, Delete events are maintained. Complete "relationship" management of the interaction between objects. This helps by allowing asynchronous event processing. MRML has been converted to use the event broker with asynchronous events managed by the Slicer GUI (async events invoked after GUI events are done). This hasn't broken anything so far, but should improve scalability. Dot logfile format can be generated for inter-object dependencies. This can be used to help provide "who called who" traces. Some special magic is done in MRML Display nodes. They set "observation nodes"

Next Week

Continue through project review. Request missing project members to attend. Review wiki pages.

2008-01-31

Attendees: Jim, Steve, Stephen, Wendy, Xiaodong, Nicole, Katie, Ron

  • Project week follow-up
    • Half of tcon on Feb 7
    • Half of tcon on Feb 14
  • Registration
    • Viola-Wells optimizations need to be enabled
    • Stephen needs to check-in and publish recent changes
    • Stephen needs to update the wiki
    • Luis continues to make optimizations (main focus is memory reduction)
  • BatchMake
    • Grid Wizard - meeting on Monday
    • Integration with Slicer delivered via getbuildtest2
  • New webpages
  • Slicer-specific wiki
    • Migrating appropriate info from Na-mic to slicer
    • Hold off on adding to Slicer-wiki until notified
      • Continue using Na-mic wiki
  • New Nitrc project
    • Jim Miller is leading
    • "Slicer3 plug-in examples" project
    • http://nitrc.org - search for slicer3
      • Includes demo/stub for ITK filtering data, etc.
    • Collection associated with an ITK course being taught
    • Requires CVS version of ITK
    • Works with Slicer build and Slicer install
    • Steve P is the liaison with NITRC
  • Slicer tutorial at UNC, April 14th
  • User-level Slicer training - Feb 20 at BWH
    • 1249 Boyleston
    • Release version of Slicer3

2008-01-24

Attendees: Jim, Steve, Wendy, Xiaodong, Nicole, Katie, Alex, Luis, Ron, Will

  • Project week follow-up (Next week?)
    • Will will send email invitations for first half of projects for next week's tcon
  • Loadable modules
    • Alex and Terry are rearranging Slicer3.cxx to support loadable modules
    • Separate branch for built-in module discovery process
    • Sebastien is working on build issues for modules whose code is outside Slicer3
  • GenerateCLP - Thanks Hans for changes to support building modules
    • Hans is running a class this semester where the students will build Slicer CLI modules.
    • Jim is working on an ExampleModule for people to use as a template for building modules outside of Slicer3. Perhaps NITRC.
  • XML library
    • What to do with libaries that are too big to include in the source directory?
  • AHM 2009, Jan 5-9, 2009
  • Summer Project Week, Jun 23-27, 2008
  • New server architecture for wiki, svn, publication database

2008-01-17

Attendees: Jim, Katie, Sebastien, Stephen, Luis, Steve, Wendy, Will

  • Luis and Bill Hoffman are making progress in making ITK installation relocatable. This is needed to finish the work on building plugins from an installation.
  • What's in VTK 5.2?
    • Infovis - Tables, Graphs, Views, IO
    • Refinements to WWidgets. Client/Server connections within the widgets. Event translation. New widgets (text, caption, affine, checkerboard, rectilinear wipe, annotation, key frame, contour, measurement, point/placer, plot)
    • Build now? Or wait until 5.2 released?
    • Repository freeze in March
    • Release on April 1, 2008
  • ITK release
    • Patches to ITK 3.4
      • Nine component/six component tensor conversion in IO has been patched to ITK 3.4
    • 1/19-2/1 moving contributions on Insight Journal for ITK 3.6
    • Move items from Review directory to main tree (QuadMesh, TransformIO) for ITK 3.6
    • Freeze repository 2/29 for ITK 3.6
    • Slicer3 will need to build against the Review directory.
  • CMake release
    • Version 2.6 on the horizon - release candidate in 3 weeks.
  • Tcl/Tk 8.5
    • Sebastien has a Windows build
    • Steve will try it out
    • Wait to switch to 8.5 until we have a good reason
  • Loadable modules
    • Sebastien - working on CMake issues on building modules as loadable modules
    • Terry - working on loading modules and reworking Slicer3.cxx
  • Event Broker
  • DWI DICOM as part of the Load Volume. Xiaodong is working on it.
  • ITKFactories directory in build and installs to hold ImageIO plugin libraries. Should increase the speed of executable plugins on the Mac.
  • OpenIGTLink
    • Protocol on the wiki (message format)
    • Put code in Sandbox, SourceForge, NITRC, Google Code???
  • Will schedule a time to go over the Project Week results

2008-01-10

No tcon due to AHM

2008-01-03

  • Attendees: Jim, Steve, Will, Brad Davis
  • Topics:
    • Jim and Will talked about leading the Monday and Friday sessions, and who would do what.
    • We are going to send out reminders to the project leads to ensure that their project descriptions are up to date
    • We discussed the software process project to make sure that we have a chance to address the Slicer build process, dashboards, etc.
    • We decided not to hold the project wrap-up presentation at AHM; we will do that later at subsequent TCons. (We decided that we needed the time to actually work. We are concerned that we are starting to see too many break-outs and not enough time to work.)
    • We keenly missed Tina and hope that she and her family are doing well.