在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

OpenCV上八種不同的目標追蹤算法

zhKF_jqr_AI ? 來源:未知 ? 作者:李倩 ? 2018-08-05 09:03 ? 次閱讀

編者按:目標跟蹤作為機器學習的一個重要分支,加之其在日常生活、軍事行動中的廣泛應用,很多國內外學者都對此頗有研究。本文將討論OpenCV上八種不同的目標追蹤算法

雖然我們熟知的的質心追蹤器表現得很好,但它需要我們在輸入的視頻上的每一幀運行一個目標探測器。對大多數環境來說,在每幀上進行檢測非常耗費計算力。

所以,我們想應用一種一次性的目標檢測方法,然后在之后的幀上都能進行目標追蹤,使這一任務更加快速、更高效。

這里的問題是:OpenCV能幫我們達到這種目標追蹤的目的嗎?

答案是肯定的。

OpenCV目標追蹤

首先,我們會大致介紹八種建立在OpenCV上的目標檢測算法。之后我會講解如何利用這些算法進行實時目標追蹤。最后,我們會比較各個OpenCV目標追蹤的效果,總結各種方法能夠適應的環境。

八種OpenCV目標追蹤安裝

無人機拍攝的視頻,用MedianFlow進行目標追蹤

你可能會驚訝OpenCV竟然有八種不同的目標追蹤工具,他們都可以運用到計算機視覺領域中。

這八種工具包括:

BOOSTING Tracker:和Haar cascades(AdaBoost)背后所用的機器學習算法相同,但是距其誕生已有十多年了。這一追蹤器速度較慢,并且表現不好,但是作為元老還是有必要提及的。(最低支持OpenCV 3.0.0)

MIL Tracker:比上一個追蹤器更精確,但是失敗率比較高。(最低支持OpenCV 3.0.0)

KCF Tracker:比BOOSTING和MIL都快,但是在有遮擋的情況下表現不佳。(最低支持OpenCV 3.1.0)

CSRT Tracker:比KCF稍精確,但速度不如后者。(最低支持OpenCV 3.4.2)

MedianFlow Tracker:在報錯方面表現得很好,但是對于快速跳動或快速移動的物體,模型會失效。(最低支持OpenCV 3.0.0)

TLD Tracker:我不確定是不是OpenCV和TLD有什么不兼容的問題,但是TLD的誤報非常多,所以不推薦。(最低支持OpenCV 3.0.0)

MOSSE Tracker:速度真心快,但是不如CSRT和KCF的準確率那么高,如果追求速度選它準沒錯。(最低支持OpenCV 3.4.1)

GOTURN Tracker:這是OpenCV中唯一一深度學習為基礎的目標檢測器。它需要額外的模型才能運行,本文不詳細講解。(最低支持OpenCV 3.2.0)

我個人的建議:

如果追求高準確度,又能忍受慢一些的速度,那么就用CSRT

如果對準確度的要求不苛刻,想追求速度,那么就選KCF

純粹想節省時間就用MOSSE

從OpenCV 3開始,目標檢測器得到了快速發展,下表總結了不同版本的OpenCV中可食用的追蹤器:

開始動手

想要用OpenCV進行目標追蹤,首先打開一個新文件,將它命名為opencv_object_tracker.py,然后插入以下代碼:

我們開始輸入必須的安裝包,確保你已經安裝了OpenCV(我推薦3.4以上的版本),其次你要安裝imutils:

輸入安裝包后,我們開始分析命令行參數:

我們的命令行參數包括:

--video:到達輸入視頻文件的替代路線。如果該參數失效,那么腳本將會使用你的網絡攝像頭。

--tracker:假設默認追蹤器設置的是kcf,一整列可能的追蹤器代碼表示下一個代碼塊或下方的部分。

讓我們處理追蹤器的不同類別:

圖2中我們提到,并不是所有追蹤器都使用OpenCV 3以上的版本。在3.3版本上,同樣發生了安裝上的變化,在3.3之前,追蹤器必須用cv2. Tracker_create創造,并且要在追蹤器的名字上用大寫字符串標注(22和23行)。

對于3.3以上的版本,每個追蹤器可以用各自的函數創造,如cv2. TrackerKCF_create。詞典OPENCV_OBJECT_TRACKERS包含了7種OpenCV的目標追蹤器(30—38行)。它將目標追蹤器的命令行參數字符串映射到實際的OpenCV追蹤器函數上。

其中42行里的tracker目的是根據追蹤器命令行參數以及從OPENCV_OBJECT_TRACKERS得來的相關重要信息。

注意:這里我沒有將GOTURN加入到追蹤器設置中因為它還需要額外的模型文件。

我們還對initBB進行初始化(46行),當我們用鼠標選中目標物體時,該變量會顯示目標物體的邊界框坐標。

接下來,讓我們對視頻流和FPS進行初始化:

49—52行是訪問網絡攝像頭的步驟,這里我們設定一個一秒鐘的暫停時間,好讓攝像頭傳感器進行“熱身”。

