CHANGELOG.md 10.7 KB
Newer Older
1 2 3 4 5 6
RELEASE INFORMATION
===============================

Current Release
---------------

Lars Kasper's avatar
Lars Kasper committed
7
*Current version: PhysIO Toolbox Release R2019b, v7.2.0*
8

Lars Kasper's avatar
Lars Kasper committed
9
August 20, 2019
Lars Kasper's avatar
Lars Kasper committed
10 11


Lars Kasper's avatar
Lars Kasper committed
12 13
Minor Release Notes (R2019b, v7.2.0)
------------------------------------
Lars Kasper's avatar
Lars Kasper committed
14

Lars Kasper's avatar
Lars Kasper committed
15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
### Added
- `requirements.txt` making dependencies on Matlab and specific toolboxes 
  explicit
- `max_heart_rate_bpm` now a user parameter to adjust prior on max allowed 
  heart rate for cardiac pulse detection (`method = 'auto_matched'`)
- bandpass-filtering of cardiac data during preprocessing now possible 
  (`preproc.cardiac.filter`)
- Added integration tests for all examples in `tests/integration` for both SPM
Batch Editor and Matlab-only configuration scripts. Reference data provided in
`examples/TestReferenceResults/examples`

### Changed
- Toned down and replaced irrelevant peak height and missing cardiac pulse 
  warnings (github issue #51)
- Updated README to include external contributors and recent findings about
  impact of physiological noise for serial correlations (Bollmann2018)
- Added unit tests for convolution and moved all to `tests/unit`

### Fixed
- Corrected half-width shift of response functions for HRV and RVT regressors by
Lars Kasper's avatar
Lars Kasper committed
35 36 37 38 39
  erroneous use of Matlab `conv` 
    - For details on the bug, its impact and fix, see our specific [Release
    Info on RVT/HRV Bugfix](https://github.com/translationalneuromodeling/tapas/issues/65)
    - other references: TNU gitlab issue #83, found and fixed by Sam Harrison,
    TNU, see `tapas_physio_conv`)
Lars Kasper's avatar
Lars Kasper committed
40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86
- Bugfix `tapas_physio_init()` not working, because dependent on functions 
  in `utils` subfolder not in path; `utils` added to path
- `tapas_physio_review` for motion parameters (found and fixed by 
  Sam Harrison, TNU)
- visualization error for regressor orthogonalization (github issue #57), 
  when only `'RETROICOR'` set was chosen

Minor Release Notes (R2019a, v7.1.0)
------------------------------------

### Added
- BIDS reader and example (Brain Imaging Data Structure, 
http://bids.neuroimaging.io/bids_spec.pdf) for `*_physio.tsv[.gz]/.json` files
- Added BioPac txt-File read-in and example
- Template example with all physio-fields for matlab script and settings as in default SPM batch
- Started unit testing framework in folder `tests`
    - example functions for findpeaks and BIDS readin
    - reference data saved with example data in subfolder `TestReferenceResults`
    - reference data reflects physio structure after running example scripts
    with PhysIO R2019a

### Changed
- put all functions in `code` into subfolders relating to different modules:
  `readin`, `sync`, `preproc`, `model`, `assess`, `utils` (gitlab-issue #58)
    - updated deployment `tapas_physio_init` because of that
    - updated figure names to reflect respective code module
- matlab-script examples now contain more comments
    - fixed internal bug that prepended absolute paths to input logfiles in automatic example generation
- `tapas_physio_create_noise_rois_regressors` with more flexible ROI reslicing 
  options (speed-up) and uses `spm_erode` (no Matlab image processing toolbox needed),
  thanks to a [contribution by Benoît Béranger](https://github.com/translationalneuromodeling/tapas/pull/34)
- introduced semantic version numbers for all previous releases, and changed
Release numbering to R<YEAR><LETTER> style
- extended documentation (FAQ, new read-in BIDS)
- several bugfixes (Sep 18 - Mar 19), see 
  [GitHub Issues](https://github.com/translationalneuromodeling/tapas/issues?q=label:physio)

### Removed
- `tapas_physio_findpeaks` now refers to current Matlab signal processing
toolbox implementation, instead of copy of older version
- some Matlab toolbox dependencies by custom simplified functions (e.g.,
`suptitle`)


Bugfix Release Notes (R2018.1.3, v7.0.3)
----------------------------------------

Lars Kasper's avatar
Lars Kasper committed
87 88 89 90 91
### Changed
- fixed bug for matching of Philips SCANPHYSLOG-files (Gitlab #62), if 
  physlogs were acquired on different days, but similar times


Lars Kasper's avatar
Lars Kasper committed
92 93
Bugfix Release Notes (R2018.1.2, v7.0.2)
----------------------------------------
Lars Kasper's avatar
Lars Kasper committed
94 95 96 97

### Added
- BioPac txt-file reader (for single file, resp/cardiac/trigger data in different columns)

Lars Kasper's avatar
Lars Kasper committed
98 99 100 101 102 103
### Changed
- fixed bug for 3D nifti array read-in in tapas_physio_create_noise_rois_regressors (github issue #24, gitlab #52)


Bugfix Release Notes (R2018.1.1, v7.0.1)
----------------------------------------
Lars Kasper's avatar
Lars Kasper committed
104 105 106 107

### Changed
- documentation.{html,pdf} export nicer with different FAQ numbering

Lars Kasper's avatar
Lars Kasper committed
108 109 110

Major Release Notes (R2018.1, v7.0.0)
-------------------------------------
Lars Kasper's avatar
Lars Kasper committed
111 112 113 114 115 116 117 118 119 120 121 122

### Added
- initialization function `tapas_physio_init()` to check Matlab paths, including SPM for batch processing
- Extended motion diagnostics via Framewise displacement (Power et al., 2012)
    - Outlier motion models generate 'spike' regressors from FD outliers (gitlab issue  #)
- Censoring of intervals with bad physiological recordings in RETROICOR regressors (github issue #11, gitlab #36)
- Added examples of Siemens VD (Tics Format, Prisma) and Human Connectome Project (HCP) format

### Changed
- Updated read-in examples of all vendors (Siemens, Philips, GE) to latest PhysIO Toolbox version.
- Updated `README.md` to reflect changes to example download, new references
- Extended Wiki documentation, in particular examples and read-in formats
Lars Kasper's avatar
Lars Kasper committed
123

Lars Kasper's avatar
Lars Kasper committed
124 125 126

Minor Release Notes (R2017.3, v6.3.0)
-------------------------------------
Lars Kasper's avatar
Lars Kasper committed
127 128 129 130 131 132 133 134 135 136 137

- Included references to external [ETH gitlab physio-doc repo and wiki](https://gitlab.ethz.ch/physio/physio-doc)
- New Human Connectome Project reader for preprocessed Siemens 3-column logfiles (`*Physio_log.txt`)
- Updated Siemens Reader for Multiband patches(CMRR), versions EJA_1
    - including multi-echo data (4,5 columns)
    - multi-channel ECG data
    - significant speed up of read-in
    - generalized framework for later changes to format
    - interpolation of different sampling rates RESP/CARDIAC
- updated README about documentation, new support policy and [TAPAS on GitHub](https://translationalneuromodeling.github.io/tapas)
- extended FAQ
138

Lars Kasper's avatar
Lars Kasper committed
139 140 141

Minor Release Notes (R2017.2, v6.2.0)
-------------------------------------
142 143 144 145 146 147 148

- Included Markdown-based documentation via Wiki (also CITATION, LICENSE, CHANGELOG.md)
- Included FAQ in Wiki
- Split git repositories into public, dev, examples, and added wiki, to disentangle development from deployed toolbox code and data
- Bugfix and Typo correction
- Philips SCANPYHSLOG for their software release 5.1.7.

Lars Kasper's avatar
Lars Kasper committed
149 150 151

Minor Release Notes (R2017.1, v6.1.0)
-------------------------------------
152 153 154 155 156 157 158

- Substantially improved Siemens interface, both for VB/VD and 3T/7T releases
    - several bugfixes
    - based on extensive user feedback from Berlin and Brisbane
- New functionality tapas_physio_overlay_contrasts.m to display non-physio 
  contrasts automatically as well

Lars Kasper's avatar
Lars Kasper committed
159 160 161

Major Release Notes (r904 / R2016.1, v6.0.0)
--------------------------------------------
162 163 164 165 166 167 168 169 170 171

- Software version for accepted PhysIO Toolbox Paper: doi:10.1016/j.jneumeth.2016.10.019
- Tested and expanded versions of examples
- Improved stability by bugfixes and compatibility to Matlab R2016
- Slice-wise regressor creation
- Detection of constant physiological time series (detachment, clipping)
- Refactoring of report_contrasts and compute_tsnr_gains as standalone functionality
- Improved Read-in capabilities (Siemens respiration data, BioPac .mat)
- Migration from svn (r904) to git (tnurepository) for version control

Lars Kasper's avatar
Lars Kasper committed
172 173 174

Major Release Notes (r835, v5.0.0)
----------------------------------
175 176 177 178 179 180 181 182 183 184

- Software version for Toolbox Paper submission
- Noise ROIs modeling
- Extended motion models (24 parameters, Volterra expansion)
- HRV/RVT models with optional multiple delay regressors
- Report_contrasts with automatic contrast generation for all regressor groups
- compute_tsnr_gains for individual physiological regressor groups
- consistent module naming (scan_timing, preproc)
- Visualisation improvement (color schemes, legends)

Lars Kasper's avatar
Lars Kasper committed
185 186 187

Minor Release Notes (r666, v4.1.0)
----------------------------------
188 189 190 191 192 193 194 195 196 197

- Compatibility tested for SPM12, small bugfixes Batch Dependencies
- Cleaner Batch Interface with grouped sub-menus (cfg_choice)
- new model: 'none' to just read out physiological raw data and preprocess,
  without noise modelling 
- Philips: Scan-timing via gradient log now automatized (gradient_log_auto)
- Siemens: Tics-Logfile read-in (proprietary, needs Siemens-agreement)
- All peak detections (cardiac/respiratory) now via auto_matched algorithm
- Adapt plots/saving for Matlab R2014b

Lars Kasper's avatar
Lars Kasper committed
198 199 200

Major Release Notes (r534, v4.0.0)
----------------------------------
201 202

- Read-in of Siemens plain text log files; new example dataset for Siemens
Lars Kasper's avatar
Lars Kasper committed
203 204
- Speed up and debugging of auto-detection method for noisy cardiac data => new
method thresh.cardiac.initial_cpulse_select.method = 'auto_matched'
205 206 207
- Error handling for temporary breathing belt failures (Eduardo Aponte, TNU Zurich)
- slice-wise regressors can be created by setting sqpar.onset_slice to a index vector of slices

Lars Kasper's avatar
Lars Kasper committed
208 209 210

Major Release Notes (r497, v3.0.0)
----------------------------------
211 212 213 214 215 216 217

- SPM matlabbatch GUI implemented (Call via Batch -> SPM -> Tools -> TAPAS PhysIO Toolbox)
- improved, automatic heartbeat detection for noisy ECG now standard for ECG and Pulse oximetry (courtesy of Steffen Bollmann)
- QuickStart-Manual and PhysIO-Background presentation expanded/updated
- job .m/.mat-files created for all example datasets
- bugfixes cpulse-initial-select method-handling (auto/manual/load)

Lars Kasper's avatar
Lars Kasper committed
218 219 220

Major Release Notes (r429, v2.0.0)
----------------------------------
221 222 223 224 225 226 227

- Cardiac and Respiratory response function regressors integrated in workflow (heart rate and breathing volume computation)
- Handling of Cardiac and Respiratory Logfiles only
- expanded documentation (Quickstart.pdf and Handbook.pdf)
- read-in of custom log files, e.g. for BrainVoyager peripheral data
- more informative plots and commenting (especially in tapas_physio_new).

Lars Kasper's avatar
Lars Kasper committed
228 229 230

Minor Release Notes (r354, v1.1.0)
----------------------------------
231 232 233 234

- computation of heart and breathing rate in Philips/PPU/main_PPU.m
- prefix of functions with tapas_*

Lars Kasper's avatar
Lars Kasper committed
235 236 237

Major Release Notes (r241, v1.0.0)
----------------------------------
238 239 240 241 242 243 244 245 246

- complete modularization of reading/preprocessing/regressor creation for peripheral physiological data
- manual selection of missed heartbeats in ECG/pulse oximetry (courtesy of Jakob Heinzle)
- support for logfiles from GE scanners (courtesy of Steffen Bollmann, KiSpi Zuerich)
- improved detection of pulse oximetry peaks (courtesy of Steffen Bollmann)
- improved documentation
- consistent function names (prefixed by "physio_")

NOTE: Your main_ECG/PPU.m etc. scripts from previous versions (<=r159) will not work with this one any more. Please adapt one of the example scripts for your needs (~5 min of work). The main benefit of this version is a complete new variable structure that is more sustainable and makes the code more readable.