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

Ge dev #63

Merged
merged 63 commits into from
Dec 16, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
63 commits
Select commit Hold shift + click to select a range
32dd32a
Update README.md
AlexanderGetka-cbica Dec 9, 2024
6988e89
Update README.md
AlexanderGetka-cbica Dec 10, 2024
5b75afd
Merge pull request #49 from CBICA/ag-dev
AlexanderGetka-cbica Dec 11, 2024
99cbdbf
Merge pull request #50 from CBICA/ag-dev
AlexanderGetka-cbica Dec 11, 2024
07e64d7
Use torch==2.2.1 instead of 2.3.1
spirosmaggioros Dec 11, 2024
8ab505e
Edit doc
gurayerus Dec 12, 2024
92ebeca
Edit README
gurayerus Dec 12, 2024
0c8125f
Update README.md
AlexanderGetka-cbica Dec 12, 2024
fb795dc
Edit doc
gurayerus Dec 12, 2024
a208dab
Merge pull request #52 from CBICA/main
gurayerus Dec 12, 2024
9b0c846
Merge pull request #53 from CBICA/ge-dev
gurayerus Dec 12, 2024
a771ac3
Merge pull request #54 from CBICA/main
gurayerus Dec 12, 2024
5e2fa93
Add flowchart
gurayerus Dec 12, 2024
d9d3f73
Add flowchart
gurayerus Dec 12, 2024
031d1ca
Merge pull request #55 from CBICA/ge-dev
gurayerus Dec 12, 2024
f8dc62a
Edit documentation
gurayerus Dec 12, 2024
8632514
Edit docs
gurayerus Dec 13, 2024
6db555d
Edit docs
gurayerus Dec 13, 2024
bb0596a
Edit docs
gurayerus Dec 13, 2024
2098f3a
Edit docs
gurayerus Dec 13, 2024
f634f81
Edit docs
gurayerus Dec 13, 2024
18752f5
Edit docs
gurayerus Dec 13, 2024
e909408
Edit docs
gurayerus Dec 13, 2024
f0fd722
Update README.md
AlexanderGetka-cbica Dec 13, 2024
de285c4
Update README.rst
AlexanderGetka-cbica Dec 13, 2024
d91a11d
Merge pull request #58 from CBICA/ge-dev
AlexanderGetka-cbica Dec 13, 2024
8adfcae
Added manual entry of demog data in ml scores
gurayerus Dec 13, 2024
76907b8
Merge branch 'ge-dev' of https://github.com/CBICA/NiChart_Project int…
gurayerus Dec 13, 2024
b865297
Update README.md
gurayerus Dec 13, 2024
a8d9a1a
Update README.rst
gurayerus Dec 13, 2024
c4136c0
Update README.md
gurayerus Dec 13, 2024
ff5fe1c
Update README.rst
gurayerus Dec 13, 2024
b49f4eb
Update README.rst
gurayerus Dec 13, 2024
6e508d7
Update README.rst
gurayerus Dec 13, 2024
b74279e
Edit docs
gurayerus Dec 13, 2024
b698c7c
Merge branch 'ge-dev' into main
gurayerus Dec 13, 2024
0f7b09c
Merge pull request #59 from CBICA/main
gurayerus Dec 13, 2024
5a249cd
Update README.rst
gurayerus Dec 13, 2024
60c5bd0
Edit docs
gurayerus Dec 13, 2024
d93cb07
Edit docs
gurayerus Dec 13, 2024
a1ca9b9
Edit docs
gurayerus Dec 13, 2024
f064ece
Edit docs
gurayerus Dec 13, 2024
b7edc4a
Edit docs
gurayerus Dec 13, 2024
751dfae
Edit docs
gurayerus Dec 13, 2024
fec6cbe
Merge branch 'main' into ge-dev
gurayerus Dec 13, 2024
f788e86
Merge pull request #60 from CBICA/ge-dev
gurayerus Dec 13, 2024
c76310e
New corrected docsfolder and fixes on some links
spirosmaggioros Dec 13, 2024
2a7d0ce
Edit docs
gurayerus Dec 13, 2024
d9bb3fc
Fixes on some more rst files
spirosmaggioros Dec 13, 2024
490e21e
Edit docs
gurayerus Dec 13, 2024
8cb30c7
Edit docs
gurayerus Dec 13, 2024
6f16c65
Edit docs
gurayerus Dec 13, 2024
506a5d9
Merge branch 'main' of https://github.com/CBICA/NiChart_Project
gurayerus Dec 13, 2024
5dad332
Delete tmp file
gurayerus Dec 13, 2024
35a800a
Merge pull request #61 from CBICA/main
gurayerus Dec 15, 2024
600ce0e
Add renaming of roi indices
Dec 15, 2024
fbd622a
Disable centiles when Age is not selected in x axis
Dec 15, 2024
82991a8
Reset centile variables when xvar changes
Dec 15, 2024
672c55b
Edit dlwmls pipeline
Dec 16, 2024
d65fc70
Add demo folders for users to run examples on test data directly
gurayerus Dec 16, 2024
b2f095e
Add demo data in output folder
gurayerus Dec 16, 2024
d26194c
Edit dset selection
gurayerus Dec 16, 2024
25c6447
Make survey links more visible
gurayerus Dec 16, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
6 changes: 3 additions & 3 deletions .github/workflows/sphinx-docs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -29,16 +29,16 @@ jobs:
pip install sphinx sphinx_rtd_theme sphinx-tabs sphinx_toolbox
- name: Sphinx build
run: |
sphinx-apidoc -o docs2 src/
cd docs2/
sphinx-apidoc -o docs src/
cd docs/
make html
cd ..
- name: Upload pages artifact
uses: actions/upload-pages-artifact@v3

