文 / Google 软件工程师 Mike Krainin、机器感知研究员 Ce Liu

2007 年,我们推出了 Google 街景,它让您可以从自己的浏览器或移动设备通过街区、地标和博物馆等的全景图探索世界。这些全景图的创建是一个复杂的过程,其中涉及从一个名为 Rosette 的多摄像头平台捕获图像,然后使用图像混合技术将这些图像小心拼接起来。

不过,许多因素都可能阻碍创建一个“成功的”全景图,例如 Rosette 摄像头几何的校准误差、相邻摄像头的计时差异和视差。尽管我们使用近似场景几何考虑视差和进行频繁的摄像头重新校准来尝试解决这些问题,图像重叠区域仍可能存在明显的接缝。

▲ 左侧:一台携带包含多个摄像头的 Rosette 的街景车。中间:Rosette 特写,包含 15 个摄像头。右侧:每个摄像头空间覆盖的可视化。相邻摄像头间的重叠用深灰色显示

▲ 左侧:悉尼歌剧院,其标志性白帆边缘存在拼接接缝。右侧:进行光流接缝修复后的同一个街景全景图

为了提供更加无缝的街景图像,我们基于光流开发了一种新的算法来帮助应对这些挑战。思路是轻微翘曲每一个输入图像,让图像内容在重叠区域内对齐。这需要小心操作,以免引入新类型的视觉伪影。方法还必须对不断变化的场景几何、光照条件、校准质量和许多其他条件表现出可靠性。为了简化对齐图像的任务和满足计算要求,我们将过程分成两步。

光流

第一步是为重叠的每对图像找到对应的像素位置。利用照片扫描仪文章中介绍的技术,我们计算从一个图像到另一个图像的光流。这样会产生平滑、密集的对应场。然后,为了保证计算效率,我们减少了对应采样。我们还舍弃了没有足够的视觉结构来保证光流结果可信度的对应。

▲ 来自 Rosette 摄像头平台、需要拼接起来的一对组成图像的边界

▲ 该对图像中的提取对应。对于左侧图像重叠区域中的每一个彩色点,右侧图像中都有对应的彩色点,这表明光流算法已将该点对齐。这些对应点对用作全局优化阶段的输入。请注意,重叠仅占每个图像很少的一部分

全局优化

第二步是翘曲 Rosette 的图像,同时将重叠区域中的所有对应点(如上图所示)对齐。拼合到全景图中时,翘曲图像集随后将正确对齐。这一步困难重重,因为重叠区域仅占每个图像很少的一部分,约束不足的问题随之出现。为了在整个图像上生成视觉美观的结果,我们通过空间正则化用公式将翘曲表示为样条式流场。样条参数使用 Google 的开放源代码 Ceres Solver 在非线性优化中求解。

我们的方法与 Shum 和 Szeliski 研究全景图“去伪影”的已发表论文有很多相似之处。主要不同在于,我们的方法可以估计密集、平滑的对应(而不是分片、独立的对应),我们可以求解非线性优化来进行最终翘曲。因此,与基于内核的方法相比,行为更加良好的翘曲引入新的视觉伪影的可能性要低。

▲ 左侧:未修复全景图的特写。中间:基于内核的内插的结果。这种方法可以修复不连续性,但是,由于图像重叠小和内核的大小有限,这样会产生强烈的摆动伪影。右侧:我们的全局优化的结果

这很重要,因为我们的算法需要对街景数十亿全景图中内容的多样性表现出可靠性。您可以在以下示例中看到这种算法的有效性:

▲ 伦敦塔桥

▲ 里约热内卢基督像

▲ 西雅图街道上的一辆 SUV

这种新算法最近已添加到街景的拼接流程中。现在,我们正使用它持续重新拼接现有的全景图。请留意您身边改进的街景!

查看全文及文中链接,请戳文末“阅读原文”。

