arthors commited on
Commit
2d7d9e6
·
verified ·
1 Parent(s): 6d01b8c

Upload folder using huggingface_hub

Browse files
Files changed (3) hide show
  1. README.md +97 -0
  2. model.onnx +3 -0
  3. model.pt +3 -0
README.md ADDED
@@ -0,0 +1,97 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ license: mit
3
+ language:
4
+ - en
5
+ tags:
6
+ - computer-vision
7
+ - object-detection
8
+ - yolov5
9
+ - edge-deployment
10
+ - ncnn
11
+ - onnx
12
+ - arm
13
+ metrics:
14
+ - mAP
15
+ model-index:
16
+ - name: Carwin Element Detection
17
+ results:
18
+ - task:
19
+ type: object-detection
20
+ dataset:
21
+ type: desktop-ui-elements
22
+ name: Desktop UI Elements
23
+ metrics:
24
+ - type: mAP@0.5
25
+ value: 0.925
26
+ - type: mAP@0.5:0.95
27
+ value: 0.648
28
+ ---
29
+
30
+ # Carwin Desktop UI Element Detection (YOLOv5n)
31
+
32
+ A lightweight YOLOv5n model trained to detect interactive UI elements on desktop screens (buttons, icons, input fields, checkboxes, etc.).
33
+
34
+ ## Model Details
35
+
36
+ - **Architecture**: YOLOv5n (ReLU activation, SiLU→ReLU for RKNN/NCNN compatibility)
37
+ - **Input**: 640×640 RGB
38
+ - **Output**: Single class "element" — bounding boxes for interactive UI regions
39
+ - **Model size**: 5.3 MB (PyTorch), 7.5 MB (ONNX)
40
+ - **Training**: 200 epochs on NVIDIA B200 (single GPU)
41
+
42
+ ## Performance
43
+
44
+ | Metric | Value |
45
+ |--------|-------|
46
+ | mAP@0.5 | **0.925** |
47
+ | mAP@0.5:0.95 | **0.648** |
48
+ | Training images | 10,825 |
49
+
50
+ ## Edge Deployment
51
+
52
+ Deployed to ARM Cortex-A7 via NCNN INT8 quantization:
53
+
54
+ | Resolution | Inference Time |
55
+ |-----------|---------------|
56
+ | 640×640 | 6.5s |
57
+ | 320×320 | 1.6s |
58
+ | 160×160 | 370ms |
59
+
60
+ ONNX → NCNN → INT8 quantization pipeline included in the training repository.
61
+
62
+ ## Usage
63
+
64
+ ```python
65
+ import torch
66
+
67
+ # Load model
68
+ model = torch.hub.load('ultralytics/yolov5', 'custom', path='model.pt')
69
+ model.conf = 0.25
70
+
71
+ # Run inference
72
+ results = model('screenshot.png')
73
+ results.show()
74
+ ```
75
+
76
+ ## Files
77
+
78
+ - `model.pt` — PyTorch weights (5.3 MB)
79
+ - `model.onnx` — ONNX export (7.5 MB, opset 12, batch=1, 640×640)
80
+
81
+ ## Training
82
+
83
+ Trained from `yolov5n.pt` pretrained weights with:
84
+
85
+ ```bash
86
+ python train.py --data dataset.yaml --weights yolov5n.pt \
87
+ --epochs 200 --batch-size 64 --device 0 --imgsz 640 \
88
+ --single-cls --amp=False
89
+ ```
90
+
91
+ - GPU: NVIDIA B200 (180 GB)
92
+ - PyTorch: 2.12 + CUDA 13.0
93
+ - Dataset: 10,825 annotated desktop screenshots
94
+
95
+ ## License
96
+
97
+ MIT
model.onnx ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:d29b6210d171e3dc5454e09847aaabce6a0255eaefa565b639e1301a9e933ef9
3
+ size 7481347
model.pt ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:8e29f8d492083213bd65fa1ff6938b7feba95e651a05a8bbb9e8b2e719f98746
3
+ size 14640001