All Projects → pulse2percept → pulse2percept

pulse2percept / pulse2percept

Licence: BSD-3-Clause License
A Python-based simulation framework for bionic vision

Programming Languages

python
139335 projects - #7 most used programming language
cython
566 projects
Makefile
30231 projects

Projects that are alternatives of or similar to pulse2percept

LogGabor
A python implementation for a LogGabor filtering and pyramid representation
Stars: ✭ 32 (-45.76%)
Mutual labels:  neuroscience, vision
dmipy
The open source toolbox for reproducible diffusion MRI-based microstructure estimation
Stars: ✭ 58 (-1.69%)
Mutual labels:  neuroscience
PSCognitiveService
Powershell module to access Microsoft Azure Machine learning RESTful API's or Microsoft cognitive services
Stars: ✭ 46 (-22.03%)
Mutual labels:  vision
sim2real-docs
Synthesize image datasets of documents in natural scenes with Python+Blender3D
Stars: ✭ 39 (-33.9%)
Mutual labels:  vision
cortex-v2-example
Example with Cortex V2 API
Stars: ✭ 121 (+105.08%)
Mutual labels:  neuroscience
VisionLab
📺 A framework with common source code for demo projects that use Vision Framework
Stars: ✭ 32 (-45.76%)
Mutual labels:  vision
JATOS
Just Another Tool for Online Studies
Stars: ✭ 60 (+1.69%)
Mutual labels:  neuroscience
spectral connectivity
Frequency domain estimation and functional and directed connectivity analysis tools for electrophysiological data
Stars: ✭ 57 (-3.39%)
Mutual labels:  neuroscience
ML-Research-Made-Easy
Link of ML papers to their blogs/ supplementary material
Stars: ✭ 25 (-57.63%)
Mutual labels:  vision
Spatial-Transformer-Networks-with-Keras
This repository provides a Colab Notebook that shows how to use Spatial Transformer Networks inside CNNs in Keras.
Stars: ✭ 23 (-61.02%)
Mutual labels:  vision
visualqc
VisualQC : assistive tool to ease the quality control workflow of neuroimaging data.
Stars: ✭ 56 (-5.08%)
Mutual labels:  neuroscience
syncopy
Systems Neuroscience Computing in Python: user-friendly analysis of large-scale electrophysiology data
Stars: ✭ 19 (-67.8%)
Mutual labels:  neuroscience
imaging tools
A table containing imaging analysis tools for biology, with a focus on calcium imaging.
Stars: ✭ 15 (-74.58%)
Mutual labels:  neuroscience
sp segmenter
Superpixel-based semantic segmentation, with object pose estimation and tracking. Provided as a ROS package.
Stars: ✭ 33 (-44.07%)
Mutual labels:  vision
Recogcis
Face detection & recognition AR app using the mlmodel to recognize company employees.
Stars: ✭ 28 (-52.54%)
Mutual labels:  vision
TorchGA
Train PyTorch Models using the Genetic Algorithm with PyGAD
Stars: ✭ 47 (-20.34%)
Mutual labels:  neuroscience
brainreg-segment
Segmentation of 3D shapes in a common anatomical space
Stars: ✭ 13 (-77.97%)
Mutual labels:  neuroscience
WheatNNLeek
Spiking neural network system
Stars: ✭ 26 (-55.93%)
Mutual labels:  neuroscience
POMDP
Implementing a RL algorithm based upon a partially observable Markov decision process.
Stars: ✭ 31 (-47.46%)
Mutual labels:  neuroscience
sparse-scene-flow
This repo contains C++ code for sparse scene flow method.
Stars: ✭ 23 (-61.02%)
Mutual labels:  vision
DOI BSD 3-clause PyPI build GitHub forks GitHub stars

pulse2percept: A Python-based simulation framework for bionic vision

Retinal degenerative diseases such as retinitis pigmentosa and macular degeneration result in profound visual impairment in more than 10 million people worldwide, and a variety of sight restoration technologies are being developed to target these diseases.

Retinal prostheses, now implanted in over 500 patients worldwide, electrically stimulate surviving cells in order to evoke neuronal responses that are interpreted by the brain as visual percepts ('phosphenes'). However, interactions between the device electronics and the retinal neurophysiology result in perceptual distortions that may severely limit the quality of the generated visual experience:

Input stimulus and predicted percept

(left: input stimulus, right: predicted percept)

Built on the NumPy and SciPy stacks, pulse2percept provides an open-source implementation of a number of computational models for state-of-the-art visual prostheses (also known as the 'bionic eye'), such as ArgusII, BVA24, and PRIMA, to provide insight into the visual experience provided by these devices.

Simulations such as the above are likely to be critical for providing realistic estimates of prosthetic vision, thus providing regulatory bodies with guidance into what sort of visual tests are appropriate for evaluating prosthetic performance, and improving current and future technology.

If you use pulse2percept in a scholarly publication, please cite as:

M Beyeler, GM Boynton, I Fine, A Rokem (2017). pulse2percept: A Python-based simulation framework for bionic vision. Proceedings of the 16th Python in Science Conference (SciPy), p.81-88, doi:10.25080/shinma-7f4c6e7-00c.

Installation

Once you have Python 3 and pip, the stable release of pulse2percept can be installed with pip:

pip install pulse2percept

The bleeding-edge version of pulse2percept can be installed via:

pip install git+https://github.com/pulse2percept/pulse2percept

When installing the bleeding-edge version on Windows, note that you will have to install your own C compiler first. Detailed instructions for different platforms can be found in our Installation Guide.

Dependencies

pulse2percept 0.7 was the last version to support Python <= 3.6. pulse2percept 0.8+ requires Python 3.7+.

pulse2percept requires:

  1. Python (>= 3.7)
  2. Cython (>= 0.28)
  3. NumPy (>= 1.9)
  4. SciPy (>= 1.0.1)
  5. ScikitImage (>=0.14)
  6. Matplotlib (>= 3.0.2)
  7. ImageIO FFMPEG (>=0.4)
  8. JobLib (>= 0.11)

Optional packages:

  1. Pandas for loading datasets in the datasets module.
  2. Scikit Learn for machine learning functionality in the model_selection module.
  3. Dask for parallel processing (a joblib alternative). Use conda to install.
  4. Pytest to run the test suite.
  5. OpenMP for parallel processing support.

All required packages are listed in requirements.txt in the root directory of the git repository, and can be installed with the following command:

git clone https://github.com/pulse2percept/pulse2percept.git
cd pulse2percept
pip install -r requirements.txt

All packages required for development (including all optional packages) are listed in requirements-dev.txt and can be installed via:

pip install -r requirements-dev.txt

Where to go from here

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].