亚洲精品久久久久久久久久久,亚洲国产精品一区二区制服,亚洲精品午夜精品,国产成人精品综合在线观看,最近2019中文字幕一页二页

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

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

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

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

OpenCV學(xué)堂 ? 來(lái)源:OpenCV學(xué)堂 ? 2023-10-31 15:47 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

3)計(jì)算質(zhì)心距離,計(jì)算視頻的上一幀和當(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)消失,則注銷(xiāo)消失目標(biāo)ID。

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

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

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

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

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

(1)導(dǎo)入庫(kù)用到的庫(kù)(在配套代碼目錄下的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模型的檢測(cè)操作
  5 from matplotlib import pyplot as plt
  6 plt.rcParams['font.sans-serif']=['SimHei'] #在統(tǒng)計(jì)圖上顯示中文

2)初始化YOLO模型(模型的初始化方法請(qǐng)查看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)檢測(cè)兩幀圖像中的足球目標(biāo)(調(diào)用yolo_detect.py文件中的Detect函數(shù))。

1 #使用YOLO檢測(cè)兩幀圖像中的目標(biāo)
  2 b1 = Detect(model,labels,frame_1)
  3 b2 = Detect(model,labels,frame_2)
  4 #只保留足球的檢測(cè)結(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)計(jì)算質(zhì)心坐標(biāo),根據(jù)第4步檢測(cè)結(jié)果bbox1和bbox2,計(jì)算目標(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步代碼,在第一幀圖像中檢測(cè)到目標(biāo)A,在第二幀圖像中檢測(cè)到目標(biāo)BC,并分別計(jì)算這3個(gè)目標(biāo)的質(zhì)心。如圖4所示,圖中白色邊框?yàn)闄z測(cè)到的目標(biāo)邊界框,中間的綠點(diǎn)為目標(biāo)的質(zhì)心(即邊界框的中心)。

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

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

6)計(jì)算第一幀中的目標(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)的運(yùn)行軌跡,如圖5所示。

 1 mask1 = Draw(frame_1,bbox1)  #繪制在第一幀中檢測(cè)到的目標(biāo)
  2 mask2 = Draw(frame_2,bbox2)  #繪制在第二幀中檢測(cè)到的目標(biāo)
  3 all_img = np.hstack((mask1, mask2)) #將兩幀圖像合并成一幅圖像
  4 #繪制運(yùn)動(dòng)軌跡
  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)運(yùn)行軌跡')
