• 发文
  • 评论
  • 微博
  • 空间
  • 微信

自动驾驶需要明眸慧眼,立体视觉欲成杀手锏?

探索科技TechSugar 2021-01-19 09:51 发文

立体视觉处理是将世界从2D平面转换为全3D环境,不仅提供了更丰富、更密集的目标场景表示,还允许感测系统在未经训练的情况下识别一般障碍物,使仓库机器人、自动驾驶车辆等的导航更安全、更有效。

文︱立厷

激光雷达(LiDAR)的竞争者来了,本不是什么颠覆性技术,但分辨率提升15倍,成本却与便宜的固态LiDAR相仿;埃隆·马斯克为其点赞,特斯拉也开始搭载,不过好像还没有玩转。要说真正量产搭载的还是传统意义上的豪车:奔驰S级和E级、宝马7系和5系、雷克萨斯LS、路虎Discovery Sport SUV、捷豹XFL、XE等。

从特斯拉的摄像头说起

特斯拉的全电动汽车以摄像头数量多而闻名,其8个摄像头主要用于岗哨模式(Sentry Mode),还有一个TeslaCam用作行车记录仪。通常人们没有注意的是,特斯拉在Model 3和Model Y中配备了第九个摄像头,就在后视镜上方,用来监测车内情况。

前不久,美国的Model 3车主Erik Martin曾见过一辆路测的Semi原型卡车,说它配备了26个摄像头。事实上,量产版Semi车型最多也就配备10个摄像头。

早在2016年,在Model S上测试的特斯拉Autopilot 2.0(AP)硬件就“在驾驶员侧安装了某种双目摄像头,看起来像一副小望远镜。”

特斯拉测试的双目摄像头

值得注意的是,特斯拉Model 3前视已搭载三个基于安森美半导体CMOS图像传感器的三目摄像头(鱼眼、中焦和长焦)模块,用三个不同焦距摄像头覆盖不同范围场景,以解决摄像头无法来回切换焦距的问题,通过立体视觉技术实现3D成像。

特斯拉的三目摄像头模块

提供各类立体视觉解决方案的北京中科慧眼销售总监崔凯表示:“对于高级辅助驾驶系统(ADAS)单目就够用,还便宜,而自动驾驶更需要多传感器融合。单目有一种配置叫三目,即单种焦距的单目,可以实现近距离宽视角和远距离的全覆盖。但如果是三焦双目就有很高的算力要求,开发难度很大。”

这话在特斯拉身上得到了应验,根据国外车友测试,发现搭载Autopilot 2.5硬件的Model 3,在开启AP后,前置三目摄像头中只有一个主摄像头在工作,而长焦和鱼眼摄像头都处于关闭状态。

另外,去年年初国产特斯拉被暗中减配,混装了HW2.5和HW3.0,后者是特斯拉自己专门为FSD打造的新计算平台,据称其图像处理能力是HW2.5的21倍,计算能力提升了大约7倍。但特斯拉中国却表示:现阶段如果没有选装FSD功能,使用HW2.5的Model 3车型与HW3.0的Model 3车型在驾乘体验和使用安全上“基本不存在区别”。由此可见,现在的三目摄像头还是受制于算力。

的确有车主发现,行车记录仪拍下来的视频中,除了正前方的视频较为清晰外,其他角度的视频都比较模糊。原因就在于HW2.5(自动驾驶芯片)硬件算力不足,只有前置主摄像头支持全分辨率输出,剩下的5个摄像头全部降低了分辨率输出。这样,想要实现对侧前方、后方大量车辆的识别非常难。这也AP在面对侧前方车辆加塞并线时反应没有那么灵敏的一个原因。

特斯拉的中焦实景

如果真是那样,特斯拉的视觉还是2D的,想象一下八个摄像头同时处理要消耗多少GPU资源。结果可想而知,还而知了不少。

有专业人士分析说,特斯拉方案的问题在于,其方案主要依靠视觉,所以环境感知3D重建是基于2D的。2D转换为3D,必然要丢失信息。通过看实际视频,发现特斯拉对远处物体有误识别的情况,特别是有穿着黑衣服的行人在晚上突然过马路时。毫米波雷达不是看人的,超声波距离不够,视觉两眼一抹黑,这不就是视觉欺骗吗?