Google是如何提供“无缝”的街景全景图的?相关推荐

  1. 【错误记录】Google Play 上架报错 ( 此版本不符合 Google Play 关于提供 64 位版本应用的要求 )

    文章目录 一.报错信息 二.解决方案 一.报错信息 在 Google Play 中 , 管理并创建内部测试版本 , 上传完毕后 , 检查版本时 , 出现如下错误 ; 此版本不符合 Google Pla ...

  2. Google 联合美国专利局提供海量专利和商标数据下载

    Google与美国专利局于周三宣布了新的和做项目,在Google Patents里提供海量专利和商标数据免费下载,Google提供了将近10TB的空间(1TB=1024GB)来保存这些可直接下载的zi ...

  3. 蘑菇车联召开战略发布会 为用户提供无缝衔接的“人车生活”

    若干年前,就有企业提出"人.车.生活"的关系图,当时,人们已经清晰地意识到那些独立的个体终将融为一个整体.而整个行业要做的就是去掉彼此之间那若有若无的"顿号" ...

  4. websphere使用_使用WebSphere sMash为Google小工具提供动力

    websphere使用 存档日期:2019年5月16日 | 首次发布:2008年6月4日 IBM®WebSphere®sMash提供了多种方法来共享Web 2.0应用程序中的信息. 本文介绍了如何从头 ...

  5. 关于通过PHPMailer 用Google企业邮箱 提供邮件服务 资料转载

    设置ecshop2.5邮件服务器所用到的资料 Submitted by engyy on 2008, January 30, 5:48 PM 1.http://mail.google.com/supp ...

  6. openstack vlan配置_为OpenStack和K8s集群提供无缝虚拟网络

    在数据中心里,同时拥有OpenStack和Kubernetes集群的情况正变得越来越普遍. 一边是由OpenStack管理的虚拟机,另一边是由K8s控制的容器化工作负载.现实情况下,可能会发生虚拟机和 ...

  7. 百度新闻 谷歌新闻_每日新闻摘要:到目前为止,Google I / O提供的最佳信息

    百度新闻 谷歌新闻 Google's yearly developer conference started yesterday, and the keynote was chock-full of ...

  8. Unity导出64位apk,及此版本不符合Google Play关于提供64位版本应用的规定

    今天早上更新版本的时候遇见了这样的问题,在网上查了给大家分享出来. 1.Unity build setting 中other setting 将scripting Backing 修改为IL2CPP: ...

  9. Google受隐私问题困扰 或放弃欧洲版街景服务

    北京时间3月3日消息,据国外媒体报道,如果欧盟隐私保护监管机构将照片保存时间由12个月缩短至6个月,Google将不再在欧洲提供街景(Street View)服务. Google高管.Google E ...

最新文章

  1. 8)排序④排序算法之归并排序
  2. saltstack 执行结果返回到mysql
  3. 脚手架koa2+mockjs
  4. 分布式ID生成器(来源:架构师之路,2017-06-25 58沈剑 架构师之路)
  5. rds基于什么开发_元王RDS--让H公司的10多年的设计经验重获新生!
  6. taz文件_我们将赠送LulzBot Taz 6 3D打印机
  7. 95-10-200-启动-结尾
  8. 手机版python3.8.1下载_python3.8.1汉化版
  9. 寻路算法 --- A星寻路算法
  10. 485通讯的校验和_案例丨MCGS与变频器、温度控制器进行通讯演示
  11. ImageIO 先read再write 文件变小了
  12. Google SEO入门教程,技术 SEO 简介
  13. JS数字区间比较大小的写法
  14. 网络舆情如何有效预警的方式方法详解
  15. 简进祥==iOS 3DES加密解密
  16. 前端vue+element ie兼容性问题
  17. Ubuntu配置清华源
  18. 成就你一生的100个哲理81-90
  19. 口袋云台拆机微型防抖云台硬件结构解析拆机硬件结构开源云台svpwm控制simple云台storm防抖原理陀螺仪多旋翼吊舱飞控无刷电机FOC
  20. IHE放射技术框架中的部门业务流程

热门文章

  1. 【离散】如何利用顶点数求树叶或知树叶求顶点
  2. 转自蒋宇(MTK WAP和MMS网络服务配置 )
  3. 宝藏网站!机器学习概念可视化;LeetCode面试必看清单;104个Python数据科学实战项目;必应超清壁纸;前沿论文 | ShowMeAI资讯日报
  4. vue 实现快捷键录入功能
  5. 互联网数据标注员是做什么的?有什么发展前途吗?
  6. 一文带你了解s2i的原理使用,快速构建镜像
  7. JavaWeb-学生宿舍管理系统
  8. js之焦点图轮播特效
  9. “注水”的新力与“错付”的陈凯
  10. 微信小程序中将图片与音乐制作成MV