虚拟街景地图生成方法、装置和客户端设备与流程

文档序号:15257666发布日期:2018-08-24 20:53阅读:593来源:国知局

本发明涉及信息技术领域,特别是涉及一种在基于实景的虚拟街景地图的生成方法、装置、客户端设备、计算设备和存储介质。



背景技术:

随着信息技术的发展与普及,为用户提供基于现实场景的沉浸式体验已成为各方努力的目标。现有技术中,人们例如可以使用谷歌或是百度地图的街景/实景功能来实现视点固定且视角可变的街景图像浏览。另外,针对若干重点城市或区域(例如,上海城区)的3d地图也已商用。图1a和1b示出了现有的地图示例,其中图1a是上海陆家嘴附近的街景地图截图,图1b是陆家嘴地区的3d地图。

但无论是图1a的街景图片还是图1b的现实场景3d化地图,都无法给用户提供灵活且高沉浸度的使用体验。例如,街景地图是基于特定图片拼接算法给出的拼接图片,其本身不具备3维信息且图片由于拼接变形而使得临场感不高。另外,虽然3d地图富于变化,但由于其数据量巨大,在现有的网络和硬件条件下难以在移动端上自由使用。

类似地,现有技术中缺乏对现实场景进行深度融合的应用,因此用户的使用沉浸度并不高。



技术实现要素:

为了解决上述至少一个问题,本发明提出了一种全新的虚拟街景地图拼接方案,其通过对街景图像中目标对象的3维替换,为用户提供了对现实场景的深度融合。上述拼接方法的计算量小,提供的虚拟街景地图临场感强,并且可以根据不同的应用场景和实现级别实现丰富的可变换场景,从而提升了用户的沉浸度、参与度和趣味性。

根据本发明的一个方面,提供了一种虚拟街景地图生成方法,包括:获取地理位置信息;基于所述地理位置信息获取相关联的街景信息和地图信息,其中所述街景信息包括街景图像;识别所述街景图像中的待替换对象;至少部分基于所述地图信息生成所述待替换对象的替换对象;以及使用所述替换对象代替所述街景图像中相应的待替换对象,由此生成所述虚拟街景地图。

由此,通过对街景图像中目标对象的替换,为用户提供了对现实场景的深度融合,提供具有高度真实感和还原性的地图空间。

识别所述街景图像中的待替换对象可以包括:识别所述街景图像中的各类图像对象,所述图像对象的类型可以包括如下的至少一种:道路;建筑物;建筑内景;自然物;植物;交通工具;人。

识别所述街景图像中的待替换对象还可以包括:基于虚拟街景地图生成规则识别所述街景图像中待替换对象、不再显示对象和/或需要变换风格显示的对象。生成所述虚拟街景地图还可以包括:在生成的所述虚拟街景地图中不再显示或变换风格显示相应类型的对象。

由此,根据不同的应用场景和实现级别实现丰富的可变换场景,从而提升用户的沉浸度、参与度和趣味性。

基于所述地理位置信息获取的所述地图信息可以包括:基于所述地理位置信息获取各类地图对象的相关信息,所述相关信息包括平面维度信息和坐标信息,所述地图对象类型包括如下的至少一种:道路、建筑物、建筑内景、自然物;以及并且,基于所述平面维度信息生成所述替换对象。

生成所述替换对象所基于的所述地图对象的相关信息还可以包括:获取待替换对象的高度、立体形状和/或颜色信息;以及使用所述待替换对象的高度、立体形状和/或颜色信息生成所述替换对象,所述替换对象至少部分是3维替换对象。

基于所述地理位置信息获取的所述地图信息可以包括:基于虚拟街景地图生成规则确定要基于所述地理位置信息获取的地图对象类型和相关信息类型。

所述替换对象可以包括3维替换对象,生成所述3维替换对象的空间信息至少部分来自所述地图信息。由于3维对象增加了高度维度,因此方便进行空间定位,从而为后续ar技术的并入使用提供了便利。

获取地理位置信息可以包括:获取客户端的当前地理位置信息或选定的地理位置信息。其中,所述当前地理位置信息可以是基于所述客户端拍摄的现场图像所识别的;和/或所述选定的地理位置信息是基于所述客户端选择的图像所识别的。由此,为生成实景地图提供更为丰富的地图数据。

优选地,可以将所述虚拟街景地图与场景框架相融合以得到虚拟场景。其中,对所述待替换对象的选择和/或所述替换对象的生成可以至少部分基于所述场景框架。

基于所述场景框架,可以向所述虚拟街景地图进行如下至少一项的操作:添加渲染风格;添加额外的对象和/或效果。

由此,可以根据加载的场景框架,来为相同的虚拟街景地图叠加不同的应用场景,丰富本发明实施例的应用范围,进一步提升用户的使用体验。