刚刚的国产Model Y试驾所见,其内后视镜背面空空如也,并没有搭载之前Model 3曾有的三目摄像头。

我们还是先看看什么是立体视觉(StereoVision)技术吧。

原理并不复杂

早在1838年,物理学家惠斯登(Wheaston)发明了实体镜,让人们第一次知晓了立体视觉这一全新的深度知觉现象。1861年,美国人史高维(Scoville)利用两个镜头仿照人体两眼前的距离同时拍摄,发明了早期的立体摄影。其仿生的就是人眼三角测距。

立体视觉是计算机视觉的一个重要模块。人类之所以能看到各种物体,得益于我们的视觉系统。在发现了单目系统的缺陷之后,从一个摄像头增加到两个摄像头,就构成了一个立体系统。如果可以在两幅图像中找到对应点,就可以通过三角测量的方法来求得深度。

基于此,人们发明了用来测量距离的双目摄像头。近年来,伴随计算机和自动驾驶(AD)技术的发展,立体视觉已用于车辆的目标感测和识别应用。

立体视觉原理

立体视觉处理是将世界从2D平面转换为全3D环境,不仅提供了更丰富、更密集的目标场景表示,还允许感测系统在未经训练的情况下识别一般障碍物,使仓库机器人、自动驾驶车辆等的导航更安全、更有效。

早在1996年,德州仪器(TI)就在《用多个DSP实现快速3D视觉》的应用报告中描述了一个具有移动机器人引导和自动车辆导航的立体视觉过程。

3D信息任务分配和数据传输

报告指出:“立体视觉过程通过在不同位置获取两幅图像,并研究相应立体点位置的差异来确定物体的距离。各种技术已经发展到从一组亮度图像推断3D信息的阶段。立体视觉的技术,特别是它能够在各种照明条件下和大深度范围内工作更适合测距应用。”

自动驾驶应该百密而无一疏

自动驾驶的一项基本任务是环境感知,即在行进中解释不断变化的3D世界。车辆要使用一些方法来了解和响应周围环境,尤其是在运动中实现深度感知。如果路上的物体是陌生的怎么办?也就是说,如果系统没有被训练就去识别路上的特定障碍物就会出现偏差。

实现自动驾驶的传统方法是结合使用深度传感技术:LiDAR和雷达是最常见的(与全球定位系统(GPS)配合使用,再加上极其精确的地形图)方法。对摄像头数据进行深度估计在业界也很流行,但是,顾名思义,这种技术提供的是距离估计,而不是精确的测量。而立体摄像头能够精确地测量距离,为自动驾驶应用提供显著的优势。

再看看特斯拉是怎么做的?去年,特斯拉收购了研究高效DNN(深层神经网络)的计算机视觉初创公司DeepScale,希望能够沿着视觉算法这一技术路线图,继续推进自动驾驶技术的落地。之后,特斯拉Autopilot 2.0实现了利用摄像头训练数据改进的限速识别算法,以提高高速公路限速数据的准确性。特斯拉一直在用神经网络计算机来加强算力,也一直在用几个摄像头观测场景的数据来训练神经网络。训练者,难免百密而无一疏。

护栏属于“未知物体”,失误在所难免

致力于汽车智能化和轻量化产品的研发和制造保隆科技视觉产品总监孙路认为,特斯拉将增强型自动驾驶辅助系统提供给用户后,本地用户便“心甘情愿”地通过众包形式无限训练车辆,通过采集大量数据进行大量训练,其方案结合几何与网络测距方法,适用于网络调参,来增强模型的拟合能力,方案价格略高一些。

他指出:“但单目自身存在的问题不能完全杜绝,穷举法不可能完全覆盖,特斯拉仍然会出现一些场景的操控失误风险;而双目具有一定技术门槛,不易实现高性能指标,行业还没有专用芯片,目前普遍采用FPGA,工艺难度高。此外,结构精度要求高,耐久性、一致性、温度适应性要求也高。需要自动校准(AA)算法、静态标定算法保存内参等,投入很大。”

车用传感器孰优孰劣?

