- 12/13
- 2021
-
QQ扫一扫
-
Vision小助手
(CMVU)
2D视觉和3D视觉
机器和机器人在制造业和工业中变得越来越普及。机器可以执行日常的、肮脏的和危险的任务, 从而使人们从做这些任务中解脱出来。 在工业领域中,搭配了视觉的机器人变得非常流行, 被广泛用于无序抓取、拾取和放置、检测、组装和测量等领域
机器视觉系统通常由五个要素组成:照明(特定于视觉系统) 、光学镜头、数字成像传感器(CMOS或CCD)、图像处理软件及通讯。
2D 视觉–它能做什么,不能做什么
在二维 (2D) 视觉系统中,图像有两个轴,X 和 Y。我们可以确定所见事物的长度和宽度,但 不能确定高度或深度,因为没有必要的第三个分量(Z 轴)来测量高度 或深度。
这里我们以一个足球为例,它是一个球体,显然有 X、Y 和 Z 分量。 对于仅限于 2D 功能的 系统,它显示为一个圆形,与具有和该足球相同的高度和宽度尺寸的圆盘没有任何不同。见下图。
因此,2D 视觉系统显然不擅长识别足球、盒子、圆柱体或任何具有高度和深度的物体。 但在某些情况下,这个“Z”组件并不是一些应用的必须要求,2D 就足够了。例如以下应用:
· 二维特征和位置的检测
· 二维尺寸检查
· 条码读取
· 字符识别
· 标签检测
· 某些质量检验流程
·监视和对象跟踪
· 有无检测
目前的 3D 机器视觉方案
目前 3D 图像技术有四种主要技术:激光三角测量、双目立体视觉、飞行时间(TOF) 、结构光。
当我们查看在 3D 视觉系统中获得的数据时,它将具有 X、Y 和 Z 方向的维度数据分量。 这些数据结合起来产生了点云。 点云图像看起来有点像普通的 2D 图像,但具有额外的深度信息(Z 轴分量)。 可以在可视化应用程序中查看点云,我们可以旋转、平移和倾斜这些图像, 以便更清晰地了解场景和其中的对象。
最先进的点云不仅提供 3D 维度深度,还能提供颜色信息 (如下图)
本图片效果采用zivid2相机获取
采用 3D 的优势
因为我们可以使用目标物体的高精度三维(数字化)模型,所以我们的机器现在可以轻松处理形状和位置。 3D 图像提供有关目标对象在空间中的位置、其确切体积、表面角度、平坦度和 特征的精确信息。 这极大地简化了目标对象夹持和整体系统设计。
三个维度之美
使用三个维度的视觉系统具有精确的坐标(X、Y、Z)和围绕每个轴的相应旋转信息。 这些系统大多采用四种技术之一:激光三角测量、双目立体视觉、飞行时间和结构光。 由于这种扩展功能,3D 视觉系统几乎可用于任何场景以及 2D 视觉系统无法提供应用所需的性能的场景。 例如:
· 机器人引导和表面跟踪
· 用于放置、包装或组装的料箱拣选
· 对象扫描和数字化构建
· 厚度、高度和体积测量
· 尺寸标注和空间管理
· 测量形状,孔,角度和曲面
· 检测表面或装配缺陷
· 相对 3D CAD 模型的质量控制和验证
3D视觉的四种技术原理及分析
上文简要提到了目前在 3D 机器视觉中使用的四种技术。 我们可以进一步将这些技术分为两个领域:基于时域的和基于空间域的。
· 激光三角测量-空间域
· 双目立体视觉-空间域
· 结构光-空间域
· 飞行时间-时域
这些系统生成的三维信息被称为“点云”。 虽然点云比二维提供更好的细节和对场景的理解, 但它并非绝对可靠,其中仍然存在挑战,例如环境光、遮挡、视野、障碍物、阴影以及拍摄非 常暗和非常闪亮的物体。 3D 视觉对机器视觉来说是一个巨大的福音,然而,它并不是万能的,现在让我们从相对较高的层次上看一下我们已经确定的今天在 3D 视觉系统中使用的四种不同方法。
激光三角测量
原理:激光线三角测量;场景中物体上激光线的位移与物体高度成正比。
特征:
· 激光光源,对环境稳定。
· 简单的测量原理。
· 可定制化程度高。
· 适合输送带应用。
· 没有颜色信息。
线激光器是一种可以与相机一起使用的主动光源。 这种众所周知的成熟技术简单、成本低、 速度快、精度高。 激光三角测量是最流行和最常用的 3D 成像技术之一,广泛应用于各种应用。
激光 3D 视觉示意图
激光三角测量或激光轮廓分析技术涉及通过窄激光束移动目标物体。相机与激光发射器成一定角度布置,并记录反射光束穿过物体时的情况。该过程发生多次然后生成对象的复合 3D 点云。
使用激光器的一个特殊优势是它在环境光作为噪声源的情况下的鲁棒性,因为使用和记录的波长与环境白光的波长相距甚远。
飞行时间(TOF)
原理:测量发射光和反射响应的时间;基于时间延迟(脉冲)和相位。
关键考虑因素:
· 将时间用作“基线”;
· 可能紧凑,无遮挡影响;
· 大测量范围(数百米);
· 非常快(实时视频速率);
· 对反射敏感;
· 绝对精度有限;
· 复杂的制造;
· 通常能达到亚高清分辨率。
采用时域而非空间域方法进行 3D 成像,飞行时间激光扫描仪(有时称为 LIDAR 系统或激光 雷达)可有效去除基线。 我们可以通过测量发射的激光和从物体表面反射的激光之间的时间 延迟来获得精确的距离测量值。
3D 飞行时间(TOF)示意图
飞行时间系统主要使用了三种不同的技术:
· 脉冲激光系统
测量发射激光脉冲和接收脉冲之间的时间延迟。因为时间与距离成正比,所以相对位置是确定的。考虑到光速,我们可以想象“时间线”将会很短,与较短的基线类似, 精度(或深度分辨率)会降低。
· 基于相位的系统
通过在发射的激光束上调制正弦波并测量设备发射的波与物体反射的波之间的相位差来工作。与基于脉冲的系统相比,在更长的时间内积分通常会提供更好的精度。缺点是测量范围将会缩小,对环境光(如阳光和反射)的敏感性会增加。由于光线可能沿多条路径到达物体,因此测量距离可能比实际距离长。
· 飞行时间系统
相机代表了一种用于实时捕获 3D 范围图像的相对较新的技术。 这些相机速度非常快,可以捕获整个图像而不仅仅是一个点,并且通常以视频频率甚至更高的频率来提供强度和范围数据。
近红外 (NIR) 光用于照亮场景,从场景反射回传感器的光的相位由传感器测量,其中每个像素都包含一个片上相关性回路。相移与行进的距离成正比,使我们能够测量从图像中的每个像素到场景中相应点的距离。类似地,每个像素都包含基于脉冲的定时电路,以找到发射激光脉冲和接收脉冲之间的时间延迟。
TOF 相机制造起来很复杂,而且通常空间分辨率较低 VGA 分辨率被认为是高端的了。设计的复杂性、光的物理特性以及由于测量原理本身的原因,TOF 相机在 10m 的范围内的理论精度低于结构光系统。10m 以上时 TOF 系统开始变得更好。 TOF 系统已经在汽车测距和基于视觉的安全系统中进行了大量评估和一些部署。
使用时间方式进行测量的好处之一是可以进行像素级处理。想象一个数据区域,它不是像之前讨论的那样分散在一个空间邻域上,而是随着时间的推移记录在同一个像素上。所有计算都在像素级别执行,避免了空间邻域分析,从而提高了精度并避免了块噪声和空间分辨率的损失。
TOF 系统在某些情况下具有一些优势,例如当从相机到物体的距离更长时,但该技术目前仍然相当昂贵,而且它没有颜色数据。
结构光
原理:投影图案;通过场景中物体的变形/位移计算出深度信息。
关键考虑因素:
· 表面不需要纹理
· 单一图案-快速处理。
· 基于区域的对应
· 块平均。
结构光技术与激光三角测量技术有一些相似之处,但要复杂得多,提供的信息要多得多,并能 生成更详细的点云。 这是一种“全视野”方法,因为它提供了被拍摄对象的完整 3D 图像,而不仅仅是一条横截面线。
结构光系统采用高强度白光投影仪和相机进行成像。它们以固定的方向相互排列,投影仪相与相机成一定角度,相机与被拍摄场景成直角。
结构光以已知的光图案投射到物体表面,该图案表现为遍历物体的、宽度不同的高对比度光条纹图像。
每条条纹都被称为“边缘”,由数千条这样的条纹组成的网格图案照射在物体的表面上。 如前所述,投影仪与物体成一定角度,相机垂直于物体。 当条纹图案照射到物体上时,物体的表 面畸变被捕获,生产一个非常详细的点云。 并非所有结构光系统都使用条纹图案,该方法也 可以使用点和其他不同的图案。
在单个投影图案的方案中,结构光系统类似于主动式双目立体技术(在空间区域/邻域上操作),但没有第二个摄像头。但是,由于图案是结构化的而不是随机的,因此数据提取通常较少占用处理器,并且结构化图案避免了对应问题。不利的一面是,空间结构光的单个投影 方式在块平均、分辨率和准确性方面确实面临与双目立体视觉相同的挑战。结构光系统通常也有与激光扫描仪相同的问题,涉及镜面反射,光亮表面或非常暗和光吸收性的表面。 这些 表面通常会导致数据丢失和测量错误。我们可以通过在方程中引入时域,结合空间和时域(如在时间编码结构光中)来克服块平均、 空间分辨率损失和精度问题。
时间编码结构光
原理
· 投影条纹
· 通过场景中物体的畸变/位移提供深度信息。
· 测量发射光和反射响应的时间。
· Zivid应用了这种技术的一种变体。
关键考虑因素 :
· 时间编码投影图案,逐个像素处理。
· 无需分析空间邻域。
· 消除块平均。
· 不需要表面纹理。
· 空间和时间”的最佳组合。
· 利用时间作为“基线”。
· 可能是最准确的3D技术,基本原理决定质量。
· 经常被误认为很慢,但像Zivid相机这样的现代系统越来越快。
时间编码结构光系统在设计上类似于常规结构光系统,具有与场景成一定角度的高强度投影仪, 并且相机正对场景。它们利用空间域和时域技术来提供非常详细的点云,还可以提供 RGB 颜 色信息。 Zivid 3D 彩色相机使用的就是时间编码结构光技术。
与其他技术相比,该技术的精确度和准确度最高可提高 100 倍。正是由于这个原因,许多人 认为时间编码结构光是 3D 机器视觉最有吸引力的方法和未来。
简单的结构光方法将单一图案投射到物体上。时间编码结构光将一系列独特的图案投射到物体上,相机为整个编码系列拍摄多张图像。在不同时间观察每个像素的强度,并用于建立相机和投影仪中各个像素之间的对应关系。由于使用了时间信息,因此所有计算都在像素级别执行,避免了对空间邻域的分析。这消除了任何块噪声或空间分辨率的损失。
使用 3D 时间编码结构光视觉的机器人的示意图
双目立体视觉与结构光 3D 的点云
许多机器人料箱拣选和零件拣选应用已经开始基于来自低成本深度相机(例如 RealSense 相机)的数据进行检测、拾取和放置算法的开发。鉴于其价格点和适用性,它是 3D 成像和捕 获点云的绝佳切入点。
但是,您选择的相机及其性能必须与您的任务相匹配。 所有 3D 视觉系统都有一定的误差幅度,您必须确定系统的性能是否达到您要求的水平。如果误差幅度太大,您将拥有一个不可靠的系统,该系统根本无法执行并且在操作时需要过多关注。 在我们的料箱拣选示例中,这意味着出现了抓取失败。如果我们能够最大限度地减少这些错误,并让点云尽可能接近真实 的尺寸,同时具有最小的错误和高度的真实性,我们将拥有一个准确、可靠和强大的机器人单元,其性能才能符合我们的预期。
双目立体视觉与 Zivid 3D 彩色点云的对比
双目和主动式双目相机通常与 AI 算法一起用于料箱拣选应用。 在下图中,我们可以 看到双目立体相机和使用时间编码结构光相机(如 Zivid)捕获相同场景的一些点云示例。
双目立体视觉深度相机点云场景 (图1)
Zivid彩色3D点云场景 (图2)
简而言之,真实度和真实性是 双目立体相机和 Zivid3D 彩色相机之间最显着的区别。 通过使 用工业 3D 相机,您可以相信点云数据更接近现实(而且,如果您能看到更多细节,就可以实 现更多应用)。
现在让我们将一个包含了一些紧密放置的包装盒和火柴盒的场景进行比较。 图1展示了通过 双目立体视觉相机系统捕获的点云, 图2则展示了通过 Zivid 工业彩色 3D 相机系统对相同 场景捕获的 3D 点云。
双目立体相机拍摄的盒子
Zivid 3D工业彩色相机拍摄的相同盒子
从两个场景中可以清楚地看出,Zivid 相机的点云细节更多,也更接近现实世界。
糟糕的点云会导致副作用
作为系统设计者,性能较差的系统的糟糕数据会要求我们做出相当大的补偿,以达到更好的效果:
· 必须在包含大量噪声的数据上训练我们的AI和ML算法,以适应低质量的深度传感器 输出,而不是真实世界的表征。
· 会发生失败的抓取,因为由于深度传感器中的比例、旋转和平移的误差,对象没有出 现在我们读取的 XYZ 中的位置。
· 难以实现高SKU覆盖率,因为低分辨率深度相机分辨特征的能力是有限的。
我们想要尽可能接近现实世界的表征,我们想要最大的“真实性”,我们希望无需补偿和调整, 以尝试“恢复场景”。 因此我们需要直接从高性能系统(例如 Zivid 工业 3D 相机)实现这一 点。
最终,这将带来更少的抓取失败和更好的空箱效果,同时减少维护和操作员干预。 这将是一个更可靠和强大的料箱拣选解决方案。