PatchWarp

Image processing pipeline to correct motion artifacts and complex image distortions in neuronal calcium imaging data.
126 Downloads
Aktualisiert 26. Sep 2023

logo

PatchWarp is an image processing pipeline for neuronal calcium imaging data. It can correct complex image distortions that slowly occur during long imaging sessions. First, the pipeline performs rigid motion corrections by iterative re-estimation of template images. Then, the imaging field is split into user-specified number of subfields. A gradient-based algorithm independently finds the best affine transformation matrix for each frame of each subfield to correct the across-time image distortion of each subfield. The distortion-corrected subfields are stitched together like patchwork to reconstruct the distortion-corrected whole imaging field. PatchWarp can be also used to register images from different imaging sessions for longitudinal activity analyses.


Before (Left) and after (Right) PatchWarp warp correction for within-session image distortions

(2.25 hrs in vivo 2-photon calcium imaging of cell bodies with complex distortions)

(19 min in vivo 2-photon calcium imaging of axons with complex distortions. Image credit to Chi Ren.)

Before (Left) and after (Right) PatchWarp across-session image registration

(A later imaging session (cyan) was registered to an earlier imaging session (red))

Installation

Download files from this github repository, and add all files to your MATLAB path. The code does not work properly on MATLAB2023. Please use older MATLAB version.
**Note that PatchWarp uses Parallel Computing Toolbox. The toolbox needs to be installed to run PatchWarp code.

How to use

Please check example demo files.

For within-session distortion correction, please check patchwarp_demo.m.
Example data to run the demo code is available at https://doi.org/10.6084/m9.figshare.19212501.v1

For across-session image registration, please check patchwarp_across_sessions_demo.m.
Example data to run the demo code is available at https://doi.org/10.6084/m9.figshare.19217421.v1

Citation

Example citation format for the preprint:

  • Hattori, R. and Komiyama, T. PatchWarp: Corrections of non-uniform image distortions in two-photon calcium imaging data by patchwork affine transformations. Cell Reports Methods (2022), https://doi.org/10.1016/j.crmeth.2022.100205.

Software DOI from Zenodo:

Zitieren als

Hattori, Ryoma, and Takaki Komiyama. PatchWarp: Corrections of Non-Uniform Image Distortions in Two-Photon Calcium Imaging Data by Patchwork Affine Transformations. bioRxiv, Nov. 2021, doi:10.1101/2021.11.10.468164.

Kompatibilität der MATLAB-Version
Erstellt mit R2019b
Kompatibel mit allen Versionen
Plattform-Kompatibilität
Windows macOS Linux
Kategorien
Mehr zu Microscopy finden Sie in Help Center und MATLAB Answers

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

PatchWarp

PatchWarp/utils

PatchWarp/utils/Akinori_Mitani_motion_correct_files

PatchWarp/utils/Akinori_Mitani_motion_correct_files/@BilinearImageRegistrator

PatchWarp/utils/Akinori_Mitani_motion_correct_files/@BilinearPyramidImageRegistrator

PatchWarp/utils/Akinori_Mitani_motion_correct_files/@CorrelationCalculator

PatchWarp/utils/Akinori_Mitani_motion_correct_files/@ImageBasis

PatchWarp/utils/Akinori_Mitani_motion_correct_files/@ImageRegistrator

PatchWarp/utils/Akinori_Mitani_motion_correct_files/@ImageRegistratorPyramid

PatchWarp/utils/Akinori_Mitani_motion_correct_files/@ImageWithMoment

PatchWarp/utils/Akinori_Mitani_motion_correct_files/@OpticalFlowImageRegistrator

PatchWarp/utils/Akinori_Mitani_motion_correct_files/@PyramidImageRegistrator

PatchWarp/utils/ScanImageTiffReader

PatchWarp/utils/ecc_patchwarp

Version Veröffentlicht Versionshinweise
1.3.3.0

See release notes for this release on GitHub: https://github.com/ryhattori/PatchWarp/releases/tag/v1.3.3

1.3.2.0

See release notes for this release on GitHub: https://github.com/ryhattori/PatchWarp/releases/tag/v1.3.2

1.3.1

See release notes for this release on GitHub: https://github.com/ryhattori/PatchWarp/releases/tag/v1.3.1

1.3.0

See release notes for this release on GitHub: https://github.com/ryhattori/PatchWarp/releases/tag/v1.3.0

1.2.6

See release notes for this release on GitHub: https://github.com/ryhattori/PatchWarp/releases/tag/v1.2.6

1.2.5

See release notes for this release on GitHub: https://github.com/ryhattori/PatchWarp/releases/tag/v1.2.5

1.2.4

See release notes for this release on GitHub: https://github.com/ryhattori/PatchWarp/releases/tag/v1.2.4

1.2.3

See release notes for this release on GitHub: https://github.com/ryhattori/PatchWarp/releases/tag/v1.2.3

1.2.2

See release notes for this release on GitHub: https://github.com/ryhattori/PatchWarp/releases/tag/v1.2.2

1.2.1

See release notes for this release on GitHub: https://github.com/ryhattori/PatchWarp/releases/tag/v1.2.1

1.2.0

1.1.0.0

See release notes for this release on GitHub: https://github.com/ryhattori/PatchWarp/releases/tag/v1.1.0

1.0.1.0

See release notes for this release on GitHub: https://github.com/ryhattori/PatchWarp/releases/tag/v1.0.1

1.0.0.0

See release notes for this release on GitHub: https://github.com/ryhattori/PatchWarp/releases/tag/v1.0.0

Um Probleme in diesem GitHub Add-On anzuzeigen oder zu melden, besuchen Sie das GitHub Repository.
Um Probleme in diesem GitHub Add-On anzuzeigen oder zu melden, besuchen Sie das GitHub Repository.