目前汽车中使用的传感器主要是雷达、LiDAR和摄像头,各有长短,用处不同。这些传感器协同工作,提供外部世界车辆、行人、骑自行车的人、标志等原始数据,其重叠功能会产生冗余(图中颜色重叠部分),确保一个系统出现故障时,另一个系统继续运行。

ADAS完整愿景将融合多种RF技术和立体视觉等传感器,形成一个完整的360°数字处理环境

比较一下特斯拉的车载传感器配置,距未来愿景主要是少了LiDAR,冗余也不够,当然未来数量还会不断增加。

特斯拉车载传感器配置

雷达:只是一种成本较低而可靠的技术,能够在一定距离内探测较大的物体,在弱光和恶劣天气下表现良好,但它只适用于倒车或泊车时的安全辅助装置,是主要感测方式的重要补充。由于使用无线电波而不是光来探测物体,所以雷达在雨、雾、雪和烟中都能“看”得很清楚。

LiDAR:通过测量激光信号从物体上返回到本地传感器所需的时间来确定车辆与环境或物体之间的距离

立体视觉:它基于从相邻的两个视角(双目或多目摄像头)获取同一环境的两幅独立图像来估计距离,即视觉信息的三角测量。它是使用算法处理器对现实环境进行密集的3D数字表示。

三目摄像头示意图

立体视觉和LiDAR都能进行距离测量、深度估计和密集点云生成(即3D环境地图)。两者都可产生丰富的数据集,不仅可以用来感测物体,而且可以在高速、各种环境、长距离和短距离下识别物体。作为车辆自动驾驶的主要传感器系统,两者也都可以同时部署以产生冗余。

因为这两种感知方式都是光学技术,所以与人眼一样容易受到同样的挑战:要“看到”道路,就要求有良好的视线,并且远离污垢和其他污染物。那么,两者的利弊如何呢?

早期LiDAR优势明显

不可否认,信号的数量越多,可能实现的距离测量数量就越多。LiDAR是通过多个旋转(物理或通过逻辑)的激光器来实现的,以360度视野扫描车辆周围环境。在自动驾驶发展史上,LiDAR一直是一项重要的传感技术。开创性的自动驾驶原型依靠LiDAR实现了精确的距离测量、可靠性和易用性。例如,2004年开始的由美国国防部高级研究计划局(DARPA)赞助的自动驾驶挑战赛中,大多数参赛者都依赖LiDAR技术。

LiDAR没有辜负人们的期望,优势显而易见,包括:

高精度(测量精度达到厘米级)

高数据速率(机械式旋转LiDAR每秒旋转20转以上)

经验证稳定可靠

感测效果不受温度和光照的影响

尽管LiDAR有诸多优点,但也确实有一定的技术局限性:

在雨、雾和灰尘等恶劣天气条件下会因反射造成误报。专用算法处理可能解决这些问题,但比较复杂

眼睛安全条例对LiDAR的信号强度有所限制,使分辨率限制了视场和视场之间的距离

LiDAR测量的有效性与物体的反射率有关。如果信号遇到反射性差的障碍物,如黑色车辆,信号的能量只返回很小一部分,因此感测的可靠性会降低。幸运的是,大多数交通参与者都有足够的反射能力,所以LiDAR在的应用相当广泛

立体视觉后来居上

在车辆自动驾驶的早期(90年代末到21世纪初),计算机视觉科学还处于起步阶段,加上半导体技术等因素造成的许多问题,阻碍了立体视觉作为自动驾驶主要感测模式的采用。

这段时间,立体视觉最受诟病的问题是:

摄像头分辨率低,远距离图像质量差

弱光环境下性能差

计算资源要求高(计算机视觉处理需要多台PC机)

驾驶过程中未经校准的摄像头需要手动调整

当时,这些问题的严重性足以阻碍立体视觉作为一种可行的自动驾驶感知替代品的部署。在没有竞争者的情况下,LiDAR得以蓬勃发展。

不过,从那时起,立体视觉慢慢走上了更具吸引力的发展之路,出现了大逆转,目前已具备了和LiDAR竞争的能力:

低成本、高分辨率摄像头(目前为800万像素摄像头)

