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
You can clone the repository using the following command:
git clone https://github.com/SciKit-Surgery/snappysonic
Unit tests are performed in stand alone environments using tox, which also checks coding style. :
tox
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
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
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.