Recent Releases of laynii

laynii - LayNii v2.8.0

This release features two new and important programs: - LN2_SENSITIVITY - LN2_SPECIFICITY

These programs are contributed by #104, and provides voxel-wise computation of the sensitivity and specificity metrics defined in: - Pizzuti, A., Huber, L. (Renzo), Gulban, O.F., Benitez-Andonegui, A., Peters, J., Goebel, R., 2023. Imaging the columnar functional organization of human area MT+ to axis-of-motion stimuli using VASO at 7 Tesla. Cerebral Cortex 33, 8693–8711. https://doi.org/10.1093/cercor/bhad151

In addition, there are minor improvements in: - LN2_GEODISTANCE - LN2_VORONOI

- C++
Published by ofgulban 12 months ago

laynii - LayNii v2.7.0

Release before OHBM 2024. This release is focused on providing new programs that are focused on computing spatial gradients on magnitude and phase images. These new programs are: - LN2_GRADIENTS - LN2_LAPLACIAN - LN2_GRAMAG - LN2_PHASE_GRADIENTS - LN2_PHASE_LAPLACIAN - LN2_PHASE_JOLT

LayNii_Logo_v02_optimized

- C++
Published by ofgulban over 1 year ago

laynii - LayNii v2.6.0

Release after the OHBM abstract deadline. Mainly for start making the new and experimental phase processing tools available to other interested researchers.

New !!! experimental !!! programs

  • LN2_PHASE_JOLT: Compute L1 norm of phase image second spatial derivatives.

- C++
Published by ofgulban about 2 years ago

laynii - LayNii v2.5.3

Version 2.5.0 is a relatively minor release before OHBM 2023, introducing the new and major LN2_RIM_POLISH program. As this versions is released shortly after v2.4.0, please also refer to v2.4.0 release notes for other news if you are switching from earlier versions.

New programs

  • LN2_RIM_POLISH : Smooth the cortical gray matter borders. Designed to be especially used after manual corrections. Default parameters are optimized for 0.2 mm isotropic images. See this video for an example usage: https://youtu.be/Do77pdTwSy8?t=1124 at around 19:00 . Also see the related issue at: https://github.com/layerfMRI/LAYNII/issues/77

