Upload README.md with huggingface_hub
Browse files
README.md
ADDED
@@ -0,0 +1,188 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
---
|
2 |
+
language: en
|
3 |
+
license: mit
|
4 |
+
tags:
|
5 |
+
- computer-vision
|
6 |
+
- object-detection
|
7 |
+
- yolov8
|
8 |
+
- satellite-imagery
|
9 |
+
- remote-sensing
|
10 |
+
- vhr-10
|
11 |
+
- geospatial
|
12 |
+
- equipment-detection
|
13 |
+
datasets:
|
14 |
+
- VHR-10
|
15 |
+
pipeline_tag: object-detection
|
16 |
+
---
|
17 |
+
|
18 |
+
# YOLOv8n Fine-tuned on VHR-10 Remote Sensing Dataset
|
19 |
+
|
20 |
+
This model is a fine-tuned YOLOv8n (nano) model trained on the NWPU VHR-10 (Very High Resolution) remote sensing dataset for detecting ground equipment and vehicles in satellite imagery.
|
21 |
+
|
22 |
+
## Model Description
|
23 |
+
|
24 |
+
This model demonstrates the feasibility of using YOLOv8 for detecting various pieces of ground equipment through satellite imagery, serving as a proof-of-concept for commercial applications in competitive intelligence, fleet monitoring, and automated equipment detection.
|
25 |
+
|
26 |
+
### Model Details
|
27 |
+
|
28 |
+
- **Model Type**: YOLOv8n (nano) - Object Detection
|
29 |
+
- **Training Dataset**: NWPU VHR-10 Remote Sensing Dataset
|
30 |
+
- **Model Size**: ~6MB (3M parameters)
|
31 |
+
- **Input Resolution**: 640x640 pixels
|
32 |
+
- **Training Duration**: 50 epochs
|
33 |
+
- **Framework**: Ultralytics YOLOv8
|
34 |
+
|
35 |
+
### Detected Classes
|
36 |
+
|
37 |
+
The model can detect 10 classes of objects commonly found in satellite imagery:
|
38 |
+
|
39 |
+
1. **airplane** - Aircraft on airfields and airports
|
40 |
+
2. **ship** - Naval vessels and boats
|
41 |
+
3. **storage_tank** - Industrial storage tanks
|
42 |
+
4. **baseball_diamond** - Baseball fields and diamonds
|
43 |
+
5. **tennis_court** - Tennis courts and facilities
|
44 |
+
6. **basketball_court** - Basketball courts
|
45 |
+
7. **ground_track_field** - Athletic tracks and fields
|
46 |
+
8. **harbor** - Harbor facilities and ports
|
47 |
+
9. **bridge** - Bridges and overpasses
|
48 |
+
10. **vehicle** - Ground vehicles and equipment
|
49 |
+
|
50 |
+
## Performance Metrics
|
51 |
+
|
52 |
+
### Overall Performance
|
53 |
+
- **[email protected]**: 98.0% (exceptional)
|
54 |
+
- **[email protected]:0.95**: 68.2% (good across IoU thresholds)
|
55 |
+
- **Overall Precision**: 94.1%
|
56 |
+
- **Overall Recall**: 96.5%
|
57 |
+
- **Inference Speed**: 9.9ms per image
|
58 |
+
|
59 |
+
### Vehicle Detection Performance (Primary Focus)
|
60 |
+
- **Vehicle F1 Score**: 79.2%
|
61 |
+
- **Vehicle Precision**: 87.5%
|
62 |
+
- **Vehicle Recall**: 81.5%
|
63 |
+
- **Vehicle [email protected]**: 88.8%
|
64 |
+
|
65 |
+
### Class-wise Performance (F1 Scores)
|
66 |
+
1. Ground Track Field: 100.0%
|
67 |
+
2. Airplane: 98.0%
|
68 |
+
3. Ship: 95.8%
|
69 |
+
4. Baseball Diamond: 94.3%
|
70 |
+
5. Tennis Court: 91.7%
|
71 |
+
6. Basketball Court: 90.9%
|
72 |
+
7. Bridge: 87.0%
|
73 |
+
8. Storage Tank: 84.2%
|
74 |
+
9. Harbor: 81.8%
|
75 |
+
10. Vehicle: 79.2%
|
76 |
+
|
77 |
+
## Intended Use
|
78 |
+
|
79 |
+
### Primary Applications
|
80 |
+
- **Proof-of-concept** for satellite-based equipment detection
|
81 |
+
- **Competitive intelligence** and market analysis
|
82 |
+
- **Fleet monitoring** and logistics optimization
|
83 |
+
- **Infrastructure inventory** management
|
84 |
+
- **Automated lead generation** based on equipment detection
|
85 |
+
|
86 |
+
### Commercial Potential
|
87 |
+
This model demonstrates that AI can reliably detect vehicles and equipment in satellite imagery, laying the groundwork for specialized commercial applications such as:
|
88 |
+
- Hostler detection for logistics companies
|
89 |
+
- Construction equipment monitoring
|
90 |
+
- Fleet tracking and analysis
|
91 |
+
- Market research and competitive analysis
|
92 |
+
|
93 |
+
## Usage
|
94 |
+
|
95 |
+
### Loading the Model
|
96 |
+
|
97 |
+
```python
|
98 |
+
from ultralytics import YOLO
|
99 |
+
|
100 |
+
# Load the model
|
101 |
+
model = YOLO('best.pt')
|
102 |
+
|
103 |
+
# Run inference
|
104 |
+
results = model('satellite_image.jpg')
|
105 |
+
|
106 |
+
# Process results
|
107 |
+
for result in results:
|
108 |
+
boxes = result.boxes
|
109 |
+
for box in boxes:
|
110 |
+
class_id = int(box.cls)
|
111 |
+
confidence = float(box.conf)
|
112 |
+
print(f"Detected: {model.names[class_id]} (confidence: {confidence:.3f})")
|
113 |
+
```
|
114 |
+
|
115 |
+
### HuggingFace Usage
|
116 |
+
|
117 |
+
```python
|
118 |
+
from huggingface_hub import hf_hub_download
|
119 |
+
from ultralytics import YOLO
|
120 |
+
|
121 |
+
# Download model from HuggingFace
|
122 |
+
model_path = hf_hub_download(
|
123 |
+
repo_id="omgbobbyg/satellite-equipment-detection-yolov8n-vhr10",
|
124 |
+
filename="best.pt"
|
125 |
+
)
|
126 |
+
|
127 |
+
# Load and use model
|
128 |
+
model = YOLO(model_path)
|
129 |
+
results = model('your_satellite_image.jpg')
|
130 |
+
```
|
131 |
+
|
132 |
+
## Training Details
|
133 |
+
|
134 |
+
### Dataset
|
135 |
+
- **NWPU VHR-10 Dataset**: 800 very high-resolution remote sensing images
|
136 |
+
- **Training Split**: 70% (559 images)
|
137 |
+
- **Validation Split**: 20% (160 images)
|
138 |
+
- **Test Split**: 10% (81 images)
|
139 |
+
- **Image Sources**: Google Earth and Vaihingen dataset
|
140 |
+
|
141 |
+
### Training Configuration
|
142 |
+
- **Model**: YOLOv8n (nano)
|
143 |
+
- **Epochs**: 50
|
144 |
+
- **Batch Size**: 8 (memory optimized)
|
145 |
+
- **Image Size**: 640x640
|
146 |
+
- **Optimizer**: AdamW (auto-selected)
|
147 |
+
- **Learning Rate**: 0.000714 (auto-selected)
|
148 |
+
- **GPU**: NVIDIA RTX 4090
|
149 |
+
|
150 |
+
## Limitations and Considerations
|
151 |
+
|
152 |
+
### Strengths
|
153 |
+
- Excellent overall detection performance (98% [email protected])
|
154 |
+
- High recall rate ensures minimal missed detections
|
155 |
+
- Fast inference suitable for real-time applications
|
156 |
+
- Good generalization across different object types
|
157 |
+
|
158 |
+
### Limitations
|
159 |
+
- Vehicle detection shows 49% over-prediction rate (false positives)
|
160 |
+
- Performance varies with object size and complexity
|
161 |
+
- Generic model - specialized training could significantly improve accuracy
|
162 |
+
- Limited to 10 predefined classes
|
163 |
+
|
164 |
+
### Recommendations for Production Use
|
165 |
+
- Implement post-processing filtering for specific use cases
|
166 |
+
- Consider ensemble methods for higher accuracy
|
167 |
+
- Use larger YOLOv8 variants (s/m/l) for better precision
|
168 |
+
- Develop specialized models for specific equipment types
|
169 |
+
|
170 |
+
## Citation
|
171 |
+
|
172 |
+
If you use this model in your research, please cite the original VHR-10 dataset:
|
173 |
+
|
174 |
+
```bibtex
|
175 |
+
@article{cheng2014multi,
|
176 |
+
title={Multi-class geospatial object detection and geographic image classification based on collection of part detectors},
|
177 |
+
author={Cheng, Gong and Han, Junwei and Zhou, Peicheng and Guo, Lei},
|
178 |
+
journal={ISPRS Journal of Photogrammetry and Remote Sensing},
|
179 |
+
volume={98},
|
180 |
+
pages={119--132},
|
181 |
+
year={2014},
|
182 |
+
publisher={Elsevier}
|
183 |
+
}
|
184 |
+
```
|
185 |
+
|
186 |
+
## License
|
187 |
+
|
188 |
+
This model is released under the MIT License. The underlying YOLOv8 framework is licensed under GPL-3.0.
|