1. 程式人生 > >基於ROS獲取Android影象和慣導資料

基於ROS獲取Android影象和慣導資料

0  將手機與ROS連線

首先,通過區域網將手機與ROS相連線。我使用的是hitcm部落格的程式,具體可以參考他的部落格。到這一步已經可以在電腦端做進一步的計算了,但是如果還想記錄下來資料以便未來再次回放使用,則需要進一步處理。

1 記錄bag

ROS與手機相連後,使用rosbag命令開始記錄資料:

rosbag record android/imu camera/image_raw # rosbag record <topic-names> or rosbag record -a 表示記錄全部topic

更多請參考ROS wiki 。最後,按ctrl+C結束記錄。

2 解析bag

從bag恢復資料網上有許多方法。比如使用roslaunch How to export image and video data from a bag file,還可以使用ROS自帶的image_view工具。進入一個空的資料夾,並使用image_view將topic中的資料記錄下來:

# in a new terminal
rosrun image_view image_saver _filename_format:=%04d.png image:=camera/image_raw
# in a new terminal
rosbag play <.bag filename>

更多引數設定等用法請參考

ROS wiki

然後就可以看到對應的資料被儲存在資料夾下了。但是上述操作很多引數都不方便獲得,因此不推薦。偶然發現Matlab自帶的Robotics Toolbox還是有點東西的,竟然提供瞭解析Rosbag的函式,詳細的使用方法可以參考官方文件。我將自己的程式碼託管到Github上了,可以改變程式碼讀取其他型別的感測器資料,還是挺方便的。