0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

幾種較為常見的安全通道的生成方法介紹

lcdz66 ? 來源:空中機器人前沿 ? 作者:曹華姿 ? 2022-11-16 10:04 ? 次閱讀

安全通道是什么呢?安全通道是指在無人機軌跡生成時,為了避免碰撞而設(shè)定的無人機可以飛行的通道。它連通了起點與終點,并且在安全通道內(nèi)生成的任意軌跡都是安全無碰撞的。安全通道是軌跡生成中用于避免碰撞的重要技術(shù),關(guān)于安全通道的生成目前已經(jīng)有了許多的方法。一般來說,安全通道都是用多個連通在一起的多面體進行表示。這樣安全通道的生成問題,可以轉(zhuǎn)化為多個多面體生成。下面針對幾種較為常見的安全通道的生成方法進行介紹。

1. 半定規(guī)劃的迭代區(qū)域膨脹

為了獲取多面體,這個方法首先構(gòu)造一個初始橢球,由一個以選定點為中心的單位球組成。然后,遍歷障礙物,為每個障礙物生成一個超平面,該超平面與障礙物相切并將其與橢球分開。再次,這些超平面定義了一組線性約束,它們的交集是一個多面體。然后,可以在那個多面體中找到一個最大的橢球,使用這個橢球來定義一組新的分離超平面,從而定義一個新的多面體。

選擇生成分離超平面的方法,這樣橢圓體的體積在迭代之間永遠不會減少。可以重復(fù)這個過程,直到橢圓體的增長率低于某個閾值,此時我們返回多面體和內(nèi)接橢圓體。這個方法具有迭代的思想,并且具有收斂判斷的標準,算法的收斂快慢和初始橢球具有很大的關(guān)系。

303cb59a-64f9-11ed-8abf-dac502259ad0.png

圖 1 半定規(guī)劃的迭代區(qū)域膨脹。每一行即為一次迭代操作,直到橢圓體的增長率低于閾值。

2. 基于凸分解的安全通道生成

基于凸分解的安全通道生成方法由四個步驟完成安全通道的生成,分別為:找到橢球、找到多面體、邊界框、收縮。這四個步驟的具體介紹如下:

1)生成橢球

先形成一個球體,球的半徑為兩個路徑點的距離,然后再進行收縮其中的兩個長軸,以保證該橢球為最大橢球,最后再拉伸第三個軸(連接路徑點的軸)以保證這個橢球是最大的。

橢球的計算是基于路徑點進行的,路徑點的疏密程度,將會影響橢球的個數(shù),因此在使用時最好能夠利用計算的橢球融合其包含的路徑點,這樣來減少計算路徑點的個數(shù)。

3093eaa4-64f9-11ed-8abf-dac502259ad0.png

圖 2生成橢球。粗線段為 L,灰色區(qū)域表示障礙物,白色區(qū)域為自由空間。左:從一個球體開始,我們找到離 L 中心最近的點 p*,并調(diào)整短軸的長度,使虛線橢球接觸這個 p*。中:重復(fù)相同的過程,找到一個新的最近點 p* 和新的橢球。右:橢球內(nèi)沒有障礙物,當(dāng)前橢球是最大橢球。需要多次迭代以確保最終的球體排除所有障礙。

2)找到多面體

找到多面體。不斷擴張橢球直到和障礙物相切,保存切線。重復(fù)上面的操作,獲得更多的切線,直到當(dāng)前地圖都和其相交為止。這個過程的主要計算量都在障礙物的判斷中,因此計算很快。

30c76ae6-64f9-11ed-8abf-dac502259ad0.png

圖 3生成多面體。左:找到橢球和超平面的第一個交點(紅線),相應(yīng)的半空間之外的障礙點被移除(陰影)。中:找到下一個交點(虛線橢球表示原始橢球,實線橢球表示新橢球),繼續(xù)從地圖中移除新半空間之外的障礙點。右:繼續(xù)擴張直到當(dāng)前地圖中沒有障礙物,凸空間 (藍色區(qū)域)由半平面的交點定義。

3)邊界框

邊界框的作用是分割地圖,將附近的local障礙物地圖從全局地圖中提取出來,也就是獲得local障礙物地圖。其主要原因是上面的操作不能對整個地圖執(zhí)行,因為那樣的計算量太大了,因此可以在路徑點附近打上邊框,這樣就能降低計算量了。邊框大小的選擇就非常具有經(jīng)驗性質(zhì)了,最好能夠涵蓋所需要的信息。

