Giter Site home page Giter Site logo

eisen's Introduction

EISEN

This repository contains the official implementation for the paper "Unsupervised Segmentation in Real-World Images via Spelke Object Inference" (ECCV 2022 Oral).

teaser image

Paper: https://arxiv.org/abs/2205.08515
Project website: https://neuroailab.github.io/eisen/
Authors: Honglin Chen, Rahul Venkatesh, Yoni Friedman, Jiajun Wu, Joshua B. Tenenbaum, Daniel L. K. Yamins, Daniel M. Bear from Stanford University and MIT.

Environment

We have tested our code using Pytorch 1.11 and CUDA 11.3. We recommend installation using Conda. Please make sure you have NVIDIA drivers supporting CUDA 11.3, or modify the version in `environment.yml.

conda env create -f environment.yml
conda activate eisen

Dataset

To train the model on the ThreeWorld Playroom dataset (28G), please download the dataset and unzip it using the following command:

cd datasets
wget https://www.dropbox.com/s/wsogq49q7r53vhw/Playroom.zip
unzip Playroom.zip

Training

The training script can be run using the following command. The training takes about 1 day on 4 RTX 3090 GPUs.

python main.py --dataset playroom --batch_size 8

Evaluation

You can evaluate a training model using the following command:

python main.py --dataset playroom --barch_size 1 --eval_only --ckpt /path/to/checkpoint

TODO

  • Support for training on Bridge dataset (coming soon)

Bibtex

@article{chen2022unsupervised,
  title={Unsupervised Segmentation in Real-World Images via Spelke Object Inference},
  author={Chen, Honglin and Venkatesh, Rahul and Friedman, Yoni and Wu, Jiajun and Tenenbaum, Joshua B
  and Yamins, Daniel LK and Bear, Daniel M},
  journal={arXiv preprint arXiv:2205.08515},
  year={2022}
}

Acknowledgement

Our framework uses RAFT for computing optical flow from videos. Code related to connected component algorithm is adapted from Connected_components_Pytorch. Some code related to synchronized batch normalization is adpated from sync_batchnorm.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.