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.8.tar.gz (23.5 kB view details)

Uploaded Source

Built Distribution

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

Uploaded Python 3

File details

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

File metadata

  • Download URL: pymoten-0.0.8.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.8.tar.gz
Algorithm Hash digest
SHA256 a2139171b1e3827ae24863e891fb6b88d7058d9226c1d4d53d81ec0d39a9cb14
MD5 0b058c78ae754e54dcb25ae50e36a708
BLAKE2b-256 c8a32e36a68d4de387426b4fa76b7b117179b74b610277ae3e75b4f77ff995d9

See more details on using hashes here.

File details

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

File metadata

  • Download URL: pymoten-0.0.8-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.8-py3-none-any.whl
Algorithm Hash digest
SHA256 a251eadca1dd7f7da28d1fd60c9dcc48cdb2175cc4d7a7fd5db629bb2d474bfb
MD5 cd002cd2bf205532a15ef557f7fbd2f2
BLAKE2b-256 a13051d627df5f1bd0b202461d9c01672a006a0841ec6ca01bb56dd52b6e6ee7

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