根据本发明的一个方面,还提供了一种在客户端侧实现的虚拟街景地图生成方法,包括:将地理位置信息发送给服务器;接收与所述服务器查询到的与地理位置信息相关联的相关信息,所述相关信息包括街景图像和对象描述文件,其中所述对象描述文件是所述服务器基于地图对象及其关联信息生成的用于重建所述地图对象的描述文件;识别所述街景图像中的待替换对象;基于对象描述文件生成所述待替换对象的替换对象;以及使用所述替换对象代替所述街景图像中相应的待替换对象,由此生成所述虚拟街景地图。

优选地,可以基于虚拟街景地图生成规则确定要为其生成所述对象描述文件的地图对象、所述对象描述文件中所包括的信息项、所述街景图像中要识别的图像对象。

要识别的图像对象还包括在所述虚拟街景地图中不再显示的对象和/或变换显示的对象。

所述对象描述文件可以包括所述地图对象的坐标和平面维度信息,还可以包括所述地图对象的高度、立体形状和/或颜色信息。

根据本发明的又一方面,还提供了一种在客户端侧实现的虚拟街景地图生成装置,包括:信息发送单元,用于将地理位置信息发送给服务器;信息接收单元,用于接收与所述服务器查询到的与地理位置信息相关联的相关信息,所述相关信息包括街景图像和对象描述文件,其中所述对象描述文件是所述服务器基于地图对象及其关联信息生成的用于重建所述地图对象的描述文件;对象识别单元,用于识别所述街景图像中的待替换对象;对象生成单元,用于基于对象描述文件生成所述待替换对象的替换对象;以及地图生成单元,用于使用所述替换对象代替所述街景图像中相应的待替换对象,由此生成所述虚拟街景地图。

该虚拟街景地图生成装置还可以包括:确定单元,用于基于虚拟街景地图生成规则确定要为其生成所述对象描述文件的地图对象、所述对象描述文件中所包括的信息项、所述街景图像中要识别的图像对象。

要识别的图像对象还可以包括在所述虚拟街景地图中不再显示的对象和/或变换显示的对象。

对象描述文件可以包括所述地图对象的坐标和平面维度信息,还可以包括所述地图对象的高度、立体形状和/或颜色信息。

根据本发明的又一方面,还提供了一种客户端设备,包括:输入输出装置,用于接收输入信息并显示输出信息;存储器,用于存储信息;处理器,连接至所述输入输出装置和所述存储器,并用于如上所述方法显示所述虚拟街景地图并与用户交互。

根据本发明的又一方面,还提供了一种计算设备,包括:处理器;以及存储器,其上存储有可执行代码,当所述可执行代码被所述处理器执行时,使所述处理器执行如上所述的虚拟街景地图生成方法。

根据本发明的又一方面,还提供了一种非暂时性机器可读存储介质,其上存储有可执行代码,当所述可执行代码被电子设备的处理器执行时,使所述处理器执行如上所述的虚拟街景地图生成方法。

由此,本发明通过街景图像中叠加显示3维对象,以相对较小的计算量实现了更强的临场感。另外,由于最终显示的场景灵活可变,进一步提升用户的使用体验。

附图说明

通过结合附图对本公开示例性实施方式进行更详细的描述,本公开的上述以及其它目的、特征和优势将变得更加明显,其中,在本公开示例性实施方式中,相同的参考标号通常代表相同部件。

图1a和1b示出了现有地图的截图示例。

图2是用于实现本发明实施例的环境的示意图。

图3示出了用于实现本发明的服务器与客户端的交互环境示意图。

图4a和4b示出了根据本发明一个实施例的赛车应用场景的例子。

图5示出了根据本发明一个实施例的虚拟街景地图生成方法的流程图。

图6示出了根据本发明一个实施例的客户端侧的虚拟街景地图的生成方法的流程图。

图7示出了根据本发明一个实施例的在客户端侧实现的虚拟街景地图生成装置的示意图。

图8是根据本发明一个实施例的客户端设备。

具体实施方式

下面将参照附图更详细地描述本公开的优选实施方式。虽然附图中显示了本公开的优选实施方式,然而应该理解,可以以各种形式实现本公开而不应被这里阐述的实施方式所限制。相反,提供这些实施方式是为了使本公开更加透彻和完整,并且能够将本公开的范围完整地传达给本领域的技术人员。

随着移动端处理能力的增强和网络质量的全面提升,现有的结合当前地理位置信息的应用由于其使用场景单一、真实性差和/或交互性弱,已经越来越无法满足人们生活、学习和娱乐的丰富需求。有鉴于此,本发明能够基于现有的地图数据,以相对较低的计算和网络要求实现了真实场景和虚拟场景的良好结合,从而为用户提供深度的沉浸式体验。

