← all repositories
RangiLyu/nanodet

Object detection smaller than a floppy disk

NanoDet-Plus exists to prove you don't need a YOLO-sized model to do real-time object detection on a phone CPU.

nanodet
Not currently ranked — collecting fresh signals.
star history

What it does

NanoDet-Plus is an anchor-free object detector built for speed and size. It runs FCOS-style one-stage detection with Generalized Focal Loss, producing bounding boxes on everything from server GPUs to mid-tier phone CPUs. The project ships ready-made demos for ncnn, MNN, OpenVINO, and Android, plus a zoo of pre-trained weights topping out at 34.1 mAP on COCO for the 1.5× variant.

The interesting bit

The authors attack a specific, often ignored pain point: label assignment in tiny networks. Their Assign Guidance Module and Dynamic Soft Label Assigner coax better supervision out of lightweight backbones like ShuffleNetV2, while a Ghost-PAN feature pyramid keeps multi-scale fusion cheap. The result is a 7 mAP jump over the original NanoDet without bloating the model past a few megabytes.

Key highlights

  • Model file is 980 KB (INT8) or 1.8 MB (FP16); the Plus variant stays under 2.3 MB / 1.2 MB.
  • Benchmarked at 97 FPS (10.23 ms) on a Kirin 980 ARM CPU via ncnn.
  • Training memory is frugal enough to fit batch-size 80 on a 6 GB GTX 1060.
  • Supports a laundry list of inference backends: ncnn, MNN, OpenVINO, and even browser WebAssembly.
  • Backbone zoo includes ShuffleNetV2, EfficientNet-Lite, and RepVGG variants.

Caveats

  • The README pins PyTorch to >= 1.10.0 and < 2.0.0, so bleeding-edge torch users may need to check compatibility.
  • Most latency claims are tied to ncnn on a specific Kirin 980 chipset; your ARM mileage will vary.
  • Training is listed for Linux or macOS only; Windows is not mentioned as supported.

Verdict

Grab this if you are shipping object detection to mobile apps or edge devices where every megabyte and millisecond counts. Skip it if you need state-of-the-art accuracy on a server GPU and don’t care about model size.

Frequently asked

What is RangiLyu/nanodet?
NanoDet-Plus exists to prove you don't need a YOLO-sized model to do real-time object detection on a phone CPU.
Is nanodet open source?
Yes — RangiLyu/nanodet is open source, released under the Apache-2.0 license.
What language is nanodet written in?
RangiLyu/nanodet is primarily written in Python.
How popular is nanodet?
RangiLyu/nanodet has 6.2k stars on GitHub.
Where can I find nanodet?
RangiLyu/nanodet is on GitHub at https://github.com/RangiLyu/nanodet.

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