日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

踩坑rosbag --clock

發布時間:2024/1/17 55 豆豆
生活随笔 收集整理的這篇文章主要介紹了 踩坑rosbag --clock 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

將rosbag的數據feed給lego-loam,輸出地圖。另外寫了一個濾波節點,訂閱地圖,進行濾波操作,再發布出來。

由于輸入給lego-loam的數據來自于rosbag,所以需要rosbag提供時間信息。

rosbag play --clock recorded1.bag

由于rosbag的數據發布頻率比較快,導致了一個結果。rosbag播放完畢,時鐘停止,濾波節點中緩存了幾個數據還沒有處理完畢。失去了時鐘信息,濾波節點停止運行,但是沒有輸出報錯信息!!!

?

個人心得:濾波節點有兩個獨立的線程,一個是callback函數線程,一個是main函數線程,進而導致print出來的信息排布混亂。沒有花時間整理print出來的信息,也就沒能及時發現main函數線程因為缺失了時間信息而停止運行。因此,但凡遇到莫名其妙的bug,即使沒有報錯信息,首要任務是結合print出來的信息整理代碼的邏輯,快速縮小范圍再逐步排查原因。

?

解決方案:

1. 最佳

-k, --keep-alive

rosbag play -k --clock recorded1.bag

bag文件中的數據播放完畢以后,繼續提供時間信息。

?

2. 次佳

-r?FACTOR,?--rate=FACTOR

rosbag play -r 0.1 --clock recorded1.bag

將發布頻率降低為原來的10%,留給濾波節點足夠的時間進行處理。

?

轉載于:https://www.cnblogs.com/gdut-gordon/p/10643426.html

總結

以上是生活随笔為你收集整理的踩坑rosbag --clock的全部內容,希望文章能夠幫你解決所遇到的問題。

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