yiran-THU / MobileNet-SSD-windows

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Windows Caffe

**This is an experimental, fixed some bugs from https://github.com/runhang/caffe-ssd-windows and I add following items into project

  1. Support MobileNetV2 (source from MobileNetv2-SSDLite )
  2. Support yolov2 loss layer (source from my git caffe-yolov2-windows)
  3. Rplace group convolution layer from depthwise layer , speed 4x up faster with group convolution

Linux Version

MobileNet-SSD-linux

Windows Setup

Requirements

  • Visual Studio 2013 or 2015
  • CMake 3.4 or higher (Visual Studio and Ninja generators are supported)
  • Anaconda

Optional Dependencies

  • Python for the pycaffe interface. Anaconda Python 2.7 or 3.5 x64 (or Miniconda)
  • Matlab for the matcaffe interface.
  • CUDA 7.5 or 8.0 (use CUDA 8 if using Visual Studio 2015)
  • cuDNN v5

We assume that cmake.exe and python.exe are on your PATH.

Configuring and Building Caffe (CPU Only)

Create a python2.7 env from Anaconda and activate

> cd $caffe_root/script
> build_win.cmd

For Visual 2013

Edit build_win.cmd and set varible MSVC_VERSION=12

For GPU

config build_win.cmd and set CPU_Only flag to 0

Running Caffe

Download SSD_300x300 deploy model and save at

$caffe_root\models\VGGNet\VOC0712\SSD_300x300\

Download deploy weights from original web and save at

$caffe_root\models\MobileNet\

> cd $caffe_root/
> dectect.cmd

Python Usage

> cd $caffe_root
> python examples\ssd\test_ssd.py data\VOC0712\000166.jpg models\MobileNet\MobileNetSSD_deploy.prototxt models\MobileNet\MobileNetSSD_deploy.caffemodel

If load success , you can see the image window like this

alt tag

Optional detector

Set detect.cmd varible "detector" (0,1) to switch VGG or MobileNet

Trainning Prepare

Download lmdb

Unzip into $caffe_root/

Please check the path exist "$caffe_root\examples\VOC0712\VOC0712_trainval_lmdb"

Trainning VGG_SSD Caffe

Download SSD_300x300 pretrain weights and save at

$caffe_root\models\VGGNet\

> cd $caffe_root/
> train.cmd

Trainning Mobilenet_V1_SSD

Download pre-train weights from original web and save at

$caffe_root\models\MobileNet\

> cd $caffe_root/
> train_mobilenet.cmd

Trainning Mobilenet_V2_SSD

> cd $caffe_root/
> train_mobilenet_v2.cmd

Trainning MobilenetYOLO_V2

> cd $caffe_root/
> train_yolo.cmd

Trainning own dataset and deploy MobilentSSD_V1

follow this project step

MobilenetYOLO_V2 Demo

> cd $caffe_root/
> demo_yolo.cmd

alt tag

Video Demo

> cd $caffe_root/
> demo.cmd or demov2.cmd (MobilenetSSD_V2)

MobilnetSSD

IMAGE ALT TEXT HERE

MobilnetSSD_V2

IMAGE ALT TEXT HERE

Webcam Demo

> cd $caffe_root/
> demo_webcam.cmd

Vehicle deploy model

CLASS NAME

char* CLASSES2[6] = { "__background__","bicycle", "car", "motorbike", "person","cones" };

Model and Weights MobilnetSSD_V1

weights

model

Vehicle detection using MobilnetSSD_V2

> cd $caffe_root/
> demo.cmd or demov2_custom.cmd 

Demo Video MobilnetSSD_V1

IMAGE ALT TEXT HERE

Demo Video MobilnetSSD_V2

IMAGE ALT TEXT HERE

Demo Video MobilenetYOLO_V2

> cd $caffe_root/
> demo_yolo_custom.cmd

IMAGE ALT TEXT HERE

See also

Labeling tool with MobileNet-SSD

AutoLabelImg

IMAGE ALT TEXT HERE

About

License:Other


Languages

Language:C++ 82.1%Language:Python 7.8%Language:Cuda 5.1%Language:CMake 3.2%Language:MATLAB 0.6%Language:Makefile 0.5%Language:Batchfile 0.5%Language:Shell 0.3%