谷歌行人检测系统:给无人驾驶车减减负
扫描二维码
随时随地手机看文章
“我就看看,我不买”是句彻头彻尾的违心话,可以翻译成“有尖货但钱包瘦”。
比如谷歌那辆圆头圆脑自己会跑的小车车,大概谁都想来一辆,把自己开上阳光(参配、图片、询价)点点的街道。但是车身围绕的各种昂贵传感器,让它无法立刻成为人人可享的出行座驾。尽管私有不是谷歌小车的理想应用场景,但成本也是车辆共享经济和公共服务普及的一道门槛。
驱动谷歌无人驾驶车自如跑动的技术,原本都是私藏的商业机密。不过前不久西雅图IEEE机器人和自动化国际会议(ICRA)上,有人幸运地获知了谷歌正在琢磨的最新行人监测系统。让人欣喜的是,技术手段不仅强化了功能,还降低了成本。
用摄像头代替昂贵传感器
我们都知道,识别、追踪、避开行人是任何企业研发无人驾驶车都要具备的核心技能。谷歌无人驾驶车主要靠雷达、激光雷达和照相机来判断路况,确保车子能识别百米内的行人。但是传感器的电池非常贵,尤其是车顶旋转的激光雷达单元,电池花费近万美金。多单元的配置,价格恐怕还得抬一抬。
相比而言,摄像头就要便宜不少。如果自动驾驶车只需用摄像头就能靠谱定位路人,无人驾驶车快速普及将更进一步。这样一来,车辆“看”路所需标配,就是视频分析系统。
以往最好的视频分析系统会使用深度神经网络技术——机器通过训练后,能极其准确地分辨图像和各种数据,来完成算法学习。利用深度神经网络技术,处理器中的视频分析过程可以分为好几个层次,分别为输入层、输出层,以及两层之间的多个处理层。
图像识别时,输入层会学习一幅图像的像素特点。下一层处理层通过学习把这些特点组合起来,然后通过中间层的层层处理,在像素点和物体间逐步建立更加复杂的关联。最后输出层就会推测出整个系统“看见”了什么。
现代的深度神经网络识别准确率超过99.5%,如果让它和我们来一场比赛,可以跑赢人类大脑。但是视频照相机有他的不足。一位任职于谷歌计算机视觉和机器学习的科学家Anelia Angelova科普道,“视觉信息相比雷达数据,可以给车描摹一个更广阔的视域,但是整个处理过程要慢一些。”因此传统深度神经网络技术在行人检测场景的应用,一直比较缓慢。
整个过程的主要耗时在于,系统要把每一张街景图分成10万或更多的小碎片,然后逐个分析。这样一来,每张图要花费数秒到数分钟的时间。这在要求车辆几秒就能驶出很长距离的城市导航场景下,“慢速”的行人监测就半点用也没有了。不久前的测试中,一辆车用这样深度神经网络技术来识别行人,结果就把人和道具撞了个人仰马翻。
新系统行人监测“三步曲”
上面是一幅谷歌深度学习系统在不同情形下,监测行人的效果图。最新的行人检测系统只靠摄像机影像来掌握行人动向,但是优化了速度问题。系统监测行人的速度更快,分为三步,我们不妨来细细看下识别过程:
第一步还是深度神经网络学习图片像素特点。不同的是,单次进入网络学习的照片只是被“撕”成了几十片,而不是老方法的成千上万块。网络被训练成可在不同场景中多线程作业,挑选出它觉得是行人的图像部分。
第二步是另一项深度神经网络工作——对第一步产生的结果提纯,进一步分析筛选特征数据。
第三步和传统步骤类似,判断是不是行人或是其他障碍,最后输出结果。
看起来步骤并未减少,但是因为每次可分析的碎片变大,且历经筛选过程后,只需重点关注可能有行人的小块图像区域,所以一路走下来要比上面的网络学习快了 60到100倍。谷歌自动驾驶车和街景图采集装置中,如果安装了这个系统,只需要一天的训练时间,车就可以进入状态,在0.25秒左右的时间内准确识别行人。
另外值得一提的是,机器根据图像判断前方内容,是一个现有数据和已有数据比对的过程。以往谷歌自动驾驶车会和以前自己采集到视频中的行人影像作比较,然后再下结论判断。现在,研究人员使用了一个行人图像数据库,让系统比对库中之前网络学习的结果,这样也可省下一些分析时间。
自动驾驶车必须要在瞬时就能判断出眼前的是不是人类,这样才能安全地采取躲避方案。Angelova介绍,虽然还没有达到实际应用中,0.07秒实时反应时间的理想标准,但是这个新系统已经能在其他传感器失灵时,成为有效的替补。
车云小结:
就在车云菌截稿时,又看到了谷歌收购传感器公司Lumedyne的新闻,未来这家公司或许会为无人驾驶车提供产品,替代人们双眼。随着处理器越来越强大,深度网络学习的能力也会越来越强,表现更值得期待。当技术更新且快速应用,可以带来成本下降。车顶旋转激光雷达可能会消失,你我也可以摇下无人驾驶车的车窗,打个招呼。