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.0rc3.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.0rc3-py3-none-any.whl (8.5 MB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for marge_mri-1.0.0rc3.tar.gz
Algorithm Hash digest
SHA256 19d91b1cf5c790d8c14e5063c49c8a4da45c08f81c36f925568a8b9fbc2ba66f
MD5 d94657205f604bae92a2ba3515fb12d6
BLAKE2b-256 2d88206d2a8a1462cab1ac4b944c2ea2826a91cef554479706d44905b2fd1c4e

See more details on using hashes here.

File details

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

File metadata

  • Download URL: marge_mri-1.0.0rc3-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.14.4

File hashes

Hashes for marge_mri-1.0.0rc3-py3-none-any.whl
Algorithm Hash digest
SHA256 412ebb340eb4cad6fe94ba3faa07f9b03147e0ace3ec1d8cfd196cccf19c2b5f
MD5 641b5910c10e0efd82ccedfd21508bbd
BLAKE2b-256 f8ba3fef3199d0c78e4182e00b61e8be57dc74c20f1abad2b7217606cad19287

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