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系统硬件熟悉的朋友赐教,如何解决传感器同步的问题?

转载于:https://www.cnblogs.com/hitcm/p/5616364.html

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值