【安卓手机采集数据(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日
    浏览(39)
  • Ubuntu20.04——一篇文章让你从零配置VINS_Mono环境以及运行(2023年最新)

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

    2024年02月04日
    浏览(31)
  • 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日
    浏览(32)
  • 联合标定Android手机的IMU和Camera数据

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

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

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

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

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

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

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

    2024年02月09日
    浏览(32)
  • 手机技巧:安卓微信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日
    浏览(53)
  • 安卓App与ESP32Cam的视频传输

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

    2023年04月08日
    浏览(29)
  • vins-fusion环境配置、安装与测试

    本文主要介绍如何搭建vins-fusion的运行环境,以及解决vins-fusion编译运行时遇到的环境冲突问题,并在此基础上实现例程的运行。 本文是在已经安装好 ROS 的基础上,在 Ubuntu20.04 系统下,完成 vins-fusion 的环境搭建,主要涉及到 opencv3.4.11、ceres-solver2.0.0、eigen3 的安装,解决了

    2024年02月16日
    浏览(34)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包