【安卓手机采集数据(cam+imu)在vins-mono下测试】

这篇具有很好参考价值的文章主要介绍了【安卓手机采集数据(cam+imu)在vins-mono下测试】。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

上一个vins-mono环境配置测试完成后,初步建立好实验环境,接下来开始进行数据采集(cam+imu)、打包、标定、运行。

记录一下后续要更新的内容吧:
*ros打包、另外两种标定方式、手机在线测试、另一种app的测试情况IMU数据的调参 *

更新一下:2023-05-11,之前有些理解不到位的地方做了修改,多余的步骤删减。

更新:2023-10-22,对imu数据调整进行了解释;对于在ubuntu18.04下运行新版(36个package)的kalibr运行前要加rosrun做了修改

一、采集数据

cam+imu传感器组合可以看作视觉惯导slam的一种组合方法,基于安卓平台可以在人人都有的安卓手机上进行实验。
本次实验采用的app:说明

之前用的是第一个版本,部分机型确实会出现闪退的情况,作者也开源了2.0版本,主要更新了对焦后一直跳动的bug,有需要的可以去下载安装,两个app不能同时存在于你的手机上。
https://github.com/OSUPCVLab/mobile-ar-sensor-logger/releases

对于版本这个问题,因为某些机型确实会闪退,还是根据需要来选择版本吧!

该App能调用摄像头的同时调用手机中的IMU,离线采集,方便导入,适配华为手机效果较好。

我自己测试了很多手机,从五六年前发布的华为nova3(Kirin 970)、到18年的华为旗舰Mate20(Kirin 980)、nova6(Kirin 990)最后还试了遥遥领先的Mate40 Pro(kirin 9000)和发热严重(doge)…的Mate50Pro,可以说从低端到入门,再到高端旗舰都试了一遍,效果可以说非常好了。(我甚至觉得nova效果比旗舰都好hh,异常的稳定)。

其他品牌例如安卓之光小米11Ultra、手感极好的小米12S、红米K30S Ultra、红米K50 Ultra、vivo X80(发哥9000)、oppo find x3、荣耀V8(还有一些不记得了),只能说差点意思。当然,这个环节影响最大的是IMU标定那一步,当时我在最后说直接利用公制参数来联合标定其实也是不准确的(如果你的手机标定实在太差,记得有一次某个品牌标定十次,十次都天差地别…,也是可以直接上公制参数的)。

哦对了,之前说到了手机越贵越新效果也就越好其实也是有点问题的,手机并不是越新越好,太高的版本系统不兼容老App的问题也存在。

安装完成后,开始记录record,结束stop。分辨率建议640×480。
该数据记录保存在本地的Android文件夹下,类似小米华为系列的手机需要打开开发者模式并进入USB调试才可以找到。为了方便,我们将文件直接将文件发送到电脑也好,找到一个不需要权限的文件夹放入也好,反正怎么简单怎么来~

发现本地文件:
【安卓手机采集数据(cam+imu)在vins-mono下测试】
是以一个采集时间来命名的文件,进入发现里面有许多数据,其中movie.mp4是视频流信息,gyro_accel.csv是imu的含有时间戳、加速度计和陀螺仪的数据,frame_timestamp.mp4是视频帧时间戳数据。其它目前用不到,涉及地磁、GPS等信息,也说明该app可以多数据源融合

新更新的2.0版本砍掉了不需要的地磁和GNSS数据,整体非常精简!(作者也很热心,有问题基本都是很快回复的~~谢谢大佬)

【安卓手机采集数据(cam+imu)在vins-mono下测试】

最近做实验需要用的地磁信息,作者在issue中有回复,需要apk的话可以去找,

二、打包

打包目前有两种方法,一种是直接在ROS下打包,另一种是通过kalibr_bagcreater.py脚本来进行打包。

更新:手机离线采集有专门的脚本,用ros命令打包一般是相机,下面是一些ROS打包的过程
【INDEMIND相机运行SLAM】

我们采用kalibr提供的脚本打包方式,打包脚本程序kalibr_bagcreater
拷贝到Ubuntu下,试运行发现缺少一个叫utility_functions.py的第三方库,添加以后发现可以运行了。
库的地址: utility_functions.py
本地创建一个文件,起名dataset2,放入视频和imu的时间戳以及MP4
【安卓手机采集数据(cam+imu)在vins-mono下测试】
编译后会生成一个pyc文件,是生成的中间文件,不需要在意。
记录一下输入参数的过程:
通过阅读kalibr_bagcreater.py代码,输入-h或–help后会显示帮助文档,按照提示输入参数。

【安卓手机采集数据(cam+imu)在vins-mono下测试】

按照这样填入参数,运行!当然你也可以指定包的名字。

【安卓手机采集数据(cam+imu)在vins-mono下测试】

ubuntu16.04下,运行Python脚本的方式是直接:

./kalibr_bagcreater_imu.py --video movie.mp4 --imu gyro_accel.csv --video_time_file frame_timestamps.txt --output imu.bag

ubuntu18.04下,前面要加上Python 运行甲脚本:

python ./kalibr_bagcreater_imu.py --video movie.mp4 --imu gyro_accel.csv --video_time_file frame_timestamps.txt --output imu.bag

出现打包的画面,说明正在录制。

如果不填写保存位置的参数,得到的.bag文件也是自动保存到这个文件夹下,我们发现出现了一个output.bag的文件。