with:
path: docs2/_build/html
path: docs/_build/html
retention-days: 90

deploy-docs:
Expand Down
51 changes: 0 additions & 51 deletions README.md

This file was deleted.

64 changes: 64 additions & 0 deletions README.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
NiChart: Neuro-imaging Chart
============================

.. image:: https://img.shields.io/badge/Documentation-Read_the_Docs-blue
:target: https://cbica.github.io/NiChart_Project

.. image:: https://img.shields.io/badge/Website-NeuroImagingChart-orange
:target: https://neuroimagingchart.com

.. image:: https://img.shields.io/badge/GitHub-CBICA/NiChart_Project-green
:target: https://github.com/CBICA/NiChart_Project

About
-----

*NiChart* is a novel AI-powered neuroimaging platform with tools for computing a dimensional chart from multi-modal MRI data. *NiChart* provides end-to-end pipelines from raw DICOM data to advanced
AI biomarkers, allowing to map a subject’s MRI images into personalized measurements, along with
reference distributions for comparison to a broader population.

.. image:: https://raw.githubusercontent.com/CBICA/NiChart_Project/refs/heads/ge-dev/resources/images/NiChart_Flowchart_v2.svg
:alt: NiChart Flowchart

The Basics
----------

The development of nichart is guided by several core principles:

1. Enabling **near real-time image processing and analysis** through advanced methods.

2. Facilitating the **continuous integration** of **cutting-edge methods** for extracting novel **AI biomarkers** from neuroimaging data.

3. Ensuring robust and reliable results through **extensive data training and validation** on large and diverse training datasets.

4. Providing user-friendly tools for **visualization and reporting**.

5. Developing a deployment strategy that enables **easy access** for users with varying technical expertise and hardware resources.

Running NiChart
---------------

We provide both a locally installable **desktop application** and a **cloud-based application**.

For the desktop application please see `NiChart GitHub <https://github.com/CBICA/NiChart_Project>`_.

`NiChart cloud application <https://neuroimagingchart.com/portal>`_, hosted via Amazon Web Services (AWS), deploys scalable infrastructure which hosts the *NiChart* tools as a standard web application accessible via the user’s web browser.

The cloud and desktop applications are unified at the code level through the use of the Python library `Streamlit <https://streamlit.io>`_. Consequently, the user experience is nearly identical between the cloud and desktop applications.

Quick Links
-----------

.. image:: https://img.shields.io/badge/Research-AIBIL-blue
:target: https://aibil.med.upenn.edu/research
:alt: AIBIL Research

.. image:: https://img.shields.io/badge/YouTube-%23FF0000.svg?style=for-the-badge&logo=YouTube&logoColor=white
:target: https://www.youtube.com/@NiChart-UPenn
:alt: YouTube

.. image:: https://img.shields.io/twitter/url/https/twitter.com/NiChart_AIBIL.svg?style=social&label=Follow%20%40NiChart_AIBIL
:target: https://x.com/NiChart_AIBIL
:alt: Twitter

© 2024 CBICA. All Rights Reserved.
4 changes: 2 additions & 2 deletions docs/Makefile
100755 → 100644
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,8 @@
# from the environment for the first two.
SPHINXOPTS ?=
SPHINXBUILD ?= sphinx-build
SOURCEDIR = source
BUILDDIR = build
SOURCEDIR = .
BUILDDIR = _build