Minor fixes

  • [2.5.1] Change programs printing LayNii v2.4.0 to LayNii v2.5.1 upon execution.
  • [2.5.2] Add masking options in LN_SKEW and fix several typos in the docstrings.
  • [2.5.3] Add safety check for scl slope = 0 in nifti header (see #88 for further details).

- C++
Published by ofgulban over 2 years ago

laynii - LayNii v2.5.2

Version 2.5.0 is a relatively minor release before OHBM 2023, introducing the new and major LN2_RIM_POLISH program. As this versions is released shortly after v2.4.0, please also refer to v2.4.0 release notes for other news if you are switching from earlier versions.

New programs

  • LN2_RIM_POLISH : Smooth the cortical gray matter borders. Designed to be especially used after manual corrections. Default parameters are optimized for 0.2 mm isotropic images. See this video for an example usage: https://youtu.be/Do77pdTwSy8?t=1124 at around 19:00 . Also see the related issue at: https://github.com/layerfMRI/LAYNII/issues/77

Minor fixes

  • [2.5.1] Change programs printing LayNii v2.4.0 to LayNii v2.5.1 upon execution.
  • [2.5.2] Add masking options in LN_SKEW and fix several typos in the docstrings.

- C++
Published by ofgulban over 2 years ago

laynii - LayNii v2.5.1

Version 2.5.0 is a relatively minor release before OHBM 2023, introducing the new and major LN2_RIM_POLISH program. As this versions is released shortly after v2.4.0, please also refer to v2.4.0 release notes for other news if you are switching from earlier versions.

New programs

  • LN2_RIM_POLISH : Smooth the cortical gray matter borders. Designed to be especially used after manual corrections. Default parameters are optimized for 0.2 mm isotropic images. See this video for an example usage: https://youtu.be/Do77pdTwSy8?t=1124 at around 19:00 . Also see the related issue at: https://github.com/layerfMRI/LAYNII/issues/77

Minor fixes

  • Change programs printing LayNii v2.4.0 to LayNii v2.5.1 upon execution.

- C++
Published by ofgulban over 2 years ago

laynii - LayNii v2.4.0

Modifications

  • LN2_MULTILATERATE: Speed up perimeter update. #75
  • LN2_VORONOI: Add maximum distance parameter (useful for very large files e.g. 0.1 mm whole brain). #75
  • LN2_COLUMNS and LN2_IFPOINTS: Now prints the maximum distance between centroids/points. Useful for understanding the approximately average distance between centroids/points. #70

New programs

  • LN2_PATCH_FLATTEN_2D : For flattening 2D slices (e.g. histology data). See this video for usage: https://youtu.be/WUgaQBJkRPA14 . #71
  • LN2_PATCH_UNFLATTEN: Unflattening for 3D flattened files (e.g. vitual Petri dishes, cakes ...). See the last 15 minutes of this video for and example usage: https://youtu.be/tIuKG3rtVk4 . #69

Experimental programs and changes

There are the new programs which might be modified without concerning backwards compatibility. They are highlighted in the makefile and will be removed from that section once stabilized. - LN2_GRAMAG: Compute gradient magnitude images. Can compute phase image gradient magnitudes correctly when using circular flag. #65 - LN2_NEIGHBORS: Find 1st order neighbors of an any given input containing integers (segmentations, parcellations, custom regions of interests etc.). This program yields a comma spearated values file (.CSV) as the default output. In the future we might make use of such neighborhood information files in LayNii. #66 - LN2_UVD_FILTER: Add maximum value based depth peak detection -peak_d. We might work on the outputs and change the terminology in the future. #76

- C++
Published by ofgulban almost 3 years ago

laynii - LayNii v2.3.0

New programs

New LN2_HEXBIN program is added for generating hexagonal tiling on UVD coordinates.

Modifications

  • Docker improvements contributed by @Remi-Gau .
  • Citation.cff improvements.
  • LN2_PATCH_FLATTEN 4D nifti input and output capability is now added.
  • LN2_MULTILATERATE and LN2_PATCH_FLATTEN references are updated to:
    • Gulban, O. F., Bollmann s., Huber L., Wagstyl K., Goebel R., Poser B. A., Kay K., Ivanov D. “Mesoscopic in Vivo Human T2* Dataset Acquired Using Quantitative MRI at 7 Tesla.” NeuroImage 264 (December 2022): 119733. https://doi.org/10.1016/j.neuroimage.2022.119733.

- C++
Published by ofgulban about 3 years ago

laynii - LayNii v2.2.1

Purpose of the release

LN2_MULTILATERATE and LN2_PATCH_FLATTEN focused release to serve as a checkpoint for: - Gulban, O. F., Bollmann, S., Huber, R., Wagstyl, K., Goebel, R., Poser, B. A., Kay, K., Ivanov, D. (2021). Mesoscopic Quantification of Cortical Architecture in the Living Human Brain. BioRxiv. https://doi.org/10.1101/2021.11.25.470023

Modifications

  • LN2_LAYERS now outputs approximately equal number of voxels for each layer with -equal_counts flag. This option can be useful for low resolution inputs (e.g. > 0.5 mm iso.). Note: when activating this flag, it will equalize the number of voxels for each layer without respecting equi-distant and equi-volume cortical depth measurements.
  • LN_RAGRUG now has -scale parameter to create rectangular tessellations at lower resolutions (integer multiples of the input voxel dimensions.
  • Binaries for MACOS M1 chip will be included from now on.
  • [v2.2.1] Minor fixes to outputs of LN2_MULTILATERATE and help menu improvements.

- C++
Published by ofgulban almost 4 years ago

laynii - LayNii v2.2.0

Purpose of the release

LN2_MULTILATERATE and LN2_PATCH_FLATTEN focused release to serve as a checkpoint for: - Gulban, O. F., Bollmann, S., Huber, R., Wagstyl, K., Goebel, R., Poser, B. A., Kay, K., Ivanov, D. (2021). Mesoscopic Quantification of Cortical Architecture in the Living Human Brain. BioRxiv. https://doi.org/10.1101/2021.11.25.470023

Modifications

  • LN2_LAYERS now outputs approximately equal number of voxels for each layer with -equal_counts flag. This option can be useful for low resolution inputs (e.g. > 0.5 mm iso.). Note: when activating this flag, it will equalize the number of voxels for each layer without respecting equi-distant and equi-volume cortical depth measurements.
  • LN_RAGRUG now has -scale parameter to create rectangular tessellations at lower resolutions (integer multiples of the input voxel dimensions.
  • Binaries for MACOS M1 chip will be included from now on.

- C++
Published by ofgulban about 4 years ago

laynii - LayNii v2.1.1

New programs

LN2_GEODISTANCES to measure geodesic distances in a set of voxels from another set of voxels. LN2_IFPOINTS is a simplified (and more general) version of the iterative farthest points algorithm used in LN2_COLUMNS. LN2_MASK is intended to help with voxel section for layer-profile extraction. LN2_BORDERIZE is introduced to find borders in an integer nifti (e.g. segmentation files, rim files).

Modifications

LN2_MULTILATERATE algorithm is significantly improved through using pin axis geodesic distances rather than point based geodesic distances. LN2_LAYERS now have a very minimal masked smoothing applied to the equivolume and equidistance metrics. This is done to mitigate the discrete sampling effects present close to the borders. [2.1.1] LN2_PATCH_FLATTEN minor improvements.

- C++
Published by ofgulban over 4 years ago

laynii - LayNii v2.1.0

New programs

LN2_GEODISTANCES to measure geodesic distances in a set of voxels from another set of voxels. LN2_IFPOINTS is a simplified (and more general) version of the iterative farthest points algorithm used in LN2_COLUMNS. LN2_MASK is intended to help with voxel section for layer-profile extraction. LN2_BORDERIZE is introduced to find borders in an integer nifti (e.g. segmentation files, rim files).

Modifications

LN2_MULTILATERATE algorithm is significantly improved through using pin axis geodesic distances rather than point based geodesic distances. LN2_LAYERS now have a very minimal masked smoothing applied to the equivolume and equidistance metrics. This is done to mitigate the discrete sampling effects present close to the borders.

- C++
Published by ofgulban over 4 years ago

laynii - LayNii v2.0.0

Added programs:

  • LN2_CONNECTED_CLUSTERS to remove islands of unconnected voxels
  • LN2_MULTILATERATE to obtain rectangular grid in convoluted cortex
  • LN2_PATCH_FLATTEN to re-map topographical signal distributions of convoluted cortex in 3D nii
  • LN2_CHOLMO to add additional layers on already existing ones (padding)
  • LN2_PROFILE to extract layer-profiles from any activity map based on layer masks
  • LN_CONLAY to reduce the layer grid to match native resolution of functional data (for Fede).

Added features

  • New contributions about default output paths in LN_BOCO by alepizzuti
  • Orientation to main magnetic field added in LN2_LAYERS
  • LN2_LAYERS has a new -incl_borders option to extend layer profiles
  • Improved thickness estimation in LN2_LAYERS
  • Added additional references in the source file of LN2_DEVEIN, as per reviewers request
  • Programs with LN2 prefix have been vetted more thoroughly and are no longer experimental.
  • Unused and too experimental programs are archived.

- C++
Published by layerfMRI about 5 years ago

laynii - LayNii v1.6.0

Improvements

  • Consistency issues in LN2_DEVEIN are addressed (see the discussion at #28 ).
  • NOTE: Binaries will be added in a later minor release. If you are not planning to use LN2_DEVEIN or LN2_COLUMNS you do not need to update LAYNII.

New features

  • Introducing LN2_COLUMNS program. This program implements a very simple method to generate approximately equal volume columns in 2D and 3D images. This program uses middle gray matter (midgm) output of LN2_LAYERS and is designed to be used in combination.
  • New programs with LN2 prefix are mostly experimental. Therefore, use these programs by knowing that they might be subject to extensive changes until LAYNII v2.0.0.

- C++
Published by ofgulban over 5 years ago

laynii - LayNii v1.5.6

Improvements

  • All programs now can handle absolute and relative input paths and save outputs in the input folder.
  • Input data type casts are tightened for all programs. This addresses many issues stemming from various integer data types (int8, int16, int32 etc.)
  • NaNs in input images are swapped with zeros. Addressing many issues coming from NaN voxels.
  • Lots of under the hood improvements and restructuring laying the groundwork for future additions.
  • [1.5.1] Introducing custom output path in LN_BOCO, LN_MP2RAGE_DNOISE, LN_FLOAT_ME, LN_SHORT_ME, LN_INT_ME. This flag will also be added to other programs as needed in the future.
  • [1.5.1] Fixing minor bugs introduced in 1.5.0 after restructuring.
  • [1.5.2] Added support for .nii.gz read/write.
  • [1.5.3] Fix displayed version number in welcome message.
  • [1.5.4] Add rim_M.nii as a synthetic 2D test image.
  • [1.5.5] Add equi-distant and equi-volume metrics as additional default outputs to LN2_LAYERS.
  • [1.5.6] Outputs are now changed to use suffix tags instead of prefix in ALL programs.
  • [1.5.6] Nii.gz bug fix for windows
  • [1.5.6] The testing files and scripts are updated to match the new options after v1.5
  • [1.5.6] LNGRADSMOOTHITER is added to avoid signal smoothing across kissing gyri.
  • [1.5.6] binaries are added
  • [1.5.6] binaries for Windows x64 added

New features

  • Introducing LN2_LAYERS program. This program implements a vastly faster equidistant layering algorithm suitable for generating layers in very large images. Also comes with middle gray matter, thickness and approximate curvature outputs.
  • New programs with LN2 prefix are mostly experimental. Therefore, use these programs by knowing that they might be subject to extensive changes until LAYNII v2.0.0.

- C++
Published by layerfMRI almost 6 years ago

laynii - LayNii v1.0.0 (legacy)

We are keeping this pre-2020 version around in case if someone was already using it. However, it is highly recommended to use a newer version of LAYNII.

- C++
Published by layerfMRI over 6 years ago