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

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

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

稀疏光流跟蹤(KLT)算法詳解

OpenCV學(xué)堂 ? 來源:OpenCV學(xué)堂 ? 作者:gloomyfish ? 2022-09-02 10:07 ? 次閱讀

稀疏光流跟蹤(KLT)詳解

視頻移動(dòng)對象跟蹤中,稀疏光流跟蹤是一種經(jīng)典的對象跟蹤算法,可以繪制運(yùn)動(dòng)對象的跟蹤軌跡與運(yùn)行方向,是一種簡單、實(shí)時(shí)高效的跟蹤算法,這個(gè)算法最早是有Bruce D. Lucas and Takeo Kanade兩位作者提出來的,所以又被稱為KLT。KLT算法工作有三個(gè)假設(shè)前提條件:

亮度恒定

短距離移動(dòng)

空間一致性

亮度恒定

對象中任意像素點(diǎn)p(x,y)亮度值,在t-1時(shí)候的值,在t時(shí)刻移動(dòng)(u, v)之后亮度值保持不變

2aa9dd0a-2a03-11ed-ba43-dac502259ad0.jpg


空間一致性

假設(shè)對像素點(diǎn)p(x, y)來說,周圍的像素點(diǎn)都保持相同的移動(dòng)距離(u, v) 假設(shè)窗口大小為5x5,則對于25個(gè)窗口內(nèi)的像素點(diǎn)來說,就會(huì)如下等式成立:

2ac6159c-2a03-11ed-ba43-dac502259ad0.jpg


得到下面的過約束等式,根據(jù)最小二乘可以求解(u, v):

2b0ca192-2a03-11ed-ba43-dac502259ad0.jpg


這樣我們就得到了KLT光流等式與該窗口的的Hessian矩陣

2b21ef5c-2a03-11ed-ba43-dac502259ad0.png

2b38436a-2a03-11ed-ba43-dac502259ad0.jpg

空間尺度不變性

通過建立每一幀的圖像金字塔,實(shí)現(xiàn)尺度空間窗口目標(biāo)對象搜索

2b5a444c-2a03-11ed-ba43-dac502259ad0.jpg


OpenCV中KLT演示代碼實(shí)現(xiàn)

OpenCV中KLT算法API及其參數(shù)解釋如下:

voidcv::calcOpticalFlowPyrLK(
InputArrayprevImg,//前一幀圖像
InputArraynextImg,//后一幀圖像
InputArrayprevPts,//前一幀的稀疏光流點(diǎn)
InputOutputArraynextPts,//后一幀光流點(diǎn)
OutputArraystatus,//輸出狀態(tài),1表示正常該點(diǎn)保留,否則丟棄
OutputArrayerr,//表示錯(cuò)誤
SizewinSize=Size(21,21),//光流法對象窗口大小
intmaxLevel=3,//金字塔層數(shù),0表示只檢測當(dāng)前圖像,不構(gòu)建金字塔圖像
TermCriteriacriteria=TermCriteria(TermCriteria::EPS,30,0.01),//窗口搜索時(shí)候停止條件
intflags=0,//操作標(biāo)志
doubleminEigThreshold=1e-4//最小特征值響應(yīng),低于最小值不做處理
)

特征點(diǎn)檢測與繪制的代碼實(shí)現(xiàn)如下:

//detectfirstframeandfindcornersinit
Matold_frame,old_gray;
capture.read(old_frame);
cvtColor(old_frame,old_gray,COLOR_BGR2GRAY);
goodFeaturesToTrack(old_gray,featurePoints,maxCorners,qualityLevel,minDistance,Mat(),blockSize,useHarrisDetector,k);

特征點(diǎn)繪制

