/snappysonic

SnappySonic is an Ultrasound Simulator for use in research and public engagement.

Primary LanguagePythonOtherNOASSERTION

SnappySonic

Logo

GitHub Actions CI status

Test coverage

Documentation Status

Maintainability

Tutorial on YouTube

Follow scikit_surgery on twitter

Author: Stephen Thompson

SnappySonic can be used as an ultrasound acquisition simulator. The output from a tracking system (NDI or AruCo tags) is to select a frame of pre-recorded video to show. A suitable video of ultrasound data is included in the data directory, however the user can select a video of their choosing. The software and its use is described in the SnappySonic paper.

SnappySonic 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).

SnappySonic supports Python 3.6.

pip install snappysonic
python snappysonic.py --config config.json

The config file defines the tracking parameters and image buffer, e.g.

{
 "ultrasound buffer": "data/usbuffer.mp4",
   "buffer descriptions": [
      {
       "name": "glove",
       "start frame": 0,
       "end frame": 284,
       "x0": 20, "x1": 200,
       "y0": 200, "y1": 260,
       "scan direction": "x"
      },
  ]
  ....
  "tracker config": {
      "tracker type": "aruco",
      "video source": 2,
      "debug": true,
      "capture properties": {
          "CAP_PROP_FRAME_WIDTH": 640,
          "CAP_PROP_FRAME_HEIGHT": 480

 }
}

An example configuration file can be downloaded from here and an image buffer from source code repository data directory

Developing

Cloning

You can clone the repository using the following command:

git clone https://github.com/SciKit-Surgery/snappysonic

Running tests

Unit tests are performed in stand alone environments using tox, which also checks coding style. :

tox

Installing

You can pip install from pypi with :

pip install snappysonic

or You can pip install directly from the repository as follows: :

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

How to Cite

If you use this software in your research or teaching, please cite:

Thompson, S., Dowrick, T., Xiao, G., Ramalhinho, J., Robu, M., Ahmad, M., Taylor, D. and Clarkson, M.J., 2020. SnappySonic: An Ultrasound Acquisition Replay Simulator. Journal of Open Research Software, 8(1), p.8. DOI: http://doi.org/10.5334/jors.289

Contributing

Please see the contributing guidelines.

Copyright 2019 University College London. snappysonic is released under the BSD-3 license. Please see the license file for details.

Acknowledgements

Supported by Wellcome and EPSRC.