Skip to content

Tomaubier/CoperniFUS

Repository files navigation

CoperniFUS: A flexible Python-based GUI for stereotaxic Focused UltraSound (FUS) experiment planning

Tests status

Documentation

Key features

BrainGlobe + Structure highlighting

Supports a large range of Brain Atlases and associated structures thanks to BrainGlobe Atlas API. Atlas viz demo

Stereotaxic frame module - Armature inheritance

Arbitrary stereotaxic frames can be easily simulated using a flexible dictionary-based editor. Armature config editor Stereotaxic frame elements (referred as armatures) can be associated in a hierarchical tree structure allowing to perform operations such as mesh boolean operation or acoustic simulations in any spatial reference frame. Armature inheritance demo

Anatomical calibration module

Atlases scale and orientation can be simply matched to experimental conditions using anatomical landmarks such as Lambda and Bregma for rodents. Atlas viz demo

Trimesh boolean operations

Integration with the Python library trimesh allow for the manipulation of meshes. This feature greatly simplifies the execution of acoustic simulations in the presence of skulls. Trimesh integration demo

k-Wave acoustic simulation

Support axisymmetric simulations in homogeneous domains and 3D simulations in complex mediums. k-Wave integration demo

Getting started

Tested on macOS 15, Ubuntu 24.04.2 LTS, Linux Mint 21.1, Windows 10 & 11 using Python 3.12.

Installation

For detailed instructions and troubleshooting steps checkout the documentation here.

  1. Make sure Blender 4.1 is installed on your system. It will be used by trimesh to perform boolean operations.

    1a. For Linux users: Make sure that the path to the Blender is defined in the system PATH. You can add it by running echo 'export PATH="/path/to/blender_executable_parent_dir:$PATH"'>>~/.bashrc

  2. Optional but highly recommended: setup a dedicated Python 3.12 environment (I recommended using miniconda)

    • Using conda: conda create -n coperniFUS_env python=3.12
    • Activate the newly created environment using conda activate coperniFUS_env
  3. Install coperniFUS using pip (if you are using windows, you might need to install Git)

    • pip install git+https://github.com/Tomaubier/CoperniFUS.git

    3a. For Linux users: Install libxcb-cursor-dev to satisfy PyQt6 requirements sudo apt-get install -y libxcb-cursor-dev see <https://stackoverflow.com/questions/77725761/from-6-5-0-xcb-cursor0-or-libxcb-cursor0-is-needed-to-load-the-qt-xcb-platform>_ for additional details.

  4. Launch coperniFUS by running coperniFUS in a terminal. Checkout this page for detailed usage instructions.

Contributing to the project

With the aim of making CoperniFUS suitable for a wide range of applications, your feedback and contributions are always welcome! Please refer to the Contribution Guidelines if you wish to do so.

Related projects

About

A flexible Python-based GUI for stereotaxic experiment planning.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published