聊一聊我们在远距离双目感知的一些看法

智能汽车
既然特斯拉、百度/极越已经在一定规模下证明了纯视觉 L2+ (highway/city, FSD) 的可行性,那为什么还要去研究双目呢?双目、LiDAR 相较于 2M 的 30/60/120 和 8M 的 30/120 的区别是什么?

本文经自动驾驶之心公众号授权转载,转载请联系出处。

受 王峰:远距离LiDAR感知 启发,作为实打实的 L2+ RoboTruck 同行 ,我也来分享分享 智加/Plus 在远距离感知上的一些积累,作为工作一段时间的总结。

既然特斯拉、百度/极越已经在一定规模下证明了纯视觉 L2+ (highway/city, FSD) 的可行性,那为什么还要去研究双目呢?双目、LiDAR 相较于 2M 的 30/60/120 和 8M 的 30/120 的区别是什么?我的看法是:

  • 在线:在数据规模有限的情况下,双目和 LiDAR 一样,能快速提升感知性能上限;
  • 离线:可用于 auto-label 中的预标注、建图;
  • 成本:相较于 LiDAR,在成本上有显著优势;
  • 标定:前向标定在流程上也会更简单;
  • 架构:双目硬同步 (vision-centeric),来触发、对齐其他相机,相较于 LiDAR-centeric 更精准。

我们的效果和大疆、鉴智释放的图片、视频一样,可以实现稠密、准确的深度估计。但是很可惜,基于 DL-Stereo 的方法需要稠密的深度 GT,而现在的 LiDAR 往往只能提供 150m 内的 GT. Livox Tele 的 FoV 较小,超远处的反射率和点数不足以支撑我们的需求和场景。最终在远距离使用的,还是基于传统特征的稠密/稀疏匹配。

不同于现在流行的前向单目、三目、长短焦双目,同构双目的玩家其实并不多。乘用车领域,国内做得最好的应该是大疆、鉴智,国外是维宁尔、奔驰。我先来分享分享他们的进展和优势。

玩家们

大疆

  • 在宝骏的一系列产品中交付:云朵、KiWi、悦也的高配版本,能够实现城区记忆行车。

和大疆一样,智加也通过双目强化了 Lane, 3D Det, Calib, Depth 等模块。

鉴智

  • 鉴智分享过很多 demo,实现了基于双目的魔毯、智能底盘功能,和蔚来/奔驰的 4D 底盘异曲同工,也算是近年来把双目作为核心优势的重要玩家。

鉴智优化了 HKBU 的工作 FADNet图片也有做 MVS 和全向深度估计 Full Surround Monodepth from Multiple Cameras (TRI-ML/VIDAR)

地平线

  • 地平线 PoC 过双目,也有一些开源的工作,后续再观望观望。

奔驰

  • 老法师奔驰早在13年前就分享过基于 stixel 的双目深度估计、freespace 预测 / 参考。

英伟达

英伟达作为奔驰的重要合作伙伴,优化、实现了不少双目的工作:

  • https://github.com/NVIDIA-AI-IOT/redtail/tree/master/stereoDNN
  • VPI - Vision Programming Interface
  • Stereo Disparity Sample
  • ACCELERATING OPTICAL FLOW AND STEREO DISPARITY ESTIMATION USING THE NVIDIA A100 OFA ENGINE

维宁尔 (Veoneer)

  • 维宁尔曾是宝马、斯巴鲁的双目供应商,在2018年的投资者日上曾分享过双目规划。可以看到,基础方法论还是奔驰分享的 stereo stixel

华为 ADS 1.0

  • 华为在 ADS 1.0 上规划了前向四目,除了广角和长焦外,还有一对双目。不过从 ADS 2.0 的交付来看,最终还是拥抱了 LiDAR-centeric 而不是双目视觉。

ArgoAI

ArgoVerse stereo 相较于 KITTI stereo 更符合现在的自动驾驶场景需求。

  • ArgoAI 1/2 都包含了双目数据,在 CVPR 2021/2022 都举办过比赛。但里面都是一些成熟模型的 finetune 和刷点,缺乏一些新意和实践价值。

安霸/VisLab

  • 多组双目系统的想法一开始由安霸/VisLab 的视频启发,他们实现了一个前向两对双目(包括长焦)的系统。还有一个视频,很可惜找不到了,这个视频描述了 VisLab 在 side 和 rear 装了多组双目,实现实时的全向深度估计。这个想法,很类似于 Mobileye 2020年发布的 VIDAR,以及 TRL 的 Full Surround Monodepth. 这些成果,都来源于VisLab 十多年的立体视觉研究积累。

ForeSight

  • ForeSight 分享过他们的异构双目系统,我曾经去常州实车体验过:
  • 前向 120 度和 bumper 200 度广角实现的双目 (类似于 TW-SMNet)
  • 车顶的 30 度 RGB 双目
  • 车顶的 IR 红外双目
  • 这块可以参考:
  • iPhone 15 上的空间视频拍摄 / Tele
  • GitHub - ComVisDinh/disparityestimation: Deep Network Exploitation for Disparity Estimation Using Stereo Images with Different Focal Lengths
  • 视角不平衡立体匹配研究-CSDN博客

