PatchWarp

Image processing pipeline to correct motion artifacts and complex image distortions in neuronal calcium imaging data.
126 Descargas
Actualizado 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:

Citar como

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.

Compatibilidad con la versión de MATLAB
Se creó con R2019b
Compatible con cualquier versión
Compatibilidad con las plataformas
Windows macOS Linux
Categorías
Más información sobre Microscopy en Help Center y 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

Versión Publicado Notas de la versión
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

Para consultar o notificar algún problema sobre este complemento de GitHub, visite el repositorio de GitHub.
Para consultar o notificar algún problema sobre este complemento de GitHub, visite el repositorio de GitHub.