4)收縮


對安全通道進行收縮,收縮的尺度由無人機的尺寸決定,這樣的處理可以讓無人機變成一個質(zhì)點。收縮是對生成的多面體進行的,這樣的好處是不會造成兩個多面體出現(xiàn)不相交的情況。

3. 平行凸簇膨脹方法

上述的兩種方法都是從點云地圖出發(fā),并且都是基于橢圓完成凸多面體的生成。而平行凸簇膨脹方法,與上面的方法不同,該方法是從柵格地圖出發(fā),利用最小凸集生成算法,完成凸多面體的生成。

其算法的思想是首先獲得一個凸集,再沿著凸集的表面進行擴張,擴張之后再進行凸集檢測,判斷新擴張的集合是否保持為凸。一直擴張到不能再擴張為止,再提取凸集的邊緣點,利用快速凸集生成算法,生成凸多面體。該算法的好處在于可以利用這種擴張的思路,將安全的多面體的體積盡可能的充滿整個空間,因此獲得的安全通道更大。

但其也具有一定的缺點,就是計算量比較大,計算所需要的時間比較長,為了解決這個問題,在該文章中,又提出了采用GPU加速的方法,來加速計算。

30f144ec-64f9-11ed-8abf-dac502259ad0.png

圖 4 平行凸簇膨脹方法。在 (a) 和 (b) 中,所有合格的相鄰單元格都被添加到凸簇中。在 (c) 和 (d) 中,由于進行邊緣單元格凸集檢測時,射線經(jīng)過了不在凸簇的單元格,該單元格被排除在凸簇中。[3]

總結(jié)

安全通道的生成雖然是一個比較小的問題,但是因為它直接影響了最終生成軌跡的質(zhì)量,因此也非常重要。安全通道能夠直接轉(zhuǎn)化為優(yōu)化問題中的凸約束,這種特性應(yīng)該也可以利用在其他的領(lǐng)域內(nèi)。




審核編輯:劉清

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 無人機
    +關(guān)注

    關(guān)注

    226

    文章

    10304

    瀏覽量

    179159

原文標題:淺析幾種無人機安全通道生成方法