接著--video命令行參數會出現,所以我們可以從視頻文件中對視頻流進行初始化(55—56行)。

下面是從視頻流中進行幀數迭代循環的步驟:

在65和66行中我們提取一個frame,同時在69和70行處理視頻文件中沒有幀數的情況。

為了讓我們的算法處理幀數的速度更快,我們用resize將輸入的視頻幀調整為50像素(74行),這里處理的數據越少,速度就會越快。

之后,我們提取視頻幀的寬度和高度,之后我們會用到高度(75行)。

目標物體選定之后,我們就可以用以下代碼進行處理:

如果目標物體已經被選定,我們需要不斷更新目標物體的位置,為了做到這一點,我們在80行使用update方法,它會定位目標物體的新位置并且返回一個success和box值。

如果順利的話,我們可以在frame中得到更新后的邊界框位置。注意,追蹤器可能會跟丟目標物并且報錯,所以success可能不會一直是True。接著更新FPS估計器。

接著,讓我們展示一下frame,以及用鼠標選取目標物體:

我們將展示frame,并且繼續迭代循環,鍵入其他指令才會停止。

當鍵入“s”后,我們用cv2.selectROI“選擇”一個目標ROI。這一函數可以讓你在視頻暫停的時候手動選擇一個ROI:

用戶必須畫出邊界框后按回車或空格鍵來確定所選區域。如果你需要重新選擇,就按“ESCAPE”鍵。

同樣,我們還能用真實的目標探測器來進行手動選擇。

最后,如果視頻有更多的幀,或者出現了“quit”的情況,如何退出這一循環:

最后一個模塊展示了我們如何停止循環,這時所有的指標都輸出并且窗口關閉。

目標追蹤結果

提示:為了確保你跟上本文的進度,并且用到了文章中的OpenCV方法,請先確保你在“下載資料”中下載了代碼和視頻。

之后,打開一個終端并執行以下命令:

如果你下載了本教程的源代碼和視頻,那么--video的可用參數在以下文件中:

american_pharoah.mp4

dashcam_boston.mp4

drone.mp4

nascar_01.mp4

nascar_02.mp4

race.mp4

……

--tracker中的參數在:

csrt

kcf

boosting

mil

tld

medianflow

mosse

你也可以用計算機的攝像頭:

下面的實例會展示OpenCV的追蹤器如何在較長一段時間中進行追蹤,以及與短時間片段進行對比:

總結

這篇文章講解了如何用OpenCV進行目標物體追蹤。具體來說,我們回顧了庫里的八種算法:

CSRF

KCF

Boosting

MIL

TLD

MedianFlow

MOSSE

GOTURN

我們可以將OpenCV的這八種追蹤器用于不同的任務,包括短跑比賽、賽馬、賽車、無人機追蹤等高速視頻上。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 機器學習
    +關注

    關注

    66

    文章

    8493

    瀏覽量

    134156
  • 追蹤算法
    +關注

    關注

    2

    文章

    9

    瀏覽量

    7694
  • OpenCV
    +關注

    關注

    32

    文章

    642

    瀏覽量

    42474

原文標題:用OpenCV實現八種不同的目標跟蹤算法

