DOI BSD 3-clause PyPI build GitHub forks GitHub stars


pulse2percept 0.11.0.dev0 documentation

An estimated 43 million people worldwide are blind. For some causes of blindness, a visual neuroprosthesis (a retinal or cortical implant) is the only treatment option. What implant users see depends on the device, the stimulus, and the stimulated tissue, and is difficult to predict.

pulse2percept (p2p) is an open-source Python package for simulating these percepts. It provides spatiotemporal models of common retinal and cortical implants.

If you use p2p 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

To install the stable release of p2p, run:

pip install pulse2percept

To install the current development version directly from GitHub:

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

pip installs the dependencies and selects a release that supports your Python version (see Compatibility and Building from Source).

Compatibility

Python

3.14

3.13

3.12

3.11

3.10

3.9

3.8

3.7

p2p 0.11 Foundations

Yes

Yes

Yes

Yes

p2p 0.10 Encoders

Yes

Yes

Yes

Yes

p2p 0.9.1

Yes

Yes

Yes

Yes

p2p 0.9 Cortex

Yes

Yes

Yes

Yes

p2p 0.8 Retina

Yes

Yes

Yes

Yes

Prebuilt wheels are available for 64-bit Linux, macOS 11 and later (Apple silicon and Intel), and 64-bit Windows. On other platforms, pip may build pulse2percept from source, which requires a C compiler. NumPy, Cython, and other build dependencies are installed automatically.

Our GitHub Action Runners test the current release on Linux, macOS, and Windows for every supported Python version listed above.

Warning

v0.11 is an API-breaking release. See the release notes for details.

Getting Started

New to pulse2percept? Start with the Quickstart Guide for some short end-to-end examples.

From there, the core concepts are easiest to read in this order: implants, stimulation, models and percepts, visual input, coordinates, units, and datasets.

The model reproductions show how published models and experiments are implemented in pulse2percept.

For common questions, see the FAQs. If something is broken or missing, please open an issue on the Issue Tracker.