All Projects → jason718 → game-feature-learning

jason718 / game-feature-learning

Licence: other
Code for paper "Cross-Domain Self-supervised Multi-task Feature Learning using Synthetic Imagery", Ren et al., CVPR'18

Programming Languages

python
139335 projects - #7 most used programming language
matlab
3953 projects
C++
36643 projects - #6 most used programming language

Projects that are alternatives of or similar to game-feature-learning

Transferlearning
Transfer learning / domain adaptation / domain generalization / multi-task learning etc. Papers, codes, datasets, applications, tutorials.-迁移学习
Stars: ✭ 8,481 (+12372.06%)
Mutual labels:  representation-learning, domain-adaptation
VisDA2020
VisDA2020: 4th Visual Domain Adaptation Challenge in ECCV'20
Stars: ✭ 53 (-22.06%)
Mutual labels:  domain-adaptation, synthetic-data
pytorch-dann
A PyTorch implementation for Unsupervised Domain Adaptation by Backpropagation
Stars: ✭ 110 (+61.76%)
Mutual labels:  domain-adaptation
Clustering-Datasets
This repository contains the collection of UCI (real-life) datasets and Synthetic (artificial) datasets (with cluster labels and MATLAB files) ready to use with clustering algorithms.
Stars: ✭ 189 (+177.94%)
Mutual labels:  synthetic-data
information-dropout
Implementation of Information Dropout
Stars: ✭ 36 (-47.06%)
Mutual labels:  representation-learning
speckle2void
Speckle2Void: Deep Self-Supervised SAR Despeckling with Blind-Spot Convolutional Neural Networks
Stars: ✭ 31 (-54.41%)
Mutual labels:  self-supervised
ExCon
ExCon: Explanation-driven Supervised Contrastive Learning
Stars: ✭ 17 (-75%)
Mutual labels:  representation-learning
table-evaluator
Evaluate real and synthetic datasets with each other
Stars: ✭ 44 (-35.29%)
Mutual labels:  synthetic-data
Three-Filters-to-Normal
Three-Filters-to-Normal: An Accurate and Ultrafast Surface Normal Estimator (RAL+ICRA'21)
Stars: ✭ 41 (-39.71%)
Mutual labels:  synthetic-data
MSF
Official code for "Mean Shift for Self-Supervised Learning"
Stars: ✭ 42 (-38.24%)
Mutual labels:  representation-learning
ganslate
Simple and extensible GAN image-to-image translation framework. Supports natural and medical images.
Stars: ✭ 17 (-75%)
Mutual labels:  domain-adaptation
Natural-language-understanding-papers
NLU: domain-intent-slot; text2SQL
Stars: ✭ 77 (+13.24%)
Mutual labels:  domain-adaptation
gnn-lspe
Source code for GNN-LSPE (Graph Neural Networks with Learnable Structural and Positional Representations), ICLR 2022
Stars: ✭ 165 (+142.65%)
Mutual labels:  representation-learning
proto
Proto-RL: Reinforcement Learning with Prototypical Representations
Stars: ✭ 67 (-1.47%)
Mutual labels:  representation-learning
rl singing voice
Unsupervised Representation Learning for Singing Voice Separation
Stars: ✭ 18 (-73.53%)
Mutual labels:  representation-learning
autoencoders tensorflow
Automatic feature engineering using deep learning and Bayesian inference using TensorFlow.
Stars: ✭ 66 (-2.94%)
Mutual labels:  representation-learning
State-Representation-Learning-An-Overview
Simplified version of "State Representation Learning for Control: An Overview" bibliography
Stars: ✭ 32 (-52.94%)
Mutual labels:  representation-learning
Robotics-Object-Pose-Estimation
A complete end-to-end demonstration in which we collect training data in Unity and use that data to train a deep neural network to predict the pose of a cube. This model is then deployed in a simulated robotic pick-and-place task.
Stars: ✭ 153 (+125%)
Mutual labels:  synthetic-data
transfer-learning-algorithms
Implementation of many transfer learning algorithms in Python with Jupyter notebooks
Stars: ✭ 42 (-38.24%)
Mutual labels:  domain-adaptation
BIFI
[ICML 2021] Break-It-Fix-It: Unsupervised Learning for Program Repair
Stars: ✭ 74 (+8.82%)
Mutual labels:  domain-adaptation

game-feature-learning

[Project] [Paper]

If you feel this useful, please consider cite:

@inproceedings{ren-cvpr2018,
  title = {Cross-Domain Self-supervised Multi-task Feature Learning using Synthetic Imagery},
  author = {Ren, Zhongzheng and Lee, Yong Jae},
  booktitle = {IEEE Conference on Computer Vision and Pattern Recognition (CVPR)},
  year = {2018}
}

Feel free to contact Jason Ren ([email protected]) if you have any questions!

Prerequisites

  • Pytorch-0.4 (some evaluation code borrowed from other places requiring Caffe)
  • Python2 (One evaluation code requiring Python3)
  • NVIDIA GPU + CUDA CuDNN (Sorry no CPU version)

Getting Started

Installation

  • Install PyTorch 0.4 and torchvision from http://pytorch.org
  • Python packages
    • torchvision
    • numpy
    • opencv
    • tensorflow (necesary for the use of tensorboard. Will change it to tensorboardX)
    • scikit-image
  • Clone this repo:
git clone https://github.com/jason718/game-feature-learning
cd game-feature-learning
  • Change the config files under configs.

Pre-trained models:

  • Caffemodel(Caffenet): Coming in second update
  • Pytorch model: Coming in second update

Since I greatly changed the code structure, I am retraining using the new code to reproduce the paper results.

Dataset:

  • SUNCG: Download the SUNCG images from suncg website. And make sure to put the files as the following structure:

        suncg_image
        ├── depth
           ├── room_id1
           ├── ...
        ├── normal
           ├── room_id1
           ├── ...
        ├── edge
           ├── room_id1
           ├── ...
        └── lab
            ├── room_id1
            ├── ...
    
  • SceneNet: Download the SceneNet images from scenenet website. And make sure to put the files as the following structure:

        scenenet_image
        └── train
           ├── 1
           ├── 2
           ├── ...
    

    Please check scripts/surface_normals_code to generate surface normals from depth maps.

  • Dataset For Domain Adaptation:

    • Places-365: Download the Places images from places website.
    • Or you can choose other dataset for DA such ImageNet...

Train/Test

  • Train a model:
sh ./scripts/train.sh
  • Evaluate on feature learning

    • Read each README.md under folder "eval-3rd-party"
  • Evaluate on three tasks

    • Coming in Third Update

Useful Resources

There are lots of awesome papers studying self-supervision for various tasks such as Image/Video Representation learning, Reinforcement learning, and Robotics. I am maintaining a paper list [awesome-self-supervised-learning] on Github. You are more than welcome to contribute and share :)

Supervised Learning is awesome but limited. Un-/Self-supervised learning generalizes better and sometimes also works better (which is already true in some geometry tasks)!

Acknowledgement

This work was supported in part by the National Science Foundation under Grant No. 1748387, the AWS Cloud Credits for Research Program, and GPUs donated by NVIDIA. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation.

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].