本发明实施例所提供的互动场景构建和参与方案可应用于如图2所示的环境中。图2是用于实现本发明实施例的环境200的示意图。在一个实施例中,环境200中的客户端10可以经由网络40实现与服务器20的信息收发。服务器20可以通过访问数据库30来获取客户端10所需的内容。在一个实施例中,该数据库30可以是存储有地图信息的地图信息数据库,服务器20则可以通过访问该数据库获取客户端10所请求的地图信息。客户端之间(例如,10_1与10_2或10_n之间)优选可经由网络40彼此通信。网络40可以是广义上的用于信息传递的网络,可以包括一个或多个通信网络,诸如无线通信网络、因特网、私域网、局域网、城域网、广域网或是蜂窝数据网络等。在一个实施例中,网络40也可以包括卫星网络,由此将客户端10的gps信号传送给服务器20。应当注意,如果向图示200中添加或从图示200中去除附加模块,不会改变本发明的示例实施例的底层概念。另外,虽然为了方便说明而在图中示出了从数据库30到服务器20的双向箭头,但本领域技术人员可以理解的上,上述数据的收发也是可以通过网络40实现的。

客户端10优选地是可用来进行网络访问的任何合适的便携式电子设备,包括但不限于智能电话、平板电脑或是其他便携式客户端。在某些实施例中,客户端10也可以是例如台式计算机的非便携式设备。服务器20则是能够通过网络访问的提供交互服务所需信息的任何服务器。图中虽然示出了多个客户端10-1…n以及单个服务器20和数据库30,并且在随后的描述中会选择其中的一个或部分移动终端加以描述(例如,客户端10-1),但是本领域技术人员应该立即的是,上述1…n个客户端旨在表示真实网络中存在的多个终端,示出的单个服务器20和数据库30旨在表示本发明的技术方案涉及服务器及数据库的操作。对特定编号的客户端以及单个服务器和数据库加以详述至少为了说明方便,而非暗示对客户端和服务器的类型或是位置等具有限制。

图3示出了用于实现本发明的服务器与客户端的交互环境示意图。在该交互环境中,包括至少一台服务器s和至少一个客户端a。在包括多人联网交互的优选实施例中,该实现环境包括至少两个客户端。在此,至少一台服务器s可以是图2所示环境中的服务器20,客户端a可以是图2所示的任一客户端10。该服务器s经由网络或其他连接与街景信息服务器相连,以便为客户端a获取其所发送位置的相关信息。

首先,客户端a将某一地理位置信息发送给服务器s。

客户端a发送给服务器s的地理位置信息可以是客户端的当前地理位置信息或是选定的地理位置信息。理论上,发送的地理位置信息可以是客户端a的用户选定的任何地理位置信息。例如,用户可以在地图应用中选定某一坐标,甚至在地图应用的街景模式下选定的特定街景的图像截图,并将相应的信息发送给服务器s。

在另一个实施例中,客户端a发送的可以是其当前地理位置信息。在此,客户端a可以利用lbs(基于位置的服务)来获取其所在的地理位置信息,并例如经由无线通讯网络(例如,4g网络或是wifi)将其发送给服务器s。

基于不同的应用场景下对地理位置信息精度要求的不同,客户端a所需发送的地理位置信息也不同。考虑到智能手机在室外的gps定位精度通常小于10米,因此可以设计基于此精度要求的应用场景。在高精度场景要求下,例如,在真实世界中第一视角跟随模式的应用场景,例如可以要求客户端a的用户额外配备精度在一米以下,甚至几厘米的手持gps设备,该设备可以将极为精确的地理位置信息实时发送给客户端a。在另一种实现中,针对地理位置信息的高精度要求,可以首先要求客户端a例如站在特定位置朝向特定方向或是对准特定目标,以此作为交互动作的基准起点。随后通过客户端a内置的指南针、陀螺仪等再结合lbs服务,实时修正客户端a的位置和朝向。

在又一个实施例中,地理位置信息可以是基于图像识别的。当前地理位置信息可以是基于客户端拍摄的现场图像所识别的,选定的地理位置信息可以是基于客户端选择的图像所识别的。例如,用户可以打开客户端a的摄像头,拍摄眼前某一建筑物的图像,或是其他标志物(例如,大楼名称或牌匾等)的图像,将照片作为地理位置信息上传,服务器可以例如获取例如上传图像自带的位置信息,和/或进一步识别该图像所包含的内容,例如,通过识别出图中的具体建筑物、或是文字等来确定更为详细的地理位置。

随后,服务器s接收客户端a发送的地理位置信息,并例如在图2所示的地图信息数据库30中查询与该地理位置信息相关联的信息。在此,地图信息数据库30中存储的与该地理位置相关联的相关信息可以包括常规的地图信息及街景信息。

地图信息指的是常规地图(例如,二维平面图)包括的各类地图对象的信息。地图对象通常包括道路、建筑物和自然物(例如,江河、湖泊等)。地图信息可以包括各地图对象的平面维度信息和坐标信息,以方便在二维平面地图中正确显示这些地图对象的相对位置和尺寸。在一些实施例中,地图还可以查询建筑物内部的情况,例如,商场各层的商户分布情况。这是,地图对象还可以包括建筑内景,地图信息可以包括这些建筑内景(例如,商户)在其所在楼层的平面维度信息和坐标信息。在一些实施例中,地图信息还可以包括地图对象的进一步信息。例如,地图信息可以包括某些地图对象(例如,建筑物,或是地标物)的高度、立体形状和/或颜色信息等。

