Code Monkey home page Code Monkey logo

lstm-rcnn-pedestrian-detection's Introduction

lstm-rcnn-pedestrian-detection

This repository contains the code supporting my research internship at UC Berkeley for the industrial chair Drive for All (MINES Paristech) and the Berkeley Deep Drive consortium.

My research subject was Pedestrian Detection using Deep Learning methods. Although I didn't have time to get extensive results because of time constraints, the code is in a working state. See below for its structure.

Approach

The approach I explored is primarly based on the Faster R-CNN framework (see here for Python code using caffe).

In their unified neural network, a first part called Region Proposal Network generates proposals for areas of interest, then a classifier generates labels for them.

When focusing on Pedestrian Detection, the classifier becomes redundant because generating proposals is already classifying between 'background' and 'pedestrian'. In this work, I attempt to remove the classifier and train a deeper RPN to cope with the change. This has since been studied in another Microsoft Research paper, yielding good results even with only the RPN.

The other aspect I had planned to investigate was using LSTM units at the output of RPN to include context over time, hopefully improving results. This is not present in this code.

Dataset

My experiments are done on the Caltech Pedestrian Dataset. It is a dataset made of 250k images with pedestrian annoted, freely available. More information can be found on their website.

Code Structure

Code related to handling the dataset (generating input & output from images and annotations) can be found under caltech-dataset/. This include Python code as well as several repositories I used for reading the dataset (see caltech-dataset/README.md).

The vgg16/ folder contains code to convert a pretrained model of the Convolutional Neural Network VGG16, from a caffe format to TensorFlow.

Finally, the main script setting up the neural network, training & logging is region_proposal.py. It can be used train a model with parameters in caltech-dataset/caltech.py, saving every few epochs. It can also generate results in the expected format for the Caltech Dataset MATLAB code evaluation from the trained model.

lstm-rcnn-pedestrian-detection's People

Contributors

buffer51 avatar

Stargazers

Rickey.Wang avatar

Watchers

James Cloos 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.