女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

如何使用質(zhì)心法進行目標(biāo)追蹤--文末送書

OpenCV學(xué)堂 ? 來源:OpenCV學(xué)堂 ? 2023-10-31 15:47 ? 次閱讀

如今,“圖像分類”、“目標(biāo)檢測”、“語義分割”、“實例分割”和“目標(biāo)追蹤”等5大領(lǐng)域是計算機視覺的熱門應(yīng)用。其中“圖像分類”與“目標(biāo)檢測”是最基礎(chǔ)的應(yīng)用,在此基礎(chǔ)上,派生出了“語義分割”、“實例分割”和“目標(biāo)跟蹤”等相對高級的應(yīng)用。

、基于目標(biāo)檢測的追蹤概述

基于目標(biāo)檢測的目標(biāo)追蹤方法(Tracking By Detecting,簡稱TBD)一般使用目標(biāo)檢測模型(如YOLO),在每個視頻幀上進行目標(biāo)檢測,然后將檢測出來的目標(biāo)進行關(guān)聯(lián),找到每個目標(biāo)的運行軌跡。如圖1所示,先使用目標(biāo)檢測模型檢測出7個目標(biāo),然后通過算法,將5b7dfc4c-77c1-11ee-939d-92fbcf53809c.png5b91784e-77c1-11ee-939d-92fbcf53809c.png進行關(guān)聯(lián),從而追蹤到這兩個足球的運行軌跡。

5b9d6492-77c1-11ee-939d-92fbcf53809c.png

1基于目標(biāo)檢測的目標(biāo)追蹤方法

TBD方法完整的流程如圖2所示,該方法共有5個步驟,其中最關(guān)鍵的是“目標(biāo)檢測”和“目標(biāo)關(guān)聯(lián)”兩個步驟,“目標(biāo)檢測”需要一個訓(xùn)練好的目標(biāo)檢測模型,用來發(fā)現(xiàn)圖像中的各個目標(biāo),“目標(biāo)關(guān)聯(lián)”需要一個關(guān)聯(lián)算法,用來進行目標(biāo)的配對。

(1)目標(biāo)檢測,檢測出要追蹤目標(biāo)的位置坐標(biāo)、目標(biāo)分類等信息,初始化每個目標(biāo)的軌跡。

2)目標(biāo)關(guān)聯(lián),使用算法,給當(dāng)前幀中的目標(biāo)和前一幀的目標(biāo)進行配對。

3)關(guān)聯(lián)成功,在上一幀中找到了當(dāng)前幀中檢測到的目標(biāo),配對成功,記錄目標(biāo)的軌跡。

4)新出現(xiàn)目標(biāo),在上一幀中沒有找到當(dāng)前幀中檢測到的目標(biāo),初始化新目標(biāo)的軌跡。

5)目標(biāo)消失,在當(dāng)前幀中沒有找到上一幀中檢測出來的目標(biāo),刪除該目標(biāo)的軌跡。

5bae60b2-77c1-11ee-939d-92fbcf53809c.png

2 基于目標(biāo)檢測的目標(biāo)追蹤方法(TBD)流程圖

在基于目標(biāo)檢測的目標(biāo)追蹤方法中,為了實現(xiàn)目標(biāo)的關(guān)聯(lián),容易想到的方法是“通過目標(biāo)識別進行目標(biāo)關(guān)聯(lián)”:對每一幀圖像進行目標(biāo)檢測,然后對每一個目標(biāo)提取特征,通過特征識別出每一個目標(biāo),從而實現(xiàn)目標(biāo)關(guān)聯(lián)。

但是,“通過目標(biāo)識別進行目標(biāo)關(guān)聯(lián)”需要在每一幀圖像中,提取出每一個目標(biāo)的特征,這需要大量的計算資源,同時還需要穩(wěn)定的特征提取器,在實際場景中很難做到,因此,通常采用其他方法進行目標(biāo)的關(guān)聯(lián),如常用的質(zhì)心法。

