【环球报资讯】使用深度学习和众包重建历史街景
来源:雨夜的博客     时间:2023-02-02 20:16:46

对于许多人来说,凝视城市的旧照片会唤起怀旧和好奇的感觉——在 1940 年代穿过曼哈顿是什么感觉?长大的街道发生了多大的变化?虽然谷歌街景可以让人们看到一个地区在今天的样子,但如果你想探索地方在过去的样子怎么办?


(资料图片)

为了为研究和娱乐目的创造有益的“时间旅行”体验,我们推出了一个名为rǝ(发音为 re“ turn ”)的基于浏览器的工具集 ,这是一个在Google Cloud和Kubernetes上运行的开源、可扩展的系统,可以重建来自历史地图和照片的城市,它代表了我们今年早些时候推出的开源工具套件的实现。再次或重新引用通用前缀含义,rǝ旨在代表重建、研究、娱乐和的主题。记住这项众包研究工作的背后,包括三个部分:

一个众包平台,允许用户上传城市的历史地图、地理校正(即,将它们与现实世界坐标相匹配)并对其进行矢量化

时间地图服务器,显示城市地图如何随时间变化

一个 3D 体验平台,运行在rǝ地图服务器之上,通过使用深度学习从有限的历史图像和地图数据中重建 3D 建筑物来创建 3D 体验。

我们的目标是让rǝ成为一个纲要,让历史爱好者能够虚拟体验世界各地的历史城市,帮助研究人员、政策制定者和教育者,并为日常用户提供一剂怀旧情怀。

来自历史地图的众包数据

重建城市过去如何看待规模是一项挑战——历史图像数据比现代数据更难处理,因为可用图像少得多,从图像中捕获的元数据也少得多。为了解决这个难题,rǝ地图模块是一套开源工具,它们协同工作以创建具有时间维度的地图服务器,允许用户使用滑块在时间段之间来回跳转。这些工具允许用户上传历史印刷地图的扫描件,对其进行地理校正以匹配现实世界坐标,然后通过跟踪其地理特征将其转换为矢量格式。然后将这些矢量化地图提供给切片服务器并呈现为滑动地图,它允许用户放大和平移。

rǝ地图模块 的入口点是Warper,这是一个 Web 应用程序,允许用户上传地图的历史图像并通过在历史地图上查找控制点和底图上的对应点来对其进行地理校正。下一个应用程序Editor允许用户加载经过地理校正的历史地图作为背景,然后跟踪其地理特征(例如,建筑物足迹、道路等)。此跟踪数据以OpenStreetMap (OSM) 矢量格式存储。然后将它们转换为矢量切片并从服务器应用程序(矢量切片服务器)提供服务。最后,我们的地图渲染器Kartta,可视化时空矢量切片,允许用户在历史地图上导航空间和时间。这些工具建立在包括 OpenStreetMap 在内的众多开源资源之上,我们希望我们的工具和数据也完全开源。

3D体验

的3D模型模块旨在重建历史建筑的使用相关的图像详细完整的三维结构和地图数据,在一个存储库正常组织这些3D模型,并使其在与时间维度的历史地图。

在许多情况下,建筑物只有一个历史图像可用,这使得 3D 重建成为一个极具挑战性的问题。为了应对这一挑战,我们开发了一种从粗到细的逐个识别重构算法。

从地图上的足迹和历史图像中的立面区域(两者都通过众包进行注释或通过自动算法检测)开始,向上挤压一个输入建筑物的足迹以生成其粗略的 3D 结构。此拉伸的高度设置为地图数据库中相应元数据的楼层数。

同时,3D 重建管道不是直接将每个立面的详细 3D 结构推断为一个实体,而是识别所有单独的组成组件(例如,窗户、入口、楼梯等)并根据它们的类别分别重建它们的 3D 结构。然后将这些详细的 3D 结构与粗略的结构合并以形成最终的 3D 网格。结果存储在 3D 存储库中并准备进行 3D 渲染。

支持此功能的关键技术是许多最先进的深度学习模型:

使用每个目标语义类(例如,窗口、条目、楼梯等)的外观组件注释训练更快的基于区域的卷积神经网络(RCNN),这些注释用于定位历史图像中的边界框级别实例。

DeepLab是一种语义分割模型,经过训练可以为每个语义类提供像素级标签。

专门设计的神经网络经过训练,可以在同一语义类中执行高级规律。这确保了在立面上生成的窗户等距且形状一致。这也促进了不同语义类别(例如楼梯)的一致性,以确保它们放置在合理的位置,并且相对于相关的入口方式具有一致的尺寸。

主要结果

结论

使用rǝ,我们开发了促进众包的工具,以解决重建虚拟城市时历史数据不足的主要挑战。3D 体验仍在进行中,我们的目标是通过未来的更新来改进它。我们希望rǝ成为活跃的爱好者和临时用户社区的纽带,他们不仅利用我们的历史数据集和开源代码,而且积极为两者做出贡献。

标签: