Skip to main content

MaRCoS Graphical Environment (MaRGE)

Project description

MaRGE (MaRCoS Graphical Environment)

🚀 Version 1.0.0 coming soon — stay tuned!

MaRGE is a Python-based graphical environment for interacting with the MaRCoS MRI research system. It provides a user-friendly GUI for running MRI sequences, configuring parameters, and managing experiments without needing to work directly with low-level control code.

MaRGE is designed for MRI researchers, developers, and students working with the MaRCoS platform.


Index

  1. Preview
  2. Features
  3. General requirements
  4. Installation with pip
  5. Installation from source (For developers)
  6. Full Installation (MaRGE + MaRCoS)
  7. Documentation
  8. Additional notes

1. Preview

MaRGE GUI


2. Features

🧲 Graphical interface for MaRCoS MRI experiments

⚙️ Sequence configuration and execution

🧪 Research-oriented workflow

🧩 Extensible sequence architecture

🐍 Fully Python-based


3. General requirements

Before installing MaRGE, make sure your system meets the following minimum requirements. The software is primarily tested and supported on Ubuntu, but other platforms may work with some limitations.

  1. Ubuntu 22.04.5 LTS with Python 3.10
  2. Windows 10 with Python 3.13 and Git Bash
  3. Windows 11 with Python 3.13 and Git Bash
  4. Internet connection

Without a configured MaRCoS + Red Pitaya setup, MaRGE can still be launched, but only Trial Mode will be available (no hardware acquisition).


4. Installation with pip

Install MaRGE with pip if you only need to run the GUI and do not plan to modify the source code or add custom sequences.

Note: Tyger capabilities are not supported from pip installation.
  1. Go to your project folder.Create and activate a virtual environment:
  • Ubuntu
    python3 -m venv venv
    source venv/bin/activate
    
  • Windows
    python -m venv venv
    source venv/Scripts/activate
    
  1. Install marge-mri

    pip install marge-mri==1.0.0b1
    
  2. Launch the GUI from terminal:

      marge-mri
    

5. Installation from source (Developer mode)

Use this method if you want to modify the codebase or include your own sequences.

  1. Go to the folder where you want to create the project and clone the repo

    git clone https://github.com/josalggui/MaRGE.git
    
  2. Go into the created MaRGE folder. Create and activate a virtual environment. Then, add the current folder (MaRGE) to Python's module search path:

  • Ubuntu
    cd MaRGE
    python3 -m venv venv
    source venv/bin/activate
    export PYTHONPATH=$(pwd)
    
  • Windows
    cd MaRGE
    python -m venv venv
    source venv/Scripts/activate
    export PYTHONPATH=$(pwd)
    
  1. Install requirements
    pip install -r requirements.txt
    
  2. Go into MaRGE/marge folder and run the main.py.
  • Ubuntu
    cd marge
    python3 main.py
    
  • Windows
    cd marge
    python main.py
    
  1. Configure your session and hardware following this link.

Note 1

When you execute main.py additional folders are created to save results, configurations, or calibrations. These folders are created in the directory where you run main.py. It is highly recommended to run main.py from MaRGE/marge folder.

Note 2

The commands indicated for Windows work fine for Git Bash. If you use PowerShell, the commands may be different.

Note 3

On Ubuntu, some Qt-based applications may fail with an error similar to:

qt.qpa.plugin: Could not load the Qt platform plugin "xcb" in "" even though it was found.

If this happens, install the required system libraries:

sudo apt update
sudo apt install -y \
  libxcb-cursor0 \
  libxcb-xinerama0 \
  libxcb-icccm4 \
  libxcb-image0 \
  libxcb-keysyms1 \
  libxcb-render-util0 \
  libxkbcommon-x11-0 \
  libxcb-randr0 \
  libxcb-shape0 \
  libxcb-xfixes0 \
  libgl1 \
  libegl1

After installing these packages, run the application again.


6. Full Installation (MaRGE + MaRCoS Setup)

For a complete installation including MaRCoS configuration, hardware setup, and developer options, please follow the detailed step-by-step guide in the Wiki:

👉 Full Installation Guide


7. Documentation

📖 Wiki: https://github.com/josalggui/MaRGE/wiki (under development)

📚 Documentation site: https://josalggui.github.io/MaRGE/ (under development)

📦 PyPI package: https://pypi.org/project/marge-mri/

8. Additional notes

1. cupy-cuda12x module related error

During the installation of the requirements, the following error may appear:

ERROR: No matching distribution found for cupy-cuda12x

This usually means your Python environment is not compatible with the prebuilt CuPy CUDA 12 wheels. It is not typically caused by a missing CUDA Toolkit installation.

Common causes and fixes:

  • Unsupported Python version — CuPy wheels are only published for specific Python versions. Check your version:

    python --version
    

If you are using Python 3.14 (or a newer unsupported version), install Python 3.13.0 and recreate your virtual environment.

2. CuPy / CUDA dependency and Tyger capability

CuPy is used in the postprocessing toolbox to accelerate the Algebraic Reconstruction Technique (ART) with GPU computation. The code attempts to import CuPy at runtime; if the import fails, ART automatically falls back to a CPU implementation.

In the current version, with the introduction of the Tyger capability, the ART-based postprocessing workflow is generally no longer needed. As a result:

  • CuPy is effectively optional
  • CUDA Toolkit is not required for normal Tyger-based workflows
  • Failing to install cupy-cuda12x will not break the pipeline
  • The code will continue to run using CPU paths (or Tyger paths) instead

You may safely skip CuPy/CUDA installation unless you explicitly plan to use the legacy ART postprocessing toolbox.

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

marge_mri-1.0.0rc1.tar.gz (8.2 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

marge_mri-1.0.0rc1-py3-none-any.whl (8.5 MB view details)

Uploaded Python 3

File details

Details for the file marge_mri-1.0.0rc1.tar.gz.

File metadata

  • Download URL: marge_mri-1.0.0rc1.tar.gz
  • Upload date:
  • Size: 8.2 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.12

File hashes

Hashes for marge_mri-1.0.0rc1.tar.gz
Algorithm Hash digest
SHA256 6e22c7894ab471a5be6ec23c384b6cec25da45981da2b4d42ff864e2269528b7
MD5 ae0eb43a09f3dc3a644f1ab205d298fd
BLAKE2b-256 396579e0d0098f28289c665becebc5925bc438266033ef6ffba92cf0b0a8becb

See more details on using hashes here.

File details

Details for the file marge_mri-1.0.0rc1-py3-none-any.whl.

File metadata

  • Download URL: marge_mri-1.0.0rc1-py3-none-any.whl
  • Upload date:
  • Size: 8.5 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.12

File hashes

Hashes for marge_mri-1.0.0rc1-py3-none-any.whl
Algorithm Hash digest
SHA256 10021f5d6ed0799f0b6faa12626f9b9b360a6ab6b51efaf64296e1094aae3f7f
MD5 2ddc3b46e4405299311c266351166530
BLAKE2b-256 6eb4164bb5a4e49f72df3e5349b0d764f8812a6bc0601cabe1bb59a821e37d0f

See more details on using hashes here.

Supported by

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