snappysonic

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

https://github.com/scikit-surgery/snappysonic

Science Score: 67.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
    Found 6 DOI reference(s) in README
  • Academic publication links
  • Committers with academic emails
    2 of 3 committers (66.7%) from academic institutions
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (14.8%) to scientific vocabulary

Keywords

education medical-imaging scikit-surgery simulation ucl ultrasound
Last synced: 6 months ago · JSON representation ·

Repository

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

Basic Info
Statistics
  • Stars: 19
  • Watchers: 3
  • Forks: 2
  • Open Issues: 3
  • Releases: 0
Topics
education medical-imaging scikit-surgery simulation ucl ultrasound
Created almost 6 years ago · Last pushed almost 3 years ago
Metadata Files
Readme Contributing License Citation

README.rst

SnappySonic
===============================

.. image:: https://github.com/SciKit-Surgery/snappysonic/raw/master/snappysonic.gif
   :height: 134px
   :target: https://github.com/SciKit-Surgery/snappysonic
   :alt: Logo

|

.. image:: https://github.com/SciKit-Surgery/snappysonic/workflows/.github/workflows/ci.yml/badge.svg
   :target: https://github.com/SciKit-Surgery/snappysonic/actions
   :alt: GitHub Actions CI status

.. image:: https://coveralls.io/repos/github/SciKit-Surgery/snappysonic/badge.svg?branch=master&service=github
    :target: https://coveralls.io/github/SciKit-Surgery/snappysonic?branch=master
    :alt: Test coverage

.. image:: https://readthedocs.org/projects/snappysonic/badge/?version=latest
    :target: http://snappysonic.readthedocs.io/en/latest/?badge=latest
    :alt: Documentation Status

.. image:: https://img.shields.io/badge/DOI-10.5334%2Fjors.289-blue
    :target: http://doi.org/10.5334/jors.289
    :alt: The SnappySonic Paper

.. image:: https://api.codeclimate.com/v1/badges/78440062319f61c55177/maintainability
   :target: https://codeclimate.com/github/SciKit-Surgery/snappysonic/maintainability
   :alt: Maintainability

.. image:: https://img.shields.io/badge/-Video%20Tutorial-blueviolet?style=flat&logo=youtube
   :target: https://www.youtube.com/watch?v=BI4qyg9NEOk
   :alt: Tutorial on YouTube

.. 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: 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`_.


Useful links
^^^^^^^^^^^^

* `Source code repository`_
* `Documentation`_


Licensing and copyright
-----------------------

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`_.


