本發(fā)明涉及圖像處理及飛行器控制技術(shù)領(lǐng)域,尤其涉及一種多旋翼無(wú)人飛行器控制系統(tǒng)。
背景技術(shù):
目前,常見(jiàn)的無(wú)人飛行器導(dǎo)航是利用GPS(Global Positioning System)和IMU(Inertial Measurement Unit)的組合導(dǎo)航來(lái)實(shí)現(xiàn)的。但由于GPS在低空和室內(nèi)定位缺陷和IMU的累積誤差,導(dǎo)致無(wú)人飛行器在復(fù)雜環(huán)境下與室內(nèi)的自主飛行較難實(shí)現(xiàn)。多數(shù)解決方案是引入雙目視覺(jué)系統(tǒng)與光流傳感器融合的方式,實(shí)現(xiàn)無(wú)人飛行器的精確控制。但是,雙目視覺(jué)系統(tǒng)包含兩個(gè)攝像頭,光流傳感器(一個(gè)攝像頭)有高幀率的需求,成本較高,而且需要三個(gè)攝像頭,增加了飛行器載荷。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明的目的是提供一種多旋翼無(wú)人飛行器控制系統(tǒng),旨在解決無(wú)人飛行器在復(fù)雜環(huán)境與室內(nèi)自主飛行的問(wèn)題,并且利用普通攝像頭芯片實(shí)現(xiàn)高幀率,將光流與雙目測(cè)距集成在一起,成本較低,并且減輕了飛行器載荷。
本發(fā)明的目的是通過(guò)以下技術(shù)方案實(shí)現(xiàn)的:
一種多旋翼無(wú)人飛行器控制系統(tǒng),包括:
圖像采集模塊,用于采集圖像;其包括兩個(gè)光軸平行,且相同規(guī)格參數(shù)的攝像頭,兩個(gè)攝像頭均朝下放置于多旋翼無(wú)人飛行器下方;
計(jì)算模塊,用于根據(jù)兩個(gè)攝像頭采集到的圖像來(lái)計(jì)算水平與垂直方向的光流,從而獲得多旋翼無(wú)人飛行器的運(yùn)動(dòng)信息,以及利用雙目圖像匹配算法并結(jié)合兩個(gè)攝像頭采集到的圖像,計(jì)算多旋翼無(wú)人飛行器距離地面的高度;
控制模塊,用于根據(jù)多旋翼無(wú)人飛行器的運(yùn)動(dòng)信息以及距離地面的高度,進(jìn)行飛行器姿態(tài)與位置的控制。
其中一個(gè)攝像頭中的攝像頭芯片sensor1水平放置,另一個(gè)攝像頭中的攝像頭芯片sensor2垂直放置;
兩個(gè)攝像頭芯片通過(guò)設(shè)置寄存器,配置為中間行部分輸出圖像,達(dá)到高幀率輸出;或者,采用攝像頭芯片的下采樣模式和binning模式來(lái)提高幀率;
幀率的計(jì)算公式如下:
其中,F(xiàn)rame_rate表示幀率,PCLK為時(shí)鐘頻率,VSize為圖像高度,VBlank為場(chǎng)消隱,HSize為圖像寬度,HBlankTime為行消隱時(shí)間。
所述根據(jù)兩個(gè)攝像頭采集到的圖像來(lái)計(jì)算水平與垂直方向的光流,從而獲得多旋翼無(wú)人飛行器的運(yùn)動(dòng)信息包括:
利用攝像頭芯片sensor1采集的連續(xù)兩幀圖像P11和P12的亮度值I11和I12計(jì)算水平方向的光流;利用sensor2的連續(xù)兩幀圖像P21和P22的亮度值I21和I22計(jì)算垂直方向的光流,計(jì)算公式如下:
a、計(jì)算圖像P11的水平方向的梯度圖像的亮度值Ix
b.計(jì)算圖像P21的垂直方向的梯度圖像的亮度值Iy
c.采用最小二乘法求取光流約束方程:
Ix×u+It1=0
Iy×v+It2=0
其中,u,v分別為水平和垂直方向的光流,It1=I12-I11,It2=I22-I21;
再根據(jù)水平與垂直方向的光流得到飛行器的飛行速度與方向。
所述利用雙目圖像匹配算法并結(jié)合兩個(gè)攝像頭采集到的圖像,計(jì)算多旋翼無(wú)人飛行器距離地面的高度包括:
利用攝像機(jī)標(biāo)定參數(shù),對(duì)攝像頭芯片sensor1采集的P11和攝像頭芯片sensor2采集的圖像P21分別進(jìn)行畸變校正;
然后,再分別對(duì)兩幅圖像進(jìn)行濾波,去除噪聲;
再利用雙目圖像匹配算法對(duì)兩幅圖像進(jìn)行立體匹配,得到視差d;
最后,利用三角測(cè)距原理并結(jié)合視差d,求取深度圖像,得到多旋翼無(wú)人飛行器距離地面的高度。
所述利用雙目圖像匹配算法對(duì)兩幅圖像進(jìn)行立體匹配的步驟如下:
計(jì)算N×N窗口內(nèi)中心像素的特征,N×N窗口內(nèi)的N2個(gè)像素亮度值分別為P1,P2,…,PN2,求取它們的均值為m,然后將P1,P2,…,PN2分別與m比較,如果大于等于m,則為1,小于m,則為0;從而在N×N窗口內(nèi)得到一個(gè)N2位的數(shù)據(jù),作為中心像素的特征;以此類(lèi)推,分別得到圖像I11和圖像I21的特征圖像C11和C21,即特征圖像C11和C21中每個(gè)像素都是N2位的數(shù)據(jù);
在預(yù)先設(shè)定的視差范圍內(nèi),計(jì)算圖像C11與C21每個(gè)像素的最小漢明距離,在距離最小時(shí)對(duì)應(yīng)的視差,即為圖像P11和P21的視差d。
所述利用三角測(cè)距原理并結(jié)合視差d,求取深度圖像,得到多旋翼無(wú)人飛行器距離地面的高度包括:
設(shè),D為多旋翼無(wú)人飛行器距離地面的高度,B為兩攝像頭光心之間的距離,F(xiàn)為攝像頭焦距,x1與x2分別為物體在兩攝像機(jī)圖像上的位置,x1-x2即為視差d,則根據(jù)相似三角形原理,得到
其中,M是為了相似三角形計(jì)算引入的中間參數(shù);
經(jīng)過(guò)整理得到:
由上述本發(fā)明提供的技術(shù)方案可以看出,將兩個(gè)普通攝像頭芯片集成在一起代替高幀率攝像機(jī),同時(shí)兼具了雙目測(cè)距的功能,成本較低,并且減輕了飛行器載荷。
附圖說(shuō)明
為了更清楚地說(shuō)明本發(fā)明實(shí)施例的技術(shù)方案,下面將對(duì)實(shí)施例描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見(jiàn)地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域的普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他附圖。
圖1為本發(fā)明實(shí)施例提供的多旋翼無(wú)人飛行器控制系統(tǒng)的示意圖;
圖2為本發(fā)明實(shí)施例提供的圖像采集模塊的兩個(gè)攝像頭布置位置示意圖;
圖3為本發(fā)明實(shí)施例提供的兩個(gè)攝像頭芯片放置角度示意圖;
圖4為本發(fā)明實(shí)施例提供的攝像頭輸出圖像示意圖;
圖5為本發(fā)明實(shí)施例提供的三角測(cè)距原理示意圖。
具體實(shí)施方式
下面結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例。基于本發(fā)明的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒(méi)有做出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明的保護(hù)范圍。
圖1為本發(fā)明實(shí)施例提供的多旋翼無(wú)人飛行器控制系統(tǒng)的示意圖。如圖1所示,其主要包括:
圖像采集模塊S1,用于采集圖像;其包括如圖2所示的兩個(gè)光軸平行,且相同規(guī)格參數(shù)的攝像頭(記為S11~S12),兩個(gè)攝像頭均朝下放置于多旋翼無(wú)人飛行器下方;
計(jì)算模塊S2,用于根據(jù)兩個(gè)攝像頭采集到的圖像來(lái)計(jì)算水平與垂直方向的光流,從而獲得多旋翼無(wú)人飛行器的運(yùn)動(dòng)信息,以及利用雙目圖像匹配算法并結(jié)合兩個(gè)攝像頭采集到的圖像,計(jì)算多旋翼無(wú)人飛行器距離地面的高度;
控制模塊S3,用于根據(jù)多旋翼無(wú)人飛行器的運(yùn)動(dòng)信息以及距離地面的高度,進(jìn)行飛行器姿態(tài)與位置的控制。
本發(fā)明實(shí)施例中,兩個(gè)攝像頭內(nèi)部的攝像頭芯片放置角度如圖3所示,其中一個(gè)攝像頭中的攝像頭芯片sensor1水平放置,另一個(gè)攝像頭中的攝像頭芯片sensor2垂直放置。
兩個(gè)攝像頭芯片通過(guò)設(shè)置寄存器,配置為如圖4所示的中間行部分輸出圖像,達(dá)到高幀率輸出,可以滿足本發(fā)明中光流算法的需求,水平放置的芯片sensor1可配合計(jì)算水平方向的光流(flowX),垂直放置的芯片sensor2可配合計(jì)算垂直方向的光流(flowY),可以完全替代成本較高的高幀率攝像機(jī),從而降低了成本。同時(shí),通過(guò)特有的匹配算法計(jì)算深度圖像,進(jìn)而通過(guò)三角測(cè)距計(jì)算飛行器距離地面的高度。
幀率的計(jì)算公式如下:
其中,F(xiàn)rame_rate表示幀率,PCLK為時(shí)鐘頻率,VSize為圖像高度,VBlank為場(chǎng)消隱,HSize為圖像寬度,HBlankTime為行消隱時(shí)間。
示例性的,如果攝像頭的分辨率為640×480,時(shí)鐘頻率為12MHz,HblankTime為9×10-6s,VBlank為40,帶入上述幀率計(jì)算公式則有:
如上述幀率計(jì)算公式所示,如果減少攝像頭芯片出圖行數(shù),即減小VSize,則可以增大幀率。例如,如圖4所示,采取圖像中間行輸出的方式,將VSize設(shè)置為90,其它參數(shù)不變,則得到幀率為123.41fps,實(shí)現(xiàn)了高幀率,由于芯片(sensor)出圖行數(shù)的減少,降低了功耗,并且由于數(shù)據(jù)量的減少,后續(xù)的計(jì)算相應(yīng)減少,從而降低了系統(tǒng)功耗。
另外,也可以攝像頭芯片的下采樣模式和binning模式來(lái)提高幀率。
本發(fā)明實(shí)施例中,計(jì)算模塊主要用于計(jì)算多旋翼無(wú)人飛行器的運(yùn)動(dòng)信息(即,飛行速度與方向),以及距離地面的高度。主要計(jì)算過(guò)程如下:
1、計(jì)算多旋翼無(wú)人飛行器的運(yùn)動(dòng)信息。
利用攝像頭芯片sensor1采集的連續(xù)兩幀圖像P11和P12的亮度值I11和I12計(jì)算水平方向的光流;利用sensor2的連續(xù)兩幀圖像P21和P22的亮度值I21和I22計(jì)算垂直方向的光流,計(jì)算公式如下:
a、計(jì)算圖像P11的水平方向的梯度圖像的亮度值Ix
b.計(jì)算圖像P21的垂直方向的梯度圖像的亮度值Iy
c.采用最小二乘法求取光流約束方程:
Ix×u+It1=0
Iy×v+It2=0
其中,u,v分別為水平和垂直方向的光流,It1=I12-I11,It2=I22-I21;
然后,根據(jù)水平與垂直方向的光流得到飛行器的飛行速度與方向。
2、計(jì)算多旋翼無(wú)人飛行器距離地面的高度。
1)計(jì)算視差
利用攝像機(jī)標(biāo)定參數(shù)(包括攝像機(jī)內(nèi)參、外參),對(duì)攝像頭芯片sensor1采集的P11和攝像頭芯片sensor2采集的圖像P21分別進(jìn)行畸變校正;
然后,再分別對(duì)兩幅圖像進(jìn)行濾波,去除噪聲;
再利用雙目圖像匹配算法對(duì)兩幅圖像進(jìn)行立體匹配,得到視差d;
最后,利用三角測(cè)距原理并結(jié)合視差d,求取深度圖像,得到多旋翼無(wú)人飛行器距離地面的高度。
所述利用雙目圖像匹配算法對(duì)兩幅圖像進(jìn)行立體匹配的步驟如下:
計(jì)算N×N窗口內(nèi)中心像素的特征,N×N窗口內(nèi)的N2個(gè)像素亮度值分別為Q1,Q2,…,QN2,求取它們的均值為m,然后將Q1,Q2,…,QN2分別與m比較,如果大于等于m,則為1,小于m,則為0;從而在N×N窗口內(nèi)得到一個(gè)N2位的數(shù)據(jù),作為中心像素的特征;以此類(lèi)推,分別得到圖像P11和圖像P21的特征圖像C11和C21(其中C11和C21中每個(gè)像素都是N2位的數(shù)據(jù));示例性的,此處的N可以設(shè)為3、7、9等。
在預(yù)先設(shè)定的視差范圍(1~d)內(nèi),計(jì)算圖像C11與C21每個(gè)像素的最小漢明距離,在距離最小時(shí)對(duì)應(yīng)的視差,即為圖像P11和P21的視差d。
2)計(jì)算高度。
利用三角測(cè)距原理并結(jié)合視差d,求取深度圖像,得到多旋翼無(wú)人飛行器距離地面的高度包括:
如圖5所示,假設(shè),D為多旋翼無(wú)人飛行器距離地面的高度,B為兩攝像頭(S11與S12)光心之間的距離(即基線),F(xiàn)為攝像頭焦距,x1與x2分別為物體在兩攝像機(jī)圖像上的位置,x1-x2即為視差d,則根據(jù)相似三角形原理,得到
其中,M是為了相似三角形計(jì)算引入的中間參數(shù),無(wú)實(shí)際意義;
經(jīng)過(guò)整理得到:
本發(fā)明實(shí)施例中,控制模塊主要根據(jù)計(jì)算模塊計(jì)算到的多旋翼無(wú)人飛行器的飛行速度、方向,以及距離地面的高度,進(jìn)行飛行器姿態(tài)與位置的控制。
以上所述,僅為本發(fā)明較佳的具體實(shí)施方式,但本發(fā)明的保護(hù)范圍并不局限于此,任何熟悉本技術(shù)領(lǐng)域的技術(shù)人員在本發(fā)明披露的技術(shù)范圍內(nèi),可輕易想到的變化或替換,都應(yīng)涵蓋在本發(fā)明的保護(hù)范圍之內(nèi)。因此,本發(fā)明的保護(hù)范圍應(yīng)該以權(quán)利要求書(shū)的保護(hù)范圍為準(zhǔn)。