
YOLOV5에서 일련의 절제 실험을 수행하여 더 가벼워지고 (작은 플롭, 낮은 메모리 및 더 적은 매개 변수) 및 더 빠르게 (셔플 채널을 추가하고, YOLOV5 헤드 추가 채널 감소. 320 × 320으로 프레임을 입력 할 때 프레임을 입력 할 때 Raspberry Pi 4B 이상을 추론 할 수 있음) (초점 운영을 배치하고, 4 개의 슬라이스를 유지하고, Four Slice Appour Curer)를 쉽게 배치하기가 더 쉽습니다. 범위).

| ID | 모델 | input_size | 플롭 | 매개 변수 | 크기 (m) 크기 (m) | [email protected] | 지도@.5 : 0.95 |
|---|---|---|---|---|---|---|---|
| 001 | yolo fastest | 320 × 320 | 0.25g | 0.35m | 1.4 | 24.4 | - |
| 002 | Yolov5-lite e 우리 | 320 × 320 | 0.73g | 0.78m | 1.7 | 35.1 | - |
| 003 | 나노 렛 -M | 320 × 320 | 0.72g | 0.95m | 1.8 | - | 20.6 |
| 004 | Yolo-Fastest-XL | 320 × 320 | 0.72g | 0.92m | 3.5 | 34.3 | - |
| 005 | yolox 나노 | 416 × 416 | 1.08g | 0.91m | 7.3 (FP32) | - | 25.8 |
| 006 | Yolov3-Tiny | 416 × 416 | 6.96g | 6.06m | 23.0 | 33.1 | 16.6 |
| 007 | Yolov4-Tiny | 416 × 416 | 5.62G | 8.86m | 33.7 | 40.2 | 21.7 |
| 008 | Yolov5-lite s 우리 | 416 × 416 | 1.66g | 1.64m | 3.4 | 42.0 | 25.2 |
| 009 | Yolov5- lite c | 512 × 512 | 5.92g | 4.57m | 9.2 | 50.9 | 32.5 |
| 010 | Nanodet-efficientlite2 | 512 × 512 | 7.12g | 4.71m | 18.3 | - | 32.6 |
| 011 | Yolov5s (6.0) | 640 × 640 | 16.5g | 7.23m | 14.0 | 56.0 | 37.2 |
| 012 | yolov5-lite g 우리 | 640 × 640 | 15.6g | 5.39m | 10.9 | 57.6 | 39.1 |
Wiki : https://github.com/ppogg/yolov5-lite/wiki/test-the-map-o-coco를 참조하십시오
| 장비 | 백엔드 컴퓨팅 | 체계 | 입력 | 뼈대 | v5lite-e | v5lite-s | v5lite-c | v5lite-g | yolov5s |
|---|---|---|---|---|---|---|---|---|---|
| 인터 | @i5-10210u | 창 (x86) | 640 × 640 | OpenVino | - | - | 46ms | - | 131ms |
| nvidia | @rtx 2080ti | 리눅스 (x86) | 640 × 640 | 토치 | - | - | - | 15ms | 14ms |
| 레드미 K30 | @snapdragon 730g | 안드로이드 (ARMV8) | 320 × 320 | NCNN | 27ms | 38ms | - | - | 163ms |
| Xiaomi 10 | @snapdragon 865 | 안드로이드 (ARMV8) | 320 × 320 | NCNN | 10ms | 14ms | - | - | 163ms |
| Raspberrypi 4b | @arm Cortex-A72 | 리눅스 (ARM64) | 320 × 320 | NCNN | - | 84ms | - | - | 371ms |
| Raspberrypi 4b | @arm Cortex-A72 | 리눅스 (ARM64) | 320 × 320 | MNN | - | 71ms | - | - | 356ms |
| axera-pi | 피질 A7@CPU 3.6tops @npu | 리눅스 (ARM64) | 640 × 640 | axpi | - | - | - | 22ms | 22ms |
https://zhuanlan.zhihu.com/p/672633849
入群答案 : 蒸馏 蒸馏 또는 剪枝 또는 量化 또는 低秩分解 ay (任意其一均可)
| 모델 | 크기 | 등뼈 | 머리 | 뼈대 | 디자인 |
|---|---|---|---|---|---|
| v5lite-e.pt | 1.7m | Shufflenetv2 (megvii) | v5litee-head | Pytorch | 팔 CPU |
| v5lite-e.bin v5lite-e.param | 1.7m | Shufflenetv2 | v5litee-head | NCNN | 팔 CPU |
| v5lite-e-int8.bin v5lite-e-int8.param | 0.9m | Shufflenetv2 | v5litee-head | NCNN | 팔 CPU |
| v5lite-e-fp32.mnn | 3.0m | Shufflenetv2 | v5litee-head | MNN | 팔 CPU |
| v5lite-e-fp32.tnnmodel v5lite-e-fp32.tnnproto | 2.9m | Shufflenetv2 | v5litee-head | tnn | 팔 CPU |
| v5lite-e-320.onnx | 3.1m | Shufflenetv2 | v5litee-head | onnxruntime | x86-cpu |
| 모델 | 크기 | 등뼈 | 머리 | 뼈대 | 디자인 |
|---|---|---|---|---|---|
| v5lite-s.pt | 3.4m | Shufflenetv2 (megvii) | v5lites-head | Pytorch | 팔 CPU |
| v5lite-s.bin v5lite-s.param | 3.3m | Shufflenetv2 | v5lites-head | NCNN | 팔 CPU |
| v5lite-s-int8.bin v5lite-s-int8.param | 1.7m | Shufflenetv2 | v5lites-head | NCNN | 팔 CPU |
| v5lite-s.mnn | 3.3m | Shufflenetv2 | v5lites-head | MNN | 팔 CPU |
| v5lite-s-int4.mnn | 987K | Shufflenetv2 | v5lites-head | MNN | 팔 CPU |
| v5lite-s-fp16.Bin v5lite-s-fp16.xml | 3.4m | Shufflenetv2 | v5lites-head | 오픈 생명 | x86-cpu |
| v5lite-s-fp32.bin v5lite-s-fp32.xml | 6.8m | Shufflenetv2 | v5lites-head | 오픈 생명 | x86-cpu |
| v5lite-s-fp16.tflite | 3.3m | Shufflenetv2 | v5lites-head | tflite | 팔 CPU |
| v5lite-s-fp32.tflite | 6.7m | Shufflenetv2 | v5lites-head | tflite | 팔 CPU |
| v5lite-s-int8.tflite | 1.8m | Shufflenetv2 | v5lites-head | tflite | 팔 CPU |
| v5lite-s-416.onnx | 6.4m | Shufflenetv2 | v5lites-head | onnxruntime | x86-cpu |
| 모델 | 크기 | 등뼈 | 머리 | 뼈대 | 디자인 |
|---|---|---|---|---|---|
| v5lite-c.pt | 9m | PPLCNET (Baidu) | v5s 헤드 | Pytorch | X86-CPU / X86-VPU |
| v5lite-c.bin v5lite-c.xml | 8.7m | pplcnet | v5s 헤드 | 오픈 생명 | X86-CPU / X86-VPU |
| v5lite-c-512.onnx | 18m | pplcnet | v5s 헤드 | onnxruntime | x86-cpu |
| 모델 | 크기 | 등뼈 | 머리 | 뼈대 | 디자인 |
|---|---|---|---|---|---|
| v5lite-g.pt | 10.9m | repvgg (tsinghua) | v5liteg-head | Pytorch | X86-GPU / ARM-GPU / ARM-NPU |
| v5lite-g-int8.engine | 8.5m | repvgg-yolov5 | v5liteg-head | Tensorrt | X86-GPU / ARM-GPU / ARM-NPU |
| v5lite-g-int8.tmfile | 8.7m | repvgg-yolov5 | v5liteg-head | Tengine | ARM-NPU |
| v5lite-g-640.onnx | 21m | repvgg-yolov5 | yolov5 헤드 | onnxruntime | x86-cpu |
| v5lite-g-640 | 7.1m | repvgg-yolov5 | yolov5 헤드 | axpi | ARM-NPU |
v5lite-e.pt: | 바이두 드라이브 | Google 드라이브 || ─퀴뇨 ─
ncnn-fp16: | 바이두 드라이브 | Google 드라이브 |
| ─퀴 안은ncnn-int8: | 바이두 드라이브 | Google 드라이브 |
| 최고의 자리 유장mnn-e_bf16: | Google 드라이브 |
| 최고의 소요,mnn-d_bf16: | Google 드라이브 |
onnx-fp32: | 바이두 드라이브 | Google 드라이브 |
v5lite-s.pt: | 바이두 드라이브 | Google 드라이브 || ─퀴뇨 ─
ncnn-fp16: | 바이두 드라이브 | Google 드라이브 |
| ─퀴 안은ncnn-int8: | 바이두 드라이브 | Google 드라이브 |
tengine-fp32: | 바이두 드라이브 | Google 드라이브 |
v5lite-c.pt: 바이두 드라이브 | Google 드라이브 |
openvino-fp16: | 바이두 드라이브 | Google 드라이브 |
v5lite-g.pt: | 바이두 드라이브 | Google 드라이브 |
axpi-int8: Google 드라이브 |
바이두 드라이브 비밀번호 : pogg
https://github.com/pinto0309/pinto_model_zoo/tree/main/180_yolov5-lite
Python> = 3.6.0은 모든 요구 사항에 따라 필요합니다 . TXT Pytorch> = 1.7을 포함하여 설치되었습니다.
$ git clone https://github.com/ppogg/YOLOv5-Lite
$ cd YOLOv5-Lite
$ pip install -r requirements.txt detect.py 다양한 소스에서 추론을 실행하고 최신 Yolov5-Lite 릴리스에서 자동으로 모델을 다운로드하고 결과를 저장하여 runs/detect .
$ python detect.py --source 0 # webcam
file.jpg # image
file.mp4 # video
path/ # directory
path/ * .jpg # glob
' https://youtu.be/NUsoVlDFqZg ' # YouTube
' rtsp://example.com/media.mp4 ' # RTSP, RTMP, HTTP stream$ python train.py --data coco.yaml --cfg v5lite-e.yaml --weights v5lite-e.pt --batch-size 128
v5lite-s.yaml v5lite-s.pt 128
v5lite-c.yaml v5lite-c.pt 96
v5lite-g.yaml v5lite-g.pt 64멀티 GPU를 사용하는 경우. 몇 번 더 빠릅니다.
$ python -m torch.distributed.launch --nproc_per_node 2 train.py교육 세트 및 테스트 세트 분포 (xx.jpg가있는 경로)
train: ../coco/images/train2017/
val: ../coco/images/val2017/├── images # xx.jpg example
│ ├── train2017
│ │ ├── 000001.jpg
│ │ ├── 000002.jpg
│ │ └── 000003.jpg
│ └── val2017
│ ├── 100001.jpg
│ ├── 100002.jpg
│ └── 100003.jpg
└── labels # xx.txt example
├── train2017
│ ├── 000001.txt
│ ├── 000002.txt
│ └── 000003.txt
└── val2017
├── 100001.txt
├── 100002.txt
└── 100003.txt링크 : https : //github.com/ppogg/autolabelimg
LabelIMG 기반 YOLOV5-5.0 및 YOLOV5-LITE를 사용하여 Autoannotate, Biubiubiu를 사용할 수 있습니다. 
여기서, Yolov5의 원래 구성 요소와 Yolov5-lite의 재생산 성분은 모델 허브에 구성되고 저장됩니다.

