使用在区域中的3d模型活动对场所排名的扩展的制作方法

文档序号:6484538阅读:175来源:国知局
使用在区域中的3d模型活动对场所排名的扩展的制作方法
【专利摘要】本发明的方面一般涉及基于感知到的用户兴趣对地理位置进行排名。更具体地,可以使用建筑物或其他建筑特征的三维模型的数据库(136)来确定对特定位置的用户兴趣程度,并且相应地,带有局部意图地对例如地理位置或web或地图搜索结果进行排名。例如,可以使用各种信号,诸如用户为特定位置创建的模型数(306)、对特定位置的模型的点击或请求数(710、806)、包含在与特定地理位置相关联的模型内或与所述模型相关联的POI数(904)、与和地理位置相关联的模型相关联的类别数(1008)、在其他网站上的与特定位置相关联的模型的嵌入视图或视图数(1104)、以及与特定地理位置相关联的模型的年龄(1206)。
【专利说明】使用在区域中的3D模型活动对场所排名的扩展
[0001]相关申请的交叉引用
[0002]本申请是于2010年12月23日提交的美国专利申请N0.12/977, 267的继续申请,特此通过引用将其公开内容合并入本文。
【背景技术】
[0003]各种基于网络的搜索应用允许用户输入一个或多个搜索词语,并且作为响应,接收搜索结果列表。这些搜索服务还可以允许用户为与特定地理位置或区域相关联的信息进行“局部”搜索。“局部”搜索或带有“局部”意图的搜索可以包括为查询提供地理场境(context)或限制的搜索词语。例如,用户可以在地图搜索中使用词语“批萨,迈阿密”。“迈阿密”给予查询局部场境,因此,可以向用户提供与在迈阿密地区的批萨有关的搜索结果。类似地,用户可以在web搜索中使用词语“帝国大厦,纽约”。再次,词语“纽约”给予查询局部场境。
[0004]这些服务使用大量不同类型的排名算法来确保搜索结果既与用户的查询有关又以有用方式显示。例如,一些系统基于与搜索查询的相关性以及搜索结果的可靠性和安全性来对结果进行排名。这些搜索服务还可以根据与搜索结果相关联的一个或多个实体的声望来排名并显示搜索结果。例如,如果用户搜索“咖啡厅,西雅图”,则搜索应用还可以基于地理位置,在此西雅图,来显示有声望的(或众所周知、受尊重或重要的)网站或企业列表的列表。
[0005]一些服务允许用户上载并共享各种物体的三维(“3D”)模型,所述各种物体诸如建筑物、体育场、船、车辆、树或地形(例如,大峡谷)的内部或外部等。物体可以与各种类型的信息相关联,诸如标题、描述性数据、用户评论、兴趣点(“Ρ0Ι”)、企业收录等。许多物体和模型自身可以被地理定位或与地理位置相关联,诸如地址或地理定位坐标。还可以对模型进行分类。例如,摩天大楼的模型可以与一个或多个类别相关联,诸如摩天大楼、在特定城市的建筑物等。在这方面,用户可以例如基于相关联的标题、地理位置、描述、物体类型、集合、物理特征等,为模型搜索数据库。
[0006]一旦用户已选择了 3D模型,用户就可以与该模型进行交互。例如,用户可以为“埃菲尔铁塔”查询数据库,并且作为响应,接收包括在法国巴黎的埃菲尔铁塔的各种模型以及与搜索词语相关联或按搜索词语索引的其他物体的搜索结果列表。一旦用户例如通过点击搜索结果,已选择了物体,该用户就可以除其他动作外,下载、查看、旋转、或评论该模型。
[0007]服务还可以允许用户在世界地图上搜索例如企业或地理位置。响应于搜索查询,服务可以提供除其他信息外识别3D模型的地图或到3D模型数据库的3D模型的链接。再次,用户可以例如通过点击该模型来与3D模型进行交互。

【发明内容】

