Android相机及IMU标定
文章目录
- 1. 数据采集
- 1.1 采集IMU数据
- 1.2 采集相机+IMU数据
- 2. IMU标定
- 2.1 数据预处理
- 2.2 数据打包⽣成.bag⽂件
- 2.3 创建.launch文件
- 2.4 数据标定
- 3. 相机+IMU标定
1. 数据采集
1.1 采集IMU数据
采集APK:IMU标定使用开源库https://github.com/sunset768541/mobile-ar-sensor-logger所提供的APK进行数据采集。
采集⽅法:将手机静止于桌面,采集至少2小时数据。
存储路径:数据存储于手机/sdcard/Android/data/edu.osu.pcv.marslogger/files/data/目录下,可使
用adb pull命令将数据拷贝至电脑。
1.2 采集相机+IMU数据
相机+IMU的标定使用开源库https://github.com/DavidGillsjo/VideoIMUCapture-Android所提供的APK进行数据采集。
2. IMU标定
2.1 数据预处理
将1.1节所采集到gyro_accel.csv⽂件重命名为imu0.csv,并将表头重写为timestamp, omega_x, omega_y, omega_z, alpha_x, alpha_y, alpha_z。
2.2 数据打包⽣成.bag⽂件
我们使用1.2节所clone的工程进行imu数据打包。在该工程calibration目录下打开终端,启动docker容
器:
SUDO=1 DATA=<imu-data-path> ./run_dockerhub.sh
imu-data-path为电脑端imu0.csv文件所在目录。
在容器中打包imu数据:
cd /data
kalibr_bagcreater --folder /data --output-bag imu0.bag
查看打包数据信息:
rosbag info imu0.bag
退出容器:
exit
2.3 创建.launch文件
我们在imu-data-path目录下创建android.launch文件,并填入如下内容:
<launch><node pkg="imu_utils" type="imu_an" name="imu_an" output="screen"><param name="imu_topic" type="string" value= "/imu0"/><param name="imu_name" type="string" value= "iQOO_8_Pro"/><param name="data_save_path" type="string" value= "$(find imu_utils)/data/"/><param name="max_time_min" type="int" value= "27"/><param name="max_cluster" type="int" value= "100"/></node>
</launch>
max_time_min:表示.bag数据的最大时长,单位为分钟,程序会在最大时长内截断读取数据,此部分根据.bag数据实际情况填写。
imu_name:表示imu设备名称,此部分可随意填写,最终标定所生成的文件名会带有此标识。
2.4 数据标定
启动容器:
sudo docker run --name imu_utils -v <imu-data-path>:/data -it chelmx/imu_utils:melodic-desktop-full
在容器启动标定程序:
source /imu-calibration/devel/setup.sh
cp /data/android.launch /imu-calibration/src/imu_utils/launch/
roslaunch imu_utils android.launch
程序运行一段时间后,会出现“wait for imu data.”字样,此时需要新建一个终端重新进⼊容器:
sudo docker exec -it imu_utils bash
之后,在第二个终端中推送imu数据:
source /imu-calibration/devel/setup.sh
nohup roscore &
rosbag play -r 200 /data/imu0.bag
第一个终端接收到数据后会继续运行标定程序,等待一段时间后会出现“done”字样,表明标定结束。
标定结果被保存至/imu-calibration/src/imu_utils/data目录,命名为<imu_name>_imu_param.yaml,拷贝出容器即可。
3. 相机+IMU标定
请参考博文:https://www.jianshu.com/p/f715ce9937d9。
Android相机及IMU标定相关推荐
- VIO测试准备——使用imu_utils和kalibr进行相机与IMU标定
0 前言 近期主要学习VIO.相机使用海康的两个支持外触发的单目相机,完成硬件同步外触发后,固联安装在机器人机体两侧,搭建了一个简易的双目相机.IMU使用的是LPMS-USBAL2(老型号,官方已经不 ...
- 相机与IMU标定教程
标定教程 way 相机与IMU联合标定 1.imu_utils 标定IMU的内参 1. imu_utils标定IMU的内参,可以校准IMU的噪声密度和随机游走噪声 2.kalibr包标定相机的内外参数 ...
- 相机、imu 标定 简介
惯性校准 对于 IMU,重点在于它所测量的是加速度,而非距离或速率.IMU 读数的误差会逐渐累积,累积速度极快! 校准和建模的目的在于确保每秒钟的 X 等分时间段内,对于距离的测量(对加速度进行二重积 ...
- 安卓手机 相机和IMU数据获取标定 在VINS-MONO运行自己的数据集(含打包方法) (非常详细一步一步来)
Android手机上图像和IMU数据采集的方法 网上有相关的教程,但都讲的很模糊,而且不全,甚至还有人要收费.自己完整做了一遍发现还是有些麻烦,固记录下来供大家参考,希望能帮到大家. 采用开源库 Vi ...
- 萌新谈相机与IMU的标定(转载)
我发现这里所给的标定板也是这个 https://drive.google.com/file/d/0B0T1sizOvRsUdjFJem9mQXdiMTQ/edit?resourcekey=0-0Cn7 ...
- ZED2跑ORB-SLAM3+双目相机、IMU联合标定+显卡驱动与cuda/cudnn安装
一.引言 同样是项目需求,需要利用视觉惯性导航做一些开发,所以第一步先做些算法的测试–仿真与实物测验,通过仿真的测试结果,最终是决定使用ORB-SLAM3来完成任务,当然了,Vins-fusion作为 ...
- 相机与IMU联合标定
相机与IMU联合标定 1 imu_utils 标定IMU的内参 1.1 安装环境 1.2 录制IMU数据集 2 kalibr 标定工具 2.1 安装 2.2 校准相机的内外参 2.3 校准相机与IMU ...
- VINS在安卓手机上实现、安卓相机标定、IMU标定 亲爸级原理介绍和教学
需求和想法: 在安卓手机上实现SLAM中的定位与轨迹,或者 VINS在Android上的实现. **现有需求:**针对SLAM的算法:VINS-MONO(港科大的一套基于单目相机的SLAM项目),移植 ...
- mynt product model: D1000-IR-120标定相机和IMU外参之二
1. 在之一中使用kalibr标定mynt相机和内置imu的外参数,使用的是720p,30fps的双目图像和200hz的imu数据,标定结果误差比较大,这一次我们改用480p,60hz的双目图像和20 ...
最新文章
- php开发app接口教学,php开发App接口
- 【学术相关】以前写过水论文怎么办?
- Java8————Lambda表达式(一)
- Model 3价格将降至19.9万元?特斯拉要把造谣用户告上法庭
- Ubuntu下安装JRE7
- 日语单词记忆方法(正在试用)
- visual stdio 2010与sqlserver 2008下载和安装
- 图片边缘出现黑点的问题分析和解决(纹理过滤)
- hdu2154跳舞毯(dp)
- 简单的网页制作期末作业——html css javascript小礼品购物商城网站
- 手把手教你快应用接入微信H5网页支付
- win11禁用内置的administrator本地帐户
- 2011考研数学二第(11)题——第一类曲线积分球弧长
- JavaScript EventListener
- oracle自己主动维护
- java 合并到一行_GROUP_CONCAT() 多行数据合并成一行
- GDUFS 2018信息学院程序设计新手赛(正式赛)题解
- record java_Java Record类代码示例
- 汽车操作系统攻防综述
- 牛视系统源码,抖音矩阵系统功能开发定制。I‘m here
热门文章
- 百度这些年,有了狼性,却没了牙齿
- #python# 来找茬
- 顺序、链式结构的个人书籍管理系统(C++)
- 关于右键Git Bash Here不能使用问题
- 6 Drools整合Springboot
- JS事件循环中的宏任务和微任务执行顺序
- teeChart控件的异常:MARKS.CALLOUT.BRUSH.COLOR:Property callout does not exist
- GSM模块(SIM900)详解
- 海康摄像头java的二次开发,集成windows和linux两个版本的报警布防
- 行业首发:响应式优酷快速适配新Mac