Code Monkey home page Code Monkey logo

ubernet's Introduction

Intro

First release of UberNet in "test" mode. The demo performs all of the UberNet tasks using a VGG16-architecture network.

This repository builds on the py-faster-rcnn (https://github.com/rbgirshick/py-faster-rcnn) release of faster-rcnn, which in turn builds on the caffe library. The py-faster-rcnn instructions directly allow one to compile the present code (copied below for convenience). The main changes to the original py-faster-rcnn release have been annotated with a prefix and a suffix.

Forthcoming:

  • code that allows to get normalized cut eigenvectors from image boundaries.
  • training code.
  • ResNet-based models.

License

UberNet is released under the GPL License (refer to the UberNet-LICENSE file for details). Faster-RCNN is released under the MIT License (refer to the Faster-RCNN-LICENSE file for details).

Citing UberNet

If you find UberNet useful in your research, please consider citing: @inproceedings{ubernet, Author = {Iasonas Kokkinos}, Title = {UberNet: Training a `Universal' Convolutional Neural Network for Low-, Mid-, and High-Level Vision using Diverse Datasets and Limited Memory}, Booktitle = {Computer Vision and Pattern Recognition (CVPR)}, Year = {2017} }

Contents

  1. Requirements: software
  2. Requirements: hardware
  3. Basic installation
  4. Demo

Requirements: software

  1. Requirements for Caffe and pycaffe (see: Caffe installation instructions)

Note: Caffe must be built with support for Python layers!

# In your Makefile.config, make sure to have this line uncommented
WITH_PYTHON_LAYER := 1
# Unrelatedly, it's also recommended that you use CUDNN
USE_CUDNN := 1

You can download my Makefile.config for reference. 2. Python packages you might not have: cython, python-opencv, easydict

Requirements: hardware

You will need a GPU to run the code (does not work in CPU-only mode). The present code is memory-efficient in the forward pass, but you may modify the .prototxt file to further reduce memory usage (please consult the paper, ubernet/test.prototxt and net.cpp to understand how the "deletetop", "deletebottom" variables are used)

Installation (sufficient for the demo)

  1. Clone the UberNet repository
git clone https://github.com/jkokkin/UberNet.git
  1. We'll call the directory that you cloned UberNet into UBERNET_ROOT

  2. Build the Cython modules

    cd $UBERNET_ROOT/lib
    make
  3. Build Caffe and pycaffe

    cd $UBERNET_ROOT/caffe-fast-rcnn
    # Now follow the Caffe installation instructions here:
    #   http://caffe.berkeleyvision.org/installation.html
    
    # If you're experienced with Caffe and have all of the requirements installed
    # and your Makefile.config in place, then simply do:
    make -j8 && make pycaffe
  4. Download a trained UberNet model from here: https://www.dropbox.com/s/fbeg10aoicn4wc4/model.caffemodel?dl=0 and place it under $UBERNET_ROOT/model

Demo

To run the demo

cd $UBERNET_ROOT
./demo/demo_ubernet.py

ubernet's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

ubernet's Issues

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.