这样就打包完成了,接下来任务就是如何配置launch文件,设置yaml参数,让bag包在vins-mono下运行。
【安卓手机采集数据(cam+imu)在vins-mono下测试】

三、简单测试

第一次打包完成后,可以简单的在vins下跑一跑,看看有没有问题。在运行之前,要修改launch启动文件和yaml配置文件。
简单起见,就在本地文件夹vins-mono下添加修改即可。
1.修改yaml文件。
进入catkin_ws工作空间,找到存放源代码的文件夹s文章来源地址https://www.toymoban.com/news/detail-420934.html

到了这里,关于【安卓手机采集数据(cam+imu)在vins-mono下测试】的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • OpenCV迭代去畸变undistortPoints 与vins的迭代不同 第二章vins前端 第三章imu预积分 第四章vio初始化

    OpenCV去畸变undistortPoints原理解析 不动点迭代法—单变量非线性方程近似根matlab求解 淦VINS-MONO源码 03–openCV与VINS中去畸变方法的不同 这里用的方法和openCV不同,假设现在求A点的去畸变坐标,那么我们将A的坐标直接代入畸变模型中,求得再次畸变的坐标,并求得这个坐标和

    2024年02月09日
    浏览(61)
  • Ubuntu20.04——一篇文章让你从零配置VINS_Mono环境以及运行(2023年最新)

    注:文末包含该文章涉及的所有安装包的网盘链接 零、换源(也可以先不换,后面觉得下载慢再换也行) 1、备份原来的源 2、打开源保存文件 3、换源(换其中一个就行,也可以去搜别的源) 4、更新源 一、安装git(克隆源代码)、gedit(编辑文本)、cmake、gcc、g++、build-e

    2024年02月04日
    浏览(46)
  • jetson orin+livox mid-70+imu+云台相机联合标定和数据采集

    将之前无人机上的x86多源数据采集和联合标定算法重建在新板子jetson orin上,解决之前多传感器采集数据时间戳没对齐的问题。 安装ros环境,推荐小鱼:http://fishros.com/#/fish_home,大佬的包避免了自己安装的很多坑; 安装livoxsdk: https://github.com/Livox-SDK/Livox-SDK; 安装云台相机s

    2024年02月11日
    浏览(43)
  • 联合标定Android手机的IMU和Camera数据

    通过局域网实现安卓手机和ROS的通讯,进一步通过Kalibr工具实现手机IMU和相机的联合标定。 基于ROS下的信息发布和订阅,手机和PC在一个局域网下进行信息(image和IMU)传输。操作步骤: 在安卓手机中安装github上的2个开源Android_Camera-IMU和android_ros_sensors中的任意一个,基于r

    2024年02月09日
    浏览(46)
  • 【雕爷学编程】MicroPython手册之 ESP32-CAM 物联网图像数据采集应用

    MicroPython是为了在嵌入式系统中运行Python 3编程语言而设计的轻量级版本解释器。与常规Python相比,MicroPython解释器体积小(仅100KB左右),通过编译成二进制Executable文件运行,执行效率较高。它使用了轻量级的垃圾回收机制并移除了大部分Python标准库,以适应资源限制的微控制

    2024年02月20日
    浏览(47)
  • 自动化测试、爬虫、秒杀抢购、数据获取新方案,利用docker镜像运行安卓云手机,同时模拟运行多个手机进行数据抓取,可实现火车票、演唱会门票、茅台、直播、iPhone手机自动下单等各种多任务

    自动化测试、爬虫、秒杀抢购、数据获取新方案,利用docker镜像运行安卓云手机,同时模拟运行多个手机进行数据抓取,可实现火车票、演唱会门票、茅台、直播、iPhone手机自动下单等各种多任务。 这里选择的是Redroid,ReDroid(Re mote an Droid)是一个 GPU 加速的 AIC(Android In

    2024年02月03日
    浏览(72)
  • 接口测试辅助,Fiddler抓取安卓手机https请求(详细)

    Fiddler 是一款免费、灵活、操作简单、功能强大的 HTTP 代理工具,是目前最常用的抓包工具之一。 具备的功能:抓取所有的 HTTP/HTTPS 包、过滤会话、分析请求详细内容、伪造客户端请求、篡改服务器响应、重定向、网络限速、断点调试等。 Fiddler 工作原理 Fiddler 抓包实现原理

    2024年02月09日
    浏览(44)
  • 手机技巧:安卓微信8.0.45测试版功能来了

    目录 一、更新介绍 二、本次功能更新介绍 2.1 小程序界面优化 2.2 小程序个性化推荐支持关闭 三、其他实用的微信使用长按小技巧 3.1、长按对话框 3.2、长按搜索 3.3、长按相册 3.4、长按视频 3.5、长按表情包(能开启2个技巧) 3.6、长按音频文件 3.7、长按好友头像 四、软件下

    2024年02月04日
    浏览(63)
  • 安卓App与ESP32Cam的视频传输

    实现结果 app可以控制Esp32Cam的摄像头开关和闪光灯的开关 Esp32Cam代码   安卓app代码    

    2023年04月08日
    浏览(39)
  • 有关VINS_Fusion的evo测试

    配置完VINS_Fusion之后,我们会想要检测真值路径和实际路径之间的差异来判断该路径探索算法的好坏,这时候可以使用到evo测试工具,这一款工具可以测试KITTI、TUM、EUROC、ROS等类型的数据包,相关代码已经在github上开源~ evo传送门🔗https://github.com/MichaelGrupp/evo 配置VINS_Fusio

    2024年02月03日
    浏览(39)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包