Self-Supervised CNN-GCN Autoencoder

Overview

GCNDepth

Self-Supervised CNN-GCN Autoencoder

GCNDepth: Self-supervised monocular depth estimation based on graph convolutional network

To be published ...

Setup

Requirements:

  • PyTorch1.2+, Python3.5+, Cuda10.0+
  • mmcv==0.4.4
# this create new conda enviroment to run the model
conda create --name gcndepth python=3.7
conda activate gcndepth

# this installs the right pip and dependencies for the fresh python
conda install ipython
conda install pip

# install required packages from requirements.txt
pip install -r requirements.txt

KITTI training data

Our training data is the same with other self-supervised monocular depth estimation methods, please refer to monodepth2 to prepare the training data.

pretrained weights

We provide weights for GCNDepth

API

We provide an API interface for you to predict depth and pose from an image sequence and visulize some results. They are stored in folder 'scripts'.

eval_pose.py is used to obtain kitti odometry evaluation results.
eval_depth.py is used to obtain kitti depth evaluation results.
infer.py is used to generate depth maps from given models.

Training

You can use following command to launch distributed learning of our model:

python run.py
Comments
  • I got this error even after setting Resnet18 and resnet 50 paths.

    I got this error even after setting Resnet18 and resnet 50 paths.

    capa

    Also, I need to ask what should I place here. In the extractor pretrained path? Capture I placed the pre-trained weights file path here but it didn't work. Thank you in anticipation.

    opened by Affan-Abbas8 6
  • more .pth files needed ?

    more .pth files needed ?

    In the file eval_pose.py (the provided API) there is this path data_path='/media/user/harddisk/data/kitti/Odometry/dataset' and this model path model_path = '/media/user/harddisk/weight/fm_depth.pth' where to get them ? In the pretrained weights section, the Google Drive, actually it's just the epoch_20.pth file. Thanks.

    opened by diraniyoussef 4
  • plz help

    plz help

    thanks for your response. Yes, now I again installed all the requirements and the issue changed now. Here is the screen shot. Plz take a look and let me know about it. 11

    opened by Affan-Abbas8 3
  • The networks used for training model

    The networks used for training model

    Hello, thanks for the excellent work and sharing source codes. I'm working on mono-depth estimation for my robotic project and came across your work online. I saw two papers related to this git repo. one is and second one is . I just quickly skimped through these two papers (not knowing too much details yet), and noticed that these two papers seem using different networks for training models. The 1st paper uses YOLOv5 for both training networks (object detection & depth estimation); while the 2nd paper uses ResNet-50 for object detection and ResNet-18 for depth estimation. Are I correct? My question is what exactly networks are being used in this git repo? Thanks Terry

    opened by Hazeline2018 3
  • autoencoder.pth

    autoencoder.pth

    in file : cfg_kitti_fm.py, line 33: extractor_pretrained_path = '/run/media/armin/DATA/GCNDepth/Models/autoencoder.pth', how can I get the autoencoder.pth? Thanks!

    opened by guogangok 2
  • Confuse robust l1 like l2

    Confuse robust l1 like l2

    Sorry if I wrong, did you mistake about l1 norm? Your "robust l1" look like l2 norm without eps. What effect do you have from eps?

    image

    https://github.com/ArminMasoumian/GCNDepth/blob/9fa77812fa944c2701a45f09acf988815ca50aee/mono/model/mono_fm/net.py#L51

    opened by huynhhoanghuy 1
Owner
null
Project looking into use of autoencoder for semi-supervised learning and comparing data requirements compared to supervised learning.

Project looking into use of autoencoder for semi-supervised learning and comparing data requirements compared to supervised learning.

Tom-R.T.Kvalvaag 2 Dec 17, 2021
The Self-Supervised Learner can be used to train a classifier with fewer labeled examples needed using self-supervised learning.

Published by SpaceML • About SpaceML • Quick Colab Example Self-Supervised Learner The Self-Supervised Learner can be used to train a classifier with

SpaceML 92 Nov 30, 2022
BossNAS: Exploring Hybrid CNN-transformers with Block-wisely Self-supervised Neural Architecture Search

BossNAS This repository contains PyTorch evaluation code, retraining code and pretrained models of our paper: BossNAS: Exploring Hybrid CNN-transforme

Changlin Li 127 Dec 26, 2022
NFT-Price-Prediction-CNN - Using visual feature extraction, prices of NFTs are predicted via CNN (Alexnet and Resnet) architectures.

NFT-Price-Prediction-CNN - Using visual feature extraction, prices of NFTs are predicted via CNN (Alexnet and Resnet) architectures.

null 5 Nov 3, 2022
A tensorflow implementation of GCN-LPA

