← all repositories
natanielruiz/android-yolo

YOLO on a phone, circa 2016: two FPS and one bounding box

An early, unvarnished port of real-time object detection to Android that shows exactly how much heavy lifting "mobile ML" used to require.

android-yolo
Velocity · 7d
+0.2
★ / day
Trend
steady
star history

What it does This is a reference Android Studio project that runs the YOLO object-detection network via TensorFlow on-device. It recognizes 20 Pascal VOC classes—person, car, dog, sofa, etc.—and draws a single bounding box around whatever the network thinks is most prominent. The author also distributes a standalone APK if you just want to try it without building.

The interesting bit The project is essentially a fork of a TensorFlow Android demo with the YOLO model swapped in, plus handwritten C++ inference code that passes results back to Java as a string, then tokenizes that string into floats. It is very much “first to do it” code rather than a polished framework: the README explicitly notes only one bounding box is supported, GPU acceleration is absent, and you’ll get roughly two frames per second on a “decent” device.

Key highlights

  • First known YOLO-on-Android implementation using TensorFlow (circa 2016)
  • 20-class detection from Pascal VOC; model file and APK both provided via Google Drive
  • Inference core in C++, with Java-side output parsing documented and commented
  • Hardcoded for tiny-YOLO’s final layer; the README points you to the exact file to modify if you want to adapt other models

Caveats

  • Single bounding box only; multi-object detection is left as an exercise
  • ~2 FPS on CPU-only inference; the README is upfront that this is not fast
  • Model and APK hosted on personal Google Drive links; longevity is unclear
  • “The code can and will be extended in the future” — last meaningful update appears to be 2016

Verdict Worth cloning if you’re researching the history of mobile object detection or need a minimal, hackable baseline. Skip it if you want production-ready performance; modern alternatives (TensorFlow Lite, ML Kit, etc.) have made this approach obsolete.

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