3D相机技术 | 立体视觉传感器+TOF相机「建议收藏」

3D相机技术 | 立体视觉传感器+TOF相机「建议收藏」转自|睿慕课文章结构前言立体视觉传感器原理简介工业领域应用主流立体视觉的产品TOF相机工作原理TOF工业领域应用一些TOF研究机构1.前言在机器视觉应用中,物体三维形状的获取变得越来…

大家好,又见面了,我是你们的朋友全栈君。

转自 | 睿慕课 

文章结构

  1. 前言

  2. 立体视觉传感器原理简介

  3. 工业领域应用

  4. 主流立体视觉的产品

  5. TOF相机工作原理

  6. TOF工业领域应用

  7. 一些TOF研究机构

1.前言

3D相机技术 | 立体视觉传感器+TOF相机「建议收藏」

在机器视觉应用中,物体三维形状的获取变得越来越重要。在这个系列里,我们将讨论目前在机器视觉行业中可用的3D图像采集设备, 以及最常见的技术。我们还将简要描述在不同技术下进行三维重建的原理。

三维重建有两个基本原则:三角测量和飞行时间(TOF)测量。三角测量使用的基本数学原理初中几何就学过。一旦知道三角形前两点的坐标和连接前两点到第三点的射线的两个角,就可以计算三角形第三点的坐标。相比之下,TOF相机发射辐射并测量辐射反射回传感器的时间。

请大伙注意,本系列描述的传感器没有一个返回对象的完整三维重建。相反,对于二维平面上的每个点,它们返回到对象的距离。因此,它们最多可以重建物体表面的一半。区别于能够重建完整的3 D对象表面的传感器,这些传感器有时被称为2½D传感器。这通常是通过使用多个传感器,或旋转和移动对象的传感器和合并结果2½D.重建。尽管如此,我们还是会按照行业标准的做法和要求,称这些传感器为3D传感器。

2.立体视觉传感器

立体传感器使用的原理与HVS相同:用两台摄像机从不同的位置观察场景,为了能够正确的重建运动物体,相机的同步是至关重要的。好比人的双眼同时观看,很难想象,不同步会看到什么。

相机的不同视点导致了与相机一定距离的点在两幅图像中的不同位置,这就产生了视差。视差是实现场景中点的三维重建的基本信息。(如何亲测视差?将一根手指放在眼前,切换左右眼,发现每只眼睛看到的位置是不一样的)

为了能够进行三维重建,相机必须进行标定,并确定其相对方位,标定通常由传感器制造商执行。标定数据使立体传感器能够对三维点进行三角测量。三角形的已知边是立体系统的基线,也就是连接两台摄像机的两个投影中心(入口瞳孔)的线段。此外,一旦知道两个摄像机的内部方位,摄像机本质上就是角度测量装置。因此,如果在这两幅图像中的某点都被识别出对应于场景中的同一点,那么光线到这一点的角度就可以计算出来。描述三维重建的等价方法如下:一旦在图像中识别出对应的点,就可以计算出它们在空间中的光线。重建后的三维点由两束光的交点确定。

3D相机技术 | 立体视觉传感器+TOF相机「建议收藏」

图1) 一个立体传感器由两个摄像机组成,用来观察现场。摄像机内传感器的方向由两个矩形表示。通过在两幅图像中找到对应的点,构造它们的光线,并在空间中相交,从而在三维空间中重建一个点。请注意,相机之间的角度被夸大,以显示立体传感器的几何形状更清楚。

注意,场景中的某些点可能在一个或两个摄像机的视角被遮挡。例如,在图1)中,矩形长方体底边周围的所有点至少被一个摄像机遮挡。显然,这些点的三维位置无法重建。这个问题发生在所有基于三角测量的传感器上。

对应的点通常通过匹配两图像中一个小矩形窗口来确定的。也可以通过特征点进行匹配。不管是哪种,图像都必须包含足够数量的结构或纹理。否则,无法唯一地确定对应的点。由于很多工业物体都是无纹理的,所以在场景中使用随机纹理。投影仪通常安装在摄像机之间,在场景中投射一个静态模式,也可以在场景中投射多个随机模式。为了在深度不连续时能获取更精确的三维重建结果,可以减少匹配窗口大小,甚至可以减少到1*1,这将在深度不连续处得到非常精确的三维重建,不过同时计算量也是非常大的。使用多个模式的一个缺点是对象不能移动。

立体传感器大多是基于面阵相机的,也可以使用线扫描相机进行立体重建。立体线传感器可以实现非常高分辨率的三维重建。但要求物体必须相对于传感器移动才能进行三维重建。

3.工业领域应用

主要应用在无人驾驶、立体视频、虚拟现实、三维跟踪、移动机器人、医疗机器人等多个领域。

4.主流立体视觉的产品