GCN-LPA This repository is the implementation of GCN-LPA (arXiv): Unifying Graph Convolutional Neural Networks and Label Propagation Hongwei Wang, Jur

Hongwei Wang 83 Nov 28, 2022
A new GCN model for Point Cloud Analyse

Pytorch Implementation of PointNet and PointNet++ This repo is implementation for VA-GCN in pytorch. Classification (ModelNet10/40) Data Preparation D

null 12 Feb 2, 2022
A PyTorch implementation of "Cluster-GCN: An Efficient Algorithm for Training Deep and Large Graph Convolutional Networks" (KDD 2019).

ClusterGCN ⠀⠀ A PyTorch implementation of "Cluster-GCN: An Efficient Algorithm for Training Deep and Large Graph Convolutional Networks" (KDD 2019). A

Benedek Rozemberczki 697 Dec 27, 2022
Spatial Temporal Graph Convolutional Networks (ST-GCN) for Skeleton-Based Action Recognition in PyTorch

Reminder ST-GCN has transferred to MMSkeleton, and keep on developing as an flexible open source toolbox for skeleton-based human understanding. You a

sijie yan 1.1k Dec 25, 2022
Official repository for GCR rerank, a GCN-based reranking method for both image and video re-ID

Official repository for GCR rerank, a GCN-based reranking method for both image and video re-ID

null 53 Nov 22, 2022
[CVPR 2021] "The Lottery Tickets Hypothesis for Supervised and Self-supervised Pre-training in Computer Vision Models" Tianlong Chen, Jonathan Frankle, Shiyu Chang, Sijia Liu, Yang Zhang, Michael Carbin, Zhangyang Wang

The Lottery Tickets Hypothesis for Supervised and Self-supervised Pre-training in Computer Vision Models Codes for this paper The Lottery Tickets Hypo

VITA 59 Dec 28, 2022
Patch Rotation: A Self-Supervised Auxiliary Task for Robustness and Accuracy of Supervised Models

Patch-Rotation(PatchRot) Patch Rotation: A Self-Supervised Auxiliary Task for Robustness and Accuracy of Supervised Models Submitted to Neurips2021 To

null 4 Jul 12, 2021
Unified Pre-training for Self-Supervised Learning and Supervised Learning for ASR

UniSpeech The family of UniSpeech: UniSpeech (ICML 2021): Unified Pre-training for Self-Supervised Learning and Supervised Learning for ASR UniSpeech-

Microsoft 282 Jan 9, 2023
Scripts for training an AI to play the endless runner Subway Surfers using a supervised machine learning approach by imitation and a convolutional neural network (CNN) for image classification

About subwAI subwAI - a project for training an AI to play the endless runner Subway Surfers using a supervised machine learning approach by imitation

null 82 Jan 1, 2023
Group R-CNN for Point-based Weakly Semi-supervised Object Detection (CVPR2022)

Group R-CNN for Point-based Weakly Semi-supervised Object Detection (CVPR2022) By Shilong Zhang*, Zhuoran Yu*, Liyang Liu*, Xinjiang Wang, Aojun Zhou,

Shilong Zhang 129 Dec 24, 2022
Speech Enhancement Generative Adversarial Network Based on Asymmetric AutoEncoder

ASEGAN: Speech Enhancement Generative Adversarial Network Based on Asymmetric AutoEncoder 中文版简介 Readme with English Version 介绍 基于SEGAN模型的改进版本,使用自主设计的非

Nitin 53 Nov 17, 2022
Official Implementation of Swapping Autoencoder for Deep Image Manipulation (NeurIPS 2020)

Swapping Autoencoder for Deep Image Manipulation Taesung Park, Jun-Yan Zhu, Oliver Wang, Jingwan Lu, Eli Shechtman, Alexei A. Efros, Richard Zhang UC

null 449 Dec 27, 2022
Clockwork Variational Autoencoder

Clockwork Variational Autoencoders (CW-VAE) Vaibhav Saxena, Jimmy Ba, Danijar Hafner If you find this code useful, please reference in your paper: @ar

Vaibhav Saxena 35 Nov 6, 2022
VITS: Conditional Variational Autoencoder with Adversarial Learning for End-to-End Text-to-Speech

VITS: Conditional Variational Autoencoder with Adversarial Learning for End-to-End Text-to-Speech Jaehyeon Kim, Jungil Kong, and Juhee Son In our rece

Jaehyeon Kim 1.7k Jan 8, 2023
Implementation for "Manga Filling Style Conversion with Screentone Variational Autoencoder" (SIGGRAPH ASIA 2020 issue)

Manga Filling with ScreenVAE SIGGRAPH ASIA 2020 | Project Website | BibTex This repository is for ScreenVAE introduced in the following paper "Manga F

null 30 Dec 24, 2022