Skip to content

Commit de1fff6

Browse files
committed
interim code and docs restructure
1 parent d732288 commit de1fff6

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

55 files changed

+464
-757
lines changed

assets/example_WM_mask.png

399 KB
Loading

assets/example_brain_mask.png

346 KB
Loading

assets/example_carpet_plot.png

373 KB
Loading

assets/example_qc_metrics.png

214 KB
Loading

assets/example_std.png

73.3 KB
Loading

assets/example_tsnr.png

149 KB
Loading
10.8 KB
Binary file not shown.

docs/_build/doctrees/index.doctree

-5.46 KB
Binary file not shown.

docs/_build/html/.buildinfo

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
# Sphinx build info version 1
22
# This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done.
3-
config: 1d24c5085b479786d0d6d8522d56caea
3+
config: 87b99ee67b659e8076669993d66ca589
44
tags: 645f666f9bcd5a90fca523b33c5a78b7

docs/_build/html/_sources/index.rst.txt

Lines changed: 18 additions & 42 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,8 @@
66
fMRwhy: BIDS-compatible fMRI analysis with SPM12
77
================================================
88

9+
``fMRwhy`` is a MATLAB- and SPM12-based toolbox with a variety of helper functions and BIDS-compatible workflows to assist in your fMRI quality checking, preprocessing and analysis journey.
10+
911
.. image:: http://img.shields.io/badge/license-LGPL--2.1-blue.svg
1012
:target: https://opensource.org/licenses/LGPL-2.1
1113
:alt: License
@@ -21,56 +23,30 @@ About
2123
.. image:: ../assets/fmrwhy_logo_2020.png
2224
:target: https://fmrwhy.readthedocs.io/
2325

24-
``fMRwhy`` is a Matlab- and SPM12-based toolbox with a variety of helper functions and BIDS-compatible workflows to assist in your fMRI quality checking, preprocessing and analysis journey.
2526

2627
With ``fMRwhy`` you are provided with the tools and shown *how* to calculate interesting quality metrics, *how* to visualize outcomes, *how* to analyse your data with batch scripts, and *how* to build a BIDS compatible analysis pipeline, all to flexible levels of automation.
2728
``fMRwhy`` does not help with the *why* questions, which are arguably the most important ones that need to be considered right at the start of your fMRI research journey.
2829

29-
``fMRwhy`` currently has the following features:
30-
31-
Focus on functional MRI
32-
```````````````````````
33-
34-
``fMRwhy`` was created with a core focus on functional MRI and basic structural (i.e. T1-weighted) preprocessing applications.
35-
36-
BIDS-compatibility
37-
``````````````````
38-
39-
``fMRwhy`` strives to stay compatible with the `Brain Imaging Data Structure`_.
40-
This includes understanding the structure of a BIDS dataset, such as the number and names of subjects, sessions, tasks, runs, and more.
41-
This compatibility allows automated pipelines to be run for any fMRI-based BIDS dataset.
42-
Additionally, ``fMRwhy`` will output derivative data in a BIDS-compatible fashion.
43-
44-
Visual fMRI quality control
45-
````````````````````````````
46-
47-
This is currently the core functionality. ``fmrwhy_bids_workflowQC`` is an automated, BIDS-compatible quality checking and reporting pipeline that generates subject-specific fMRI quality reports. An example is available `here`_.
48-
It requires a settings file to be prepopulated by the user based on the data and the user's preferences for processing steps. It can run on a full BIDS dataset with T1w and BOLD data, and will automatically derive the structure of the data in order to process all tasks, sessions and runs.
49-
Detailed usage information is available here, and the function's API is available here.
50-
51-
Multi-echo fMRI preprocessing
52-
`````````````````````````````
53-
54-
Multi-echo fMRI has known benefits for improving fMRI signal recovery, increasing the signal-to-noise ratio, and separating BOLD and non-BOLD fluctuations.
55-
``fMRwhy`` aims to make multi-echo processing methods accessible to researchers using SPM12 and Matlab.
56-
For this, much inspiration is drawn from the `tedana community`_.
57-
58-
Accessible and extensible SPM12 batch processing
59-
````````````````````````````````````````````````
30+
``fMRwhy`` currently has the following `features`_:
6031

