原创 ROS-Marker和MarkerArray使用方法

marker顯示允許各種基本形狀的可編程添加到3D顯示,通過發送visualization_msgs/Marker 或者 visualization_msgs/MarkerArray消息。 1. Marker消息 1.1 使

原创 ROS關於動態參數配置——dynamic reconfigure

動態參數配置參考網址 參考上述文獻,可以通過gui對ros中的相關參數進行修改。

原创 c++ list, vector, map, set 區別與用法比較

List封裝了鏈表,Vector封裝了數組, list和vector得最主要的區別在於vector使用連續內存存儲的,他支持[]運算符,而list是以鏈表形式實現的,不支持[]。 Vector對於隨機訪問的速度很快,但是對於插

原创 vector list deque三者的區別與聯繫

vector 將元素置於一個動態數組中加以管理,支持隨機訪問,數組尾部添加或移除元素非常快速。但是在中部或頭部安插元素比較費時;vector底層動態維護了一段連續的空間,隨着元素的加入,當容器中的元素存放滿時,如果再要加入其它數據

原创 使用eigen進行四元數和歐拉角轉換注意事項

在使用eigen進行四元數到歐拉角的轉換過程中,需要注意四元數x,y,z,w的位置關係,轉換過程中容易出錯。需要注意有時候需要變換x和z的位置,因爲有時候座標軸的朝向可能不一致。 如果一定要使用eigen最好使用tf中的getyaw(

原创 圖論相關知識

https://zh.wikipedia.org/wiki/圖論 圖論wiki地址。詳細介紹了圖論的相關知識和經典的算法,包括寬度優先和深度優先搜索算法。還包括很註明的Dij-斯特拉方法。 在C++中的BLG庫中包含了圖論的相關內

原创 Apollo問答 | 關於Lattice Planner規劃算法的若 幹問答

來源:Apollo開發者社區 2018-09-07 本週問答主題: Lattice Planner 上週,我們在Apollo開發者交流羣內做了關於Lattice Planner的分享。這裏,我們將社羣分享裏開發者提出的問題進行了歸納整

原创 四元數與歐拉角的轉換關係

在3D圖形學中,最常用的旋轉表示方法便是四元數和歐拉角,比起矩陣來具有節省存儲空間和方便插值的優點。本文主要歸納了兩種表達方式的轉換,計算公式採用3D笛卡爾座標系: 定義分別爲繞Z軸、Y軸、X軸的旋轉角度,如果用Tait-Bry

原创 Lattice Planner規劃算法

一、Lattice Planner 總體概覽 Lattice算法隸屬於規劃模塊。規劃模塊以預測模塊、routing模塊、高精地圖和定位的結果作爲輸入,通過算法,輸出一條平穩、舒適、安全的軌跡,交給控制模塊去執行。我們可以看到,規劃

原创 關於JetBrains CLion 激活 (CLion License Activation)的解決辦法,帶hosts詳細修改

CLion版本號:JetBrains CLion 2017.2.1 第一行選擇Activite,第二行Activate license with:選擇Activation code。   這個時候裏面的代碼是空的,我們點擊這個註冊

原创 Eigen四元數與歐拉角的相互轉化函數

1、源碼 #include <iostream> #include <Eigen/Eigen> #include <stdlib.h> #include <Eigen/Geometry> #include <Eigen/Core

原创 Eigen四元數和歐拉角相互轉化的有關函數詳細定義

視覺SLAM——第三章 Eigen幾何模塊Geometry使用 四元素 歐式變換矩陣 github鏈接 點擊打開鏈接 * 本程序演示了 Eigen 幾何模塊的使用方法 * 旋轉向量 Eigen::AngleAxisd 角度 軸

原创 teb_local_planner代碼梳理(一)

該部分是teb進行自動調整,根據de_ref參考兩個位姿之間的時間差,dt_hysteresis爲滯後時間,也就是爲時間差加一個誤差限,一般爲dt_ref的10%。 經過調整滯後想要達到的目的是,每個時間差都在dt_ref左右。 vo

原创 CMake之find_package

首先強烈推薦對CMake不熟的同學先看這本書《Cmake實踐》。 CMake說起來是個好東西,可是真正用的時候並不那麼容易,很容易出現各種各樣的錯誤。這不,最近就被find_package這個命令折騰得死去活來。只好花了一天半時間,看

原创 g2o的一般過程

1.自己定義頂點類、邊類或者用已經有的。 1.1定義頂點 例子 class CurveFittingVertex: public g2o::BaseVertex<3, Eigen::Vector3d> { public: EIGEN_