本發(fā)明涉及海上無人船全局路徑規(guī)劃領域,具體為一種基于海圖數(shù)據(jù)的無人船全局路徑規(guī)劃導航方法。
背景技術:
1、隨著海上交通密度的增加和無人船技術的快速發(fā)展,無人船在海洋環(huán)境中的自主航行能力變得尤為重要。路徑規(guī)劃作為無人船實現(xiàn)自主航行的關鍵技術之一,其準確性和效率直接影響無人船的航行安全性和作業(yè)效率。傳統(tǒng)的無人船路徑規(guī)劃方法通常面臨海圖數(shù)據(jù)利用不足、路徑規(guī)劃精度低、耗時長等問題,未能充分利用海圖數(shù)據(jù)的特性;
2、(1)如國家專利申請?zhí)?02210712060.0的一種基于改進a星算法的無人船路徑規(guī)劃方法;包括以下步驟:步驟s1:利用語義分割結果所得到的環(huán)境信息建立柵格地圖,每個柵格被標記為可行區(qū)域或障礙區(qū)域,并給定路徑規(guī)劃的起始點b和目標點;步驟s2:引入方位角代價優(yōu)化代價函數(shù)f(n),降低總搜索路徑點,提高搜索效率;步驟s3:對改進后的a*算法尋路結果進行剪枝與b樣條曲線優(yōu)化,降低路徑總長度的同時使得行駛路徑更加平緩;步驟s4:添加碰撞檢測功能,為無人船與障礙物之間預留足夠的安全距離。本發(fā)明引入方位角代價對傳統(tǒng)a*算法的代價函數(shù)進行優(yōu)化,對改進后的a*算法尋路結果進行剪枝與b樣條曲線優(yōu)化,降低路徑總長度的同時使得行駛路徑更加平緩。
3、(2)如國家專利申請?zhí)?02311870105.8的基于融合astar和dwa算法的無人船路徑規(guī)劃方法,方法包括:步驟s1,建立無人船航行的柵格地圖,在柵格地圖中設置無人船的出發(fā)點及終點;步驟s2,通過astar算法,規(guī)劃出一條從出發(fā)點到終點的全局路徑,并通過優(yōu)化策略減少全局路徑中的節(jié)點數(shù)量;步驟s3,采用dwa算法,以優(yōu)化后的全局路徑為基礎,在相鄰節(jié)點之間進行動態(tài)局部規(guī)劃,最終為無人船規(guī)劃出一條最優(yōu)的動態(tài)避障路徑。本發(fā)明能夠對全局路徑進行整體優(yōu)化及局部優(yōu)化,最終規(guī)劃出一條最優(yōu)的動態(tài)避障路徑。
4、上述專利(1)及專利(2)存在的問題是:
5、1、沒有公布如何獲取環(huán)境信息,以及如何建立柵格地圖的:也就是說其未考慮真實的海圖信息;
6、2、沒有考慮算法坐標系來源:未接入真實海洋經(jīng)緯度坐標系。
技術實現(xiàn)思路
1、本發(fā)明要解決的技術問題是針對現(xiàn)有技術的不足,提供了一種可獲取當前待行駛水域海圖數(shù)據(jù),充分利用海圖中各物標類目信息,提取礙航物數(shù)據(jù),構建海上安全網(wǎng)格地圖,提高路徑規(guī)劃的準確性和效率的一種基于海圖數(shù)據(jù)的無人船全局路徑規(guī)劃導航方法。
2、本發(fā)明要解決的技術問題是通過以下技術方案來實現(xiàn)的,一種基于海圖數(shù)據(jù)的無人船全局路徑規(guī)劃導航方法,包括以下步驟;
3、步驟s1:接收無人船本地或遠程操控軟件下發(fā)的航行路線起始點s和目標點g的經(jīng)緯度信息;
4、步驟s2:根據(jù)起始點s和目標點g的經(jīng)緯度信息,計算以兩點連線中點為矩形中心點c、連線長度為邊長并進行適當膨脹的正方形區(qū)域r,中心點c的坐標由公式clon=0.5*(slon+glon)和clat=0.5*(slat+glat)計算得出,其中slon、slat為起始點s的經(jīng)緯度坐標,glon、glat為目標點g的經(jīng)緯度坐標,clon、clat表示中心點c的經(jīng)緯度坐標,正方形區(qū)域r的邊長rl通過公式rl=n*l計算得出,l為兩點間距離,n為膨脹系數(shù),取值范圍為1.5至2.0;
5、步驟s3:訪問海圖數(shù)據(jù)接口,獲取正方形區(qū)域r內的海圖礙航物數(shù)據(jù),篩選影響航行的礙航物并進行安全等級分類t,對線狀和面狀數(shù)據(jù)進行線性插值,確保插值后兩點間隔小于網(wǎng)格分辨率reso,得到礙航物數(shù)據(jù)經(jīng)緯度坐標列表obs,obs包含經(jīng)緯度坐標及安全等級分類t;
6、步驟s4:將起始點s、目標點g及礙航物obs的坐標由經(jīng)緯度轉換為墨卡托xy坐標,并輸入至改進的全局路徑規(guī)劃a星算法中;
7、步驟s5:a星算法根據(jù)網(wǎng)格分辨率reso對起始點、目標點及礙航物進行網(wǎng)格化處理,生成網(wǎng)格坐標sij、gij及obsij,同時考慮無人船安全距離safedis進行礙航物網(wǎng)格邊界擴展,并保留最高安全等級t;
8、步驟s6:采用改進的a星算法進行全局路徑規(guī)劃,通過新的代價函數(shù)f(n)=g(n)+(e*r+1)*h(n)進行節(jié)點擴展與碰撞檢測,其中e為根據(jù)當前節(jié)點n周圍障礙物網(wǎng)格等級t確定的代價擴展因子;r為常數(shù)0.0-1.0;其中g(n)為從起始節(jié)點到當前節(jié)點n的實際代價值,h(n)為從當前節(jié)點n到目標節(jié)點的估計代價值,e為當前節(jié)點n到目標節(jié)點的代價擴展因子,其值為:
9、e=t,當前節(jié)點n周圍有障礙物網(wǎng)格時,障礙物網(wǎng)格的最大等級為t;
10、e=0,當前節(jié)點n周圍沒有障礙物網(wǎng)格;
11、步驟s7:對規(guī)劃后的路徑網(wǎng)格點坐標列表pij進行簡化處理,通過雙重循環(huán)機制檢測并調整路徑點,以避免與礙航物網(wǎng)格碰撞,得到簡化的網(wǎng)格路徑點psij;
12、步驟s8:將簡化的網(wǎng)格路徑點psij轉換為實際的經(jīng)緯度坐標,得到最終的全局航行路徑pathlonlatij。
13、優(yōu)選地,步驟s3中,線狀/面狀數(shù)據(jù)插值的具體實施方式為;
14、計算待插值兩點a、b的經(jīng)緯度差異值diff_lon和diff_lat,根據(jù)網(wǎng)格分辨率reso計算插值步長diff_step,并據(jù)此計算插值數(shù)目interpolation_number,進而計算得到中間插值點的經(jīng)緯度坐標。
15、優(yōu)選地,改進的a星算法中的代價擴展因子e根據(jù)當前節(jié)點n周圍是否存在障礙物網(wǎng)格及其安全等級t動態(tài)調整,以優(yōu)化路徑規(guī)劃結果。
16、優(yōu)選地,安全等級分類t為1-4等級,等級越高越危險,其中1級包括錨泊區(qū)和水深區(qū);2級包括陸地區(qū)和岸線結構物;3級包括障礙物和海上作業(yè)區(qū);4級包括暗礁/適淹礁和沉船。
17、優(yōu)選地,步驟s3中,海圖數(shù)據(jù)接口的訪問方式為websocket接口。
18、優(yōu)選地,步驟s6中,進行a星全局路徑規(guī)劃,在擴展節(jié)點進行碰撞檢測時只需與障礙物網(wǎng)格列表obsij進行檢查,無需遍歷整個網(wǎng)格,提高檢測效率,最終得到規(guī)劃后的路徑網(wǎng)格點坐標列表pij。
19、優(yōu)選地,步驟s7中的簡化處理采用雙重循環(huán)機制,通過檢測當前點與遍歷點連線途經(jīng)的網(wǎng)格是否與礙航物網(wǎng)格碰撞,來調整路徑點位置,以確保路徑的安全性。
20、優(yōu)選地,步驟s7中,傳入規(guī)劃后的路徑網(wǎng)格點坐標列表pij以及礙航物網(wǎng)格坐標列表obsij,采用雙重循環(huán)機制,依次遍歷當前點到剩下的所有點,檢測當前點與遍歷的下一個點的連線所形成的途徑網(wǎng)格是否與礙航物網(wǎng)格有碰撞,有的話則將當前點挪至該點前一個點并記錄,沒有則繼續(xù)檢測下一個點,直至遍歷完成;最終得到簡化的網(wǎng)格路徑點psij,其包含路徑起始點和目標點。
21、優(yōu)選地,步驟s8中,將最終得到的簡化的網(wǎng)格路徑點psij,先按照網(wǎng)格分辨率轉換為實際的墨卡托xy坐標,再轉換為經(jīng)緯度形式,得到最終規(guī)劃好的全局航行路徑pathlonlatij。
22、優(yōu)選地,一種無人船全局路徑規(guī)劃系統(tǒng),包括:
23、數(shù)據(jù)接收模塊,用于接收起始點s和目標點g的經(jīng)緯度信息;
24、區(qū)域生成模塊,用于根據(jù)經(jīng)緯度信息生成正方形區(qū)域r;
25、數(shù)據(jù)獲取與處理模塊,用于獲取區(qū)域r內的海圖礙航物數(shù)據(jù)并進行篩選、分類及插值處理;
26、坐標轉換模塊,用于將經(jīng)緯度坐標轉換為墨卡托xy坐標;
27、路徑規(guī)劃模塊,包含改進的a星算法,用于進行全局路徑規(guī)劃及碰撞檢測;
28、路徑簡化模塊,用于簡化規(guī)劃后的路徑網(wǎng)格點;
29、坐標反轉換模塊,用于將簡化后的網(wǎng)格路徑點轉換為經(jīng)緯度坐標,得到最終的全局航行路徑。
30、與現(xiàn)有技術相比,本發(fā)明的有益技術效果是:
31、(1)充分利用海圖信息:訪問指定區(qū)域海圖接口,獲取該區(qū)域礙航物數(shù)據(jù),進行篩選、分類并插值,還原海上真實環(huán)境信息;
32、(2)提升路徑規(guī)劃效率:采用改進的a*算法進行全局路徑搜索,將所有礙航物全部轉換到障礙物網(wǎng)格列表,并進行去重,減少計算量,提高收斂速度,同時考慮了無人船的安全距離,并改進代價計算函數(shù)f(n),更好的遠離障礙物;
33、(3)簡化航行路徑點數(shù):在獲得全局路徑pij后,進行路徑點的簡化平滑,減少不必要的轉折點,獲得無人船航行的經(jīng)濟效益;
34、(4)形成了一種基于海圖數(shù)據(jù)的無人船全局路徑規(guī)劃系統(tǒng):接入了海上航行系統(tǒng),從開始下發(fā)的起始點和目標點坐標到最終規(guī)劃出來的全局航行路徑pathlonlatij都是經(jīng)緯度坐標形式,符合海上航行數(shù)據(jù)形式及操控流程;
35、(5)該方法以海上無人船舶全局路徑規(guī)劃/導航為研究對象,通過獲取當前待行駛水域海圖數(shù)據(jù),充分利用海圖中各物標類目信息,提取礙航物數(shù)據(jù),構建海上安全網(wǎng)格地圖,提高了路徑規(guī)劃的準確性和效率。