Skip to content

ntubiolin/DSNPyramidbox

 
 

Repository files navigation

PyramidBox: A Context-assisted Single Shot Face Detector.##

A PyTorch Implementation of PyramidBox

Description

I train pyramidbox with pytorch and the result approaches the original paper result,the pretrained model can be downloaded in vgg,the final model can be downloaded in Pyramidbox.the AP in WIDER FACE as following:

Easy MAP Medium MAP hard MAP
origin paper 0.960 0.948 0.888
this repo 0.948 0.938 0.880

the AP in AFW,PASCAL,FDDB as following:

AFW PASCAL FDDB
99.65 99.02 0.983

the gap is small with origin paper,I train 120k batch_size 4 which is different from paper,which maybe cause the gap,if you have more gpu ,the final result maybe better.

Requirement

  • pytorch 0.3
  • opencv
  • numpy
  • easydict

Prepare data

  1. download WIDER face dataset
  2. modify data/config.py
  3. python prepare_wider_data.py

Prepare data for DarkFace

  1. Download DarkFace face dataset.
  2. Modify _C.HOME in data/config.py Make sure you have df_wider_face_train_bbx_gt.txt df_wider_face_val_bbx_gt.txt df_wider_face_test_bbx_gt.txt under your _C.HOME (You can copy these 3 file from cml5:/tmp3/biolin/cvprw_llfd/DarkFace_Train/df_wider_face_xxx_bbx_gt.txt)
  3. python prepare_df_data.py

Train

python train.py --batch_size 4  
		--lr 5e-4

Evalution

according to yourself dataset path,modify data/config.py

  1. Evaluate on AFW.
python tools/afw_test.py
  1. Evaluate on FDDB
python tools/fddb_test.py
  1. Evaluate on PASCAL face
python tools/pascal_test.py
  1. test on WIDER FACE
python tools/wider_test.py

Demo

you can test yourself image

python demo.py

Result

demo demo

References

About

Pyramidbox implement with pytorch

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 100.0%