为了正确显示数字内容,AR系统需要知晓头部的位置和方向。定位可能包括一个或两个视觉和惯性组件。视觉部分可涉及处理由摄像头或多个摄像头收集的一组图像,而惯性部分则可包括处理从惯性测量单元(IMU)收集的数据,例如加速计和陀螺仪传感器读数。所述图像和数据的处理可允许系统计算由三维坐标定义的主机设备位置。
对于需要用户与虚拟对象交互的AR游戏而言,定位放置尤为重要。例如,将虚拟对象呈现在马路中心显然会对用户造成潜在的危险。另外,若将虚拟对象放置到战争纪念馆等位置,这必然会引起争议。
在名为“Utilizing multiple input sources for generating gameplay locations”的专利申请中,微软介绍了一种用于识别并随后在真实世界环境中生成的游戏位置。简单来说,系统可以根据编程规定,智能识别,不断变化的条件或用户反馈等信息来生成与位置相关的潜在风险分数,然后将其作为游戏位置生成的参考。例如,可以将具有高潜在危险分数的位置排除出游戏位置生成列表,比方说道路中央,悬崖边和战争纪念馆。
除了可以明确地将具有高潜在危险分数的特定区域排除出游戏位置列表之外,系统可以根据不断变化的条件和/或用户反馈随时间更新分数。
例如,系统可能会在看似低风险的区域生成游戏位置,但与所述区域相关联的映射数据可能已过时。所以,随着时间的推移,系统可以接收来自用户的输入来更新风险评估分数,以反映当前的物理环境具有潜在风险地程度。在一个实现中,更新后的风险评估分数可能会超过风险阈值,然后系统可以将其更新为应排除出游戏位置生成列表的区域。
微软指出,这种持续的用户反馈可用于提供一种不断发展的风险评估机制,以确定生成的游戏位置是否应继续存在。
总的来说,专利描述的系统可以利用多种类型的不同数据组合,以便基于确定的风险分数来有效地确定特定区域是否适合作为游戏位置。
图1描绘了可与位置生成过程一起使用的设备100。设备100可以是诸如智能手机这样的移动设备102。移动设备102可以利用移动设备的摄像头显示真实世界的图像。需要注意的是,微软指出设备100同时可以是诸如HoloLens这样的近眼显示设备或平板设备。
如图1A所示,移动设备102可以利用移动设备的摄像头来捕捉真实世界的场景。所述场景可以包括各种元素,例如草地公园104、人行道106和道路108。设备102可配置为从可经由联网能力访问的数据库加载位置数据。例如,系统可基于GPS数据确定设备位于大西雅图地区内。然后,系统可以访问数据库,下载一组与GPS数据对应的游戏遭遇。
如图1B所示,一旦确定了移动设备102的位置,就可以访问游戏位置数据库,以确定是否应该显示任何游戏遭遇。在这一过程中,与位置相关联的危险程度数据可用于指示道路108为排除区,而草地公园104和人行道106则可以判定为用于显示游戏元素的位置。
例如,在一个实施例中,可以在草地公园104生成数字猪猪110,并在人行道106生成数字数目112。然后,移动设备102的用户可以出于游戏性目的来与110或112交互。
作为通过GPS数据确定移动设备位置的替代方法,移动设备102可以确定摄像头捕获的当前场景中是否存在任何图像锚。例如,可以通过检测位于当前场景内的特征点,并将特征点与存储库进行比较来确定这样的图像锚。一旦确定图像锚,可通过设备显示器下载和显示与图像锚相关的任何游戏遭遇。
图2A-2B描述了根据位置生成过程处理地理位置数据的示例场景。地理位置数据可以通过数据源接收,数据源可以是存储与世界地图相关联的数据的数据库。地理位置数据可以描述物理环境中的元素,例如街道、公路、人行道、建筑物、公园和各种兴趣点(POI)的位置。
在一个实施例中,这样的数据源可以是OpenStreetMap数据库或Microsoft Azure Maps数据库。
在一个实施例中,这样的数据源可以是从多个数据源检索的地理定位数据组合。在这种情况下,可以组合来自多个数据源的地理定位数据,以提供对一个区域的全面覆盖。
在一种实现中,地理定位数据可以将环境中的物理元素表示为各种点、线和多边形。例如,一个点可能代表一个特定的兴趣点,如博物馆或喷泉;一条线可能代表一条道路或高速公路。导入数据后,系统可以根据形状和与形状关联的基础标识符对数据进行不同的解析。
图2A描绘了解析地理位置数据的示例场景。可以接收地理位置数据区域200,区域200包括5个以点、线和多边形形式指定的元素。区域200内的5个为元素可代表真实世界元素,例如公路202、军事基地204、喷泉206、购物中心208和公园210。
根据潜在风险分数,系统可以将区域200和元素202-210解析为至少四种可能的类别:
已知可用
已知风险
未知
理应排除
位置生成过程可以利用所述分类来帮助确定游戏元素放置的适当位置。在一个实施例中,可以利用滑动尺度来确定“已知风险”类别何时自动变为“理应排除”。在一个实施例中,“已知风险”和“利用排除”可以组合在一起,并自动排除。
通过确定与地理位置数据提供的物理元素相关联的标识符(即数据是否指定它是道路或喷泉),可以创建一个查找表,其中每个物理元素可以根据上述类别进行分类。例如,特定物理元素可以标记为“理应排除”元素,例如公路202。或者,如果物理元素未被排除,并且类型标识符与物理元素相关联,则可以基于物理元素的类型将风险分数与物理元素相关联。
对于没有被过程识别的类型标识符的物理元素,物理对象可以与“未知”类别相关联。
数据源可以根据物理元素的分类将可能与物理元素相关联的风险分数预定义为设定的风险分数。例如,道路元素可能具有高风险分数。所以对于在解析地理位置数据时发现的任何道路元素,可以使用道路元素填充查找表,并且可以将与道路元素相关联的预编程风险分数分配给查找表中的特定元素。
类似地,如果地理位置数据表明物理元素是定义为纪念馆,则可以预定义较低的风险分数作为纪念元素的设定风险分数。尽管纪念馆可能不是游戏地点的理想区域,但对用户而言,相对风险可能小于将游戏地点放置在道路中央。
至少基于关联的风险分数,解析的物理元素随后可与类别之一关联,类别可根据阈值风险分数值定义。例如,利用0-1风险等级(风险分数为1是用户的最高风险)。然后,系统可以将风险分数小于0.3的物理元素分类为“已知可用”元素,并且可以在所述位置轻松生成游戏位置。类似地,系统可以将风险分数在0.3-0.6之间的物理元素分类为“已知风险”,而风险分数为0.7或更高的物理元素可能列为“理应排除”。
在参考区域200的一个示例中,喷泉206的风险分数为0.1,公园210的风险分数为0.2,购物中心208的风险分数为0.6,公路202和军事基地204的风险分数则为0.9。
作为解析地理位置数据的结果,物理元素可以分类为用于放置游戏位置的区域的初始优先级排序。例如,风险得分最低的区域可能授予用于放置游戏元素的最高优先级。另外,可以定义风险评分阈值,以便在低于风险阈值的区域中生成游戏遭遇。
在一个实施例中,在超过阈值的区域依然可以生成游戏遭遇,但前提是所述区域不构成理应排除区域。
在一个实施例中,可通过迭代反馈过程对初始优先级排序进行微调,以便不断定义和重新定义区域内区域的计算分数。或者,可以利用神经网络,而所述神经网络可以根据从数据源接收到的初始数据和可以在游戏过程中获取的游戏数据进行训练。
再次转到图2A,可以解析从数据源接收的地理位置数据以识别可能是用于生成游戏位置的候选区域。公路202和军事基地204可标记为理应排除的区域,因为不应在所述区域附近生成游戏位置。购物中心208可分类为“已知风险”区域,因为购物中心中的人流繁多,可能会在用户尝试与数字对象交互时造成风险,所以这个区域可以具有中等风险分数。喷泉206和公园210可分类为“已知可用”,因为所述真实世界区域通常可认定为允许用户与游戏元素交互的低风险区域。
名为“Utilizing multiple input sources for generating gameplay locations”的微软专利申请最初在2020年5月提交,并在日前由美国专利商标局公布。