voiddraw_goodFeatures(Mat&image,vectorgoodFeatures){
for(size_tt=0;t

KLT跟蹤代碼如下

TermCriteriacriteria=TermCriteria(TermCriteria::COUNT+TermCriteria::EPS,30,0.01);
doublederivlambda=0.5;
intflags=0;

boolret=capture.read(frame);
if(!ret)break;
imshow("frame",frame);
roi.x=0;
frame.copyTo(result(roi));
cvtColor(frame,gray,COLOR_BGR2GRAY);

//calculateopticalflow
calcOpticalFlowPyrLK(old_gray,gray,pts[0],pts[1],status,err,Size(31,31),3,criteria,derivlambda,flags);

特征點(diǎn)狀態(tài)檢查與匹配的代碼如下

size_ti,k;
for(i=k=0;i2){
pts[0][k]=pts[0][i];
initPoints[k]=initPoints[i];
pts[1][k++]=pts[1][i];
circle(frame,pts[1][i],3,Scalar(0,255,0),-1,8);
}
}
//resize有用特征點(diǎn)
pts[1].resize(k);
pts[0].resize(k);
initPoints.resize(k);

繪制跟蹤軌跡的代碼如下

//繪制跟蹤軌跡
draw_lines(frame,initPoints,pts[1]);

該方法實(shí)現(xiàn)如下:

voiddraw_lines(Mat&image,vectorpt1,vectorpt2){
if(color_lut.size()

運(yùn)行效果:

左側(cè)是視頻的原始每一幀、右側(cè)視頻是每一幀中KLT算法實(shí)時(shí)軌跡繪制

車輛運(yùn)行軌跡跟蹤

2b7754b0-2a03-11ed-ba43-dac502259ad0.jpg



審核編輯:劉清

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

    關(guān)注

    0

    文章

    40

    瀏覽量

    13000
  • OpenCV
    +關(guān)注

    關(guān)注

    29

    文章

    625

    瀏覽量

    41215
  • KLT
    KLT
    +關(guān)注

    關(guān)注

    0

    文章

    5

    瀏覽量

    7447

原文標(biāo)題:干貨 | OpenCV中KLT光流跟蹤原理詳解與代碼演示

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

收藏 人收藏

    評論

    相關(guān)推薦

    高抗噪性 電壓跟蹤

    電壓跟蹤
    jf_30741036
    發(fā)布于 :2024年09月29日 19:26:44

    抖動(dòng)跟蹤不丟失 慧視圖像跟蹤板和自研算法強(qiáng)勢升級(jí)

    成都慧視開發(fā)的Viztra-HE030圖像處理板是采用了瑞芯微旗艦級(jí)高性能芯片RK3588,能夠憑借八核處理核心輸出至高6.0TOPS的算力,在算法的強(qiáng)力輔助下,能夠?qū)崿F(xiàn)對目標(biāo)的穩(wěn)定鎖定跟蹤。隨著
    的頭像 發(fā)表于 09-04 08:05 ?293次閱讀
    抖動(dòng)<b class='flag-5'>跟蹤</b>不丟失 慧視圖像<b class='flag-5'>跟蹤</b>板和自研<b class='flag-5'>算法</b>強(qiáng)勢升級(jí)

    過零雙向可控硅驅(qū)動(dòng)KLT304X&KLT306X&KLT308X 產(chǎn)品規(guī)格書

    KLT304X&KLT306X&KLT308XDIP4過零雙向可控硅驅(qū)動(dòng)耦1.產(chǎn)品特點(diǎn)Productfeatures?無鹵素(溴
    發(fā)表于 08-20 15:47 ?0次下載

    隨機(jī)相位可控硅驅(qū)動(dòng)KLT302X&KLT305X 產(chǎn)品規(guī)格書

    KLT302X&KLT305XDIP4隨機(jī)相位雙向可控硅驅(qū)動(dòng)耦1.產(chǎn)品特點(diǎn)Productfeatures?無鹵素(溴
    發(fā)表于 08-20 15:45 ?0次下載

    高效、智能、穩(wěn)定,漫途LoRa監(jiān)測終端為跟蹤支架系統(tǒng)保駕護(hù)航

    伏發(fā)電領(lǐng)域,跟蹤支架作為提高伏系統(tǒng)發(fā)電效率的關(guān)鍵技術(shù)之一,已經(jīng)得到了廣泛的應(yīng)用。然而,如何有效地監(jiān)測
    的頭像 發(fā)表于 06-19 15:53 ?291次閱讀
    高效、智能、穩(wěn)定,漫途LoRa監(jiān)測終端為<b class='flag-5'>光</b>伏<b class='flag-5'>跟蹤</b>支架系統(tǒng)保駕護(hù)航

    高效、智能、穩(wěn)定,LoRa監(jiān)測終端為跟蹤支架系統(tǒng)保駕護(hù)航

    伏發(fā)電領(lǐng)域,跟蹤支架作為提高伏系統(tǒng)發(fā)電效率的關(guān)鍵技術(shù)之一,已經(jīng)得到了廣泛的應(yīng)用。然而,如何有效地監(jiān)測
    的頭像 發(fā)表于 06-19 15:02 ?341次閱讀
    高效、智能、穩(wěn)定,LoRa監(jiān)測終端為<b class='flag-5'>光</b>伏<b class='flag-5'>跟蹤</b>支架系統(tǒng)保駕護(hù)航

    伏儲(chǔ)能變流器恒壓恒原理

    對整個(gè)系統(tǒng)的運(yùn)行至關(guān)重要。伏儲(chǔ)能變流器作為連接伏陣列和儲(chǔ)能電池的關(guān)鍵設(shè)備,其性能直接影響到系統(tǒng)的穩(wěn)定性和效率。恒壓恒控制是伏儲(chǔ)能變流器的一種重要控制策略,本文將對恒壓恒
    的頭像 發(fā)表于 05-07 14:28 ?765次閱讀

    多目標(biāo)跟蹤算法總結(jié)歸納

    多目標(biāo)跟蹤是計(jì)算機(jī)視覺領(lǐng)域中的一個(gè)重要任務(wù),它旨在從視頻或圖像序列中準(zhǔn)確地檢測和跟蹤多個(gè)移動(dòng)目標(biāo)。不過在落地部署時(shí),有一些關(guān)鍵點(diǎn)需要解決。
    的頭像 發(fā)表于 04-28 09:42 ?1588次閱讀
    多目標(biāo)<b class='flag-5'>跟蹤</b><b class='flag-5'>算法</b>總結(jié)歸納

    如何使用優(yōu)象芯片U30實(shí)現(xiàn)四軸無人機(jī)懸停

    優(yōu)象科技自主研芯片,用于模塊、激光測距產(chǎn)品使用。
    的頭像 發(fā)表于 04-25 16:47 ?1296次閱讀
    如何使用優(yōu)象<b class='flag-5'>光</b><b class='flag-5'>流</b>芯片U30實(shí)現(xiàn)四軸無人機(jī)懸停

    優(yōu)象無人機(jī)模塊使用技巧

    優(yōu)象科技自主研發(fā)光模塊多年,主要用于無人機(jī)、掃地機(jī)器人、激光測距領(lǐng)域,淘寶店鋪可搜索“湖南優(yōu)象”交流合作。
    的頭像 發(fā)表于 04-25 16:38 ?849次閱讀
    優(yōu)象無人機(jī)<b class='flag-5'>光</b><b class='flag-5'>流</b>模塊使用技巧

    同行!天合跟蹤開拓者1P賦能巴西520MW圣盧西亞項(xiàng)目

    采用開拓者1P跟蹤支架,并搭載SuperTrack智合智能跟蹤算法。 天合跟蹤是天合光能旗下智能跟蹤解決方案提供商,具有20年
    的頭像 發(fā)表于 04-07 18:15 ?1071次閱讀

    SMT關(guān)鍵工序再焊工藝詳解

    SMT關(guān)鍵工序再焊工藝詳解
    的頭像 發(fā)表于 01-09 10:12 ?575次閱讀
    SMT關(guān)鍵工序再<b class='flag-5'>流</b>焊工藝<b class='flag-5'>詳解</b>

    詳解從均值濾波到非局部均值濾波算法的原理及實(shí)現(xiàn)方式

    將再啰嗦一次,詳解從均值濾波到非局部均值濾波算法的原理及實(shí)現(xiàn)方式。 細(xì)數(shù)主要的2D降噪算法,如下圖所示,從最基本的均值濾波到相對最好的BM3D降噪,本文將盡量用最同屬的語言,詳解這些
    的頭像 發(fā)表于 12-19 16:30 ?1075次閱讀
    <b class='flag-5'>詳解</b>從均值濾波到非局部均值濾波<b class='flag-5'>算法</b>的原理及實(shí)現(xiàn)方式

    路激光焊接機(jī)技術(shù)詳解優(yōu)勢及相關(guān)的種類有哪些

    編輯:鐳拓激光雙路激光焊接機(jī)目前可以適合大多數(shù)激光焊接,因焊接深度深,焊接強(qiáng)度好的特點(diǎn),操作簡單,大大節(jié)約用戶人力成本。用戶需求實(shí)現(xiàn)全自動(dòng)焊接或半自動(dòng)焊接,以下是雙路激光焊接機(jī)技術(shù)詳解優(yōu)勢及相關(guān)
    的頭像 發(fā)表于 12-18 10:45 ?502次閱讀
    雙<b class='flag-5'>光</b>路激光焊接機(jī)技術(shù)<b class='flag-5'>詳解</b>優(yōu)勢及相關(guān)的種類有哪些

    跟蹤支架產(chǎn)品現(xiàn)狀、特點(diǎn)及發(fā)展趨勢詳解

    伏支架位于伏產(chǎn)業(yè)鏈中游,主要包括固定支架和跟蹤支架兩大類。固定支架進(jìn)入門檻低、毛利率低且產(chǎn)品同質(zhì)化嚴(yán)重。
    的頭像 發(fā)表于 12-15 13:46 ?1909次閱讀
    <b class='flag-5'>光</b>伏<b class='flag-5'>跟蹤</b>支架產(chǎn)品現(xiàn)狀、特點(diǎn)及發(fā)展趨勢<b class='flag-5'>詳解</b>