亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        融合幀間差分與碰撞算法的快速跟蹤預(yù)測算法①

        2019-01-07 02:41:04李凱強沈建新
        計算機系統(tǒng)應(yīng)用 2018年12期
        關(guān)鍵詞:冰球軌跡方向

        李凱強,沈建新

        (南京航空航天大學(xué) 機電學(xué)院,南京 210016)

        近年來,桌上冰球機器人、羽毛球機器人、乒乓球機器人的相繼出現(xiàn),體現(xiàn)了人機互動在人工智能領(lǐng)域的重要性,已逐漸成為目前的熱點研究方向.機器人的工作原理大致相同:機器人通過圖像采集系統(tǒng),快速檢測到運動目標(biāo)的具體位置和運動狀態(tài),并實時的對運動目標(biāo)實現(xiàn)擊打.桌上冰球機器人是在二維平面內(nèi)工作,對本文算法的驗證較為簡單,故而本文選取桌上冰球機器人作為算法的應(yīng)用對象.冰球機器人通過圖像采集系統(tǒng)獲得冰球滑行過程中的位置信息并對其軌跡進(jìn)行提前預(yù)測,等到冰球滑行到機器人的攻擊范圍內(nèi),通過伺服控制系統(tǒng)操縱機械臂,對冰球?qū)崿F(xiàn)擊打.由于冰球滑行的速度非???這就對運動目標(biāo)預(yù)測算法提出了較高要求.由實際工程測試知道,算法運行時間在30 ms內(nèi)時,冰球機器人才能實時擋住冰球,并有時間進(jìn)行擊打操作.對于運動目標(biāo)的軌跡預(yù)測算法,目前應(yīng)用最多的是卡爾曼濾波算法,使用卡爾曼濾波算法對觀測到的軌跡信息進(jìn)行濾波即可估計出運動目標(biāo)的運動速度,用以預(yù)測軌跡,但當(dāng)運動目標(biāo)發(fā)生突變?nèi)缗鲎埠筮\動方向改變,可能會導(dǎo)致運動目標(biāo)丟失.基于受力分析的運動建模方法目前應(yīng)用也十分廣泛,但其經(jīng)常應(yīng)用于無碰撞或碰撞發(fā)生后的軌跡預(yù)測情況[1].考慮到算法運行速度的問題,本文通過幀間差分結(jié)合碰撞算法,在冰球與桌邊碰撞前對冰球目標(biāo)軌跡進(jìn)行預(yù)測,提高了算法的運行速度,滿足實時性的要求.

        1 運動目標(biāo)冰球檢測算法

        1.1 運動目標(biāo)檢測算法的種類及特點

        常用的運動目標(biāo)檢測算法主要有光流法、幀間差分法和背景差分法三類.光流法是利用目標(biāo)的矢量流特征[2],如大小和方向等來檢測運動區(qū)域,其主要優(yōu)點在于能夠檢測出獨立的運動對象,而不需預(yù)知場景的任何信息;缺點是大多數(shù)光流方法的計算比較復(fù)雜,且抗噪性能差,不能夠快速檢測到運動目標(biāo).背景差分法是目前目標(biāo)檢測中最常用的方法之一[3,4],它將圖像分為背景和前景,對背景進(jìn)行建模,然后用當(dāng)前幀與背景圖像的差分來檢測運動區(qū)域.該方法能夠得到比較精確的運動目標(biāo)信息,但對于動態(tài)場景的變化,如光照和外來無關(guān)事件的干擾特別敏感,因此在實際應(yīng)用中需要加入背景圖象的更新機制,降低了算法的運行速度.幀間差分法是在連續(xù)的圖像序列中兩個或三個相鄰幀間,采用逐像素的差分并閾值化來提取出圖像中的運動區(qū)域,它能較快地檢測出視頻圖像中發(fā)生變化的部分[5–8].由于連續(xù)兩幀圖像之間的時間間隔較短,差分圖像受光線、氣候等環(huán)境因素變化的影響較較小,因此它具有很強的自適應(yīng)性.但是如果目標(biāo)速度過慢,則會造成過度覆蓋,使檢測的運動目標(biāo)不夠完整.

        對運動目標(biāo)冰球來說,其運動速度很快,滿足了幀間差分法對運動速度的限制要求.又由于差分圖像受光線、氣候等環(huán)境因素的影響較小,所以當(dāng)應(yīng)用幀間差分法去檢測冰球目標(biāo),能使運動目標(biāo)檢測算法具有更好的穩(wěn)定性,并且?guī)g差分法能夠快速地檢測出冰球運動目標(biāo).

        1.2 幀差法對冰球目標(biāo)的檢測

        本算法是在VS2010+OpenCV平臺上編寫運行的.首先從圖像采集系統(tǒng)采集的序列圖像中讀取兩張相鄰幀圖像,并將這兩張相鄰幀圖像分別用Ik+1(x,y)和Ik(x,y)表示.然后,用灰度函數(shù) cvtColor();將兩張相鄰幀圖像轉(zhuǎn)化成灰度圖.其次,把得到的兩張相鄰幀灰度圖進(jìn)行差分運算如公式(1),得到差分圖像DK(x,y),如圖1所示.

        圖1 幀間差分圖像

        為清晰明確的顯示冰球目標(biāo),我們將所得到的差分圖像進(jìn)行二值化運算,其算法如公式(2),得到二值化的目標(biāo)差分圖如圖2.

        其中,T是二值化時所選取的閾值,其值一般由實際場景決定,本文中選取T=50.

        圖2 差分圖像二值化

        為找到冰球的具體位置,我們要用findContours()函數(shù)去查找圖像中所有輪廓.從圖2中可以看到冰球位置和人手的干擾噪聲,為準(zhǔn)確的找到冰球位置,需要去掉噪聲影響.首先,從圖2中可以知道,冰球的面積大于噪聲的面積且人手的干擾噪聲只位于圖像最左側(cè),所以在這里本文設(shè)置面積閾值area結(jié)合位置閾值center.x來除去噪聲干擾,面積閾值area可以除去所有面積小于冰球目標(biāo)的噪聲,位置閾值center.x是所查找的輪廓中心在像素坐標(biāo)系中橫坐標(biāo)的位置.由程序測試知,當(dāng)面積閾值area大于100,位置閾值center.x大于150的時候,只選中冰球目標(biāo).對于冰球的具體位置我們找的是它的球心坐標(biāo),而對于快速滑行中的冰球來說,檢測到的冰球目標(biāo)會是一個橢圓輪廓,其有大部分圓的特性,且其最大外廓直徑與原冰球目標(biāo)直徑相比基本保持不變,所以這里我們用OpenCV自帶的最小外接圓函數(shù)minEnclosingCircle(contours[i],center,radius);去擬合圖像中選中的橢圓輪廓,擬合結(jié)果如圖3.

        圖3 冰球輪廓最小外接圓

        最小外接圓的圓心,即為冰球在像素坐標(biāo)位置的球心坐標(biāo)位置,將其圓心和半徑存儲起來,如圖4所示為所檢測到的冰球的位置信息.

        圖4 冰球在像素坐標(biāo)中的位置

        2 碰撞算法

        冰球滑行過程中會與桌邊產(chǎn)生碰撞,從而改變其原有的運行軌跡,增加了冰球軌跡預(yù)測的難度.針對這一問題,采用ANSYS/LS-DYNA顯示非線性動力分析軟件進(jìn)行仿真模擬[9,10],建立冰球碰撞軌跡預(yù)測模型.通過仿真模擬獲得實驗數(shù)據(jù),并用MATLAB對獲得的數(shù)據(jù)進(jìn)行數(shù)據(jù)擬合[11],從而得到了一種碰撞函數(shù)關(guān)系作為冰球碰撞過程的算法.研究主要針對兩種運動狀態(tài):一種是以冰球的運動速度大小為變量,保持碰撞前冰球的運動速度方向與桌邊的夾角不變;另一種是保持冰球的運動速度大小不變,只改變冰球的運動方向與桌邊的夾角.

        2.1 不同運動狀態(tài)下仿真數(shù)據(jù)的收集

        對于冰球與桌邊碰撞角度不變的運動狀態(tài),通過改變自變量速度的值,來獲得碰撞后冰球的運動狀態(tài),其實驗結(jié)果如表1所示.

        表1 角度不變,改變速度大小 (單位:m/s)

        對于速度大小不變的運動狀態(tài),通過改變冰球與桌邊的碰撞角度,來獲得碰撞后冰球的運動狀態(tài),設(shè)定冰球速度恒為0.4 m/s,其實驗結(jié)果如表2所示.

        表2 速度大小不變,改變角度 (單位:m/s)

        如表2中X,Y的數(shù)據(jù)值所示,所采集的數(shù)據(jù)中當(dāng)速度方向沿坐標(biāo)軸正方向,則速度為正,否則速度為負(fù).Y方向的速度均為負(fù)值,表示冰球在Y方向的速度沿Y軸負(fù)方向.這里的X、Y坐標(biāo)軸并不是像素坐標(biāo)系的坐標(biāo)軸,而是建立的碰撞仿真模型中的坐標(biāo)軸.由于研究對象是速度矢量,這里并不影響結(jié)果.

        2.2 數(shù)據(jù)擬合

        為了得到碰撞前后速度之間的關(guān)系,分別對X軸方向和Y軸方向的速度分量進(jìn)行分析.將上述仿真實驗中獲得的碰撞前和碰撞后的速度數(shù)據(jù)進(jìn)行擬合[10],從而得到一種簡單的函數(shù)關(guān)系,作為碰撞模型的碰撞預(yù)測算法.通過觀察相關(guān)系數(shù)(R-square)、和方差(SSE)及均方差(RMSE)的值,來判定該碰撞預(yù)測算法的可行性.

        如圖5,6所示,分別為以X軸、Y軸方向碰撞前速度Vx、Vy為自變量,以X軸、Y軸方向碰撞后的速度V_x、V_y為因變量,進(jìn)行數(shù)據(jù)擬合的顯示圖像.

        圖5 X 軸方向速度擬合

        圖6 Y 軸方向速

        如表3所示,為經(jīng)過MATLAB擬合的結(jié)果,從而得到碰撞算法的函數(shù)關(guān)系式如下:

        表3 X 軸、Y 軸方向速度擬合結(jié)果

        X軸方向速度函數(shù)關(guān)系式:

        Y軸方向速度函數(shù)關(guān)系式:

        上述(3)、(4)式中Vx和Vy分別表示碰撞前冰球在X軸方向和Y軸方向上的速度,V_x和V_y分別表示碰撞后冰球在X軸方向和Y軸方向上的速度.由于相關(guān)系數(shù) (R-square)的正常取值范圍為[0,1],越接近 1,表明模型函數(shù)對數(shù)據(jù)擬合得越好.和方差(SSE)及均方差(RMSE)的值越接近0,說明模型函數(shù)擬合的越好,數(shù)據(jù)預(yù)測也越成功.在表3的擬合結(jié)果中,上述兩式的相關(guān)系數(shù) (R-square)分別為:0.9994 和 0.9998,和方差(SSE)與均方差(RMSE)的值也近乎為0,所以本模型算法的建立能夠很好的預(yù)測碰撞后冰球的運動狀態(tài).

        3 軌跡預(yù)測算法及實驗驗證

        本文運用幀間差分結(jié)合碰撞算法,使冰球的運行軌跡只與冰球的初始運動狀態(tài)有關(guān),算法在處理到前幾幀便可以預(yù)測出冰球運行到機器人攻擊點的最終位置,極大地縮短了冰球軌跡的預(yù)測時間,使機器人能夠有充足的時間對冰球進(jìn)行擊打,滿足了機器人實時性的要求.通過采集幾組實際工程中連續(xù)幀圖像來驗證本文算法,將預(yù)測位置與實際檢測位置的差值P與冰球直徑D作對比,且由于機器人手柄直徑大于冰球直徑,所以若P<D,則機器人能夠擋住并實現(xiàn)對冰球的擊打,以此驗證本文算法切實可行.

        實驗中所建立的坐標(biāo)系為像素坐標(biāo)系,其整體尺寸為 6 94×370,數(shù)值均為像素坐標(biāo)值[12].由于本文主要解決算法運行速度慢的問題,所以應(yīng)該盡可能地在檢測到冰球的前幾幀時就能夠預(yù)測出冰球到達(dá)機器人攻擊范圍內(nèi)的目標(biāo)位置 (XL,YL).該目標(biāo)位置是根據(jù)機器人的攻擊范圍合理的設(shè)定了一個X方向的閾值XL,本文根據(jù)實際情況取XL=500,對于預(yù)測目標(biāo)只需要求出YL的值即可預(yù)測到目標(biāo)位置.本文用幀速表示冰球的速度,通過幀間差分檢測,可以得到冰球在像素坐標(biāo)中的具體位置I(x,y),冰球在像素坐標(biāo)中的半徑R,檢測出R=15.

        冰球在桌面上運行的軌跡主要分為兩種:一種是不與桌邊發(fā)生碰撞的滑行;另一種是滑行過程中與桌邊發(fā)生碰撞,改變了其原有的運動軌跡.針對這兩種情況,本文用幀間差分和碰撞算法相結(jié)合的方法去進(jìn)行軌跡預(yù)測實驗,其具體算法運行流程圖如圖7所示.

        3.1 滑行中無碰撞的軌跡預(yù)測實驗

        這種情況對冰球軌跡的預(yù)測相對來說較為簡單,只需要知道冰球滑行的初始速度就能夠預(yù)測出冰球滑行到機器人攻擊范圍內(nèi)的具體坐標(biāo)位置 (XL,YL),并提前將這個坐標(biāo)位置發(fā)送給機器人,以實現(xiàn)對運動目標(biāo)冰球的擊擋.

        3.1.1 滑行中無碰撞的軌跡預(yù)測算法

        如圖8所示,為無碰撞時冰球軌跡預(yù)測示意圖.本文用幀差法第一次檢測到冰球位置I1(x1,y1),第二次檢測到冰球位置為I2(x2,y2),則冰球的初始速度為:

        圖7 算法運行流程圖

        圖8 無碰撞軌跡預(yù)測示意圖

        其中,Vx為冰球在X方向上的幀速,Vy為冰球在Y方向上的幀速.

        對于需要預(yù)測的目標(biāo)位置 (XL,YL)來說,由于XL=500,則冰球從第二次檢測位置運行到該目標(biāo)位置所需要的時間T為:

        由式(8),可以計算出冰球滑行到機器人攻擊范圍內(nèi)的具體坐標(biāo)位置(XL,YL).

        3.1.2 無碰撞的軌跡預(yù)測實驗驗證

        如圖9,10為檢測到冰球相鄰兩幀的位置,根據(jù)算法判斷此時冰球與桌邊不發(fā)生碰撞,其具體滑行軌跡如圖11所示.

        圖9 檢測到冰球位置 (一)

        圖10 檢測到冰球位置 (二)

        圖11 無碰撞時冰球目標(biāo)軌跡

        將圖9,10中所獲得的像素坐標(biāo)值帶入軌跡預(yù)測公式(5)至公式(8),得到預(yù)測目標(biāo)位置為(500,157.727),對比圖12中用幀差法檢測的實際最近目標(biāo)位置(495,155)(因幀差法限制,檢測不到橫坐標(biāo)為500的位置,故取其最鄰近位置),由于冰球直徑為D=2R=30>2.727,所以冰球機器人能夠擋住冰球,該預(yù)測算法能夠準(zhǔn)確預(yù)測冰球軌跡.

        圖12 檢測到實際目標(biāo)位置

        3.2 滑行中與桌邊發(fā)生碰撞的軌跡預(yù)測實驗

        當(dāng)冰球與桌邊發(fā)生碰撞時,其情況更為復(fù)雜.首先要根據(jù)檢測到的冰球目標(biāo),與桌邊哪一側(cè)碰撞,并預(yù)測到碰撞點的位置.其次根據(jù)碰撞點的位置結(jié)合碰撞算法,預(yù)測出冰球滑行到機器人攻擊范圍內(nèi)的具體坐標(biāo)位置(XL,YL).

        3.2.1 滑行中有碰撞的軌跡預(yù)測算法

        如圖13所示,為冰球軌跡預(yù)測示意圖,與無碰撞時一樣先用幀差法測到前幾幀中冰球位置為I1(x1,y1),I2(x2,y2),求出冰球在碰撞前的速度為:

        其中,Vx為冰球在X方向上的幀速,Vy為冰球在Y方向上的幀速,帶入式(3)、(4)可以求出碰撞后的速度V_x、V_y的值.并且通過判斷Vy的方向,知曉撞向桌邊的哪一側(cè).

        圖13 冰球軌跡預(yù)測示意圖

        (1)冰球在Y方向上的幀速沿負(fù)方向

        當(dāng)冰球在Y方向上的幀速為負(fù)值時,Vy沿負(fù)方向,冰球從第二次檢測位置到達(dá)碰撞點的時間T1為:

        到達(dá)碰撞點時,冰球的坐標(biāo)位置為 (x0,y0),其中y0=R,x0為:

        冰球從碰撞點到預(yù)測目標(biāo)位置所用的時間為T2,其值為:

        由此可以求出冰球到達(dá)機器人攻擊范圍內(nèi)的目標(biāo)位置(XL,YL),其中XL=500,YL的值則為:

        (2)冰球在Y方向上的幀速沿正方向

        當(dāng)冰球在Y方向上的幀速為正值時,Vy沿正方向,冰球從第二次檢測位置到達(dá)碰撞點的時間為:

        同理可以求出冰球到達(dá)機器人攻擊范圍內(nèi)的目標(biāo)位置(XL,YL),其中XL=500,YL為:

        3.2.2 碰撞軌跡預(yù)測實驗驗證

        如圖14,15為檢測到的碰撞前冰球相鄰兩幀的位置,根據(jù)算法判斷此時冰球與桌邊發(fā)生碰撞,其具體滑行軌跡如圖16所示.

        圖14 檢測到冰球位置 (一)

        圖15 檢測到冰球位置 (二)

        圖16 碰撞時冰球目標(biāo)軌跡

        將圖14,15中所獲得的像素坐標(biāo)值帶入軌跡預(yù)測公式 (9)~公式 (1 4),得到預(yù)測目標(biāo)位置為(500,156.693).對比用幀差法檢測到的實際目標(biāo)位置,如圖17,因為冰球直徑D=2R=30>6.693,所以機器人能夠成功擋住冰球,由此也驗證了本文算法的可行性.

        圖17 實際冰球位置

        為驗證本文算法的快速性,本文用GetTickCount()函數(shù)來記錄系統(tǒng)運行算法的時間,該函數(shù)可以返回從算法啟動到結(jié)束所經(jīng)過的毫秒數(shù),精度非常高.如圖18所示,本文算法運行時間為 16 ms<30 ms,完全能夠滿足機器人對目標(biāo)跟蹤預(yù)測算法快速性的要求.

        圖18 算法運行時間

        4 結(jié)束語

        本文通過幀間差分法快速找到冰球目標(biāo),再結(jié)合碰撞算法,對冰球軌跡進(jìn)行預(yù)測.算法僅通過兩次幀間差分,就能夠預(yù)測出運動目標(biāo)的位置信息,滿足了冰球機器人對算法快速性的要求,使冰球機器人能夠成功擋住冰球,并且有充足的時間進(jìn)行擊打操作.相對于傳統(tǒng)的運動目標(biāo)跟蹤預(yù)測算法,本文算法對于運動目標(biāo)的跟蹤預(yù)測速度更快,實時性更好.對于算法速度要求高的工程性問題,本文算法具有很高的參考價值.

        猜你喜歡
        冰球軌跡方向
        2022年組稿方向
        2021年組稿方向
        2021年組稿方向
        冰球守門員髖關(guān)節(jié)損傷與治療
        冰雪運動(2020年4期)2021-01-14 00:56:02
        我國冰球“貫通化”后備人才培養(yǎng)模式的思考
        冰雪運動(2020年2期)2020-08-24 08:34:22
        軌跡
        軌跡
        冰球
        幼兒100(2018年26期)2018-09-26 06:18:48
        軌跡
        進(jìn)化的軌跡(一)——進(jìn)化,無盡的適應(yīng)
        中國三峽(2017年2期)2017-06-09 08:15:29
        国产成熟人妻换╳╳╳╳| 亚洲成a∨人片在线观看无码| 国产极品裸体av在线激情网| 99在线精品免费视频| 国产综合无码一区二区辣椒| 又白又嫩毛又多15p| 99re这里只有热视频| 国产一区二区不卡老阿姨| 日本不卡视频网站| 亚洲色无码中文字幕| 亚洲五码av在线观看| 亚洲国产性夜夜综合另类 | 白白青青视频在线免费观看| 国产激情在线观看视频网址| 午夜福利视频一区二区二区| 亚洲av无码一区东京热久久| 性欧美videofree高清精品| 国产精品内射后入合集| 日韩AV无码一区二区三不卡| 天堂视频一区二区免费在线观看| 中文字幕文字幕视频在线| 亚洲天堂成人av在线观看| 精品亚洲国产成人| 欧美日韩亚洲国产精品| av无码天一区二区一三区| 美腿丝袜av在线播放| 人妻少妇偷人精品一区二区| 亚洲色一区二区三区四区| 丰满少妇a级毛片野外| 亚洲影院天堂中文av色| 九九在线精品视频xxx| 国产av午夜精品一区二区入口| 男人国产av天堂www麻豆| 性色av浪潮av色欲av| 最新精品国偷自产在线婷婷| 亚洲中文有码一区二区| 国产性感丝袜在线观看| 国产激情无码一区二区三区| 久热香蕉视频| 女同另类激情在线三区| 91精品国产综合久久精品密臀|