Home

Awesome

Single Shot MultiBox Detector Keras version.

SSD是一种Object Detection方法。本文是基于论文SSD: Single Shot MultiBox Detector,实现的keras版本。

该文章在既保证速度,又要保证精度的情况下,提出了SSD物体检测模型,与现在流行的检测模型一样,将检测过程整个成一个single deep neural network。便于训练与优化,同时提高检测速度。 SSD将输出一系列离散化(discretization)的bounding boxes,这些bounding boxes是在不同层次(layers)上的feature maps上生成的,并且有着不同的aspect ratio。

模型效果

<p align="center"> <img src="output/Aeroplane.png" height="300"> </p> <p align="center"> <img src="output/Bicycle.png" height="300"> </p> <p align="center"> <img src="output/Dog.png" height="300"> <img src="output/Cat.png" height="300"> </p> <p align="center"> <img src="https://github.com/kuhung/SSD_keras/blob/master/output/car.gif"> </p>

如何使用

所需依赖

cv2==3.3.0
keras==2.2.0
matplotlib==2.1.0
tensorflow==1.3.0
numpy==1.13.3

如果想跑通视频模块,则需额外pip install scikit-video

具体操作

git clone git@github.com:kuhung/SSD_keras.git
cd SSD_keras
cp weights_SSD300.hdf5 into SSD_keras

参考SSD.ipynb

参考SSD_crop.py

cd video_utils
python videotest_example.py hy.mp4

参考资料

SSD: Single Shot MultiBox Detector

论文阅读:SSD: Single Shot MultiBox Detector

rykov8/ssd_keras