在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

<menu id="6qfwx"><li id="6qfwx"></li></menu>
    1. <menu id="6qfwx"><dl id="6qfwx"></dl></menu>

      <label id="6qfwx"><ol id="6qfwx"></ol></label><menu id="6qfwx"></menu><object id="6qfwx"><strike id="6qfwx"><noscript id="6qfwx"></noscript></strike></object>
        1. <center id="6qfwx"><dl id="6qfwx"></dl></center>

            博客專欄

            EEPW首頁 > 博客 > 用 YOLO v5+DeepSORT,打造實時多目標跟蹤模型

            用 YOLO v5+DeepSORT,打造實時多目標跟蹤模型

            發(fā)布人:數(shù)據(jù)派THU 時間:2021-08-20 來源:工程師 發(fā)布文章

            來源:HyperAI超神經

            目標跟蹤 (Object Tracking) 是機器視覺領域的重要課題,根據(jù)跟蹤目標的數(shù)量,可分為單目標跟蹤 (Single Object Tracking,簡稱 SOT) 和多目標跟蹤 (Multi Object Tracking,簡稱 MOT)。

            多目標跟蹤往往因為跟蹤 ID 眾多、遮擋頻繁等,容易出現(xiàn)目標跟丟的現(xiàn)象。借助跟蹤器 DeepSORT 與檢測器 YOLO v5,可以打造一個高性能的實時多目標跟蹤模型。

            本文將對單目標跟蹤和多目標跟蹤分別進行介紹,文末將詳解 YOLO v5+DeepSORT 的實現(xiàn)過程及具體代碼。

            單目標跟蹤詳解

            定義 

            單目標跟蹤 SOT 是指在視頻首幀給出目標,根據(jù)上下文信息,在后續(xù)幀定位出目標位置,建立跟蹤模型對目標的運動狀態(tài)進行預測。

            應用場景 

            SOT 在智能視頻監(jiān)控、自動駕駛、機器人導航、人機交互等領域應用廣泛。

            1.gif

            足球比賽中利用 SOT 預測足球運動軌跡

            研究難點 

            最主要的三個難點:目標背景的變化、物體本身的變化、光照強度變化。

            主流算法(基于深度學習) 

            解決 SOT 問題主要有兩種方法:判別式跟蹤及生成式跟蹤,隨著深度學習在圖像分類、目標檢測等機器視覺相關任務中的成功應用,深度學習也開始大量應用于目標跟蹤算法中。

            本文主要圍繞基于深度學習的 SOT 算法進行介紹。

            2.jpg

            各時間節(jié)點的代表性目標跟蹤算法

            2012 年后以 AlexNet 為代表的深度學習方法

            被引入到目標跟蹤領域中

            關鍵算法:SiamFC

            與傳統(tǒng)目標跟蹤中所用的在線學習方法不同,SiamFC 側重于在離線階段學習強嵌入。

            它將一個基本跟蹤算法,與一個在 ILSVRC15 數(shù)據(jù)集上進行端到端訓練的新型全卷積孿生網絡 (fully-convolutional Siamese network) 相結合,用于視頻中的目標檢測。

            3.png

            全卷積孿生網絡架構示意圖

            實驗證明,在模型測試和訓練期間,孿生全卷積深度網絡對已有數(shù)據(jù)的利用更加高效。

            SiamFC 開創(chuàng)了將孿生網絡結構應用于目標跟蹤領域的先河,顯著提高了深度學習方法跟蹤器的跟蹤速度,結構簡單性能優(yōu)異。

            相關論文:

            https://arxiv.org/pdf/1606.09549.pdf

            相關衍生算法 

            1、StructSiam

            提出了 local structure learning method,同時考慮目標的 local pattern 和結構關系。為此,作者設計了一個局部模式檢測模塊,來自動識別目標物體的辨別區(qū)域。

            該模型可以以端到端的方式進行訓練。

            相關論文:

            https://openaccess.thecvf.com/content_ECCV_2018/papers/Yunhua_Zhang_Structured_Siamese_Network_ECCV_2018_paper.pdf

            2、SiamFC-tri

            作者提出了一種全新的 triplet loss,用于提取跟蹤物體的 expressive deep feature。在不增加輸入的情況下,該方法可以利用更多元素進行訓練,通過組合原始樣本,實現(xiàn)更強大的特征。

            相關論文:

            https://openaccess.thecvf.com/content_ECCV_2018/papers/Xingping_Dong_Triplet_Loss_with_ECCV_2018_paper.pdf

            3、DSiam

            作者提出了動態(tài)孿生網絡,通過一個快速轉換學習模型,能夠有效地在線學習目標的外觀變化和先前幀的背景壓制。同時作者還提出了元素多層融合,利用多層深度特征自適應地整合網絡輸出。

            DSiam 允許使用任何可行的通用或經過特殊訓練的特征,如 SiamFC 和 VGG,且動態(tài)孿生網絡可以直接在標記的視頻序列上進行整合訓練,充分利用移動物體豐富的時空信息。

            相關論文:

            https://openaccess.thecvf.com/content_ICCV_2017/papers/Guo_Learning_Dynamic_Siamese_ICCV_2017_paper.pdf

            多目標跟蹤詳解

            定義 

            多目標跟蹤(MOT)是指對視頻中每一幀的物體都賦予一個 ID,并將每個 ID 的行為軌跡畫出來。

            4.gif

            在街景視頻中進行多目標跟蹤

            應用場景 

            MOT 在智能安防、自動駕駛、醫(yī)學場景等領域,都有廣泛應用。

            研究難點 

            MOT 目前遇到的最大挑戰(zhàn)就是遮擋 (Occlusion),即目標之間的彼此遮擋或環(huán)境對目標產生的遮擋。

            主流算法 

            1、SORT

            Simple Online and Realtime Tracking (SORT) 是一種專注簡單高效算法的多目標跟蹤方法,它非常實用,可以為在線和實時應用,有效地關聯(lián)目標。

            SORT 只是將常見技術(如卡爾曼濾波、匈牙利算法)進行了簡單組合,準確率可與當時最先進的在線跟蹤器相提并論。

            5.png

            SORT 與其他方法的性能比較

            橫軸表示準確率,縱軸表示速度

            模型位置越高、越靠右,綜合表現(xiàn)越佳

            由于跟蹤方法簡單易用,跟蹤器的更新速度達到了 260 Hz,比當時最先進的跟蹤器快 20 倍。

            相關論文:

            https://arxiv.org/pdf/1602.00763.pdf

            2、DeepSORT

            DeepSORT 是 SORT 的升級版,它整合了外觀信息 (appearance information) 從而提高 SORT 的性能,這使得我們在遇到較長時間的遮擋時,也能夠正常跟蹤目標,并有效減少 ID 轉換的發(fā)生次數(shù)。

            6.png

            DeepSORT 在 MOT Challenge 數(shù)據(jù)集上的表現(xiàn)

            真實街景中遮擋情況非常常見

            作者將絕大部分的計算復雜度,都放到了離線預訓練階段,在這個階段會用一個大規(guī)模行人重識別數(shù)據(jù)集,學習深度關聯(lián)度量 (deep association metric)。

            在在線應用階段,則使用視覺外觀空間 (visual appearance space) 中的近鄰查詢,來建立 measurement-to-track 關聯(lián)。

            實驗表明,DeepSORT 使得 ID 轉換的次數(shù)減少了 45%,在高幀率下整體性能優(yōu)秀。

            此外 DeepSORT 是一個非常通用的跟蹤器,可以被接在任何一個檢測器上。

            相關論文:

            https://arxiv.org/pdf/1703.07402.pdf

            3、Towards Real-Time MOT

            作者提出了一個 MOT 系統(tǒng),使得目標檢測和外觀嵌入得以在一個共享模型中學習。也就是說把外觀嵌入模型納入一個 single-shot 檢測器中,使該模型可以同時輸出檢測以及對應的嵌入。

            作者還進一步提出了一個簡單快速的關聯(lián)方法,可以與聯(lián)合模型 (joint model) 一起運行。

            7.png

            Towards Real-Time MOT 與 SDE 模型

            Two-stage 模型以及 JDE 模型對比

            與之前的 MOT 系統(tǒng)相比,這兩個組件的計算成本都大大降低了,為實時 MOT 算法設計的后續(xù)工作,提供了一個整潔快速的基線。

            這是業(yè)內第一個接近實時的 MOT 系統(tǒng),它的運行速度更快、精度更高、代碼也已開源,非常值得參考。

            相關論文:

            https://arxiv.org/pdf/1909.12605v1.pdf

            用YOLOv5和DeepSORT進行多目標跟蹤

            該教程在 OpenBayes.com 運行。OpenBayes 是一個開箱即用的機器學習算力云平臺,提供 PyTorch、TensorFlow 等主流框架,以及 vGPU、T4、V100 等多種類型的算力方案,計價模式靈活簡單,按使用時長收費。

            本教程選用 vGPU 在 PyTorch 1.8.1 環(huán)境中運行。

            訪問完整教程:

            https://openbayes.com/console/open-tutorials/containers/BvxvYMbdefV/overview

            8.png

            本項目包括兩個部分,首先是 YOLO v5 檢測器,用于檢測出一系列物體;然后用 DeepSORT 進行跟蹤。

            第一步 代碼環(huán)境準備

            %cd Yolov5_DeepSort_Pytorch
            %pip install -qr requirements.txt  # 安裝依賴
            import torch
            from IPython.display import Image, clear_output  # 顯示結果
            clear_output()
            print(f"Setup complete. Using torch {torch.__version__} ({torch.cuda.get_device_properties(0).name if torch.cuda.is_available() else 'CPU'})")

            第二步 預處理待測視頻

            !y | ffmpeg -ss 00:00:00 -i test.avi -t 00:00:03 -c copy out.avi -y

            第三步 模型推理

            !python track.py --yolo_weights /openbayes/input/input1/crowdhuman_yolov5m.pt --source out.avi --save-vid

            第四步 格式轉換

            !ffmpeg -i /openbayes/home/Yolov5_DeepSort_Pytorch/inference/output/out.avi output.mp4 -y

            第五步 顯示結果

            from IPython.display import HTML
            from base64 import b64encode
            mp4 = open('output.mp4','rb').read()
            data_url = "data:video/mp4;base64," + b64encode(mp4).decode()

            HTML("""
            <video controls>
                  <source src="%s" type="video/mp4">
            </video>
            """ % data_url)

            9.gif

            輸出多目標跟蹤結果

            完整 notebook 請訪問:

            https://openbayes.com/console/open-tutorials/containers/BvxvYMbdefV/overview

            *博客內容為網友個人發(fā)布,僅代表博主個人觀點,如有侵權請聯(lián)系工作人員刪除。



            關鍵詞: AI

            相關推薦

            技術專區(qū)

            關閉