All Projects → moabarar → nemar

moabarar / nemar

Licence: other
[CVPR2020] Unsupervised Multi-Modal Image Registration via Geometry Preserving Image-to-Image Translation

Programming Languages

python
139335 projects - #7 most used programming language
shell
77523 projects
matlab
3953 projects

Projects that are alternatives of or similar to nemar

Stargan V2
StarGAN v2 - Official PyTorch Implementation (CVPR 2020)
Stars: ✭ 2,700 (+2150%)
Mutual labels:  image-to-image-translation, cvpr2020
OASIS
Official implementation of the paper "You Only Need Adversarial Supervision for Semantic Image Synthesis" (ICLR 2021)
Stars: ✭ 232 (+93.33%)
Mutual labels:  multi-modal, image-to-image-translation
TRAR-VQA
[ICCV 2021] TRAR: Routing the Attention Spans in Transformers for Visual Question Answering -- Official Implementation
Stars: ✭ 49 (-59.17%)
Mutual labels:  multi-modal, multi-modal-learning
lipnet
LipNet with gluon
Stars: ✭ 16 (-86.67%)
Mutual labels:  multimodal
FastMVSNet
[CVPR'20] Fast-MVSNet: Sparse-to-Dense Multi-View Stereo With Learned Propagation and Gauss-Newton Refinement
Stars: ✭ 193 (+60.83%)
Mutual labels:  cvpr2020
FAIR.m
Flexible Algorithms for Image Registration
Stars: ✭ 103 (-14.17%)
Mutual labels:  image-registration
GTSRB Keras STN
German Traffic Sign Recognition Benchmark, Keras implementation with Spatial Transformer Networks
Stars: ✭ 48 (-60%)
Mutual labels:  stn
nightlight
Nightlight: Astronomic Image Processing
Stars: ✭ 25 (-79.17%)
Mutual labels:  image-registration
SASHIMI
SASHIMI segmentation is a Matlab App for semi-automatic interactive segmentation of multi-slice images.
Stars: ✭ 15 (-87.5%)
Mutual labels:  image-registration
RNiftyReg
An R interface to the NiftyReg medical image registration library
Stars: ✭ 32 (-73.33%)
Mutual labels:  image-registration
ViT-V-Net for 3D Image Registration Pytorch
Vision Transformer for 3D medical image registration (Pytorch).
Stars: ✭ 169 (+40.83%)
Mutual labels:  image-registration
EGSC-IT
Tensorflow implementation of ICLR2019 paper "Exemplar Guided Unsupervised Image-to-Image Translation with Semantic Consistency"
Stars: ✭ 29 (-75.83%)
Mutual labels:  multi-modal
claire
Constrained Large Deformation Diffeomorphic Image Registration (CLAIRE)
Stars: ✭ 30 (-75%)
Mutual labels:  image-registration
CVPR-2020-point-cloud-analysis
CVPR 2020 papers focusing on point cloud analysis
Stars: ✭ 48 (-60%)
Mutual labels:  cvpr2020
Deep-multimodal-subspace-clustering-networks
Tensorflow implementation of "Deep Multimodal Subspace Clustering Networks"
Stars: ✭ 62 (-48.33%)
Mutual labels:  multimodal
art2real
Art2Real: Unfolding the Reality of Artworks via Semantically-Aware Image-to-Image Translation. CVPR 2019
Stars: ✭ 71 (-40.83%)
Mutual labels:  image-to-image-translation
MotionNet
CVPR 2020, "MotionNet: Joint Perception and Motion Prediction for Autonomous Driving Based on Bird's Eye View Maps"
Stars: ✭ 141 (+17.5%)
Mutual labels:  cvpr2020
Lucas-Kanade-Tracker
Implementation of Lucas Kanade Tracking system using six parameter affine model and recursive Gauss-Newton process.
Stars: ✭ 30 (-75%)
Mutual labels:  affine-transformation
iMIX
A framework for Multimodal Intelligence research from Inspur HSSLAB.
Stars: ✭ 21 (-82.5%)
Mutual labels:  multimodal
UPIT
A fastai/PyTorch package for unpaired image-to-image translation.
Stars: ✭ 94 (-21.67%)
Mutual labels:  image-to-image-translation

NeMAR - Neural Multimodal Adversarial Registration

This is the official implementation of:
Unsupervised Multi-Modal Image Registration via Geometry Preserving Image-to-Image Translation.

[Paper] [Supplemental Materials]

missing
Registration output during 50 training epochs

Getting started

This repository is based on the implementation of Pix2pix. We recommened getting yourself familiar with the former framework. Here we provide a basic guidline on how to use our code.


(Step 1) Preparing your data

You need to implement your own dataset. The dataset should implement the template proivded by in base_dataset.py. Invoking 'getitem' of your dataset should return the following template dictionay:

{'A': tensor_image_modality_a,
 'B': tensor_image_modality_b}

Where tensor_image_modality_[a/b] is the tensor of the image from modality A and modality B respectively.
The name convention use is [whatever-name-you-want]_dataset.py - this is important in order to be able to define your dataset using strings.


(Step 2) Train NeMAR model

Here we provide a list of flags that could be used during the training of our model. The flags are categorized into STN related flags and general training flags

  • --stn_type: train an affine based registration ('affine') or a deformation field based registration network ('unet').
  • --stn_cfg: you can define the network architecture via a configuration string (default is 'A'). See example configuration in unet_stn.py and in affine_stn.py.
  • --stn_no_identity_init: set if you WANT to start with a random transformation.
  • --stn_bilateral_alpha: the alpha value used in the bilateral filtering term (see paper).

Training related flags (beside the base flags used by Pix2Pix/CycleGAN):

  • --multi_res: you can train NeMAR with multi-resoultion discriminators (similar to pix2pixHD). We believe this could be use-full when working with high-resolution images.
  • --lambda_smooth: the lambda used for the regularization term of the stn.
  • --lambda_recon: the lambda used for the reconstruction loss.
  • --lambda_GAN: the lambda used for the GAN loss

Enabling Tensorboard

We provide an option to write training stats using tensorboard. To enable tensorboard visualizer, you need to set the flag --enable_tbvis. This will create a tensboard log-file in the directory "<checkpoints_dir>/<exp_name>/<exp_name>_tensorboard_logs". The tensorboard visualizer class reports (1) mean transformation offsets in x,y direction, (2) network weights, (3) losses. These values are written to tensorboard logfile each epoch. The following flags can be used when tbvis is enabled

  • --tbvis_iteration_update_rate if you want to write in iteration resolution set --tbvis_iteration_update_rate to positive number.
  • --tbvis_disable_report_offsets: set if you don't want to save the mean transformation offsets.
  • --tbvis_disable_report_weights: set if you don't want to save the network weights.

Citation

If you use this repository - please cite:

@InProceedings{Arar_2020_CVPR,
author = {Arar, Moab and Ginger, Yiftach and Danon, Dov and Bermano, Amit H. and Cohen-Or, Daniel},
title = {Unsupervised Multi-Modal Image Registration via Geometry Preserving Image-to-Image Translation},
booktitle = {IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR)},
month = {June},
year = {2020}
}

Since this repository is based on Pix2Pix & CycleGan framework - make sure you cite these two awesome papers:

@inproceedings{CycleGAN2017,
 title={Unpaired Image-to-Image Translation using Cycle-Consistent Adversarial Networkss},
 author={Zhu, Jun-Yan and Park, Taesung and Isola, Phillip and Efros, Alexei A},
 booktitle={Computer Vision (ICCV), 2017 IEEE International Conference on},
 year={2017}
 }


@inproceedings{isola2017image,
 title={Image-to-Image Translation with Conditional Adversarial Networks},
 author={Isola, Phillip and Zhu, Jun-Yan and Zhou, Tinghui and Efros, Alexei A},
 booktitle={Computer Vision and Pattern Recognition (CVPR), 2017 IEEE Conference on},
 year={2017}
}
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].