鱼羊 发自 凹非寺
量子位 报道 | 公众号 QbitAI

疫情当下,Waymo等自动驾驶厂商暂时不能在现实世界的公共道路上进行训练、测试了。

不过,工程师们还可以在GTA,啊不,在仿真环境里接着跑车。

模拟环境里的场景、对象、传感器反馈通常是用虚幻引擎或者Unity这样的游戏引擎来创建的。

为了实现逼真的激光雷达等传感器建模,就需要大量的手动操作,想要获得足够多、足够复杂的数据,可得多费不少功夫。

数据不够,无人车标杆Waymo决定用GAN来凑。

这只GAN,名叫SurfelGAN,能基于无人车收集到的有限的激光雷达和摄像头数据,生成逼真的相机图像。

用GAN生成的数据训练,还是训练自动驾驶汽车,这到底靠谱不靠谱?

SurfelGAN

那么首先,一起来看看SurfelGAN是怎样炼成的。

主要有两个步骤:

首先,扫描目标环境,重建一个由大量有纹理的表面元素(Surfel)构成的场景。

然后,用相机轨迹对表面元素进行渲染,同时进行语义和实例分割。接着,通过GAN生成逼真的相机图像。

表面元素场景重建

为了忠实保留传感器信息,同时在计算和存储方面保持高效,研究人员提出了纹理增强表面元素地图表示方法

表面元素(surface element,缩写Surfel)适用于动态几何建模,一个对象由一组密集的点或带有光照信息的面元来表示。

研究人员将激光雷达扫描捕获的体素,转换为具有颜色的表面元素,并使其离散成 k×k 的网格。

由于光照条件的不同和相机相对姿势(距离和视角)的变化,每个表面元素在不同的帧中可能会有不同的外观,研究人员提出,通过创建一个由 n 个不同距离的 k×k 网格组成的编码簿,来增强表面元素表示。

在渲染阶段,该方法根据相机姿势来决定使用哪一个 k×k 块。

图中第二行,即为该方法的最终渲染效果。可以看到,与第一行基线方法相比,纹理增强表面元素图消除了很多伪影,更接近于第三行中的真实图像。

为了处理诸如车辆之类的动态对象,SurfelGAN还采用了Waymo开放数据集中的注释。来自目标对象的激光雷达扫描的数据会被积累下来,这样,在模拟环境中,就可以在任意位置完成车辆、行人的重建。

通过SurfelGAN合成图像

完成上面的步骤,模拟场景仍存在几何形状和纹理不完美的问题。

这时候,GAN模块就上场了。

训练设置了两个对称的编码-解码生成器,从Sufel图像到真实图像的GS→I,以及反过来从真实图像到Sufel图像的GI→S。同样也有两个判别器,分别针对Sufel域和真实域。

上图中,绿色的线代表有监督重建损失,红色的线代表对抗损失,蓝线/黄线为周期一致性损失。

输入数据包括配对数据和未配对数据。其中,未配对数据用来实现两个目的:

  • 提高判别器的泛化性能;

  • 通过强制循环一致性来规范生成器。

另外,由于表面元素图像的覆盖范围有限,渲染出的图像中包含了大面积的未知区域,并且,相机和表面元素之间的距离也引入了另一个不确定因素,研究人员采用了距离加权损失来稳定GAN的训练。

具体而言,在数据预处理过程中,先生成一个距离图,然后利用距离信息作为加权稀疏,对重构损失进行调节。

实验结果

最后,效果如何,还是要看看实验结果。

研究人员们基于Waymo Open Dataset(WOD)进行了实验。该数据集包括798个训练序列,和202个验证序列。每个序列包含20秒的摄像头数据和激光雷达数据。此外,还包括WOD中真的对车辆、行人的注释。

他们还从WOD中衍生出了一个新的数据集——Waymo Open Dataset-Novel View。在这个数据集中,根据相机扰动姿势,研究人员为原始数据集里的每一帧创建了新的表面元素渲染。

此外,还有9800个100帧短序列,用于真实图像的无配对训练。以及双摄像头-姿势数据集(DCP),用于测试模型的真实性。

可以看到,在检测器的鉴定下,SurfelGAN生成的最高质量图像将AP@50从52.1%拉升到了62.0%,与真实图像的61.9%持平。

Waymo认为,这样的结果为将来的动态对象建模和视频生成模拟系统奠定了坚实的基础。

华人一作

论文的第一作者,是Waymo的华人实习生Zhenpei Yang,他于2019年6月至8月间在Waymo完成了这项研究。

Zhenpei Yang本科毕业于清华大学自动化系,目前在德州大学奥斯汀分校攻读博士,研究方向是3D视觉和深度学习。

Waymo首席科学家Dragomir Anguelov,也是论文的作者之一。

参考链接

论文:https://arxiv.org/abs/2005.03844
VB报道:https://venturebeat.com/2020/05/20/waymo-is-using-ai-to-simulate-autonomous-vehicle-camera-data/

作者系网易新闻·网易号“各有态度”签约作者

「数据库」系列公开课开启,快来免费报名!

6月17号第一期直播,腾讯云数据库副总经理--王义成将全面剖析全球数据库的发展历程,分享如何将云计算、新基建、数据库的能力进行融合创新。此外还将结合实际金融案例,详细介绍腾讯云自研国产数据库TDSQL和TBase的产品核心架构和最佳实践。

之后的课程中,来自浪潮、蚂蚁集团的数据库业务负责人也将带来精彩分享,干货满满,全程免费参与,欢迎扫码报名~

