本發(fā)明涉及一種目標(biāo)跟蹤技術(shù)領(lǐng)域,具體地說,是涉及一種基于圖像的無(wú)人機(jī)目標(biāo)跟蹤控制方法。
背景技術(shù):
目前無(wú)人機(jī)目標(biāo)跟蹤控制方式需要通過機(jī)器視覺計(jì)算出目標(biāo)相對(duì)于無(wú)人機(jī)的三維位置,該種控制方法具有以下缺點(diǎn):1、算法復(fù)雜且計(jì)算量大;2、還需要無(wú)人機(jī)的航向和姿態(tài)信息,通常航向信息通過磁傳感器獲得,但磁航向極易受到干擾,當(dāng)跟蹤敵對(duì)目標(biāo)或接近高壓電線等磁場(chǎng)時(shí),磁傳感器容易失靈會(huì)導(dǎo)致無(wú)人機(jī)失控,導(dǎo)致無(wú)法對(duì)目標(biāo)進(jìn)行跟蹤。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明為了解決現(xiàn)有無(wú)人機(jī)目標(biāo)跟蹤控制方式計(jì)算量大,航向信息通過磁傳感器獲得容易受到干擾的技術(shù)問題,提出了一種基于圖像的無(wú)人機(jī)目標(biāo)跟蹤控制方法,通過建立虛擬圖像平面,采集目標(biāo)圖像,并且使用虛擬圖像平面對(duì)目標(biāo)圖像特征點(diǎn)進(jìn)行坐標(biāo)變換,通過對(duì)圖像特征點(diǎn)進(jìn)行跟蹤的方式校正無(wú)人機(jī)的飛行姿態(tài),同樣可以實(shí)現(xiàn)對(duì)目標(biāo)跟蹤的目的,且本跟蹤方法計(jì)算量小,不依賴通過磁傳感器獲取航向信息,可以避免磁干擾帶來(lái)的影響。
為了解決上述技術(shù)問題,本發(fā)明采用以下技術(shù)方案予以實(shí)現(xiàn):
一種基于圖像的無(wú)人機(jī)目標(biāo)跟蹤控制方法,所述無(wú)人機(jī)上固定有攝像機(jī),所述攝像機(jī)的鏡頭平面與所述無(wú)人機(jī)的底部平面平行且朝向下方,所述無(wú)人機(jī)目標(biāo)跟蹤控制方法包括以下步驟:
(1)、攝像機(jī)在目標(biāo)上方預(yù)定高度d*垂直向下采集目標(biāo)的圖像,得到參考圖像,并從目標(biāo)中提取一組特征點(diǎn),計(jì)算所述特征點(diǎn)在參考圖像中所圍成面積a*及參考圖像的中心位置,以此建立目標(biāo)基準(zhǔn);
(2)、使用數(shù)學(xué)的方法建立虛擬圖像平面,所述虛擬圖像平面與水平面平行,在無(wú)人機(jī)飛行時(shí)攝像機(jī)周期采集目標(biāo)的圖像,得到采集圖像,將采集圖像投影至所述虛擬圖像平面,得到投影圖像,計(jì)算所述特征點(diǎn)在投影圖像中所圍成面積a′;
(3)、根據(jù)特征點(diǎn)在投影圖像中所圍成面積a′與所述特征點(diǎn)在參考圖像中所圍成面積a*,計(jì)算投影圖像在豎直方向上與目標(biāo)的相對(duì)距離:
計(jì)算投影圖像在水平方向與目標(biāo)的偏移量:
其中,
(4)、計(jì)算投影圖像與參考圖像之間的偏移量δ;
(5)、計(jì)算位置控制器輸出指令u:
其中,kp、kd、ki為無(wú)人機(jī)控制參數(shù),由用戶設(shè)定;
(6)、由所述位置控制器輸出指令u生成姿態(tài)指令rd和拉力指令fd,用于控制無(wú)人機(jī)調(diào)整飛行高度以及飛行偏角。
進(jìn)一步的,步驟(2)中特征點(diǎn)在投影圖像中所圍成面積a′的計(jì)算方法為:
其中,n為特征點(diǎn)的數(shù)量,為正整數(shù),在投影圖像所在平面做投影直角坐標(biāo)系,u′k為在所述投影直角坐標(biāo)系中,投影圖像中第k個(gè)特征點(diǎn)的橫坐標(biāo)值,v′k為在所述投影直角坐標(biāo)系中,投影圖像中第k個(gè)特征點(diǎn)的豎坐標(biāo)值。
進(jìn)一步的,步驟(1)中特征點(diǎn)在參考圖像中所圍成面積a*的計(jì)算方法為:
其中,在參考圖像所在平面做機(jī)器直角坐標(biāo)系,uk為在所述機(jī)器直角坐標(biāo)系中,參考圖像中第k個(gè)特征點(diǎn)的橫坐標(biāo)值,vk為在所述機(jī)器直角坐標(biāo)系中,參考圖像中第k個(gè)特征點(diǎn)的豎坐標(biāo)值。
進(jìn)一步的,步驟(3)中,投影圖像的中心點(diǎn)的橫坐標(biāo)值
投影圖像的中心點(diǎn)的豎坐標(biāo)值
進(jìn)一步的,步驟(4)中偏移量δ的計(jì)算方法為:
δ=[δxδyδz]t
其中,
進(jìn)一步的,步驟(6)中姿態(tài)指令rd的計(jì)算方法為:
拉力指令fd的計(jì)算方法為:
fd=m||u||,其中,m為無(wú)人機(jī)的質(zhì)量。
與現(xiàn)有技術(shù)相比,本發(fā)明的優(yōu)點(diǎn)和積極效果是:本發(fā)明的基于圖像的無(wú)人機(jī)目標(biāo)跟蹤控制方法,通過建立虛擬圖像平面,采集目標(biāo)圖像,選取特征點(diǎn)并且使用虛擬圖像平面對(duì)目標(biāo)圖像特征點(diǎn)進(jìn)行坐標(biāo)變換,通過對(duì)圖像特征點(diǎn)進(jìn)行跟蹤的方式校正無(wú)人機(jī)的飛行位置,同樣可以實(shí)現(xiàn)對(duì)目標(biāo)跟蹤的目的,且本跟蹤方法計(jì)算量小,不需要磁羅盤等傳感器,可以避免磁干擾帶來(lái)的影響。
結(jié)合附圖閱讀本發(fā)明實(shí)施方式的詳細(xì)描述后,本發(fā)明的其他特點(diǎn)和優(yōu)點(diǎn)將變得更加清楚。
附圖說明
為了更清楚地說明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
圖1是本發(fā)明所提出的基于圖像的無(wú)人機(jī)目標(biāo)跟蹤控制方法的一種實(shí)施例原理示意圖;
圖2是本發(fā)明所提出的基于圖像的無(wú)人機(jī)目標(biāo)跟蹤控制方法的一種實(shí)施例流程圖。
具體實(shí)施方式
下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例。基于本發(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
實(shí)施例一,本實(shí)施例提出了一種基于圖像的無(wú)人機(jī)目標(biāo)跟蹤控制方法,如圖1所示,無(wú)人機(jī)10上固定有攝像機(jī)11,攝像機(jī)11的鏡頭平面與無(wú)人機(jī)10的底部平面平行且朝向下方,理想狀態(tài)下,無(wú)人機(jī)保持水平方向飛行,但是在實(shí)際飛行過程中,飛行姿態(tài)不固定,可能會(huì)與水平面具有一定夾角,但是夾角不影響攝像機(jī)11對(duì)目標(biāo)的圖像采集,只要目標(biāo)仍然在攝像頭的圖像拍攝范圍內(nèi),攝像頭均可獲取對(duì)目標(biāo)的采集圖像信息,本方法即通過對(duì)采集目標(biāo)的圖像信息進(jìn)行分析,進(jìn)而校正無(wú)人機(jī)的飛行位置,使得目標(biāo)在攝像機(jī)所拍攝的圖像中始終位于合適的位置以及在圖像中保持合適的大小,既然對(duì)目標(biāo)所拍攝的圖像位置和大小穩(wěn)定了,體現(xiàn)在實(shí)際空間中,也即無(wú)人機(jī)與目標(biāo)之間的相對(duì)位置是穩(wěn)定的,進(jìn)而實(shí)現(xiàn)了無(wú)人機(jī)對(duì)目標(biāo)的跟蹤,本方法將以一具體實(shí)施例進(jìn)行說明,本實(shí)施例中無(wú)人機(jī)目標(biāo)跟蹤控制方法包括以下步驟:
s1、攝像機(jī)在目標(biāo)上方預(yù)定高度d*垂直向下采集目標(biāo)的圖像,得到參考圖像,并從目標(biāo)中提取一組特征點(diǎn),計(jì)算所述特征點(diǎn)在參考圖像中所圍成面積a*及參考圖像的中心位置,以此建立目標(biāo)基準(zhǔn);參考圖像屬于一種理想狀態(tài)下無(wú)人機(jī)對(duì)目標(biāo)能夠獲取的圖像,也即,將攝像機(jī)放置在目標(biāo)的正上方高度為d*的位置處,垂直向下采集目標(biāo)的圖像,得到參考圖像,飛行高度也即目標(biāo)到所述虛擬圖像平面的距離d*為期望跟蹤高度,該種理想狀況下所獲取的目標(biāo)在虛擬圖像平面的投影作為參考圖像,當(dāng)無(wú)人機(jī)沒有位于理想狀態(tài)下時(shí)所拍攝的圖像具有相應(yīng)的參考基準(zhǔn),通過比較兩幅圖像的差別進(jìn)而獲取到無(wú)人機(jī)的姿態(tài)調(diào)整信息。
s2、使用數(shù)學(xué)的方法建立虛擬圖像平面,虛擬圖像平面與水平面平行,在無(wú)人機(jī)飛行時(shí)攝像機(jī)周期采集目標(biāo)的圖像,得到采集圖像,將采集圖像投影至虛擬圖像平面,得到投影圖像,計(jì)算特征點(diǎn)在投影圖像中所圍成面積a′;由前述可知,采集圖像為攝像機(jī)對(duì)目標(biāo)的實(shí)際拍攝所獲取的圖像,由于攝像機(jī)隨著無(wú)人機(jī)運(yùn)動(dòng),因此拍攝角度和高度時(shí)刻發(fā)生變化。
通過選取特征點(diǎn)的方式,無(wú)需對(duì)目標(biāo)圖像中所有的點(diǎn)進(jìn)行計(jì)算跟蹤,有效減小計(jì)算量。
s3、根據(jù)特征點(diǎn)在投影圖像中所圍成面積a′與所述特征點(diǎn)在參考圖像中所圍成面積a*,計(jì)算投影圖像在豎直方向上與目標(biāo)的相對(duì)距離:
將采集圖像在虛擬圖像投影,目標(biāo)在投影圖像中的面積,也即特征點(diǎn)在投影圖像中所圍成面積a′與高度成正相關(guān),將面積開二次根方得到比例系數(shù),也即,當(dāng)特征點(diǎn)在投影圖像中所圍成面積a′與特征點(diǎn)在參考圖像中所圍成面積a*相等時(shí),說明當(dāng)前投影圖像在豎直方向上與目標(biāo)的相對(duì)距離為d*,也即,采集圖像所在平面與參考圖像在同一平面,當(dāng)特征點(diǎn)在投影圖像中所圍成面積a′大于特征點(diǎn)在參考圖像中所圍成面積a*時(shí),qz大于d,說明采集圖像所在平面高于參考圖像平面,也即無(wú)人機(jī)飛行高度比期望高度d*高,反之,無(wú)人機(jī)飛行高度比期望高度d*低。
計(jì)算投影圖像在水平方向與目標(biāo)的偏移量:
其中,
s4、計(jì)算投影圖像與參考圖像之間的偏移量δ;當(dāng)投影圖像與參考圖像之間具有偏移時(shí),說明此時(shí)無(wú)人機(jī)沒有位于目標(biāo)的正上方。
s5、計(jì)算位置控制器輸出指令u:
其中,kp、kd、ki為無(wú)人機(jī)控制參數(shù),由用戶設(shè)定;
s6、由所述位置控制器輸出指令u生成姿態(tài)指令rd和拉力指令fd,用于控制無(wú)人機(jī)調(diào)整飛行高度以及飛行偏角。若計(jì)算獲得姿態(tài)指令rd和拉力指令fd,即可直接對(duì)無(wú)人機(jī)進(jìn)行控制。
例如四旋翼無(wú)人機(jī)只需要較小的電機(jī)轉(zhuǎn)速改變便可產(chǎn)生足夠的俯仰和滾轉(zhuǎn)力矩,而產(chǎn)生航向力矩則需要電機(jī)轉(zhuǎn)速做較大改變,且調(diào)節(jié)時(shí)間長(zhǎng)。由于無(wú)人機(jī)的圖像特征點(diǎn)面積以及相對(duì)位置誤差只與姿態(tài)指令rd和拉力指令fd有關(guān),而與航向無(wú)關(guān),因而可不改變航向,而只是通過改變姿態(tài)實(shí)現(xiàn)誤差跟蹤控制。因而姿態(tài)控制部分將傾斜部分和航向部分解耦。
步驟s2中特征點(diǎn)在投影圖像中所圍成面積a′的計(jì)算方法為:
其中,n為特征點(diǎn)的數(shù)量,為正整數(shù),在投影圖像所在平面做投影直角坐標(biāo)系,u′k為在所述投影直角坐標(biāo)系中,投影圖像中第k個(gè)特征點(diǎn)的橫坐標(biāo)值,v′k為在所述投影直角坐標(biāo)系中,投影圖像中第k個(gè)特征點(diǎn)的豎坐標(biāo)值;
步驟s1中的特征點(diǎn)在參考圖像中所圍成面積a*的計(jì)算方法為:
其中,在參考圖像所在平面做機(jī)器直角坐標(biāo)系,uk為在所述機(jī)器直角坐標(biāo)系中,參考圖像中第k個(gè)特征點(diǎn)的橫坐標(biāo)值,vk為在所述機(jī)器直角坐標(biāo)系中,參考圖像中第k個(gè)特征點(diǎn)的豎坐標(biāo)值。
步驟s3中,投影圖像的中心點(diǎn)的橫坐標(biāo)值
投影圖像的中心點(diǎn)的豎坐標(biāo)值
步驟s4中偏移量δ的計(jì)算方法為:
δ=[δxδyδz]t
其中,
由前述記載可知,參考圖像屬于一種理想狀態(tài)下無(wú)人機(jī)對(duì)目標(biāo)能夠獲取的圖像,也即,無(wú)人機(jī)位于水平方向上,且在豎直方向上位于目標(biāo)的正上方,飛行高度也即目標(biāo)到所述虛擬圖像平面的距離d*為期望跟蹤高度,該種理想狀況下所獲取的目標(biāo)在虛擬圖像平面的投影作為參考圖像,因此,投影圖像與參考圖像之間的偏移量δ反應(yīng)了采集圖像在水平方向與目標(biāo)之間的偏移量,也即
步驟s6中姿態(tài)指令rd的計(jì)算方法為:
拉力指令fd的計(jì)算方法為:
fd=m||u||,其中,m為無(wú)人機(jī)的質(zhì)量。
上述公式為無(wú)人機(jī)的常規(guī)控制方式,其可通過位置控制器輸出指令u計(jì)算出相應(yīng)的姿態(tài)指令和拉力指令。
當(dāng)然,上述說明并非是對(duì)本發(fā)明的限制,本發(fā)明也并不僅限于上述舉例,本技術(shù)領(lǐng)域的普通技術(shù)人員在本發(fā)明的實(shí)質(zhì)范圍內(nèi)所做出的變化、改型、添加或替換,也應(yīng)屬于本發(fā)明的保護(hù)范圍。