61-
In an attempt to help users move from clicking through a GUI to building reproducible SPM12 analysis scripts,
62-
``fMRwhy`` makes SPM12 batch processes and other functions available as extensible functions. This includes standard SPM12 functionality such as realignment, reslicing, smoothing, and more.
32+
* Focus on functional MRI
33+
* BIDS-compatibility
34+
* Visual fMRI quality control
35+
* Multi-echo fMRI preprocessing
36+
* Accessible and extensible SPM12 batch processing
37+
* Processing utilities
6338

64-
Processing utilities
65-
`````````````````````
39+
.. _features: https://fmrwhy.readthedocs.io/features.html
6640

67-
Many helper functions are also available to assist with preprocessing, image calculation and visualization scripts. To find out more, please see the `API`_.
41+
Background
42+
----------
6843

44+
``fMRwhy`` started as a loose collection of MATLAB- and SPM12-based scripts created to reproduce useful quality control measures and interesting visualizations as reported in journal articles,
45+
such as calculating the temporal signal-to-noise ratio of an fMRI time series or creating a carpet plot from fMRI data.
46+
The core idea behind this was: if the results of our research are supported by useful quality control methods, why not implement these in a reproducible and extensible way so that the greater community can benefit from and contribute to it?
47+
This evolved over time into a modular set of SPM12 batch process wrapper functions that simplified the process of creating reproducible fMRI preprocessing and quality reporting scripts.
48+
With the goal of allowing automated quality reporting workflows, BIDS-compatibility was added using ``bids-matlab`` as a dependency.
6949

70-
.. _Brain Imaging Data Structure: https://bids.neuroimaging.io/
71-
.. _here: https://jsheunis.github.io/fmrwhy_sample_QCreport.html
72-
.. _tedana community: https://tedana.readthedocs.io/
73-
.. _API: https://fmrwhy.readthedocs.io/en/latest/#api
7450

7551
License Information
7652
-------------------
@@ -82,10 +58,10 @@ License Information
8258
:maxdepth: 2
8359
:caption: Contents:
8460

61+
features
8562
installation
8663
quality
8764
multiecho
88-
preprocessing
8965
resources
9066
contributing
9167
api

docs/_build/html/genindex.html

Lines changed: 37 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -82,10 +82,10 @@
8282

8383
<p class="caption"><span class="caption-text">Contents:</span></p>
8484
<ul>
85+
<li class="toctree-l1"><a class="reference internal" href="features.html">Core Features</a></li>
8586
<li class="toctree-l1"><a class="reference internal" href="installation.html">Installation</a></li>
8687
<li class="toctree-l1"><a class="reference internal" href="quality.html">Quality Reporting</a></li>
8788
<li class="toctree-l1"><a class="reference internal" href="multiecho.html">Multi-echo processing</a></li>
88-
<li class="toctree-l1"><a class="reference internal" href="preprocessing.html">Preprocessing</a></li>
8989
<li class="toctree-l1"><a class="reference internal" href="resources.html">Resources</a></li>
9090
<li class="toctree-l1"><a class="reference internal" href="contributing.html">Contributing to <code class="docutils literal notranslate"><span class="pre">fMRwhy</span></code></a></li>
9191
<li class="toctree-l1"><a class="reference internal" href="api.html">API</a></li>
@@ -156,22 +156,49 @@
156156
<h1 id="index">Index</h1>
157157

158158
<div class="genindex-jumpbox">
159-
<a href="#C"><strong>C</strong></a>
160-
| <a href="#F"><strong>F</strong></a>
159+
<a href="#F"><strong>F</strong></a>
161160

162161
</div>
163-
<h2 id="C">C</h2>
162+
<h2 id="F">F</h2>
164163
<table style="width: 100%" class="indextable genindextable"><tr>
165164
<td style="width: 33%; vertical-align: top;"><ul>
166-
<li><a href="api.html#module-code">code (module)</a>
165+
<li><a href="api.html#module-fmrwhy.batch">fmrwhy.batch (module)</a>
166+
</li>
167+
<li><a href="api.html#module-fmrwhy.bidsutils">fmrwhy.bidsutils (module)</a>
168+
</li>
169+
<li><a href="api.html#module-fmrwhy.multiecho">fmrwhy.multiecho (module)</a>
170+
</li>
171+
<li><a href="api.html#module-fmrwhy.qc">fmrwhy.qc (module)</a>
172+
</li>
173+
<li><a href="api.html#module-fmrwhy.realtime">fmrwhy.realtime (module)</a>
174+
</li>
175+
<li><a href="api.html#module-fmrwhy.settings">fmrwhy.settings (module)</a>
176+
</li>
177+
<li><a href="api.html#module-fmrwhy.utils">fmrwhy.utils (module)</a>
178+
</li>
179+
<li><a href="api.html#module-fmrwhy.workflows">fmrwhy.workflows (module)</a>
180+
</li>
181+
<li><a href="api.html#fmrwhy.bidsutils.fmrwhy_bids_constructFilename">fmrwhy_bids_constructFilename() (in module fmrwhy.bidsutils)</a>
167182
</li>
168183
</ul></td>
169-
</tr></table>
170-
171-
<h2 id="F">F</h2>
172-
<table style="width: 100%" class="indextable genindextable"><tr>
173184
<td style="width: 33%; vertical-align: top;"><ul>
174-
<li><a href="api.html#code.fmrwhy_bids_constructFilename">fmrwhy_bids_constructFilename() (in module code)</a>
185+
<li><a href="api.html#fmrwhy.bidsutils.fmrwhy_bids_getAnatDerivs">fmrwhy_bids_getAnatDerivs() (in module fmrwhy.bidsutils)</a>
186+
</li>
187+
<li><a href="api.html#fmrwhy.bidsutils.fmrwhy_bids_setupQcDerivDirs">fmrwhy_bids_setupQcDerivDirs() (in module fmrwhy.bidsutils)</a>
188+
</li>
189+
<li><a href="api.html#fmrwhy.bidsutils.fmrwhy_bids_setupQcSubDirs">fmrwhy_bids_setupQcSubDirs() (in module fmrwhy.bidsutils)</a>
190+
</li>
191+
<li><a href="api.html#fmrwhy.settings.fmrwhy_defaults">fmrwhy_defaults() (in module fmrwhy.settings)</a>
192+
</li>
193+
<li><a href="api.html#fmrwhy.settings.fmrwhy_settings_validate">fmrwhy_settings_validate() (in module fmrwhy.settings)</a>
194+
</li>
195+
<li><a href="api.html#fmrwhy.utils.fmrwhy_util_checkDependencies">fmrwhy_util_checkDependencies() (in module fmrwhy.utils)</a>
196+
</li>
197+
<li><a href="api.html#fmrwhy.utils.fmrwhy_util_saveNiftiFrom4D">fmrwhy_util_saveNiftiFrom4D() (in module fmrwhy.utils)</a>
198+
</li>
199+
<li><a href="api.html#fmrwhy.workflows.fmrwhy_workflow_qc">fmrwhy_workflow_qc() (in module fmrwhy.workflows)</a>
200+
</li>
201+
<li><a href="api.html#fmrwhy.workflows.fmrwhy_workflow_qcSubReport">fmrwhy_workflow_qcSubReport() (in module fmrwhy.workflows)</a>
175202
</li>
176203
</ul></td>
177204
</tr></table>

0 commit comments

Comments
 (0)