比较知名的产品有

1)STEROLABS 推出的ZED 2K Stereo Camera

3D相机技术 | 立体视觉传感器+TOF相机「建议收藏」

它有很高的分辨率和帧率

可以感知室内/室外0.5~20m是深度范围

3D相机技术 | 立体视觉传感器+TOF相机「建议收藏」

ZED 2K Stereo Camera分辨率参数及帧率

2)Point Grey 公司推出的 BumbleBee

Bumblebee 系列利用双目立体匹配计算,可实时得到场景深度信息和三维模型, 可以快速构建立体视频及立体重目 目前包括有双目和三目两类,实时3D数据转换,每秒产生100万个3D点。

3D相机技术 | 立体视觉传感器+TOF相机「建议收藏」
3D相机技术 | 立体视觉传感器+TOF相机「建议收藏」

双目和三目Bumblebee传感器

它的分辨率不如上面那款高

3D相机技术 | 立体视觉传感器+TOF相机「建议收藏」

BumbleBee分辨率参数

5.TOF相机工作原理

CWM飞行时间相机

CWM TOF相机发射辐射,通常在近红外范围,即振幅调制为一定频率fm的正弦波,在15到30兆赫之间,辐射被场景中的物体反射并被相机接收,相机在一个调制辐射的周期内测量四次反射辐射的量,这将创建测量mi= 0, … , 3, 间隔的时间间隔为π/ 2的接收波。发射波和接收波之间的相移可以解调如下:

3D相机技术 | 立体视觉传感器+TOF相机「建议收藏」

3D相机技术 | 立体视觉传感器+TOF相机「建议收藏」 表示双参数的反正切函数,它返回的结果是[0,2π)。此外,这四个测量值可以用来计算场景强度

3D相机技术 | 立体视觉传感器+TOF相机「建议收藏」

和幅值

3D相机技术 | 立体视觉传感器+TOF相机「建议收藏」

可以用来预测测量的质量。在传感器的集成时间(曝光时间)内进行多次测量,以提高信噪比。

该相位在所谓的无歧义距离范围内是唯一的:

3D相机技术 | 立体视觉传感器+TOF相机「建议收藏」

其中 3D相机技术 | 立体视觉传感器+TOF相机「建议收藏」 是光速,举个例子, 3D相机技术 | 立体视觉传感器+TOF相机「建议收藏」 ,则 3D相机技术 | 立体视觉传感器+TOF相机「建议收藏」 . 如果场景中存在距离大于 3D相机技术 | 立体视觉传感器+TOF相机「建议收藏」 的物体,则相位将出现折回干扰。这样一来,必须使用相位展开算法,这是非常耗时的,几乎从未使用过。因此,对于距离大于 3D相机技术 | 立体视觉传感器+TOF相机「建议收藏」 的对象,将返回一个错误的对象距离。

如果对象距离d在无歧义范围内,则可计算为:

3D相机技术 | 立体视觉传感器+TOF相机「建议收藏」

CWM TOF相机会发生系统和随机的错误。例如,距离测量可能依赖于积分时间,这可能会导致错误1到10厘米,相机内部的散射辐射会导致相对较大的距离误差,因为距离的测量可能取决于场景中的物体的反射,故可能存在系统的深度失真(摆动),因为发射的辐射并不完全是正弦波。

CWM TOF相机可以有高达30HZ的高帧率。然而,它们的缺点之一是相对较小的分辨率:大多数商用传感器的分辨率低于320X240像素。

PM 飞行时间相机

PM TOF相机发射辐射脉冲,通常在近红外范围内,直接或间接测量辐射脉冲从辐射源到目标再返回传感器的飞行时间。让这个往返时间称为 3D相机技术 | 立体视觉传感器+TOF相机「建议收藏」 。然后,相机到物体的距离为:

3D相机技术 | 立体视觉传感器+TOF相机「建议收藏」

虽然 3D相机技术 | 立体视觉传感器+TOF相机「建议收藏」 的直接测量在原则上是可行的,但在PM TOF相机中,往返时间是通过测量传感器接收到的辐射强度间接推断出来的。

一种基于 3D相机技术 | 立体视觉传感器+TOF相机「建议收藏」 间接测量的PM TOF相机,其工作原理是发射一定持续时间 3D相机技术 | 立体视觉传感器+TOF相机「建议收藏」 的辐射脉冲,如 3D相机技术 | 立体视觉传感器+TOF相机「建议收藏」 。脉冲持续时间决定了可以测量的最大目标距离(距离范围)

3D相机技术 | 立体视觉传感器+TOF相机「建议收藏」

