ROS實時采集Android的圖像和IMU數據


前言

      臨近畢業,整理一下之前做的東西。這篇博客來自於博主在2016年3月份投的一篇會議論文(論文主要介紹了一個基於手機攝像頭和IMU的簡單VIO系統,用於AR的Tracking部分,本博文是其中的數據采集部分)。

     本文的目的是將pc和手機連於同一局域網下,然后手機實時把相機和imu的數據打包成ros的消息格式,pc訂閱這些消息,進行進一步的處理。

     稍微好的安卓手機都會配備IMU(注意:很多手機只有單純的三軸加速度計,並沒有三軸的陀螺儀)。博主用的是華為榮耀7,配備了LSM330的6軸IMU

     個人理解錯誤的地方還請不吝賜教,轉載請標明出處,內容如有改動更新,請看原博:http://www.cnblogs.com/hitcm/

     如有任何問題,feel free to contact me at robotsming@gmail.com


安裝使用

     編譯好的安裝包已經放到博主的git上,歡迎下載使用,商業合作請聯系博主。

     安裝里面的apk:

     git clone https://github.com/hitcm/Android_Camera-IMU.git

     為了后面的顯示,還需要執行sudo apt-get install ros-indigo-imu-tools

     1.首先保證pc和安卓手機置於同一局域網下,然后開啟ROS系統的roscore,打開安卓上的應用,在IP Port中修改ip地址為pc的ip地址,port不需要修改。

     2.修改完畢后點擊Connect,則連接成功,進入相機界面。

     3.在pc上執行rostopic list,可以看到相機數據和imu數據的名字如下,前三個topic即是。

           android

      4.執行命令cd到上面下載git的本地目錄下,執行上述git提供的launch文件,roslaunch android_cam-imu.launch

      使用的效果如下:

          GIF


歡迎拍磚

    1.本應用不是很穩定,因為博主安卓編程功底差,不過在華為榮耀7和小米2s中測試基本正常。

    2.實時測試中,相機可以到接近30fps,imu只有50+Hz,應該是受imu硬件的限制。歡迎對Andorid系統硬件熟悉的朋友賜教,如何解決傳感器同步的問題?


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM