Skip to content
This repository has been archived by the owner on Jul 12, 2018. It is now read-only.
/ FMD.torch Public archive

Full convolution MultiBox Detector ( like SSD) implemented in Torch.

License

Notifications You must be signed in to change notification settings

Teaonly/FMD.torch

Repository files navigation

FCN-MultiBox Detector

FMD ( Full convolution MultiBox Detector ) is a simplified SSD ( https://github.com/weiliu89/caffe/tree/ssd ) with enabling different input sizes. It is just a learning project to master all details of a detector. Code is impllemented in Torch, is very simple and easy to understand.

1. Network

  • VGG16 convoluting image (224x224, or other sizes) to feature layer (14x14x512), just a typical full convolution network.

  • Following feature layer, apply several kernels with different size and shape, such as 2x2, 2x3, 3x3, 2x4 ...

  • Every kernel outputs a class score or a binding box according it's position (in feature layer) and kernel size. These kernels are just sliding windows with different postion and different size.

  • Like SSD, not every predicted box do BP, just some selected ones, (positve and negtive is 1:4).

See model.lua, and boxsampleing.lua

2. Training

2.1 prepare code

In data folder, just see list.sh, filter.py, and makedb.lua. Combing all the info of VOC into a single t7 file.

2.2 training

See makefixed.lua, use fixed 10 layers from VGG16. Then see train.lua, it is very simple. The data batch is build in different threads ( see data_loader.lua and data_process.lua).

3. Detecting

See doDetect.lua. The following is result of random pictures from web.

About

Full convolution MultiBox Detector ( like SSD) implemented in Torch.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published