在此,街景信息指的是能够显示街道、室内、公共建筑或其他环境的360度的全景实景图像,街景信息由街景图像组成。“街景地图”是一种实景地图服务,例如,用户可以在谷歌地图的街景模式下,或是百度地图的全景模式下查询到的、针对实际景物且视角可变的图像。由于街景地图的原始图像通常是由在特定路面上行驶的采集车辆上安装的可旋转镜头采集的,因此街景地图提供的实景信息通常是以采集车辆安装镜头高度为视线高度、全视角且可移动查询的连续的街景信息。但应该理解的是,虽然被称为“街景信息”,但其实际指代的是视角可变的实景信息,实景可以并且通常是街景,但也可以指代真实“街景”之外的其他环境的实景,例如公共建筑或其内部的实景信息,自然景观的实景信息等。另外,虽然街景地图可以提供全景模式的实景图像,但其全景图像是通过按一定的拼接算法拼接原始采集的街景图像而得到的,因此其仍然是二维图像,且会产生变形,并不能给用户提供一种真实且沉浸的观看体验。

在一个实施例中,服务器s可以直接访问由现有的“街景地图”服务采集并维护的街景信息数据库,例如,直接访问百度或高德地图的街景信息数据库。在其他实施例中,服务器s也可以访问其自行采集、构建并维护的街景信息数据库。这在实现虚拟街景地图的范围有限时尤为使用。例如,可以采集北京故宫的(包括室内外建筑全景的)实景信息数据,构造故宫的街景(实景)数据库,并可由服务器s访问。

基于上述街景信息,可以构建虚拟街景地图。在一个实施例中,虚拟街景地图在服务器端(即,服务器s上)构建,并经由网络发送给客户端a。客户端a直接获取上述虚拟街景地图,并进行显示或后续处理。在另一个实施例中,服务器s可以将街景信息发送给客户端a,并在客户端a完成对虚拟街景地图的构建。在又一个实施例中,服务器s可以完成虚拟街景地图的部分构建,并在客户端a处完成剩余部分的构建。

在再一个实施例中,虚拟街景地图(或其部分)的构建甚至可以在接收到来自客户端a的地理位置信息之前就已经完成。例如,服务器s可以预先存储某些特定地理位置的虚拟街景地图,或是将该虚拟街景地图(或其部分)预先下发至客户端a。当服务器s接收到来自该客户端a的与该特定地理位置相符的地理位置信息时,就直接向客户端a传输该虚拟街景地图或是启用已经下载在客户端a上的虚拟街景地图。这在特定地理位置是被频繁请求或是需要进行商业推广的地点,例如热门景点或是商业活动宣传目标时尤为有效。

由此,由服务器s传送给客户端a的“相关信息”指的是与服务器查询到的与地理位置信息相关联的信息,其可以是前述的地图信息和街景信息本身,可以是基于地图信息和街景信息构建的部分或全部虚拟街景地图,也可以是启用客户端a本机上存储的虚拟街景地图的指令。

在此,“虚拟街景地图”指的是基于实景图像构建的,具有高度真实感和还原性的地图空间。在一个实施例中,“虚拟街景地图”优选可以指代视角可变的、类似于三维实景的地图空间。但不同于需要大量计算的三维建模方法,本发明中的虚拟街景地图可以是根据预定地图算法从接受到的街景信息图片中拼接生成的。由此,能够以可接受的计算代价来提供使用的真实性。在一个实施例中,“虚拟街景地图”可以根据具体应用场景,具有与其相适应的重建水平。例如,在游戏场景中,可以仅根据实景重建道路等主体内容,而忽略其中的实体建筑。在商业推广场景中,重建例如需要包括实体建筑,甚至实体建筑内的具体结构,以便与具体的店铺进行操作。

“虚拟街景地图”可以基于地图数据和街景数据构建。例如,地图数据可以用于标记道路和建筑甚至商户,以便于对街景数据(图片)中道路和/或建筑物的划分,从而实现针对不同应用场景的不同重建级别的虚拟街景地图。上述地图数据例如可以与街景数据一并发送。虽然“虚拟街景地图”是一个虚拟地图空间,但其在客户端a显示给用户的,是类似于当前地图应用街景模式中的实景图像的“虚拟”版本。而这些随用户移动或操作而连续变化的虚拟街景图像可以构成虚拟街景地图空间。本发明随后将结合图5详细讨论虚拟街景地图的生成方案。

客户端a可以基于接收到的相关街景信息得到街景信息本身或是构建虚拟街景地图,基于街景信息的虚拟街景地图可以与场景框架相融合,以得到虚拟场景。在一个实施例中,可以在客户端a中预先加载场景框架,并装入从服务器获得的街景信息,由此使得加载的场景框架与基于街景信息的虚拟街景地图相融合,从而得到虚拟场景。在另一个实施例中,可以基于街景信息构建虚拟街景地图,并在该虚拟街景地图上加载场景框架,并向其用户展示加载了所述场景框架的虚拟街景地图,从而得到虚拟场景。在此,可以将加载了所述场景框架的虚拟街景地图或是加载了虚拟街景地图的场景框架称为“虚拟场景”。用户可以在上述虚拟场景中进行相应的交互操作,以实现与该具体场景或其中显示的对象的互动。

