基于视觉重定位的室内AR导航APP的大创项目思路(3)手机相机内参数据获取和相机标定

文章目录


前情提要:

是第一次做项目的小白,文章内的资料介绍如有错误,请多包含!


相机内参

相机内参是本身的物理数据,包括焦距f和缩放c,一般以矩阵K的形式存放和使用

为什么要获取相机的内参数据:

1.相机的内参数据在建图的时候就需要使用,SLAM中需要根据相机内参数据结合传入的图像数据等进行建图,不然无法根据2D图像建立三维点云地图。

bash 复制代码
如果使用的是SFM技术构建三维点云地图,运动结构恢复,就无相机内参数据

2.在进行视觉重定位的时候,无论是几何方法还是图像检索方法,都需要当前传入输入数据的相机的内参来进一步计算得出当前的位姿信息。

因此,获取当前相机的内参数据是必不可少的。

如果不了解什么是几何方法或是图像检索方法,可以看看这篇文章:基于视觉重定位的室内AR导航APP的大创项目思路(2):改进的项目思路------建图和定位分离

由于项目的预期搭配设备是手机,因此需要解决的问题变为了如何获取手机相机的内参数据。

获取相机内存数据的方法

棋盘格标定

目前主流的获取相机内参数据的方法是:使用棋盘格进行相机标定(张正友棋盘格标定法)。

但是对于这个项目来说,这个方法是无法在项目的全部流程中使用的。

你可以在建图时使用这个标定方法获取建图时的手机的相机内参,但是在定位导航时,你是无法要求用户在使用一个app的时候,还要专门购买一个标定板进行相机标定的。

项目思路2中提到了建图和定位分离的思想,因此我们并非要完全舍弃标定板标定,而是只在建图时使用这种方法,定位导航时另寻他法。

自动相机标定

使用棋盘格标定获取的相机内参数据是较为准确的,要不是别无选择,使用这种准确的数据进行相机重定位是最好的。

项目思路1中,我提到过使用过一个ORB-SLAM3的安卓端移植APP,这个APP在进行建图的时候是无需进行相机标定的。

那么必然存在一种或是多种无需进行标定板标定就能获取相机内参数据的方法,尽管数据可能不如使用标定板进行相机标定那么准确。

在经过一系列的搜寻和确定后,目标的关键词变为了:自动相机标定

而自动相机标定的方法有很多种,后文展开再讲


未完待续

如果你觉得这篇文章写的不错,多多点赞~收藏吧!

相关推荐
wish36639 分钟前
【APM】How to enable Trace to Logs on Grafana?
经验分享·grafana·devops
徐凤年_3 小时前
配置Intel Realsense D405驱动与ROS包
数码相机·ubuntu
THe CHallEnge of THe BrAve10 小时前
工业相机中CCM使能参数-色彩校正矩阵
数码相机·线性代数·矩阵
赵谨言16 小时前
基于单片机的按摩器控制系统设计
经验分享·毕业设计
何玺17 小时前
从“堆料竞赛”到“体验深耕”,X200 Ultra和X200s打响手机价值升维战
数码相机·智能手机
YY_pdd20 小时前
调教自己的电脑(护眼)
经验分享·电脑
TIF星空20 小时前
【在阿里云或其他 CentOS/RHEL 系统上安装和配置 Dante SOCKS5 代理服务】
经验分享·笔记·阿里云·centos·云计算
AscendKing21 小时前
电脑安装adb并且连接华为手机mate60pro后查看设备
adb·智能手机