All Projects → ignacio-rocco → Ncnet

ignacio-rocco / Ncnet

Licence: mit
PyTorch code for Neighbourhood Consensus Networks

Projects that are alternatives of or similar to Ncnet

Criteo 1tb Benchmark
Benchmark of different ML algorithms on Criteo 1TB dataset
Stars: ✭ 127 (-0.78%)
Mutual labels:  jupyter-notebook
Celegansneuroml
NeuroML based C elegans model, contained in a neuroConstruct project, as well as c302
Stars: ✭ 127 (-0.78%)
Mutual labels:  jupyter-notebook
Chinese Chatbot
中文聊天机器人,基于10万组对白训练而成,采用注意力机制,对一般问题都会生成一个有意义的答复。已上传模型,可直接运行,跑不起来直播吃键盘。
Stars: ✭ 124 (-3.12%)
Mutual labels:  jupyter-notebook
Cs231a
Computer Vision: From 3D Reconstruction to Recognition
Stars: ✭ 126 (-1.56%)
Mutual labels:  jupyter-notebook
Data science
daily curated links in DS, DL, NLP, ML
Stars: ✭ 127 (-0.78%)
Mutual labels:  jupyter-notebook
Blog
Public repo for HF blog posts
Stars: ✭ 126 (-1.56%)
Mutual labels:  jupyter-notebook
Algorithms Illuminated
My notes for Tim Roughgarden's awesome course on Algorithms and his 4 part books
Stars: ✭ 127 (-0.78%)
Mutual labels:  jupyter-notebook
Insightface Just Works
Insightface face detection and recognition model that just works out of the box.
Stars: ✭ 127 (-0.78%)
Mutual labels:  jupyter-notebook
Jupyter notebooks
Collection of jupyter notebooks
Stars: ✭ 127 (-0.78%)
Mutual labels:  jupyter-notebook
Robust Detection Benchmark
Code, data and benchmark from the paper "Benchmarking Robustness in Object Detection: Autonomous Driving when Winter is Coming" (NeurIPS 2019 ML4AD)
Stars: ✭ 128 (+0%)
Mutual labels:  jupyter-notebook
Ml hacks
Приёмы в машинном обучении
Stars: ✭ 128 (+0%)
Mutual labels:  jupyter-notebook
Colour Demosaicing
CFA (Colour Filter Array) Demosaicing Algorithms for Python
Stars: ✭ 127 (-0.78%)
Mutual labels:  jupyter-notebook
Ipycytoscape
A Cytoscape Jupyter widget
Stars: ✭ 128 (+0%)
Mutual labels:  jupyter-notebook
Sandbox
Play time!
Stars: ✭ 127 (-0.78%)
Mutual labels:  jupyter-notebook
Doodlenet
A doodle classifier(CNN), trained on all 345 categories from Quickdraw dataset.
Stars: ✭ 128 (+0%)
Mutual labels:  jupyter-notebook
Introdatascience
Notes on Data Science. 数理统计、机器学习和数据编程的学习笔记。
Stars: ✭ 127 (-0.78%)
Mutual labels:  jupyter-notebook
Graf
Official code release for "GRAF: Generative Radiance Fields for 3D-Aware Image Synthesis"
Stars: ✭ 127 (-0.78%)
Mutual labels:  jupyter-notebook
Multimodal Speech Emotion
TensorFlow implementation of "Multimodal Speech Emotion Recognition using Audio and Text," IEEE SLT-18
Stars: ✭ 128 (+0%)
Mutual labels:  jupyter-notebook
Rasa Ptbr Boilerplate
Um template para criar um FAQ chatbot usando Rasa, Rocket.chat, elastic search
Stars: ✭ 128 (+0%)
Mutual labels:  jupyter-notebook
Focal Loss Pytorch
全中文注释.(The loss function of retinanet based on pytorch).(You can use it on one-stage detection task or classifical task, to solve data imbalance influence).用于one-stage目标检测算法,提升检测效果.你也可以在分类任务中使用该损失函数,解决数据不平衡问题.
Stars: ✭ 126 (-1.56%)
Mutual labels:  jupyter-notebook

Neighbourhood Consensus Networks

About

This is the implementation of the paper "Neighbourhood Consensus Networks" by I. Rocco, M. Cimpoi, R. Arandjelović, A. Torii, T. Pajdla and J. Sivic.

For more information check out the project [website] and the paper on [arXiv].

Getting started

Dependencies

The code is implemented using Python 3 and PyTorch 0.3. All dependencies should be included in the standard Anaconda distribution.

Getting the datasets

The PF-Pascal dataset can be downloaded and unzipped by browsing to the datasets/pf-pascal/ folder and running download.sh.

The IVD dataset (used for training for the InLoc benchmark) can be downloaded by browsing to the datasets/ivd/ folder and first running make_dirs.sh and then download.sh.

The InLoc dataset (used for evaluation) an be downloaded by browsing to the datasets/inloc/ folder and running download.sh.

Getting the trained models

The trained models trained on PF-Pascal (ncnet_pfpascal.pth.tar) and IVD (ncnet_ivd.pth.tar) can be dowloaded by browsing to the trained_models/ folder and running download.sh.

Keypoint transfer demo

The demo Jupyter notebook file point_transfer_demo.py illustrates how to evaluate the model and use it for keypoint transfer on the PF-Pascal dataset. For this, previously download the PF-Pascal dataset and trained model as indicated above.

Training

To train a model, run train.py with the desired model architecture and the path to the training dataset.

Eg. For PF-Pascal:

python train.py --ncons_kernel_sizes 5 5 5 --ncons_channels 16 16 1 --dataset_image_path datasets/pf-pascal --dataset_csv_path datasets/pf-pascal/image_pairs/ 

Eg. For InLoc:

python train.py --ncons_kernel_sizes 3 3 --ncons_channels 16 1 --dataset_image_path datasets/ivd --dataset_csv_path datasets/ivd/image_pairs/ 

Evaluation

Evaluation for PF-Pascal is implemented in the eval_pf_pascal.py file. You can run the evaluation in the following way:

python eval_pf_pascal.py --checkpoint trained_models/[checkpoint name]

Evaluation for InLoc is implemented in the eval_inloc.py file. You can run the evaluation in the following way:

python eval_inloc.py --checkpoint trained_models/[checkpoint name]

This will generate a series of matches files in the matches/ folder that then need to be fed to the InLoc evaluation Matlab code. In order to run the Matlab evaluation, you first need to clone the InLoc demo repo, and download and compile all the required depedencies. Then you can modify the compute_densePE_NCNet.m file provided in this repo to indicate the path of the InLoc demo repo, and the name of the experiment (the particular folder name inside matches/), and run it to perform the evaluation.

BibTeX

If you use this code in your project, please cite our paper:

@InProceedings{Rocco18b,
        author       = "Rocco, I. and Cimpoi, M. and Arandjelovi\'c, R. and Torii, A. and Pajdla, T. and Sivic, J."
        title        = "Neighbourhood Consensus Networks",
        booktitle    = "Proceedings of the 32nd Conference on Neural Information Processing Systems",
        year         = "2018",
        }
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].