量子位 QbitAI · 头条号签约作者

վ'ᴗ' ի 追踪AI技术和产品新动态

喜欢就点「在看」吧 !

数据不够,Waymo用GAN来凑:生成逼真相机图像,在仿真环境中训练无人车模型...相关推荐

  1. Waymo的试验乘客终于发声了, 这还是你们想象中的无人车吗?

    自从特斯拉推出了半自动驾驶的功能,就已经改变了部分人的出行习惯.比如: 边开车边睡觉..... 边开车边跷着二郎腿玩手机..... 或者边开车边钓鱼.....? 那么,乘坐完全自动驾驶的无人车在公路上 ...

  2. 数据不够,用GAN来凑!

    作者 | CV君 来源 | 我爱计算机视觉(ID:aicvml) 在计算机视觉领域,深度学习方法已全方位在各个方向获得突破,这从近几年CVPR 的论文即可看出. 但这往往需要大量的标注数据,比如最著明 ...

  3. java redis 生成唯一id_Redis在集群环境中生成唯一ID

    概述 设计目标:每秒最大生成10万个ID,ID单调递增且唯一.Reidis可以不需要持久化ID. 要求:集群时钟不能倒退. 总体思路:集群中每个节点预生成生成ID:然后与redis的已经存在的ID做比 ...

  4. 首篇BEV感知生成工作!BEVGen:从鸟瞰图布局生成环视街景图像

    摘要 鸟瞰图(BEV)感知近年来受到越来越多的关注,因为它提供了跨视图的简洁和统一的空间表示,并有利于多种下游驾驶应用.虽然重点放在区分性任务上,如BEV分割,但从BEV视角生成街景图像的双重生成任务 ...

  5. 超过AttGAN,谷歌推出生成文本到图像的新框架 TReCS

    谷歌研究人员推出新框架 TRECS,生成的图像更逼真,更符合文字的描述. 近年来,基于生成对抗性网络(GAN)的深层神经网络已经大幅提高了端到端可训练的照片式文本到图像的生成结果.许多方法也使用中间场 ...

  6. 高糊图片可以做什么?Goodfellow等人用它生成一组合理图像

    本文转载自机器之心. 选自arXiv 作者:David Berthelot.Peyman Milanfar.Ian Goodfellow 机器之心编译 参与:魔王.小舟 给出一张低分辨率图像,你可以用 ...

  7. 对于一组给定的叶子结点_高糊图片可以做什么?Goodfellow等人用它生成一组合理图像...

    选自arXiv 作者:David Berthelot.Peyman Milanfar.Ian Goodfellow 机器之心编译 参与:魔王.小舟 给出一张低分辨率图像,你可以用它做什么,用机器学习方 ...

  8. 王炸!Waymo正式官宣无人车出行平台,瑟瑟发抖的不止Uber

    唐旭 发自 凹非寺  量子位 报道 | 公众号 QbitAI 任何一点喘息机会,谷歌都不打算给Uber. 就在上周,Waymo和Uber间的无人车大案以迅雷不及掩耳盗铃之势闪电完结(链接).Uber以 ...

  9. 科技巨头竞速无人车落地:Waymo One 向左,百度Robotaxi向右

    自动驾驶距离走入普通民众的生活又近了一步. 9月26日,百度旗下的自动驾驶服务Robotaxi在长沙正式开启载人试运营.Robotaxi跟此前一些自动驾驶公司面向市民的"体验式"开 ...

最新文章

  1. golang 字符串排序_Golang操作数据库Redis
  2. 11、集合--Set接口
  3. 无法加载文件 C:/Windows/Microsoft.NET/Framework/Meaningless_string/mscorlib.tlb
  4. 如何保障一场千万级大型直播?
  5. Spring IOC 容器根据Bean 名称或者类型进行autowiring 自动依赖注入
  6. 《C++ Primer》7.3.3节练习
  7. c语言小游戏 贴吧,【图片】C语言小游戏~贪吃蛇【c语言吧】_百度贴吧
  8. Ubuntu18.04修改主机名和用户名
  9. android view moveto,android – cursor.moveToPosition(i)的速度有多快?
  10. JavaScript调试技巧之console.log()详解
  11. Python max函数中key的用法
  12. manjaro linux vmware,Manjaro Linux处理vmware的vmmon、vmnet8、Network configuration is missing一堆问题的记录...
  13. 一地鸡毛——软件项目中的人际困局
  14. C# F23.StringSimilarity库 字符串重复度、文本相似度、防抄袭
  15. 2022年自考专业考试(英语)英语翻译练习题
  16. C#从入门到精通学习笔记——(2)
  17. 微信多开txt_微信多开技巧,拿去不用谢我!
  18. PPT:基于5G的智慧仓储解决方案
  19. 微信公众号本地调试方法
  20. 图的介绍和邻接矩阵、邻接表的创建(以有向图为例)

热门文章

  1. 实用PS技巧分享,送给初入职场的你
  2. Windows计算机管理打不开提示程序未关联解决办法
  3. 软考上午题难点5分钟攻克系列(十)
  4. 贵州省新农合业务系统容灾技术支撑服务项目
  5. Autodesk MapGuide Enterprise 2011 Update 1 for Windows发布了
  6. 优化Hadoop Balancer运行速度
  7. POJ - 2549 Sumsets
  8. sql注入之order by猜列数问题
  9. Nginx 的启动、停止、平滑重启、信号控制和平滑升级
  10. Java关键字介绍之final