File size: 3,387 Bytes
66a0370
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
00ddbc4
 
66a0370
 
 
 
 
 
 
 
00ddbc4
66a0370
 
 
 
 
 
 
 
 
 
 
00ddbc4
66a0370
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
---
license: mit
tags:
  - yolov8
  - object-detection
  - railway
  - wagon-number-recognition
  - ocr
  - computer-vision
  - ultralytics
datasets:
  - custom
language:
  - en
pipeline_tag: object-detection
---

# YOLOv8 — Railway Wagon Big Number Detection

<p align="center">
  <img src="001_20241208064334_[M][0@0][0].jpg" alt="Example prediction" width="600"/>
</p>

## Model Description

A fine-tuned **YOLOv8** model for detecting and localizing **large identification numbers** on railway wagons. This model was developed as part of a **government railway monitoring system** to automate wagon identification in real-time video streams.

The model accurately detects oversized wagon numbers painted on the side of freight and passenger cars, even under challenging conditions such as varying lighting, weather, partial occlusion, and motion blur.

## Intended Use

| Use Case | Description |
|----------|-------------|
| **Railway monitoring** | Automated wagon identification in surveillance camera feeds |
| **Logistics tracking** | Real-time wagon number extraction for freight management |
| **Infrastructure inspection** | Integration into railway digitization pipelines |

> ⚠️ **Not intended for:** General-purpose OCR, license plate recognition, or non-railway number detection.

## Performance

| Metric | Score |
|--------|-------|
| F1 Score | `98.1%` |


<!-- 🔧 TODO: Replace XX.X% with your actual metric values -->

## Training Details

### Dataset

- **Source:** Custom-annotated dataset of railway wagon images
- **Size:** 1240X800 images <!-- TODO: fill in -->
- **Annotation format:** YOLO (bounding boxes)
- **Classes:** 1 (big_number)
- **Train/Val split:** 80/20

### Hyperparameters

| Parameter | Value |
|-----------|-------|
| Base model | YOLOv8n / YOLOv8s <!-- specify which --> |
| Image size | 640 |
| Batch size | 16 |
| Epochs | `4` |
| Optimizer | AdamW |
| Learning rate | 0.01 |
| Device | NVIDIA GPU |

<!-- 🔧 TODO: Update hyperparameters with actual values -->

### Training Framework

- [Ultralytics YOLOv8](https://github.com/ultralytics/ultralytics)
- Python 3.10+
- PyTorch 2.x

## How to Use

```python
from ultralytics import YOLO

# Load the model
model = YOLO("best.pt")

# Run inference on an image
results = model("wagon_image.jpg")

# Display results
for result in results:
    boxes = result.boxes
    for box in boxes:
        print(f"Big Number detected | Confidence: {box.conf[0]:.2f} | BBox: {box.xyxy[0]}")
```

## Model Files

| File | Description |
|------|-------------|
| `best.pt` | Best checkpoint (highest validation metric) |
| `last.pt` | Last training epoch checkpoint |

## Limitations

- Trained specifically on railway wagon numbers; may not generalize to other number detection tasks
- Performance may degrade on heavily occluded or damaged wagon surfaces
- Optimized for daytime footage; low-light performance may vary

## Citation

```bibtex
@misc{yolo8_bignumbers_2024,
  author = {Zarina},
  title  = {YOLOv8 Railway Wagon Big Number Detection},
  year   = {2024},
  url    = {https://huggingface.co/Zarinaaa/yolo8_BigNumbers_model}
}
```

## Author

**Zarina** — Machine Learning Engineer specializing in Computer Vision, NLP, and Speech Technologies.

- 🤗 [HuggingFace](https://huggingface.co/Zarinaaa)
- 💼 [LinkedIn](https://linkedin.com/in/YOUR_LINKEDIN) <!-- TODO: add your link -->