作者:LeonLok
編譯:ronghuaiyang
導讀
本文來自github,很實用的一個應用。
git倉庫地址:https://github.com/LeonLok/Multi-Camera-Live-Object-Tracking
這個存儲庫包含了我的目標檢測和跟蹤項目。所有這些都可以托管在雲服務器上。
由於有ImageZMQ,你還可以使用自己的異步處理IP相機。
Deep SORT 和 YOLO v4
Check out我的Deep SORT repository:https://github.com/LeonLok/Deep-SORT-YOLOv4,查看我使用的跟蹤算法,其中包括Tensorflow 2.0、異步視頻處理和低置信度跟蹤過濾。
交通流量計數
這個項目是目標計數應用的一個擴展。
功能
- 使用DETRAC數據集生成的244,617幅圖像進行訓練。可以在這里找到我創建的轉換代碼。
- 我把這篇論文:https://ieeexplore.ieee.org/document/8909903作為數據准備和訓練的指南。
- 每個跟蹤id只計數一次。
- 通過查看被跟蹤目標的路徑與計數線的交叉點對目標進行計數。
- 因此,那些跟丟了但用相同的ID重新跟蹤的仍然會被計數。
- 使用低置信度濾波進行跟蹤,來自上面同樣的論文。
- 提供更低的假陽性率。
- 跟蹤目標顯示平均檢測置信度。
- 跟蹤的類別由最常見的檢測類別確定。
- 顯示檢測結果是可選的(但是隱藏了平均檢測置信度)。
- 可以使用多個IP攝像頭。
- 方向計數可以配置為基於角度。
- 每一小時的間隔記錄計數。
- 總的計數
- 基於類別的計數
- 記錄每個計數目標的交叉詳細信息。
- 交叉時間
- 交叉點坐標
- 交叉角度
- 可以托管在雲服務器上。
注意,由於DETRAC不包含任何摩托車,它們是唯一被忽略的車輛。此外,DETRAC數據集只包含中國的交通圖像,因此由於缺乏訓練數據,它很難正確地檢測出其他國家的某些車輛。例如,它經常會將掀背車誤歸為suv,或者由於不同的顏色方案而無法識別出租車。
目標計數
這個項目最初打算成為一個應用程序,用於使用我自己的智能手機計算當前在多個房間的人數,服務器被遠程托管。下面展示了對人和汽車的檢測、跟蹤和計數。
功能
- 對當前視場中的物體進行計數
- 跟蹤可選
- 支持多個IP相機
- 每間隔一個小時記錄一次當前的計數
- 當前的總數
- 當前每個類別的計數
- 可以托管在雲服務器上
使用我自己的智能手機作為IP相機
訓練你自己的機動車跟蹤模型
我使用DETRAC訓練帶有v3標注的數據集訓練了YOLOv4和Deep SORT模型。我提供了將DETRAC訓練圖像和v3標注轉換為正確格式的腳本,用於訓練YOLOv4模型和Deep SORT跟蹤模型。
Deep SORT 轉換參數
DETRAC圖像轉換為Market 1501訓練格式。
- 遮擋閾值 - 忽略遮擋比率過高的車輛序列。
- 截斷閾值 - 忽略截斷率過高的車輛序列。
- 出現的次數 - 車輛序列太短(即沒有足夠的圖像)被丟棄后,考慮遮擋和截斷比率。
YOLO 轉換參數
DETRAC圖像被轉換成Darknet YOLO訓練格式。
- 遮擋閾值 - 忽略遮擋比率過高的車輛序列。
- 截斷閾值 - 忽略截斷率過高的車輛序列。
兩種模型都在DETRAC訓練集上進行了訓練和評估,但由於缺少v3標注,測試集還沒有評估,我也沒有MATLAB用於Deep SORT的評估軟件。到目前為止,對於我的用例來說,它已經足夠好了。
使用的硬件
- Nvidia GTX 1070 GPU
- i7-8700K CPU
為了讓大家了解我們的期望,我可以運行兩個流量計數流,每個流大約10fps(正如你在流量計數gif中看到的)。當然,這在很大程度上取決於流分辨率以及用於檢測和跟蹤的幀數。
YOLO v3 vs. YOLO v4
當我第一次開始目標計數項目時,我使用YOLOv3,跟蹤幀率大約是10FPS,很難一次運行多個流。使用YOLOv4可以更容易地運行具有更高分辨率的兩個流,並提供更好的檢測精度。
依賴
- Tensorflow-GPU 1.14
- Keras 2.3.1
- opencv-python 4.2.0
- ImageZMQ
- numpy 1.18.2
- Flask 1.1.1
- pillow
這個項目是在Python 3.6上構建和測試的。
感謝相關貢獻者
- https://github.com/miguelgrinberg/flask-video-streaming
- https://github.com/Ma-Dan/keras-yolo4
- https://github.com/nwojke/deep_sort
- https://github.com/Qidian213/deep_sort_yolov3
- https://github.com/yehengchen/Object-Detection-and-Tracking
—END—
英文原文:https://github.com/LeonLok/Multi-Camera-Live-Object-Tracking
本文僅做學術分享,如有侵權,請聯系刪除。下載1在「計算機視覺工坊」公眾號后台回復:深度學習,即可下載深度學習算法、3D深度學習、深度學習框架、目標檢測、GAN等相關內容近30本pdf書籍。
下載2在「計算機視覺工坊」公眾號后台回復:計算機視覺,即可下載計算機視覺相關17本pdf書籍,包含計算機視覺算法、Python視覺實戰、Opencv3.0學習等。
下載3在「計算機視覺工坊」公眾號后台回復:SLAM,即可下載獨家SLAM相關視頻課程,包含視覺SLAM、激光SLAM精品課程。
重磅!計算機視覺工坊-學習交流群已成立
掃碼添加小助手微信,可申請加入3D視覺工坊-學術論文寫作與投稿 微信交流群,旨在交流頂會、頂刊、SCI、EI等寫作與投稿事宜。
同時也可申請加入我們的細分方向交流群,目前主要有ORB-SLAM系列源碼學習、3D視覺、CV&深度學習、SLAM、三維重建、點雲后處理、自動駕駛、CV入門、三維測量、VR/AR、3D人臉識別、醫療影像、缺陷檢測、行人重識別、目標跟蹤、視覺產品落地、視覺競賽、車牌識別、硬件選型、深度估計、學術交流、求職交流等微信群,請掃描下面微信號加群,備注:”研究方向+學校/公司+昵稱“,例如:”3D視覺 + 上海交大 + 靜靜“。請按照格式備注,否則不予通過。添加成功后會根據研究方向邀請進去相關微信群。原創投稿也請聯系。
▲長按加微信群或投稿
▲長按關注公眾號
3D視覺從入門到精通知識星球:針對3D視覺領域的知識點匯總、入門進階學習路線、最新paper分享、疑問解答四個方面進行深耕,更有各類大廠的算法工程人員進行技術指導。與此同時,星球將聯合知名企業發布3D視覺相關算法開發崗位以及項目對接信息,打造成集技術與就業為一體的鐵桿粉絲聚集區,近2000星球成員為創造更好的AI世界共同進步,知識星球入口: