Difference between revisions of "2016 Winter Project Week/Projects/CommonGL"
From NAMIC Wiki
| (7 intermediate revisions by 2 users not shown) | |||
| Line 5: | Line 5: | ||
File:Warped-fiducials.png | File:Warped-fiducials.png | ||
File:Ruffles.png | File:Ruffles.png | ||
| + | File:sphere-subtraction.png | ||
</gallery> | </gallery> | ||
| Line 15: | Line 16: | ||
==Project Description== | ==Project Description== | ||
{| class="wikitable" | {| class="wikitable" | ||
| + | ! style="text-align: left; width:27%" | Objective | ||
| + | ! style="text-align: left; width:27%" | Approach and Plan | ||
| + | ! style="text-align: left; width:27%" | Progress and Next Steps | ||
|- style="vertical-align:top;" | |- style="vertical-align:top;" | ||
| − | ! | + | | |
| + | <!-- Objective bullet points --> | ||
* Move forward on a set of code to do GPU computing with multiple target platforms in mind as [https://docs.google.com/presentation/d/14FHNwZ4eZ222xZEqs1pAtygTcz3Cy6GYLXlk8ANyxnc/edit?usp=sharing described in these slides and videos]. | * Move forward on a set of code to do GPU computing with multiple target platforms in mind as [https://docs.google.com/presentation/d/14FHNwZ4eZ222xZEqs1pAtygTcz3Cy6GYLXlk8ANyxnc/edit?usp=sharing described in these slides and videos]. | ||
| − | + | | | |
| − | |||
| − | |||
* Identify use cases that would be good for this approach | * Identify use cases that would be good for this approach | ||
** Visualization | ** Visualization | ||
| Line 29: | Line 32: | ||
* Evaluate build and deployment issues on various platforms | * Evaluate build and deployment issues on various platforms | ||
* Test code performance on various platforms | * Test code performance on various platforms | ||
| − | + | * Implement one or more sample image algorithms and compare with CPU implementation | |
| − | + | ** Performance | |
| − | + | ** Ease of development, readability, maintainability... | |
| − | * | + | ** Scalability limits |
| − | + | | | |
| + | * Discussed motivation and implementation options with many members of the community | ||
| + | ** Positive feedback on goals and opportunity | ||
| + | ** Potential use cases identified as possible points of collaboration (Sandy Wells, Terry Yoo, Dan Blezek, Curt Lisle, Sudhanshu Semwal...) | ||
| + | ** Additional motivation from IGT projects | ||
| + | *** Real-time brain shift visualization for AMIGO neurosurgery | ||
| + | *** Interactive segmentation/volume rendering for SlicerHeart and other applications | ||
| + | * Code and architecture review | ||
| + | * Experimental compositing options (see sphere-subtract image above) | ||
|} | |} | ||
| Line 45: | Line 56: | ||
* [https://www.youtube.com/watch?v=_0K9vxgdwUU Video showing CT + MR compositing, nonlinear spatial transform, and interactive positioning of geometric objects] | * [https://www.youtube.com/watch?v=_0K9vxgdwUU Video showing CT + MR compositing, nonlinear spatial transform, and interactive positioning of geometric objects] | ||
* [https://www.youtube.com/watch?v=MYx8xZstnPE Video showing smart editor tool implemented with GLSL] | * [https://www.youtube.com/watch?v=MYx8xZstnPE Video showing smart editor tool implemented with GLSL] | ||
| + | * Babybrain collaboration (Boston XTK/SliceDrop/Children's Hospital, Nicolas, Steve, Rudolph, Daniel...) | ||
| + | ** VJS https://github.com/FNNDSC/vjs | ||
| + | ** WebGL ray cast demo: http://fnndsc.github.io/vjs/#shaders_raycasting_adibrain | ||
| + | |||
| + | === Other WebGL / GLSL references === | ||
| + | |||
| + | * Image processing in WebGL: https://www.gitbook.com/book/projectseptemberinc/gl-react/details | ||
| + | * Fun GLSL demos | ||
| + | ** http://glslsandbox.com | ||
| + | ** http://shadertoy.com | ||
| + | * WebGL graphics library: http://threejs.org | ||
Latest revision as of 16:00, 8 January 2016
Home < 2016 Winter Project Week < Projects < CommonGLKey Investigators
- Steve Pieper, Isomics, Inc.
- Jim Miller, GE
- Others are welcome to join!
Project Description
| Objective | Approach and Plan | Progress and Next Steps |
|---|---|---|
|
|
|
Background and References
- A document describing some considerations on CommonGL
- Prototype code
- VTK Classes to support GLSL programming: https://github.com/pieper/Slicer/tree/add-commongl
- Scripted module for rendering: https://github.com/pieper/CommonGL/tree/master/ShaderComputation
- Video showing CT + MR compositing, nonlinear spatial transform, and interactive positioning of geometric objects
- Video showing smart editor tool implemented with GLSL
- Babybrain collaboration (Boston XTK/SliceDrop/Children's Hospital, Nicolas, Steve, Rudolph, Daniel...)
- VJS https://github.com/FNNDSC/vjs
- WebGL ray cast demo: http://fnndsc.github.io/vjs/#shaders_raycasting_adibrain
Other WebGL / GLSL references
- Image processing in WebGL: https://www.gitbook.com/book/projectseptemberinc/gl-react/details
- Fun GLSL demos
- WebGL graphics library: http://threejs.org