二、使用質(zhì)心法進行目標(biāo)關(guān)聯(lián)

質(zhì)心法是一種基于目標(biāo)檢測的目標(biāo)追蹤方法,只在目標(biāo)首次出現(xiàn)的時候,對目標(biāo)進行識別,在后續(xù)的視頻幀中,通過歐氏距離將檢測到的目標(biāo)進行關(guān)聯(lián),如圖3所示。

1)目標(biāo)檢測,使用深度學(xué)習(xí)模型,對視頻幀進行目標(biāo)檢測。

2)計算質(zhì)心坐標(biāo),使用目標(biāo)預(yù)測框的中心點作為質(zhì)心坐標(biāo)。

3)計算質(zhì)心距離,計算視頻的上一幀和當(dāng)前幀中目標(biāo)之間的歐式距離。

4)目標(biāo)關(guān)聯(lián),距離相近的為同一目標(biāo),如AC是同一目標(biāo),B是新出現(xiàn)目標(biāo)。

(5)目標(biāo)更新,更新已知目標(biāo)的坐標(biāo),生成新目標(biāo)ID,如果有目標(biāo)消失,則注銷消失目標(biāo)ID。

5bb8f0fe-77c1-11ee-939d-92fbcf53809c.png

3 使用質(zhì)心法實現(xiàn)目標(biāo)關(guān)聯(lián)

三、質(zhì)心法使用示例

質(zhì)心法是目標(biāo)關(guān)聯(lián)算法,在進行目標(biāo)追蹤時,還需要配合目標(biāo)檢測模型使用,下面代碼使用YOLO模型進行目標(biāo)檢測(已經(jīng)在coco數(shù)據(jù)集上訓(xùn)練好的YOLO模型),使用質(zhì)心法進行目標(biāo)關(guān)聯(lián),實現(xiàn)目標(biāo)的追蹤。

在以下代碼中,詳細(xì)介紹了兩幀圖像中的目標(biāo)(足球)的追蹤過程,在本書配套的源代碼中,還演示了對視頻中的目標(biāo)進行追蹤的方法。

(1)導(dǎo)入庫用到的庫(在配套代碼目錄下的yolo_detect.py文件里,封裝了YOLO模型的使用)

1 import cv2,math
  2 import numpy as np
  3 import IPython.display as display
  4 from yolo_detect import Init_Yolo,Detect,Draw #封裝YOLO模型的檢測操作
  5 from matplotlib import pyplot as plt
  6 plt.rcParams['font.sans-serif']=['SimHei'] #在統(tǒng)計圖上顯示中文

2)初始化YOLO模型(模型的初始化方法請查看yolo_detect.py文件中的Init_Yolo函數(shù))。

1 model,labels = Init_Yolo('./models/yolov3-tiny.cfg',
  2                          './models/yolov3-tiny.weights',
3'./models/coco.names')

(3)讀取兩幀圖像,并轉(zhuǎn)換為RGB格式,其中frame_1是上一幀圖像,frame_2是當(dāng)前幀圖像。

 1 frame_1 = cv2.imread('./images/ball_1.png')
  2 frame_1 = cv2.cvtColor(frame_1, cv2.COLOR_BGR2RGB)
  3 frame_2 = cv2.imread('./images/ball_2.png')
4frame_2=cv2.cvtColor(frame_2,cv2.COLOR_BGR2RGB)

4)檢測兩幀圖像中的足球目標(biāo)(調(diào)用yolo_detect.py文件中的Detect函數(shù))。

1 #使用YOLO檢測兩幀圖像中的目標(biāo)
  2 b1 = Detect(model,labels,frame_1)
  3 b2 = Detect(model,labels,frame_2)
  4 #只保留足球的檢測結(jié)果
  5 filter=np.where(b1[:,-1]=='sports ball')
  6 bbox1 = b1[filter]
  7 filter=np.where(b2[:,-1]=='sports ball')
8bbox2=b2[filter]