[0008]本发明的方面一般涉及基于感知到的用户兴趣对地理位置进行排名。更具体地,可以使用建筑物或其他建筑特征的三维模型的数据库来确定对特定位置的用户兴趣程度,并且相应地,带有局部意图地对例如地理位置或web或地图搜索结果进行排名。例如,各种信号,诸如用户为特定位置创建的模型数、对特定位置的模型的点击或请求数、包含在与特定地理位置相关联的模型内或与所述模型相关联的兴趣点(POI)数、与和地理位置相关联的模型相关联的类别数、在其他网站上的与特定位置相关联的模型的嵌入视图或视图数、以及与特定地理位置相关联的模型的年龄。
[0009]本发明的一个方面提供了计算机实现的方法。该方法包括:存储地理位置列表;访问物体的3D模型的数据库,多个3D模型每一个与地理位置列表的相应地理位置相关联;处理器基于地理位置列表的每一个特定地理位置是否包括多个3D模型的给定一个的相应地理位置,为该特定地理位置确定用户兴趣值,其中每一个用户兴趣值指示对特定地理位置的用户兴趣;以及处理器基于所确定的值对地理位置列表进行排序以产生排序的地理位置列表。
[0010]在一个示例中,特定地理位置的用户兴趣值基于与包括在特定地理位置中的相应地理位置相关联的3D模型数。在另一个示例中,该方法还包括在一时间段内,接收对与包括在特定地理位置中的相应地理位置相关联的一个或多个3D模型的用户请求,以及每一个用户兴趣值基于在该时间段期间所接收的用户请求数。在另一个示例中,多个3D模型中的每一个与一个或多个兴趣点相关联,以及每一个用户兴趣值基于与和被包括在特定地理位置中的相应地理位置相关联的3D模型相关联的兴趣点数。在另一个示例中,多个3D模型中的每一个与一个或多个用户指定的物体类别相关联,以及每一个用户兴趣值基于与和被包括在特定地理位置中的相应地理位置相关联的3D模型相关联的类别数。在另一个示例中,该方法还包括对多个网站进行扫描来识别与包括在特定地理位置中的相应地理位置相关联的3D模型的视图;以及其中特定地理位置的用户兴趣值基于所识别的视图数。在另一个示例中,多个3D模型中的每一个特定3D模型与定义特定3D模型的年龄的时间值相关联,以及每一个用户兴趣值基于与和被包括在特定地理位置中的相应地理位置相关联的3D模型相关联的时间值。在另一个示例中,该方法还包括从客户端设备接收搜索查询;基于排序的地理位置列表来识别搜索结果列表;以及基于排序的地理位置列表来传送搜索结果以在客户端设备的显示器上显示。在另一个示例中,该方法还包括对于地理位置列表中的每一个特定地理位置,基于与特定地理位置相关联的所确定的值来确定加权和,以及其中对地理位置列表进行排序还基于加权和。
[0011]本发明的另一个方面提供了计算机。该计算机包括存储器,其存储地理位置列表和物体的3D模型的数据库。该存储器还存储多个3D模型,其每一个与地理位置列表的相应地理位置相关联。该计算机还包括耦接到存储器的处理器。该处理器可操作来基于地理位置列表的每一个特定地理位置是否包括多个3D模型的给定一个的相应地理位置,为该特定地理位置确定用户兴趣值,其中每一个用户兴趣值指示对特定地理位置的用户兴趣;以及基于所确定的值对地理位置列表进行排序以产生排序的地理位置列表。
[0012]在一个示例中,该处理器还可操作来基于与包括在特定地理位置中的相应地理位置相关联的3D模型数来为特定地理位置确定用户兴趣值。在另一个示例中,该处理器还可操作来在一时间段内,接收对与包括在特定地理位置中的相应地理位置相关联的一个或多个3D模型的用户请求;以及基于在该时间段期间所接收的用户请求数来确定每一个用户兴趣值。在另一个示例中,多个3D模型中的每一个与一个或多个兴趣点相关联,以及该处理器可进一步操作来基于与和被包括在特定地理位置中的相应地理位置相关联的3D模型相关联的兴趣点数来确定每一个用户兴趣值。在另一个示例中,多个3D模型中的每一个与一个或多个用户指定的物体类别相关联,以及该处理器可进一步操作来基于与和被包括在特定地理位置中的相应地理位置相关联的3D模型相关联的类别数来确定每一个用户兴趣值。在另一个示例中,该处理器还可操作来对多个网站进行扫描来识别与包括在每一个特定地理位置中的相应地理位置相关联的3D模型的视图;以及该处理器还可操作来基于所识别的视图数为每一个特定地理位置确定每一个用户兴趣值。在另一个示例中,多个3D模型中的每一个特定3D模型与定义特定3D模型的年龄的时间值相关联,以及该处理器可进一步操作来基于与和被包括在每一个特定地理位置中的相应地理位置相关联的3D模型相关联的时间值来确定每一个用户兴趣值。在另一个示例中,该处理器可操作来从客户端设备接收搜索查询;基于排序的地理位置列表来识别搜索结果列表;以及基于排序的地理位置列表来传送搜索结果以在客户端设备的显示器上显示。在另一个示例中,该处理器还可操作来对于地理位置列表中的每一个特定地理位置,基于与特定地理位置相关联的所确定的值来确定加权和,以及其中对地理位置列表进行排序还基于加权和。
【专利附图】

