可以實(shí)現(xiàn)本發(fā)明機(jī)載攝像機(jī) (1011)的同步控制,通過(guò)GigE模塊(2022),也可實(shí)現(xiàn)GigE攝像機(jī)的視頻采集,并通過(guò)PCIe 接口(2025)進(jìn)行內(nèi)部數(shù)據(jù)傳輸。本實(shí)施例中,ARM(201)與FPGA(202)通過(guò)AXI接口(2011) 進(jìn)行信息交互,通過(guò)AXI接口(2011),ARM(201)可將視頻流快速的傳輸給FPGA(202)模塊 進(jìn)行處理。
[0064] 需要說(shuō)明的是,在對(duì)圖像數(shù)據(jù)的操作中,單位時(shí)間內(nèi)數(shù)據(jù)量很大,要求數(shù)據(jù)運(yùn)算速 度快,且為了獲得較快的處理速度,需采用并行的方式對(duì)雙目攝像機(jī)獲取的圖像進(jìn)行分析 理解,因此,本實(shí)施例中ARM模塊(101)在采集完視頻數(shù)據(jù)后通過(guò)AXI接口(2011)高速的 傳遞給FPGA模塊(202),并在FPGA模塊中對(duì)獲得到的兩路圖像數(shù)據(jù)進(jìn)行并行處理,并將處 理結(jié)果通過(guò)AXI接口(2025)返回給ARM模塊進(jìn)行圖像數(shù)據(jù)的進(jìn)一步處理。
[0065] 圖3給出了雙目視覺(jué)系統(tǒng)(101)的框架圖。本發(fā)明的ARM模塊(201)通過(guò)USB接 口采集兩路機(jī)載攝像機(jī)(302)的圖像數(shù)據(jù),通過(guò)AXI接口(2011)高速的將視頻流傳輸給 FPGA模塊(202),進(jìn)行兩路視覺(jué)信息的并行處理,并將處理結(jié)果反饋給ARM模塊(201),進(jìn)行 后續(xù)處理,處理結(jié)果通過(guò)CAN總線等傳輸接口發(fā)送給飛行控制系統(tǒng)(103)。需要說(shuō)明的是, 兩路機(jī)載攝像機(jī)(302)的同步控制信號(hào),由FPGA控制同步觸發(fā)單元(301)產(chǎn)生。
[0066] -種基于雙目視覺(jué)的無(wú)人機(jī)自主障礙物檢測(cè)方法,包括以下步驟:
[0067] 步驟1、雙目視覺(jué)系統(tǒng)獲取無(wú)人機(jī)飛行環(huán)境的視覺(jué)信息,并經(jīng)處理得到障礙物信 息;
[0068] 步驟2、其他傳感器單元獲取無(wú)人機(jī)的狀態(tài)信息;
[0069] 步驟3、飛行控制系統(tǒng)接收障礙物信息和無(wú)人機(jī)狀態(tài)信息,建立飛行路徑,生成飛 行控制指令并向無(wú)人機(jī)發(fā)送;
[0070] 步驟4、無(wú)人機(jī)根據(jù)飛行控制系統(tǒng)的飛行控制指令規(guī)避障礙物飛行。
[0071] 在上述步驟中,步驟1雙目視覺(jué)系統(tǒng)獲取無(wú)人機(jī)飛行環(huán)境的視覺(jué)信息,并經(jīng)處理 得到障礙物信息是本發(fā)明的關(guān)鍵。如圖4所示,ARM(201)模塊創(chuàng)建四個(gè)線程分別進(jìn)行圖像 獲?。?01)、圖像矯正(402)、環(huán)境信息三維重建(405)及規(guī)避決策(407);FPGA(202)模塊 對(duì)立體矯正后的圖像進(jìn)行立體匹配生成差視圖。具體包括以下步驟:
[0072] 步驟⑴,視覺(jué)采集處理單元(1012)獲取同步圖像。具體方法為:視覺(jué)采集處理 單元(1012)中的FPGA(202)模塊通過(guò)控制同步觸發(fā)單元(301)產(chǎn)生同步信號(hào),控制機(jī)載 攝像機(jī)(302)同步采集圖像,并通過(guò)USB接口將圖像傳輸給視覺(jué)采集處理單元(1012)的 ARM(201)模塊,同時(shí)利用時(shí)間戳標(biāo)識(shí)圖像,用于后續(xù)處理分析。
[0073] 步驟⑵,視覺(jué)采集處理單元(1012)對(duì)兩路圖像信息進(jìn)行校正。具體方法為:視 覺(jué)采集處理單元(1012)的ARM(201)模塊獲取帶有時(shí)間戳標(biāo)識(shí)的圖像后,根據(jù)攝像機(jī)的 標(biāo)定結(jié)果對(duì)圖像進(jìn)行失真校正及立體匹配矯正,處理結(jié)果通過(guò)AXI接口(2011)傳遞給 FPGA(202)模塊。
[0074] 步驟⑶,視覺(jué)采集處理單元(1012)處理獲取視差圖像。具體方法為:視覺(jué)采集處 理單元(1012)中的FPGA(202)模塊,利用并行處理技術(shù),分別對(duì)矯正后的圖像進(jìn)行半全域 演算分析,并生成視差圖。
[0075] 步驟⑷,利用視差圖進(jìn)行環(huán)境信息的三維重建。具體方法為:結(jié)合圖像特征 (4051)與視差圖像進(jìn)行3D特征點(diǎn)重建,根據(jù)特征算子關(guān)聯(lián)兩路圖像,并利用RANSAC方法去 除野點(diǎn),利用計(jì)算機(jī)視覺(jué)模型解算相對(duì)位姿并進(jìn)行在線優(yōu)化,獲得更接近真值的相對(duì)位姿 結(jié)果,從而獲得障礙物信息。進(jìn)一步地,障礙物信息包括但不限于:所述障礙物與所述無(wú)人 機(jī)之間的相對(duì)位姿、所述障礙物的種類、尺寸、形狀及運(yùn)動(dòng)狀態(tài)等信息。
[0076] 在上述步驟3、飛行控制系統(tǒng)接收障礙物信息和無(wú)人機(jī)狀態(tài)信息,建立飛行路徑, 生成飛行控制指令并向無(wú)人機(jī)發(fā)送。在本步驟中,飛行控制系統(tǒng)根據(jù)障礙物信息和無(wú)人機(jī) 位置信息規(guī)劃無(wú)人機(jī)的飛行路徑,并根據(jù)其他傳感器數(shù)據(jù)和飛行路徑生成飛行控制指令。 更具體的,飛行控制系統(tǒng)首先根據(jù)所述視覺(jué)信息判斷所述無(wú)人機(jī)的原飛行路徑上是否存在 所述障礙物;進(jìn)而根據(jù)所述障礙物信息和所述無(wú)人機(jī)狀態(tài)信息生成新的飛行路徑;和根據(jù) 所述其他傳感器數(shù)據(jù)和新的飛行路徑生成飛行控制指令。
[0077] 本實(shí)施例中,所述的圖像獲取(401)模塊,包含從機(jī)載攝像機(jī)(302)獲取的兩路視 頻信息,同時(shí)利用時(shí)間戳(402)對(duì)視頻信息進(jìn)行標(biāo)記。
[0078] 本實(shí)施例中,所述的圖像矯正(401)模塊,包含對(duì)兩路視頻信息進(jìn)行消除畸變、雙 目校正及圖像裁剪,校正后左右視圖的邊角區(qū)域往往是不規(guī)則的,且對(duì)應(yīng)的視差無(wú)效,這樣 會(huì)對(duì)立體匹配求取視差產(chǎn)生影響,所以需要在校正后對(duì)圖像進(jìn)行裁剪。一旦雙目攝像機(jī)的 結(jié)構(gòu)確定后,該映射表也就固定了,不需要實(shí)時(shí)計(jì)算。因此在線處理雙目圖像時(shí)只需調(diào)用映 射函數(shù)校正圖像,即可進(jìn)行后續(xù)立體匹配,減少后續(xù)處理的計(jì)算量。
[0079] 本實(shí)施例中,所述的立體視差圖產(chǎn)生模塊(404)模塊,包含從圖像矯正模塊(403) 獲取校正后圖像,利用半全局立體匹配法生成視差圖。通過(guò)平等地對(duì)待多個(gè)一維路徑,然 后將各個(gè)一維路徑的結(jié)果合并(505),來(lái)近似二維的情況,在半全局立體匹配算法的全局 能量函數(shù)(504)中,通過(guò)對(duì)深度的不同變化加以不同懲罰保證了平滑性約束,在算法的后 處理部分中,利用了左右一致性校驗(yàn)來(lái)檢測(cè)遮擋點(diǎn)和誤匹配點(diǎn),保證了唯一性約束。算法 對(duì)光照變化的影響不敏感,對(duì)噪聲有較強(qiáng)的魯棒性。具體過(guò)程如下:先利用均值漂移算法 對(duì)圖像進(jìn)行分割處理(503),然后計(jì)算像素間的匹配代價(jià)(502),再結(jié)合圖像分割信息構(gòu)造 新的全局能量函數(shù)(504),之后在多方向上進(jìn)行匹配代價(jià)的聚合(505),最后選取使得全局 能量函數(shù)最小的視差圖為匹配視差結(jié)果。
[0080] 圖5給出了半全局立體匹配算法流程,在產(chǎn)生立體視差圖過(guò)程中,定義某一方向 的代價(jià)函數(shù)為:
[0082] 則半全局立體匹配算法要求要求得的是各個(gè)方向代價(jià)聚合的最小值:即
的最小值,這其中有一個(gè)聚合的過(guò)程。半全局匹配算法能夠獲得與 其他算法相媲美的匹配結(jié)果,優(yōu)勢(shì)在于有很高的效率。
[0083] 本實(shí)施例中,所述的環(huán)境信息三維重建(405)模塊,包含通過(guò)興趣點(diǎn)匹配及對(duì)應(yīng) 興趣點(diǎn)距離解算(4051)、3D特征點(diǎn)重建(4052)、圖像關(guān)聯(lián)(4054)、野點(diǎn)檢測(cè)(4055)、相對(duì)位 姿解算及位姿誤差估計(jì)(4056)及基于最小誤差的運(yùn)動(dòng)決策(4057)。
[0084] 所述的興趣點(diǎn)匹配(4051)過(guò)程為:線程3中利用線程2中獲取的深度圖像來(lái)計(jì)算 用于避障用的三維幾何信息。首先,左圖中的興趣點(diǎn)有Harris角點(diǎn)檢測(cè)器檢測(cè)給出,然后 在建立19X19的興趣描述子之前,利用窗口大小為15X15的排序?yàn)V波器對(duì)角點(diǎn)進(jìn)行濾波, 以去除一些高頻噪聲及失真。本實(shí)施例中不采用傳統(tǒng)的SIFT或SURF特征算子的原因,以 上兩種特征算子對(duì)處理器的計(jì)算能力要求較高。
[0085] 所述的3D特征點(diǎn)重建(4052)過(guò)程為:根據(jù)已獲取的深度圖像,可以完成在攝像機(jī) 坐標(biāo)系下對(duì)角點(diǎn)信息的三維重建。理論上利用連續(xù)圖像中三個(gè)相關(guān)點(diǎn)的信息便可以計(jì)算空 間六個(gè)自由度的運(yùn)動(dòng)。
[0086] 所述的圖像關(guān)聯(lián)(4054)過(guò)程為:圖像的關(guān)聯(lián)原則是當(dāng)前圖像的所有興趣點(diǎn)與之 前圖像中興趣點(diǎn)能夠全部匹配上。在此基礎(chǔ)上通過(guò)檢測(cè)圖像在各個(gè)方向上的關(guān)聯(lián)性作為關(guān) 聯(lián)圖像的一致性檢測(cè)。這樣可以應(yīng)對(duì)圖像空間中特征的劇烈變化,及實(shí)際使用中攝像機(jī)需 要快速移動(dòng)或旋轉(zhuǎn)的情形。
[0087] 所述的野點(diǎn)檢測(cè)(4055)過(guò)程為:野點(diǎn)的檢測(cè)過(guò)程利用靜態(tài)場(chǎng)景中兩個(gè)視點(diǎn)中攝 像機(jī)坐標(biāo)系下兩個(gè)三維坐標(biāo)點(diǎn)之間的距離固定的原則進(jìn)行檢測(cè)。
[0088] 所述的相對(duì)位姿解算及位姿誤差估計(jì)(4056)及優(yōu)化部分的過(guò)程為:當(dāng)野點(diǎn)被去 除后,三維點(diǎn)云之間的相對(duì)關(guān)系可通過(guò)奇異值分解獲得,進(jìn)一步的可通過(guò)最小化橢圓誤差 進(jìn)行優(yōu)化。
[0089] 本實(shí)施例中,所述的規(guī)避決策(407)模塊,包含對(duì)雙目處理結(jié)果進(jìn)行障礙物與無(wú) 人機(jī)之間相對(duì)位姿的坐標(biāo)變換(4071)、并通過(guò)結(jié)合無(wú)人機(jī)的當(dāng)前狀態(tài)(4072)及飛行模型 (4073)生成規(guī)避軌跡(4074)。
[0090] 特別需要說(shuō)明的是,圖4中在線自