配置: 運動偵測
關於
動作偵測會監看您的相機饋送是否有移動,以便 Agent DVR 可以在確實發生狀況時才進行錄製和警示。這樣可以節省磁碟空間、讓影片審核速度快得多,並可在有人進入您的車道或車輛停在外面時立即通知您。
Agent DVR 中的動作偵測在啟始警示和啟用AI 處理中扮演重要角色。您可以設定 Agent DVR 在偵測到動作或觸發警示時進行錄製。若要設定這些選項,請瀏覽錄製選單並參考模式設定。此外,動作偵測還可用於啟動各種動作。
請注意,動作偵測有時可能因無法區分實際物體移動和環境因素(如風、雨或亮度變化)而導致誤報。若要減少此類誤報,您可以透過將 Agent DVR 與 CodeProject.AI 整合來提升動作偵測的準確度,以進行更精密的警示篩選。
設置動態偵測
動作區域讓你可以將檢測聚焦於重要的區域,例如門口、車道或花園路徑,同時忽略繁忙區域(如道路或搖曳的樹木)引起的誤報。
Agent DVR 中的動作檢測器區域控制可通過編輯攝像頭並從右上角菜單選擇 Detector 來訪問。要設置檢測器,你首先需要定義要監視的區域。Agent DVR 支持最多 9 個區域,每個區域由不同的顏色表示,可通過區域下拉菜單選擇。要創建區域,點擊筆工具 並在視頻預覽上繪製。使用左鼠標按鈕或觸摸進行繪製,在桌面上,使用右鼠標按鈕擦除。筆尖工具 調整繪製筆尖的大小,而橡皮擦工具 可刪除已繪製的區域。重置工具 可用於使用選定的區域填充整個區域。Agent DVR 隨後會監視這些彩色區域中的動作。
- 已啟用: 切換檢測器的使用。
- 檢測器: 選擇動作檢測器類型,並使用 按鈕進行配置。各種動作檢測器在各自的部分中有說明。
- 疊加層: 在直播視頻上顯示或隱藏動作檢測疊加層。
- 顏色: 調整動作檢測疊加層的顏色(不適用於所有檢測器)。
- 模糊: 在直播視頻中對檢測到的物體進行像素化,用於隱私保護。
- 超時: 設置攝像頭在動作停止後保持動作狀態的持續時間(以秒為單位,在 1 到 60 之間,默認值為 3)。這有助於減少快速重複事件。
使用區域
區域對於 AI 檢測器(人臉/LPR/物體識別)和物體跟蹤檢測器(如絆線、速度、物體跟蹤)至關重要。你可以在檢測器配置中選擇哪些區域將觸發警報,或為特定區域的警報指定 操作。
簡單檢測器在檢測到跨所有區域的足夠動作時激活警報。
某些檢測器類型不使用區域設置,例如 MQTT、ONVIF 或通過 API 調用觸發的動作。
使用動態區域
運動區域是可配置的區域組,您可以為其命名並保存以供將來使用。要將當前的運動區域配置保存為新區域,請點擊 區域 旁邊的編輯圖標。這些工具允許您添加、編輯和刪除區域。
在將 PTZ 攝像機移動到 PTZ 預設位置時應用運動區域(使用 Agent UI):
- 創建並保存一個具有特定名稱(例如 "carpark")的新運動區域配置。
- 添加一個新的 操作:
如果:「PTZ 預設應用」
選擇 PTZ 預設命令(例如「前往預設 1」)。注意:您的攝像機必須支持 PTZ 預設才能正常工作。
點擊添加任務:
任務:「設置運動檢測區域」
選擇您的新區域(「carpark」)。
點擊兩次確定。現在,每當您選擇該預設位置,或者如果 Agent 通過排程或其他事件設置該預設位置,此運動區域將自動應用。
您還可以使用 排程器 修改運動檢測器區域。此功能根據白天、星期或特定日期的不同,允許使用不同的運動區域配置。
HAAR 物件偵測器
此方法使用称为HAAR级联的文件来识别视频源中的对象。但是,使用简单检测器配合AI Server可能会获得更好的结果。
- Frame Size: 选择用于处理的帧大小。较小的帧可降低CPU使用率,但准确度可能较低。
- Detect Interval: 设置帧处理的频率,单位为毫秒。例如,200等于每秒5次,1000等于每秒1次。
- Width Limits and Height Limits: 定义Agent DVR检测的对象大小范围,以帧宽度或高度的百分比表示。调整这些滑块将在视频上显示覆盖层,指示目标对象的大小范围。
- Use GPU: 使用GPU进行处理的选项,仅当您的GPU支持Cuda且已安装必要的驱动程序时可用。
- File: 选择HAAR Cascade文件来配置对象检测器。默认文件用于检测面部和猫脸。
- Alert Condition and Alert Number: 配置Agent DVR根据检测到的对象数量生成警报。例如,要在识别到面部时触发警报,请将条件设置为"More Than",将Alert Number设置为0。
- Alert Zones: 指定要包含在监控区域中的运动区域。
- Check Corners: 有关详细信息,请参阅Checking Corners。
角落檢查
Agent 使用一種複雜的方法來判定是否應該根據您的區域配置來觸發警報或動作。它通過檢查檢測到的物體的中心點以及(可選)擴展到物體邊界框角落的網格來實現這一點。您可以通過設置一個表示從中心點到邊界框角落的距離的百分比來調整此功能,從而調整此功能。基本上,設置為 0 表示只檢查中心點,100 表示檢查所有角落,50 表示檢查中心點和邊界矩形的每個角之間的中點。如果您收到許多事件通知,而物體似乎不在指定的區域內,那麼將「檢查角落」設置為 0 可能會有益。
MQTT
您有能力從您的MQTT伺服器啟動運動偵測。首先,請確保您已適當設置MQTT。然後,要觸發物件偵測,只需將顯示在偵測器配置畫面中的命令傳遞到SERVER/commands通道,其中SERVER是您的伺服器名稱(顯示在您可以在設置中編輯的伺服器選單中)。此整合可實現更多功能且反應更快的運動偵測系統,充分利用您的MQTT伺服器的功能。
ONVIF
許多ONVIF相容裝置都配備了自己的動作偵測功能。當你選擇此模式並與ONVIF相容攝像機配對(在Agent中使用ONVIF連接類型)時,Agent DVR將依賴裝置本身提供動作偵測事件並根據這些事件觸發動作。由於分析在攝像機上進行,這是對伺服器CPU負擔最輕的選項。如果你遇到此功能的任何問題,建議檢查日誌(可在本機伺服器上的/logs.html存取),因為你的攝像機可能不支援ONVIF偵測。有關配置這些設定的詳細資訊,請參閱伺服器ONVIF設定。
- 事件逾時:重置動作狀態前等待的秒數時間。設定此值應高於你攝像機的事件通知間隔。
人員偵測器
此方法採用專門設計來偵測行人的專用演算法。但是,您可能會發現使用簡單偵測器並整合AI 警報篩選能提供更好的結果。
- 使用 GPU:決定是否使用 GPU 進行處理,僅當您的 GPU 支援 Cuda 且已安裝必要驅動程式時可用。
- 幀大小:選擇用於處理的幀大小。請注意,較小的幀對 CPU 的負擔較輕,但可能會產生較不精確的結果。
- 偵測間隔:設定幀處理的頻率(以毫秒為單位)。例如,200 等於每秒 5 次,而 1000 等於每秒 1 次。
- 警報條件和警報數量:根據偵測到的人數配置警報生成標準。例如,要在偵測到一個人時觸發警報,請將條件設定為「大於」並在警報數量欄位中輸入 0。
- 警報區域:選擇應在偵測區域內監控的特定動作區域。
- 檢查角落:如需更詳細的設定,請參考檢查角落。
- 信心度:偵測計數所需的最低信心度等級。
Reolink
某些Reolink摄像头提供API端点,Agent DVR可以轮询该端点以接收运动或AI警报状态。如果您的摄像头支持此功能,您可以使用此检测器。要检查您的摄像头是否具有此功能,请尝试访问URL:http://[IP ADDRESS]/api.cgi?cmd=GetMdState&channel=0&rs=Get&user=[USERNAME]&password=[PASSWORD](将[IP ADDRESS]、[USERNAME]和[PASSWORD]替换为您摄像头的IP地址和登录凭证)。成功连接将返回JSON格式的文本而不是错误页面。
- 间隔:确定Agent DVR轮询您的摄像头获取警报或运动数据的频率。
- 频道:要轮询的频道。独立摄像头使用0;NVR上的频道可能不同。
- 模式:在"运动"和"AI"之间选择。两种模式都会在Agent DVR中触发运动检测器事件,可用于录制(将记录模式设置为检测)。"AI"选项在摄像头识别到特定对象类别(如dog_cat、face、people、vehicle)时触发运动检测。
- 使用SSL:通过HTTPS连接到摄像头。
您可以配置操作,以在检测到标记为dog_cat、face、people或vehicle的对象时执行任务。
注意:要启用AI功能,您可能需要在摄像头的Web UI中激活跟踪,并设置最小和最大对象大小参数。Agent DVR随后将使用Reolink识别的对象标记您的录制。
海康威視
Hikvision攝影機提供ISAPI端點,Agent DVR可以監控該端點以接收動作或AI警報狀態。如果您的攝影機支援此功能,您可以使用此偵測器。檢查您的攝影機文件以查看是否支援此功能。
- 使用SSL: 是否為連線使用SSL。
- 連接埠: Agent會根據「使用SSL」設定使用連接埠80或443,但您可以在此覆寫。
- 頻道: 您的攝影機使用的頻道 - 對於攝影機這將是1,但如果您有Hikvision NVR,可能會有所不同
- 靈敏度: 動作偵測器的0(最不靈敏)到100(最靈敏)之間的值。
這些攝影機也可以偵測其他事件(例如線路穿越、入侵、滯留或區域進入)。Agent DVR將每個事件對應到一個指定類別,並引發一個標記有該類別名稱的「AI物體偵測到」事件,例如:線路穿越偵測、入侵偵測、區域進入、區域退出、滯留、停泊、無人行李。在「AI物體偵測到」下新增一個動作,並使用這些標籤進行篩選。要查看您的攝影機生成哪些事件,請在伺服器設定中將紀錄設定為除錯,並檢查伺服器選單中的紀錄。
速度偵測
此方法採用您提供的場景資訊來追蹤移動物體、估算其速度,並在物體移動過快或過慢時產生警報。
- 進階: 如需更詳細的設定,請參閱下方的進階章節。
- 寬度限制和高度限制: 定義場景中物體偵測的大小範圍,數值以場景寬度或高度的百分比表示。調整這些滑塊將在視頻上顯示覆蓋層,指示物體的目標大小範圍。
- 最小移動距離: 設定物體必須移動的最小距離才能視為在運動中,基於場景寬度的百分比。
- 最小時間: 指定物體必須處於運動狀態才能被追蹤的時間長度,單位為十分之一秒(例如,1 = 0.1 秒,10 = 1 秒)。
- 速度測量: 選擇覆蓋層的首選速度測量單位。
- 速度限制: 決定速度偵測的下限和上限。超出此範圍的移動將觸發動作偵測事件。
- 水平和垂直距離: 輸入場景中的總距離(以米為單位)。Agent DVR 使用此測量值來計算移動物體的速度。
- 警報區域: 選擇監控區域中包含哪些動作區域。
- 檢查角落: 如需其他設定,請參閱檢查角落。
物體追蹤
此偵測器識別並追蹤移動物體,根據其在場景中出現的時間和移動距離來觸發動作偵測事件。
- 進階: 如需更詳細的設定和選項,請參閱下方的進階部分。
- 寬度限制和高度限制: 為物體偵測指定大小範圍,數值以場景的寬度或高度百分比表示。調整這些滑塊將在視頻上覆蓋目標物體大小範圍的視覺表示。
- 最小移動距離: 定義物體必須移動的最小距離才能被識別為移動物體,相對於場景的寬度。
- 最小時間: 設定物體必須處於移動狀態才能被考慮進行追蹤的最少時間長度,以十分之一秒為單位(例如,1 = 0.1 秒,10 = 1 秒)。
- 顯示總數: 在實時視頻提供中新增計數器以追蹤移動物體。
- 熱力圖: 透過為追蹤物體新增線條來視覺化一段時間內的移動模式。
- 警報區域: 選擇應納入監控區域的動作區域。
- 檢查邊角: 如需其他資訊,請參閱檢查邊角。
當 Agent DVR 監控和追蹤場景中的移動時,它會在偵測到的物體周圍顯示彩色矩形。顏色的含義如下:
- 白色: 物體剛被偵測到並正在考慮中。
- 黃色: 物體在多個影格中被偵測到。
- 橙色: 物體的移動時間至少達到追蹤設定中指定的最小時間。
- 紅色: 物體已滿足所有追蹤要求以觸發動作偵測事件。
行程線
此偵測器可識別並追蹤移動物體,當物體穿過場景中預先定義的絆線時觸發動作偵測事件。用於線條穿越偵測,例如在有人越過柵欄線或從門口進入時獲得警報。若要新增絆線,只需在即時影片上按一下並拖曳。您最多可建立 10 條絆線。若要移除絆線,請按一下並拖曳其中一個點離開場景。
- 進階: 如需更詳細的設定和選項,請參閱下方的進階部分。
- 寬度限制和高度限制:設定要偵測物體的大小範圍,數值以場景寬度或高度的百分比表示。調整這些滑桿時,會在影片上覆蓋目標大小範圍的視覺表示。
- 最小移動距離:指定物體必須移動的最小距離以被識別為移動物體,相對於場景的寬度。
- 最小時間:定義物體必須處於運動狀態的最小時間長度以被追蹤,以十分之一秒為單位(例如,1 = 0.1 秒,10 = 1 秒)。
- 重複觸發:啟用此選項可允許物體多次觸發同一條絆線。預設情況下,物體只能觸發絆線一次。
- 計數:顯示物體穿過絆線的次數計數,以及穿越的方向。選項包括計算左、右、雙向或總計穿越次數。
- 警報:將系統設定為在絆線按指定方向或任何方向被穿過時生成警報。
- 警報區域: 選擇監控區域中包含哪些動作區域。
- 檢查邊角: 如需其他資訊,請參閱檢查邊角。
透過 API
若要使用 API 呼叫為攝影機啟動動作偵測,您必須定義物件類型 (ot) 和物件 ID (oid)。例如,針對攝影機 (ot=2) 的 ID 為 1 (oid=1;編輯裝置時此 ID 會顯示在編輯控制項的頂部),API 呼叫的結構應如下所示:
http://localhost:8090/command/detect?ot=2&oid=1高級設定
偵測器的預設設定通常適用於大多數場景,但如有必要,您可以微調它們以獲得更好的效能。
- 分析器:目前可用的分析器是 CNT 背景消減器,以其高準確度和低 CPU 使用率而聞名。
- 幀尺寸:選擇用於處理的幀尺寸。較小的幀可以降低 CPU 使用率,並且由於雜訊消減,實際上可能改善追蹤效果。
- 追蹤器:選擇 OpenCV 追蹤器用於物件追蹤。選項包括:
- MOSSE:此追蹤器提供最低的 CPU 使用率,但準確度最低。
- CSRT:最準確的選項,但使用更多 CPU(預設)。
- 最大物件數:設定同時追蹤的物件數量限制。物件越多,CPU 使用率越高。
- 偵測間隔:定義幀處理頻率以進行動作偵測,單位為毫秒(例如 200 表示每秒 5 次,1000 表示每秒 1 次)。
- 追蹤間隔:設定追蹤器處理頻率。較高的間隔可能會遺失快速移動的物件(例如 200 表示每秒 5 次,1000 表示每秒 1 次)。
- 像素穩定性:決定像素被視為穩定所需的樣本數,以及像素因保持相同顏色而可獲得的最大「額度」。這些設定對於有效的背景消減和動作偵測至關重要。 更多資訊
- 使用歷史記錄:啟用此功能可學習場景中持續移動的物件。通常建議將此設定保持為停用,除非必要。
- 平行處理:啟動動作偵測演算法中的平行處理。建議保持此設定為啟用。
- 追蹤逾時:指定等待物件重新出現的時間(秒為單位),超過此時間後停止追蹤該物件。
- 動作逾時:設定等待靜止物件再次移動的時間長度(秒為單位),超過此時間後停止追蹤該物件。