scikit-surgery
scikit-surgery copied to clipboard
SciKit-Surgery - Compact Libraries for Surgical Navigation
scikit-surgery
.. image:: https://github.com/UCL/scikit-surgery/raw/master/weiss_logo.png :height: 128px :width: 128px :target: https://github.com/UCL/scikit-surgery
| .. image:: https://readthedocs.org/projects/scikit-surgery/badge/?version=latest :target: http://scikit-surgery.readthedocs.io/en/latest/?badge=latest :alt: Documentation Status
.. image:: https://img.shields.io/badge/Cite-SciKit--Surgery-informational :target: https://doi.org/10.1007/s11548-020-02180-5 :alt: The SciKit-Surgery paper
.. image:: https://img.shields.io/twitter/url?style=social&url=http%3A%2F%2Fscikit-surgery.org :target: https://twitter.com/intent/tweet?screen_name=scikit_surgery&ref_src=twsrc%5Etfw :alt: Get in touch via twitter
.. image:: https://img.shields.io/twitter/follow/scikit_surgery?style=social :target: https://twitter.com/scikit_surgery?ref_src=twsrc%5Etfw :alt: Follow scikit_surgery on twitter
.. introduction-start
SciKit-Surgery is a collection of compact libraries developed for surgical navigation. Individual libraries can be combined using Python to create clinical applications for translational research. However because each application's requirements are unique the individual SciKit-Surgery libraries are kept independent, enabling them to be maintained, modified and combined in new ways to create new clinical applications. Keeping the libraries independent enables researchers to implement novel algorithms within a small library that can be readily reused and built on by the research community.
A typical clinical application might consist of an imaging source (e.g. SciKit-SurgeryBK_ to stream ultrasound images), a tracking source (e.g. SciKitSurgery-NDITracker) to locate the images in space, an image processor (e.g. SciKit-SurgeryTorch) to segment anatomy from the image, and a visualisation layer (e.g. SciKit-SurgeryVTK_)
SciKit-Surgery is developed at the Wellcome EPSRC Centre for Interventional and Surgical Sciences <http://www.ucl.ac.uk/weiss>, part of University College London (UCL) <http://www.ucl.ac.uk/>.
.. introduction-end
.. features-start
Packages
scikit-surgerycore <https://github.com/UCL/scikit-surgerycore>_ - Algorithms/tools common to all scikit-surgery packagesscikit-surgeryimage <https://github.com/UCL/scikit-surgeryimage>_ - Image processing algorithms using OpenCVscikit-surgeryvtk <https://github.com/UCL/scikit-surgeryvtk>_ - Implements VTK functionality for IGS applicationsscikit-surgeryutils <https://github.com/UCL/scikit-surgeryutils>_ - Example applications/utilitiesscikit-surgerycalibration <https://github.com/UCL/scikit-surgerycalibration>_ - Calibration algorithms (camera/pointer/ultrasound etc)scikit-surgerysurfacematch <https://github.com/UCL/scikit-surgerysurfacematch>_ - Stereo reconstruction and point cloud matchingscikit-surgerytf <https://github.com/UCL/scikit-surgerytf>_ - IGS models implemented in TensorFlowscikit-surgerytorch <https://github.com/UCL/scikit-surgerytorch>_ - IGS models implemented in PyTorchscikit-surgerynditracker <https://github.com/UCL/scikit-surgerynditracker>_ - Interface for Northern Digital (NDI) trackers. Vicra, Spectra, Vega, Aurora.scikit-surgeryarucotracker <https://github.com/UCL/scikit-surgeryarucotracker>_ - Interface for OpenCV ARuCo.scikit-surgeryspeech <https://github.com/UCL/scikit-surgeryspeech>_ - Speech/Wakeword detection
.. features-end
Please see Documentation_ for further module details.
.. tutorial-start
Tutorials
Tutorials are split into three groups, those that show how to assemble SciKit-Surgery libraries into an application, those that concentrate on the workings a single application, and those that are aimed at general education in image guided interventions using SciKit-Surgery.
General Tutorials
-
Use SciKit-SurgeryUtils and SciKit-SurgeryArUcoTracker to build an AR application using your webcam. <https://scikit-surgerytutorial01.readthedocs.io/en/latest/>_ -
ROS Integration <https://scikit-surgery.readthedocs.io/en/latest/ros.html>_ scikit-surgeryvtk -
How To Use VTKOverlayWindow <https://scikit-surgeryvtk.readthedocs.io/en/latest/tutorials/overlay_window.html>_ -
How To Add Text To VTKOverlayWindow <https://scikit-surgeryvtk.readthedocs.io/en/latest/tutorials/text_overlay.html>_ -
Using The Rendering Generator <https://scikit-surgeryvtk.readthedocs.io/en/latest/tutorials/rendering_generator.html>_ -
Distance Fields & Voxelisation <https://scikit-surgeryvtk.readthedocs.io/en/latest/tutorials/voxelisation.html>_
scikit-surgeryimage
Point/Chessboard detectors <https://scikit-surgeryimage.readthedocs.io/en/latest/tutorials/point_detectors.html#point-detectors>_
scikit-surgerycalibration
* Camera Calibration <https://scikit-surgerycalibration.readthedocs.io/en/latest/tutorials/calibration.html>_
Educational Tutorials
Use a ready made application to investigate different ways of presenting augmented reality. <https://mphy0026.readthedocs.io/en/latest/summerschool/overlay_demo.html#summerschooloverlay>_Improve your impact by creating high quality software implementations of your research. <https://scikit-surgerytutorial02.readthedocs.io/en/latest>_Camera calibration using your phone or webcam. <https://mphy0026.readthedocs.io/en/latest/summerschool/camera_calibration_demo.html#summerschoolcameracalibration>_Make and Calibrate a Pointer. <https://mphy0026.readthedocs.io/en/latest/summerschool/pivot_calibration_demo.html#summerschoolpivotcalibration>_Online Fiducial Registration Tutorial. <https://mphy0026.readthedocs.io/en/latest/summerschool/registration_demo.html#fidregistrationtutorial>_Point Based Registration using Lego or anatomical phantoms. <https://mphy0026.readthedocs.io/en/latest/schedule-2020/workshop-1.html#workshop1pbr>_Camera Calibration of Laparoscopes <https://mphy0026.readthedocs.io/en/latest/schedule-2020/workshop-2.html#workshop2cameracalib>_
.. tutorial-end
Encountering Problems?
Please check list of common issues_.
Contributing
Please see the contributing guidelines_.
Useful links
Source code repository_Documentation_
Licensing and copyright
Copyright 2018 University College London.
scikit-surgery is released under the BSD-3 license. Please see the license file_ for details.
Acknowledgements
Supported by Wellcome_ and EPSRC_.
.. _Wellcome EPSRC Centre for Interventional and Surgical Sciences: http://www.ucl.ac.uk/weiss
.. _source code repository: https://github.com/UCL/scikit-surgery
.. _Documentation: https://scikit-surgery.readthedocs.io
.. _SciKit-Surgery: https://github.com/UCL/scikit-surgery/wiki
.. _University College London (UCL): http://www.ucl.ac.uk/
.. _Wellcome: https://wellcome.ac.uk/
.. _EPSRC: https://www.epsrc.ac.uk/
.. _contributing guidelines: https://github.com/UCL/scikit-surgery/blob/master/CONTRIBUTING.rst
.. _license file: https://github.com/UCL/scikit-surgery/blob/master/LICENSE
.. _common issues: https://github.com/UCL/scikit-surgery/issues
.. _SciKit-SurgeryBK: https://github.com/UCL/scikit-surgerybk
.. _SciKit-SurgeryVTK: https://github.com/UCL/scikit-surgeryvtk
.. _SciKitSurgery-NDITracker: https://github.com/UCL/scikit-surgerynditracker
.. _SciKit-SurgeryTorch: https://github.com/UCL/scikit-surgerytorch