$ python main.py --type all
업데이트 ...
ARM-CPU 용 NCNN
ARM-CPU 용 MNN
OpenVino X86-CPU 또는 X86-VPU
ARM-GPU 또는 ARM-NPU 또는 X86-GPU의 Tensorrt (C ++)
ARM-GPU 또는 ARM-NPU 또는 X86-GPU의 Tensorrt (Python)
ARM-CPU 용 안드로이드
이것은 Redmi 전화이며 프로세서는 Snapdragon 730g이며 Yolov5-Lite는 탐지에 사용됩니다. 성능은 다음과 같습니다.
링크 : https://github.com/ppogg/yolov5-lite/tree/mas
Android_v5lite-S : https://drive.google.com/file/d/1ctohy68n2b9xyuqflitp-nd2kufwgaur/view?usp=sharing
Android_v5lite-g : https://drive.google.com/file/d/1fnvkwxxp_azwhi000xjiuhj_ohqoujcj/view?usp=sharing
새로운 Android 앱 : [링크] https://pan.baidu.com/s/1prhw4fi1jq8vbopyishciq [키워드] pogg

YOLOV5-LITE S/E 모델은 무엇입니까? Zhihu Link (중국어) : https://zhuanlan.zhihu.com/p/400545131
YOLOV5-LITE C 모델은 무엇입니까? Zhihu Link (중국어) : https://zhuanlan.zhihu.com/p/420737659
Yolov5-Lite G 모델이란 무엇입니까? Zhihu Link (중국어) : https://zhuanlan.zhihu.com/p/410874403
fp16 또는 int8로 NCNN에 배포하는 방법 : CSDN 링크 (중국어) : https://blog.csdn.net/weixin_45829462/article/details/119787840
FP16 또는 int8로 MNN에 배포하는 방법 : Zhihu Link (중국어) : https://zhuanlan.zhihu.com/p/672633849
OnnxRuntime에 배포하는 방법 : Zhihu Link (중국어) : https://zhuanlan.zhihu.com/p/476533259(OLD 버전)
Tensorrt에 배포하는 방법 : Zhihu Link (중국어) : https://zhuanlan.zhihu.com/p/478630138
Tensorrt에서 최적화하는 방법 : Zhihu Link (중국어) : https://zhuanlan.zhihu.com/p/463074494
https://github.com/ultralytics/yolov5
https://github.com/megvii-model/shufflenet-series
https://github.com/tencent/ncnn
연구에서 Yolov5-Lite를 사용하는 경우, 우리의 작품을 인용하고 별을주십시오.
@misc{yolov5lite2021,
title = {YOLOv5-Lite: Lighter, faster and easier to deploy},
author = {Xiangrong Chen and Ziman Gong},
doi = {10.5281/zenodo.5241425}
year={2021}
}