← all repositories
broadinstitute/keras-rcnn

Object detection, Keras-style: batteries not quite included

A Keras-native RCNN implementation that trades flexibility for familiarity, then stops updating in 2019.

556 stars Python Computer VisionML Frameworks
keras-rcnn
Velocity · 7d
+0.2
★ / day
Trend
steady
star history

What it does

keras-rcnn wraps region-based CNNs (Faster R-CNN and friends) into standard Keras Model objects. You instantiate keras_rcnn.models.RCNN, compile with your favorite optimizer, and call fit_generator like it’s 2018. The library handles bounding boxes, masks, and category labels through a custom ObjectDetectionGenerator that expects a very specific JSON dictionary format—nested dictionaries all the way down.

The interesting bit

The project bets on Keras’s user-friendly API at a time when most object-detection code was raw TensorFlow soup. The data format is almost aggressively explicit: every image needs MD5 checksums, full pathnames, and bounding boxes specified as minimum/maximum dictionaries with r and c keys. It’s structured like a grant proposal, not a Python dict.

Key highlights

  • Pure Keras API: compile(), fit_generator(), standard callbacks
  • Built-in generators for object detection and instance segmentation
  • Ships with toy shape dataset (circles, rectangles, triangles) for quick tests
  • Supports external data via rigid JSON schema with checksum validation
  • Slack channel for support (archaeologists welcome)

Caveats

  • Pinned to TensorFlow 1.13.1, Keras 2.2.4, Python 3—effectively frozen in 2019
  • No GPU guidance, no performance numbers, no pretrained weights in README
  • fit_generator API was deprecated by Keras itself shortly after

Verdict

Grab this if you’re maintaining legacy Keras code or need a readable RCNN reference implementation. Skip it for new projects; the ecosystem has moved to PyTorch and TensorFlow 2.x, and this repo moved with it—to a complete standstill.

heatdrop uses Google Analytics to see which pages get read — nothing else. Your call. How we handle data.