# Put it first so that "make" without argument is like "make help".
help:
Expand Down
64 changes: 64 additions & 0 deletions docs/README.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
NiChart: Neuro-imaging Chart
============================

.. image:: https://img.shields.io/badge/Documentation-Read_the_Docs-blue
:target: https://cbica.github.io/NiChart_Project

.. image:: https://img.shields.io/badge/Website-NeuroImagingChart-orange
:target: https://neuroimagingchart.com

.. image:: https://img.shields.io/badge/GitHub-CBICA/NiChart_Project-green
:target: https://github.com/CBICA/NiChart_Project

About
-----

*NiChart* is a novel AI-powered neuroimaging platform with tools for computing a dimensional chart from multi-modal MRI data. *NiChart* provides end-to-end pipelines from raw DICOM data to advanced
AI biomarkers, allowing to map a subject’s MRI images into personalized measurements, along with
reference distributions for comparison to a broader population.

.. image:: https://raw.githubusercontent.com/CBICA/NiChart_Project/refs/heads/ge-dev/resources/images/NiChart_Flowchart_v2.svg
:alt: NiChart Flowchart

The Basics
----------

The development of nichart is guided by several core principles:

1. Enabling **near real-time image processing and analysis** through advanced methods.

2. Facilitating the **continuous integration** of **cutting-edge methods** for extracting novel **AI biomarkers** from neuroimaging data.

3. Ensuring robust and reliable results through **extensive data training and validation** on large and diverse training datasets.

4. Providing user-friendly tools for **visualization and reporting**.

5. Developing a deployment strategy that enables **easy access** for users with varying technical expertise and hardware resources.

Running NiChart
---------------

We provide both a locally installable **desktop application** and a **cloud-based application**.

For the desktop application please see `NiChart GitHub <https://github.com/CBICA/NiChart_Project>`_.

`NiChart cloud application <https://neuroimagingchart.com/portal>`_, hosted via Amazon Web Services (AWS), deploys scalable infrastructure which hosts the *NiChart* tools as a standard web application accessible via the user’s web browser.

The cloud and desktop applications are unified at the code level through the use of the Python library `Streamlit <https://streamlit.io>`_. Consequently, the user experience is nearly identical between the cloud and desktop applications.

Quick Links
-----------

.. image:: https://img.shields.io/badge/Research-AIBIL-blue
:target: https://aibil.med.upenn.edu/research
:alt: AIBIL Research

.. image:: https://img.shields.io/badge/YouTube-%23FF0000.svg?style=for-the-badge&logo=YouTube&logoColor=white
:target: https://www.youtube.com/@NiChart-UPenn
:alt: YouTube

.. image:: https://img.shields.io/twitter/url/https/twitter.com/NiChart_AIBIL.svg?style=social&label=Follow%20%40NiChart_AIBIL
:target: https://x.com/NiChart_AIBIL
:alt: Twitter

© 2024 CBICA. All Rights Reserved.
5 changes: 5 additions & 0 deletions docs/api.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
Developers - API
===========================

Submodules
----------
84 changes: 84 additions & 0 deletions docs/components.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,84 @@
##########
Components
##########

NiChart is designed to integrate independent image processing and analysis pipelines. The following sections detail these pipelines.

*****************
Current Pipelines
*****************

These pipelines are currently active and accessible within the NiChart Project

====================================
1. sMRI Biomarkers of Disease and Aging
====================================

Neuroimaging pipeline for computing AI biomarkers of disease and aging from T1-weighted MRI scans. The pipeline applies the following steps for processign and analysis.

------------
Segmentation
------------

`DLMUSE <https://neuroimagingchart.com/components/#Image%20Processing>`_: Rapid and accurate **brain anatomy segmentation**

.. image:: https://github.com/CBICA/NiChart_Project/blob/031d1cafc5091eb514511ee25af189d5f0b5ac56/resources/images/dlicv%2Bdlmuse_segmask.png
:alt: DLMUSE

-------------
Harmonization
-------------

`COMBAT <https://neuroimagingchart.com/components/#Harmonization>`_: **Statistical data harmonization** of ROI volumes to `reference data <https://neuroimagingchart.com/components/#Reference%20Dataset>`_

.. image:: https://raw.githubusercontent.com/CBICA/NiChart_Project/refs/heads/ge-dev/resources/images/combat_agetrend.png
:alt: COMBAT

------------------------
Supervised ML Biomarkers
------------------------

`SPARE-AD and SPARE-Age indices <https://neuroimagingchart.com/components/##Machine%20Learning%20Models>`_: AI biomarkers of **Alzheimer's Disease and Aging** related brain atrophy patterns