(5)計算質(zhì)心坐標(biāo),根據(jù)第4步檢測結(jié)果bbox1和bbox2,計算目標(biāo)的質(zhì)心(即綁定框的中心)。

1 A = (int(bbox1[0][0])+int(bbox1[0][2])/2,int(bbox1[0][1])+int(bbox1[0][3])/2)
  2 B = (int(bbox2[0][0])+int(bbox2[0][2])/2,int(bbox2[0][1])+int(bbox2[0][3])/2)
  3 C = (int(bbox2[1][0])+int(bbox2[1][2])/2,int(bbox2[1][1])+int(bbox2[1][3])/2)
4print("第一幀目標(biāo)A",A,"第二幀目標(biāo)B",B,"第二幀目標(biāo)C",C)

使用第4和第5步代碼,在第一幀圖像中檢測到目標(biāo)A,在第二幀圖像中檢測到目標(biāo)BC,并分別計算這3個目標(biāo)的質(zhì)心。如圖4所示,圖中白色邊框為檢測到的目標(biāo)邊界框,中間的綠點為目標(biāo)的質(zhì)心(即邊界框的中心)。

5bca9980-77c1-11ee-939d-92fbcf53809c.png

4 檢測到的目標(biāo)與質(zhì)心

6)計算第一幀中的目標(biāo)和后一幀中目標(biāo)的歐氏距離,根據(jù)最近距離,確定AB是同一目標(biāo)。

 1 AB = math.sqrt(math.pow((A[0]-B[0]),2)+math.pow((A[1]-B[1]),2))
  2 AC = math.sqrt(math.pow((A[0]-C[0]),2)+math.pow((A[1]-C[1]),2))
3print("AB距離",AB,"AC距離",AC,"AB是同一目標(biāo)")

(7)顯示追蹤的結(jié)果,將兩幀圖像合并到一起,用連線表示目標(biāo)的運行軌跡,如圖5所示。

 1 mask1 = Draw(frame_1,bbox1)  #繪制在第一幀中檢測到的目標(biāo)
  2 mask2 = Draw(frame_2,bbox2)  #繪制在第二幀中檢測到的目標(biāo)
  3 all_img = np.hstack((mask1, mask2)) #將兩幀圖像合并成一幅圖像
  4 #繪制運動軌跡
  5 H,W = mask1.shape[:2]
  6 cv2.line(all_img,(int(A[0]),int(A[1])),(W+int(C[0]),int(C[1])),(0,255,255),2)
  7 ##顯示追蹤結(jié)果
  8 plt.title('目標(biāo)運行軌跡')
9plt.imshow(all_img)

5bd94f5c-77c1-11ee-939d-92fbcf53809c.png

5目標(biāo)的運行軌跡


聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 模型
    +關(guān)注

    關(guān)注

    1

    文章

    3479

    瀏覽量

    49927
  • 圖像分類
    +關(guān)注

    關(guān)注

    0

    文章

    96

    瀏覽量

    12101
  • 目標(biāo)檢測
    +關(guān)注

    關(guān)注

    0

    文章

    222

    瀏覽量

    15887

原文標(biāo)題:如何使用質(zhì)心法進行目標(biāo)追蹤--文末送書