“框架(framework)”可以指的是整个或部分系统的可复用设计,表现为一组抽象构件及构件实例间交互的方法。在此,“场景框架”是与具体应用场景相关联的框架,即与具体应用场景相关联的可复用的设计。在具体实现中,可以通过weex、html5或是直接植入的方式来实现上述“场景框架”的加载。

在一个实施例中,“场景框架”可以包括使用户能够与所显示的场景或其内目标进行交互的操作面板。

在一个实施例中,“场景框架”可以包括与具体应用场景相适应的环境或显示风格的设定。即,虚拟街景地图的显示风格或是显示环境,可以至少部分由场景框架所确定。

在一个实施例中,“场景框架”可以包括与具体应用场景相适应的视线高度的设定。即,虚拟场景中的视线高度至少部分基于所述场景框架确定。

另外,如图3所示,场景框架的加载可以在客户端a侧实现,但对该场景框架本身的获取时间不做限制。在一个实施例中,该场景框架可以是例如客户端a在下载应用(例如,移动端app)时,应用内自带的场景框架,即,场景框架是预先下载并存储在客户端a侧的。在另一个实施例中,该场景框架可以是跟随如上相关街景信息一并从服务器s传送至客户端a的。在又一个实施例中,可以在应用更新或是传输相关街景信息时,一并下发对场景框架的更新。

在本发明的实施例中,可以提供有多个场景框架。例如,可以提供如下图4所示的“赛车场景”框架,可以提供“城市射击场景”框架,“商务推广场景”框架,“古代rpg场景”框架等等。这些框架可以基于用户选择或是具体安装的应用而被加载在相同的虚拟街景地图上,由此丰富本发明实施例的应用范围。

在此,“虚拟场景”是指具体应用场景与实景地图结合后得到的地图空间。在一个更为常见的实施例中,“虚拟场景”中显示的道路至少与客户端a上传的地理位置信息相关联的物理场景(现实中的实际场景)中的道路的走向相一致,以便用户交互的顺利完成。但周围建筑甚至是道路形式都可以与现实不同。

图4a和4b示出了根据本发明一个实施例的赛车应用场景的例子。图4a示出了在街景采集车视角高度下的、视角和位置可变的街景视图的一张截图。图4b是基于该位置的虚拟街景地图并加载了赛车控制室及其形式模型框架的赛车应用场景的截图。由于图4涉及的是赛车应用场景,因此如图4b所示,在该“场景框架”中,包括用于赛车操作的面板和指标显示,且视线高度设定与汽车驾驶室高度相当。由于仅涉及路面操作,因此其虚拟街景地图中的重建主要涉及道路本身,忽略了周边建筑。加载的场景框架则用工业建筑加以填充。由此得到的虚拟场景使得用户能够身临其境地进行符合实际道路走向的赛车驾驶的同时,又在一定程度上远离自己身处生活区的事实,从而为用户提供奇妙的赛车体验。

在本发明的一个实施例中,虚拟街景地图的生成至少部分由所述场景框架决定。如图4b所示,当加载了赛车场景框架时,采用了仅保留道路走向且完全重建周遭景物的高虚拟水平的虚拟街景地图。

由上可知,根据实景图像和场景框架构建的虚拟场景是至少部分与现实场景相符的虚拟空间。在将构建好的虚拟场景经由客户端a展现给用户之后,可以基于用户的屏幕或键盘操作,以连续变化的视角和位置来显示虚拟场景中变化的空间内容。而在虚拟场景的构建是基于用户的当前地理位置信息的情况下,可以基于客户端a实时上报的自身的地理位置信息,以及能由客户端a内置的各类传感器感知的用户的物理运动,以连续变化的视角和位置来显示虚拟场景中变化的空间内容。

在一个实施例中,用于构建虚拟场景的实景图像可以是客户端a从服务器s持续获取的。例如,尤其在客户端a发送的位置是当前地理位置信息的情况下,客户端a可以持续更新其当前地理位置信息并与服务器s通信,以便持续从服务器s获取与其地理位置信息相对应的街景信息(例如,实景图像)和地图信息,这些信息用于虚拟场景中显示的空间内容的实时更新。这尤其适用于客户端a的用户在交互过程中物理位移较大的情况,网络传输性能优良的情况(例如,覆盖了高速wifi),和/或客户端a实时处理能力优秀的情况。

