PedWalk-Yolo

PedWalk-Yolo is a YOLOv8n-based object detector for pavement distress detection on pedestrian walkways, developed as part of a Master's thesis. It integrates CBAM (Convolutional Block Attention Module) at the B3+B4 backbone stages, combined with MPDIoU as the box regression loss in place of CIoU.

Detects four distress classes

  • Alligator crack
  • Longitudinal crack
  • Pothole
  • Transverse crack

Performance (on the study's held-out test set)

Metric Value
mAP50 0.795
mAP50-95 0.460
Precision 0.856
Recall 0.723
Parameters 3,167,636
GFLOPs 8.874
Latency 16.478 ms (single NVIDIA TITAN Xp GPU, batch size 16)
FPS 60.69

Trained on a purpose-built dataset of 1,030 pedestrian walkway images from Cassino, Italy. Full methodology, ablation results, and limitations are described in the accompanying thesis.

How to run inference

Requires the ultralytics package (pip install ultralytics).

from ultralytics import YOLO

model = YOLO("best.pt")  # path to the downloaded weights file
results = model.predict("your_image.jpg", conf=0.25)

results[0].show()          # display the annotated image
results[0].save("out.jpg") # or save it to disk

To download the weights file directly with huggingface_hub:

from huggingface_hub import hf_hub_download

weights_path = hf_hub_download(repo_id="EddyPhyanqz/pedwalk-yolo", filename="best.pt")

Limitations

This model was trained and evaluated on a single-city dataset (Cassino, Italy) and has not been validated on data from other cities, climates, or camera setups. Its performance on longitudinal crack detection is weaker than on the other three classes; see the accompanying thesis for a detailed discussion. Full training methodology, dataset composition, and evaluation protocol are described there.

Downloads last month
-
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support