A Python library for population receptive field (pRF) analysis
Project description
GEM-pRF
Welcome to GEM-pRF, a standalone, GPU-accelerated tool for population receptive field (pRF) mapping, built for large-scale fMRI analysis.
For theory and full method details, see our paper:
👉 Mittal et al. (2025): GEM-pRF: GPU-Empowered Mapping of Population Receptive Fields for Large-Scale fMRI Analysis https://doi.org/10.1016/j.media.2025.103891
Documentation
-
Documentation and examples are available at: https://gemprf.github.io/
-
For a deeper look into the mathematical and computational foundations, the paper above is the best reference.
Installation
GEM-pRF relies on an NVIDIA GPU and CUDA. Make sure your system has:
- A compatible NVIDIA GPU
- A matching CUDA toolkit
- A matching NVCC compiler
1. Install GEM-pRF
pip install gemprf
Latest versions: https://pypi.org/project/gemprf/
2. Install CuPy (required)
GEM-pRF depends on CuPy, but CuPy must match your CUDA version — so it is not installed automatically.
Install the correct CuPy wheel for your system:
- https://docs.cupy.dev/en/stable/install.html#installing-cupy
- or via pip, for example:
pip install cupy-cuda12x
[!Caution] Install the CuPy variant that matches your CUDA version.
You must install CuPy before running GEM-pRF.
Running GEM-pRF
After installing gemprf and a compatible CuPy build, you can run GEM-pRF directly from Python.
Example
import gemprf as gp
gp.run("path/to/your_config.xml")
Configuration files
GEM-pRF uses XML configuration files to define analysis settings. See a sample config here:
https://github.com/siddmittal/GEMpRF_Demo/blob/main/sample_configs/sample_config.xml
Quick workflow
-
Install GEM-pRF →
pip install gemprf -
Install the correct CuPy for your CUDA environment
-
Prepare your XML config file
-
Run:
import gemprf as gp gp.run("config.xml")
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file gemprf-0.1.9.tar.gz.
File metadata
- Download URL: gemprf-0.1.9.tar.gz
- Upload date:
- Size: 103.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
bbbbfdc81769e346580460e565d839468dee6183905907e32d0aac360e37ee1f
|
|
| MD5 |
cf43ef7eb910d6dbbddfe2226101cd69
|
|
| BLAKE2b-256 |
6394ff1336de270027a0f5dba2af901de8baa70f06bf1901d1026bc677ed3108
|
File details
Details for the file gemprf-0.1.9-py3-none-any.whl.
File metadata
- Download URL: gemprf-0.1.9-py3-none-any.whl
- Upload date:
- Size: 124.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5ae0167d4a4a4862ef4a1f3cc0292fcd617614fe8b62d239d8f9675c22b76564
|
|
| MD5 |
7b91aff528eba9e6404ef2278b019e5a
|
|
| BLAKE2b-256 |
bbb52a950194b7cf496b6f7d3bac155fee5ab7d67b67494ffc26165006867110
|