Giter Site home page Giter Site logo

dtya / idla-person-reid Goto Github PK

View Code? Open in Web Editor NEW

This project forked from ptran/idla-person-reid

0.0 2.0 0.0 100 KB

dlib implementation of the "Improved Deep Learning Architecture for Person Re-Identification"

CMake 4.12% C++ 87.65% C 2.40% Cuda 5.83%

idla-person-reid's Introduction

Improved Deep Learning Architecture for Person Re-Identification

This repository implements the network described in An Improved Deep Learning Architecture for Person Re-Identification by Ahmed et al. The main deep learning library used to do this is the dlib machine learning library.

Installation

This code has only been built and tested on Ubuntu 16.04.

  • dlib v19.0+
    • Requirements:
      • C++11-compatible compiler
      • CUDA 7.5 or greater
      • cuDNN v5 or greater
  • CMake v2.8.12+
  • HDF5 v1.8.16+
    • Used for loading the CUHK03 dataset from a MATLAB mat file.

The build is managed using CMake. In order to build this code, open a terminal and enter the following commands.

cd $THIS_REPOSITORY

mkdir build
cd build

cmake .. -DDLIB_DIR=$PATH_TO_DLIB -DGPU_ARCHITECTURE=sm_30
# ccmake . # Set BUILD_TEST to ON for unit testing. dlib flags can also be set here.

make && make install

The DLIB_DIR variable informs CMake where it should look to find dlib. This must be defined as an environment variable or passed into CMake through -DDLIB_DIR.

The optional variable GPU_ARCHITECTURE specifies what compute capability the CUDA code should be built for. By default, this variable is set to sm_30, i.e. a compute capability of 3.0. This flag is only valid if dlib detects CUDA (i.e. DLIB_USE_CUDA=ON).

Details

Pre-processing

Global contrast normalization is applied to each image at the input layer.

Architecture Modifications

  • Each 5x5 convolutional layer, except for the "patch summary features" layer, has been replaced by two 3x3 convolutional layers, with batch normalization after each.
  • Batch normalization was added after the fully connected layer.

Training Modifications

  • Minibatches consist of 128 image pairs, with an even split between positive and negative examples.
  • No hard negative and data augmentation were used for training.

Results

Below is a cumulative match curve (CMC) produced by the network implemented in this repository. The criteria uses the evaluation as described here (repository for Domain Guided Dropout for Person Re-ID).

Currently, only CUHK03 training and testing has been implemented (in cuhk03.cpp).

idla-person-reid's People

Watchers

James Cloos avatar 段廷银 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.