.. image:: https://github.com/SciKit-Surgery/scikit-surgerycalibration /raw/master/weiss_logo.png :height: 128px :width: 128px :target: https://github.com/SciKit-Surgery/scikit-surgerycalibration :alt: Logo
|
.. image:: https://github.com/SciKit-Surgery/scikit-surgerycalibration/workflows/.github/workflows/ci.yml/badge.svg :target: https://github.com/SciKit-Surgery/scikit-surgerycalibration/actions :alt: GitHub Actions CI statuss
.. image:: https://coveralls.io/repos/github/SciKit-Surgery/scikit-surgerycalibration/badge.svg?branch=master&service=github :target: https://coveralls.io/github/SciKit-Surgery/scikit-surgerycalibration?branch=master :alt: Test coverage
.. image:: https://readthedocs.org/projects/scikit-surgerycalibration /badge/?version=latest :target: http://scikit-surgerycalibration .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/follow/scikit_surgery?style=social :target: https://twitter.com/scikit_surgery?ref_src=twsrc%5Etfw :alt: 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-start
Pivot Calibration <https://scikit-surgerycalibration.readthedocs.io/en/latest/module_ref.html#pivot-calibration>
_ for pivot calibration.Calibration <https://scikit-surgerycalibration.readthedocs.io/en/latest/module_ref.html#video-calibration>
_ of mono or stereo tracked video data, calculating camera intrinsics and handeye transformation... features-end
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.
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
You can pip install directly from the repository as follows: ::
pip install git+https://github.com/SciKit-Surgery/scikit-surgerycalibration
Please see the contributing guidelines
_.
Source code repository
_Documentation
_Copyright 2020 University College London.
scikit-surgerycalibration is released under the BSD-3 license. Please see the license file
_ for details.
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/SciKit-Surgery/scikit-surgerycalibration
.. Documentation
: https://scikit-surgerycalibration.readthedocs.io
.. SciKit-Surgery
: https://github.com/SciKit-Surgery/scikit-surgery/wiki/home
.. University College London (UCL)
: http://www.ucl.ac.uk/
.. Wellcome
: https://wellcome.ac.uk/
.. EPSRC
: https://www.epsrc.ac.uk/
.. anaconda
: https://www.anaconda.com/
.. miniconda
: https://docs.conda.io/en/latest/miniconda.html
.. tox
: https://tox.wiki/en/latest/
.. venv
: https://docs.python.org/3/library/venv.html
.. actions
: https://github.com/SciKit-Surgery/scikit-surgerycalibration/actions
.. contributing guidelines
: https://github.com/SciKit-Surgery/scikit-surgerycalibration /blob/master/CONTRIBUTING.rst
.. license file
: https://github.com/SciKit-Surgery/scikit-surgerycalibration /blob/master/LICENSE