例如,对于 3D相机技术 | 立体视觉传感器+TOF相机「建议收藏」 ,最大距离为4.497 m。在三个积分周期内测量返回到传感器的辐射。第一积分周期与辐射脉冲的发射同步。在三个积分周期内测量返回到传感器的辐射。第二个集成周期紧跟着第一个集成周期。这两个积分周期测量的是场景中物体反射的相机辐射强度。这两个测量值是用来推断场景中物体距离的主要数据。第三个积分周期发生在辐射脉冲发射前或发射后足够长的时间。其目的是对场景中物体反射的环境辐射效应的距离测量进行校正。

我们检查前两个积分周期,并假设场景中没有环境辐射反射。在第一个集成期间,靠近相机的物体反射的辐射会对传感器上的电荷产生很大的贡献。物体离传感器越近,相机上的电荷就越高。另一方面,在第二次积分期间,距离相机较远的物体反射的辐射对传感器的电荷有很大的贡献。物体离传感器越远,相机上的电荷就越高。

例如,在d = 0处的物体在第一个积分周期内只产生一个电荷,而在第二个积分周期内由于在第一个集成期间,整个辐射脉冲返回到传感器而不产生电荷。另一方面,d = dmax处的物体在第二次积分期间只会产生一个电荷,因为在第一次积分期间脉冲无法返回传感器。最后一个例子是,在d = dmax/2处的物体在第一个和第二个积分期间会产生相等的电荷。这说明td的飞行时间可以从传感器上的电荷推断出来,让前两个积分周期的电荷分别用q1和q2表示。然后,可以证明

3D相机技术 | 立体视觉传感器+TOF相机「建议收藏」

注意,对于距离大于dmax的对象,在本例中,q1 = 0,因此降为td = tp。这就是为什么距离大于dmax的物体无法被正确测量的原因。

上式假设没有环境辐射。这在实践中很少是真的。第三个积分周期可用于校正环境辐射效应的深度测量。

让第三个积分周期产生的电荷记为q3。然后,q3可以从q1和q2中减去,抵消环境辐射,得到:

3D相机技术 | 立体视觉传感器+TOF相机「建议收藏」

因此,场景中某点的距离

3D相机技术 | 立体视觉传感器+TOF相机「建议收藏」

上述测量在传感器的曝光时间内进行多次,以提高信噪比。

目前还不存在对PMTOF相机的系统和随机错误影响的全面分析。我们可以假设已知的对CWM TOF相机存在影响的因素也会影响PMTOF相机。

例如,我们知道PM TOF相机会受到依赖于场景中物体反射率的深度偏差的影响。PM TOF相机的时间噪声可以达到几厘米级。

PM TOF相机支持高帧率(高达30赫兹)。此外,它们提供比CWM TOF相机更高的分辨率。目前市面上出售的PM TOF相机的分辨率从320×240到1280×1024像素不等。

6. TOF工业领域应用

3D相机技术 | 立体视觉传感器+TOF相机「建议收藏」

与立体相机或三角测量系统比,TOF相机体积小巧,跟一般相机大小相去无几,非常适合于一些需要轻便、小体积相机的场合。TOF相机能够实时快速的计算深度信息,达到几十到100fps;而双目立体相机需要用到复杂的相关性算法,处理速度较慢。TOF的深度计算不受物体表面灰度和特征影响,可以非常准确的进行三维探测;而双目立体相机则需要目标具有良好的特征变化,否则会无法进行深度计算。

TOF的深度计算精度不随距离改变而变化,基本能稳定在cm级,这对于一些大范围运动的应用场合非常有意义,这些优势都使得它更易在工业上的推广

TOF 相机目前的主要应用领域包括

物流行业:通过 TOF 相机迅速获得包裹的抛重(即体积),来优化装箱和进行运费评估;

安防和监控
进行 Peoplecounting 确定进入人数不超过上限;
通过对人流或复杂交通系统的counting,实现对安防系统的统计分析设计;
敏感地区的检测对象监视;

机器视觉

工业定位、工业引导和体积预估;
替代工位上占用大量空间的、基于红外光进行安全生产控制的设备。

本文仅做学术分享,如有侵权,请联系删文。

下载1

在「3D视觉工坊」公众号后台回复:3D视觉即可下载 3D视觉相关资料干货,涉及相机标定、三维重建、立体视觉、SLAM、深度学习、点云后处理、多视图几何等方向。

下载2

在「3D视觉工坊」公众号后台回复:3D视觉github资源汇总即可下载包括结构光、标定源码、缺陷检测源码、深度估计与深度补全源码、点云处理相关源码、立体匹配源码、单目、双目3D检测、基于点云的3D检测、6D姿态估计源码汇总等。

下载3

在「3D视觉工坊」公众号后台回复:相机标定即可下载独家相机标定学习课件与视频网址;后台回复:立体匹配即可下载独家立体匹配学习课件与视频网址。

重磅!3DCVer-学术论文写作投稿 交流群已成立