文章出處:【微信號:CVSCHOOL,微信公眾號:OpenCV學(xué)堂】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦
    熱點推薦

    RFID在物流追蹤中的應(yīng)用

    RFID是一種通過無線電波進行數(shù)據(jù)讀寫和物體識別的技術(shù)。它由標(biāo)簽、讀寫器和天線組成,能夠?qū)崿F(xiàn)非接觸式的數(shù)據(jù)交互。相比傳統(tǒng)的條形碼技術(shù),RFID具有更高的效率、更強的抗污染能力和更遠的讀取距離一
    的頭像 發(fā)表于 04-03 15:03 ?279次閱讀
    RFID在物流<b class='flag-5'>追蹤</b>中的應(yīng)用

    睿創(chuàng)微納雙光譜追蹤系統(tǒng)破解行業(yè)難題

    當(dāng)目標(biāo)隱匿于濃霧、黑夜或密林,傳統(tǒng)監(jiān)控束手無策?當(dāng)車牌藏身車流、無人機畫面劇烈抖動,追蹤系統(tǒng)頻頻“失明”?
    的頭像 發(fā)表于 02-26 13:56 ?284次閱讀

    在樹莓派上部署YOLOv5進行動物目標(biāo)檢測的完整流程

    卓越的性能。本文將詳細(xì)介紹如何在性能更強的計算機上訓(xùn)練YOLOv5模型,并將訓(xùn)練好的模型部署到樹莓派4B上,通過樹莓派的攝像頭進行實時動物目標(biāo)檢測。 一、在電腦上訓(xùn)練YOLOv5模型
    的頭像 發(fā)表于 11-11 10:38 ?3167次閱讀
    在樹莓派上部署YOLOv5<b class='flag-5'>進行</b>動物<b class='flag-5'>目標(biāo)</b>檢測的完整流程

    【11月狂歡】PCB充值即現(xiàn)金券,充多多,上不封項!

    為回饋廣大客戶對華秋的厚愛2024年11月特惠狂歡火熱開啟~PCB充值即現(xiàn)金券!充多多,福利加倍!充值1萬元,即300元現(xiàn)金券,相當(dāng)于返3個點充值3萬元,即1200元現(xiàn)金券,相
    的頭像 發(fā)表于 11-08 01:02 ?489次閱讀
    【11月狂歡】PCB充值即<b class='flag-5'>送</b>現(xiàn)金券,充多<b class='flag-5'>送</b>多,上不封項!

    基于光線追蹤的渲染算法實現(xiàn)

    我們已經(jīng)涵蓋了所有需要說的內(nèi)容!我們現(xiàn)在準(zhǔn)備寫我們的第一個光線追蹤器。你現(xiàn)在應(yīng)該能夠猜到光線追蹤算法是如何工作的了。首先,注意到自然界中光的傳播只是從光源發(fā)出無數(shù)條射線,反彈直到它們撞到我們眼睛的表面。因此,光線追蹤是優(yōu)雅的,因
    的頭像 發(fā)表于 10-30 08:06 ?532次閱讀
    基于光線<b class='flag-5'>追蹤</b>的渲染算法實現(xiàn)

    鐳神智能激光雷達低空無人機目標(biāo)追蹤光電系統(tǒng):筑牢機場低空安防屏障

    近日,天津濱海機場遭遇無人機干擾,導(dǎo)致航班大面積無法起降,引發(fā)廣泛關(guān)注。這一事件再次凸顯了低空安防領(lǐng)域的重要性,以及高效、精準(zhǔn)的監(jiān)控系統(tǒng)對于保障航空安全的必要性。鐳神智能推出的激光雷達低空目標(biāo)追蹤
    的頭像 發(fā)表于 10-01 08:07 ?859次閱讀
    鐳神智能激光雷達低空無人機<b class='flag-5'>目標(biāo)</b><b class='flag-5'>追蹤</b>光電系統(tǒng):筑牢機場低空安防屏障

    無線定位器追蹤器跟手機怎么連接

    無線定位器追蹤器與手機的連接方法主要取決于追蹤器的類型和功能。以下是一些常見的連接方式: 一、藍牙連接 確保兼容性 :首先,確保你的定位器追蹤器支持藍牙功能,并且手機的藍牙也已開啟。 進行
    的頭像 發(fā)表于 09-29 10:01 ?15.1w次閱讀

    NVIDIA多攝像頭追蹤工作流的應(yīng)用架構(gòu)

    為提高安全性并優(yōu)化運營,倉庫、工廠、體育場、機場等大型區(qū)域通常會有數(shù)百個攝像頭進行監(jiān)控。多攝像頭追蹤指的是通過這些攝像頭追蹤對象,并精確測量其活動,以此實現(xiàn)對空間的有效監(jiān)控和管理。
    的頭像 發(fā)表于 09-06 14:23 ?679次閱讀
    NVIDIA多攝像頭<b class='flag-5'>追蹤</b>工作流的應(yīng)用架構(gòu)

    如何遠離網(wǎng)絡(luò)追蹤

    ?隨著科技不斷發(fā)展,生活、工作等都離不開網(wǎng)絡(luò)。但網(wǎng)絡(luò)追蹤技術(shù)也隨著科技的進步不斷發(fā)展,人們在網(wǎng)絡(luò)上的在線活動越來越容易被追蹤和監(jiān)控。這會威脅到個人隱私、信息泄露、身份盜竊等嚴(yán)重后果。所以,今天我想
    的頭像 發(fā)表于 09-03 16:57 ?924次閱讀
    如何遠離網(wǎng)絡(luò)<b class='flag-5'>追蹤</b>

    基于迅為RK3588【RKNPU2項目實戰(zhàn)1】:YOLOV5實時目標(biāo)分類

    [/url] 【RKNPU2 人工智能開發(fā)】 【AI深度學(xué)習(xí)推理加速器】——RKNPU2 從入門到實踐(基于RK3588和RK3568) 【RKNPU2項目實戰(zhàn)1】:YOLOV5實時目標(biāo)分類 【RKNPU2項目實戰(zhàn)2】:SORT目標(biāo)追蹤
    發(fā)表于 08-15 10:51

    目標(biāo)檢測與識別技術(shù)有哪些

    視頻中識別并定位感興趣的目標(biāo),通常包括目標(biāo)的類別和位置信息。目標(biāo)識別(Object Recognition)是指對檢測到的目標(biāo)進行分類,確定
    的頭像 發(fā)表于 07-17 09:40 ?1156次閱讀

    迅為RK3588開發(fā)板RKNPU2項目實戰(zhàn)2SORT目標(biāo)追蹤

    1.介紹和視頻演示 2.在模擬器實現(xiàn)圖片的目標(biāo)追蹤 3.連板推理和嵌入式部署 4.視頻目標(biāo)追蹤的實現(xiàn)(python) 5.C++實現(xiàn)目標(biāo)
    發(fā)表于 07-10 11:08

    PLC料車數(shù)據(jù)采集物聯(lián)網(wǎng)解決方案

    料車和起重機組成的自動料系統(tǒng)可以實現(xiàn)配送了過程的自動運行,將生產(chǎn)過程中的原材料或半成品到指定的位置,能夠提高工作效率,減少人工勞動強度。 料車的應(yīng)用場景非常廣泛,例如在制造業(yè)中,
    的頭像 發(fā)表于 07-05 13:30 ?326次閱讀
    PLC<b class='flag-5'>送</b>料車數(shù)據(jù)采集物聯(lián)網(wǎng)解決方案

    如何使用CAN盒測出目標(biāo)CAN設(shè)備的波特率

    要使用CAN盒測出目標(biāo)CAN設(shè)備的波特率,可以按照以下步驟進行: (1)硬件準(zhǔn)備: 準(zhǔn)備一個與目標(biāo)CAN設(shè)備兼容的CAN盒。 確保CAN盒的接口與目標(biāo)CAN設(shè)備的CAN通信接口相匹配,
    的頭像 發(fā)表于 06-26 16:41 ?1123次閱讀

    在IAR中使用KitProg3進行調(diào)試,無法檢測到目標(biāo)是怎么回事?

    我試圖在 IAR 中使用 KitProg3 進行調(diào)試,但遇到以下錯誤: 看來 KitProg3 設(shè)備已被識別。 似乎無法檢測到目標(biāo)。 考慮到 LED4 和 LED1 在模式下閃爍,看來 MCU 運行正常。 問題出在哪里? 我使用的是 IAR 9.30.1 版。
    發(fā)表于 06-03 06:15