.. _`Wellcome EPSRC Centre for Interventional and Surgical Sciences`: http://www.ucl.ac.uk/weiss
.. _`source code repository`: https://github.com/SciKit-Surgery/snappysonic
.. _`here`: https://github.com/SciKit-Surgery/snappysonic/blob/master/config.json
.. _`source code repository data directory`: https://github.com/SciKit-Surgery/snappysonic/blob/master/data
.. _`Documentation`: https://snappysonic.readthedocs.io
.. _`SciKit-Surgery`: https://github.com/SciKit-Surgery
.. _`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/SciKit-Surgery/snappysonic/blob/master/CONTRIBUTING.rst
.. _`license file`: https://github.com/SciKit-Surgery/snappysonic/blob/master/LICENSE
.. _`SnappySonic paper`: http://doi.org/10.5334/jors.289

Owner

  • Name: SciKit-Surgery
  • Login: SciKit-Surgery
  • Kind: organization
  • Email: s.thompson@ucl.ac.uk

Compact Libraries for Surgical Navigation

Citation (CITATION.cff)

cff-version: 1.2.0
message: "If you use SnappySonic, please cite it as below."
authors:
- family-names: "Thompson"
  given-names: "Stephen"
  orcid: "https://orcid.org/0000-0001-7286-1326"
- family-names: "Dowrick"
  given-names: "Thomas"
  orcid: "https://orcid.org/0000-0002-2712-4447"
- family-names: "Ahmad"
  given-names: "Mian"
  orcid: "https://orcid.org/0000-0002-4706-4146"
- family-names: "Clarkson"
  given-names: "Matthew"
  orcid: "https://orcid.org/0000-0002-5565-1252"
title: "SnappySonic"
doi: 10.5281/zenodo.3491054
url: "https://github.com/SciKit-Surgery/snappysonic"
preferred-citation:
  type: article
  authors:
  - family-names: "Thompson"
    given-names: "Stephen"
    orcid: "https://orcid.org/0000-0001-7286-1326"
  - family-names: "Dowrick"
    given-names: "Thomas"
    orcid: "https://orcid.org/0000-0002-2712-4447"
  - family-names: "Xiao"
    given-names: "Guofang"
  - family-names: "Ramalhinho"
    given-names: "Jo{\~a}o"
  - family-names: "Robu"
    given-names: "Maria"
  - family-names: "Ahmad"
    given-names: "Mian"
    orcid: "https://orcid.org/0000-0002-4706-4146"
  - family-names: "Taylor"
    given-names: "Dan"
  - family-names: "Clarkson"
    given-names: "Matthew"
    orcid: "https://orcid.org/0000-0002-5565-1252"
  doi: 10.5334/jors.289
  journal: "Journal of Open Research Software"
  title: "SnappySonic: An Ultrasound Acquisition Replay Simulator"
  volume: 8
  issue: 1
  year: 2020

GitHub Events

Total
  • Watch event: 3
Last Year
  • Watch event: 3

Committers

Last synced: 8 months ago

All Time
  • Total Commits: 110
  • Total Committers: 3
  • Avg Commits per committer: 36.667
  • Development Distribution Score (DDS): 0.018
Past Year
  • Commits: 0
  • Committers: 0
  • Avg Commits per committer: 0.0
  • Development Distribution Score (DDS): 0.0
Top Committers
Name Email Commits
Stephen Thompson s****n@u****k 108
Mian Ahmad m****d@u****k 1
Henry Krumb m****l@h****e 1
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 6 months ago

All Time
  • Total issues: 19
  • Total pull requests: 9
  • Average time to close issues: about 2 months
  • Average time to close pull requests: 4 minutes
  • Total issue authors: 2
  • Total pull request authors: 2
  • Average comments per issue: 3.95
  • Average comments per pull request: 0.0
  • Merged pull requests: 9
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 0
  • Pull requests: 0
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Issue authors: 0
  • Pull request authors: 0
  • Average comments per issue: 0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • thompson318 (17)
  • henrykrumb (2)
Pull Request Authors
  • thompson318 (8)
  • henrykrumb (1)
Top Labels
Issue Labels
Pull Request Labels

Packages

  • Total packages: 1
  • Total downloads:
    • pypi 46 last-month
  • Total dependent packages: 0
  • Total dependent repositories: 1
  • Total versions: 7
  • Total maintainers: 2
pypi.org: snappysonic

snappysonic provides an application to simulate an ultrasound probe moving over a body torso, it is intended for public engagement events"

  • Versions: 7
  • Dependent Packages: 0
  • Dependent Repositories: 1
  • Downloads: 46 Last month
Rankings
Dependent packages count: 9.8%
Stargazers count: 17.1%
Average: 17.5%
Forks count: 19.2%
Downloads: 19.7%
Dependent repos count: 21.8%
Maintainers (2)
Last synced: 6 months ago

Dependencies

requirements-dev.txt pypi
  • coverage * development
  • coveralls * development
  • mock * development
  • parameterized * development
  • pyfakefs * development
  • pyinstaller * development
  • pylint * development
  • pytest * development
  • pyyaml * development
  • sphinx * development
  • sphinx_rtd_theme * development
  • tox * development
requirements.txt pypi
  • PySide2 *
  • numpy *
  • opencv-contrib-python *
  • scikit-surgeryarucotracker *
  • scikit-surgeryimage >=0.6.0
  • scikit-surgerynditracker *
  • scikit-surgeryutils *
setup.py pypi
  • PySide2 *
  • numpy *
  • opencv-contrib-python *
  • scikit-surgeryarucotracker *
  • scikit-surgeryimage >=0.6.0
  • scikit-surgerynditracker *
  • scikit-surgeryutils *