kitwaremedical / vpaw Goto Github PK
View Code? Open in Web Editor NEWA surgical planning software system targeted to pediatric patients with airway obstruction.
Home Page: https://www.ncbi.nlm.nih.gov/pmc/articles/PMC5588666/
License: Other
A surgical planning software system targeted to pediatric patients with airway obstruction.
Home Page: https://www.ncbi.nlm.nih.gov/pmc/articles/PMC5588666/
License: Other
Give VPAWModel the ability to run the pediatric-airway-atlas pipeline on new cases
VPAW is currently using an older version of Slicer and iMSTK in the SlicerIMSTK module. We want to update this to the latest versions of both libraries to stay in sync with these libraries
Slicer->iMSTK
The VPAWVisualize module should have functionality to visualize the p3 files generated by the pediatric_airway_atlas pipelines.
These would be files with the following name pattern:
./transformed_landmarks/*_LANDMARKS.p3
./areas/*_AREAS.p3
./processed_areas/*_AREAS.p3
./interpolated_areas/*_AREAS.p3
./processed_centerline/*_CENTERLINE.p3
./centerline/*_CENTERLINE.p3
UPDATE: See comment below for the suggested visualization to create here.
SlicerIMSTK has an option to disable open-haptics if the OpenHaptics SDK is not installed:
KitwareMedical/SlicerIMSTK@c017e59
Follow similar logic in VPAW
Similar to the modules VPAWModel
and VPAWVisualize
, create modules VPAWModelOCT
and VPAWVisualizeOCT
. VPAWModelOCT
will be responsible for running the workflow provided by uncbiag/OCTSeg
and VPAWVisualizeOCT
will be responsible for visualizing the OCT output.
Add the "ImageStack" module from the SlicerMorph Extension package to VPAW to provide a flexible way of loading non-DICOM image sequence images like PNG and TIFF in VPAW
https://github.com/SlicerMorph/SlicerMorph/tree/master/Docs/ImageStacks
@jcfr @sjh26 please provide pointers on how to do this in VPAW
These modules should be made available via obvious buttons, be in lists of favorite modules, etc.
Take the set of segment edit stream json files that our clinical collaborators have and apply them to the segmentations in order to convert those to edited models.
Add button to access segment editor from within VPAW without having to unhide the slicer interface
vpaw debug build fails on g3logger install step
Performing install step for 'g3log'
Error copying file "D:/b/VPAWD22/g3log-build/Debug/g3loggerd.lib" to "D:/b/VPAWD22/g3log-install/lib/g3loggerd.lib"
Install step of 'g3log' expects the built library file to be g3loggerd.lib
in debug mode, but it is created as g3logger.lib
Give VPAWModel the ability to run the pediatric_airway_atlas pipeline on new cases
We need a flythrough animation feature in VPAW. This is to aid in communicating aspects of a patient’s airway/anatomy to other clinicians. A flythrough path is defined by creating a set of keyframes that store camera poses. The camera poses are interpolated between keyframes to produce smooth camera movement along the camera path.
Task:
A standalone KeyFrameEditor module (or feature added to an existing module) for generating and exporting volume rendering animations. The module will provide a timeline and tracks allowing to save, edit and delete key frames associated with transfer function, ROI clipping box and camera position and orientation. Available keyframe interpolation functions will include ramp, exponential and bezier. Camera path will be represented by a curve annotation.
The plan is to distribute this feature as a standalone module as a Slicer extension or added to an existing module in Slicer core.
PS
Related modules to explore
Sequence module ( https://slicer.readthedocs.io/en/latest/user_guide/modules/sequences.html )
ScreenCapture module ( https://slicer.readthedocs.io/en/latest/user_guide/modules/screencapture.html )
Endoscope module ( https://slicer.readthedocs.io/en/latest/user_guide/modules/endoscopy.html)
SlicerMorph Animator module (Animator:
The VPAW Visualize
module should show whatever is available rather than giving an error message when components are missing. In particular, a vpaw-root-dir
with the usual inputs images/*
and landmarks/*
but no pipeline outputs should not give an error message.
Now that VPAWVisualize and VPAWModel exist, the readme should be updated to indicate what they do and how to get set up with using them. The README should mention the dependence of VPAWModel on pediatric_airway_atlas
so that this project can be rightly ignored by any passer-by who does not have access to that particular private research code.
This GitHub issue is to provide a forum to discuss: to maintain maximum compatibility with 3D Slicer conventions, how and when do we want to update VPAW's application version numbers and GitHub releases and tags?
The user may be asked by VPAW
(specifically, the underlying 3D Slicer
) to choose between Wait
and Force Quit
during a long pediatric_airway_atlas
pipeline run and this may be confusing. To reduce the confusion we might choose one or more among
pediatric_airway_atlas
into a QTextEdit
so that the user sees that something is happening and also sees whatever errors might be generated by the pipeline.Credit to @ebrahimebrahim for formulating most of the issue text.
Importing a 3D reconstructed a-OCT binary image for editing requires multiple manual steps. We should write a python script to simplify/automate this.
When inputting missing patient ID, it proceeds to load some plots anyway, with no error message
Currently we report only that the computation in the pediatric_airway_atlas
module failed, and give an error message that speculates what might have gone wrong. Instead, catch any errors or exceptions from pediatric_airway_atlas
to give a more informative and definitive message.
Note that pediatric_airway_atlas
is invoked via slicer.util._executePythonModule(...)
rather than by direct Python call, so the detecting and reporting of exceptions may be somewhat non-trivial.
The VPAW Model
module was recently updated to store form field values via qt.QSettings()
so that the form field values are application-wide, not scene-specific, and will be re-populated when the VPAW application is restarted. Consider doing the same for one or more form fields in the VPAW Visualize
module. Also, for the form field(s) that are duplicated between the two modules (e.g., the data directory) consider whether they should be forced to be equal vs. stored and re-populated independently.
As suggested at #33 (comment) by @jcfr (see "Pull Request 1"), we can support including SlicerIMSTK optionally by adding a cmake flag to indicate inclusion.
In Pull Request #33, we removed SlicerIMSTK because it would not build under Microsoft Windows due to a C++ version issue: 3D Slicer wants C++17 but IMSTK wants C++14. Unfortunately, that fix disables inclusion of IMSTK on other operating systems too. With the present issue implemented, the user can include or not include IMSTK as is best for the user.
VPAWModel should accept DICOM
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.