PLICP : point to line
https://github.com/ccny-ros-pkg/scan_tools
下載其中的laser_scan_matcher
放在工作空間下直接catkin_make就能編譯
看源碼最重要的一句
sm_icp(&input_, &output_);
一定要理解input裏面的兩幀激光
output出來的是相對值,通過連續的加和和優化,得到預測的位資
記得安裝CSM的庫,純c寫的,看也看不到,但是裏面還有icp算法
感覺源碼是最小二乘法匹配,實在沒看懂
首先嚐試一下兩幀激光匹配,當時我把 processScan函數重構了一下, 現在想想完全沒必要,他這個也是循環,把imu和odom都關掉後,只憑scan就能兩幀激光匹配,可以使用這個包作爲初始化位姿,代替里程計不準的情況,時間長了會有累計誤差,後期用amcl定位,加其他傳感器.
更深入理解了tf轉換,各種座標系變換終於懂了,自己寫矩陣運算,eigen庫等等.....感謝同事爲我答疑解惑..原來算法真是要自己數學算哈哈哈哈..