ultralytics/xview-yolov3

YOLOv3 training, preprocessing, validation, and inference for object detection in xView satellite imagery and the xView detection challenge.

What it solves

本專案提供一個專門實作,用於在 xView 資料集(由高解析度衛星影像組成)上訓練 YOLOv3 目標偵測模型。由於航空視圖中物件的尺度與種類繁多,遙測資料的目標偵測是一項具挑戰性的任務,本專案旨在協助使用者解決此問題。

How it works

專案使用 YOLOv3 架構,並實作針對衛星影像的特定流程:

  • Preprocessing: 使用 sigma‑rejection 進行異常值剔除並清理資料,產生 30 個針對 xView 資料集的自訂 k‑means 錨點,匹配其特定的邊界框尺寸與長寬比。
  • Training: 在從全解析度影像中隨機抽取的 608×608 像素區塊上訓練模型。包含 resume 功能,可從上一次儲存的 checkpoint 繼續訓練。
  • Augmentation: 為防止過度擬合並提升魯棒性,訓練期間套用多種影像變換,包括旋轉、平移、縮放、翻轉以及 HSV 顏色調整。
  • Inference: 專用腳本允許使用者在新衛星影像上執行已訓練模型,偵測目標並繪製邊界框。

Who it’s for

主要面向 xView Challenge 參賽者、遙測領域的研究者以及從事衛星影像分析的電腦視覺開發者。

Highlights

  • Custom Anchor Generation: 使用 k‑means 最佳化針對衛星特定物件的邊界框預測。
  • Comprehensive Augmentation: 包含豐富的幾何與顏色變換,以提升模型的泛化能力。
  • Checkpointing: 支援從中斷的會話恢復訓練。
  • Ready-to-use Inference: 提供腳本,可快速將訓練好的權重套用於新影像。