Difference between revisions of "User:Inorton"
From NAMIC Wiki
Line 16: | Line 16: | ||
*Better transform handling in the reg meta-code: should sort out any hierarchies for cross-registration (ie, want to register to something that is already inside another transform) | *Better transform handling in the reg meta-code: should sort out any hierarchies for cross-registration (ie, want to register to something that is already inside another transform) | ||
*Put models inside appropriate transform after generation | *Put models inside appropriate transform after generation | ||
− | *Editing volume inside of transform - don't want to have to move volumes out of transform every | + | *Editing volume inside of transform - don't want to have to move source volumes out of transform for every Editor use in a complex scene with transform hierarchies. |
*Slice intersections in 3D viewer, ie lines/gray/highlight/etc. at the intersection point (helps with depth perception). In Slicer3 this is only supported in 2d widgets. | *Slice intersections in 3D viewer, ie lines/gray/highlight/etc. at the intersection point (helps with depth perception). In Slicer3 this is only supported in 2d widgets. | ||
− | *intelligent fiducial picking: for example, jump to nearest local min/max (like spm) | + | *intelligent fiducial picking: for example, jump to nearest local min/max in some search region (like spm) |
*option to load nrrd immediately after DicomToNrrd (cli need tweak to add post-handling options?) | *option to load nrrd immediately after DicomToNrrd (cli need tweak to add post-handling options?) | ||
*dynamic (python) module reload | *dynamic (python) module reload | ||
*debug: to work around MRML scene-load crashes need either 1) cl debug option to output each tag as it is being processed, so that I know which node causes the crash or 2) load prompt for each node in the scene (like the Windows XP selective dll load) | *debug: to work around MRML scene-load crashes need either 1) cl debug option to output each tag as it is being processed, so that I know which node causes the crash or 2) load prompt for each node in the scene (like the Windows XP selective dll load) | ||
+ | |||
====DTI==== | ====DTI==== | ||
Line 27: | Line 28: | ||
*Tract (hyperstreamline) intersection with MR planes (highlighted with color change, ring, etc.) | *Tract (hyperstreamline) intersection with MR planes (highlighted with color change, ring, etc.) | ||
*FiberBundle editing!!! | *FiberBundle editing!!! | ||
+ | **context menu on (eg) Ctrl-R click in 3D view to save tracts (could also be used for annotation functionality) | ||
===Thoughts=== | ===Thoughts=== |
Revision as of 17:35, 2 December 2010
Isaiah Norton, Golby Lab, Department of Neurosurgery
contact: inorton @bwh d-t harvard d0t edu
Contents
Slicer Notes
Things that aren't fleshed-out enough to go into Mantis, or if I can't fully reproduce yet, can't share the data right now, etc..
Bugs
- Can't load high-res MEMPRAGE MRI from MGH for AG case in Slicer3. workaround: loaded fine in slicer2, then saved as nrrd. DicomToNRRD also works.
- CropVolume changes image intensity
Feature Wishes
- Better transform handling in the reg meta-code: should sort out any hierarchies for cross-registration (ie, want to register to something that is already inside another transform)
- Put models inside appropriate transform after generation
- Editing volume inside of transform - don't want to have to move source volumes out of transform for every Editor use in a complex scene with transform hierarchies.
- Slice intersections in 3D viewer, ie lines/gray/highlight/etc. at the intersection point (helps with depth perception). In Slicer3 this is only supported in 2d widgets.
- intelligent fiducial picking: for example, jump to nearest local min/max in some search region (like spm)
- option to load nrrd immediately after DicomToNrrd (cli need tweak to add post-handling options?)
- dynamic (python) module reload
- debug: to work around MRML scene-load crashes need either 1) cl debug option to output each tag as it is being processed, so that I know which node causes the crash or 2) load prompt for each node in the scene (like the Windows XP selective dll load)
DTI
- Tract (hyperstreamline) intersection with MR planes (highlighted with color change, ring, etc.)
- FiberBundle editing!!!
- context menu on (eg) Ctrl-R click in 3D view to save tracts (could also be used for annotation functionality)
Thoughts
How-to-do-this
- [LoadBrainPointsIntoSlicer]
Slicer4
- User:inorton/Slicer4:Misc
- User:inorton/Slicer4:Thoughts
- User:inorton/Slicer4:Python
- User:inorton/Slicer4:CodeNotes
Learning Qt
- User:inorton/PyQtNotes
- http://doc.qt.nokia.com/4.7/how-to-learn-qt.html
- http://doc.qt.nokia.com/4.7/tutorials.html
Internal Coding
- http://www.slicer.org/slicerWiki/index.php/Slicer4:Developers
- http://www.slicer.org/slicerWiki/index.php/Slicer4:QtPort
- http://www.slicer.org/slicerWiki/index.php/Slicer4:QtPort/Tutorials
- http://www.na-mic.org/Wiki/index.php/QtAugust2010
- http://www.slicer.org/slicerWiki/index.php/Slicer3:Loadable_Modules:HOWTO
External links
- http://techbase.kde.org/Policies/Library_Code_Policy#D-Pointers
- http://techbase.kde.org/Policies/Binary_Compatibility_Issues_With_C++#Using_a_d-Pointer (Qt arch)
- http://en.wikipedia.org/wiki/Opaque_pointer
Other Notes
SuperBuilding Slicer3 on Windows 7
Slicer3 with WrapITK for Python ITK wrapping