扫码添加小助手微信,可申请加入3D视觉工坊-学术论文写作与投稿 微信交流群,旨在交流顶会、顶刊、SCI、EI等写作与投稿事宜。

同时也可申请加入我们的细分方向交流群,目前主要有3D视觉CV&深度学习SLAM三维重建点云后处理自动驾驶、多传感器融合、CV入门、三维测量、VR/AR、3D人脸识别、医疗影像、缺陷检测、行人重识别、目标跟踪、视觉产品落地、视觉竞赛、车牌识别、硬件选型、学术交流、求职交流、ORB-SLAM系列源码交流、深度估计等微信群。

一定要备注:研究方向+学校/公司+昵称,例如:”3D视觉 + 上海交大 + 静静“。请按照格式备注,可快速被通过且邀请进群。原创投稿也请联系。

3D相机技术 | 立体视觉传感器+TOF相机「建议收藏」

▲长按加微信群或投稿

3D相机技术 | 立体视觉传感器+TOF相机「建议收藏」

▲长按关注公众号

3D视觉从入门到精通知识星球:针对3D视觉领域的视频课程(三维重建系列三维点云系列结构光系列手眼标定相机标定orb-slam3等视频课程)、知识点汇总、入门进阶学习路线、最新paper分享、疑问解答五个方面进行深耕,更有各类大厂的算法工程人员进行技术指导。与此同时,星球将联合知名企业发布3D视觉相关算法开发岗位以及项目对接信息,打造成集技术与就业为一体的铁杆粉丝聚集区,近2000星球成员为创造更好的AI世界共同进步,知识星球入口:

学习3D视觉核心技术,扫描查看介绍,3天内无条件退款

3D相机技术 | 立体视觉传感器+TOF相机「建议收藏」

 圈里有高质量教程资料、答疑解惑、助你高效解决问题

觉得有用,麻烦给个赞和在看~  3D相机技术 | 立体视觉传感器+TOF相机「建议收藏」

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/141210.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • COLA 4.0:应用架构的最佳实践

    COLA 4.0:应用架构的最佳实践前几天和几个饿了么的同学聊天,一听说他们还在使用COLA1.0,我二话没说,90度鞠躬,赔礼道歉,虚心聆听他们的吐槽。COLA的初衷旨在控制复杂度,救码农于水火,惭愧的是,早期的思想不成熟,设计也多有缺陷,不仅没帮到他们,反而坑了他们,实在抱歉。实际上,我在COLA3.0迭代的时候,已经举起奥卡姆剃刀,砍掉了很多东西。然而还不够,主要体现在对架构的思考还不够透彻。因此,经过仔细反思,有了这一版最新的COLA4.0,期望回归初心,让COLA真正成为应用架构的最佳实践,帮助广大的业务技术同学,脱离酱缸

  • 关于java中堆内存与栈内存的详细分析[通俗易懂]

    本文由java零基础入门栏目为大家推荐,文中详细分析了什么栈内存与堆内存,并为大家介绍了二者的区别,希望可以帮助到大家。堆内存用于存储Java中的对象和数组,栈内存主要是用来执行程序用的。

  • 人物关系图谱插件

    人物关系图谱插件<template><div><divstyle=”height:calc(100vh-50px);”><RelationGraphref=”seeksRelationGraph”:options=”graphOptions”:on-node-click=”onNodeClick”:on-line-click=”onLineClick”/></div>…

  • pta 列车调度_数据结构/PTA-列车调度/栈/数组

    pta 列车调度_数据结构/PTA-列车调度/栈/数组火车站的列车调度铁轨的结构如下图所示。两端分别是一条入口(Entrance)轨道和一条出口(Exit)轨道,它们之间有N条平行的轨道。每趟列车从入口可以选择任意一条轨道进入,最后从出口离开。在图中有9趟列车,在入口处按照{8,4,2,5,3,9,1,6,7}的顺序排队等待进入。如果要求它们必须按序号递减的顺序从出口离开,则至少需要多少条平行铁轨用于调度?输入格式:输入第一行给出一个整数N(2≤…

  • MATLAB 循环语句_for循环matlab

    MATLAB 循环语句_for循环matlabMatlab的循环语法1、用循环方式实现从1到999的累加2、(1)、for循环方式实现: %% %初始化sum的值为0 sum=0; %从1开始遍历到999 fori=1:999 %对遍历的每一个元素进行累加 sum=sum+i; end %在控制台显示结果 disp(sum); (…

  • 改变Visual Studio 2012的皮肤建议收藏

    习惯了用vs的绿色背景,vs2012有自己的主题管理工具–ThemeEditorvs2012默认没有安装ThemeEditor,菜单:工具->扩展和更新,搜索栏里面输入ThemeEdit

    2021年12月20日

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号