9plt.imshow(all_img)

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

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


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

    關(guān)注

    1

    文章

    3622

    瀏覽量

    51562
  • 圖像分類(lèi)
    +關(guān)注

    關(guān)注

    0

    文章

    96

    瀏覽量

    12385
  • 目標(biāo)檢測(cè)
    +關(guān)注

    關(guān)注

    0

    文章

    230

    瀏覽量

    16348

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

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

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

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

    目標(biāo)追蹤的簡(jiǎn)易實(shí)現(xiàn):模板匹配

    往往是先在一個(gè)靜態(tài)的圖象中尋找到某一片像素區(qū)域(比如從背景畫(huà)面中框選出人臉或文字),然后再對(duì)這片像素區(qū)域作分析(比如提取人臉關(guān)鍵點(diǎn)信息等等);而目標(biāo)追蹤則是在一段視頻流中進(jìn)行,它根據(jù)指定的追蹤
    發(fā)表于 10-28 07:21

    瑞芯微RV1126B開(kāi)發(fā)套件評(píng)測(cè)大賽正式開(kāi)賽?。?b class='flag-5'>文末附報(bào)名二維碼)

    瑞芯微RV1126B開(kāi)發(fā)套件評(píng)測(cè)大賽正式開(kāi)賽?。?b class='flag-5'>文末附報(bào)名二維碼)
    的頭像 發(fā)表于 10-27 14:27 ?85次閱讀
    瑞芯微RV1126B開(kāi)發(fā)套件評(píng)測(cè)大賽正式開(kāi)賽?。?b class='flag-5'>文末</b>附報(bào)名二維碼)

    基于RT-Thread與K230(玄鐵C908)的運(yùn)動(dòng)目標(biāo)控制與追蹤系統(tǒng) | 技術(shù)集結(jié)

    題目:運(yùn)動(dòng)目標(biāo)控制與追蹤系統(tǒng)本項(xiàng)目基于K230平臺(tái)實(shí)現(xiàn)運(yùn)動(dòng)目標(biāo)位置復(fù)位、屏幕邊框巡航、膠帶正方形巡航、數(shù)字8循跡演示;并預(yù)留自動(dòng)追蹤紅色光斑的擴(kuò)展接口。目錄項(xiàng)目概述題目要求—功能對(duì)照硬
    的頭像 發(fā)表于 08-29 17:04 ?4807次閱讀
    基于RT-Thread與K230(玄鐵C908)的運(yùn)動(dòng)<b class='flag-5'>目標(biāo)</b>控制與<b class='flag-5'>追蹤</b>系統(tǒng) | 技術(shù)集結(jié)

    如何使用樹(shù)莓派與OpenCV實(shí)現(xiàn)面部和運(yùn)動(dòng)追蹤的云臺(tái)系統(tǒng)?

    大家好,這是一個(gè)樹(shù)莓派和OpenCV的連載專(zhuān)題。使用樹(shù)莓派與OpenCV實(shí)現(xiàn)姿態(tài)估計(jì)和面部特征點(diǎn)追蹤使用樹(shù)莓派與OpenCV實(shí)現(xiàn)面部和運(yùn)動(dòng)追蹤的云臺(tái)系統(tǒng)使用樹(shù)莓派和OpenCV實(shí)現(xiàn)手部識(shí)別與手指識(shí)別
    的頭像 發(fā)表于 08-14 17:45 ?763次閱讀
    如何使用樹(shù)莓派與OpenCV實(shí)現(xiàn)面部和運(yùn)動(dòng)<b class='flag-5'>追蹤</b>的云臺(tái)系統(tǒng)?

    使用aicube進(jìn)行目標(biāo)檢測(cè)識(shí)別數(shù)字項(xiàng)目的時(shí)候,在評(píng)估環(huán)節(jié)卡住了,怎么解決?

    使用aicube進(jìn)行目標(biāo)檢測(cè)識(shí)別數(shù)字項(xiàng)目的時(shí)候,前面一切正常 但是在評(píng)估環(huán)節(jié)卡住了,一直顯示正在測(cè)試,但是完全沒(méi)有測(cè)試結(jié)果, 在部署完模型后在k230上運(yùn)行也沒(méi)有任何識(shí)別結(jié)果 期待結(jié)果和實(shí)際結(jié)果
    發(fā)表于 08-13 06:45

    【GM-3568JHF開(kāi)發(fā)板免費(fèi)體驗(yàn)】OpenCV 視頻目標(biāo)跟蹤 ( CamShift)

    的調(diào)整,使其能夠適應(yīng)目標(biāo)在視頻中的尺寸和旋轉(zhuǎn)變化。 CamShift 算法的基本步驟如下: 1)初始化窗口:與 MeanShift 相同,在視頻的第一幀中選擇初始窗口。 2)計(jì)算質(zhì)心:在當(dāng)前窗口中,計(jì)算
    發(fā)表于 08-09 13:19

    如何在樹(shù)莓派 AI HAT+上進(jìn)行YOLO目標(biāo)檢測(cè)?

    YOLO目標(biāo)檢測(cè)?如何在樹(shù)莓派AIHAT+上進(jìn)行YOLO姿態(tài)估計(jì)?今天是第三部分:如何在樹(shù)莓派AIHAT+上進(jìn)行YOLO目標(biāo)檢測(cè)?如果大家對(duì)這個(gè)專(zhuān)題感興趣,記得
    的頭像 發(fā)表于 07-19 08:34 ?951次閱讀
    如何在樹(shù)莓派 AI HAT+上<b class='flag-5'>進(jìn)行</b>YOLO<b class='flag-5'>目標(biāo)</b>檢測(cè)?

    資產(chǎn)追蹤與室內(nèi)導(dǎo)航

    在數(shù)字化轉(zhuǎn)型的浪潮中,資產(chǎn)追蹤與室內(nèi)導(dǎo)航作為兩項(xiàng)關(guān)鍵技術(shù),正在改變企業(yè)管理空間和資源的方式。從醫(yī)院高效管理醫(yī)療設(shè)備,到商場(chǎng)為顧客提供無(wú)縫導(dǎo)航體驗(yàn),這兩項(xiàng)技術(shù)在提升效率、降低成本和優(yōu)化用戶體驗(yàn)方
    的頭像 發(fā)表于 07-04 18:22 ?306次閱讀

    傳感器數(shù)據(jù)計(jì)算質(zhì)心位移軌跡,結(jié)果不理想

    背景如下 : 想要使用慣性傳感器數(shù)據(jù)(包含時(shí)間戳、三軸加速度、三軸陀螺儀數(shù)據(jù)、三軸磁力計(jì)數(shù)據(jù)、四元數(shù))計(jì)算質(zhì)心的位移軌跡。 計(jì)算步驟如下: 1、使用低通濾波對(duì)加速度、陀螺儀數(shù)據(jù)、磁力計(jì)數(shù)據(jù) 進(jìn)行濾波
    發(fā)表于 06-24 17:07

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

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

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

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

    在樹(shù)莓派上部署YOLOv5進(jìn)行動(dòng)物目標(biāo)檢測(cè)的完整流程

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

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

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

    《DNK210使用指南 -CanMV版 V1.0》第三十六章 image圖像色塊追蹤實(shí)驗(yàn)

    塊,可以在閾值元組列表中傳入多個(gè)閾值元組。invert指的是是否對(duì)閾值進(jìn)行翻轉(zhuǎn)操作,閾值翻轉(zhuǎn)后,將追蹤閾值之外的色塊。roi指的是對(duì)Image對(duì)象感興趣的區(qū)域,若未指定,即為圖像矩形。x_stride
    發(fā)表于 11-07 09:30

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

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