文章出處:【微信號:雨飛工作室,微信公眾號:雨飛工作室】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    幾種常見的控制方法及其優(yōu)缺點

    。 溫度控制系統(tǒng)是變參數(shù)、有時滯和隨機干擾的動態(tài)系統(tǒng),為達到滿意的控制效果,具有許多控制方法。故對幾種常見的控制方法及其優(yōu)缺點進行了分析與比較。
    的頭像 發(fā)表于 11-09 09:57 ?168次閱讀
    <b class='flag-5'>幾種</b><b class='flag-5'>常見</b>的控制<b class='flag-5'>方法</b>及其優(yōu)缺點

    如何自動生成verilog代碼

    介紹幾種自動生成verilog代碼的方法
    的頭像 發(fā)表于 11-05 11:45 ?156次閱讀
    如何自動<b class='flag-5'>生成</b>verilog代碼

    altium designer原理圖生成方法

    以下是關(guān)于Altium Designer原理圖生成方法的步驟: 準備工作 在開始繪制原理圖之前,需要進行一些準備工作,包括: 1.1 安裝Altium Designer軟件:首先,確保您的計算機
    的頭像 發(fā)表于 09-02 16:25 ?478次閱讀

    微液滴生成方法及發(fā)展趨勢

    微液滴 的生成方法 早期使用的生成液滴方法主要有高速攪拌法、逐層組裝技術(shù)、膜乳化法和界面聚合法等, 均可生成微納米尺寸的液滴。 高速攪拌法工序少、操作簡單、成本低; 逐層組裝技術(shù)通用性
    的頭像 發(fā)表于 07-26 13:27 ?291次閱讀

    常見的電機速度控制方法

      電機速度控制是電機應(yīng)用領(lǐng)域的核心技術(shù)之一,它直接關(guān)系到電機運行效率、穩(wěn)定性和使用壽命。隨著電機技術(shù)的不斷發(fā)展,電機速度控制方法也日益多樣化。本文將從電機速度控制的基本原理出發(fā),詳細介紹幾種
    的頭像 發(fā)表于 06-19 11:50 ?1378次閱讀

    任意波形發(fā)生器中波形生成方法

    中,任意波形發(fā)生器都發(fā)揮著不可或缺的作用。本文將詳細探討任意波形發(fā)生器中波形生成方法,以期為相關(guān)領(lǐng)域的研究和應(yīng)用提供參考。
    的頭像 發(fā)表于 05-29 17:13 ?700次閱讀

    介紹幾種常見的e-PTFE防水透氣膜型號和規(guī)格

    大家好,我是微爾斯科技的VILI專注于高分子微孔材料的研發(fā)、應(yīng)用與推廣e-PTFE防水透氣膜是一種廣泛應(yīng)用于各種領(lǐng)域的高分子微孔材料,其型號和規(guī)格繁多,各具特色。下面,我們將詳細介紹幾種常見
    的頭像 發(fā)表于 05-07 08:08 ?769次閱讀
    <b class='flag-5'>介紹</b><b class='flag-5'>幾種</b><b class='flag-5'>常見</b>的e-PTFE防水透氣膜型號和規(guī)格

    專用集成電路測試方法有哪些

    專用集成電路(ASIC)測試是確保ASIC芯片功能和可靠性的重要步驟。下面詳細介紹了ASIC測試的幾種方法。 邏輯功能測試(LFT): 邏輯功能測試是最基本的ASIC測試方法之一,用于驗證芯片的邏輯
    的頭像 發(fā)表于 04-19 15:22 ?701次閱讀

    基于RA8D1的LVGL FSP配置以及使用介紹

    本文介紹由e2 studio自動生成的FSP LVGL pack的使用說明,Pack的生成方法可以參考前面的介紹文章。
    的頭像 發(fā)表于 03-13 13:48 ?1748次閱讀
    基于RA8D1的LVGL FSP配置以及使用<b class='flag-5'>介紹</b>

    生成SPWM波形的方法

    參考正弦波的振幅和頻率決定。這些脈沖信號的寬度按照正弦波形的周期進行調(diào)整,以便產(chǎn)生一個與參考正弦波頻率相同的輸出信號。 生成SPWM波形的方法有多種,下面將介紹其中幾種
    的頭像 發(fā)表于 02-06 13:52 ?2470次閱讀

    介紹6種常見的反調(diào)試方法

    開發(fā)相應(yīng)的安全措施來保護系統(tǒng),這時,惡意軟件開發(fā)人員就會使用反調(diào)試技術(shù)阻礙逆向人員的分析,以達到增加自己惡意代碼的存活時間。此外,安全人員也需要了解反調(diào)試技術(shù),當(dāng)遇到反調(diào)試代碼時,可以使用相對應(yīng)的反反調(diào)試。在反調(diào)試技術(shù)上中,我們介紹
    的頭像 發(fā)表于 01-15 09:53 ?3446次閱讀
    <b class='flag-5'>介紹</b>6種<b class='flag-5'>常見</b>的反調(diào)試<b class='flag-5'>方法</b>

    為什么要測試回路電阻?常見的回路電阻測試方法有哪幾種?

    為什么要測試回路電阻?常見的回路電阻測試方法有哪幾種? 測試回路電阻是電氣工程中的一項基本檢測和分析工作,它在確保電路運行安全和有效的同時,還可以幫助分析和診斷電路存在的問題。在此文章
    的頭像 發(fā)表于 12-19 15:04 ?3861次閱讀

    Linux系統(tǒng)中調(diào)用腳本的常見方法

    在linux系統(tǒng)中有多種方法可以在系統(tǒng)啟動后調(diào)用腳本,接下來介紹幾種常見方法
    的頭像 發(fā)表于 12-13 18:16 ?978次閱讀

    計算機快速全息生成技術(shù)研究

    快速全息生成技術(shù)依賴于計算機生成的全息影像 (CGH) 的快速創(chuàng)建。目前,基于光線追蹤的計算機生成全息圖的快速生成方法仍基于非物理光線追蹤方法
    的頭像 發(fā)表于 12-12 11:15 ?479次閱讀
    計算機快速全息<b class='flag-5'>生成</b>技術(shù)研究

    運行Python程序的幾種常見方法

    Python是一種高級編程語言,具有簡單易學(xué),易于閱讀和調(diào)試的特點。當(dāng)你完成了一個Python程序之后,你需要運行它以檢查程序是否按照預(yù)期工作。下面是運行Python程序的幾種常見方法
    的頭像 發(fā)表于 11-28 15:32 ?2328次閱讀