This project helps create high quality figures for medical images for use in presentations and/or manuscripts.
git clone https://github.com/CBICA/FigureGenerator.git
cd screenshot_maker
conda create -n venv_screenshot python=3.7 -y
conda activate venv_screenshot
pip install -e .
OR directly via Pip:
pip install FigureGenerator
python ./figure_generator -h
usage: FigureGenerator [-h] -images IMAGES [-masks MASKS] [-opacity OPACITY]
[-ylabels YLABELS] -output OUTPUT [-axisrow AXISROW]
[-boundtype BOUNDTYPE] [-fontsize FONTSIZE]
[-borderpc BORDERPC] [-v]
Constructing screenshots from medical images.
Contact: software@cbica.upenn.edu
This program is NOT FDA/CE approved and NOT intended for clinical use.
Copyright (c) 2021 University of Pennsylvania. All rights reserved.
optional arguments:
-h, --help show this help message and exit
-images IMAGES Input image files (comma-separated without any spaces in path and co-registered)
-masks MASKS Mask files (comma-separated without any spaces in path and co-registered with images); if multiple files are passed, first is ground truth
-opacity OPACITY Mask opacity between 0-1
-ylabels YLABELS The comma-separated ylabels that will be displayed on the subplots' y-axis
-output OUTPUT Output screenshot file
-axisrow AXISROW Put all axes views across each column and stack images and blends in rows, defaults to False
-boundtype BOUNDTYPE Construct bounding box around specified region; can be 'none, image or mask'
-fontsize FONTSIZE Font size for all text on the figure
-borderpc BORDERPC Percentage of size to use as border around bounding box (used only when mask and bounded are defined)
-v, --version Show program's version number and exit.
python ./figure_generator \
-images C:/input/subject_001_flair.nii.gz,C:/input/subject_001_t1ce.nii.gz,C:/input/subject_001_t1.nii.gz,C:/input/subject_001_t2.nii.gz \
-masks C:/input/subject_001_seg.nii.gz \
-axisrow False \
-output C:/input/fig.png
Gives the following output:
python ./figure_generator \
-images C:/input/subject_001_flair.nii.gz,C:/input/subject_001_t1ce.nii.gz,C:/input/subject_001_t1.nii.gz,C:/input/subject_001_t2.nii.gz \
-masks C:/input/subject_001_seg.nii.gz \
-axisrow True \
-output C:/input/fig.png
Gives the following output:
python ./figure_generator \
-images C:/input/subject_001_flair.nii.gz,C:/input/subject_001_t1ce.nii.gz,C:/input/subject_001_t1.nii.gz,C:/input/subject_001_t2.nii.gz \
-masks C:/input/subject_001_seg.nii.gz \
-axisrow True \
-boundtype image \
-output C:/input/fig.png
Gives the following output:
Note: This can be used with vertical orientation as well, by passing -axisrow False
to the command.
python ./figure_generator \
-images C:/input/subject_001_flair.nii.gz,C:/input/subject_001_t1ce.nii.gz,C:/input/subject_001_t1.nii.gz,C:/input/subject_001_t2.nii.gz \
-masks C:/input/subject_001_seg.nii.gz \
-axisrow True \
-boundtype mask \
-borderpc 0.001 \
-output C:/input/fig.png
Gives the following output:
Note: This can be used with vertical orientation as well, by passing -axisrow False
to the command.
Please post on GitHub Discussions or post an issue.