适用于夜间驾驶的具有HDR(高动态范围图像)和微光图像处理功能的高级ISP(图像信号处理

专门为实时计算机视觉处理而设计的嵌入式SoC(系统级芯片

自动动态摄像头校准

正是这些发展将立体视觉从一种小众自动驾驶技术变成了一种强有力的竞争者,成为车辆自动驾驶的主要感测方式。

为什么自动驾驶更需要对象类型?

克鲁日(Cluj-Napoca)技术大学的研究人员称,密集立体视觉系统的一般处理流程是图像采集、立体处理、视差到3D映射,最后是感测算法的应用。

立体视觉硬件使用两个摄像头,以24fps的最大帧速率获取一系列优化的图像。通过产生输出函数的专用硬件板对被跟踪图像的进行3D重建——可以是两个处理后的图像之间的视差图或用于生成基于左摄像头的X-Y坐标系的Z-map。

立体视觉系统能够生成两种类型的环境数据:一是基于高程(elevation)测量的复杂驾驶环境密度图,二是由参数化车道、跟踪长方体和行人组成的一系列几何元素。过去,传统双目摄像头不区分对象类型,仅仅是将前方障碍物检测或测量出来。这使其在实际应用中存在一些问题。因为计算元素既耗时又密集,为了根据接收到的环境数据进行实时决策,系统需要大量的数据带宽和处理能力,因此必须使用并行计算。

虽然LiDAR也是一种常用的测距技术,也能够精确地进行3D物体感测,而单目摄像头也可以用来推断或预测与深度相关的信息,但立体视觉在提供对3D环境的高度详细和准确的360度理解方面具有独特优势。立体视觉利用两个同步自动校准的摄像头信息生成3D深度图,是自动驾驶系统中视觉感知、运动预测和路径规划的重要组成部分。

在一个城市交叉口的图像中可以看到,包括车辆、行人、自行车和路标、护栏等障碍物。

立体视觉视图和嵌入图像

将上图中较大的立体视觉视图与右下角的嵌入图像进行比较,可以清楚地区分左侧的路标、人行横道上的行人、附近的骑车人、从左侧进入交叉口的最近的两辆车,以及道路两侧的背景元素。立体视觉视图中的颜色表示距离,较暖的颜色(如橙色)表示距离车辆较近,较冷的颜色(如紫色)表示距离较远。另外,小图中3D边界框颜色表示对象类型:车辆轮廓为绿色,行人轮廓为蓝色,自行车轮廓为白色。

虽然道路场景很具有挑战性,照明条件可能会发生很大变化,车辆、行人、自行车、碎片和其他障碍物是常态,但立体视觉解决方案也能有效地在复杂环境中实现。以夜间驾驶为例,在黑暗中基于立体的障碍物感测(同时感测正面和负面障碍物,如坑洞)需要鲁棒的深度估计,包括视差有效性度量才能成功。

比如,计算机视觉芯片开发商Ambarella将短距离和长距离立体摄像头模块的多个输出组合在一起,通过生成密集点云以惊人的细节对环境可视化。其立体摄像头生成的数据进行了以下一些处理:

深度映射:创建深度映射可以感测场景中的一般对象(从车辆和行人到电线杆、垃圾箱、坑洞和碎片,包括其准确大小、位置和距离,而无需对系统进行明确训练

道路建模:对不同道路形状精确建模,有助于下坡和上坡运动

数据融合:由于颜色相关信息与深度数据一起由同一传感器提供,因此可以同时运行单目算法(例如,通过卷积神经网络(CNN)进行车道标记或交通标志感测),然后将此数据与深度图融合

360度可视化:立体摄像头可用于鱼眼镜头的短程感知,在低速移动时可360度查看场景

自动驾驶,分辨率定输赢

Ambarella总经理、帕尔马大学计算机工程教授Alberto Broggi认为:“在当今的自动驾驶障碍物识别技术中,最重要的性能指标就是分辨率,也就是图像密度,即每秒可以提供距离测量数的多少。数值越高,汽车周围的3D表现就越精确。”

一般来说,使用当今摄像头的立体视觉可以提供大约2000个垂直样本/秒。LiDAR呢?才128个垂直样本/秒,分辨率低了15倍以上。

立体(上)和LiDAR(下)图像密度比较

Broggi解释道:“在两幅图像中,彩色像素表示传感器的测量值,颜色表示每个传感器标度上的测量距离。我们可以看到,左侧的立体解决方案提供了更大的环境覆盖范围,而右侧的LiDAR输出的区域覆盖非常稀疏。”

由此可见两者的明显差异:立体视觉生成的数据更为丰富,从而使障碍物感测更容易。通过对上面两张图像的特写对比,可以看到立体密度(左)和LiDAR密度(右)的区别。

立体和LiDAR的密度天壤之别

他指出,虽然这两种技术都可用于自动驾驶车辆的目标感测,但效果差异很大。上述演示发生在白天,而在弱光情况下,立体的分辨率也很高。下图显示了夜间驾驶时的密度对比。

夜间立体(左)和LiDAR(右)密度比较

Broggi解释说,精度是另一个重要的衡量标准,它提供的不是直接的距离测量,而是立体视觉。对于立体,距离是一个导出量,是通过处理两个亮度图像获得的间接测量。不管怎样,立体视觉在远距离(不强制要求精确测量距离)和短程(要求高精度执行精确移动)方面都能提供自动驾驶应用所需的精度水平。例如,在短距离内,立体可以提供毫米级距离的感测。

除了分辨率和精度,现代立体视觉还有以下优点:

立体的一对摄像头都可以作为独立的单目摄像头使用,提供内置冗余

立体摄像头提供的双图像可以在一个芯片上并行执行单目CNN算法,如目标分类

立体视觉提供了感测一般3D形状的能力,即使那些没有被归类为已知障碍物的形状,例如,从另一辆车上掉落的石头、各种碎片或随机物体(如梯子或床垫)会被立体系统感测到;即使是负面障碍,如坑洞,也可以准确感测到

立体摄像头相对便宜,是大容量应用的重要考虑因素;也没有移动部件,可以自动认证,并消耗最少的电力

立体视觉以帧速率运行(每秒30帧超高清图像),因为立体引擎是硬连线到立体功能芯片,可以实现极高的数据率

立体摄像头可以自动校准,使两个摄像头的位置保持相对固定,否则测量数据将不正确

在典型驾驶条件下,振动和冲击是一种常态,这对立体系统来说是一个挑战。一些公司开发的实时自动校准程序可以补偿通常在正常车辆运行期间发生的摄像头移动,确保立体视觉处理的精确度。

立体视觉是ADAS和AD的未来

如今,视觉感知已进入深水区,算法将决定谁是赢家。双目的算法要求比普通单目要高,而且在车辆生命周期内必须保持感测的稳定性能,使两个镜头保持位置相对不变才能感知准确,或者采用自校准能力很强的算法。Ambarella高级算法工程师Francesca Ghidini博士认为,立体视觉可能是全自动驾驶汽车的关键,它是互联技术网格(mesh)的一部分,将为全自动车辆铺平道路。

崔凯认为:“全球范围能够量产双目的厂家也就是个位数,预计L3级别以上自动驾驶车辆采用双目摄像头会成为主流,而主机厂选择双目没啥难度。”

孙路认为:“感知的准确性首先要提高算法的性能,同时要依赖结构设计、产线设计多年积累的丰富经验。主机厂采用双目没有难度,但由于尺寸较单目大,所以需要内饰布置,一般不会集成到域控制器中。”

Cadence电气工程技术专家Adrian Gibbons则表示:“过去几年,ADAS一直在不断发展,在现阶段,立体视觉处理技术的下一步进展将有助于ADAS的普及。”

声明:本文为OFweek维科号作者发布,不代表OFweek维科号立场。如有侵权或其他问题,请及时联系我们举报。
2
评论

评论

    相关阅读

    暂无数据

    探索科技TechSugar

    做你身边值得信赖的科技媒体...

    举报文章问题

    ×
    • 营销广告
    • 重复、旧闻
    • 格式问题
    • 低俗
    • 标题夸张
    • 与事实不符
    • 疑似抄袭
    • 我有话要说
    确定 取消

    举报评论问题

    ×
    • 淫秽色情
    • 营销广告
    • 恶意攻击谩骂
    • 我要吐槽
    确定 取消

    用户登录×

    请输入用户名/手机/邮箱

    请输入密码