GithubHelp home page GithubHelp logo

soltrinox / romans_stack Goto Github PK

View Code? Open in Web Editor NEW

This project forked from kevinlisun/romans_stack

0.0 1.0 0.0 61.81 MB

This is the Vision System (Object Dection & Recognition) for EU H2020 project RoMaNs

CMake 0.54% C++ 11.91% Shell 0.01% Python 12.10% MATLAB 70.92% Objective-C 0.38% HTML 2.88% M 0.13% C 0.73% Objective-C++ 0.06% XSLT 0.30% CSS 0.05%

romans_stack's Introduction

A Brief Description

  • odr: object detection and recognition framework.
  • camera: camera simulator and configurations.
  • dcnn: Deep Convolutional Neural Network architectures and training scripts.
  • matlab_toobox: matlab scripts for data pre-processing.

Prerequsites

  • If you just want to run the demo.

    Install caffe and pycaffe: http://caffe.berkeleyvision.org/install_apt.html

  • If you also want to run our live demo.

    In this implementation, MS kinect v2 is used unde Ubuntu through iai kinect2 package, so install iai_kinect2 following their instructions : https://github.com/code-iai/iai_kinect2 .

  • If you also want to train the models from the scrach.

    Install GPy (http://sheffieldml.github.io/GPy/):

    $ sudo pip install --upgrade pip
    $ sudo pip install GPy
    
  • If you also want to do comprision experiments using R-CNN.

    Install SVM and Python interface: https://www.csie.ntu.edu.tw/~cjlin/libsvm/ .

    $ cd ~
    $ git clone https://github.com/cjlin1/libsvm.git
    $ cd libsvm & make & cd python & make
    

    Add libsvm to the python path:

    $ export PYTHONPATH=/home/kevin/libsvm/python:$PYTHONPATH
    

Dependencies:

Install romans_stack

  1. Create a catkin workspace:
$ mkdir ~/catkin_ws/src
$ cd ~/catkin_ws/src
  1. Create .rosinstall file and copy the followings:
- git: {local-name: romans_stack, uri: 'https://github.com/sunliamm/romans_stack', version: master}
- git: {local-name: iai_kinect2, uri: 'https://github.com/code-iai/iai_kinect2', version: master}
  1. Clone the repositories:
$ wstool update
$ rosdep install --from-paths src --ignore-src -r -y
$ cd ..
  1. Compile:
$ catkin_make -DCMakeType=RELEASE
  1. Add ROS workspace to the environment.

add source ~/catkin_ws/devel/setup.bash to ~/.bashrc

Run the Demo

Download the demo data (demo.rosbag file) and the trained caffe model (deploy.proto, romans_model_fast.caffemodel) from: https://drive.google.com/open?id=0B0jMesRKPfw9MGM4ekxiV2M1RWs This demo assumes you download the 'romans' folder and put it under home directory (cd ~), change the directory depending your situation.

  1. Get RGBD stream from rosbag .
$ roslaunch camera kinect2_simulator.launch
$ cd ~/romans/data & rosbag play --clock demo.bag

Or get RGBD stream from kinect2

$ roslaunch camera kinect2.launch
  1. Run detection node .
$ rosrun odr detection_server_kinect2
  1. Run recognition node .
$ rosrun odr inference_end2end.py /home/your_username/romans/models/fast
  1. Run visualization node .
$ rosrun odr visualization_server
  1. Run the client .
$ rosrun odr odr_test.py kinect2

Programming Style

This implementation is following:

ROS C++ style: http://wiki.ros.org/CppStyleGuide

Python REP8 style: http://www.ros.org/reps/rep-0008.html

Reference

Li Sun, Cheng Zhao, Rustam Stolkin. Weakly-supervised DCNN for RGB-D Object Recognition in Real-World Applications Which Lack Large-scale Annotated Training Data. ArXiv

romans_stack's People

Contributors

kevinlisun avatar

Watchers

 avatar

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.