.. image:: https://raw.githubusercontent.com/CBICA/NiChart_Project/refs/heads/ge-dev/resources/images/sparead%2Bage.png
:alt: SPARE-AD and SPARE-Age indices

`SPARE-CVR indices <https://alz-journals.onlinelibrary.wiley.com/doi/abs/10.1002/alz.067709>`_: AI biomarkers of brain atrophy patterns associated with **Cardio-Vascular Risk Factors**

.. image:: https://raw.githubusercontent.com/CBICA/NiChart_Project/refs/heads/ge-dev/resources/images/sparecvr.png
:alt: SPARE-CVR indices, Govindarajan, S.T., et. al., Nature Communications, 2024

-----------------------------
Semi-supervised ML Biomarkers
-----------------------------

- `SurrealGAN indices <https://www.nature.com/articles/d41586-024-02692-z>`_: Data-driven phenotyping of brain aging, **5 Brain Aging Subtypes**

.. image:: https://raw.githubusercontent.com/CBICA/NiChart_Project/refs/heads/ge-dev/resources/images/sgan1.jpg
:alt: SurrrealGAN indices

====================================
2. WM Lesion Segmentation
====================================

Neuroimaging pipeline for segmenting white matter lesions on FLAIR MRI scans.

`DLWMLS <https://neuroimagingchart.com/components/#Image%20Processing>`_: Rapid and accurate **white matter lesion segmentation**

.. image:: https://github.com/CBICA/NiChart_Project/blob/031d1cafc5091eb514511ee25af189d5f0b5ac56/resources/images/dlwmls.png
:target https://github.com/CBICA/NiChart_DLWMLS
:alt: DLWMLS

*****************
Under Development
*****************

These pipelines are planned for integration in future NiChart releases.

====================================
1. DTI Biomarkers of Disease and Aging
====================================

====================================
2. fMRI Biomarkers of Disease and Aging
====================================
File renamed without changes.
File renamed without changes.
2 changes: 1 addition & 1 deletion docs2/help.rst → docs/help.rst
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
Getting help
############

If you have a problem or would like to ask a question about the inner workings of **NiChart DLMUSE** you can directly
If you have a question about **NiChart Project** you can directly
message our maintaners via email.

.. note::
Expand Down
4 changes: 3 additions & 1 deletion docs2/index.rst → docs/index.rst
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
.. include:: ../README.rst
.. include:: README.rst

########
Contents
Expand All @@ -9,6 +9,8 @@ Contents

installation
usage
components
contributors
api
help
license
47 changes: 47 additions & 0 deletions docs/installation.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
############
Installation
############

Users can install **NiChart Project** with pip: ::

pip install NiChart_Project

Alternatively, the package can be installed from source: ::

git clone https://github.com/CBICA/NiChart_Project
cd NiChart_Project && python3 -m pip install -e .

We release our latest stable version on PyPI; accordingly, **we strongly recommend pip installation**.

.. warning::
PyTorch and NumPy have known compatibility issues across different platforms. To avoid potential conflicts, please follow the installation instructions below.

- After installing all other necessary packages, uninstall any existing Torch installations: ::

$ pip uninstall torch

- Reinstall PyTorch:

- **Linux:** PyTorch version 2.3.1
- **Windows:** PyTorch version 2.5.1

- Users can select the correct index URL for their CUDA version based on the `PyTorch getting started page <https://pytorch.org/get-started/locally>`_

**Example on a Linux x86 system:** ::

$ pip install torch==2.3.1 --index-url https://download.pytorch.org/whl/cu121

*************************
Managing your environment
*************************

We recommend installing NiChart Project within a dedicated environment. Users can create an environment using Mamba (please see `Mamba Installation Guide <https://mamba.readthedocs.io/en/latest/installation/mamba-installation.html>`_).

**Example on a Linux x86 system:** ::

$ wget https://github.com/conda-forge/miniforge/releases/latest/download/Mambaforge-Linux-x86_64.sh
bash Mambaforge-Linux-x86_64.sh
mamba create -c conda-forge -c bioconda -n NCP_env python=3.12
mamba activate NCP_env
git clone https://github.com/CBICA/NiChart_Project.git
pip install -r requirements.txt
5 changes: 5 additions & 0 deletions docs/license.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
#######
License
#######

NiChart application, web site, the content and the logo of NiChart are intellectual property of CBICA, UPENN. For details, please see `the licence <https://github.com/CBICA/NiChart_Project/blob/main/LICENSE>`_.
Loading
Loading