Home

Awesome

:zap:Yolo-Fastest:zap:DOI

image

Evaluating indicator/Benchmark

NetworkCOCO mAP(0.5)ResolutionRun Time(Ncnn 4xCore)Run Time(Ncnn 1xCore)FLOPSParamsWeight size
Yolo-Fastest-1.124.40 %320X3205.59 ms7.52 ms0.252BFlops0.35M1.4M
Yolo-Fastest-1.1-xl34.33 %320X3209.27ms15.72ms0.725BFlops0.925M3.7M
Yolov3-Tiny-Prn33.1%416X416%ms%ms3.5BFlops4.7M18.8M
Yolov4-Tiny40.2%416X41623.67ms40.14ms6.9 BFlops5.77M23.1M

Yolo-Fastest-1.1 Multi-platform benchmark

EquipmentComputing backendSystemFrameworkRun time
Mi 11Snapdragon 888Android(arm64)ncnn5.59ms
Mate 30Kirin 990Android(arm64)ncnn6.12ms
Meizu 16Snapdragon 845Android(arm64)ncnn7.72ms
Development boardSnapdragon 835(Monkey version)Android(arm64)ncnn20.52ms
Development boardRK3399Linux(arm64)ncnn35.04ms
Raspberrypi 3B4xCortex-A53Linux(arm64)ncnn62.31ms
Orangepi Zero LtsH2+ 4xCortex-A7Linux(armv7)ncnn550ms
NvidiaGtx 1050tiUbuntu(x64)darknet4.73ms
Inteli7-8700Ubuntu(x64)ncnn5.78ms

Pascal VOC performance index comparison

NetworkModel SizemAP(VOC 2007)FLOPS
Tiny YOLOv260.5MB57.1%6.97BFlops
Tiny YOLOv333.4MB58.4%5.52BFlops
YOLO Nano4.0MB69.1%4.51Bflops
MobileNetv2-SSD-Lite13.8MB68.6%&Bflops
MobileNetV2-YOLOv311.52MB70.20%2.02Bflos
Pelee-SSD21.68MB70.09%2.40Bflos
Yolo Fastest1.3MB61.02%0.23Bflops
Yolo Fastest-XL3.5MB69.43%0.70Bflops
MobileNetv2-Yolo-Lite8.0MB73.26%1.80Bflops

Yolo-Fastest-1.1 Pedestrian detection

EquipmentSystemFrameworkRun time
Raspberrypi 3BLinux(arm64)ncnn62ms

Demo

image image

Compile

How to compile on Linux

Just do make in the Yolo-Fastest-master directory. Before make, you can set such options in the Makefile: link

Test/Demo

*Run Yolo-Fastest , Yolo-Fastest-xl , Yolov3 or Yolov4 on image or video inputs

Demo on image input

*Note: change .data , .cfg , .weights and input image file in image_yolov3.sh for Yolo-Fastest-x1, Yolov3 and Yolov4

  sh image_yolov3.sh

Demo on video input

*Note: Use any input video and place in the data folder or use 0 in the video_yolov3.sh for webcam

*Note: change .data , .cfg , .weights and input video file in video_yolov3.sh for Yolo-Fastest-x1, Yolov3 and Yolov4

  sh video_yolov3.sh

Yolo-Fastest Test

image

Yolo-Fastest-xl Test

image

How to Train

Generate a pre-trained model for the initialization of the model backbone

  ./darknet partial yolo-fastest.cfg yolo-fastest.weights yolo-fastest.conv.109 109

Train

  ./darknet detector train voc.data yolo-fastest.cfg yolo-fastest.conv.109 

Deploy

NCNN

NCNN Conversion Tutorial

NCNN Sample

MNN&TNN&MNN

ONNX&TensorRT

OpenCV DNN

Thanks

Cite as

dog-qiuqiu. (2021, July 24). dog-qiuqiu/Yolo-Fastest: yolo-fastest-v1.1.0 (Version v.1.1.0). Zenodo. http://doi.org/10.5281/zenodo.5131532