Update README.md
Browse files
README.md
CHANGED
|
@@ -1,3 +1,56 @@
|
|
| 1 |
-
---
|
| 2 |
-
license: apache-2.0
|
| 3 |
-
---
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
---
|
| 2 |
+
license: apache-2.0
|
| 3 |
+
---
|
| 4 |
+
# YOLOLite-edge_s (ONNX, 640x640)
|
| 5 |
+
|
| 6 |
+
YOLOLite-edge_s is a lightweight, CPU-oriented object detection model designed for real-time performance on edge devices and industrial systems.
|
| 7 |
+
The model is part of the YOLOLite family, focusing on **practical latency**, **small model size**, and **stable performance across many real-world datasets**.
|
| 8 |
+
|
| 9 |
+
---
|
| 10 |
+
|
| 11 |
+
π¦ Full source code: https://github.com/Lillthorin/YoloLite-Official-Repo
|
| 12 |
+
|
| 13 |
+
π Benchmark Results can be found under BENCHMARK.md in the repo
|
| 14 |
+
|
| 15 |
+
## π Key Features
|
| 16 |
+
|
| 17 |
+
- **Real-time CPU performance** (25β30 FPS end-to-end on desktop CPU)
|
| 18 |
+
- **Fast ONNX inference** (14β18 ms per frame)
|
| 19 |
+
- Optimized for **industrial and edge applications**
|
| 20 |
+
- Supports **resize** or **letterbox** preprocessing
|
| 21 |
+
- Reliable performance across 40+ diverse Roboflow100 datasets
|
| 22 |
+
|
| 23 |
+
---
|
| 24 |
+
|
| 25 |
+
## β‘ Real-World Performance (CPU, ONNX Runtime)
|
| 26 |
+
|
| 27 |
+
Tested using 1080p traffic footage (`intersection.mp4`) and the script
|
| 28 |
+
`onnx_intersection_showcase.py`.
|
| 29 |
+
|
| 30 |
+
| Measurement | Result |
|
| 31 |
+
|------------|--------|
|
| 32 |
+
| **End-to-end FPS** | **25β30 FPS** |
|
| 33 |
+
| **Raw ONNX inference** | **14β18 ms** (~55β70 FPS) |
|
| 34 |
+
| **Resolution** | 640 Γ 640 |
|
| 35 |
+
| **Execution Provider** | CPUExecutionProvider |
|
| 36 |
+
|
| 37 |
+
These values include the **full pipeline**: video β resize β inference β NMS β drawing.
|
| 38 |
+
|
| 39 |
+
---
|
| 40 |
+
|
| 41 |
+
|
| 42 |
+
## π§ͺ Example Usage
|
| 43 |
+
|
| 44 |
+
```python
|
| 45 |
+
from tools.infer_onnx import ONNX_Predict
|
| 46 |
+
import cv2
|
| 47 |
+
|
| 48 |
+
predict = ONNX_Predict("edge_s_640_resize.onnx",
|
| 49 |
+
providers=["CPUExecutionProvider"],
|
| 50 |
+
use_letterbox=False)
|
| 51 |
+
|
| 52 |
+
frame = cv2.imread("image.jpg")
|
| 53 |
+
boxes, scores, classes = predict.infer_image(frame, img_size=640)
|
| 54 |
+
|
| 55 |
+
for (x1, y1, x2, y2), score, cls in zip(boxes, scores, classes):
|
| 56 |
+
print(x1, y1, x2, y2, score, cls)
|