【附图说明】
[0013]图1是依据本发明的方面的系统的功能图。
[0014]图2是依据本发明的方面的系统的示意图。
[0015]图3是依据本发明的方面的示例性流程图。
[0016]图4是依据本发明的方面的示例性截屏。
[0017]图5是依据本发明的方面的另一个示例性截屏。
[0018]图6是依据本发明的方面的又一个示例性截屏。
[0019]图7是依据本发明的方面的另一个示例性流程图。
[0020]图8是依据本发明的方面的又一个示例性流程图。
[0021]图9是依据本发明的方面的又另一个示例性流程图。
[0022]图10是依据本发明的方面的示例性流程图。
[0023]图11是依据本发明的方面的另一个示例性流程图。
[0024]图12是依据本发明的方面的又一个示例性流程图。
[0025]图13是依据本发明的方面的数据的图示。
[0026]图14是依据本发明的方面的又另一个示例性流程图。
【具体实施方式】
[0027]如图1-2中所示,依据本发明的一个方面的系统100包括包含处理器120、存储器130和典型地存在于通用计算机中的其他组件的计算机110。
[0028]存储器130存储处理器120可访问的信息,包括可以由处理器120执行或另外使用的指令132和数据134。存储器130可以是能够存储处理器可访问的信息的任何类型的,包括计算机可读介质或存储可以在电子设备的帮助下被读取的数据的其他介质,诸如硬盘驱动器、存储器卡、闪存驱动器、R0M、RAM、DVD或其他光盘以及其他有写能力和只读存储器。在这方面,存储器可以包括短期或暂时性存储以及长期或持久性存储。依据本发明的多个方面的系统和方法可以包括前述的不同组合,由此,指令和数据的不同部分被存储在不同类型的介质上。
[0029]指令132可以是待由处理器直接(诸如机器码)或间接(诸如脚本)执行的任何指令集。例如,指令可以被存储为在计算机可读介质上的计算机代码。在这方面,可以在本文可交替地使用用语“指令”和“程序”。可以以用于处理器直接处理的目标代码格式、或以任何其他计算机语言,包括根据需求解释或事先编译的独立源代码模块的脚本或集合,来存储指令。在下面更详细地说明指令的功能、方法和例程。
[0030]根据指令132,处理器120可以检索、存储或修改数据134。例如,尽管所述体系结构不受任何特定数据结构限制,然而,可以将数据存储在计算机寄存器中、作为具有多个不同字段和记录的表在关系数据库中、在XML文档或平面文件中。还可以以任何计算机可读格式对数据进行格式化。仅作为进一步示例,图像数据可以被存储为由像素网格组成的位图,其根据为压缩或非压缩、无损或有损和基于位图或矢量的格式以及用于绘制图形的计算机指令被存储。数据可以包括足以识别相关信息的任何信息,诸如编号、描述性文本、专有代码、对存储在同一存储器的其他区域或不同存储器(包括其他网络位置)中的数据的引用或功能使用来计算相关数据的信息。
[0031]处理器120可以是任何常规处理器,诸如来自英特尔公司或超微半导体公司的处理器。替选地,处理器可以是专用控制器,诸如ASIC。尽管图1将处理器和存储器在功能上图示为在同一块内,然而,本领域技术人员应当理解的是,处理器和存储器实际上可以包括可以或可以不被存储在同一物理外壳内的多个处理器和存储器。例如,存储器可以是位于数据中心的服务器群中的硬盘驱动器或其他存储介质。因此,应当将对处理器、计算机或存储器的引用理解为包括对可以或可以不并行操作的处理器、计算机或存储器集合的引用。
[0032]计算机110可以在网络150的一个节点处,并且能够从网络的其他节点直接和间接接收数据。例如,计算机110可以包括web服务器,其能够通过网络150从客户端设备160和170接收数据,使得服务器110使用网络150来传送信息并在客户端设备170的显示器165上向用户显示信息。服务器110还可以包括出于接收、处理和传送数据到客户端设备的目的,与网络的不同节点交换信息的多个计算机。在这种情况下,客户端设备将典型地仍在网络的与包括服务器110的计算机中的任何一个不同的节点处。
[0033]网络150以及在服务器110和客户端设备之间的中间节点可以包括各种配置并且使用各种协议,包括因特网、万维网、内联网、虚拟专用网络、本地以太网络、使用一个或多个公司专有的通信协议的专用网络、蜂窝和无线网络(例如,WiFi)、即时消息递送、HTTP和SMTP以及前述的各种组合。尽管在图1-2中仅描绘了几个计算机,然而,应当理解的是,典型系统可以包括大量连接的计算机。
[0034]每一个客户端设备可以与服务器110类似地被配置,其带有如上所述的处理器、存储器和指令。每一个客户端设备160或170可以是意在由个人191-192使用的个人计算机,并且具有结合个人计算机通常使用的所有组件,诸如中央处理单元(CPU) 162、存储数据163和指令164的存储器(例如,RAM和内部硬盘驱动器)、电子显示器165 (例如,具有屏幕的监视器、触摸屏、投影仪、电视、计算机打印机或可操作来显示信息的任何其他电设备)、终端用户输入166 (例如,鼠标、键盘、触摸屏或麦克风)。客户端设备还可以包括相机167、加速度计、扬声器、网络接口设备、电池电源169或其他电力源、以及用于使这些元件相互连接的所有组件。
[0035]如图1中所示,客户端设备还可以包括用来确定设备的地理位置和朝向的地理定位组件168。例如,客户端设备170可以包括用来确定设备的纬度、经度和海拔位置的GPS接收器。因此,当客户端设备例如通过在物理上被移动,改变位置时,GPS接收器可以确定新的当前位置。组件168还可以包括用于基于在客户端设备170处接收的其他信号,诸如如果客户端设备是蜂窝电话,则在蜂窝电话的天线处从一个或多个蜂窝电话塔接收的信号,来确定设备的位置的软件。
[0036]尽管客户端设备160和170可以每一个包括全尺寸的个人计算机,然而,它们可以替选地包括能够通过诸如因特网的网络与服务器无线地交换数据,包括从定位组件168得到的位置信息,的移动设备。仅作为示例,客户端设备160可以是能够通过因特网获取信息的具有无线能力的PDA或蜂窝电话。用户可以使用小键盘(在黑莓型电话的情况下)、键区(在典型蜂窝电话的情况下)或触摸屏(在PDA的情况下)来输入信息。
[0037]服务器110的数据134可以包括各种物体的3D模型的数据库136。这些3D物体可以与模型的创建者(或上载用户)或其他用户所提供的数据相关联。例如,模型可以与一个或多个类别、地理位置、描述、用户评论等相关联。模型还可以与用户指定的集合相关联。例如,当用户将新的模型上载到数据库时,用户可以将该模型指定为诸如“本世纪中期现代”或“我喜欢的东西”的一个或多个集合的部分。结果,该新的模型还可以与也与同一集合相关联的其他模型相关联。可以使用这个信息来识别、索引并查询模型。
[0038]如果特定物体被地理定位(或与地理位置相关联),则3d物体数据还可以包括包含在该物体内或非常接近其周边的POI数。POI可以包括例如企业(诸如零售店、加油站、酒店、超市、餐馆等)、学校、联邦或州政府大楼、公园、纪念碑、雕像、桥等。还可以使用该数据来索引物体并且响应于对数据库的用户查询而提供搜索结果。
[0039]服务器110可以访问地图信息138,其至少部分可以被传送给客户端设备。例如,服务器可以存储地图瓦片,其中每一个瓦片是特定地理区域的地图图像。单个瓦片可以相对少细节地覆盖整个地区,诸如州,以及另一个瓦片可以高细节地仅覆盖少数街道。在这方面,单个地理点可以与多个瓦片相关联,以及可以基于期望的缩放水平来选择瓦片以供传送。地图信息不限于任何特定格式。例如,数据可以包括街道地图、卫星图像或这些的组合,并且可以被存储为矢量(尤其关于街道地图)、位图(尤其关于卫星图像)等。
[0040]地图信息138可以包括各种类型的地理定位信息,诸如建筑物、道路、水路、POI以及可以用来显示给定位置的地图的其他特征。
[0041]地图信息还可以包括从数据库136选择的代表性3D物体。例如,可以存在被存储在数据库136中的多个“埃菲尔铁塔”模型。可以选择特定3D模型来在法国巴黎的地图位置处表示埃菲尔铁塔。所选择的模型可以手动或由服务器基于各种标准,包括例如与模型的设计者的问答会话、精度和细节水平、文件大小以及甚至模型可以在被从服务器请求时加载在客户端设备上能有多快,来选择。选择来在特定地理位置处表示物体的模型可以随着时间的推移,因用户生成并上载了新的模型而改变。
[0042]各种地图瓦片、矢量等每一个可以与地理位置相关联,使得服务器110和/或客户端设备能够响应于接收地理位置而选择、检索、传送或显示一个或多个瓦片。例如,客户端设备可以向服务器传送请求。服务器可以识别相关信息并且将该信息传送给客户端设备。客户端设备可以接收该相关信息,并且使用其来在客户端设备的显示器上渲染地图图像。
[0043]服务器还可以访问搜索内容140。除查询地图信息138外,服务器还可以响应于对信息的用户请求而访问web内容和其他信息。
[0044]数据134还可以包括地理位置列表142。该信息可以作为地图信息138的一部分或独立于地图信息被存储。地理位置列表中的每一个特定地理位置可以与基于对与该特定地理位置相关联的3D模型的感知到的用户兴趣的用户兴趣值相关联。如在下面更详细描述的,可以使用这些值来例如对地理位置列表或与地理位置相关联的搜索结果进行排名和排序。
[0045]现将描述依据本发明的多个方面的各种操作。还应当理解的是,下面的操作不一定按照下述精确顺序来执行。相反,可以按照不同顺序或同时处理各步骤。
[0046]服务器可以使用3D物体数据来量化对特定地理位置的用户兴趣。在一个示例中,服务器可以确定已由用户上载的特定地理定位的物体的模型数,并且将该数量用作为用户兴趣的指示符。例如,越多的特定地理定位的物体或位置的3D模型可以暗示对该实体或位置的越大的用户兴趣。
[0047]在另一个示例中,服务器可以将基于位于一处的模型数的阈值用作为用户兴趣的指示符。在一个示例中,可以将位于一处的模型数用作为加权因子。在另一个示例中,如果物体或包含该物体的模型数大于阈值,例如超过5,则该位置可以被认为是“感兴趣的”。换句话说,如果越多用户正在创建并上载与特定地理位置相关联的3D模型,则越可能其他用户可能对该特定地理位置感兴趣。应当理解的是,随着模型总数增加,模型的该“阈值”数也可以增加。如果存在特定位置的零、一或非常少的模型,则可以假设对特定位置的兴趣非常低。例如,数据库136可以包括二十个不同的埃菲尔铁塔或包含埃菲尔铁塔的模型,但是仅包括一个Hopital de Longjumeau模型(两个均在法国巴黎)。在本示例中,由于相对高的埃菲尔铁塔模型数,因此,对这些3D物体的用户兴趣以及该位置的用户兴趣指示符值可以高于与Hopital de Longjumeau相关联的那些。
[0048]如在图3的示例性流程图300中所示,在块302,服务器接收物体的一个或多个3D模型。该物体与特定地理位置相关联。在块304,服务器识别与该特定地理位置相关联的所接收(上载或存储)的3D模型数。在块306,服务器基于所接收的3D模型数为该特定地理位置确定指示符值,其指示对地理位置的用户兴趣程度。
[0049]在另一个示例中,服务器可以将在一时间段内在物体的特定地理定位模型上的点击数用作为对该特定地理位置的用户兴趣的指示符。例如,客户端设备可以请求纽约市的地图信息。在图4的示例中,用户输入对纽约的企业A的局部搜索410。服务器可以查询地图信息并且返回纽约市的地图420、各种搜索结果430和相关地图标记440。该地图还可以包括建筑物450、道路460、交叉路口 470等的2D或3D表示、图像、相片等。用户可以通过点击建筑物的2D表示或图像来选择模型,以更近地查看该模型或请求关于帝国大厦的额夕卜信息。例如,如图5中所示,用户可以将鼠标图标505操纵到建筑物510上和/或点击建筑物510,并且接收带有3D模型的视图的弹出520。用户可以通过使用鼠标505来点击模型,来选择模型530。作为响应,可以向用户呈现该3D模型的显示以及各种其他信息,如图6中所示。
[0050]服务器可以记录并存储特定代表性模型在给定时间段内已被选择的次数。每一个“选择”或“点击”事件可以与模型相关联,并且被存储为例如流水帐或平均。优选地,为用户数据提供隐私保护,包括例如个人可识别信息的匿名、对数据的聚合、对敏感信息的过滤、加密、对敏感信息的哈希或过滤以移除个人属性、对信息存储的时间限制、或对数据使用或共享的限制。优选地,使数据匿名并且聚合,使得不显露任何个人用户数据。
[0051]作为示例,模型A可以在最近30天内接收平均每天100个点击,而模型B可以在最近10天内接收平均每天120个点击。在另一个示例中,如果模型A在最近10天内接收总计1000个点击,以及模型B在最近10天内接收总计1200个点击,则可以接收相同的平均每天点击数。在给定时间段内在特定代表性模型上的点击数越大,与该模型相关联的地理位置的用户兴趣程度(以及指示符值)就越大。
[0052]如上所述,为特定地理位置选择的代表性模型可以随着时间的推移而改变。因此,计数可以为特定地理位置而记录,并且可以跨越多个模型。例如,从时间t=0到时间t=5天,可以选择模型A来表示给定位置,以及在时间t=5天和t=10天之间,模型B可以替代模型A作为所选择的模型。为了确定在时段t=0至t=10的点击数,服务器可以记录与模型A和模型B相关联的点击数据,并且将这些计数组合在一起。在给定模型或模型链上的点击数越大,地理位置的重要性程度或对地理位置的用户兴趣程度就越大。再次,服务器可以使用该信息来为与物体或物体的地理位置相关联的搜索结果确定用户兴趣程度或指示符值。
[0053]如在图7的示例性流程图700中所示,在块702,服务器从多个发出请求的客户端设备接收对地理区域的地图的请求。在块704,作为响应,服务器将该地理区域的所请求的地图传送给发出请求的客户端设备。服务器还传送识别与在所传送的地图的地理区域内的特定地理位置相关联的物体的3D模型的信息。在块706,服务器然后从客户端设备中的一个或多个接收对3D模型的一个或多个请求(例如,其中用户已点击了识别3D模型的信息)。在块708,服务器识别在一时间段内对所接收的3D模型的所接收的请求数。在块710,服务器然后基于在该时间段内对3D模型的所接收的请求数为该特定地理位置确定指示符值。
[0054]除给定模型接收的点击数外,服务器还可以基于与用户动作相关联的各种其他标准,诸如(例如,通过将查询输入到搜索框610中并且选择作为结果的3D模型或通过选择模型,如图5中所示)向数据库136请求模型的频率、用户查看模型或与模型相关联的描述的平均时长(例如,用户查看模型620、描述630等有多久)等,来确定用户兴趣值。再次,这些值越大,对模型的用户兴趣越大,以及对地理位置的感知到的用户兴趣程度和指示符值越大。
[0055]如图8的示例性流程图800中所示,服务器接收对特定3D模型的请求,例如其中用户选择或点击搜索结果列表中的3D模型,如块802中所示。在块804,服务器识别对3D模型的所接收的请求数。在块806,服务器然后基于对3D模型的所接收的请求数为特定地理位置确定指示符值。
[0056]在另一个示例中,服务器可以将与地理定位的模型(基于其地图位置)的边界相关联、在所述边界附近或包含在所述边界内的POI数用作为对特定地理位置的用户兴趣的指示符。例如,特定3D物体可以与给定地理位置相关联。服务器可以识别在该给定地理位置处或附近的地图信息的一个或多个Ρ0Ι。在一个示例中,如果地理定位的物体是建筑物或其他结构,则所识别的POI可以位于该建筑物内(在同一地址)、在该建筑物的院子中、或紧挨着该建筑物。所识别的POI可以与3D物体相关联,并且该关联可以如上所述被存储。[0057]如果特定位置与相对高的POI数相关联,则该位置可以被认为对用户来说更感兴趣,因此,与更大的兴趣值相关联。例如,仅包括书店企业的第一建筑物可以被认为对用户来说比与咖啡店、书店企业和公园相关联的第二建筑物不那么感兴趣。因此,与三个POI相关联的第二建筑物可以具有比与单个POI相关联的第一建筑物的更高的感知到的用户兴趣程度(或指示符值)。
[0058]如图9的示例性流程图900中所示,在块902,服务器识别与和特定地理位置相关联的物体的3D模型相关联的兴趣点数。例如,如果兴趣点被包含在3D模型或物体的边界内或位于与该物体接近的地方,则该兴趣点可以与该3D模型相关联。如块904中所示,月艮务器然后基于与该3D模型相关联的兴趣点数为该特定地理位置确定指示符值。
[0059]在又另一个示例中,服务器可以将与地理定位的模型相关联的集合或标签数用作为对特定地理位置的用户兴趣的指示符。例如,将模型指定为特定集合的一部分的用户可以可能这样做,因为用户欣赏该模型,并且推测欣赏真实物体的地理位置。与相对高的集合数,例如5或更多,相关联的模型因此可以具有比被包含在非常少的集合中或根本没有的模型更高的用户兴趣程度和更高的指示符值。
[0060]如图10的示例性流程图1000中所示,在块1002,服务器接收与特定地理位置相关联的物体的一个或多个3D模型。在块1004,服务器然后为一个或多个3D模型中的每一个接收一个或多个用户定义的集合指定。在块1006,服务器然后识别与一个或多个3D模型相关联的集合数。在块1008,服务器然后基于该集合数为该特定地理位置确定指示符值。
[0061]在又另一个示例中,服务器可以将地理定位的模型的嵌入视图数用作为对特定地理位置的用户兴趣的指示符。嵌入视图可以被描述为在网站上以各种方式显示的模型的二维视图或图像(相对于在数据库136的情境下显示的3D模型的视图)。例如,广告、推销或提及特定3D模型的网站可以包括如上所述的该3D模型的二维图像。服务器可以在请求时向用户提供3D模型的二维视图,因此,识别所请求的图像以及嵌入视图数。例如,基于所使用的URL,当用户点击来查看图像的嵌入`视图或图像被请求向用户显示时,特定小服务程序可以接收对嵌入视图的请求。例如,嵌入视图可以采用以下形式:〈iframe src="http://a.com/3dwarehouse/mini?mid=34cb74ce8e5aled97d4896c8a58e0569&etyp=im&width=400&height=300〃frameborder=〃0〃scrolling=〃no〃marginheight=〃0〃marginwidth=〃0〃width="400"height="300"X/iframe>,而在数据库情境下使用的模型的图像可以采用以下形式:〈http://a.com/3dwarehouse/download?mid=34cb74ce8e5aled97d4896c8a58e0569&rtyp=lt&ctyp=oth er&ts=1286212773000>。在该示例中,第一 URL 使用“mini”小服务程序,以及第二使用“download”小服务程序。因此,基于提供图像的小服务程序的类型,服务器可以识别请求是否是关于嵌入视图,并且可以记录请求数。
[0062]对特定地理定位的模型的嵌入视图的请求数越大,对模型以及模型的相关联的地理位置的推测的用户兴趣值越大。因此,对在例如5个或更多网站中出现的模型的地理位置的用户兴趣程度或指示符值可以比对在非常少网站中出现或没有在网站中出现的模型的地理位置的用户兴趣更高。
[0063]如图11的示例性流程图1100中所示,在块1102,服务器识别与特定地理位置相关联的3D模型的2D视图数。这些“视图”可以被包括在各种网站中。在块1104,服务器然后基于2D视图数为该特定地理位置确定指示符值。[0064]在又另一个示例中,服务器可以使用特定地理位置已与一个或多个地理定位的模型相关联的时长。例如,年龄、或特定地理定位的模型已被包括在数据库中的时间可以指示相关联的地理位置的用户兴趣或重要性。这可以例如因为至少一个用户认为在地理位置处的物体足够感兴趣来创建并上载3D模型。如果特定地理定位的模型已被包括在数据库中达相对长的时间段,诸如四或更多年,则这可以指示对该地理位置比没有相关联的模型或具有已存在了短得多的时间段,诸如一年或更少,的模型的另一个地理位置更高的用户兴趣程度或指示符值。
[0065]如图12的示例性流程图1200中所示,在块1202,服务器接收与特定地理位置相关联的物体的3D模型。在块1204,服务器存储该3D模型达某一时间量。在块1206,服务器然后基于该3D模型已被存储的时间量为该特定地理位置确定指示符值。
[0066]可以单独或组合使用指示用户兴趣的指示符和值的上面示例来例如对地理位置列表进行排名和排序。例如,给定地理位置列表中的每一个特定位置可以与用户兴趣值相关联。用户兴趣值可以基于上述从3D模型数据等确定的因素中的一个或多个,来指示对特定位置的用户兴趣程度。
[0067]用户兴趣值可以用来对地理位置列表进行排名或可以仅与地理位置相关联,并且该关联被存储在服务器可访问的存储器中。可以周期性确定或更新所述值,因为各种指示符对值的贡献可以随着时间的推移而改变。例如,可以周期性,诸如每晚,运行过程,以为地理位置列表中的每一个地理位置确定用户兴趣值。用户兴趣值可以与每个实体相关联并且被存储。服务器可以接收查询并且作出响应,基于与查询的相关性来识别搜索结果列表。月艮务器还可以确定与查询的相关性值。对于被返回为查询的搜索结果的每一个特定实体,月艮务器可以检索与每一个特定实体的地理位置相关联的已存储的用户兴趣值。可以将用户兴趣值与在所识别的搜索结果列表中的每一个搜索结果的相应与查询的相关性值相组合,以确定结果的排名。例如,如果实体X和实体Y对于给定查询包括相同的与查询的相关性值以及另外相同的,则服务器可以使用用户兴趣值来确定实体X和实体Y是否将被显示,并且如果这样的话,它们将向用户显示的顺序。替选地,这些值可以由服务器响应于接收搜索查询并且识别搜索结果列表而为搜索结果列表实时计算。
[0068]用户兴趣值可以基于上述指示符中的一个或多个,诸如特定物体的模型数;在特定地理定位的模型上的点击数;与用户动作相关联的标准;与地理定位的模型的边界相关联、在所述边界附近或包含在所述边界内的POI数;以及特定地理位置已与一个或多个地理定位的模型相关联的时长。例如,如果存在被考虑的多个用户兴趣信号,则可以通过数学函数对用户兴趣值进行组合,以遍及全部多个用户兴趣指示符确定聚合的用户兴趣。
[0069]这种类型的计算的一个示例可以是用户兴趣指示符的加权和,其中将更大的权重给予更强的用户兴趣指示符。例如,加权和可以被编写为:
[0070]sum_{i=0}~ {i=N_{user_interest_factors}}{weight_{user_interest_factor_i}氺{user_interest_factor_i}}。
[0071]如果权重共计为I,则这可以是加权平均。
[0072]在一个示例中,创建在一个位置的3D模型的用户可以是比与同一模型交互的单个用户更强的用户兴趣指示符。在该示例中,特定模型的加权用户兴趣值可以是:
[0073](weight_{number of3D models overlapping this one}*number_of_3d_models_overlapping_this_one)+(weight_{number of interactions with the model in thelast week}氺{number_of_interactions_with_this_model_in_the_last_week}。
[0074]weight_{number of3D models over lapping this one}的值可以是.99,而weight_{number of interactions with the model in the last week}的值可以是0.01。在该示例中,与地理位置相关联的单个模型可以指示与和该模型的99个单独交互相同的用户兴趣量。因此,如果仅存在单个模型,并且与该模型交互了 99次,则总计用户兴趣分值可以被计算为:(0.99*1)+ (0.1*99)=1.0。
[0075]在另一个示例中,可以使上述加权和经历阈值非线性,诸如S形。这可以使用程序Matlab来说明。例如,可以使用下述来生成s形:
[0076]function y=sigmoid(x, shift, scale)
[0077]%SIGMOID returns the sigmoid function
[0078]%
[0079]%USAGE:y=sigmoid(x, shift, scale)
[0080]%
[0081]%Calculatesl./ (1+exp (- ((x-shift)./scale)));
[0082]%
[0083]Y=L / (1+exp (- ((x-shift)./scale))).[0084]在该示例中,“x”可以是用户输入的线性组合(加权和)。图13描绘了该s形,其`中位移已被设置成0.5,以及标度已被设置成0.1。
[0085]如图14的示例性流程图1400中所示,在块1402,服务器访问地理位置列表。对于每一个特定地理位置,服务器识别与该特定地理位置相关联的一个或多个指示符值(参见,例如,图6-12),并且基于所识别的一个或多个指示符值来生成用户兴趣值,如分别在块1404和1406中所示。在块1408,服务器将用户兴趣值与地理位置列表中的相应地理位置相关联。服务器然后基于相应用户兴趣值对地理位置列表进行排序,如块1410中所示。
[0086]在一个示例中,客户端设备可以向服务器请求信息。如果该请求是局部搜索,包括如上所述的地理搜索限制,则服务器可以根据地理位置列表选择搜索结果。如上所述,结果可以预先被排名或作为搜索请求的结果而被排名。服务器然后可以基于相关联的用户兴趣值,例如按照降序识别相关搜索结果。
[0087]在另一个示例中,可以使用用户兴趣值来对搜索结果进行移除或重新排序,以减少垃圾搜索结果。例如,对“帝国大厦,纽约”的搜索可以返回与在纽约市的真实帝国大厦有关的搜索结果列表。另外,结果还可以包括“垃圾”结果。这些垃圾结果可以包含引用所查询的词语的文本,但是垃圾还可以与不同于真实帝国大厦和包含在数据库中的3D模型的地理位置的位置相关联。由于与在垃圾结果的地理位置的用户兴趣值相比,与帝国大厦的正确位置相关联的用户兴趣值可以相对较高,因此,可以移除垃圾结果或使其排名非常低,以使其不会被给予被提供给发出请求的客户端设备的搜索结果、被传送但是不在客户端设备的显示器上显示、或在相对低的位置处显示(例如,朝着搜索结果列表的底部)。
[0088]因为在不背离权利要求所限定的本发明的情况下,可以利用上述特征的这些和其他变化以及组合,因此,示例性实施例的前面描述应当作为说明而不是作为对权利要求所限定的本发明的限制被看待。还应当理解的是,本发明的示例的提供(以及被表述为“诸如”、“例如”、“包括”等的分句)不应当被解释为将本发明限制在特定示例;相反,所述示例意在仅说明许多可能方面的部分。
[0089]工业实用性
[0090]本公开可以用于基于感知到的用户兴趣来对地理位置进行排名。
【权利要求】
1.一种计算机实现的方法,包括: 存储地理位置列表; 访问物体的3D模型的数据库,多个所述3D模型中的每一个与所述地理位置列表中的相应地理位置相关联; 处理器基于所述地理位置列表中的每一个特定地理位置是否包括所述多个3D模型中的给定一个的相应地理位置,为所述特定地理位置确定用户兴趣值,其中每一个用户兴趣值指示对所述特定地理位置的用户兴趣;以及 通过所述处理器基于所确定的值对所述地理位置列表进行排序以产生排序的地理位置列表。
2.根据权利要求1所述的方法,其中所述特定地理位置的所述用户兴趣值基于与包括在所述特定地理位置中的相应地理位置相关联的3D模型的数量。
3.根据权利要求1所述的方法,进一步包括:在一时间段内,接收对与包括在所述特定地理位置中的相应地理位置相关联的一个或多个3D模型的用户请求,其中每一个用户兴趣值基于在所述时间段期间所接收的用户请求的数量。
4.根据权利要求1所述的方法,其中所述多个3D模型中的每一个与一个或多个兴趣点相关联,以及每一个用户兴趣值基于与和包括在所述特定地理位置中的相应地理位置相关联的所述3D模型相关联的兴趣点的数量。
5.根据权利要求1所述的方法,其中所述多个3D模型中的每一个与一个或多个用户指定的物体类别相关联,并且每一个用户兴趣值基于与和包括在所述特定地理位置中的相应地理位置相关联的所述3`D模型相关联的类别的数量。
6.根据权利要求1所述的方法,进一步包括: 对多个网站进行扫描来识别与包括在所述特定地理位置中的所述相应地理位置相关联的所述3D模型的视图;以及 其中对所述特定地理位置的所述用户兴趣值基于所识别的视图数。
7.根据权利要求1所述的方法,其中所述多个3D模型中的每一个特定3D模型与定义所述特定3D模型的年龄的时间值相关联,并且每一个用户兴趣值基于与和包括在所述特定地理位置中的相应地理位置相关联的所述3D模型相关联的所述时间值。
8.根据权利要求1所述的方法,进一步包括: 从客户端设备接收搜索查询; 基于所排序的地理位置列表来识别搜索结果列表;以及 基于所排序的地理位置列表来传送所述搜索结果以在所述客户端设备的显示器上显/Jn ο
9.根据权利要求1所述的方法,进一步包括:对于所述地理位置列表中的每一个特定地理位置,基于与所述特定地理位置相关联的所确定的值来确定加权和,以及其中对所述地理位置列表进行排序进一步基于所述加权和。
10.一种计算机,包括: 存储器,所述存储器存储地理位置列表和物体的3D模型的数据库,多个所述3D模型中的每一个与所述地理位置列表的相应地理位置相关联; 被耦接到所述存储器的处理器,所述处理器可操作来:基于所述地理位置列表中的每一个特定地理位置是否包括所述多个3D模型中的给定一个的相应地理位置,为所述特定地理位置确定用户兴趣值,其中每一个用户兴趣值指示对所述特定地理位置的用户兴趣;以及 基于所确定的值对所述地理位置列表进行排序以产生排序的地理位置列表。
11.根据权利要求10所述的计算机,其中所述处理器可进一步操作来基于与包括在所述特定地理位置中的相应地理位置相关联的3D模型的数量来确定所述特定地理位置的用户兴趣值。
12.根据权利要求10所述的计算机,其中所述处理器可进一步操作来: 在一时间段内,接收对与包括在所述特定地理位置中的相应地理位置相关联的一个或多个3D模型的用户请求;以及 基于在所述时间段期间所接收的用户请求的数量来确定每一个用户兴趣值。
13.根据权利要求10所述的计算机,其中所述多个3D模型中的每一个与一个或多个兴趣点相关联,并且所述处理器可进一步操作来基于与和包括在所述特定地理位置中的相应地理位置相关联的所述3D模型相关联的兴趣点的数量来确定每一个用户兴趣值。
14.根据权利要求10所述的计算机,其中所述多个3D模型中的每一个与一个或多个用户指定的物体类别相关联,并且所述处理器可进一步操作来基于与和包括在所述特定地理位置中的相应地理位置相关联的所述3D模型相关联的类别的数量来确定每一个用户兴趣值。
15.根据权利要求10所述的计算机,其中所述处理器可进一步操作来: 对多个网站进行扫描来识别与包括在每一个特定地理位置中的相应地理位置相关联的所述3D模型的视图;以及 其中所述处理器可进一步操作来基于所识别的视图数为每一个特定地理位置确定每一个用户兴趣值。
16.根据权利要求10所述的计算机,其中所述多个3D模型中的每一个特定3D模型与定义所述特定3D模型的年龄的时间值相关联,并且所述处理器可进一步操作来基于与和包括在每一个特定地理位置中的相应地理位置相关联的所述3D模型相关联的所述时间值来确定每一个用户兴趣值。
17.根据权利要求10所述的计算机,其中所述处理器可进一步操作来: 从客户端设备接收搜索查询; 基于所排序的地理位置列表来识别搜索结果列表;以及 基于所排序的地理位置列表来传送所述搜索结果以在所述客户端设备的显示器上显/Jn ο
18.根据权利要求10所述的计算机,其中所述处理器可进一步操作来:对于所述地理位置列表中的每一个特定地理位置,基于与所述特定地理位置相关联的所确定的值来确定加权和,并且其中对所述地理位置列表进行排序进一步基于所述加权和。
【文档编号】G06T19/00GK103493044SQ201180068292
【公开日】2014年1月1日 申请日期:2011年12月20日 优先权日:2010年12月23日
【发明者】布赖恩·埃德蒙·布鲁英顿, 布赖恩·甘蒙·布朗, 詹姆士·安东尼·古根莫斯, 戴尔·霍金斯, 布赖斯·斯托特 申请人:谷歌公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1