Open Science

Snapshot of a Motion Cloud

To enable the dissemination of the knowledge that is produced in our lab, we share all source code with open source licences. This includes code to reproduce results obtained in papers (e.g. (Perrinet, Adams and Friston, 2015), (Perrinet and Bednar, 2015), (Khoei et, 2017), (Perrinet, 2019), (Pasturel et al, 2020), (Dauce et al, 2020)) or courses and slides (e.g. 2019-04-03: vision and modelization, 2019-04-18_JNLF, …) and also the development of the following libraries on GitHub.

Follow @laurentperrinet

HD natural images database for sparse coding

A dataset of natural images, acquired with a Canon EOS6D and Canon EOS650. It has been curated to facilitate research, namely in sparse coding at the moment, but can be used for future endeavors. Maintainer: Hugo Ladret.

Bayesian Change Point

A python implementation of Adams & MacKay 2007 “Bayesian Online Changepoint Detection” for binary inputs in Python.

ANEMO: Quantitative tools for the ANalysis of Eye MOvements

This implementation proposes a set of robust fitting methods for the extraction of eye movements parameters.


Work-in-progress : an eye tracker based on webcams.

Biologically inspired computer vision ( Python)

SLIP: a Simple Library for Image Processing

This library collects different Image Processing tools for use with the LogGabor and SparseEdges libraries.

LogGabor: a Simple Library for Image Processing

This library defines the set of LogGabor kernels. These are generic edge-like filters at different scales, phases and orientations. The library develops a simple method to construct a simple multi-scale linear transform.

SparseEdges: sparse coding of natural images

Our goal here is to build practical algorithms of sparse coding for computer vision.

This class exploits the SLIP and LogGabor libraries to provide with a sparse representation of edges in images.

Sparse Hebbian Learning : unsupervised learning of natural images

This is a collection of python scripts to test learning strategies to efficiently code natural image patches. This is here restricted to the framework of the SparseNet algorithm from Bruno Olshausen (


MotionClouds are random dynamic stimuli optimized to study motion perception.


PyNN is a simulator-independent language for building neuronal network models using Python.

Laurent U Perrinet
Laurent U Perrinet
Researcher in Computational Neuroscience

My research interests include Machine Learning and computational neuroscience applied to Vision.