本發(fā)明涉及定位及控制技術(shù)領(lǐng)域,特別涉及一種移動(dòng)終端的定位和控制方法、裝置及無人機(jī)。
背景技術(shù):
在相關(guān)技術(shù)中,移動(dòng)終端定位技術(shù)主要分為三種:基于GPS的定位技術(shù)、基于運(yùn)動(dòng)捕捉系統(tǒng)的定位技術(shù)、基于色塊的視覺定位技術(shù)。其中,
基于GPS的定位技術(shù)一般適用于室外環(huán)境,但是由于民用GPS精度較低(只有3米的精度),且存在遮擋和多徑效應(yīng)等問題,所以基于GPS的定位技術(shù)很難滿足移動(dòng)終端中的飛行器精準(zhǔn)定位與編隊(duì)飛行的要求。為了提高GPS的定位精度,必須使用差分GPS定位系統(tǒng),該系統(tǒng)利用已知精確三維坐標(biāo)的差分GPS基準(zhǔn)臺(tái),向用戶/移動(dòng)終端實(shí)時(shí)發(fā)送修正信號(hào),從而實(shí)現(xiàn)較高精度的定位。但是差分GPS設(shè)備造價(jià)較高,且仍然不能消除用戶/移動(dòng)終端GPS接收機(jī)本身的固有誤差。
基于運(yùn)動(dòng)捕捉系統(tǒng)的定位技術(shù),需要在被定位物體/移動(dòng)終端上設(shè)置定位點(diǎn),通過多個(gè)相機(jī)從不同的位置拍攝定位點(diǎn),根據(jù)標(biāo)定好的相機(jī)位置以及相機(jī)本身固有參數(shù)實(shí)時(shí)計(jì)算被定位物體的實(shí)時(shí)空間位置和姿態(tài)。運(yùn)動(dòng)捕捉系統(tǒng)定位精度高,但價(jià)格及其昂貴,且在使用之前需要對(duì)整個(gè)系統(tǒng)進(jìn)行標(biāo)定,使用及其不便。
綜上所述,急需提出一種新的移動(dòng)終端定位技術(shù),解決在投入成本不高的情況下移動(dòng)終端定位精度的技術(shù)問題,同時(shí)實(shí)現(xiàn)移動(dòng)終端的精準(zhǔn)控制。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明實(shí)施例的主要目的在于提出一種移動(dòng)終端的定位和控制方法、裝置及無人機(jī),在投入成本不高的情況下擴(kuò)大了精準(zhǔn)定位的范圍,并且實(shí)現(xiàn)一種新的控制移動(dòng)終端懸停與移動(dòng)的交互方式,同時(shí)提高了移動(dòng)終端的控制準(zhǔn)確性。
為實(shí)現(xiàn)上述目的,本發(fā)明提供了一種移動(dòng)終端的定位方法,包括:
從移動(dòng)終端的圖像采集設(shè)備中獲取圖像信息;
從所述圖像信息中獲取預(yù)設(shè)圖案;
根據(jù)所述預(yù)設(shè)圖案在世界坐標(biāo)系中的坐標(biāo)、所述預(yù)設(shè)圖案在所述圖像信息中的坐標(biāo)以及所述圖像采集設(shè)備的拍攝參數(shù)確定當(dāng)前時(shí)刻所述移動(dòng)終端在所述世界坐標(biāo)系中的位置。
可選的,在本發(fā)明一實(shí)施例中,確定當(dāng)前時(shí)刻所述移動(dòng)終端在所述世界坐標(biāo)系中的位置的步驟包括:
根據(jù)所述預(yù)設(shè)圖案在所述世界坐標(biāo)系中的坐標(biāo)、所述預(yù)設(shè)圖案在所述圖像信息中的坐標(biāo)以及所述圖像采集設(shè)備的內(nèi)參矩陣,獲得所述預(yù)設(shè)圖案的所述世界坐標(biāo)系到攝像機(jī)坐標(biāo)系的旋轉(zhuǎn)平移矩陣,其中,所述內(nèi)參矩陣為所述圖像采集設(shè)備的拍攝參數(shù)組成的矩陣;
獲取所述世界坐標(biāo)系到攝像機(jī)坐標(biāo)系的旋轉(zhuǎn)平移矩陣的逆矩陣,得到所述預(yù)設(shè)圖案的攝像機(jī)坐標(biāo)系到世界坐標(biāo)系的旋轉(zhuǎn)平移矩陣;所述攝像機(jī)坐標(biāo)系到世界坐標(biāo)系的旋轉(zhuǎn)平移矩陣即為當(dāng)前時(shí)刻所述移動(dòng)終端在世界坐標(biāo)系中的位置。
可選的,在本發(fā)明一實(shí)施例中,所述確定當(dāng)前時(shí)刻所述移動(dòng)終端在所述世界坐標(biāo)系中的位置之后,包括:
比較當(dāng)前時(shí)刻所述移動(dòng)終端在所述世界坐標(biāo)系中的位置是否與所述移動(dòng)終端接收的目標(biāo)位置一致,所述目標(biāo)位置包括預(yù)設(shè)位置或所述移動(dòng)終端接收的控制位置;
在一致的情況下,所述移動(dòng)終端停于所述目標(biāo)位置;
在不一致的情況下,所述移動(dòng)終端移至所述目標(biāo)位置。
可選的,在本發(fā)明一實(shí)施例中,所述確定當(dāng)前時(shí)刻所述移動(dòng)終端在所述世界坐標(biāo)系中的位置之后,包括:
比較所述當(dāng)前時(shí)刻所述移動(dòng)終端在所述世界坐標(biāo)系中的位置與上一時(shí)刻所述移動(dòng)終端在所述世界坐標(biāo)系中的位置是否有變化;
所述移動(dòng)終端在所述世界坐標(biāo)系中的位置發(fā)生變化的情況下,則所述移動(dòng)終端移至所述上一時(shí)刻所述移動(dòng)終端在所述世界坐標(biāo)系中的位置。
可選的,在本發(fā)明一實(shí)施例中,所述確定當(dāng)前時(shí)刻所述移動(dòng)終端在所述世界坐標(biāo)系中的位置之后,還包括:
根據(jù)所述當(dāng)前時(shí)刻所述移動(dòng)終端在世界坐標(biāo)系中的位置、上一時(shí)刻所述移動(dòng)終端在世界坐標(biāo)系中的位置以及所述當(dāng)前時(shí)刻和所述上一時(shí)刻的時(shí)間差,獲得所述移動(dòng)終端的移動(dòng)速度。
可選的,在本發(fā)明一實(shí)施例中,獲得所述移動(dòng)終端的移動(dòng)速度之后,還包括:
比較所述移動(dòng)終端的移動(dòng)速度與目標(biāo)速度是否一致,根據(jù)比較結(jié)果控制所述移動(dòng)終端移動(dòng)速度與所述目標(biāo)速度一致。
可選的,在本發(fā)明一實(shí)施例中,所述預(yù)設(shè)圖案包含至少兩種顏色,且其中兩種顏色之間的色差需大于預(yù)設(shè)值;通過圖像識(shí)別算法,利用所述色差從所述圖像信息中獲得預(yù)設(shè)圖案。
可選的,在本發(fā)明一實(shí)施例中,所述預(yù)設(shè)圖案為非中心對(duì)稱圖案。
可選的,在本發(fā)明一實(shí)施例中,所述預(yù)設(shè)圖案為Marker圖案。
可選的,在本發(fā)明一實(shí)施例中,所述預(yù)設(shè)圖案包括:基礎(chǔ)符號(hào)和分組編碼符號(hào),所述分組編碼符號(hào)位于基礎(chǔ)符號(hào)的周圍。
可選的,在本發(fā)明一實(shí)施例中,所述基礎(chǔ)符號(hào)由N*N的點(diǎn)陣構(gòu)成,所述分組編碼符號(hào)由M*K的點(diǎn)陣構(gòu)成,K、M、N為大于1的正整數(shù)。
對(duì)應(yīng)地,為實(shí)現(xiàn)上述目的,本發(fā)明還提供了一種移動(dòng)終端定位裝置,包括:
圖像獲取單元,用于從移動(dòng)終端的圖像采集設(shè)備中獲取圖像信息;
預(yù)設(shè)圖案識(shí)別單元,用于從所述圖像信息中獲取預(yù)設(shè)圖案;
定位單元,用于根據(jù)所述預(yù)設(shè)圖案在世界坐標(biāo)系中的坐標(biāo)、所述預(yù)設(shè)圖案在所述圖像信息中的坐標(biāo)以及所述圖像采集設(shè)備的拍攝參數(shù)確定當(dāng)前時(shí)刻所述移動(dòng)終端在所述世界坐標(biāo)系中的位置。
可選的,在本發(fā)明一實(shí)施例中,所述定位單元包括:
計(jì)算模塊,用于根據(jù)所述預(yù)設(shè)圖案在所述世界坐標(biāo)系中的坐標(biāo)、所述預(yù)設(shè)圖案在所述圖像信息中的坐標(biāo)以及所述圖像采集設(shè)備的內(nèi)參矩陣,獲得所述預(yù)設(shè)圖案的所述世界坐標(biāo)系到攝像機(jī)坐標(biāo)系的旋轉(zhuǎn)平移矩陣,其中,所述內(nèi)參矩陣為所述圖像采集設(shè)備的拍攝參數(shù)組成的矩陣;
求逆模塊,用于獲取所述世界坐標(biāo)系到攝像機(jī)坐標(biāo)系的旋轉(zhuǎn)平移矩陣的逆矩陣,得到所述預(yù)設(shè)圖案的攝像機(jī)坐標(biāo)系到世界坐標(biāo)系的旋轉(zhuǎn)平移矩陣;所述攝像機(jī)坐標(biāo)系到世界坐標(biāo)系的旋轉(zhuǎn)平移矩陣即為當(dāng)前時(shí)刻所述移動(dòng)終端在世界坐標(biāo)系中的位置。
可選的,在本發(fā)明一實(shí)施例中,所述移動(dòng)終端定位裝置還包括:
判斷單元,用于比較當(dāng)前時(shí)刻所述移動(dòng)終端在所述世界坐標(biāo)系中的位置是否與所述移動(dòng)終端接收的目標(biāo)位置一致,所述目標(biāo)位置包括預(yù)設(shè)位置或所述移動(dòng)終端接收的控制位置;
懸停控制單元,用于在一致的情況下,所述移動(dòng)終端停于所述目標(biāo)位置;在不一致的情況下,所述移動(dòng)終端移至所述目標(biāo)位置。
可選的,在本發(fā)明一實(shí)施例中,所述移動(dòng)終端定位裝置還包括:
比較單元,用于比較所述當(dāng)前時(shí)刻所述移動(dòng)終端在所述世界坐標(biāo)系中的位置與上一時(shí)刻所述移動(dòng)終端在所述世界坐標(biāo)系中的位置是否有變化;
第一移動(dòng)控制單元,用于所述移動(dòng)終端在所述世界坐標(biāo)系中的位置發(fā)生變化的情況下,則所述移動(dòng)終端移至所述上一時(shí)刻所述移動(dòng)終端在所述世界坐標(biāo)系中的位置。
可選的,在本發(fā)明一實(shí)施例中,所述移動(dòng)終端定位裝置還包括:
實(shí)際移動(dòng)速度獲取單元,用于根據(jù)所述當(dāng)前時(shí)刻所述移動(dòng)終端在世界坐標(biāo)系中的位置、上一時(shí)刻所述移動(dòng)終端在世界坐標(biāo)系中的位置以及所述當(dāng)前時(shí)刻和所述上一時(shí)刻的時(shí)間差,獲得所述移動(dòng)終端的移動(dòng)速度。
可選的,在本發(fā)明一實(shí)施例中,所述移動(dòng)終端定位裝置還包括:
第二移動(dòng)控制單元,用于比較所述移動(dòng)終端的實(shí)際飛行速度與目標(biāo)速度,比較所述移動(dòng)終端的移動(dòng)速度與目標(biāo)速度是否一致,根據(jù)比較結(jié)果控制所述移動(dòng)終端移動(dòng)速度與所述目標(biāo)速度一致。
可選的,在本發(fā)明一實(shí)施例中,所述預(yù)設(shè)圖案識(shí)別單元獲取的預(yù)設(shè)圖案包含至少兩種顏色,且其中兩種顏色之間的色差需大于預(yù)設(shè)值;所述預(yù)設(shè)圖案識(shí)別單元通過圖像識(shí)別算法,利用所述色差從所述圖像信息中獲得預(yù)設(shè)圖案。
可選的,在本發(fā)明一實(shí)施例中,所述預(yù)設(shè)圖案識(shí)別單元獲取的預(yù)設(shè)圖案為非中心對(duì)稱圖案。
可選的,在本發(fā)明一實(shí)施例中,所述預(yù)設(shè)圖案識(shí)別單元獲取的預(yù)設(shè)圖案為Marker圖案。
可選的,在本發(fā)明一實(shí)施例中,所述預(yù)設(shè)圖案包括:基礎(chǔ)符號(hào)和分組編碼符號(hào),所述分組編碼符號(hào)位于基礎(chǔ)符號(hào)的周圍。
可選的,在本發(fā)明一實(shí)施例中,所述基礎(chǔ)符號(hào)由N*N的點(diǎn)陣構(gòu)成,所述分組編碼符號(hào)由M*K的點(diǎn)陣構(gòu)成組成,M、K、N為大于1的正整數(shù)。
對(duì)應(yīng)地,為實(shí)現(xiàn)上述目的,本發(fā)明還提出了一種無人機(jī),包括上述移動(dòng)終端定位裝置的各個(gè)功能模塊。
對(duì)應(yīng)地,為實(shí)現(xiàn)上述目的,本發(fā)明還提出了一種基于上述移動(dòng)終端的定位方法進(jìn)行移動(dòng)終端控制的方法,包括:
接收移動(dòng)終端的位置數(shù)據(jù),所述位置數(shù)據(jù)通過如下方式獲?。簭囊苿?dòng)終端的圖像采集設(shè)備中獲取圖像信息,從所述圖像信息中獲取預(yù)設(shè)圖案,根據(jù)所述預(yù)設(shè)圖案在世界坐標(biāo)系中的坐標(biāo)、所述預(yù)設(shè)圖案在所述圖像信息中的坐標(biāo)以及所述圖像采集設(shè)備的拍攝參數(shù)確定當(dāng)前時(shí)刻所述移動(dòng)終端在所述世界坐標(biāo)系中的位置;
獲取所述移動(dòng)終端的預(yù)設(shè)飛行規(guī)劃數(shù)據(jù);
根據(jù)所述預(yù)設(shè)飛行規(guī)劃數(shù)據(jù)以及所述位置數(shù)據(jù)生成控制所述移動(dòng)終端飛行的飛行控制命令。
可選的,在本發(fā)明一實(shí)施例中,所述預(yù)設(shè)飛行規(guī)劃數(shù)據(jù)為腳本文件數(shù)據(jù)。
可選的,在本發(fā)明一實(shí)施例中,所述預(yù)設(shè)飛行規(guī)劃數(shù)據(jù)包括:按順序執(zhí)行的多幀預(yù)設(shè)飛行規(guī)劃數(shù)據(jù),每幀預(yù)設(shè)飛行規(guī)劃數(shù)據(jù)包括移動(dòng)終端的預(yù)設(shè)位置數(shù)據(jù),所述獲取所述移動(dòng)終端的預(yù)設(shè)飛行規(guī)劃數(shù)據(jù)包括:依次獲取每幀預(yù)設(shè)飛行規(guī)劃數(shù)據(jù);
所述根據(jù)所述預(yù)設(shè)飛行規(guī)劃數(shù)據(jù)以及所述位置數(shù)據(jù)生成控制所述移動(dòng)終端飛行的飛行控制命令包括:
對(duì)獲取的當(dāng)前幀預(yù)設(shè)飛行規(guī)劃數(shù)據(jù)計(jì)算所述預(yù)設(shè)位置數(shù)據(jù)與接收的位置數(shù)據(jù)之間的差值;
根據(jù)所述差值生成當(dāng)前的控制所述移動(dòng)終端飛行的控制命令。
對(duì)應(yīng)地,為實(shí)現(xiàn)上述目的,本發(fā)明還提出了一種移動(dòng)終端控制裝置,包括:
接收單元,用于接收移動(dòng)終端的位置數(shù)據(jù),所述位置數(shù)據(jù)通過如下方式獲?。簭囊苿?dòng)終端的圖像采集設(shè)備中獲取圖像信息,從所述圖像信息中獲取預(yù)設(shè)圖案,根據(jù)所述預(yù)設(shè)圖案在世界坐標(biāo)系中的坐標(biāo)、所述預(yù)設(shè)圖案在所述圖像信息中的坐標(biāo)以及所述圖像采集設(shè)備的拍攝參數(shù)確定當(dāng)前時(shí)刻所述移動(dòng)終端在所述世界坐標(biāo)系中的位置;
獲取單元,用于獲取所述移動(dòng)終端的預(yù)設(shè)飛行規(guī)劃數(shù)據(jù);
飛行控制單元,用于根據(jù)所述預(yù)設(shè)飛行規(guī)劃數(shù)據(jù)以及所述位置數(shù)據(jù)生成控制所述移動(dòng)終端飛行的飛行控制命令。
對(duì)應(yīng)地,為實(shí)現(xiàn)上述目的,本發(fā)明還提出了一種無人機(jī),包括上述的移動(dòng)終端控制裝置。
上述技術(shù)方案具有如下有益效果:
1、相比現(xiàn)有的移動(dòng)終端定位方式,本技術(shù)方案不需要投入昂貴的設(shè)備,并且可將移動(dòng)終端的定位精度提升至亞厘米級(jí),滿足移動(dòng)終端中的飛行器對(duì)于精準(zhǔn)懸停與編隊(duì)飛行的精度要求。
2、本技術(shù)方案可有效擴(kuò)大移動(dòng)終端精準(zhǔn)定位的范圍,尤其滿足移動(dòng)終端中的飛行器編隊(duì)飛行對(duì)空間的要求。
3、相比于其他圖案檢測(cè)技術(shù),Marker圖案檢測(cè)技術(shù)具有計(jì)算量小,準(zhǔn)確度高、對(duì)光照不敏感等優(yōu)點(diǎn)。
4、在滿足精確定位的同時(shí),通過移動(dòng)Marker圖案,實(shí)現(xiàn)對(duì)移動(dòng)終端的控制,提供了一種新的移動(dòng)終端操控方式。
5、由于采用上述定位方式能夠獲得高精確度的位置數(shù)據(jù),基于該高精確度的位置數(shù)據(jù)對(duì)移動(dòng)終端進(jìn)行控制,有效保證了控制準(zhǔn)確性。
附圖說明
為了更清楚地說明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
圖1為攝像成像幾何關(guān)系示意圖;
圖2為本發(fā)明提出的一種移動(dòng)終端的定位方法流程圖;
圖3為本發(fā)明提出的一種移動(dòng)終端定位應(yīng)用的流程圖之一;
圖4為本發(fā)明提出的一種移動(dòng)終端定位應(yīng)用的流程圖之二;
圖5為本發(fā)明提出的一種移動(dòng)終端定位應(yīng)用的流程圖之三;
圖6為本發(fā)明提供的一種移動(dòng)終端定位裝置框圖;
圖7為本裝置中定位單元的功能框圖;
圖8為本發(fā)明提供的一種移動(dòng)終端定位裝置應(yīng)用框圖之一;
圖9為本發(fā)明提供的一種移動(dòng)終端定位裝置應(yīng)用框圖之二;
圖10為本發(fā)明提供的一種移動(dòng)終端定位裝置應(yīng)用框圖之三;
圖11為本發(fā)明提供的一種無人機(jī)框圖;
圖12為本實(shí)施例的世界坐標(biāo)系建立示意圖;
圖13為本實(shí)施例的識(shí)別出的Marker圖案示意圖;
圖14為本實(shí)施例的定位流程圖;
圖15為本實(shí)施例的移動(dòng)終端的控制方法的流程圖;
圖16為本實(shí)施例的移動(dòng)終端的控制裝置的框圖;
圖17為本實(shí)施例的預(yù)設(shè)圖案中的基礎(chǔ)符號(hào)示意圖;
圖18為本實(shí)施例的預(yù)設(shè)圖案示意圖;
圖19為本實(shí)施例的定位符號(hào)示意圖;
圖20為本實(shí)施例對(duì)圖19所示的示意圖分組擴(kuò)展后的示意圖;
圖21為本實(shí)施例定位圖案示意圖。
具體實(shí)施方式
下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
本領(lǐng)域技術(shù)人員知道,本發(fā)明的實(shí)施方式可以實(shí)現(xiàn)為一種系統(tǒng)、裝置、設(shè)備、方法或計(jì)算機(jī)程序產(chǎn)品。因此,本公開可以具體實(shí)現(xiàn)為以下形式,即:完全的硬件、完全的軟件(包括固件、駐留軟件、微代碼等),或者硬件和軟件結(jié)合的形式。
根據(jù)本發(fā)明的實(shí)施方式,提出了一種移動(dòng)終端的定位方法、移動(dòng)終端定位裝置及無人機(jī)。
在本文中,需要理解的是,所涉及的術(shù)語(yǔ)中:
1、世界坐標(biāo)系:由于圖像采集設(shè)備可安放在環(huán)境中的任意位置,在環(huán)境中選擇一個(gè)基準(zhǔn)坐標(biāo)系來描述圖像采集設(shè)備的位置,并用基準(zhǔn)坐標(biāo)系描述環(huán)境中任何物體的位置,該基準(zhǔn)坐標(biāo)系為世界坐標(biāo)系。
2、圖像坐標(biāo)系:圖像采集設(shè)備采集的數(shù)字圖像在計(jì)算機(jī)內(nèi)可以存儲(chǔ)為數(shù)組,數(shù)組中的每一個(gè)元素(像素,pixel)的值即是圖像點(diǎn)的亮度(灰度)。在圖像上定義直角坐標(biāo)系u-v,每一像素的坐標(biāo)(u,v)分別是該像素在數(shù)組中的列數(shù)和行數(shù)。故(u,v)是以像素為單位的圖像坐標(biāo)系坐標(biāo)。
3、攝像機(jī)坐標(biāo)系:攝像機(jī)成像幾何關(guān)系可由圖1表示,其中,O點(diǎn)稱為攝像機(jī)光心,攝像機(jī)的光軸和圖像平面垂直,攝像機(jī)的光軸與成像平面坐標(biāo)系的x軸和y軸平行。光軸與圖像平面的交點(diǎn)為圖像主點(diǎn)O',由點(diǎn)O與軸組成的直角坐標(biāo)系稱為攝像機(jī)坐標(biāo)系。OO'為攝像機(jī)焦距。
4、懸停:飛行器在一定高度上保持空間位置基本不變的飛行狀態(tài)。
此外,附圖中的任何元素?cái)?shù)量均用于示例而非限制,以及任何命名都僅用于區(qū)分,而不具有任何限制含義。
下面參考本發(fā)明的若干代表性實(shí)施方式,詳細(xì)闡釋本發(fā)明的原理和精神。
發(fā)明概述
常規(guī)上,現(xiàn)有移動(dòng)終端定位的技術(shù)要么依賴于價(jià)格昂貴的定位設(shè)備提高定位精度,要么受外界環(huán)境影響降低定位精度。
對(duì)于這些情況,本發(fā)明提供了一種新的移動(dòng)終端定位機(jī)制。該技術(shù)方案在地面設(shè)置預(yù)設(shè)圖案,基于預(yù)設(shè)圖案建立世界坐標(biāo)系,從移動(dòng)終端上的圖像采集設(shè)備中獲得的圖像里識(shí)別出預(yù)設(shè)圖案,同時(shí)獲得預(yù)設(shè)圖案在世界坐標(biāo)系中的坐標(biāo)和預(yù)設(shè)圖案在圖像信息中的坐標(biāo),利用預(yù)設(shè)圖案在世界坐標(biāo)系中的坐標(biāo)和預(yù)設(shè)圖案在圖像信息中的坐標(biāo)確定移動(dòng)終端在世界坐標(biāo)系中的位置。利用移動(dòng)終端在世界坐標(biāo)系中的位置,實(shí)時(shí)對(duì)移動(dòng)終端的位置和朝向進(jìn)行修正,達(dá)到目標(biāo)位置或目標(biāo)速度。
在本技術(shù)方案中,圖像信息中的坐標(biāo)根據(jù)圖像坐標(biāo)系確定。
在本說明書中,圖像采集設(shè)備指代具有實(shí)時(shí)采集外界影像的系統(tǒng)和/或設(shè)備,不限于對(duì)地光流攝像頭、雙目攝像頭、無人機(jī)的主攝像頭等。
在本說明書中,本技術(shù)方案不僅僅限定于無人機(jī),只要是飛行器等移動(dòng)終端均可適用本技術(shù)方案。
在介紹了本發(fā)明的基本原理之后,下面具體介紹本發(fā)明的各種非限制性實(shí)施方式。
應(yīng)用場(chǎng)景總覽
第一種應(yīng)用場(chǎng)景:不管移動(dòng)終端處于何種運(yùn)行狀態(tài),地面設(shè)置的預(yù)設(shè)圖案處于靜止?fàn)顟B(tài)。
移動(dòng)終端通過圖像采集設(shè)備采集圖像信息,根據(jù)圖像識(shí)別算法從圖像信息中獲得預(yù)設(shè)圖案。利用預(yù)設(shè)圖案建立世界坐標(biāo)系,通過預(yù)設(shè)圖案在世界坐標(biāo)系中的坐標(biāo)和預(yù)設(shè)圖案在圖像信息中的坐標(biāo)確定移動(dòng)終端在世界坐標(biāo)系中的位置。一旦移動(dòng)終端收到懸停控制命令,控制移動(dòng)終端懸停。在懸停控制命令中,包括預(yù)設(shè)懸停位置,即目標(biāo)位置。該目標(biāo)位置可以是人為設(shè)置位置,也可以是移動(dòng)終端接收懸停控制命令時(shí)所對(duì)應(yīng)的位置。
由于移動(dòng)終端實(shí)時(shí)獲取在世界坐標(biāo)系中的位置,比較移動(dòng)終端在世界坐標(biāo)系中的實(shí)時(shí)位置與目標(biāo)位置來判斷移動(dòng)終端是否出現(xiàn)偏移等情況的發(fā)生,一旦出現(xiàn)偏移,可以根據(jù)當(dāng)前移動(dòng)終端在世界坐標(biāo)系中的位置來控制無人機(jī)的速度或加速度向偏移的反方向調(diào)整,將移動(dòng)終端移至目標(biāo)位置。
由本應(yīng)用場(chǎng)景可知,本技術(shù)方案將移動(dòng)終端的定位精度提升至亞厘米級(jí),并在確保移動(dòng)終端在相應(yīng)的目標(biāo)位置處于懸停。
第二種應(yīng)用場(chǎng)景:不管移動(dòng)終端處于何種運(yùn)行狀態(tài),地面設(shè)置的預(yù)設(shè)圖案的運(yùn)行狀態(tài)發(fā)生改變。由于世界坐標(biāo)系基于預(yù)設(shè)圖案建立的,世界坐標(biāo)系的位置隨著預(yù)設(shè)圖案的運(yùn)行狀態(tài)發(fā)生改變而相應(yīng)改變,使得預(yù)設(shè)圖案在世界坐標(biāo)系中的坐標(biāo)不變。
如果移動(dòng)終端沒有做出相應(yīng)的運(yùn)動(dòng)狀態(tài)的改變,移動(dòng)終端在世界坐標(biāo)系中的位置會(huì)發(fā)生變化,那么移動(dòng)終端采集圖像信息時(shí)獲得的預(yù)設(shè)圖案在圖像信息中的位置也發(fā)生變化。利用預(yù)設(shè)圖案在世界坐標(biāo)系中的坐標(biāo)和預(yù)設(shè)圖案在圖像信息中的坐標(biāo)確定移動(dòng)終端在世界坐標(biāo)系中的位置。
為了達(dá)到通過預(yù)設(shè)圖案控制移動(dòng)終端的目的,比較所述當(dāng)前時(shí)刻所述移動(dòng)終端在所述世界坐標(biāo)系中的位置與上一時(shí)刻所述移動(dòng)終端在所述世界坐標(biāo)系中的位置是否有變化;所述移動(dòng)終端在所述世界坐標(biāo)系中的位置發(fā)生變化的情況,說明移動(dòng)終端與預(yù)設(shè)圖案處于相對(duì)運(yùn)行狀態(tài),需要調(diào)整移動(dòng)終端運(yùn)行速度,達(dá)到移動(dòng)終端在世界坐標(biāo)系中的位置不在發(fā)生變化。
由本應(yīng)用場(chǎng)景可知,本技術(shù)方案不僅能夠精確控制移動(dòng)終端在預(yù)設(shè)位置懸停,還可以通過控制預(yù)設(shè)圖案來控制移動(dòng)終端的移動(dòng)方式,給出一種新的對(duì)移動(dòng)終端的操控方式。
第三種應(yīng)用場(chǎng)景:基于預(yù)設(shè)圖案建立世界坐標(biāo)系,不管預(yù)設(shè)圖案處于靜止?fàn)顟B(tài)還是處于運(yùn)動(dòng)狀態(tài),預(yù)設(shè)圖案在世界坐標(biāo)系中的位置不變。給移動(dòng)終端一個(gè)控制命令,期望移動(dòng)終端達(dá)到預(yù)設(shè)目標(biāo)速度。根據(jù)控制命令,移動(dòng)終端做出響應(yīng),改變移動(dòng)終端當(dāng)前的速度或加速度。
在實(shí)際應(yīng)用中,移動(dòng)終端有很大可能性沒有達(dá)到預(yù)設(shè)目標(biāo)速度。這種情況下,利用預(yù)設(shè)圖案在世界坐標(biāo)系中的坐標(biāo)和預(yù)設(shè)圖案在圖像信息中的坐標(biāo)確定移動(dòng)終端在世界坐標(biāo)系中的位置。根據(jù)當(dāng)前時(shí)刻移動(dòng)終端在世界坐標(biāo)系中的位置與上一時(shí)刻移動(dòng)終端在世界坐標(biāo)系中的位置以及所述當(dāng)前時(shí)刻和所述上一時(shí)刻的時(shí)間差,獲得移動(dòng)終端的實(shí)際移動(dòng)速度。
比較移動(dòng)終端的實(shí)際移動(dòng)速度與預(yù)設(shè)目標(biāo)速度,控制移動(dòng)終端的速度向偏移的反方向進(jìn)行調(diào)整,實(shí)現(xiàn)移動(dòng)終端當(dāng)前的實(shí)際移動(dòng)速度與控制命令中的預(yù)期目標(biāo)速度一致。
示例性方法
下面結(jié)合上述三種應(yīng)用場(chǎng)景,參考圖2、圖3、圖4、圖5對(duì)本發(fā)明的移動(dòng)終端定位方法進(jìn)行介紹。
需要注意的是,上述應(yīng)用場(chǎng)景僅是為了便于理解本發(fā)明的精神和原理而示出,本發(fā)明的實(shí)施方式在此方面不受任何限制。相反,本發(fā)明的實(shí)施方式可以應(yīng)用于適用的任何場(chǎng)景。
如圖2所示,為本發(fā)明提出的一種移動(dòng)終端的定位方法流程圖。包括:
步驟201):從移動(dòng)終端的圖像采集設(shè)備中獲取圖像信息;
步驟202):從所述圖像信息中獲取預(yù)設(shè)圖案;
通過圖像識(shí)別算法中圖像信息中得到預(yù)設(shè)圖案。
步驟203):根據(jù)所述預(yù)設(shè)圖案在世界坐標(biāo)系中的坐標(biāo)、所述預(yù)設(shè)圖案在所述圖像信息中的坐標(biāo)以及所述圖像采集設(shè)備的拍攝參數(shù)確定當(dāng)前時(shí)刻所述移動(dòng)終端在所述世界坐標(biāo)系中的位置。
在步驟203中,根據(jù)預(yù)設(shè)圖案在世界坐標(biāo)系中的坐標(biāo)、預(yù)設(shè)圖案在圖像信息中的坐標(biāo)以及圖像采集設(shè)備的內(nèi)參矩陣,獲得預(yù)設(shè)圖案的世界坐標(biāo)系到攝像機(jī)坐標(biāo)系的旋轉(zhuǎn)平移矩陣。對(duì)預(yù)設(shè)圖案的世界坐標(biāo)系到攝像機(jī)坐標(biāo)系的旋轉(zhuǎn)平移矩陣求逆,得到預(yù)設(shè)圖案的攝像機(jī)坐標(biāo)系到世界坐標(biāo)系的旋轉(zhuǎn)平移矩陣;攝像機(jī)坐標(biāo)系到世界坐標(biāo)系的旋轉(zhuǎn)平移矩陣即為當(dāng)前時(shí)刻移動(dòng)終端在世界坐標(biāo)系中的位置。其中,圖像采集設(shè)備的內(nèi)參矩陣是圖像采集設(shè)備的拍攝參數(shù)組成的矩陣。
針對(duì)上述第一種應(yīng)用場(chǎng)景,如圖3所示,為本發(fā)明提出的一種移動(dòng)終端定位應(yīng)用的流程圖之一。在圖2的基礎(chǔ)上,還包括:
步驟204):比較當(dāng)前時(shí)刻所述移動(dòng)終端在所述世界坐標(biāo)系中的位置是否與所述移動(dòng)終端接收的目標(biāo)位置一致,所述目標(biāo)位置包括預(yù)設(shè)位置或所述移動(dòng)終端接收的控制位置;
步驟205):在一致的情況下,所述移動(dòng)終端停于所述目標(biāo)位置;在不一致的情況下,所述移動(dòng)終端移至所述目標(biāo)位置。
本方法能夠精確控制移動(dòng)終端的懸停,并實(shí)時(shí)監(jiān)控移動(dòng)終端在懸停過程中是否出現(xiàn)漂移,根據(jù)漂移情況采用相應(yīng)措施,確保移動(dòng)終端在目標(biāo)位置一直處于懸停狀態(tài)。
針對(duì)上述第二種應(yīng)用場(chǎng)景,如圖4所示,為本發(fā)明提出的一種移動(dòng)終端定位應(yīng)用的流程圖之二。在圖2的基礎(chǔ)上,還包括:
步驟204’):比較所述當(dāng)前時(shí)刻所述移動(dòng)終端在所述世界坐標(biāo)系中的位置與上一時(shí)刻所述移動(dòng)終端在所述世界坐標(biāo)系中的位置是否有變化;
步驟205’):所述移動(dòng)終端在所述世界坐標(biāo)系中的位置發(fā)生變化的情況下,則所述移動(dòng)終端移至所述上一時(shí)刻所述移動(dòng)終端在所述世界坐標(biāo)系中的位置。
本方法可以不用通過控制終端,僅移動(dòng)預(yù)設(shè)圖案即可讓移動(dòng)終端做出相應(yīng)移動(dòng)。在實(shí)現(xiàn)定位的基礎(chǔ)上,給出一種對(duì)移動(dòng)終端新的控制方式。
針對(duì)上述第三種應(yīng)用場(chǎng)景,如圖5所示,為本發(fā)明提出的一種移動(dòng)終端定位應(yīng)用的流程圖之三。在圖2的基礎(chǔ)上,還包括:
步驟204”):根據(jù)所述當(dāng)前時(shí)刻所述移動(dòng)終端在世界坐標(biāo)系中的位置、上一時(shí)刻所述移動(dòng)終端在世界坐標(biāo)系中的位置以及所述當(dāng)前時(shí)刻和所述上一時(shí)刻的時(shí)間差,獲得所述移動(dòng)終端的移動(dòng)速度;
步驟205”):比較所述移動(dòng)終端的移動(dòng)速度與目標(biāo)速度是否一致,根據(jù)比較結(jié)果控制所述移動(dòng)終端移動(dòng)速度與所述目標(biāo)速度一致。
本方法能夠?qū)崟r(shí)檢測(cè)移動(dòng)終端在執(zhí)行控制命令時(shí)實(shí)際的移動(dòng)速度,并且發(fā)現(xiàn)移動(dòng)終端執(zhí)行不到位時(shí)可以做出相應(yīng)調(diào)整,使得移動(dòng)終端最終嚴(yán)格實(shí)行相應(yīng)控制命令。本技術(shù)可以運(yùn)用在飛行器編隊(duì)飛行中,提高編隊(duì)飛行的效率。
應(yīng)當(dāng)注意,盡管在附圖中以特定順序描述了本發(fā)明方法的操作,但是,這并非要求或者暗示必須按照該特定順序來執(zhí)行這些操作,或是必須執(zhí)行全部所示的操作才能實(shí)現(xiàn)期望的結(jié)果。附加地或備選地,可以省略某些步驟,將多個(gè)步驟合并為一個(gè)步驟執(zhí)行,和/或?qū)⒁粋€(gè)步驟分解為多個(gè)步驟執(zhí)行。
示例性裝置
在介紹了本發(fā)明示例性實(shí)施方式的方法之后,接下來,參考圖6對(duì)本發(fā)明示例性實(shí)施方式的裝置進(jìn)行介紹。
如圖6所示,為本發(fā)明提供的一種移動(dòng)終端定位裝置框圖。包括:
圖像獲取單元601,用于從移動(dòng)終端的圖像采集設(shè)備中獲取圖像信息;
預(yù)設(shè)圖案識(shí)別單元602,用于從所述圖像信息中獲取預(yù)設(shè)圖案;
在本實(shí)施例中,預(yù)設(shè)圖案識(shí)別單元602獲取的預(yù)設(shè)圖案包含至少兩種顏色,且其中兩種顏色之間的色差需大于預(yù)設(shè)值;預(yù)設(shè)圖案識(shí)別單元602通過圖像識(shí)別算法,利用所述色差從所述圖像信息中獲得預(yù)設(shè)圖案。
定位單元603,用于根據(jù)所述預(yù)設(shè)圖案在世界坐標(biāo)系中的坐標(biāo)、所述預(yù)設(shè)圖案在所述圖像信息中的坐標(biāo)以及所述圖像采集設(shè)備的拍攝參數(shù)確定當(dāng)前時(shí)刻所述移動(dòng)終端在所述世界坐標(biāo)系中的位置。
如圖7所示,為本裝置中定位單元的功能框圖。包括:
計(jì)算模塊6031,用于根據(jù)所述預(yù)設(shè)圖案在所述世界坐標(biāo)系中的坐標(biāo)、所述預(yù)設(shè)圖案在所述圖像信息中的坐標(biāo)以及所述圖像采集設(shè)備的內(nèi)參矩陣,獲得所述預(yù)設(shè)圖案的所述世界坐標(biāo)系到攝像機(jī)坐標(biāo)系的旋轉(zhuǎn)平移矩陣,其中,所述內(nèi)參矩陣為所述圖像采集設(shè)備的拍攝參數(shù)組成的矩陣;
求逆模塊6032,用于對(duì)所述預(yù)設(shè)圖案的所述世界坐標(biāo)系到攝像機(jī)坐標(biāo)系的旋轉(zhuǎn)平移矩陣求逆,得到所述預(yù)設(shè)圖案的攝像機(jī)坐標(biāo)系到世界坐標(biāo)系的旋轉(zhuǎn)平移矩陣;所述攝像機(jī)坐標(biāo)系到世界坐標(biāo)系的旋轉(zhuǎn)平移矩陣即為當(dāng)前時(shí)刻所述移動(dòng)終端在世界坐標(biāo)系中的位置。
如圖8所示,為本發(fā)明提供的一種移動(dòng)終端定位裝置應(yīng)用框圖之一。在執(zhí)行第一應(yīng)用場(chǎng)景時(shí),在圖6的基礎(chǔ)上,該移動(dòng)終端定位裝置還包括:
判斷單元604,用于比較當(dāng)前時(shí)刻所述移動(dòng)終端在所述世界坐標(biāo)系中的位置是否與所述移動(dòng)終端接收的目標(biāo)位置一致,所述目標(biāo)位置包括預(yù)設(shè)位置或所述移動(dòng)終端接收的控制位置;
懸??刂茊卧?05,用于在一致的情況下,所述移動(dòng)終端停于所述目標(biāo)位置;在不一致的情況下,所述移動(dòng)終端移至所述目標(biāo)位置。
本裝置能夠精確控制移動(dòng)終端的懸停,并實(shí)時(shí)監(jiān)控移動(dòng)終端在懸停過程中是否出現(xiàn)漂移,根據(jù)漂移情況采用相應(yīng)措施,確保移動(dòng)終端在目標(biāo)位置一直處于懸停狀態(tài)。
如圖9所示,為本發(fā)明提供的一種移動(dòng)終端定位裝置應(yīng)用框圖之二。在執(zhí)行第二應(yīng)用場(chǎng)景時(shí),在圖6的基礎(chǔ)上,該移動(dòng)終端定位裝置還包括:
比較單元604’,用于比較所述當(dāng)前時(shí)刻所述移動(dòng)終端在所述世界坐標(biāo)系中的位置與上一時(shí)刻所述移動(dòng)終端在所述世界坐標(biāo)系中的位置是否有變化;
第一移動(dòng)控制單元605’,用于所述移動(dòng)終端在所述世界坐標(biāo)系中的位置發(fā)生變化的情況下,則所述移動(dòng)終端移至所述上一時(shí)刻所述移動(dòng)終端在所述世界坐標(biāo)系中的位置。
本裝置可以不用通過控制終端,僅移動(dòng)預(yù)設(shè)圖案即可讓移動(dòng)終端做出相應(yīng)移動(dòng)。在實(shí)現(xiàn)定位的基礎(chǔ)上,給出一種對(duì)移動(dòng)終端新的控制方式。
如圖10所示,為本發(fā)明提供的一種移動(dòng)終端定位裝置應(yīng)用框圖之三。在執(zhí)行第三應(yīng)用場(chǎng)景時(shí),在圖6的基礎(chǔ)上,該移動(dòng)終端定位裝置還包括:
實(shí)際移動(dòng)速度獲取單元604”,用于根據(jù)所述當(dāng)前時(shí)刻所述移動(dòng)終端在世界坐標(biāo)系中的位置、上一時(shí)刻所述移動(dòng)終端在世界坐標(biāo)系中的位置以及所述當(dāng)前時(shí)刻和所述上一時(shí)刻的時(shí)間差,獲得所述移動(dòng)終端的移動(dòng)速度;
第二移動(dòng)控制單元605”,用于比較所述移動(dòng)終端的實(shí)際飛行速度與目標(biāo)速度,比較所述移動(dòng)終端的移動(dòng)速度與目標(biāo)速度是否一致,根據(jù)比較結(jié)果控制所述移動(dòng)終端移動(dòng)速度與所述目標(biāo)速度一致。
本裝置能夠?qū)崟r(shí)檢測(cè)移動(dòng)終端執(zhí)行關(guān)于速度或加速度方面的控制命令的情況,并且發(fā)現(xiàn)移動(dòng)終端執(zhí)行不到位,控制移動(dòng)終端做出相應(yīng)調(diào)整,使得移動(dòng)終端最終嚴(yán)格實(shí)行相應(yīng)控制命令。
此外,盡管在上文詳細(xì)描述中提及了移動(dòng)終端定位裝置的若干單元,但是這種劃分僅僅并非強(qiáng)制性的。實(shí)際上,根據(jù)本發(fā)明的實(shí)施方式,上文描述的兩個(gè)或更多單元的特征和功能可以在一個(gè)單元中具體化。同樣,上文描述的一個(gè)單元的特征和功能也可以進(jìn)一步劃分為由多個(gè)單元來具體化。
示例性設(shè)備
基于上述示例性裝置和方法,本實(shí)施例還提出一種無人機(jī),如圖11所示。該無人機(jī)用于根據(jù)各種請(qǐng)求指令去執(zhí)行定位應(yīng)用程序,包括:
存儲(chǔ)器a,用于存儲(chǔ)請(qǐng)求指令;
處理器b,其與所述存儲(chǔ)器耦合,該處理器被配置為執(zhí)行存儲(chǔ)在所述存儲(chǔ)器中的請(qǐng)求指令,其中,所述處理器被配置的應(yīng)用程序用于:
從圖像采集設(shè)備中實(shí)時(shí)獲取圖像信息;
從所述圖像信息中獲取預(yù)設(shè)圖案;
根據(jù)所述預(yù)設(shè)圖案在世界坐標(biāo)系中的坐標(biāo)、所述預(yù)設(shè)圖案在所述圖像信息中的坐標(biāo)以及所述圖像采集設(shè)備的拍攝參數(shù)確定當(dāng)前時(shí)刻所述無人機(jī)在所述世界坐標(biāo)系中的位置。
處理器b還被配置了實(shí)現(xiàn)圖3、圖4、圖5所示的工作流程的應(yīng)用程序。
本發(fā)明實(shí)施例還提供一種計(jì)算機(jī)可讀程序,其中當(dāng)在電子設(shè)備中執(zhí)行所述程序時(shí),所述程序使得計(jì)算機(jī)在移動(dòng)終端中執(zhí)行如圖2、圖3、圖4以及圖5所述的移動(dòng)終端定位方法。
本發(fā)明實(shí)施例還提供一種存儲(chǔ)有計(jì)算機(jī)可讀程序的存儲(chǔ)介質(zhì),其中所述計(jì)算機(jī)可讀程序使得計(jì)算機(jī)在移動(dòng)終端中執(zhí)行如圖2、圖3、圖4以及圖5所述的移動(dòng)終端定位方法。
實(shí)施例
為了能夠更加直觀的描述本發(fā)明的特點(diǎn)和工作原理,下文將結(jié)合一個(gè)實(shí)際運(yùn)用場(chǎng)景來描述。
在本實(shí)施例中,移動(dòng)終端選為無人機(jī)。在實(shí)際運(yùn)用中,圖像采集設(shè)備設(shè)置在無人機(jī)上,圖像采集設(shè)備設(shè)置在世界坐標(biāo)系中的位置就是無人機(jī)在世界坐標(biāo)系中的位置。
場(chǎng)景描述:在地面上設(shè)置一幅預(yù)設(shè)圖案或多幅預(yù)設(shè)圖案,該預(yù)設(shè)圖案為非中心對(duì)稱圖像。預(yù)設(shè)圖案上包含至少兩種顏色,且其中兩種顏色的色差需大于預(yù)設(shè)值。目的在于能夠從圖像采集設(shè)置中很方便的識(shí)別出預(yù)設(shè)圖案來。
在本實(shí)施例中,預(yù)設(shè)圖案選為Marker圖案。采用Marker圖案是因?yàn)镸arker圖案的檢測(cè)更為方便和穩(wěn)定。
對(duì)于本技術(shù)方案來說,涉及到的世界坐標(biāo)系基于預(yù)設(shè)圖案(對(duì)于本實(shí)施例來說就是Marker圖案)建立的。如圖12所示。使用多幅Marker圖案按一定規(guī)則排列,按水平和垂直各相隔40cm放置一幅Marker圖案,基于某幅Marker圖案建立一個(gè)世界坐標(biāo)系,由圖12可知,世界坐標(biāo)系的X軸和Y軸在水平面內(nèi),世界坐標(biāo)系的Z軸正方向垂直地面向下。
在實(shí)際應(yīng)用中,Marker圖案的形狀為正方形、長(zhǎng)方形,也可以是其他形狀。具體地,Marker圖案的尺寸無要求,與工作距離和鏡頭視場(chǎng)角有關(guān),但無人機(jī)要知道Maker圖案的尺寸,以便于獲取Marker圖案的坐標(biāo)信息。對(duì)于本實(shí)施來說,如果知道每幅Marker圖案的實(shí)際物理尺寸和相鄰Marker圖案之間的距離,那么我們就可以表示出每幅Marker圖案的4個(gè)頂點(diǎn)在世界坐標(biāo)系下的坐標(biāo)。在圖12中,有10幅Marker圖案,那么可以得到40個(gè)頂點(diǎn)坐標(biāo)。該坐標(biāo)是Marker圖案在世界坐標(biāo)系中的坐標(biāo)。如果圖12中只有一幅Marker圖案,那么同樣可以建立世界坐標(biāo)系,得到4個(gè)頂點(diǎn)在世界坐標(biāo)系下的坐標(biāo)。
在另一個(gè)優(yōu)選實(shí)施例中,預(yù)設(shè)圖案由基礎(chǔ)符號(hào)和分組編碼符號(hào)組成。每個(gè)基礎(chǔ)符號(hào)由7*7的點(diǎn)陣表示,如圖17所示。每個(gè)基礎(chǔ)符號(hào)都必須區(qū)別于其他基礎(chǔ)符號(hào),同時(shí)基礎(chǔ)符號(hào)具有方向性。在基礎(chǔ)符號(hào)的周圍有一圈黑白方格(相當(dāng)于點(diǎn)陣)組成的分組編碼符號(hào),如圖18所示。
分組編碼符號(hào)并不限于黑白方格的形式,還可以是其他的圖案、字符、圖片等等,在實(shí)際的應(yīng)用中,僅僅使用基礎(chǔ)字符作為預(yù)設(shè)圖案的編碼是有限的,在一組基礎(chǔ)符號(hào)上設(shè)計(jì)同一個(gè)分組編碼符號(hào),方便擴(kuò)展。
如圖19所示,為本實(shí)施例定位符號(hào)示意圖。在圖19中,由5個(gè)預(yù)設(shè)圖案組成的一組定位符號(hào),一組五個(gè)不同基礎(chǔ)符號(hào)共用一個(gè)分組編碼符號(hào),需要注意其中兩個(gè)字母B是兩個(gè)不同的基礎(chǔ)符號(hào)。
在本發(fā)明的實(shí)施例中,利用基礎(chǔ)符號(hào)周圍的分組編碼符號(hào),對(duì)圖19所示的定位符號(hào)進(jìn)行擴(kuò)展,如圖20所示。擴(kuò)展圖案組合結(jié)果就是利用基礎(chǔ)符號(hào)DOB1B2Y進(jìn)行擴(kuò)展得到的,具體為10個(gè)分組編碼字符對(duì)基礎(chǔ)字符DOB1B2Y進(jìn)行了擴(kuò)展。
另外,每個(gè)基礎(chǔ)符號(hào)在一組定位符號(hào)里有一個(gè)坐標(biāo),以左上角的點(diǎn)為準(zhǔn),單位為基礎(chǔ)符號(hào)邊長(zhǎng)。由此可以定義出基礎(chǔ)符號(hào)以及它們的相互關(guān)系,例如,目標(biāo)區(qū)域布設(shè)多幅預(yù)設(shè)圖案。一旦預(yù)設(shè)圖案布設(shè)完畢,每個(gè)預(yù)設(shè)圖案的世界坐標(biāo)也確定。每一幅預(yù)設(shè)圖案對(duì)應(yīng)一個(gè)坐標(biāo),以預(yù)設(shè)圖案上基礎(chǔ)符號(hào)的點(diǎn)陣中第一行、第一列所對(duì)應(yīng)的點(diǎn)的坐標(biāo)表示。每個(gè)預(yù)設(shè)圖案使用二進(jìn)制文件存儲(chǔ),存儲(chǔ)形式為(ID,x,y,size)。其中,ID表示每個(gè)預(yù)設(shè)圖案的分組編碼符號(hào)信息。(x,y)表示每幅預(yù)設(shè)圖案中基礎(chǔ)符號(hào)的左上角的點(diǎn)的坐標(biāo)。Size表示基礎(chǔ)符號(hào)的尺寸大小。
在實(shí)際應(yīng)用中,如圖21所示,為本實(shí)施例定位圖案示意圖。在布設(shè)Marker圖案時(shí),基礎(chǔ)符號(hào)之間的間距與基礎(chǔ)符號(hào)的尺寸大小相同,世界坐標(biāo)系建立完畢。Marker圖案的邊長(zhǎng)為10cm。在圖21中,左上角的Marker圖案為ID編碼為2的圖案“D”。在世界坐標(biāo)系的x軸方向上,圖案“D”的左上角的點(diǎn)到原點(diǎn)的距離為10倍基礎(chǔ)符號(hào)的尺寸;在世界坐標(biāo)系的y軸方向上,圖案“D”的左上角的點(diǎn)到原點(diǎn)的距離為4倍基礎(chǔ)符號(hào)的尺寸。所以,圖案“D”的左上角的點(diǎn)的坐標(biāo)為(-10,-4)。存儲(chǔ)時(shí),對(duì)圖案“D”的存儲(chǔ)信息為(2,-10,-4,10)。由于每個(gè)基礎(chǔ)符號(hào)的尺寸大小為10cm。則圖案“D”的左上角的點(diǎn)的世界坐標(biāo)為(-100,-40,0)。
如圖13所示,在本實(shí)施例中,Marker圖案上有ID信息。目的在于實(shí)際應(yīng)用中,地面上不止設(shè)置一幅Marker圖案,有可能多幅Marker圖案。每一幅Marker圖案上有對(duì)應(yīng)的ID信息,方便可以根據(jù)ID信息獲取每一幅Marker圖案相應(yīng)的坐標(biāo)信息,并更方便記載和存儲(chǔ)預(yù)設(shè)圖案的所有坐標(biāo)信息,實(shí)現(xiàn)多個(gè)預(yù)設(shè)圖案的精確識(shí)別,并為后期的算法精確實(shí)現(xiàn)打下基礎(chǔ)。
利用圖像處理方法從圖像采集設(shè)備采集的圖像信息中識(shí)別出Marker圖案和對(duì)應(yīng)的ID信息,并同時(shí)獲得Marker圖案的四個(gè)頂點(diǎn)在圖像信息中的坐標(biāo),根據(jù)ID信息,Marker圖案在圖像信息中的坐標(biāo)與Marker圖案在世界坐標(biāo)系中的坐標(biāo)一一對(duì)應(yīng)。
現(xiàn)在我們已經(jīng)有了Marker圖像40個(gè)在世界坐標(biāo)系中的坐標(biāo)(Xi,Yi,Zi)以及40個(gè)在圖像信息中的坐標(biāo)(ui,vi)。設(shè)K為圖像采集裝置的內(nèi)參矩陣,內(nèi)參矩陣為圖像采集設(shè)備的拍攝參數(shù)組成的矩陣。另,定義World2CamRT為世界坐標(biāo)系到攝像機(jī)坐標(biāo)系的旋轉(zhuǎn)平移矩陣,定義Cam2WorldRT為攝像機(jī)坐標(biāo)系到世界坐標(biāo)系的旋轉(zhuǎn)平移矩陣,兩個(gè)旋轉(zhuǎn)平移矩陣滿足下述關(guān)系:
對(duì)上述式1求解PnP問題,即可計(jì)算出World2CamRT,而Cam2WorldRT可表示為:
Cam2WorldRT=World2CamRT' (2)
式中,Cam2WorldRT即可表示圖像采集裝置在世界坐標(biāo)系中的位置。圖像采集設(shè)備在世界坐標(biāo)系中的位置即為無人機(jī)在世界坐標(biāo)系下的位置。
如圖14所示,為本實(shí)施例的定位流程圖。由圖14可知,根據(jù)圖像識(shí)別算法從相機(jī)獲取的圖像中識(shí)別出Marker圖案。根據(jù)Marker圖案的形狀、尺寸以及位置關(guān)系,獲得每一幅Marker圖案的4個(gè)頂點(diǎn)在世界坐標(biāo)系中的坐標(biāo)信息以及對(duì)應(yīng)地在圖像信息中的坐標(biāo)信息。利用上式(1)和上式(2)獲得無人機(jī)在世界坐標(biāo)系中的位置,根據(jù)無人機(jī)在世界坐標(biāo)系中的位置控制無人機(jī)的速度或加速度向偏移的反方向進(jìn)行調(diào)整。
實(shí)施例1:當(dāng)無人機(jī)執(zhí)行懸停命令時(shí),無人機(jī)實(shí)時(shí)根據(jù)上式(1)和上式(2)獲得無人機(jī)在世界坐標(biāo)系中的位置,比較無人機(jī)在世界坐標(biāo)系中的實(shí)時(shí)位置與預(yù)設(shè)懸停位置來判斷無人機(jī)是否出現(xiàn)偏移等情況的發(fā)生,一旦出現(xiàn)偏移,可以根據(jù)當(dāng)前無人機(jī)在世界坐標(biāo)系中的位置來控制無人機(jī)的速度或加速度向偏移的反方向調(diào)整,將無人機(jī)移至預(yù)設(shè)懸停位置。從而實(shí)現(xiàn)無人機(jī)一直在預(yù)設(shè)懸停位置上懸停。
實(shí)施例2:控制Marker圖案處于運(yùn)動(dòng)狀態(tài),世界坐標(biāo)系的原點(diǎn)在Marker圖案上,Marker圖案運(yùn)動(dòng),世界坐標(biāo)系的原點(diǎn)隨之運(yùn)動(dòng),那么世界坐標(biāo)系也隨之運(yùn)動(dòng)。不管Marker圖案運(yùn)動(dòng)與否,Marker圖案在所構(gòu)建的世界坐標(biāo)系中的頂點(diǎn)坐標(biāo)不變。如果無人機(jī)沒有做出相應(yīng)的運(yùn)動(dòng)改變,無人機(jī)在世界坐標(biāo)系中的位置也發(fā)生變化,同時(shí)Marker圖案在圖像信息中的位置也發(fā)生變化。無人機(jī)根據(jù)上式(1)和上式(2)獲得無人機(jī)在世界坐標(biāo)系中的位置。
為了達(dá)到通過Marker圖案控制無人機(jī)的運(yùn)行狀態(tài),例如:需要讓無人機(jī)向右飛行時(shí),通過向右移動(dòng)Marker圖案控制無人機(jī)向右飛行。無人機(jī)必須追隨Marker圖案運(yùn)動(dòng),最終使得無人機(jī)在世界坐標(biāo)系中的位置不在變化。比較當(dāng)前時(shí)刻無人機(jī)在世界坐標(biāo)系中的位置與上一時(shí)刻無人機(jī)在世界坐標(biāo)系中的位置,根據(jù)比較結(jié)果調(diào)整無人機(jī)的速度,使得無人機(jī)的速度與Marker圖案的運(yùn)動(dòng)速度相等,這樣無人機(jī)在世界坐標(biāo)系中的位置不再發(fā)生變化。
實(shí)施例3:不管Marker圖案處于靜止?fàn)顟B(tài)還是處于運(yùn)動(dòng)狀態(tài),Marker圖案在世界坐標(biāo)系中的位置不變。給無人機(jī)一個(gè)控制命令,期望無人機(jī)達(dá)到預(yù)設(shè)目標(biāo)速度。根據(jù)控制命令,無人機(jī)做出響應(yīng),改變無人機(jī)當(dāng)前的速度或加速度。這樣Marker圖案在圖像信息中的位置也發(fā)生變化。在實(shí)際應(yīng)用中,無人機(jī)有很大可能性沒有達(dá)到預(yù)設(shè)目標(biāo)速度。這種情況下,無人機(jī)實(shí)時(shí)根據(jù)上式(1)和上式(2)獲得無人機(jī)在世界坐標(biāo)系中的位置,根據(jù)當(dāng)前時(shí)刻無人機(jī)在世界坐標(biāo)系中的位置與上一時(shí)刻無人機(jī)在世界坐標(biāo)系中的位置以及當(dāng)前時(shí)刻與上一時(shí)刻的時(shí)間差,獲得無人機(jī)的實(shí)際飛行速度;比較無人機(jī)的實(shí)際飛行速度與預(yù)設(shè)目標(biāo)速度,對(duì)無人機(jī)的速度進(jìn)行調(diào)整,使得無人機(jī)當(dāng)前的實(shí)際飛行速度與控制命令中的預(yù)期目標(biāo)速度一致。
本發(fā)明實(shí)施例還提供一種基于上述移動(dòng)終端的定位方法進(jìn)行移動(dòng)終端控制的方法,如圖15中所示為所述方法流程圖,該方法主要包括如下步驟:
步驟1501、接收移動(dòng)終端的位置數(shù)據(jù)。
所述位置數(shù)據(jù)的獲取方式同上面實(shí)施例中所述,主要包括如下過程:從移動(dòng)終端的圖像采集設(shè)備中獲取圖像信息,從所述圖像信息中獲取預(yù)設(shè)圖案,根據(jù)所述預(yù)設(shè)圖案在世界坐標(biāo)系中的坐標(biāo)、所述預(yù)設(shè)圖案在所述圖像信息中的坐標(biāo)以及所述圖像采集設(shè)備的拍攝參數(shù)確定當(dāng)前時(shí)刻所述移動(dòng)終端在所述世界坐標(biāo)系中的位置。具體細(xì)節(jié)詳見上面實(shí)施例中所述,此處不再贅述。
步驟1502、獲取所述移動(dòng)終端的預(yù)設(shè)飛行規(guī)劃數(shù)據(jù)。
所述預(yù)設(shè)飛行規(guī)劃數(shù)據(jù)為腳本文件數(shù)據(jù),該預(yù)設(shè)飛行規(guī)劃數(shù)據(jù)可預(yù)先保存于移動(dòng)終端本地。
所述預(yù)設(shè)飛行規(guī)劃數(shù)據(jù)包括:按順序執(zhí)行的多幀預(yù)設(shè)飛行規(guī)劃數(shù)據(jù),每幀預(yù)設(shè)飛行規(guī)劃數(shù)據(jù)包括移動(dòng)終端的預(yù)設(shè)位置數(shù)據(jù)。所述獲取所述移動(dòng)終端的預(yù)設(shè)飛行規(guī)劃數(shù)據(jù)包括:依次獲取每幀預(yù)設(shè)飛行規(guī)劃數(shù)據(jù)。
移動(dòng)終端可以以預(yù)定獲取頻率獲取所述預(yù)設(shè)飛行規(guī)劃數(shù)據(jù),即每隔預(yù)設(shè)間隔時(shí)間獲取一幀數(shù)據(jù)。例如,該預(yù)定獲取頻率是20fps,則移動(dòng)終端每秒獲取20幀預(yù)設(shè)飛行規(guī)劃數(shù)據(jù),每相鄰兩幀預(yù)設(shè)飛行規(guī)劃數(shù)據(jù)的獲取間隔時(shí)間為50ms。
該預(yù)定獲取速率可以通過定時(shí)器實(shí)現(xiàn),設(shè)定定時(shí)器的時(shí)間間隔為預(yù)定獲取速率對(duì)應(yīng)的預(yù)設(shè)間隔時(shí)間,以實(shí)現(xiàn)每隔預(yù)設(shè)間隔時(shí)間讀取一幀預(yù)設(shè)飛行規(guī)劃數(shù)據(jù)。
本實(shí)施例對(duì)移動(dòng)終端獲取預(yù)設(shè)飛行規(guī)劃數(shù)據(jù)的頻率不做限制。
步驟1503、根據(jù)所述預(yù)設(shè)飛行規(guī)劃數(shù)據(jù)以及所述位置數(shù)據(jù)生成控制所述移動(dòng)終端飛行的飛行控制命令。
所述根據(jù)所述預(yù)設(shè)飛行規(guī)劃數(shù)據(jù)以及所述位置數(shù)據(jù)生成控制所述移動(dòng)終端飛行的飛行控制命令包括:
對(duì)獲取的當(dāng)前幀預(yù)設(shè)飛行規(guī)劃數(shù)據(jù)計(jì)算所述預(yù)設(shè)位置數(shù)據(jù)與接收的位置數(shù)據(jù)之間的差值;之后根據(jù)所述差值生成當(dāng)前的控制所述移動(dòng)終端飛行的控制命令。根據(jù)該差值生成控制移動(dòng)終端飛行的控制命令,可以是對(duì)差值進(jìn)行PID運(yùn)算,將差值乘以比例因子K,對(duì)差值的積分項(xiàng)乘以I,對(duì)差值的微分項(xiàng)乘以D,再將該三項(xiàng)求和,獲得對(duì)飛行器110的總控制量。該總控制量中,差值乘以比例因子K作為飛行位置控制量,積分項(xiàng)乘以I作為飛行速度控制量,微分項(xiàng)乘以D作為飛行加速度控制量。當(dāng)然,在本實(shí)施例中,K、I、D的具體數(shù)值由用戶根據(jù)實(shí)際需要設(shè)定,在本實(shí)施例中并不作為限制。
本發(fā)明實(shí)施例還提供一種移動(dòng)終端控制裝置,如圖16中所示為所述裝置框圖,該裝置主要包括如下單元:
接收單元1601,用于接收移動(dòng)終端的位置數(shù)據(jù),所述位置數(shù)據(jù)通過如下方式獲?。簭囊苿?dòng)終端的圖像采集設(shè)備中獲取圖像信息,從所述圖像信息中獲取預(yù)設(shè)圖案,根據(jù)所述預(yù)設(shè)圖案在世界坐標(biāo)系中的坐標(biāo)、所述預(yù)設(shè)圖案在所述圖像信息中的坐標(biāo)以及所述圖像采集設(shè)備的拍攝參數(shù)確定當(dāng)前時(shí)刻所述移動(dòng)終端在所述世界坐標(biāo)系中的位置;
獲取單元1602,用于獲取所述移動(dòng)終端的預(yù)設(shè)飛行規(guī)劃數(shù)據(jù);
飛行控制單元1603,用于根據(jù)所述預(yù)設(shè)飛行規(guī)劃數(shù)據(jù)以及所述位置數(shù)據(jù)生成控制所述移動(dòng)終端飛行的飛行控制命令。
本發(fā)明實(shí)施例還提供一種無人機(jī),包括上面實(shí)施例中所述的移動(dòng)終端控制裝置。
以上具體實(shí)施方式,對(duì)本發(fā)明的目的、技術(shù)方案和有益效果進(jìn)行了進(jìn)一步詳細(xì)說明,所應(yīng)理解的是,以上僅為本發(fā)明的具體實(shí)施方式而已,并不用于限定本發(fā)明的保護(hù)范圍,凡在本發(fā)明的精神和原則之內(nèi),所做的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。