• Stars
    star
    275
  • Rank 148,927 (Top 3 %)
  • Language
    TeX
  • Created over 5 years ago
  • Updated almost 5 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Image Registration

Image registration

The purpose of this repository is to provide an overview of github repositories on non-parametric image registration.

All our code is written in python using PyTorch except for our original deep-learning registration work [Yang16] which is written in lua using torch.


Mermaid: iMagE Registration via autoMAtIc Differentiation

                                      _     _ 
                                     (_)   | |
  _ __ ___   ___ _ __ _ __ ___   __ _ _  __| |
 | '_ ` _ \ / _ \ '__| '_ ` _ \ / _` | |/ _` |
 | | | | | |  __/ |  | | | | | | (_| | | (_| |
 |_| |_| |_|\___|_|  |_| |_| |_|\__,_|_|\__,_|
                                                                                      
 

Mermaid is a registration toolkit making use of automatic differentiation for rapid prototyping. It includes various image registration models. In particular, stationary velocity field models (both based on velocity fields and momentum fields), scalar vector momentum Large Displacement Diffeomorphic Metric Mapping (LDDMM) models as well as the more generalized Region-specific Diffeomorphic Metric Mapping model (RDMM).

The Mermaid repository can be found here: https://github.com/uncbiag/mermaid

Supported transformation models:

  • affine_map: map-based affine registration
  • diffusion_map: displacement-based diffusion registration
  • curvature_map: displacement-based curvature registration
  • total_variation_map: displacement-based total variation registration
  • svf_map: map-based stationary velocity field
  • svf_image: image-based stationary velocity field
  • svf_scalar_momentum_image: image-based stationary velocity field using the scalar momentum
  • svf_scalar_momentum_map: map-based stationary velocity field using the scalar momentum
  • svf_vector_momentum_image: image-based stationary velocity field using the vector momentum
  • svf_vector_momentum_map: map-based stationary velocity field using the vector momentum
  • lddmm_shooting_map: map-based shooting-based LDDMM using the vector momentum
  • lddmm_shooting_image: image-based shooting-based LDDMM using the vector momentum
  • lddmm_shooting_scalar_momentum_map: map-based shooting-based LDDMM using the scalar momentum
  • lddmm_shooting_scalar_momentum_image: image-based shooting-based LDDMM using the scalar momentum
  • lddmm_adapt_smoother_map: map-based shooting-based Region specific diffemorphic mapping, with a spatio-temporal regularizer
  • svf_adapt_smoother_map: map-based shooting-based vSVF, with a spatio regularizer

Supported similarity measures:

  • ssd: sum of squared differences
  • ncc: normalize cross correlation
  • ncc_positive: positive normalized cross-correlation
  • ncc_negative: negative normalized cross-correlation
  • lncc: localized normalized cross correlation (multi-scale)

Supported solvers:

  • embedded RK4
  • torchdiffeq: explicit_adams, fixed_adams, tsit5, dopri5, euler, midpoint, rk4

Optimizer:

  • support single/multi-scale optimizer
  • support SGD, l-BFGS and some limited support for adam

EasyReg

EasyReg is an extension that builds on Mermaid, providing a simple interface to Mermaid and other popluar registration packages.

The currently supported methods include Mermaid-optimization (i.e., optimization-based registration) and Mermaid-network (i.e., deep network-based registration methods using the mermaid deformation models, like SVF, LDDMM, RDMM...). We also added some supports on ANTsPy, NiftyReg and Demons(embedded in SimpleITK).

The EasyReg repository can be found here: https://github.com/uncbiag/easyreg


Gallery

Here are some examples:

Vector Momentum-parameterized Stationary Velocity Field(vSVF): with a temporal-invariant velocity field and a constant regularizer.

vsvf

Large Displacement Diffeo-morphic Metric Mapping (LDDMM): with a spatial-temporal velocity field and a constant regularizer.

lddmm

Region-specific Diffeomorphic Metric Mapping (RDMM): with a spatial-temporal velocity field and a spatial-temporal regularizer.

RDMM with an optimized regularizer

rdmm

RDMM with a pre-defined regularizer

rdmm_predefined


Related work

The first work on deep-learning for non-parametric medical image registration [Yang16] predicted the initial momentum of an LDDMM solution, hence was already able to guarantee diffeomorphic transformations. Because it is based on patch-wise predictions, it can be applied to very large images if needed. This work was extended and extensively analyzed in [Yang17], showing competitive performance with state-of-the-art optimization-based deformable image registration approaches; it also included deep-network models to predict displacement and velocity fields. Follow-up work focused on learning the registration metric [Niethammer19]; jointly learning to predict affine transformations and a nonparametric transformation [Shen19a] (including multi-step approaches and training to encourage symmetric models); as well as extensions of the LDDMM approach to spatio-temporal regularizers (i.e., that move with the deforming images) also within a deep-network approach [Shen19b].

Bibtex entries for this related work can be found here [bibtex] and the citations are listed in the next section.

Bibliography

[Yang16] Fast Predictive Image Registration [pdf] [code]
Xiao Yang, Roland Kwitt, Marc Niethammer. DLMIA 2016.

fast_predictive

[Yang17] Quicksilver: Fast predictive image registration--a deep learning approach [pdf] [code]
Xiao Yang, Roland Kwitt, Martin Styner, Marc Niethammer, NeuroImage 2017.

neuroimage_quicksilver

[Niethammer19] Metric Learning for Image Registration [pdf] [code]
Marc Niethammer, Roland Kwitt, Francois-Xavier Vialard. CVPR 2019.

metric_learning

[Shen19a] Networks for Joint Affine and Non-parametric Image Registration [pdf] [code]
Zhengyang Shen, Xu Han, Zhenlin Xu, Marc Niethammer. CVPR 2019.

avsm

[Shen19b] Region-specific Diffeomorphic Metric Mapping [pdf] [code]
Zhengyang Shen, François-Xavier Vialard, Marc Niethammer. NeurIPS 2019.

rdmm


More Repositories

1

Awesome-Foundation-Models

A curated list of foundation models for vision and language tasks
753
star
2

SimpleClick

SimpleClick: Interactive Image Segmentation with Simple Vision Transformers (ICCV 2023)
Python
206
star
3

mermaid

Image registration using pytorch
Python
177
star
4

easyreg

an image registration/augmentation/segmentation package
Python
164
star
5

shapmagn

shape registration
Python
107
star
6

robot

code for Fast Point Cloud Registration with Optimal Transport
Python
84
star
7

uniGradICON

The official website for uniGradICON: A Foundation Model for Medical Image Registration
Python
63
star
8

SegNext

Rethinking Interactive Image Segmentation with Low Latency, High Quality, and Diverse Prompts (CVPR 2024)
Python
59
star
9

DeepAtlas

Joint Semi-supervised Learning of Image Registration and Segmentation
Python
49
star
10

iSegFormer

iSegFormer: Interactive Image/Volume Segmentation using Vision Transformers (MICCAI 2022)
Python
26
star
11

LTS

Local Temperature Scaling for Probability Calibration
Python
20
star
12

OAI_analysis_2

Image analysis approaches to analyze the OAI magnetic resonance images
Jupyter Notebook
18
star
13

PStrip

PCA Model for Brain Extraction
Python
17
star
14

LiftReg

Official repository for LiftReg: Limited Angle 2D/3D Deformable Registration.
Python
16
star
15

NAISR

NAISR: A 3D Neural Additive Model for Interpretable Shape Representation
Python
15
star
16

Aladdin

Joint Atlas Building and Diffeomorphic Registration Learning with Pairwise Alignment
Python
12
star
17

neuro_shooting

Shooting approaches for deep neural networks
Python
6
star
18

OAI_analysis

OAI image analysis pipeline
Python
5
star
19

ByConstructionICON

Jupyter Notebook
4
star
20

diffusion-3D-discovery

Python
4
star
21

2D3DFluidReg

This is the repository for paper "Fluid Registration Between Lung CT and Stationary Chest Tomosynthesis Images"
Python
3
star
22

pregis

Image registration in the presence of pathology
Python
2
star
23

NePhi

Official repository for NePhi: Neural Deformation Fields for Approximately Diffeomorphic Medical Image Registration (ECCV 2024)
JavaScript
2
star
24

D2-SONATA

Python
2
star
25

MRIS

Python
2
star
26

comp777_code

Code for comp777
Python
1
star
27

UniLMMV

Python
1
star
28

SegGuidedMMReg

Repository for 'Multimodal Image Registration Guided by Few Segmentations from One Modality'
Python
1
star
29

PIANO

Python
1
star
30

GHMM_Long

Python
1
star
31

DSREM

Dynamic Spatial Random Effects Model
Python
1
star
32

mouse_brain_translucence

Jupyter Notebook
1
star