单目相机(Mono camera)在MATLAB中的表示与实例

1 概述

本文将介绍单目相机基本概念及其内参矩阵和外参矩阵在MATLAB下的表示方法,并分析车体坐标系到相机坐标系、相机坐标系的像素坐标系的转换关系,再给出在MATLAB中的相关类和函数,最后由简入难给出相关实用案例。

2 单目相机(Mono camera)

2.1 基本概念

通常来说,单目相机是指只有一个镜头且无法直接测量深度信息的相机。相对而言还有双目相机,具备深度测量的RGB-D相机等种类。

2.2 车体坐标系到相机坐标系

在博文《自车坐标系下的物体相对和绝对位置和速度计算》已经阐述了车体坐标系的基本概念,最常用的坐标系是“坐标系–前-左-上(FLU)”,如下图所示:
在这里插入图片描述
但是车体坐标系的坐标原点可选,一般不会限定,《自车坐标系下的物体相对和绝对位置和速度计算》中提到通常来说会选在车辆后轴中心。

相机坐标系通常是指以相机光学焦点为原点,镜头朝前为x轴方向,面向镜头右方为y轴防线,上方为z轴方向。这里,可以把车辆坐标系简单理解为世界坐标系,相机坐标系与车体坐标系的转换参数即为相机的外参(Camera Extrinsics),描述的相机位姿特征,与相机内参相对。相机的外参可以调整,而内参在相机定型后则已经固定了。

相机坐标系与车辆坐标系之间存在三个平移和三个旋转的关系。因此为了进行坐标系转换,需要知道相机在车辆坐标系中的位姿,即坐标和姿态。平移相对好理解,旋转的表示方法有多种,一般可以用欧式变换、旋转轴和欧拉角度或者四元数来表示。由于这块内容属于基础理论,理论成熟且篇幅有限,这里不作展开,总之在已知x、y、z三个方向位置和姿态(旋转角度)的情况下,可以求出两个坐标系下坐标点的转换关系。详细可以参考w维基百科《Rotation matrix》,或者中文版的《旋转矩阵》

2.3 相机坐标系到像素坐标系

相机坐标系到像素坐标系的变换参见博文《相机内参坐标系及其在MATLAB 中的表示》在这里插入图片描述

MATLAB中采用类 cameraIntrinsics描述相机内参矩阵——相机坐标系到像素坐标系之间的关系。
在这里插入图片描述

2.4 相关类和函数

2.4.1 monoCamera类

在MATLAB中表述单目相机的类是monoCamera类,该类的语法如下:

sensor = monoCamera(intrinsics,height);
sensor = monoCamera(intrinsics,height,Name,Value)

提供了两种常用的构造函数。

主要的属性如下:
在这里插入图片描述
Intrinsic即为相机的内参类,Height、SensorLocation描述了在车体坐标系中的三维坐标,Pictch、Yaw、Roll分别为Y、Z、X方向轴上的旋转角度,以上六个参数实际就是描述了相机的外参矩阵。

2.4.2 变换函数

函数 解释
vehicleToImage
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值