User:Naucoin

From NAMIC Wiki
Jump to: navigation, search

NCIGT notes

To be moved to the NCIGT wiki once I get an account.

Projects

4D support in Slicer4

Deliverables:

Goal:

Once a 4D data set is loaded into Slicer4, be able to apply operations to all volumes in a series.


  • have a slider to inspect the volumes in a series, when move it: update the 2D slice windows, have volume rendering update as well
  • pick fg/bg series
  • update the volume container as data comes in from realtime capture
Milestones and Progress
  • June 2011:
    • June 3: set up development environment and working relationships
    • June 10: add and test volume hierarchy nodes
    • June 17: prepare a report on scope of infrastructure changes needed in Slicer4 to support 4D data (CLI, node selectors, calling modules from anywhere)
    • June 24: NAMIC summer project week: Multivolume Container breakout session
    • June 30: add scene model for volume hierarchy nodes (assuming that's the result of the project week breakout discussions)
  • July 2011
    • July 8: continue work on Qt scene model and tree widget for volume hierarchies
    • July 15: enhance Volumes module to work with multi volume containers
    • July 22: continue work on Volumes module
    • July 29: continue work on Volumes module: slider
  • August 2011
    • August 5: continue work on Volumes module: fg/bg selection
    • August 12: start integration with Volume Rendering
    • August 19: continue integration with Volume Rendering
    • August 26: continue integration with Volume Rendering
  • Sept 2011
    • Sept 2: start work on batch processing over series
    • Sept 9: continue work on batch processing over series
    • Sept 16: continue work on batch processing over series
    • Sept 23: vacation week
    • Sept 30: continue work on batch processing over series
  • Oct 2011:
    • Oct 7: real time update
    • Oct 14: continue work on real time update
    • Oct 21: Demonstrate current state of project
    • Oct 28: Incorporate suggestions from demo
    • Oct 31: Final documentation and wrap up

PACS/DICOM

Deliverables:
  • Browse 4D Ultrasounds data from the AMIGO PACS, then load into Slicer4 for visualisation.
Milestones and Progress
  • June 2011:
    • June 3: Familiarization with BrainLab, set up development environment and working relationships, sign up for access to ctkDICOM code
    • June 10: Familiarization with ctkDICOM, define areas for enhancement
    • June 17: Testing of ctkDICOM browser.
    • June 24: NAMIC summer project week: ctkDICOM to be working (Steve)
    • June 30: Get 3D MRI from a PACS system and into Slicer and Brainlab in a user friendly way
  • July 2011 (to be made more detailed)
    • July 8: Begin expanding ctkDICOM browser to 4D
    • July 15: continue work on ctkDICOM browser
    • July 22: continue work on ctkDICOM browser
    • July 29: continue work on ctkDICOM browser
  • August 2011
    • August 5: demonstrate current state of ctkDICOM browser
    • August 12: incorporate results of demo into ctkDICOM browser
    • August 19: continue work on ctkDICOM browser
    • August 26: continue work on ctkDICOM browser
  • Sept 2011
    • Sept 2: Test in AMIGO
    • Sept 9: Bug fixing after test in AMIGO
    • Sept 16: continue bug fixing
    • Sept 23: vacation week
    • Sept 30: Prepare for demonstration in AMIGO
  • Oct 2011:
    • Oct 7: Demonstration in AMIGO
    • Oct 14: Incorporate feedback from demo
    • Oct 21: Incorporate feedback from demo
    • Oct 28: Incorporate feedback from demo
    • Oct 31: Final documentation and wrap up

Meeting Notes

May 26/11: ctkDICOM

Talked with Steve Pieper about current state of CTK DICOM project.

  • ctkDICOM
  • the layers of software start at the bottom with dcmtk then there's a CTK layer then Slicer
    • there is an exe called ctkdicom, which is a wrapper around ctkdicom app widget, can instantiate that from the python console in Slicer4:
 c = ctk.ctkDICOMAppWidget()
 c.show()
  • can import a dicom dir, setting the flag to copy on import will copy the files to a local directory
  • query will let you set up a server.
    • Storage AETitle needs to work. When taking a scan, Slicer listens, the scanner tech pushes send and it moves into Slicer
  • export lets you save the dicom database to a local direcotry
  • send pushes to PACS
    • PACS has to know about Slicer before it will send files, so need AETitle and Port set
  • to add: node to control access/query to the local DB
  • Goal for the Summer 2011 NAMIC Project week: be able to get data from a PACS, into the ctkDICOM browser and from there into Slicer

May 25/11: Kickoff

Initial meeting with Noby to frame the project:

  • 4D Ultrasound is not supported in current 4D Image code
  • he proposes I work 2 days/week on it, from June 1 to Oct 31
    • this works out to about 24 days per project (maybe a day less depending on how split the days of the week)
  • looking at data that's 3D + time, for 3D ultrasounds, MR, CT, etc
    • record/visualise in Slicer, have a slider to inspect the volumes, update the 2D slice windows, pick fg/bg, have volume rendering update as well
    • handle the data as a chunk so can iterate over it and apply processing algorithms
  • update the volume container as data comes in from realtime capture
  • Laurent Chauvin did a simulation and a basic implementation
  • To generalise, it can expand to 4D+, using other parameters than time, but a play button doesn't mean much then, so focus on time for now
  • work with Alex to make this available with volume rendering with 4D ultrasound
  • second project: PACS DICOM database.
    • have PET, CT, MRI, US all going into a PACS DICOM database, SQL lite + dcmtk
    • Steve working on a CTK DICOM browser
    • have a DICOM interface to Slicer, can keep a local copy of the data
    • Laurent working on 4DUS, work with him on that part
    • Junichi is working on the OpenIGTLink
    • Nicholas is from a company (AZE?), working to get a PACS SQL DICOM system up and running. Interns there can work on this, they welcome open source, and have written a tutorial
  • define milestones/deliverables
  • he's meeting Laurent and Nicholas at Tuesday 3pm at the SPL every week
    • I have a tcon 4-5pm every Tuesday, and an informal meeting with Alex and Steve 2-3.
    • do pair coding with Junichi like I am with Daniel
  • be visible near the AMIGO system so that the clinicians can see me and interact with me to get feedback
    • Roland will be the AMIGO expert, talk to him about implementing it in the suite
  • 1st month, MRI->PACS->Slicer and Brainlab with minimal user intervention
  • IGT wiki or namic for progress reports (requested user account nicole on IGT wiki)
  • make something demonstratable, eventually working in AMIGO

Widgets Slicer wish list

Updating Fiducial list to vtkSeedWidget

Notes from talking with Karthik, Oct 7/08

Features needed:

  • Ability to set properties per seed
  • Ability to associate a label with a seed.
  • Label visibility can be toggled on/off
  • Ability to associate (optionally) a note with a seed (Ron's request)
  • Glyps for seed shape
    • 2D
      • All the ones in vtkGlyph2D
      • StarBurst2D,
    • 3D
      • Sphere3D
      • Diamond3D
  • Nicole to check if transform is applied to the fiducials in slicer registration. Really bad idea to do so with widgets.

Distance measurement widget

  • Need distance measurement between two fiducials in 3D
  • Current distance widget in VTK is 2D. Line widget is 3D but does not report distance, ticks, labels etc. Either extend former or latter ?

Angle measurement

  • Angle between 3 fiducials in 3D
  • Angle widget in VTK is Actor2D. Need to extend that

Affine widget

  • Mega widget (will take time)
  • 6 degrees of freedom.

Live wire widget

  • Live wire widget for the editor
  • Exists in VTK HEAD Sep 08. Upgrade from VTK 5.2

Contour widget (just a wish, not urgent)

  • Use case: Pick a series of models to place in a hierarchy
  • Lasso around a bunch of objects in 3D

VTKEdge

  • Steve and Will to talk about VTKEdge, licensing etc.
  • Paintbrushes in VTKEdge
  • GPU ray caster

Picking issue with widgets

  • Bug picking implicit plane widget.
    • Note to KK: Look at SlicerPlaneSWidget.tcl:75

Testing 3.2

Testing ImageGuidedTherapyPlanning.pdf using Slicer3.2 for linux64 on SPL workstation b2-d4_10. Bugs in bold, usability issue in italics, regular text for changes to the tutorial.

  • page 19: center 3d button needs new screen capture
  • page 31/31: missing "Set the foreground volume to language_FMRI", missing '-' in name of anatomical-MRI
  • page 43: don't need to create new command line module
  • page 46: select the registration transform: if there's room, could give the name
  • page 54: manual threshold is slow, doesn't update each time
  • page 60: don't need to create a new fid list, one is created automatically when you put down the first point
  • page 68: see comment page 43, plus, could highlight the progress bar with a red circle or the Status area where Completed will show up
  • page 70: see comment page 43
  • page 76: add "Open Hierarchy and Display pane"
  • page 88: background should be to anatomical-MRI not anatomicalMRI that you just loaded
  • page 90: extra space in "anatomical MRI"
  • page 91: again, confusion wrt "-" in anatomicalMRI name
  • page 101: see comment page 43
  • page 107: win/level not updated? no, the first one that comes up in the slice windows is just the baseline and has different values (mostly white)
  • page 113: doesn't look quite the same in my test, more noise. Add "fit to window"
  • page 114: my slice views already look like page 115
  • page 120: see comment page 60
  • page 126: turning off the glyphs made the slices go black in 2d, mouse over brought them back
  • page 134: dragging nodes is non intuitive, you have to drag the nodes over the transform to get them to go under it, it seems that you should be able to drag the node anywhere under it (over another node under the transform)
  • page 136 and 135: missing dash in anatomicalMRI name
  • page 137: when click on foreground layer to show fmri, the 2d slices update with the proper opacity right away, but the 3d view needs a mouse over to update
  • page 139: tumor model got renamed to optic_tract_L.vtk! name or ID clash when importing scene?
  • page 150: here my screen saver kicked on, and when Slicer came back, in the 2d views, only the fiducial was visible until I moused over, then the volumes became visible again. If I make the fiducial invisible, the 2d view operates as expected (Ron reported this as bug 291)