Skip to main content

scikit-surgerycalibration provides algorithms designed for the calibration of surgical instruments

Project description

Logo

GitHub Actions CI statuss Test coverage Documentation Status The SciKit-Surgery paper Follow scikit_surgery on twitter

Author(s): Stephen Thompson; Contributor(s): Matt Clarkson, Thomas Dowrick and Miguel Xochicale

scikit-surgerycalibration is part of the SciKit-Surgery software project, developed at the Wellcome EPSRC Centre for Interventional and Surgical Sciences, part of University College London (UCL).

scikit-surgerycalibration is tested on Python 3.7.

scikit-surgerycalibration contains algorithms to perform calibrations useful during surgery, for example pointer calibration, ultrasound calibration, and camera calibration.

Please explore the project structure, and request or implement your desired functionality.

Features

  • Pivot Calibration for pivot calibration.

  • Calibration of mono or stereo tracked video data, calculating camera intrinsics and handeye transformation.

Cloning

You can clone the repository using the following command:

git clone https://github.com/SciKit-Surgery/scikit-surgerycalibration
git clone git@github.com:SciKit-Surgery/scikit-surgerycalibration.git # Alternatively, use password-protected SSH key.

Developing

We recommend using anaconda or miniconda to create a python 3.7 environment, then using tox to install all dependencies inside a dedicated venv. We then use github actions to run a matrix of builds for Windows, Linux and Mac and various python versions.

All library dependencies are specified via requirements-dev.txt which refers to requirements.txt.

So, assuming either anaconda or miniconda is installed, and your current working directory is the root directory of this project:

conda create --name scikit-surgery python=3.7
conda activate scikit-surgery
pip install tox
tox

As the tox command runs, it will install all dependencies in a sub-directory .tox/py37 (Linux/Mac) or .tox\py37 (Windows). tox will also run pytest and linting for you.

To run commands inside the same environment as tox, you should:

source .tox/py37/bin/activate

on Linux/Mac, or if you are Windows user:

.tox\py37\Scripts\activate

Then you can run pytest, linting, or directly run python scripts, and know that the environment was created correctly by tox.

Generating documentation

The simplest way is again using tox.

tox -e docs

then open docs/build/html/index.html in your browser.

Running tests

Pytest is used for running unit tests:

python -m pytest
pytest -v -s tests/algorithms/test_triangulate.py #example for individual tests

Linting

This code conforms to the PEP8 standard. Pylint can be used to analyse the code:

pylint --rcfile=tests/pylintrc sksurgerycalibration

Installing

You can pip install directly from the repository as follows:

pip install git+https://github.com/SciKit-Surgery/scikit-surgerycalibration

Contributing

Please see the contributing guidelines.

Acknowledgements

Supported by Wellcome and EPSRC.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

scikit-surgerycalibration-0.2.4.tar.gz (67.9 kB view details)

Uploaded Source

File details

Details for the file scikit-surgerycalibration-0.2.4.tar.gz.

File metadata

File hashes

Hashes for scikit-surgerycalibration-0.2.4.tar.gz
Algorithm Hash digest
SHA256 fbf4fe1340cb1e3e6149e9768eeb1064b917fe093a9dfbed8e63c71fc683f049
MD5 cd0b95d55c6998798ddb2fcbed760163
BLAKE2b-256 7cac5a21ac74b52fb8446a67d8b3ce6a77e9054c30fe8ba895f7b40f2a666edf

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page