leo2783/Traffic-Violation-Reporting-Automation-TVRA

GitHub: leo2783/Traffic-Violation-Reporting-Automation-TVRA

Stars: 3 | Forks: 0

# Traffic Violation Reporting Automation (TVRA) [English Version](README_en.md) 這是一個旨在利用 AI 影像辨識與自動化流程,簡化交通違規檢舉程序的開發計畫。本專案將從基礎的車牌與違規項目識別,逐步演進至全自動化的檢舉系統。 ## 專案目標 | 階段 | 目標 | |------|------| | 短期 | 實現違規項目與車牌的精準識別 | | 中期 | 整合 GPS 定位與地理空間資訊,實現半自動化表單填充 | | 長期 | 建立適配多種硬體設備的全自動化檢舉流水線 | ## 開發時程與技術規劃 ### 階段一:基礎識別 (短期) 專注於電腦視覺 (CV) 模型訓練與特徵提取。 - **資料工程**:爬取/收集違規影像,進行資料清洗與標記 (Labeling) - **車牌辨識 (ALPR)**:開發影像辨識功能,準確提取車牌號碼 - **違規偵測**:訓練模型辨識特定違規樣態(如:闖紅燈、違規轉彎、壓實線) - **資訊整合**:自動輸出包含車牌、違規項目、時間戳記的結構化資料 ### 階段二:路段定位與流程優化 (中期) 結合空間資訊與自動化腳本。 - **GPS 數據提取**:自動讀取行車紀錄器嵌入的 GPS 定位資訊 - **地標視覺辨識**:若缺乏 GPS 數據,透過影像辨識路牌、建築物以判定路段 - **半自動化填表**:經人工覆核後,自動填充各地區交通違規檢舉網站表單 ### 階段三:全面適配與全自動化 (長期) 提升系統相容性與系統智能。 - **多設備兼容**:適配市面上主流行車紀錄器檔案格式與編碼 - **多視角協同**:自動分析並關聯前/後鏡頭影像,完整還原違規過程 - **全自動篩選**:系統自動篩選高成功率案件,實現一鍵或無感檢舉 ## 技術棧 | 類別 | 技術 | |------|------| | 語言 | Python 3.12 | | 影像處理 | OpenCV, YOLO (v26), PyTorch / TensorFlow | | OCR | PaddleOCR | | 自動化 | Selenium / Playwright (網頁表單填充) | | 資料處理 | Pandas, NumPy, FileCompareTool, Sampling, HDBSCAN, UMAP, C++ Hash Accelerator (optional) | ## 初步成果展示 以下為 YOLO 語意分割模型 (Segmentation) 在測試集上自動生成的預測結果,可精準定位車牌與違規特徵: ![初步成果展示 1](https://static.pigsec.cn/wp-content/uploads/repos/2026/05/c61a1d0be2235223.jpg) ![初步成果展示 2](https://static.pigsec.cn/wp-content/uploads/repos/2026/05/38c426821e235224.jpg) ## 技術文件 關於自動化抽樣與資料工程工作台的深入技術細節,請參閱: - [技術細節 (中文)](./Tools/sampling/detail/SAMPLING_DETAILS_zh.md) - [Pipeline Technical Details (English)](./Tools/sampling/detail/SAMPLING_DETAILS_en.md) 目前 `Tools/sampling/` 已不只是單一去重腳本,而是資料工程工作台,包含: - 多分頁 GUI workbench - 共用 service layer - Auto Label workflow(YOLO 高信心候選 + embedding similarity 去重) - YOLO `.txt` / AnyLabel `.json` 多格式標註輸出 - package / script 兩種啟動方式的 import 相容性 通用檔案比對、複製、刪除工具已整合至 `Tools/files/`,並已打包為 `Tools/files/dist/TVRAFileCompareTool.exe`;此工具不綁定 YOLO,可用於未來 OCR 輸出、圖片、JSON、文字檔或其他資料夾同步流程。 ## - 目前進度:有version 5,正在測試不同的dataset對於模型表現的影響。 - 下個階段:把框找出來後使用OpenCV+Paddle+OCR實作OCR。 ## 開發日誌 開發過程的詳細紀錄、模型版本演進與遭遇的技術挑戰,請參閱獨立的 [開發日誌 (DEVELOPMENT_LOG.md)](./DEVELOPMENT_LOG.md)。 ## 授權條款 (License) 本專案採用 GNU Affero General Public License v3.0 (AGPL-3.0) 授權。詳細授權條款請參見 [.github/license.md](.github/license.md)。 ## 免責聲明 本專案僅供開發研究使用,使用者應遵守當地法律法規,嚴禁用於惡意騷擾或非法用途。 ## 如何貢獻 如果有任何疑問,歡迎隨時透過 Email 聯繫:qet6322076690@gmail.com