zl程序教程

您现在的位置是:首页 >  后端

当前栏目

3D相机如何获取基于立体视觉的3D数据

3D数据 如何 基于 获取 视觉 相机 立体
2023-09-27 14:21:00 时间

1 摘要

本文概述了使用立体相机获取深度感知的主要处理步骤。

2 立体视觉原理

立体视觉的深度感知基于三角测量原理。我们讲两台搭载投影光学系统的相机并排放置,使两台相机的视野在所需物距发生重叠。我们通过这两台相机的拍摄,可以得到两个不同角度下的场景图。如图1所示。物体在圆锥筒前面,圆锥筒散落排列。

在这里插入图片描述
在3D空间内,两幅图像中的每一个可见表面点通过两条射线连接至两台相机的投影中心。需要生成3D场景,我们需要完成两项任务:

1.确定左侧图像中每一个可见表面点在右侧图像中的位置
2.了解相机成像的几何模型,以计算射线交叉点,获得左右相机的关联像素点。我们现在假设两台相机彼此紧密相连,所以在校正期间,就只需要进行一次成像几何模型计算。

3 相机标定

在立体标定的过程中,首先需要计算出两台相机的成像几何模型。

一般通过棋盘格率先对相机进行标定。如图所示。

在这里插入图片描述
标定结束后,即可进行同步图像对。即想办法获取左右两台相机中同一图案不同位置、方位和距离。之后,我们就可以通过每组图像对中图案圆点的像素位置和其在标定板上的已知位置,计算出所有观察图案的3D姿态和立体相机的精确模型。该模型由每台相机的内参数(相机的焦距和畸变)和外参数(左右相机间的三位旋转和平移)构成。 我们可以使用此标定数据对每幅图像中已识别的对应点进行三角测量,并恢复其相对于相机的公制3D坐标。

4 深度计算处理步骤

下文三部分描述了计算图像对中每个像素点的3D位置所需要的处理步骤。对于捕获的每个立体图像,这些步骤必须实时进行执行才能够获取场景的3D点云或3D表面。

4.1 校正

下列3组图像对体现了校正过程。第一组图像对:在畸变原始图像中,极线呈现曲线状。第二组图像对:消除图像畸变,极线呈现直线形状。第三组图像对:校正后,极线与图像轴对齐。可沿图像扫描线求解视差。
在这里插入图片描述
第一组图像对显示了部分手动标记点视差以及其极线。在原始相机图像中,极线由于相机光学系统造成的畸变而呈现曲线状。沿曲线状极线求解视差不仅耗时久,而且复杂。但是我们可以反向应用标定过程中习得的畸变,以此消除图像畸变。得出的无畸变图像便拥有直线状极线。(第二组)

尽管极线呈直线状,但在每幅图像中,不同部分的极线却有着不同方向。该现象因图像平面(即相机传感器)既不完全共面,又不具相同方向而引起。位进一步加快求解视差,我们可以利用标定过程计算的相机成像几何模型,并对图像进行其他透视转换,从而将极线与图像扫面线2对齐。此步骤成为校正。现在,我们只需要简单地在右侧图像相同扫描线上确定最佳匹配位置,即可找到白色圆锥尖顶。仅在校正图像后(第三组),执行所有后续处理步骤。

为了对成像点进行三角测量,我们需要确定左右图像中的对应图像部分。考虑到左侧图像有一小块图像块,我们可以通过简单搜索右侧的整幅图像实现完美匹配。然而这种做法耗时久,无法实时匹配。

那么到底该如何做呢?我们直觉告诉我们,不需要在右侧图像的下半部分进行搜索。事实上,我们在之前就已经给出了答案,就是用极线。两台投影相机的成像几何模型将搜索区域限制在右侧图像的一维直线上,即我们所说的极线。
在这里插入图片描述

4.2 立体匹配

对于左侧图像中的每个像素点,我们现可在右侧图像(捕获相同对象点)相同扫面先上搜索匹配的像素点。单个像素值一般辨识度不足,无法准确找到对应像素点。因此,我们通常尝试利用i像素点周围的小窗格(7*7)与右侧图像同⼀⾏中所有可能对应的创哥进⾏匹配。随着进⼀步配准,我们无需搜索一整行,只需确定左侧图像像素x坐标左侧的少数像素点,相当于眼睛在聚焦较近物体时,需轻微的视线交叉。这不仅加速匹配过程,⽽且能限定可进⾏三⻆测量的像素点的深度范围。如果匹配结果正确且具有唯一性,则我们将左侧图像的像素点和右侧图像对应像素点关联起来,并以像素点在x周上的坐标位置偏移量的形式,将关联信息存储在视差图中。

如下图所示。图像匹配结果视差图利用左右图像之间像素点偏移量显示深度信息。特定视差值(此处以黑色标记)表明像素点无法在右侧图像中识别。若物体存在遮挡或反射区域,则会出现视差;遮挡或反射区域在两台相机中显示的位置不同。

在这里插入图片描述
由于该匹配技术仅使用每个像素点周围的局部信息,因此被称为局部立体匹配。显然,只有当某图像部分与同一扫描线上的其他图像部分差异较大时,我们才能够匹配左右图像的相应区域。因此,局部立体匹配不适用于弱纹理区域或重复纹理区域。另一种技术称为全局立体匹配,同样可以利用邻域信息。该技术不只是通过单独考虑每个像素点(或图像块)来寻找匹配目标,而是试图为左右图像中所有像素点迅速找到像素分配方案。全局分配还考虑到大部分图像表面是光滑的,因此相邻像素点通常具有相似深度。对比局部立体匹配技术,全局立体匹配技术更为复杂,需要更高的处理能力,但其所需的表面纹理较少,且结果更为精准(尤其在物体边界处)。

4.3 重新投影

无论使用哪一种匹配技术,左右图像像素点之间都存在关联,并且该关联信息将存储于视差图中。像素偏移量经过编码,转换为视差图中的视差值,其匹配像素点见下面图像对应位置。
在这里插入图片描述
4.2节的示意图阐明了视差概念。接着,我们可以利用标定过程中获取的成像几何模型,将基于像素的视差值转换为每个像素的实际公制X、Y和Z轴坐标。这一转换过程成为重新投影。左右图像中每个关联的像素点组成的两条射线可简单相交。转换得到的XYZ坐标即为点云。点云通常存储为三通道图像,以防止将某像素点的邻域信息传播给图像像素网格。

在这里插入图片描述