|
|
--- |
|
|
license: agpl-3.0 |
|
|
tags: |
|
|
- yolo |
|
|
- object-detection |
|
|
- recaptcha |
|
|
- ultralytics |
|
|
- computer-vision |
|
|
- image-classification |
|
|
library_name: ultralytics |
|
|
pipeline_tag: object-detection |
|
|
--- |
|
|
|
|
|
<div align="center"> |
|
|
|
|
|
# π Revpass |
|
|
|
|
|
### YOLOv26s Fine-tuned for Google reCAPTCHA Detection |
|
|
|
|
|
[](https://www.python.org/) |
|
|
[](https://github.com/ultralytics/ultralytics) |
|
|
[](LICENSE) |
|
|
[](https://huggingface.co/saifyxpro/Revpass) |
|
|
[](https://huggingface.co/saifyxpro/Revpass) |
|
|
|
|
|
**High-performance object detection model specialized for reCAPTCHA v2/v3 image recognition** |
|
|
|
|
|
</div> |
|
|
|
|
|
--- |
|
|
|
|
|
## π Performance Metrics |
|
|
|
|
|
| Metric | Score | |
|
|
| ------------- | --------- | |
|
|
| **mAP50** | **95.4%** | |
|
|
| **mAP50-95** | **71.2%** | |
|
|
| **Precision** | **89.7%** | |
|
|
| **Recall** | **91.5%** | |
|
|
|
|
|
> Trained on **10,390 reCAPTCHA images** (103 epochs, 1.46 hours, NVIDIA RTX PRO 6000 96GB) |
|
|
|
|
|
--- |
|
|
|
|
|
## π― Demo Results |
|
|
|
|
|
 |
|
|
|
|
|
*Sample predictions on validation set showing high-confidence detections across all 11 classes* |
|
|
|
|
|
--- |
|
|
|
|
|
## π·οΈ Supported Classes (11) |
|
|
|
|
|
``` |
|
|
bicycle, bridge, bus, car, chimney, crosswalk, |
|
|
fire_hydrant, motorcycle, palm_tree, stairs, traffic_light |
|
|
``` |
|
|
|
|
|
--- |
|
|
|
|
|
## π Quick Start |
|
|
|
|
|
### Installation |
|
|
|
|
|
```bash |
|
|
pip install ultralytics |
|
|
``` |
|
|
|
|
|
### Usage |
|
|
|
|
|
```python |
|
|
from ultralytics import YOLO |
|
|
|
|
|
# Load model from HuggingFace |
|
|
model = YOLO("hf://saifyxpro/Revpass") |
|
|
|
|
|
# Run inference |
|
|
results = model("captcha_tile.jpg", conf=0.25) |
|
|
|
|
|
# Print predictions |
|
|
for r in results: |
|
|
for box in r.boxes: |
|
|
class_name = model.names[int(box.cls[0])] |
|
|
confidence = float(box.conf[0]) |
|
|
print(f"{class_name}: {confidence:.2%}") |
|
|
``` |
|
|
|
|
|
### Example Output |
|
|
|
|
|
```python |
|
|
palm_tree: 99% |
|
|
bus: 98% |
|
|
traffic_light: 99% |
|
|
fire_hydrant: 98% |
|
|
``` |
|
|
|
|
|
--- |
|
|
|
|
|
## π§ Training Details |
|
|
|
|
|
| Parameter | Value | |
|
|
| --------------------- | -------------------------- | |
|
|
| **Base Model** | YOLOv26s | |
|
|
| **Dataset** | Google reCAPTCHA (Kaggle) | |
|
|
| **Training Images** | 8,832 | |
|
|
| **Validation Images** | 1,558 | |
|
|
| **Epochs** | 150 (stopped at 103) | |
|
|
| **Batch Size** | 64 | |
|
|
| **Image Size** | 640x640 | |
|
|
| **Optimizer** | AdamW | |
|
|
| **Learning Rate** | 0.001 β 0.00001 | |
|
|
| **GPU** | NVIDIA RTX PRO 6000 (96GB) | |
|
|
| **Training Time** | 1.46 hours | |
|
|
|
|
|
### Augmentation Strategy |
|
|
|
|
|
- HSV color jittering |
|
|
- Random translation & scaling |
|
|
- Horizontal flipping |
|
|
- Mosaic augmentation |
|
|
- MixUp (10%) |
|
|
- Copy-Paste (10%) |
|
|
|
|
|
--- |
|
|
|
|
|
## π» CPU Optimization |
|
|
|
|
|
This model is **optimized for CPU inference** while being trained on a high-end GPU for maximum quality: |
|
|
|
|
|
- β
YOLOv26s architecture (small, fast) |
|
|
- β
ONNX export support |
|
|
- β
Efficient inference on consumer hardware |
|
|
- β
No GPU required for deployment |
|
|
|
|
|
### Export to ONNX |
|
|
|
|
|
```python |
|
|
model = YOLO("hf://saifyxpro/Revpass") |
|
|
model.export(format="onnx", imgsz=640, simplify=True) |
|
|
``` |
|
|
|
|
|
--- |
|
|
|
|
|
## π Training Curves |
|
|
|
|
|
The model achieved convergence at epoch 103 with early stopping (patience=30): |
|
|
|
|
|
- **Best mAP50**: 95.4% (epoch 103) |
|
|
- **Final Loss**: 0.42 |
|
|
- **Validation Stability**: High consistency in final 20 epochs |
|
|
|
|
|
--- |
|
|
|
|
|
## π Use Cases |
|
|
|
|
|
> **β οΈ EDUCATIONAL PURPOSE ONLY** |
|
|
> |
|
|
> This model is designed for **research and educational purposes** to demonstrate: |
|
|
> - Fine-tuning YOLO models on custom datasets |
|
|
> - Object detection for specialized domains |
|
|
> - High-performance training on large GPUs |
|
|
> |
|
|
> **Do not use for unauthorized access or bypassing security measures.** |
|
|
|
|
|
--- |
|
|
|
|
|
## π¦ Model Files |
|
|
|
|
|
- `best.pt` - PyTorch weights (22.5 MB) |
|
|
- `data.yaml` - Dataset configuration |
|
|
- `README.md` - This file |
|
|
- `test_predictions.png` - Demo results |
|
|
|
|
|
--- |
|
|
|
|
|
## π Acknowledgments |
|
|
|
|
|
- **Ultralytics** for the amazing YOLO framework |
|
|
- **Kaggle** for hosting the reCAPTCHA dataset |
|
|
- **HuggingFace** for model hosting infrastructure |
|
|
|
|
|
--- |
|
|
|
|
|
## π License |
|
|
|
|
|
This project is licensed under **AGPL-3.0**. See [LICENSE](LICENSE) for details. |
|
|
|
|
|
--- |
|
|
|
|
|
## π Links |
|
|
|
|
|
- **Model**: [HuggingFace Hub](https://huggingface.co/saifyxpro/Revpass) |
|
|
- **Framework**: [Ultralytics YOLO](https://github.com/ultralytics/ultralytics) |
|
|
- **Dataset**: [Google reCAPTCHA (Kaggle)](https://www.kaggle.com/datasets/sanjeetsinghnaik/google-recaptcha) |
|
|
|
|
|
--- |
|
|
|
|
|
<div align="center"> |
|
|
|
|
|
**Built with β€οΈ using Ultralytics YOLOv26s** |
|
|
|
|
|
[](https://huggingface.co/saifyxpro/Revpass) |
|
|
|
|
|
</div> |
|
|
|