SSD escapes Caffe: a Keras port from the TF 1.0 era
A 2017-era port of the Single Shot MultiBox Detector that moved weights from Caffe to Keras so you could run object detection without the Berkeley vision framework.

What it does
This repo ports the SSD object-detection architecture from its original Caffe implementation into Keras. It includes notebooks for inference (SSD.ipynb) and training (SSD_training.ipynb), plus a utility script for running detection on video or live camera input. The original Caffe weights were converted and hosted on Mega.nz.
The interesting bit
The value here is entirely in the translation layer: at the time, SSD was state-of-the-art for single-shot detection, but it was locked inside Caffe’s ecosystem. This let Keras users skip the Caffe build nightmare and run the same model with TensorFlow backend.
Key highlights
- Pre-converted weights available for the 300×300 input model
- Includes both inference and training walkthroughs as Jupyter notebooks
testing_utilsscript supports video files or live camera feed- Explicitly tested against Keras 1.2.2, TensorFlow 1.0.0, OpenCV 3.1.0-dev
Caveats
- Dependency versions are frozen in 2017; expect friction with modern Keras/TensorFlow
- Two weight files exist due to an architecture change in the
pool6layer—easy to grab the wrong one - No mention of the 512×512 variant or newer SSD improvements
Verdict
Worth a look if you’re maintaining legacy Keras code or need to understand how Caffe-to-Keras weight ports worked historically. Skip it if you want a maintained, modern object-detection pipeline—this is a time capsule, not a starting point.