蔚来/理想

  • 蔚来/理想的两个 front side 相机 FOV overlap 较小,非光心对齐同构。也不是不能做双目,但可能效果较差。

智加/Plus

在 Plus 创业伊始 16-18 间的 stereo demo

无论是 2021 年量产交付的解放 J7+, 还是 2023 年的江淮 K7+、2024 年的柳汽 H7+,长基线双目都是我们最核心的模块。多年前,我们曾发布过 1km 以上的目标感知结果,但那是基于 L4 状态下的超宽基线(双目布置在车侧, 2.8m 基线)。在 L2+ 量产平台下,我们需要将双目摄像头放在挡风玻璃内,能够被雨刮覆盖,并满足法规和稳定性要求。

在感知架构上,最早期,感知方案主要还是 2D 检测为主,通过 2D 检测去抠深度图,或者通过接地点等几何先验去测距。渐渐的,有了很多 Mono3D 检测,Stereo3D 检测的工作。最后,收敛到 BEV 前融合 3D 检测,甚至全稀疏的 Sparse BEV. 但不管何时,在前向远距离感知上,双目都能够持续提升感知的整体上限。例如,我们做过不少事情去探索双目的价值:

第一件事是,通过 SGM/optical flow 这些底层特征,识别非标/超宽障碍物。但实践下来,很难简单地与 3D 表达兼容。我们渐渐地发现,相较于2D 视角,BEV/Occupancy 是一个更优雅的框架去解决这些难题。逻辑上还是相似的,BEV/Occ 仍然需要去表达、解释这些稠密的底层特征和时序特征。

通过稠密深度图去避让超宽车

通过光流 motion seg 去识别障碍物

第二件事是,仅对 bbox 内的点去做 match,相同精度下仅有 1/2 latency,并能提升远处 recall. 即使在夜晚,我们也能有 300m 的稳定 trakcing.

第三件事是,在高分辨图下,动态裁剪 2M 原图,通过一个额外的 2D 检测器以及稀疏匹配,实现远距离小目标 2倍 tracking 性能的提升 (cone, 80m->160m), 整体感知 tracking 距离从 300m+ 到近 400m.

第四件事是,实现长焦双目。效果显而易见, Z=fb/d. 焦距 f 的提升能够简单而有效地提升远处距离性能。但简单替换相机,会造成前向盲区过大的问题。在框架上,需要通过广角相机去做车道线等模块。有一定的系统迁移成本。

总结

无论是图森的 LiDAR-centeric 方案,还是智加的 Stereo-centeric, 核心本质还是提升远距离 tracking 的稳定性。就好像 @王峰 提到的 “对于远距离感知的探索不能说是一帆风顺,简直就是满路荆棘。”

上面这些工作,都是在 Xavier 低算力平台下循序渐进的思考和实践。在 Orin 平台下,我们已经渐渐地过渡到视觉 BEV 3D 框架。但正如图森的分享,在卡车领域里,数以亿计的 2D 数据仍然在和 3D 需求互相融合,继续完善。

后续的实践,是将高分辨率 RoI 双目集成到 BEV 框架中。当有充沛的远距离 GT 数据时,不管是 dense-bev 还是 sparse query bev,都能看得更远更稳。等待合适时机再跟大家分享 :-P

最后也是最重要的,要感谢智加/Plus 的同事们 (Tim, Mianwei, Darren, Philip, Andy, Tong, Peidong, Xingjian, Fuyue, Xuyang),我只是起到了个承上启下的作用 。

原文链接:https://mp.weixin.qq.com/s/KxUjgdzO_i2obsdeY0OEJw

责任编辑:张燕妮 来源: 自动驾驶之心
相关推荐

2024-02-02 09:47:31

自动驾驶感知

2021-06-30 07:19:35

微服务业务MySQL

2024-11-04 09:00:00

Java开发

2023-09-29 08:58:38

2023-08-14 08:38:26

反射reflect结构体

2017-07-18 16:14:06

FileProvideAndroidStrictMode

2021-08-26 09:31:40

Nacos配置注册

2023-03-13 09:07:02

2024-02-06 08:58:23

开源项目my-tv

2023-07-06 13:56:14

微软Skype

2020-09-08 06:54:29

Java Gradle语言

2023-09-22 17:36:37

2021-01-28 22:31:33

分组密码算法

2020-05-22 08:16:07

PONGPONXG-PON

2021-03-11 08:55:47

JavaUser对象

2018-06-07 13:17:12

契约测试单元测试API测试

2021-08-01 09:55:57

Netty时间轮中间件

2023-09-27 16:39:38

2024-10-28 21:02:36

消息框应用程序

2016-01-15 09:51:27

AngularJS实际应用
点赞
收藏

51CTO技术栈公众号