在另一个实施例中,用于构建虚拟场景的街景信息和地图信息可以是客户端a从服务器s一次性获取的。即,在一次完整的虚拟场景交互中涉及到的实景范围可以是预先确定的,并可以在相关街景信息传输时将所涉及的街景图像和地图信息一次性地传输给客户端a。在此,“一次性”指的是基于客户端a的单次获取请求而将全部所需的内容在应答中持续全部返回,例如,连续逐张的传输所需的例如100帧实景图像。在其他实施例中,实景图像还可以分批获取,例如,在每次经过物理热点(例如,wifi点)时获取。上述获取方式可以基于具体应用环境而任意组合,以获得最优的实现方案。

如上已经结合图3描述了用于在客户端生成虚拟场景的服务器与客户端的交互环境示意图。虽然图中未示出,但后续还可涉及用于虚拟场景持续更新的服务器与客户端之间的交互。如下将结合图5详细描述本发明的虚拟地图拼装方案。该拼装方案可以视为图3所示虚拟街景生成流程中所涉及的一部分。

图5示出了根据本发明一个实施例的虚拟街景地图生成方法的流程图。

在步骤s510,获取地理位置信息。如上所述,获取的地理位置信息可以是客户端的当前地理位置信息或选定的地理位置信息。在一个实施例中,上述信息可以是基于图像识别出的。当前地理位置信息可以是基于客户端拍摄的现场图像识别的,而选定的地理位置信息则可以是基于客户端选择的图像所识别的。

在步骤s520,基于所述地理位置信息获取相关联的街景信息和地图信息。在一个实施例中,可以获取以该地理位置信息(例如,位置坐标)为中心的一定范围内的街景信息和地图信息。获取的街景信息和地图信息的范围可以依据预定规则等确定,也可以基于随后要加载的场景框架来确定。

如上所述,街景信息包括街景图像,地理信息则包括各类地图对象的相关信息,所述相关信息包括平面维度信息和坐标信息,所述地图对象类型包括如下的至少一种:道路、建筑物、建筑内景、自然物。在一个实施例中,地图对象的相关信息还可以包括高度、立体形状和/或颜色信息等。

在步骤s530,识别街景图像中的待替换对象。在步骤s540,至少部分基于地图信息生成待替换对象的替换对象。在步骤s550,使用替换对象代替街景图像中相应的待替换对象,由此生成虚拟街景地图。

根据要生成的虚拟街景地图的虚拟级别,可以基于虚拟地图生成规则对步骤s530中的识别程度加以规定。在一个实施例中,可以仅识别街景图像中的待替换对象类型,例如,仅识别图中的要替换的道路两侧的建筑物。在一个实施例中,可以仅识别随后虚拟街景地图的生成过程中所需处理的对象类型,例如,要替换的建筑物,不再显示的车辆或人物,或是要变换显示的对象。在另一个实施例中,可以识别街景图像中的各类对象,对象类型包括如下的至少一种:道路;建筑物;建筑内景;自然物;植物;交通工具;人。

相应地,在步骤s520中获取的地图信息可以是基于地图对象类型的信息。类似地,基于虚拟街景地图生成规则确定要基于所述地理位置信息获取的地图对象类型和相关信息类型。在一个实施例中,可以基于所述地理位置信息获取各类地图对象的相关信息,所述相关信息包括平面维度信息和坐标信息,所述地图对象类型包括如下的至少一种:道路、建筑物、建筑内景、自然物。这些地图对象的坐标信息可用于与街景图像中的各对象的所在位置(及其坐标)相对应,以方便后续的操作。这些地图对象的平面维度信息则可用于生成后续在虚拟街景地图中用于进行替换的对象。在步骤s520中获取相关信息的地图对象类型可以是地图数据库所包括的全部的对象类型,也可以仅仅是后续虚拟街景地图的生成过程中会涉及的对象类型,例如,替换对象所需的相关地图信息。

在一个实施例中,生成所述替换对象所基于的地图对象的相关信息还包括:获取待替换对象的高度、立体形状和/或颜色信息;以及使用所述待替换对象的高度、立体形状和/或颜色信息生成所述替换对象。替换对象可以至少部分是3维替换对象。在使用3维替换对象来替换道路两旁的建筑物时,可以使用该建筑物的实际坐标、平面维度尺寸、立体形状和高度等来重建一个3维建筑模块,并在虚拟街景地图中用该3维模块代替原来该建筑物的2维图像显示。由于街景地图的拍摄角度可知,所以可以将该3维模块的显示角度变换为与原2维图像中显示的角度一致,但却是以立体角度进行显示。

在本发明中,替换对象优选地包括3维替换对象,并且生成3维替换对象的空间显示信息至少部分来自地图数据库所保存的地图信息,例如上述高度、立体形状和/或颜色信息等。在其他实施例中,生成3维替换对象的空间显示信息也可以基于其他规则确定。例如,在高虚拟程度的虚拟街景地图中,可以基于建筑物的平面维度等来确定要替换的范围,并在原本建筑物的显示位置替换基于虚拟场景构建的其他虚拟建筑物。换句话说,替换物的立体形状和颜色等可以不与实际被替换物相同,但要确保替换物(尤其是3维替换物)能够完全覆盖街景地图中实际被替换物的位置。

