创事记|为什么“自动驾驶”看不见停着的车?


欢迎关注“新浪科技”的微信订阅号:techsina
文/Hooknows
来源:十一车
终于 , 所谓的“自动驾驶”问题引起了所有人的重视 , 尽管代价是(又)一条生命 。
如今广泛应用的所谓“自动驾驶” , 实际上无一例外皆属于(SAE自动驾驶分级下的)Level 2级别 , 而Level 2级系统完完全全不能对行车安全做任何程度的担保——这本应让每一个汽车消费者作为常识的常识 , 却在从车企到消费者整体的浮躁和默许之下 , 直到最近一位蔚来车主不幸丧命才终于获得了“传播正确” 。
很难说这不是我们所有人的悲哀 。
关于此次事故的具体原因 , 目前警方还在调查中 , 我们且不发表什么评论 。 但有个细节可能很多人都不知道 , 在蔚来ES8的车主手册中 , 有一条清晰明确的警告:“如前车静止或缓行 , Pilot存在无法刹停的风险 。 ”
无独有偶的是 , 几乎同一时间 , 美国国家公路交通安全管理局(NHTSA)宣布 , 由于发生多起特斯拉汽车与停放的紧急车辆相撞的事故 , 该局已经开始对特斯拉的Autopilot自动辅助驾驶系统展开正式调查 , 涉及2014年以来的76.5万辆特斯拉汽车 , 调查中确定的事故已造成了1人死亡、17人受伤 。
【创事记|为什么“自动驾驶”看不见停着的车?】这或许是一个机会 , 一个让大家从自动驾驶大跃进中平静下来 , 好好理一理所谓的“自动驾驶”——高级驾驶辅助系统一些基本原理的机会 。 放在以前 , 认真解释“自动驾驶”为什么会撞上静止车辆 , 大概只会被打成反智能化而行的保守顽固分子 。
多普勒的静止陷阱
静止不动的目标 , 为什么反而是驾驶辅助系统的弱点?这其实是一个很基础很基础的话题 , 并不涉及任何自动驾驶(这里指真的自动驾驶)高阶知识 。
自动驾驶的最初阶段和幼年形态 , 是ACC自适应巡航系统 。 而ACC诞生之初 , 借助的就是车载毫米波雷达 , 这个配置在今天应该不稀罕了 。 雷达大家都知道:天线发射出无线电波 , 碰到障碍物就会反弹回来 , 依照光速计算一下时间差 , 你就得到了障碍物的距离 。
但要用在汽车上 , 用于自动驾驶或驾驶辅助系统 , 我们不止要知道前方有没有车辆/障碍物 , 要知道前方车辆的距离 , 还得知道前方车辆的速度 。 同样100米处 , 一辆静止的车与一辆和我们同速同向的车 , 意义显然截然不同 。
普通的雷达 , 要想知道物体的速度 , 要靠发射两次回波再接受两次回波 , 用物体两次时间移动的距离估算速度 。 比如上一秒雷达测得物体离我们1米 , 这一秒雷达测得物体离我们1.05米 , 于是我们只能估计它的速度是:秒速五厘米 。
这显然很不精确 , 也必然会有滞后 , 速度并不是实时得到的 。 用于航海之类的大场景通常足够 , 但对于汽车自动驾驶而言就太粗糙了 , 用今天的互联网黑话讲可以叫“颗粒度不够” 。
直到20世纪的人们想起了18世纪著名大闲人多普勒先生的发现 , 多普勒效应 。 这个多普勒效应你可以这么理解:接近我们的物体和远离我们的物体 , 反射回来的电磁波波长和频率 , 和与我们相对静止的物体比起来会有所变化 。
测得变化方向和变化的值 , 我们就能得到物体接近/远离我们的相对速度 。 因为我们自己的速度通常很容易得到 , 简单计算即可得到对面物体运动的绝对速度 。
重要的是 , 通过多普勒原理测得速度可以认为是实时的 , 不像以往那样要测两次然后距离除以时间才得到 , 更精确且没有延迟 。 对于汽车自动驾驶和驾驶辅助系统而言 , 实时速度感知这个特点再适合不过了 。 今天我们熟悉的车载毫米波雷达 , 就是利用多普勒原理获取路上车辆的速度信息(当然也有方位和距离信息) 。
但多普勒雷达也有自己的问题 。
其实不光是路上行驶着的车辆有回波 , 静止不动的栏杆路牌大树路灯电线杆等等也都有回波 。 多普勒雷达之所以能“认出”行驶的车辆 , 是因为它将静止物体的回波通通视为了“背景” 。 而行驶中的车辆 , 相对于静止的地面等背景是有速度的 , 于是它们就“脱颖而出” 。
这就造成了一种可能:如果是一辆停下来静止不动的车 , 会不会就混入了“背景”之中?所以包括此次事故车蔚来ES8在内 , 许多使用了毫米波雷达作为ACC传感器的品牌 , 才会在车主手册中加入这么一条:如前车静止或缓行 , xxx存在无法刹停的风险 。
其实不光是汽车自动驾驶 , 这个问题甚至在军事领域也一样存在 。
军用飞机希望躲过多普勒雷达的追捕 , 有一种常用的方法叫做“39机动” , “39”代表3点钟方向到9点钟方向 , 即横过来垂直于对方雷达飞行 。 这时在雷达的主要探测方向上 , 飞机的相对速度与地面背景是一样的 , 也就有可能偷摸儿从多普勒雷达的追踪下溜走 。
毫米波or视觉识别
在汽车领域 , 毫米波雷达借助多普勒效应识别出正在行驶的车辆(他们的位置和速度) , 而对于静止的物体则需要加以甄别:它究竟是不该出现的障碍物 , 还是路面背景的一部分?
这并不是一件容易的事 , 因为在雷达眼里 , 世界并不是(我们想象中的)这样:
而是这样:
现在已经应用的车载毫米波雷达 , 基本都不具备将探测到的物体具象化的能力 , 并且都无法识别高度坐标 。 也就是说同样在路中间但横跨在路上方的路牌 , 和真正停在路中间的车辆 , 在雷达眼里是不容易区分的 。 为了防止识别错误导致的频繁紧急制动等情况 , 毫米波雷达通常干脆放弃了对静止和低速物体的探测 , 而将这些任务交给视觉识别系统 。
配备毫米波雷达的高级辅助驾驶系统 , 基本都同时拥有视觉识别(摄像头) 。 但视觉识别眼下还完全不具备100%的识别可靠性:摄像头可能被遮挡沾污 , 取决于各家算法的覆盖程度不同 , 可能无法识别所有出现在路上的物体(比如工程车) 。
视觉识别高度依赖机器学习的积累 , 和最终得到的识别算法 , 虽然识别能力一直在提高 , 但眼下总会有一些情况尚未覆盖到的 。 同时视觉识别也容易受到外界条件的干扰 , 天气、尘土等等都会影响使用效果 。
说到底 , 就是目前、市面上、任何已经投入使用的“自动驾驶”功能 , 都完全没有信心敢打包票说自己能应对可能出现在路上的任何状况 。 这压根就不是一个技术问题——否则Level 2就不会被定义为“需要驾驶员始终保持注意力”;这是一个纯粹的使用和宣传问题 , 一个“为什么全行业都在将辅助驾驶强行渲染成‘自动驾驶’”的问题 。
(声明:本文仅代表作者观点 , 不代表新浪网立场 。 )

    推荐阅读