opencv流量計數 多攝像頭實時目標跟蹤和計數

2021-10-17 10:45:00 字數 1258 閱讀 6871

編譯:ronghuaiyang

這個儲存庫包含了我的目標檢測和跟蹤專案。所有這些都可以託管在雲伺服器上。

由於有imagezmq,你還可以使用自己的非同步處理ip相機。

這個專案是目標計數應用的乙個擴充套件。

每個跟蹤id只計數一次。

通過檢視被跟蹤目標的路徑與計數線的交叉點對目標進行計數。

使用低置信度濾波進行跟蹤,來自上面同樣的**。

顯示檢測結果是可選的(但是隱藏了平均檢測置信度)。

可以使用多個ip攝像頭。

方向計數可以配置為基於角度。

每一小時的間隔記錄計數。

記錄每個計數目標的交叉詳細資訊。

可以託管在雲伺服器上。

注意,由於detrac不包含任何電單車,它們是唯一被忽略的車輛。此外,detrac資料集只包含中國的交通影象,因此由於缺乏訓練資料,它很難正確地檢測出其他國家的某些車輛。例如,它經常會將掀背車誤歸為suv,或者由於不同的顏色方案而無法識別計程車。

這個專案最初打算成為乙個應用程式,用於使用我自己的智慧型手機計算當前在多個房間的人數,伺服器被遠端託管。下面展示了對人和汽車的檢測、跟蹤和計數。

可以託管在雲伺服器上

我使用detrac訓練帶有v3標註的資料集訓練了yolov4和deep sort模型。我提供了將detrac訓練影象和v3標註轉換為正確格式的指令碼,用於訓練yolov4模型和deep sort跟蹤模型。

detrac影象轉換為market 1501訓練格式。

detrac影象被轉換成darknet yolo訓練格式。

兩種模型都在detrac訓練集上進行了訓練和評估,但由於缺少v3標註,測試集還沒有評估,我也沒有matlab用於deep sort的評估軟體。到目前為止,對於我的用例來說,它已經足夠好了。

為了讓大家了解我們的期望,我可以執行兩個流量計數流,每個流大約10fps(正如你在流量計數gif中看到的)。當然,這在很大程度上取決於流解析度以及用於檢測和跟蹤的幀數。

當我第一次開始目標計數專案時,我使用yolov3,跟蹤幀率大約是10fps,很難一次執行多個流。使用yolov4可以更容易地執行具有更高解析度的兩個流,並提供更好的檢測精度。

這個專案是在python 3.6上構建和測試的。

英文原文:

opencv多攝像頭測試

因為要做雙目視覺,所以要用多個攝像頭。多攝像頭的方案有兩種,一種是usb攝像頭,第二種是網口攝像頭。按開發環境分windows和linux。我先測試win7下的多攝像頭。因為筆記本有4個usb口,我手頭有兩個羅技c170和另乙個牌子的webcam,加上我筆記本自帶的攝像頭,另外有乙個飈王usb2.0...

OPENCV讀取攝像頭

opencv highgui cvcreatecameracapture 或cvcapturefromcam windows 中都是由較為低效的 vfw機制實現的,不適合在最終產品中使用。在 windows 中使用directshow opencv 中文網的 yushiqi 提供了乙個基於 dire...

OpenCV攝像頭讀取

在mac下面使用預設的opencv讀取攝像頭程式會報錯 int main int,char videocapture cap 0 open the default camera if cap.isopened check if we succeeded return 1 mat edges name...