由于街景信息是例如由街景采集车所拍摄的图像,因此街景图像中包括拍摄到的各类对象,例如道路;建筑物;建筑内景;自然物;植物;动物;交通工具;人等。可以通过例如图像识别技术以及街景图像自带的相关坐标信息、图像拼接和变换信息等识别街景图像中所包括的各类对象。相比之下,地图信息中所包括的地图对象仅仅是地图显示所需的对象,其类型比街景图像中要少,通常包括道路、建筑物、建筑内景、自然物。如图1a所示街景地图中的车辆和行人通常不会包括在地图信息中。这些对象通常逐条目存储在地图数据库中,并在需要时依照空间坐标和相对位置在地图中显示。

根据图5生成的虚拟街景地图可以如图3所示,与场景框架相融合以得到虚拟场景。要加载的场景框架可以对虚拟街景地图的生成产生诸多影响。在一个实施例中,对所述待替换对象的选择和/或所述替换对象的生成至少部分基于所述场景框架。在另一个实施例中,可以基于所述场景框架,向所述虚拟街景地图进行例如添加渲染风格;或是添加额外的对象和/或效果的操作。

除了场景框架之外,还可以考虑其他虚拟街景地图生成规则来确定对地图信息的获取和对街景图像的识别。虚拟街景地图生成规则可以考虑诸多因素,例如后续需加载的虚拟场景,或是拼接应用本身的实现程度,地图数据库中的数据类型等。可以基于虚拟街景地图生成规则确定要替换的待替换对象类型,和/或确定所述各类对象中不再显示或需要变换风格显示的对象类型,并在生成步骤s550中相应地替换显示、不再显示或变换风格显示相应的对象。

在一个虚拟程度较低的实现中,可以仅识别街景地图中的建筑物,并获取作为地图类型的对应建筑物的地图信息(例如,建筑物的坐标、平面维度、高度、颜色和立体形状等)。在生成的虚拟街景地图中,可以用基于地图信息生成的3维建筑物(并将其调整到与街景地图中的视角相同)来代替街景地图中的相应建筑物(例如,叠加显示),由此实现虚拟场景的生成。在例如与用户的后续交互中,3维建筑物可以基于用户的操作而实现更为灵活且逼真的显示角度变换。由于3维对象增加了高度维度,因此方便进行空间定位,从而为后续ar技术的并入使用提供了便利。

而在一个虚拟程度较高的实现中,可以仅保留道路的走向,将周围环境物全部替换成与虚拟场景相适应的虚拟对象。还可以根据预定规则,更改道路的显示风格,如图4b所示。

对于街景图像中的交通工具或行人等,根据不同的虚拟程度可以进行不同的处理。例如,可以对上述对象不加识别并直接添加其他效果;也可以识别上述对象并加以擦除;或是将行人或交通工具变换为具有更为炫酷的外形等等。

以上参考图5描述了本发明的虚拟街景地图生成方法及其优选实施例。可以理解的是,该方法涉及图3所示服务器s和客户端a之间的交互。在服务器s查询到相关的街景信息和地图信息之后,街景图像的识别、替换对象的生成以及虚拟街景地图的生成可以依据不同的实施例完全由服务器、完全由客户端、或是部分由服务器部分在客户端实现。

在一个实施例中,服务器可以对地图信息进行处理之后,将其与街景图像一并发送至客户端,并由客户端对地图信息和街景图像进行组装,由此实现虚拟街景地图的高效生成。图6示出了根据本发明一个实施例的客户端侧的虚拟街景地图的生成方法的流程图。类似地,该方法可以是图3所示服务器s和客户端a交互的一部分,也可以看做是图5所示方法的一个优选实施例。

如图6所示,在步骤s610,将地理位置信息发送给服务器。

在步骤s620,接收与所述服务器查询到的与地理位置信息相关联的相关信息,所述相关信息包括街景图像和对象描述文件,其中,所述对象描述文件是所述服务器基于地图对象及其关联信息生成的用于重建所述地图对象的描述文件。

在一个实施例中,可以基于虚拟街景地图生成规则确定要为其生成所述对象描述文件的地图对象、所述对象描述文件中所包括的信息项、所述街景图像中要识别的图像对象,以便于重建所述对象描述文件。其中,要识别的图像对象还可以包括在所述虚拟街景地图中不再显示的对象和/或变换显示的对象。

在一个实施例中,对象描述文件可以包括所述地图对象的坐标和平面维度信息。在一个实施例中,对象描述文件还可以包括所述地图对象的高度、立体形状和/或颜色信息。

在步骤s630,识别所述街景图像中的待替换对象。

在步骤s640,基于对象描述文件生成所述待替换对象的替换对象。

在步骤s650,使用所述替换对象代替所述街景图像中相应的待替换对象,由此生成所述虚拟街景地图。详细实现可参见上文关于图5的描述,在此不再赘述。

