Skip to main content

Extract motion energy features from video using spatio-temporal Gabors

Project description

Zenodo Github Codecov Python

What is pymoten?

pymoten is a python package that provides a convenient way to extract motion energy features from video using a pyramid of spatio-temporal Gabor filters [1] [2]. The filters are created at multiple spatial and temporal frequencies, directions of motion, x-y positions, and sizes. Each filter quadrature-pair is convolved with the video and their activation energy is computed for each frame. These features provide a good basis to model brain responses to natural movies [3] [4].

Installation

Clone the repo from GitHub and do the usual python install

git clone https://github.com/gallantlab/pymoten.git
cd pymoten
sudo python setup.py install

Or with pip:

pip install pymoten

Getting started

Example using synthetic data

import moten
import numpy as np

# Generate synthetic data
nimages, vdim, hdim = (100, 90, 180)
noise_movie = np.random.randn(nimages, vdim, hdim)

# Create a pyramid of spatio-temporal gabor filters
pyramid = moten.get_default_pyramid(vhsize=(vdim, hdim), fps=24)

# Compute motion energy features
moten_features = pyramid.project_stimulus(noise_movie)

Simple example using a video file

import moten

# Stream and convert the RGB video into a sequence of luminance images
video_file = 'http://anwarnunez.github.io/downloads/avsnr150s24fps_tiny.mp4'
luminance_images = moten.io.video2luminance(video_file, nimages=100)

# Create a pyramid of spatio-temporal gabor filters
nimages, vdim, hdim = luminance_images.shape
pyramid = moten.get_default_pyramid(vhsize=(vdim, hdim), fps=24)

# Compute motion energy features
moten_features = pyramid.project_stimulus(luminance_images)

Cite as

Nunez-Elizalde AO, Deniz F, Dupré la Tour T, Visconti di Oleggio Castello M, and Gallant JL (2021). pymoten: scientific python package for computing motion energy features from video. Zenodo. https://doi.org/10.5281/zenodo.6349625

References


A MATLAB implementation can be found here.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pymoten-0.0.6.tar.gz (23.5 kB view details)

Uploaded Source

Built Distribution

pymoten-0.0.6-py3-none-any.whl (25.0 kB view details)

Uploaded Python 3

File details

Details for the file pymoten-0.0.6.tar.gz.

File metadata

  • Download URL: pymoten-0.0.6.tar.gz
  • Upload date:
  • Size: 23.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.10.12

File hashes

Hashes for pymoten-0.0.6.tar.gz
Algorithm Hash digest
SHA256 2bcd6335223d1be60216a86e5c50278c72b9a0ed3d56d1bd25b57e3eb0f16d44
MD5 726d946eee41307fd5570b678aad0ead
BLAKE2b-256 bf3366efc2ea1218cac8ee367b456e54dce9a8ce8cb1700dacaf131cc1023774

See more details on using hashes here.

File details

Details for the file pymoten-0.0.6-py3-none-any.whl.

File metadata

  • Download URL: pymoten-0.0.6-py3-none-any.whl
  • Upload date:
  • Size: 25.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.10.12

File hashes

Hashes for pymoten-0.0.6-py3-none-any.whl
Algorithm Hash digest
SHA256 0afd76a99b92672c5a04688d97b3f83a6c952208ee906963e0891776fd21d550
MD5 11f7cce15d0f966fa4beb7582ea796a4
BLAKE2b-256 1215193fc30acf063abcf00ed3b08a7d0c8cf23d5b06fd99611926aa52f80f99

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page