文章出處:【微信號:jqr_AI,微信公眾號:論智】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦
    熱點推薦

    仿人足球機器人目標定位技術與追蹤算法改進

    移動機器人視覺的研究主要集中在顏色模型建立、目標識別、定位以及跟蹤等方面。目標的實時識別與定位是足球機器人在足球賽中精確踢球的前提。文章主要是針對目前足球機器人在視覺系統所存在的問題進行了顏色模型建立及
    發表于 09-19 11:18 ?2863次閱讀

    基于OPENCV的運動目標跟蹤實現

    CAMSHIFT算法是一基于顏色直方圖的目標跟蹤算法。在視頻跟蹤過程中,CAMSHIFT算法利用選定
    發表于 12-23 14:21

    基于FPGA的實時移動目標追蹤

    邊界查找將結果顯示到lcd顯示屏。 圖2 基于FPGA的移動目標追蹤系統FPGA部分源碼:結果展示:圖3 實驗圖1圖4 實驗圖2 圖5 對6的邊界追蹤圖6 對圓的邊界跟蹤圖7 對菱形
    發表于 08-10 09:15

    基于QT+OpenCv目標跟蹤算法實現

    目標跟蹤算法作為一有著非常廣泛的應用的算法,在航空航天、智能交通、智能設備等領域有著非常廣泛的應用。本系列博客將教大家在410c開發板
    發表于 09-21 10:42

    【方案分享】基于C6678+Zynq-7045 的目標追蹤視覺技術

    GFLOP,算法能力強,滿足目標追蹤算法要求。ZYNQ Z-7045/7100集成PS端雙核ARM Cortex-A9 + PL端Kintex-7架構28nm可編程邏輯資源,ARM主
    發表于 05-19 17:10

    什么是純追蹤算法

    什么是純追蹤算法
    發表于 11-22 06:08

    移動信源追蹤活動目標的方法

    摘要:無線網絡的出現使移動追蹤并定位正在運動的目標變為可能,在多傳感器網絡中,測距定位是目標定位的一常用手段。利用測距定位的移動追蹤方法,
    發表于 02-23 13:24 ?38次下載

    基于OPENCV的運動目標跟蹤實現

    CAMSHIFT算法是一基于顏色直方圖的目標跟蹤算法。在視頻跟蹤過程中,CAMSHIFT算法利用選定
    發表于 11-07 14:47 ?924次下載
    基于<b class='flag-5'>OPENCV</b>的運動<b class='flag-5'>目標</b>跟蹤實現

    OpenCV3編程入門-源碼例程全集-點追蹤

    OpenCV3編程入門-源碼例程全集-點追蹤
    發表于 09-18 16:38 ?0次下載

    仿人足球機器人目標定位與追蹤算法改進方案免費下載

    熱點,目標的實時識別與定位是足球機器人在足球賽中精確踢球的前提。文章主要是針對目前足球機器人在視覺系統所存在的問題進行了顏色模型建立及目標定位算法的改進,加入了
    發表于 09-21 11:31 ?52次下載

    QT+Opencv粒子濾波算法實現視頻目標跟蹤——(三)QT環境安裝及配置

    在QT+OpenCV實現在410c開發板實現視頻目標追蹤預研系列內容呢的前面兩個博客中已經對目標跟蹤
    發表于 02-23 10:33 ?3186次閱讀

    QT+Opencv粒子濾波算法實現視頻目標跟蹤——如何選擇跟蹤算法

    目標跟蹤算法作為一有著非常廣泛的應用的算法,在航空航天、智能交通、智能設備等領域有著非常廣泛的應用。本系列博客將教大家在410c開發板
    發表于 02-27 10:32 ?5554次閱讀
    QT+<b class='flag-5'>Opencv</b>粒子濾波<b class='flag-5'>算法</b>實現視頻<b class='flag-5'>目標</b>跟蹤——如何選擇跟蹤<b class='flag-5'>算法</b>

    使用Adaboost算法實現車牌檢測在OpenCV實現的研究分析

    AdabtxⅪt是一個構建精確分類器的學習算法,在目標檢測領域有著廣泛的應用。OpenCV是Intel開源計算機視覺庫。該文給出了在OpenCV
    發表于 09-27 17:49 ?7次下載
    使用Adaboost<b class='flag-5'>算法</b>實現車牌檢測在<b class='flag-5'>OpenCV</b><b class='flag-5'>上</b>實現的研究分析

    基于多智能體協同強化學習的多目標追蹤方法

    針對現有多目標追蹤方法通常存在學習速度慢、追蹤效率低及協同追蹤策略設計困難等問題,提岀一改進的多目標
    發表于 03-17 11:08 ?20次下載
    一<b class='flag-5'>種</b>基于多智能體協同強化學習的多<b class='flag-5'>目標</b><b class='flag-5'>追蹤</b>方法

    OpenCV不同的目標追蹤算法

    分類器的任務是將圖像的矩形區域分類為對象或背景。分類器接受圖像區域作為輸入,并返回介于0和1之間的分數,以指示圖像區域包含對象的概率。如果確定圖像區域是背景,則分數為0;如果確定區域是對象,則分數為1。
    的頭像 發表于 03-30 10:22 ?2179次閱讀
    主站蜘蛛池模板: 欧美αv日韩αv另类综合 | 日本特黄特色大片免费看 | 成年男人永久免费看片 | 日本a网 | 亚洲四虎影院 | 男人和女人在床做黄的网站 | 中国同志chinese小彬tv | 加勒比一区二区 | 免费网站看av片 | 天天操天天噜 | 中文字幕一区二区三区在线不卡 | 色猫av | 国产精品久久久亚洲456 | 欧美成人xxxx | 奇米视频在线观看 | 午夜影院在线看 | 国产清纯白嫩大学生正在播放 | 国内精品哆啪啪 | 久久精品亚瑟全部免费观看 | 久久性感美女视频 | 久久偷窥视频 | 欧美亚洲综合在线观看 | 亚洲一区二区三区不卡视频 | 黄页网址免费观看18网站 | 欧美影欧美影院免费观看视频 | 免费无遮挡很爽很污很黄 | 国产欧美精品一区二区色综合 | 九月丁香婷婷亚洲综合色 | 天天操穴 | 亚洲va中文字幕 | 亚洲视频在线免费看 | 欧美性受xxxx极品 | 久久羞羞视频 | 五月天综合在线 | 欧美zooz人禽交免费 | 日韩毛片免费看 | 欧美深深色噜噜狠狠yyy | 亚洲成熟人网站 | 欧美性受视频 | 欧美成人高清性色生活 | 模特精品视频一区 |