Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

swapped to free open source font for linux user. also size and weights were giving errors #19

Open
wants to merge 4 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 16 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,22 @@ Main function: *ParsingData*

See the full manual [here](https://github.com/Aswendt-Lab/AIDAqc/blob/main/docs/AIDAqc_v2_1.pdf).

For installation in a [apptainer](https://apptainer.org/) container for GNU/Linux:

```{bash}

# Download the repository
git clone https://github.com/Aswendt-Lab/AIDAqc.git
cd AIDAqc

# Create a new apptainer container
apptainer build aidaqc.sif apptainer.def

# Get into a bash shell in the container
apptainer run aidaqc.sif

```

<h3>The story behind this tool</h3>

It can be challenging to acquire MR images of consistent quality or to decide between good vs. bad quality data in large databases. Manual screening without quantitative criteria is strictly user-dependent and for large databases is neither practical nor in the spirit of good scientific practice. In contrast to clinical MRI, in animal MRI, there is no consensus on the standardization of quality control measures or categorization of good vs. bad quality images. As we were forced to screen hundreds of scans for a recent project, we decided to automate this process as part of our Atlas-based Processing Pipeline (AIDA).
Expand Down
47 changes: 47 additions & 0 deletions apptainer.def
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
BootStrap: docker
From: ubuntu:latest

%labels
APPLICATION_NAME AIDAqc in Apptainer
AUTHOR_NAME Joanes Grandjean
YEAR 2024
Version 20240808

%help
This container is based on ubuntu latest docker and contains AIDAqc. see https://github.com/Aswendt-Lab/AIDAqc

%environment
PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin
LANG=C.UTF-8 LC_ALL=C.UTF-8

%post

# Install nvim and python

export DEBIAN_FRONTEND=noninteractive
ln -fs /usr/share/zoneinfo/Europe/Amsterdam /etc/localtime
export LANG=C.UTF-8 LC_ALL=C.UTF-8

mkdir -p /opt
cd /opt
rm -rf AIDAqc

apt-get update -yy
apt-get install -yy --no-install-recommends git python3 python3-pip fonts-unifont
apt-get install --reinstall ttf-mscorefonts-installer

git clone https://github.com/Aswendt-Lab/AIDAqc.git
cd AIDAqc

python3 -m pip --no-cache-dir install --break-system-packages -r requirements.txt

chmod +x scripts/*.py
mv scripts/* /usr/local/bin/

# Cleanup
apt-get -qq clean
rm -rf /var/lib/apt/lists/*

%runscript

bash
6 changes: 3 additions & 3 deletions scripts/QC.py
Original file line number Diff line number Diff line change
Expand Up @@ -465,9 +465,9 @@ def QCPlot(Path):
hh = 1
rr = 1
# Set font properties
title_font = {'family': 'serif', 'fontname': 'Times New Roman', 'weight': 'bold', 'size': 10}
label_font = {'family': 'serif', 'fontname': 'Times New Roman', 'weight': 'normal', 'size': 8}
tick_font = {'family': 'serif', 'fontname': 'Times New Roman', 'weight': 'normal', 'size': 8}
title_font = {'family': 'serif', 'fontname': 'DejaVu Sans'}
label_font = {'family': 'serif', 'fontname': 'DejaVu Sans'}
tick_font = {'family': 'serif', 'fontname': 'DejaVu Sans'}

for nn, N in enumerate(Names):
COL = list(Abook[nn].columns)
Expand Down