至此,已经结合图5-6和实施例详细说明了本发明的虚拟街景地图生成方法。此外,本发明的虚拟街景地图生成方法还可以由一种虚拟街景地图生成装置实现。

图7示出了根据本发明一个实施例的在客户端侧实现的虚拟街景地图生成装置的示意图。如图7所示,虚拟街景地图生成装置700可以包括信息发送单元710、信息接收单元720、对象识别单元730、对象生成单元740和地图生成单元750。

信息发送单元710可以用于将地理位置信息发送给服务器。

信息接收单元720可以用于接收与所述服务器查询到的与地理位置信息相关联的相关信息,所述相关信息包括街景图像和对象描述文件,其中所述对象描述文件是所述服务器基于地图对象及其关联信息生成的用于重建所述地图对象的描述文件。

对象识别单元730可以用于识别所述街景图像中的待替换对象。

对象生成单元740可以用于基于对象描述文件生成所述待替换对象的替换对象。

地图生成单元750可以用于使用所述替换对象代替所述街景图像中相应的待替换对象,由此生成所述虚拟街景地图。

在一个实施例中,该虚拟街景地图生成装置还可以包括确定单元。确定单元可用于基于虚拟街景地图生成规则确定要为其生成所述对象描述文件的地图对象、所述对象描述文件中所包括的信息项、所述街景图像中要识别的图像对象。其中,要识别的图像对象还可以包括在所述虚拟街景地图中不再显示的对象和/或变换显示的对象。

对象描述文件可以包括所述地图对象的坐标和平面维度信息,还可以包括所述地图对象的高度、立体形状和/或颜色信息。

图8是根据本发明一个实施例的客户端设备800。客户端设备800包括输入输出装置810、存储器820和处理器830。输入输出装置810可以是触摸屏,用于接收输入信息并显示输出信息。存储器820用于存储信息。处理器830连接至输入输出装置810和存储器820,并用于如上所述展示虚拟街景地图并与用户交互。

应该理解,如上基于图5描述的优选实施例同样适用于图6-8所示的方法、以及在客户端及其上实现的相应装置,在此不再赘述。

如上已经结合图5-8描述了本发明的虚拟街景地图生成方案的基本原理。通过算法生成实景街景,比传统的地图应用(例如,地图游戏)更为接近现实,以上海为例,可以很快的生成陆家嘴地区地图,用户认识度高,认知性强,接收度高。实景街景的生成优选基于实景图像的拼接实现,因此能够以可接受的数据处理和网络传输要求来实现至少部分信息高度还原实际场景的虚拟街景地图。可以根据加载的场景框架,来为相同的虚拟街景地图叠加不同的应用场景。另外,由于构建的虚拟场景可以与用户选定的地理位置或是当前所在的地理位置相关联,因此可以直接结合地图数据生成实景地图,亦可以根据关键坐标信息生成虚拟地图,远比线上任何地图应用内容丰富。

[应用例]

用户打开手机摄像头,拍照某个建筑。该建筑的照片上传至服务器,服务器识别出建筑名字,匹配线上地图数据(例如,利用lbs精确对准街景的区间坐标)。服务器依据定义好的规则选择要重建的地图对象:如建筑物、道路、人等物体,并以长度,高度,宽度,颜色,材料,坐标等为维度生成一大区域的4维描述文件,这个描述文件例如可以包括:l123w123h123g4,算法引擎再将内容进行识别同时进行组装,结合lbs位置,将线上街景与拼装后的模型结合,生成虚拟街景地图。

通过结合现有的街景地图,通过将地图关键坐标、建筑物体、人物等拆分成标签元素,将地图各种坐标元素生成对应标签,分桶聚合后,下发至客户端,客户端根据摄像机补抓,将地图服务器下发的数据与之进行拼装来完成虚拟街景地图的生成。

上文中已经参考附图详细描述了根据本发明的虚拟街景地图生成方法和装置以及客户端设备。

根据本发明的方法还可以实现为一种计算设备,包括:处理器;以及存储器,其上存储有可执行代码,当所述可执行代码被所述处理器执行时,使所述处理器执行如上所述的虚拟街景地图生成方法。

此外,根据本发明的方法还可以实现为一种计算机程序或计算机程序产品,该计算机程序或计算机程序产品包括用于执行本发明的上述方法中限定的上述各步骤的计算机程序代码指令。

或者,本发明还可以实施为一种非暂时性机器可读存储介质(或计算机可读存储介质、或机器可读存储介质),其上存储有可执行代码(或计算机程序、或计算机指令代码),当所述可执行代码(或计算机程序、或计算机指令代码)被电子设备(或计算设备、服务器等)的处理器执行时,使所述处理器执行根据本发明的上述方法的各个步骤。

本领域技术人员还将明白的是,结合这里的公开所描述的各种示例性逻辑块、模块、电路和算法步骤可以被实现为电子硬件、计算机软件或两者的组合。

附图中的流程图和框图显示了根据本发明的多个实施例的系统和方法的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标记的功能也可以以不同于附图中所标记的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

以上已经描述了本发明的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1