日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Far planner之 障碍物的图搜索

發布時間:2023/12/20 编程问答 47 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Far planner之 障碍物的图搜索 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

????????我們知道,最短路徑搜索算法比如A*、Djstra等經常是用在grid地圖,也就是柵格地圖,當我們把路徑搜索算法運用到由node組成的障礙物graph的時候,有很多問題是要進行思考的,當我在完成這個障礙物graph的最短路徑搜索的時候,我也想明白了一些far planner里的東西,所以干脆就來說一說好了。

? ? ? ? 雖然寫的很爛,但是開源了,大家想玩的也可以玩玩。

Leeable/Graph-base-far_planner (github.com)https://github.com/Leeable/Graph-base-far_planner

????????

2022-04-22 10-28-28_Trim

????????

? ? ? ? 改進以后,現在可以不貼著contour_graph的邊走了

?

????????如上圖所示,這個是一個由Node10出發,到達Node452的一個路徑規劃。我們知道,對于Far planner而言,它的障礙物contour_graph并不是完全沿著實際障礙物的,而是會有一點膨脹區域,所以用它生成的contour_graph來導航是完全沒有問題的(之后我會在改進一下way_point,讓它更合理化,而不是直接用障礙物的node)。

????????算法主體如下:

????????1、給定起點start坐標(x1,y1)和終點坐標(x2,y2)

? ? ? ? 2、在contour_graph上找到離起點坐標最近的contour_node,并當作near_start,同理終點。

? ? ? ? 3、把起點坐標當作cur_node 以半徑R范圍進行搜索,生成一個有效的node_list

? ? ? ? 4、在這些有效的node_list里進行next_node的啟發式搜索

? ? ? ? 5、當終點出現在node_list時,由終點開始返回它的父節點,得到path

? ? ? ? 是不是聽起來還蠻簡單的,這里主要涉及到幾個問題:

? ? ? ? 1:如何判斷它在R范圍內的node是有效的

? ? ? ? 2:如何進行搜索,它的啟發值要怎么設計

? ? ? ? ?對于起點node10而言,以半徑R進行搜索,就會得到類似于下面的示意圖:

? ? ? ? 其中我們可以看到,有效的node只有[9,11,12,21,17],而無效的node有[16,695],這些無效的node怎么來的呢,比如node16,它和node10的連線會被[9,695]連成的障礙物墻壁打斷,如果放任不管,那就會穿墻。

? ? ? ? ?再比如node695,它雖然不會穿墻,但是它本身就是往障礙物里鉆的,我們也不能選它

? ? ? ? ?有了以上兩個結論,我們就要來設計去排除掉我們的干擾node,在far_planner里也有一樣的設計。對于第一個問題而言,far_planner里有一個do_intersect函數來判斷交叉,我們也效仿它寫了一個增強的。它的主要用途就是判斷從cur移動到next的這個線段<cur,next>是否和別的障礙物組成的線段<A,B>相交。? ? ? ??

? ? ? ? ?第二個問題,涉及到角度問題,far_planner給的是一個固定的角度,讓不同的頂點類型有不同的閾值,我這里改了一下,用角平分線來做。

? ? ? ? 解決第二個問題需要用到它的surf_dirs 和 free_direct_type 也就是頂點的方向向量和它的頂點幾何類型(比如凹、凸、PILLAR、UNKnown)。對于node10而言,它是一個convex_Node 也就是凸點,我們用它的方向向量來做角平分線。

????????

? ? ? ? ?這樣我們就會得到Surf與Topo的夾角α,對于凸點,任意給to_node,只要它與Topo_dir的夾角大于α,即說明它是有效的(就不會往內部走了)ps.感謝俺的女朋友,讓俺豁然開朗

?

? ? ? ? ?換算為cos(因為cos在(-180,0)單調,在(0,180)也單調,就是我的cos(β)要小于cos(α),這也是far_planner在處理graph上的方法,對于純graph而言,更多情況下的判斷是更貼近于數學幾何的。

? ? ? ? ?這里結束之后,就是主程序對路徑的查找了,用的是基于a*進行魔改一下的路徑搜索:

? ? ? ? ?寫這個是用來打標簽的,因為我可以random一個起始點和終點,讓它給出路徑,這個路徑就是我的標簽tag ~ 還沒有完全寫完 random的部分需要判斷random_point在不在contour障礙物內部,所以我還得繼續完善,但是孩子想去玩了。。。先鴿了算了~

總結

以上是生活随笔為你收集整理的Far planner之 障碍物的图搜索的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 动漫精品一区二区三区 | 中文字幕免费一区二区 | 男生把女生困困的视频 | 91娇羞白丝网站 | 天堂综合在线 | 久草网视频 | 精品理论片 | 婷婷天堂网 | 欧美性色视频 | 亚洲在线中文字幕 | 国产二级一片内射视频播放 | 国产成人高清在线 | 天天爱天天草 | 天天曰天天操 | 中国少妇色 | 日韩免费在线看 | 国产精品精品软件视频 | 亚洲欧美一区二区三区情侣bbw | 男人天堂一区 | 熟女熟妇伦久久影院毛片一区二区 | 在线色综合 | 亚洲男人天堂影院 | 欧美三级在线看 | 少妇人妻精品一区二区三区 | 成人免费视频软件网站 | 进去里视频在线观看 | 久久精品国产视频 | 日韩激情床戏 | 国产免费观看av | 91视频国产免费 | 少妇毛片一区二区三区粉嫩av | 免费观看成人毛片 | 亚洲www色 | 伊伊成人 | 久久天天 | 强行挺进白丝老师里呻吟 | 国产a国产片 | 国产视频123 | 国产黄色片视频 | 亚洲国产一区二区在线 | 人人爽爽人人 | 亚洲网站在线看 | 五月开心激情网 | 国产成人一区 | 国产精品1 | 国产精品探花视频 | 超碰激情在线 | www.555国产精品免费 | 中文字幕高清在线播放 | 玖玖热在线视频 | 日韩av有码| 亚洲国产欧美一区二区三区深喉 | 日韩av毛片 | 日少妇的逼| 国产伦精品一区二区. | 欧美在线网 | 日韩av在线直播 | 草逼视频免费看 | 久久艹这里只有精品 | 侵犯女教师一区二区三区 | 日韩一级片免费观看 | 国产原创91 | 日韩一道本 | 可以直接在线观看的av | 免费成人高清视频 | 午夜三级在线 | 翔田千里88av中文字幕 | 欧美精品在线免费观看 | 日本免费不卡视频 | 香蕉久久久久久久av网站 | 成人欧美视频 | 欧美一级淫片aaaaaa | 成年人在线观看视频 | 9色在线视频 | 在线中文字幕日韩 | 久久在线观看 | 亚洲第一伊人 | 日韩精品一区二区三区不卡 | 曰韩精品| 亚洲理论电影在线观看 | 青青草国产在线观看 | 亚洲av中文无码乱人伦在线观看 | 久久天堂av综合合色蜜桃网 | 色桃网| 91调教打屁股xxxx网站 | 欧美性生活一区二区 | 国产一二三在线视频 | 国内精品久久99人妻无码 | 黄色特级毛片 | 亚洲午夜精选 | 亚洲美女影院 | 2019中文字幕在线观看 | 日本69av| 无码黑人精品一区二区 | 亚洲欧美天堂网 | 亚洲成色| av在线免费网址 | 欧洲一区二区在线观看 | 骚视频在线观看 |