<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          基于OpenCV實戰(zhàn):動態(tài)物體檢測

          共 2900字,需瀏覽 6分鐘

           ·

          2021-04-25 10:22

          點擊上方小白學視覺”,選擇加"星標"或“置頂

          重磅干貨,第一時間送達

          最近,閉路電視安全系統(tǒng)運行著多種算法來確保安全,例如面部識別,物體檢測,盜竊檢測,火災警報等。我們在運動檢測的基礎上實現了許多算法,因為在空閑幀上運行所有這些進程沒有任何意義。在本文中,我們將討論實現基于運動檢測的視頻保存。


          安裝依賴庫
          OpenCV:pip install opencv-python


          基本動作檢測

          在這里,我們將討論代碼和對如何在后臺工作的基本理解。在計算機視覺中,我們把運動看作是環(huán)境的變化。為了計算轉換,我們必須有一個背景圖像來比較。所以,我們在程序的開頭保存第一個圖像。

          # Converting the image to GrayScalegray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)gray = cv2.GaussianBlur(gray,(21,21),0)# Saving the First Frameif first_frame is None:    first_frame = gray    continue

          然后,我們將后續(xù)幀與保存的第一幀進行比較,以觀察差異。計算完差異后,我們可以應用閾值將其轉換為黑白圖像。

          #Calculates difference to detect motiondelta_frame = cv2.absdiff(first_frame, gray)#Applies Threshold and converts it to black & white imagethresh_delta = cv2.threshold(delta_frame, 30, 255, cv2.THRESH_BINARY)[1]thresh_delta = cv2.dilate(thresh_delta, None, iterations=0)#finding contours on the white portion(made by the threshold)cnts,_ = cv2.findContours(thresh_delta.copy(), cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_SIMPLE)

          最后一個命令在該黑白圖像中查找輪廓,并給出用于創(chuàng)建邊界框的坐標,如上面的視頻所示。使用運動檢測的好處:

          1. 它不會保存無用的空閑鏡頭。因此,減少了其他算法的工作量,因為不會保存空閑幀進行處理。

          2. 它需要較少的計算,并且適合實時實施。


          阻礙與解決方案


          給定的因素導致輪廓檢測不理想,運動檢測的幼稚方法會在執(zhí)行開始時為所有比較保存第一幀。不好有幾個原因:

          • 白天的照明條件可能會改變。

          • 天氣變化。

          • 執(zhí)行時相機被遮擋。

          解決方案:在沒有運動的情況下,可以通過定期定期更新保存的幀來輕松解決此問題。

          # Number of idle frames to pass before changing the saved frame # for further comparisionsFRAMES_TO_PERSIST = 1000

          然后將其放在while循環(huán)中:

          #increment delay counter for every idle framedelay_counter += 1#Update the saved first frameif delay_counter > FRAMES_TO_PERSIST:    delay_counter = 0    first_frame = next_frame


          當檢測到運動時,將delay_counter設置為零,微小的物體(例如蜜蜂和昆蟲)和通常不必要的輕微不必要的運動被存儲起來。解決方案:如片段所示,我們應該在該區(qū)域設置一個閾值。

          # Minimum boxed area(in pixels) for a detected motion to count as actual motion# Use to filter out noise or small objectsMIN_SIZE_FOR_MOVEMENT = 2000

          然后在while循環(huán)中放置一個if語句:

          #Checks if the area is big enough to be considered as motion.if cv2.contourArea(c) > MIN_SIZE_FOR_MOVEMENT:    #Your code


          各種平臺上的基準:


          所有這些都是針對同一視頻(30-fps,1280x720)計算的。

          Raspberry Pi 2:

          • 規(guī)格
          • 1.5 GHz處理器
          • 1 GB內存
          • 沒有GPU
          • FPS:每秒8.08幀

          Jetson Nano:

          • 規(guī)格
          • 四核ARM處理器1.43Ghz
          • 2 Gb內存
          • GPU:128核心Nvidia Maxwell
          • FPS:每秒33幀

          個人電腦 :

          • 規(guī)格
          • i7第八代處理器
          • 16 GB內存
          • GTX 1060 6 GB GPU
          • FPS:每秒37幀


          潛在應用:

          智能鈴:

          如果有人站在您家門口,它將自動觸發(fā)鈴聲,并向您發(fā)送提示。


          潛在威脅警報:

          如果有人站在您家門前的時間長于正常時間,它將提醒您。


          結論


          在本文中,我們實現了一個非常基本但重要的算法,可用于有效運行所有其他算法。可以對該運動檢測算法進行更多修改,以使其更加健壯。


          下載1:OpenCV-Contrib擴展模塊中文版教程
          在「小白學視覺」公眾號后臺回復:擴展模塊中文教程即可下載全網第一份OpenCV擴展模塊教程中文版,涵蓋擴展模塊安裝、SFM算法、立體視覺、目標跟蹤、生物視覺、超分辨率處理等二十多章內容。

          下載2:Python視覺實戰(zhàn)項目52講
          小白學視覺公眾號后臺回復:Python視覺實戰(zhàn)項目即可下載包括圖像分割、口罩檢測、車道線檢測、車輛計數、添加眼線、車牌識別、字符識別、情緒檢測、文本內容提取、面部識別等31個視覺實戰(zhàn)項目,助力快速學校計算機視覺。

          下載3:OpenCV實戰(zhàn)項目20講
          小白學視覺公眾號后臺回復:OpenCV實戰(zhàn)項目20講,即可下載含有20個基于OpenCV實現20個實戰(zhàn)項目,實現OpenCV學習進階。

          交流群


          歡迎加入公眾號讀者群一起和同行交流,目前有SLAM、三維視覺、傳感器自動駕駛、計算攝影、檢測、分割、識別、醫(yī)學影像、GAN、算法競賽等微信群(以后會逐漸細分),請掃描下面微信號加群,備注:”昵稱+學校/公司+研究方向“,例如:”張三 + 上海交大 + 視覺SLAM“。請按照格式備注,否則不予通過。添加成功后會根據研究方向邀請進入相關微信群。請勿在群內發(fā)送廣告,否則會請出群,謝謝理解~


          瀏覽 34
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  草逼网视频 | 精品无码久久 | 亚洲aⅴ首页 | 草草草视频 | www.涩|