CN103947230A - 发现相关地点以及自动设定其大小 - Google Patents
发现相关地点以及自动设定其大小 Download PDFInfo
- Publication number
- CN103947230A CN103947230A CN201280056405.6A CN201280056405A CN103947230A CN 103947230 A CN103947230 A CN 103947230A CN 201280056405 A CN201280056405 A CN 201280056405A CN 103947230 A CN103947230 A CN 103947230A
- Authority
- CN
- China
- Prior art keywords
- measurement
- places
- barycenter
- place
- subset
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/02—Services making use of location information
- H04W4/021—Services related to particular areas, e.g. point of interest [POI] services, venue services or geofences
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/28—Databases characterised by their database models, e.g. relational or object models
- G06F16/284—Relational databases
- G06F16/285—Clustering or classification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/29—Geographical information databases
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/02—Services making use of location information
- H04W4/023—Services making use of location information using mutual or relative location information between multiple location based services [LBS] targets or of distance thresholds
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/02—Services making use of location information
- H04W4/029—Location-based management or tracking services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/30—Services specially adapted for particular environments, situations or purposes
- H04W4/33—Services specially adapted for particular environments, situations or purposes for indoor environments, e.g. buildings
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W64/00—Locating users or terminals or network equipment for network management purposes, e.g. mobility management
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/20—Services signaling; Auxiliary data signalling, i.e. transmitting data via a non-traffic channel
- H04W4/21—Services signaling; Auxiliary data signalling, i.e. transmitting data via a non-traffic channel for social networking applications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/912—Applications of a database
- Y10S707/918—Location
- Y10S707/921—Spatial
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Remote Sensing (AREA)
- Telephonic Communication Services (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Navigation (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
一个或一个以上移动装置在沿着路径移动的同时进行测量。每一测量可包括无线发射器的识别符的特定群组和对应无线信号的强度。沿着路径依序进行测量的一集合,且识别所述测量的子集满足关于所述子集中包含的测量的类似性的量度值的测试。通过将所述测量的所述刚刚描述的子集与额外测量的类似子集比较(例如,通过群集)来识别新的相关地点。或者,通过将所述测量的所述刚刚描述的子集与测量的预先计算的模型比较来识别已知相关地点(例如,具有标签)。并且,可将所述测量的所述刚刚描述的子集与另一路径的测量的对应子集比较例如以识别其中的共同部分。
Description
优先权申请案的交叉参考
本申请案主张2011年9月28日申请且标题为“发现相关地点以及自动设定其大小(Discovering and Automatically Sizing Places of Relevance)”的第61/540,426号美国临时申请案的权益和优先权,所述临时申请案全文以引用的方式并入本文中。本申请案还主张2012年9月26日申请且标题为“发现相关地点以及自动设定其大小(Discovering andAutomatically Sizing Places of Relevance)”的第13/627,823号美国申请案的权益和优先权,所述申请案全文以引用的方式并入本文中。
技术领域
本发明的方面涉及通信技术、计算技术,和/或基于位置的技术。具体来说,本发明的方面涉及用于发现相关地点和/或自动设定其大小的方法、设备、系统和计算机可读媒体。若干实施例基于在一个或一个以上移动装置正沿着与同用户相关的地点有关的路径(例如,在所述地点开始、结束或穿过所述地点的路径)的同时所述移动装置进行的测量发现所述同用户相关的地点。
背景技术
相关地点(POR)可为对于可例如为移动计算装置(例如,无线手持机、蜂窝式电话、智能电话、个人数字助理(PDA)等)的用户的人重要的任何物理位置和/或区域。特定地点对于用户来说是否重要可取决于用户在对应于所述特定地点的物理位置和/或区域中所花的时间周期且/或依据所述时间周期来测量。因此,如果计算装置的用户(以及对应的,计算装置本身)在特定地点保持静止且/或花费显著长的时间周期,那么计算装置可确定所述特定地点为POR。
在现有技术中还已知要用户供应标签以识别与用户相关的地点。举例来说,第一测量集合可由移动装置在所述移动装置静止时进行。用户可随后将进行这些测量的地点标记为“办公室”。类似地,第二测量集合可在移动装置在另一位置静止时进行,所述地点可随后由用户标记为“家”。因此,进行第一和第二测量集合的区域构成两个与用户相关的地点。
因此,需要不仅基于当移动装置静止时进行的测量而且还基于当移动装置不静止时进行的测量(即,当移动装置正移动时进行的测量)识别上文描述的类型的相关地点。当移动装置由用户沿着一商店(例如百货商店,比如J.C.Penny或Macy百货,在商店里,用户不会在一个点花费几分钟静止而是用户通常在所述商店的界限内四处走动)内的路径移动时,出现发明者指出的一个问题。因此,需要如下文描述使用在移动装置正移动时进行的测量来识别相关地点。
发明内容
本发明的方面涉及发现一个或一个以上相关地点(POR)和/或自动设定其大小。举例来说,一些POR可能不经界定以表示单一特定点(或进行无线信号的测量的地点),而是可经界定以表示包含多个点的真实世界中的路径。另外其它POR可经界定以表示真实世界中的邻近和/或邻接点的集合。通过实施本发明的一个或一个以上方面,计算装置(和/或其上执行的软件)可能够向用户提供增强的功能性,例如位置特定偏移(例如,附近商店、餐厅等的优惠券)、位置特定广告、其它基于位置的特征,和/或位置相关信息等。
根据一个或一个以上方面,在发现一个或一个以上延伸相关地点的过程中,可识别多个相关地点。可接收指定待与所述多个相关地点的一个或一个以上相关地点相关联的一个或一个以上标签的用户输入。随后,可基于所接收的用户输入确定所述多个相关地点中的至少两个相关地点是否与所述一个或一个以上标签中的第一标签相关联。接着,可基于一个或一个以上距离量度(指示质心之间的差异性)确定所述至少两个相关地点是否邻近。随后,响应于确定所述至少两个相关地点与第一标签相关联,且响应于确定所述至少两个相关地点邻近,可确定所述至少两个相关地点界定延伸相关地点。
在至少一个布置中,从至少两个不同用户获得所述一个或一个以上标签。在一个或一个以上额外布置中,所述一个或一个以上标签的第一集合可指定为公共的且所述一个或一个以上标签的第二集合可指定为所述至少两个不同用户中的至少一个用户私人的。在另外一个或一个以上额外布置中,第一标签可包含在第一集合中。
根据一个或一个以上额外和/或替代方面,在发现一个或一个以上基于路径的相关地点的过程中,可接收多个位置值。随后,可基于所述多个位置值识别一个或一个以上连续走动区段。接着,对于至少两个经识别的连续走动区段,可产生对应于所述至少两个经识别的连续走动区段的每一者的质心的树。随后,可基于所产生的质心树确定所述至少两个经识别的连续走动区段是否与第一路径匹配。
在至少一个布置中,所产生的质心树的一者可包含多个级别。在一个或一个以上额外布置中,确定所述至少两个经识别的连续走动区段是否与第一路径匹配可包含用递归方式比较所产生的质心树的对应级别。在另外一个或一个以上额外布置中,确定所述至少两个经识别的连续走动区段是否与第一路径匹配可包含单独群集所产生的质心树的对应级别。
在若干实施例中,移动装置在由沿着路径走动的用户携载的同时进行无线信号的测量。每一测量可包括无线发射器的识别符的特定群组和对应无线信号的强度。沿着用户的路径在时间序列中进行一个集合的测量,且识别这些测量的子集满足例如关于子集中包含的测量的类似性的量度的一个或一个以上预定测试。例如通过将所述测量的刚刚描述的子集的质心(和/或其它属性,例如标签)与额外测量的类似子集的质心(和/或其它属性,例如标签)比较(例如,通过群集)来识别新的相关地点。或者,通过将所述测量的刚刚描述的子集与测量的预先计算的模型比较来识别已知相关地点(例如,具有标签)。并且,可将所述测量的刚刚描述的子集与另一路径的测量的对应子集比较例如以识别其中的共同部分。
附图说明
图1A说明根据本发明中的一些实施例的一个或一个以上说明性方面发现一个或一个以上延伸相关地点和/或自动设定其大小的实例方法。
图1B说明在室内地图上根据本发明中的一些实施例的一个或一个以上说明性方面概念上展示的实例延伸相关地点。
图2A说明根据本发明中的一些实施例的一个或一个以上说明性方面发现一个或一个以上基于路径的相关地点和/或自动设定其大小的实例方法。
图2B说明在室内地图上根据本发明中的一些实施例的一个或一个以上说明性方面概念上展示的基于路径的相关地点。
图3A以高级流程图说明在本文描述的一些实施例中由移动装置120执行以在沿着路径移动的同时进行无线信号的测量的动作。
图3B以二维曲线图说明随时间进行的测量之间在Y轴上的类似性(例如,0到1的范围内)的曲线,作为沿着X轴的测量时间(例如,0到10分钟的范围内)的函数。
图3C以高级流程图说明在所描述的一些实施例中由图5A的移动装置120的处理器100执行的动作。
图4A以高级框图说明若干实施例的移动装置120。
图4B以表说明图4A的发现系统130中使用的一个或一个以上参数。
图4C说明在所描述的一些实施例中在一实例中通过以下步骤进行的图4A的发现系统130的操作:首先基于测量时间(例如,如时间戳所指示)群集WiFi测量,随后合并群集以排除离群值,随后进行持续时间过滤以排除除步行以外的行进期间进行的测量,随后进行类似性群集以识别相关地点(POR)。
图5A以伪码说明执行时间排序数据的群集的一些实施例的时间群集模块。
图5B以伪码说明合并群集借此排除离群值的一些实施例的群集合并模块。
图5C以伪码说明排除除步行以外的行进期间进行的测量(例如,当在移动车辆(例如,自行车或汽车)内时进行的测量)的一些实施例的持续时间过滤模块。
图5D以伪码说明基于访问流和已知相关地点的集合识别新的相关地点的一些实施例的POR提取模块。
图5E以伪码说明基于访问流和已知相关地点的集合识别用户在已知相关地点的存在的一些实施例的POR辨识模块。
图6A以高级流程图说明在所描述的一些实施例中由图4A的计算机系统120的处理器100执行的额外动作。
图6B说明在用户正沿着路径“A”步行穿过办公室600(从格子间601开始且在休息室602结束)时计算机系统120进行的测量。
图6C说明在图4A的计算机系统120的存储器110中的测量A1...AI...AN以及这些测量上的质心C1 A,以及AI的类似性属性(或类似性量度)。
图6D说明存储器110中的针对图6B中的路径A的根节点621。
图6E说明在存储器110中图6B中的路径A的两个部分,作为通过使用类似性量度以分别形成测量的两个子集(即,测量A1-AI和测量AJ-AN)而形成的子路径AL和AR。
图6F说明由根节点621及其子节点622和623基于图6E中说明的两个子集A1-AI和AJ-AN形成的树620。
图6G说明在存储器110中图6B中的路径A的六个部分,作为通过使用类似性量度以在图6E中说明的两个子集A1-AI和AJ-AN的每一者内形成测量的三个子集而形成的子-子路径ALL、ALM、ALR、ARL、ARM和ARR。
图6H说明现经扩增以包含图6G中说明的六个部分(以及因此六个子集)的节点的图6F的树620。
图7以流程图说明在一些实施例中经执行以将图6E和6G中说明的类型的测量的子集与额外测量的子集比较以在一些实施例中识别新相关地点的动作。
图8A以高级流程图说明由图5A的移动装置120的处理器100执行以将路径的测量的子集与另一路径的测量的子集比较的额外动作。
图8B说明沿着穿过办公室600的两个路径“A”和“B”的测量,从两个格子间开始且均在休息室结束。
图8C说明在图5A的移动装置120的存储器110中沿着图8B的两个路径的测量,这些路径被再分为多个子集,所述多个子集接着被比较。
图8D说明使图8B的两个路径上的测量的子集匹配。
图9A说明在室内地图上根据本发明中的一些实施例的一个或一个以上说明性方面自动设定相关地点(POR)的大小的实例。
图9B说明在图9A的延伸POR910中在本发明中的一些实施例的一个或一个以上说明性方面中,在访问911-914(展示为具有影线的圆圈)之间,指示用于自动设定延伸POR910的大小的测量(展示为双向箭头921-926)的差异性的逐对距离。
图9C以曲线图说明用于设定大小的延伸POR中的访问之间的逐对距离(沿着x轴)的发生(沿着y轴)频率,为dsize=μ+aσ(例如,a=3,但依据实施例,a可为例如2、2.99、4等任何恒定值)。
图9D说明在本发明中的一些实施例的一个或一个以上说明性方面中将新访问931添加到延伸POR910的访问911-914以获得新的延伸POR930。
图9E以流程图说明在本发明中的一些实施例的一个或一个以上说明性方面中在一些实施例中经执行以自动设定相关地点的大小的动作。
图9F说明分别依据访问CV1是否在距延伸POR的中心距离dsize/b内或访问CV2是否在距延伸POR的中心距离dsize与dsize/b之间(例如,b=2,但依据实施例,b可为例如1、1.99、3等任何恒定值)而扩展或收缩的延伸POR。
图9G以高级流程图说明在所描述的实施例的一些方面中由处理器100执行的动作。
具体实施方式
以下描述中的若干实施例延伸仅将相关地点视为用户在足够长的时间周期(预定为例如10秒)内保持静止的地点(即,对于用户具有语义相关性的静止地点)的系统,以具有以下两个增强的至少一者:(A)基于路径的相关地点和(B)延伸相关地点。
第一类型的相关地点(称为基于路径的相关地点)是用户经常步行穿过或用户趋向于经常四处走动且持续延长的时间周期(例如,10分钟)的区域。此类相关地点(“POR”)在下文也可称为路径。代替于作为传统轨迹,基于路径的POR可以较松散地界定为表示真实世界中用户的步行发生的区。实例可为超市或商场,用户不一定在一个点花费几分钟,而是可通常在商店的界限内四处走动。
第二类型的相关地点(称为延伸相关地点)是大量邻近或邻接的所发现的静止相关地点可由用户语义上视为同一相关地点的区域。实例可包含自助餐厅或演讲厅或剧院,从用户的视角来看,在这些地点不同座位可语义上视为同一地点,但现有算法可能识别出多个静止相关地点。对此第二类型的相关地点的每次访问可能是到同一地点的一个部分,但本文描述的若干实施例将对应于所述地点的不同部分的多次访问识别为到同一语义相关地点。
在一些实施例中,延伸相关地点的方法消耗静止POR方法的输出,静止POR方法产生用户在其中保持静止持续预定时间周期(例如,10秒)的访问期间的信号测量,且群集那些测量以形成地点(例如,下文参看图4A所描述)。由静止POR方法输出的地点在一些实施例中例如基于从一个或一个以上用户接收的标签(例如,字符串)的输入而标记或注释(通过与标签关联)。若干实施例中的延伸相关地点的方法接收并自动比较标签(除了比较质心外)且当标签相同或足够类似(依据预定阈值)时,自动将相应地点标记为包含在延伸地点中。标签的比较可由计算装置依据实施例以任何方式执行(例如,具有汉明距离≤2的标签可视为类似的)。
在一些实施例中,刚刚描述的延伸相关地点的方法以递归方式执行,使得任何数目的地点可包含在延伸POR中。注意,刚刚描述的延伸相关地点的方法不使用(且独立于)进行测量的时间(例如,不使用测量的时间戳)。相比之下,基于路径的相关地点的方法使用测量的时间序列(测量根据测量时间相对于彼此排序)来识别待群集的地点和/或测量的质心。举例来说,当用户对一地点的访问的特定序列重复几次时,计算机系统120在执行基于路径的相关地点的方法时学习到这一点。因此,在一些实施例中,基于路径的相关地点的方法不作为整体使用POR方法,而是使用其中的一些步骤,这些步骤依据实施例以不同方式执行(如本文参看图4A-4C描述)。
在计算装置的某些实施例中,可如下形成延伸相关地点:(1)用户输入将相同(或足够类似)标签应用于不同的静止相关地点;(2)可以使用用于发现静止相关地点的距离量度(指示测量之间的差异性)自动确定多个静止相关地点是邻近或邻接的。满足条件1和2(例如,以上两个条件)的所有静止相关地点可接着与较大延伸相关地点相关联。此方法可实现将地点正确地发现(例如,自动识别)为延伸相关地点,所述地点在真实世界中可为例如自助餐厅和剧院。另外,计算装置可经配置而不合并用户可选择为有效以在静止相关地点不满足条件2(例如,上文的第二条件)的情况下形成延伸相关地点的多个地点。
为在从多个用户获得标签时应用此方法来自动发现延伸相关地点,可能需要谨慎选择标签。举例来说,如果两个雇员将一个静止相关地点标记为办公室或我的办公室,且他们的办公室相邻,那么不将这些办公室合并(例如,由服务器计算机)到单一延伸相关地点中。在一些布置中,服务器计算机内可存在针对每一标签的将标签界定为“公共”或“私人”的范围。为避免此问题,静止相关地点的合并、延伸相关地点的发现可能仅由具有公共标签而非个人/私人标签的计算装置进行。标签的范围可预知或由用户设定。在后一情况下,当多个用户选择同一标签的不同范围时可能需要冲突解决手段(例如,冲突解决方法)。
图1A说明根据本发明的一个或一个以上说明性方面发现一个或一个以上延伸相关地点和/或自动设定其大小的实例方法。根据一个或一个以上方面,图1A中说明的实例方法的步骤中的任一者和/或全部可实施在一个或一个以上计算装置(例如,计算机系统120)中且/或由所述一个或一个以上计算装置执行,所述一个或一个以上计算装置依据实施例可为移动和/或静止的。另外或作为替代,图1A中说明的实例方法的步骤中的任一者和/或全部可作为计算机可执行指令存储在计算机可读媒体中,所述计算机可执行指令当执行时可致使一个或一个以上计算装置执行所述实例方法。
在步骤101中(图1A),可识别多个相关地点。举例来说,在步骤101中,计算装置(例如,计算机系统120)可基于计算装置获取的位置数据识别多个相关地点。此位置数据可包含WiFi信号(称为WiFi迹线)、运动分类、步数、方向信息、声音指纹和/或其它位置数据等的一个或一个以上测量。使用此类位置数据,计算装置可例如在用户(和/或计算装置)在特定区域或位置中保持且/或保持了静止持续足够长的时间周期(例如,如果用户在所述特定区域或位置中花费的时间超过阈值(例如,10秒))的情况下确定所述特定区域或位置(其可对应于位置数据的一个或一个以上项目)是相关地点。在一些布置中,可除此之外或代替于此使用其它方法和/或步骤来识别多个相关地点。
在步骤102中,可接收指定一个或一个以上标签的用户输入。举例来说,在步骤102中,计算装置可接收对应于一个或一个以上标签(例如,语义标记)到一个或一个以上相关地点的用户指派的用户输入(例如,经由一个或一个以上用户接口)。举例来说,用户可能将一个相关地点标记为“我的办公室”,且用户可能将另一相关地点标记为“购物中心”。一个或一个以上其它标签可类似地由用户指派且/或由计算装置接收。
在步骤103中,可确定同一标签是否已指派给至少两个相关地点。举例来说,在步骤103中,计算装置可基于步骤102中接收的用户输入来确定例如所述多个相关地点中的至少两个相关地点是否已被指派得到同一标签。举例来说,计算装置的用户可能已将一个相关地点标记为“Morehouse市场”且将另一可能附近的相关地点也标记为“Morehouse市场”。可除此之外或代替于此使用其它方法和/或步骤来确定是否已将同一标签指派给至少两个相关地点。
举例来说,在一些布置中,标签可由不同用户指派。在以上实例中,举例来说,第一用户可能已将第一相关地点标记为“Morehouse市场”且第二用户(不同于第一用户)也可能已将第二可能附近的相关地点也标记为“Morehouse市场”。另外或作为替代,用户可能能够指定施加到相关地点的标签为公共的还是私人的。公共标签可例如可由其他用户查看,且/或可由系统使用以发现延伸相关地点,如本文所述。另一方面,私人标签可能例如不可由其他用户查看,且/或可能不能由系统使用以发现延伸相关地点。
如果在步骤103中确定同一标签尚未指派给至少两个相关地点,那么方法可结束。另一方面,如果在步骤103中确定同一标签已指派(或类似标签已指派)给至少两个相关地点,那么在步骤104中,可基于一个或一个以上距离量度(指示测量之间的差异性)确定例如所述至少两个相关地点是否邻近和/或邻接。根据一个或一个以上方面,如果满足测试从而指示地点在彼此的特定距离内(例如,当指示差异性的距离的范围在0与1之间时,距离小于0.1),那么两个地点可视为邻近和/或邻接。可除此之外或代替于此使用其它方法和/或步骤来确定所述至少两个相关地点是否邻近和/或邻接。
因此,继续上文论述的实例,计算装置可在步骤104中基于一个或一个以上距离量度确定所述至少两个相关地点(例如,所述具有标签(“Morehouse市场”)的至少两个相关地点)是否邻近(例如,在差异性方面在彼此的特定距离内)。举例来说,计算装置可使用上文描述的位置数据计算例如所述至少两个相关地点中的测量之间的距离(指示差异性)。举例来说,一些实施例的计算装置可在步骤104中基于比较至少两个质心而确定对应的两个地点是否彼此类似。
随后,如果在步骤104中确定所述至少两个相关地点不邻近和/或邻接,那么方法可结束。另一方面,如果在步骤104中确定所述至少两个相关地点邻近和/或邻接,那么在步骤105中,可确定所述至少两个相关地点界定延伸相关地点。举例来说,如果计算装置确定上文论述的实例中的所述至少两个相关地点(例如,标记为“Morehouse市场”的相关地点)邻近和/或邻接,那么在步骤105中,计算装置可确定所述至少两个相关地点界定延伸相关地点。因此,在此类实施例中,计算装置将包含至少这两个地点(例如,在列表或数据库中,依据实施例)的延伸相关地点存储在存储器110中(例如,图4A的POR地点模型135的集合中)。
图1B说明在室内地图上根据本发明的一个或一个以上说明性方面概念上展示的延伸相关地点的实例。如图1B中所见,公司的办公大楼201可包含各个房间、办公室、空间和/或其它区域,例如接待区域202、走廊203、第一办公室204、第二办公室205、自助餐厅206和楼梯间207。根据一个或一个以上方面,虽然这些房间、办公室、空间和/或其它区域的每一者可一起视为相关地点,但这些房间、办公室、空间和/或其它区域可由如本文描述的计算装置界定为延伸相关地点。在若干实施例中,计算装置主要基于测量且在不使用图1B所示的类型的一个或一个以上大楼的布局的情况下界定延伸POR。然而,其它实施例确实使用互连的一个或一个以上大楼的布局、室内地图、楼面平面图和/或其它地理信息与测量组合。
在一些实施例中,相关地点(POR)可由落在中心点周围的特定距离内(且满足一组额外准则)的足够大量WiFi测量界定。新类型的相关地点“路径”现在可以界定为由连续走动区段给出。“走动”可经由以下各项界定:(a)运动分类符的输出;和/或(b)WiFi信号的测量的连续改变。“连续”可经由以下各项界定:(a)大于t_min的总体持续时间,(b)没有中断长于i_max。从以上定义可推断出,在信号级别上,路径是在一时间周期上收集的WiFi测量(信号强度的值,和信号识别符)的序列。如果在运动的情况下工作,那么计算机系统120还可具有关于步数和方向的信息(例如,直接改变的序列)。
因此,本文描述的类型的许多方法辨识轨迹且将轨迹分段。下文的论述描述路径且审视以下方法:(a)其可为上文参看图1A和1B描述的地点方法的延伸;(b)其可能仅以WiFi迹线开始,但可容易并入有运动分类、步数计数、方向信息、声音指纹等;(c)其可聚焦于广泛界定的路径的重现的辨识问题(例如,在比如超市、商场的特定部分或通向自助餐厅的过道等特定区域内走动)而非准确的轨迹描述;(d)其可以低计算复杂性实施;(e)其可允许在不同空间尺度上考虑路径重叠。因此,对于一些应用,可能有兴趣知晓一个人正在特定大楼或大型超市内走动。因此,在同一相对大区域内的两个路径可视为匹配的。在其它应用中,可查看特定走廊(例如,作为到自助餐厅或会议室的到达路线)。
图2A说明根据本发明的一个或一个以上说明性方面发现一个或一个以上基于路径的相关地点和/或自动设定其大小的实例方法。根据一个或一个以方面,图2A中说明的实例方法的步骤中的任一者和/或全部可实施在一个或一个以上计算装置(例如,计算机系统120)中且/或由所述一个或一个以上计算装置执行。另外或作为替代,图2A中说明的实例方法的步骤中的任一者和/或全部可作为计算机可执行指令存储在计算机可读媒体中,所述计算机可执行指令当执行时可致使一个或一个以上计算装置执行所述实例方法。
在步骤221中,可接收多个位置值。举例来说,在步骤221中,计算装置(例如,计算机系统120)可接收多个位置值。此类位置值可包含类似于上文描述的位置数据的位置数据和/或由其组成。举例来说,位置数据可包含一个或一个以上WiFi迹线、运动分类、步数、方向信息、声音指纹和/或其它位置数据等。
在步骤222中,可识别一个或一个以上连续走动区段。根据一个或一个以方面,“走动”可指代如运动分类符的输出测量的运动和/或WiFi测量的连续改变,如下文进一步论述,且“连续”可指代具有大于第一阈值(例如,t_min)的总体持续时间且/或没有任何中断比第二阈值(例如,i_max)长的运动。因此,继续上文论述的实例,计算装置可基于例如所接收的多个位置值识别一个或一个以上连续走动区段。
在步骤223中,可产生测量的质心的一个或一个以上树。举例来说,在步骤223中,计算装置可产生在第一所识别连续走动区段上进行的测量的质心的第一树和在第二所识别连续走动区段上进行的测量的质心的第二树。在一个或一个以上布置中,质心的每一树可包含多个级别。下文进一步论述产生质心的一个或一个以上树的方法和/或步骤。可除这些之外或代替于这些使用其它方法和/或步骤来产生质心的一个或一个以上树。
在步骤224中,可比较所产生的质心的树以确定一个或一个以上所识别连续走动区段是否与同一路径匹配。举例来说,在步骤224中,计算装置可执行路径匹配(其可涉及例如以递归方式比较测量的质心的所产生的树的对应级别),如下文进一步描述。另外或作为替代,计算装置可例如执行类似性群集(其可涉及例如单独群集质心的所产生的树的对应级别),如下文进一步描述。
图2B在室内地图上说明根据本发明的一个或一个以上说明性方面概念上展示的基于路径的相关地点。如图2B中可见,购物中心241可包含各种商店、餐馆、人行道和/或其它区域,例如第一商店242、人行道243、第二商店244、第三商店245、餐馆246和第四商店247。不同的人在购物中心241四处走动时可能采取不同路径。举例来说,第一人可能沿着路径250步行(图2B),而第二人可能沿着路径251步行(图2B)。尽管第一人和第二人的轨迹可能在一些方面不同,但第一人和第二人均正在购物中心241四处走动。因此,购物中心241可视为其中发生走动的松散界定区,且因此路径250和路径251可界定基于路径的相关地点。
在若干所描述的实施例中,当用户正步行时,呈移动装置(例如,智能电话)的形状因数的计算机系统120由用户携带。因此,计算机系统120沿着用户正在上面步行穿过一区域的路径移动。在此移动期间,计算机系统120在动作301中(图3A)测量一个或一个以上信号,例如由无线接入点(WAP)发射的无线信号,且去往动作302。在动作302中,计算机系统120存储当前WiFi测量的元组(例如,正测量的信号的识别符(例如,源的地址)、特定WAP的WiFi信号的强度)且接着去往动作303。在动作303中,计算机系统120检查针对测量已知且经识别的所有WiFi信号是否已测量,以形成当前测量。在此阶段,如果尚未针对当前测量测量所有信号,那么计算机系统120可通过返回到动作301而进行额外测量以形成额外WAP的元组。
当已测量当前测量的所有信号时,计算机系统120去往动作304,且输出当前测量的所有元组以及额外输出当前日时的时间戳,例如供计算机系统120内的软件(例如,应用程序、操作系统、驱动程序或操作系统下的专门软件)使用,或者供计算机系统120耦合到的服务器计算机内的软件使用。在动作304中输出的测量的实例在6B图和6C中展示为每分钟(例如,分别在上午9.00、上午9.01和上午9.02,如图6C中说明)连续一个接一个进行的测量A1...AI...AN的时间序列(例如,当用户正沿着穿过图6B中的办公室600的路径“A”步行时,从格子间601开始且在休息室602结束)。
在若干实施例中,计算机系统120经编程以基于当前测量(或WiFi迹线)准备向量(也称为“特征向量”)。此向量的维度可由计算机系统120基于正测量的WiFi信号的源的数目自动选择,且每一信号的所接收信号强度指示符(RSSI)值用作向量中的维度的值。在此类实施例中,当未感测到待测量的WiFi信号时,计算机系统120可经编程以将向量中的对应元素设定为可能的最低RSSI值(即,RSSI值的范围的最小值)。
在若干实施例中,在动作304中输出测量之后(且/或在产生向量之后),计算机系统120去往动作305。在动作305中,一些实施例的计算机系统120接着等待(A)刚刚测量的信号的改变或(B)预定时间周期(例如,一分钟一次)或(C)这两个条件(A)和(B)的组合。在动作305中的条件(A)的一些实例中,计算机系统120可执行类似性函数以获得类似性量度或差异性的距离来基于测量比较所形成的向量(如上所述),以便确定是否已存在改变。
在图6C中说明的实例中,周期性地(例如,每分钟一次)进行无线信号的测量,但如将容易了解,此类测量可以其它时间间隔(例如,每隔15秒或每隔5分钟)进行,且此时间间隔可在一些实施例中例如基于在进行测量时计算机系统120可用的电池功率而变化。在一些实施例中,当多个测量之间未检测到改变时,动作305可使用所述多个测量获得质心(如图6C所示),且所述质心可用于识别如本文描述的地点。
当检测到测量之间的改变时,计算机系统120例如通过使用类似性的阈值(例如,见图4B)而评估所述改变是否明显,且如果是,那么计算机系统120返回到动作301(上文描述)。图4B中说明的类型的阈值可针对一些应用预先界定(例如,常数,其可基于实验数据设定)。在其它实施例中,图4B的阈值可为动态的(例如,基于优化导出以获得最佳结果),使得所述阈值可针对计算机系统120中的不同应用而不同。举例来说,当信号/测量的噪声(例如,随时间的噪声)为低(例如,另一常数以下)时,可在计算机系统120的某些实施例中通过使用优化方法放松用于检测信号改变的关于类似性的动态阈值(例如,见图4B)。动态阈值的使用可能需要计算和/或测量,这具有耗尽计算机系统120的电池的缺点。
在一些实施例中,相关地点由处理器100在找到某一点(“中心点”)周围类似的足够大量测量后识别,且进一步满足一组额外准则,例如类似标签和/或时间序列中的发生。在一些实施例中,使用无线接入点(WAPS)的所接收信号强度(RSSI)的测量在以下意义上确定类似性值:给定测量的集合,这些测量彼此类似的程度。注意,刚刚描述的类似性值比真实世界中的物理距离更具一般性,因为类似性可在真实世界中的非线性空间上(例如,在大楼中的一个或一个以上墙上)界定。
如上所述,一些实施例使用WiFi信号的测量来准备n个元素的向量,其中每一元素(也称为“维度”)表示WiFi信号的RSSI(例如,如图6C中说明)且接着例如使用类似性函数比较这些向量。在一些实施例中可包含在此向量中的额外准则的实例是基于WiFi信号的源(即无线接入点(WAP))的响应速率,例如是否所有WAP正以彼此类似的响应可靠性响应。因此,另外或作为替代,若干实施例基于当用户在路径的区段(称为“走动区段”)中走动而不停止(如下文描述)时进行的测量使用新的类型的相关地点(POR),称为“路径”POR。
参看图3A,在由处理器100执行的动作311中接收所描述的动作304中的当前测量的输出。因此,处理器100的若干实施例实施将对应于用户的路径中的连续走动区段的一系列连续改变的信号用作相关地点(POR)的模型的机制。一些实施例的处理器100的一者或一者以上可包含在计算机系统120中,且依据实施例,一些处理器100可包含在计算机系统120耦合到的服务器计算机中。
在图3A中说明的类型的若干实施例中,动作304中的输出通过执行一件软件(或“应用程序”)而进行,且动作311中的接收通过执行另一件软件而进行,所述两件软件由单一处理器100执行,但如上所述在其它实施例中此些件软件可由不同处理器100执行。在动作311中接收当前测量后,处理器100即刻检查是否满足特定预先界定的条件,从而指示正携带计算机系统120的用户实际上正沿着路径步行。
所检查的预先界定的条件可依据实施例而不同,但某些实施例检查时间上一个接一个连续进行的测量的类似性,如图3B所示。特定来说,图3B说明其中垂直Y轴表示连续WiFi测量的类似性且水平X轴表示时间的曲线图。在图3B中,在时间间隔306A期间时间上连续进行的测量的群组具有相对于彼此、相对于例如时间间隔307A中的测量等其它测量的高类似性。因此,在此类实施例中,基于连续测量之间的高类似性,由计算机系统120作出在时间间隔306A期间用户位于单一地点(但在其中四处移动)的确定。在其它时间间隔307A、307B、307C和307D中(见图3B),计算机系统120基于连续测量之间的类似性太低而确定用户在地点之间移动。因此,在若干实施例中,进行每一测量的时间由计算机系统120使用以自动发现或辨识相关地(POR),如本文描述。
在图3B中,说明四个时间间隔306A、306B、306C和306D,其具有高类似性(在空间中)的测量。因此,这四个时间间隔306A-306D由计算机系统120表示为用户的四次访问。举例来说,在时间间隔306A期间的第一访问中在时间上相对于彼此连续进行的测量的第一子集可能是在用户家中,在时间间隔306B期间的第二访问中在时间上相对于彼此连续进行的测量的第二子集可能是在用户从家中去上班路上的咖啡店,在时间间隔306C期间的第三访问中在时间上相对于彼此连续进行的测量的第三子集可能是在用户的办公室,且在时间间隔306D期间的第四访问中在时间上相对于彼此连续进行的测量的第四子集可能是在餐馆。
前一段落中所描述类型的每一访问在一些实施例的计算机系统120的存储器110(图4A)中被建模为访问地点模型(VPM)。在一些实施例中,访问地点模型的构建减少了噪声。因此,在计算机系统120的若干实施例中,正是这些访问地点模型(VPM)借此群集以减少噪声(但其它实施例可群集WiFi测量本身)。在一些实施例中,访问地点模型的使用在POR的提取期间得到利用,且使计算机系统120能够例如在彼此邻近的两个办公室之间加以区分。因此,如本文描述的访问地点模型的使用产生两步过程的优越性能:第一步构建VPM,且第二步在VPM上进行类似性群集。
参看图3C,处理器100的一些实施例经编程以检查(依据动作312)当前测量与先前测量之间的时间差是否大于i_max,且如果不是,则去往动作319以存储当前路径中的当前测量并接着返回到动作311。如果动作312中的答复为是,那么处理器100去往动作313以检查当前路径的总体持续时间是否大于t_min,且如果不是,则去往动作318,动作318简单地将当前路径再初始化为空值且返回到动作311。在一些实施中执行动作313,使得当用户的走动一直太小以致于可忽略且不值得分析时不执行识别(在动作314中,下文描述)。
因此,若干实施例基于用户的走动区段的总体持续时间持续大于t_min(如测量的子集的时间序列中的第一与最后测量之间所测得)且任何两个连续进行的测量之间的中断不比i_max长而确定用户正走动。如上所述,在一些实施例中由处理器100检查刚刚描述的条件,处理器100接收当前测量,如图3C中的动作312和313说明。
当动作313中的答复为是时,处理器100执行动作314以识别例如沿着用户可在上面步行的路径的区段测得的在时间上相对于彼此循序发生的测量的子集(或群组),借此识别连续走动区段。在动作314中识别子集中的测量,至少用于满足关于子集中包含的所有测量的类似性的量度的值的测试。处理器100的一些实施例可将通过对(路径A上的测量A1...AI...AN的时间序列的)每一测量AI(图6C)和质心C1 A执行类似性函数180而获得的值用作类似性的量度(或类似性属性),以识别测量A1...AI...AN形成子集。
特定来说,在一些实施例中,对照预定阈值(最小类似性)测试每一测量AI与质心C1 A的类似性的量度的值,且仅当满足测试时每一测量AI才包含在子集中。类似性函数180(图4A)的实例为Tanimoto、Dice、Jaccard等。一些实施例使用指示差异性的距离量度,且此距离获得如下:1-类似性。因此,在本文描述的类型的若干方法中,基于仅将特定测量(基于其测量时间)(例如,在时间上相对于彼此循序进行的测量,如图4C中说明和下文描述)包含在子集中而执行具有质心的地点的识别。
接着在动作315中将依据动作314识别的测量的子集存储在非暂时性存储器110中,之后是动作316,检查所有子集是否已识别,且如果否,那么控制返回到动作312(上文描述)。当识别出满足关于类似性的量度的值的测试的所有子集时,动作316中的答复为是,且控制转移到动作317,其中使用所述子集。在一些实施例中,动作317将从动作314产生的测量的每一子集与额外测量的子集比较(例如,通过群集,如图5A和5D中说明),以识别新的相关地点。在某些实施例中,动作317将从动作314产生的测量的每一子集与测量的预先计算的模型(例如,如图5E中说明)比较,以识别已知相关地点。在若干实施例中,动作317将从动作314产生的测量的每一子集与额外路径中进行的额外测量比较,例如以识别两个路径彼此交叉的地点。因此,动作317中测量的子集的特定使用(例如,以识别基于路径的相关地点)取决于实施例,且在此使用之后控制转移到动作318(上文描述)。
在动作314中识别测量的子集时,处理器100的一些实施例使用最小半径dmin作为构建路径的模型的最小尺度。在一些实施例中,动作314以沿着路径测量且彼此类似的测量的集合开始且反复(且在一些实施例中递归地)将所述集合再分为子集,直到到达邻近子集中的测量被分离小于dmin时的阶段(此阶段处再分停止)为止。在其它实施例中,当接收到每一新的测量时反复调用动作314,且确定新的测量是否将被添加到当前存储在存储器110中的依据动作314经识别满足类似性测试(上文描述)的测量的子集。
动作314中识别的测量的子集构成随时间收集的WiFi迹线的序列。处理器100的一些实施例中子集的收集的时间周期经设计以大于预定阈值t_min。依据实施例,代替于WiFi迹线或除WiFi迹线之外,计算机系统120可使用内置式运动传感器来获得关于步数和方向(方向改变的序列)的信息。因此,若干实施例辨识沿着用户的路径进行的某些测量(例如,WiFi迹线)且将其分段,但其它实施例并入有例如运动分类、步数计数、方向信息、声音指纹等其它测量。
在一些实施例中,执行软件以执行动作312(上文描述)的一个或一个以上处理器100构成用于反复从移动装置在路径中移动时进行的测量的集合中识别沿着所述路径相对于彼此循序发生的测量的子集的装置,所述子集中的测量经识别至少满足关于子集中包含的所有测量的类似性的量度的值的测试。此外,在此类实施例中,执行软件以执行动作315(上文描述)的一个或一个以上处理器100构成用于将所述用于反复识别的装置所识别的至少每一子集存储在非暂时性存储器中的装置。
在本文描述的类型的若干实施例中,动作314中识别的测量的子集由计算机系统120使用以识别用户到相关地点(POR)的访问。地点表示物理位置,具有真实世界中空间(例如,作为圆圈或正方形)中的扩展,所述真实世界具有大楼中的房间的维度,房间例如是办公楼中的办公室204(图1B)或家中的起居室或商店244的分区(图2B)。此地点可由计算机系统120通过使用(例如,WiFi迹线的)一个或一个以上测量识别以确定用户是否在同一地点。
一些实施例的计算机系统120在不使用任何类型的地图或布局或其它地理信息的情况下在测量彼此足够类似时(例如,当距离量度(通过执行例如Tanimoto等类似性函数180获得)指示满足关于测量之间的差异性的测试时,例如距离小于0.1(或类似性大于0.9))确定用户在同一地点。计算机系统120可接着通过计算质心(例如,质心C1 A)聚集类似的测量(例如,图6C中的测量A1...AI...AN)。在图6A中展示的说明性实例中,单一地点识别为具有通过对每一WAP的多个测量的信号强度求平均(通过取其算术均值)获得的质心C1 A。
如上所述,本文描述的类型的若干实施例不使用地图或布局或楼面平面图或任何其它此类地理信息在计算机存储器中识别特定地点,所述特定地点在这些实施例中仅通过使用类似性函数比较无线信号的测量(和/或其质心)来识别以获得测量之间的距离(作为其中仅界定所述测量的空间(也称为测量空间)中的差异性量度)。在说明性实例中,正测量的无线信号为声音,例如通常在火车站听到的声音(例如,火车鸣叫的喇叭声)。在刚刚描述的实例中,在若干实施例中不使用关于火车站的地理信息(例如,地图、布局或楼面平面图),所述地理信息自动将测量空间中(声音的空间中)的地点识别为火车站且/或确定(声音空间中)两个地点类似。刚刚描述的实例的若干实施例将此类地点(声音空间中所识别)存储在列表中,以通过使用类似性函数比较声音测量(不同频率下音频信号的强度的向量)而将延伸地点界定为火车站。替代实施例确实使用室外地图(例如,城市的街道的级别)和/或室内地图(或布局)和/或任何其它地理信息和/或位置(例如,来自GPS的纬度和经度)与此类无线信号测量组合以识别在真实世界中在不同物理位置中(例如,在将用户的办公室与走廊或盥洗室分隔的墙壁的相对侧上)发生的地点。
一些实施例中的访问界定为用户在此期间保持持续处于同一地点(即,距质心预定距离(指示测量的差异性)内)的时间间隔,但用户可能不静止而是可在识别为同一地点的空间内四处走动。因此,在若干实施例中,相关地点(POR)界定为用户已访问至少TminVisit次(例如,2次)且这TminVisit次访问的每一次均超过最小持续时间TminVTime(例如,5分钟)的地点(例如,测量的质心和测量之间的差异性的距离)。
依据实施例,用户可能需要在一地点由计算机系统120分类为POR之前访问所述地点超过TminVisit次。如果访问的一者或一者以上未超过最小持续时间TminVTime,则出现这种情况。两个阈值均可依据使用情况调谐。在某些实施例中,再访问由计算机系统120确定为用户对已知POR(例如,先前访问的地点)的任何访问。注意,一些实施例中的再访问的定义不需要用户的访问在任何最小持续时间中发生才能构成再访问(尽管在此类实施例中需要最小持续时间来初始自动发现用户的访问)。
在本文描述的类型的若干实施例中,由计算机系统120在存储器110(图4A)中准备的地点模型俘获地点的某些预定特性。特定来说,由计算机系统120的一些实施例从用于识别地点的WiFi测量提取一个或一个以上特性(例如,质心),且这些特性随后用于在用户的再访问期间辨识所述同一地点。计算机系统120的某些实施例将三种类型的地点建模如下:相关地点(POR地点模型)、先前已访问的地点(访问地点模型)和已通过使用多个测量识别的地点(瞬时地点模型)。特定来说,在若干此类实施例中,POR地点模型(PPM)由计算机系统120使用以表征POR。在某些实施例中,访问地点模型(VPM)由计算机系统120使用以表征用户的访问。瞬时地点模型(IPM)在计算机系统120的一些实施例中从瞬时收集的WiFi测量导出且俘获用户的当前位置的特性。然而,从技术观点来看,这三个地点模型在地点为何以及如何由计算机系统120建模方面类似。
在某些实施例中,计算机系统120中的处理器100执行预定软件以在计算机系统120中实施发现系统130(图4A),以仅通过分析原始传感器数据(例如,WiFi测量)的流而以不受监督的方式识别新地点。许多实施例的发现系统130不使用室内地图或布局或楼面平面图上关于地点的地理位置或所述地点的空间扩展的大小的任何预先存在的知识。此外,在一些实施例中,此原始传感器数据不分段或注释以输入到发现系统130,且关于地点和访问的地面实况(例如,地图数据)不可供发现系统130使用。此类实施例的发现系统130主要对可由过滤器139(图4A)过滤以移除不准确性的原始传感器数据操作。一些实施例的发现系统130的输出是相关地点及其相关联POR地点模型的集合。这些POR地点模型接着由辨识系统150(见图4A)用作输入。
在若干实施例中,发现系统130(图4A)包含执行两步过程(如下)的模块131和132。在所述过程的第一步骤中,发现系统130的模块131提取具有最小持续时间TminVTime的所有访问,包含其访问地点模型。在所述过程的第二步骤中,发现系统130(图4A)的模块132通过群集先前提取的访问地点模型而提取POR。所述群集由另一模块133分析且将含有大于TminVisit访问地点模型(相应访问)的每一群集标记为POR,例如如上文描述的延伸POR或基于路径的POR。以此方式,发现系统130产生POR地点模型135(图4A)的集合。在一些实施例中,发现系统130基于如本文描述的POR的定义实施关于访问的持续时间和群集中访问地点模型的数目的约束。POR地点模型135的集合通常随时间当发现系统130接收到更多测量时增长,从而使得更多地点被发现为POR。
发现系统130(图4A)的群集实施方案中分割为两个步骤(如刚才描述)提供若干优点。两步群集过程的第一步骤是基于时间群集且提取访问以及对应的访问地点模型(VPM)。两步过程的第二步骤基于类似性群集从第一步骤接收的访问地点模型(VPM)以确定相关地点(POR)。两步群集过程据信为相对于可直接对原始WiFi测量进行类似性群集(其可产生错误)的单步过程的改进。在访问两个相邻办公室的实例中,原始测量(例如,WiFi迹线)相等地分布在两个办公室的整个区上。在此实例中,单步群集过程可将来自两个办公室的测量合并到一个群集中,且识别一个地点(两个办公室一起)。此错误来自仅基于空间特征(例如,位置特征(纬度和经度))在单步中执行群集。
然而,发现系统130(图4A)的上述两步群集过程(在第一步骤中时间群集用以识别VPM,随后在第二步骤中进行类似性群集以识别POR)使用从WiFi测量提取的特定额外信息。特定来说,发现系统130(图4A)使用每一WiFi测量的收集时间,作为第一时间群集步骤中的额外信息。然而,一些实施例的发现系统130在第一步骤中将在空间和时间两者上类似的两个WiFi测量处理为已在单次访问期间收集,且直到那时才将这两个WiFi测量群集在一起以产生单一VPM。多个VPM接着在第二群集步骤中彼此比较,且如果不类似,那么其不合并(例如,发现两个相邻办公室为不同POR)。
一些实施例的发现系统130实施以下三个特征的一者或一者以上。第一,在计算机系统120的一些实施例中通过地点模型pmp识别地点p,地点模型pmp俘获由地点p表示的真实世界中获取的数据点(或WiFi测量)中所含的特性信息。第二,在某些实施例中,地点模型pmp在计算机系统120中构造且基于原始数据点(或WiFi测量)更新。第三,类似性函数fsim(pmp1,pmp2)在若干实施例的计算机系统120中使用以存取两个地点模型的类似性。通过使用这三个特征,一些实施例的发现系统130发现延伸POR、基于路径的POR且还辨识再访问,如下文描述。
在一些实施例中,发现系统130(图4A)使用图4B中说明的类型的一个或一个以上阈值。特定来说,发现系统130将参数分类为两个部分:地点发现参数和地点辨识参数。这些参数的若干者由发现系统130使用以便为相关地点(POR)建模。更特定来说,相关地点的发现由发现系统130分解为两个步骤:第一步骤提取访问及其对应的访问地点模型(VPM),且第二步骤群集访问地点模型(VPM)、提取POR及其对应的POR地点模型。这两个步骤在下文参考图4C中说明的实例描述。
在图4C的实例中,用户遵循地面实况标签指示的序列如下:家中410、通勤420、工作430、通勤440,且接着返回到家中450。理想地,发现系统130提取三个访问作为第一访问提取步骤的一部分(例如,家中410、工作430和家中450),且提取两个POR作为第二POR提取步骤的一部分(例如,家中410、450和工作430)。在此实例中,若干WiFi测量411、412、413、414、415、416、417、418、421、422、423、424、431、432、433、434、441、442、451、452、453、454、455、456由发现系统130以时间次序从通信子系统122(图4A)接收,如本文的测量时间戳所识别。
发现系统130在若干级别460、470、480和490(图4C)处理这些测量。特定来说,测量411-414传播到时间群集的一个级别460,且合并到节点461中,因为这些节点在时间上循序发生且全部属于同一地点(因为其测量彼此类似)。节点461接着传播到合并群集的较高级别470,作为节点471A。类似地,级别470处的节点471A和471合并(因为其质心彼此类似),且传播到基于持续时间的过滤的更高级别480,作为节点481。级别480处的节点481、486和489具有足够的持续时间(例如,大于5秒),且因此传播到类似性群集的更高级别490,分别作为节点491、496和499。节点491和499合并(例如,基于具有相同标签“家中“)以形成节点401,节点401可接着在室外地图(在使用城市中的街道的等级的地图的某些实施例中)上识别,而节点496不合并(例如,基于具有不同标签“工作”)且变为所述室外地图上的节点402。因此,在此阶段,两个节点401和402已识别为相关地点(且在所述几个实施例中,映射到室外地图,例如街道级别地图)。节点传播和合并的方式取决于实施例,且下文描述若干此类实施例。在图4C中,节点的大小指示由节点表示的数据点(或WiFi测量)的数目。图4C中的节点之间的箭头指示数据的流动。
一些实施例的发现系统130使用时间群集模块131与群集合并模块132及持续时间过滤模块133(图4A)组合从瞬时地点模型提取访问地点模型。特定来说,时间群集模块131从数据点(或WiFi测量)提取访问,如图5A中的伪码说明。时间群集模块131在时间的一维空间中表示所有数据点。此群集技术是基于线性群集,线性群集是数据库索引理论中使用的群集技术,其中多维数据在一维空间(表)中表示。此一般概念由发现系统130应用以沿着时间维度执行群集。
一些实施例的发现系统130在模块131中执行时间群集使得以下约束成立:当且仅当两个数据点(或WiFi测量)共享足够类似性(相对于类似性函数和类似性阈值TtempClust)且当其间的所有数据点(相对于时间)也指派到同一节点时,所述两个数据点(或WiFi测量)才群集到此同一节点中。因此,在一些实施例中,节点表示一时间间隔,其中所述间隔的持续时间内的至少大多数数据点(即,>50%)共享(与正过滤掉或以其它方式排除的不类似的数据点)至少特定类似性。因此,在此领域内,每一时间间隔构成一次访问。
图4C中的级别460说明时间群集模块131的操作。特定来说,以时间次序评估数据点(或WiFi测量),以确定其是否与级别460中的当前节点类似。举例来说,在图4C中,初始测量411的数据传播到级别460中以形成新节点461A,且接着检查下一数据点412以发现与节点461A的类似性。在发现数据点足够类似(相对于阈值TtempClust)时,节点和数据点被群集,否则开始新节点,如下文参看图4C描述。
特定来说,如图4C中指示,发现级别460处的第一节点461A类似于第二数据点412且因此其群集以形成节点461B,节点461B展示得较大以说明其现在表示两个测量。节点461B的质心(例如,两个测量的WiFi迹线的向量均值)接着与第三数据点413比较且发现为类似的(例如,在彼此的差异性的预定距离内),因此其群集以形成节点461C。节点461C的质心接着与第四数据点414比较且发现为类似的且因此其群集以形成节点461。接下来,节点461的质心类似地与第五数据点415比较且发现为不同的且因此其不群集。而是,第二节点462在级别460中基于第五数据点415开始。
节点461A-461C是同一节点461的三个型式(在时间上的三个较早点),且因此在此阶段级别460中存在两个节点461和462。节点462接下来与第六数据点416比较且发现为不同的且因此其不群集。而是,第三节点463A在级别460中基于第六数据点416开始。接下来,节点463A与第七数据点417比较且发现为类似的且因此其群集以形成节点463B。接着,节点463B的质心与第八数据点418比较且发现为类似的且因此其群集以形成节点463。接下来,节点463的质心与第九数据点421比较且发现为不同的且因此其不群集。而是,第四节点464在级别460中基于第九数据点421开始。
因此,当时间群集模块131(图4A)已以上述方式处理WiFi测量411-418、421-424、431-434、441-442、451-456时,级别460在存储器110中总共具有11个节点。因此,归因于时间群集,级别460处的11个节点指示11次访问(其中一些可能是极短的访问,例如表示通勤期间的测量的节点464)。在图4C的实例中,这11个节点由群集合并模块132处理,群集合并模块132排除归因于其与连续数据点的差异性而可能潜在地分割访问的离群值。特定来说,WiFi测量中的离群值提出的挑战是,其致使时间群集模块131将人为分割引入到访问中。这是由于离群值不与其直接相邻者(时间维度中的相邻者)共享足够的类似性而引起。
举例来说,图4C展示全部在家中410进行的WiFi测量411-418已群集到级别460处的三个节点461、462和463中(其表示三次访问),但用户仅位于一个地点(家中410)。这是由于节点471的质心与第五数据点415之间的差异性引起。由于第五数据点415是在家中410收集的(根据地面实况),所以第五数据点415应已适当识别为离群值。然而,此离群值415需要由发现系统130在不知道地面实况的情况下移除,其由群集合并模块132实施,如图5B中的伪码说明。
在一些实施例中,群集合并模块132当且仅当类似性小于阈值TmergeSim且其间的时间间隙小于阈值TmergeTime时才组合级别460中的任何两个节点(其表示访问)。因此,先前已归因于离群值而分割的访问融合到单一访问。在图4C中说明的实例中,群集合并模块132将节点461初始传播到级别470以形成节点471A,且接着将此节点471的质心与级别460处的节点462的质心比较。回忆节点461与462差异过大,这就是为什么节点462初始由时间群集模块131开始,且这样做会分割家中410的访问。
在未找到匹配时,在此阶段,群集合并模块132将节点471A的质心与级别460处的第三节点463的质心比较。在此实例中,群集合并模块132找到匹配,因为发现级别460处的节点461和463在空间上类似(其将是类似的,因为在同一地点家中进行基本测量411-414、416-418),且也发现其在时间上彼此接近(因为这些测量411-414、416-418全部在到同一地点的单次访问中进行)。因此,响应于找到匹配,群集合并模块132将级别460处的第三节点463与节点471A合并以获得级别470处的节点471。注意,节点471不包含来自测量415的任何贡献,测量415因此由发现系统130有效地作为离群值过滤掉。
接下来,节点471的质心与节点464比较且发现为不同的且因此其不群集。而是,群集合并模块132传播节点464的数据以形成级别470处的节点472。接着将节点472与级别460中跟随节点464的节点(未标记)比较且未找到匹配,因此群集合并模块132传播所述数据以形成级别470处的节点473。以此方式,在级别470处形成额外节点474、475、476、477、478、479。因此,当群集合并模块132(图4A)完成处理级别460的11个节点时,总共9个节点471-479存在于级别470处,如图4C中说明,且这9个节点接着传播到级别480。
一些实施例的发现系统130包含持续时间过滤模块133,其应用指定为持续时间的阈值以排除太短或因其它原因没有资格识别为相关地点的访问。持续时间过滤模块133的一些实施例基于超过最小持续时间TminVTime的访问实施POR的界定。特定来说,持续时间过滤模块133基于其持续时间过滤级别480处的节点(其表示访问),如图5C中的伪码说明,使得所有剩余访问均超过最小持续时间TminVTime。在图4C的实例中,访问482太短,因为其来自通勤期间进行的测量。因此,当模块133完成其处理时,仅节点481、486和489保留,级别480中的其余节点被过滤掉。因此,这三个节点481、486和489的数据传播到下一级别490以形成节点491、496和499。
若干实施例的发现系统130还包含POR提取模块134(图4A),其使用类似性函数180将级别490处的现在独立于测量时间的节点彼此比较,以便识别相关地点。在使用如上文描述的模块131、132和133之后使用POR提取模块134克服了其它设计中的若干缺点。举例来说,直接对原始数据点进行的类似性群集不暴露关于访问的持续时间的信息。对原始数据进行的类似性群集识别每一地点的群集和每一群集中数据点的数目。假定均一取样,数据点的数目与每一群集或相应地点处花费的累积时间成比例。然而,每一地点中时间如何累积是未知的且因此不使用。数据点上的类似性群集暴露用户花费时间的地点(群集),但不暴露关于用户连续花费时间(例如,在工作)还是在多个极短访问(例如,上班路上的交通信号灯)期间累积大量时间的信息。
前一段落中描述的类型的挑战通过在时间群集模块131之后使用POR提取模块134而解决。此外,如上所述,级别490处的所有节点已由持续时间过滤模块133处理且因此这些节点表示超过POR的定义所要求的最小持续时间的访问。因此,由POR提取模块134从级别490处的节点提取POR是基于持续时间过滤模块133识别的所有访问地点模型上的类似性群集,如图5D中的伪码说明。
若干实施例的发现系统130使用阈值TsimClust来以递归方式执行类似性群集。此群集方法假定未给定群集或节点的数目,但给定阈值。特定来说,发现系统130识别的群集或节点的数目由数据点或WiFi测量驱动。此方法的优点是,群集可由发现系统130在不重新运行整个群集过程的情况下动态地添加。概念上,表示用户的访问的节点与最类似的任何节点(或群集)群集(或组合),但仅当类似性量度(通过使用类似性函数180而产生)不超过阈值TsimClust时。在超过阈值TsimClust的情况下,新的节点或群集由POR提取模块134开始。在完成如上所述的类似性群集之后,分析所有所得节点(或集),以确定其是否有资格作为POR。含有至少TminVisit个访问的群集表示POR(其中TminVisit由POR的定义中的参数确定)。在图4C中说明的实例中,阈值TminVisit=1且因此POR提取模块134群集三个访问地点模型(家中491、工作496、家中499)并输出两个POR401和402。
若干实施例的计算机系统120还包含与发现系统130互操作的辨识系统150(图4A)。辨识系统150确定是否发生再访问。如图5E中的伪码中展示,开始时间到辨识系统150的输入是由其POR地点模型表示的POR的集合。此集合可在任何时间更新且所述更新从执行更新之后的下一辨识步骤开始变得有效。辨识系统150的每一辨识步骤处的输入是从从WiFi测量提取访问的群集合并模块132输出的当前访问。基于当前访问,辨识系统150确定是否存在到POR的一者的再访问。在再访问的情况下,辨识系统150输出POR的识别符,否则其指示尚未辨识到再访问。在一些实施例中,辨识系统150计算表示辨识决策的置信度的置信度值。
一些实施例的辨识系统150通过维持可处于两个状态“进入”或“退出”的一者中的内部状态变量而使用来自群集合并模块132的关于每一时间步长处的当前访问的递增信息(而非等待识别完整的访问)。内部状态“进入”指示正在进行中的再访问,且“退出”指示未辨识到再访问(或先前再访问已结束且尚未有新的再访问开始)。如果两个条件成立,那么辨识系统150从状态“退出”转变到“进入”:正在进行中的访问必须超过时间阈值TrecogEnter且依据相似性所述访问必须识别为到已知POR的访问。
因此,一些实施例的辨识系统150监视发现系统130的中间结果且当两个条件为真时,在存储器110中将再访问标记为已检测到。在辨识系统150转变到状态“进入”之后,其通过在每一辨识步骤处传回POR的识别符而报告再访问。在转变发生且辨识系统150处于状态“进入”之后,其监视引起转变的访问。给定不存在离群值且用户保持在同一位置,所监视的访问在时间上随着每一辨识步骤增长。在一些实施例中,当满足终止条件时再访问结束:所监视的访问与当前时间之间的持续时间超过预定时间阈值TrecogExit。此终止条件防止辨识系统150基于离群值而进入和退出。举例来说,如果当前数据点或测量为离群值,那么辨识系统150不输出-1(指示无再访问)。
因此,一些实施例的辨识系统150容忍离群值,且报告POR指示符,只要到所监视的访问的持续时间不超过时间阈值TrecogExit即可。在一些实施例中,辨识系统150使用两个时间阈值TrecogEnter和TrecogExit来报告正进入和退出的再访问。使用此类阈值引起等待时间与准确性之间的固有折衷。时间阈值越大则归因于离群值的误分类的概率越低,然而,以增加的等待时间检测再访问的进入和退出。
一些实施例的辨识系统150提供置信度值来表达辨识决策。置信度值计算是基于两个最类似地点之间的差异,如下:
其中pm1和pm2是两个最类似POR的POR地点模型,且pmv是所监视的访问的访问地点模型。
若干实施例的计算机系统120包含由辨识系统150和发现系统130的任一者或两者使用的类似性函数180。类似性函数180可依据实施例以许多不同方式实施。一些实施例类似性函数180实施Tanimoto类似性,因为其在实验中的性能优越。Tanimoto类似性测量两个特征向量(fva和fvb)之间的类似性,如下:
所述特征向量由计算机系统120依据地点模型的RSSI值计算。给定地点x的地点模型pmx,表示无线接入点api的平均RSSI值。接着Tanimoto类似性计算如下。
其中注意,RSSI值从空间[-101,0]变换到空间[0,101]以使得当RSSI值为-101时每一特征的长度为零。给定无线接入点api仅包含在两个地点模型的一者中,其可添加到其它地点模型pmo,且接着设定
处理器100的各个实施例经编程以在WiFi测量中辨识由于用户在例如超市、商场的特定部分或通向自助餐厅的走道等特定区域内走动而引起的路径或走动区段的再发生。处理器100的许多实施例经编程以识别不同空间规格上路径的重叠。对于一些应用,本文描述的类型的实施例确定用户在特定大楼或大型超市内走动。在一些此类实施例中,共同相对大区域(例如,自助餐厅)内的两个路径由处理器100识别为匹配。在其它应用中,处理器100的某些实施例从沿着路径的WiFi测量识别特定走道(例如,作为到自助餐厅或会议室的到达路线)。
因此,在若干此类实施例中,处理器100经编程以产生由质心的树表示的级别的层次结构,向每一质心指派前一级别的半径的两倍的半径(其它实施例使用除两倍以外的倍数),如图6A中说明以及下文参考步骤1、2和3描述。在步骤1中(见图6A中的动作611),处理器100经编程以找到WiFi迹线的向量均值,且确定半径需要为多大,以包含沿着路径的测量(此可称为级别1质心C1)。如本文参看图6A-6H描述而识别的半径可稍后改变(即,重定大小),如本文参看图9A-9F描述。
在一些实施例中,每一测量由向量表示(如上所述),且因此通过对(测量的)向量上的每一维度中的值求平均而获得向量均值。更特定来说,如上所述,每一测量包含无线信号的发射器的识别符的特定群组,以及从所述特定群组中识别的发射器接收的无线信号的强度。在某些实施例中,质心C1 A由处理器100形成以包含对应于特定群组中识别的无线发射器的平均值的群组,例如名为橙、蓝、绿和红的发射器,如图6C中说明。
前一段落中描述的每一平均值由处理器100针对特定群组中识别的每一无线发射器跨越来自进行测量的过程中测得的每一无线发射器的对应无线信号的强度计算。举例来说,对于名为橙的发射器,使用值52、54和56来准备其算术均值,即54,其接着用作质心C1 A的向量的第一组分。类似地,对于名为红的发射器,使用值68、66和68来准备其算术均值,即67.3,其接着用作质心C1 A的向量的最后组分。注意,质心C1 A表示的访问的开始时间上午9.00和结束时间上午9.02由处理器100依据包含在此子集中的测量的最早时间和最迟时间自动组合。
在此阶段,处理器100可存储实际半径且同时还将C1设定为下一较大质心以供用作比较量度。在一些实施例中,将类似性量度确定(例如)为每一测量与质心之间的差异的反数(见图6B),且所有测量之间的最小类似性量度存储为路径A的根节点621的最小类似性(见图6D,路径A的类似性量度0.18)。在一些实施例中,此类似性量度可用于表示用于界定地点的扩展。
在步骤2中(见图6A中的动作612),若干此类实施例使用下一较小质心的半径(例如,等于当前半径的一半)作为新的半径,将当前级别数增加到1,将开始点设定为走动区段的第一点且将级别1上的质心的数目设定为n=1。在使用类似性量度的实施例中,针对根节点存储的值加倍(见图6F,图6E中说明的子路径AL和AR的值0.36)。围绕此步骤2循环,某些实施例接着执行步骤2a、2b和2c(见图6A)如下。
在步骤2a中(见图6A中的动作613),这些实施例逐点更新均值直到到达涵盖所有点(包含下一点)所需的半径超过新半径(且当此发生时,不包含所述下一点)的阶段为止。见图6D和6E的实例,其中使用最小类似性0.36来形成点A1-AI的子集,借此从路径A中的所有点A1-AN识别子路径AR。
接下来,在步骤2b中(见图6A中的动作614),此类实施例接着将质心存储为C1,n(例如,存储均值,因为半径由对应于此级别的质心给出)。接下来,在步骤2c中(见图6A中的动作615),此类实施例检查路径中是否仍有点留下且如果是则在路径中的下一点处设定新的开始点,增加n且返回到步骤2a(见图6A中的动作613)。在步骤3中(见图6A中的动作616),若干此类实施例检查半径是否已达到dmin,且如果不是则重复步骤2。
步骤1-3的上述程序产生质心的树作为图6H中说明的类型的路径模型,其将图6B的路径A划分为图6G的六个子-子路径ALL、ALM、ALR、ARL、ARM和ARR。依据实施例,上述程序中存在熟练的技术人员将容易了解的许多改进。举例来说,在一个此改进中,图6H中说明的类型的树620中的质心的每一节点含有例如步数、方向乃至声音指纹等额外信息。
给定路径的集合(每一者由图6G中说明的类型的质心的树620表示),一些实施例的计算机系统120可通过单独群集每一树级别而开始,如同静止相关地点的类似性群集(在一些情况下,仅具有某一程度的参数调谐)。因此,一些实施例的系统可获得三种类型的群集:(A)顶部级别质心的群集(例如,见图5D);(B)最小质心的级别上的群集(例如,见图5A和5B);以及(C)中间级别质心上的群集(例如,见图5C)。
计算机系统120的若干实施例(如图7中的动作701说明)形成树620的顶部级别质心的群集。顶部级别质心的群集可意味着两个路径在同一所关注区域内。在大多数情况下,此区域可为特定大楼、超市、商场等,其中移动装置的用户保持在特定范围内而不静止(不站立也不坐下)。系统120的若干实施例初始建立此类路径的数据库。基本上,一旦计算机系统120已检测到某人到特定顶部级别质心建模的地点的足够次数的访问,系统就可基于当前路径与先前观察到的路径相同(基于其在数据库中的存在)而将其界定为所关注区域。概括来说,在系统120已检测到到特定顶部级别质心的足够次数的访问之后,系统120在存储器110中标记此节点为相关区域(依据图7中的动作702)。
处理器100的若干实施例(如图7中的动作703说明)形成最小质心的级别上的群集,其由树620(图6H)的底部级别节点表示。在某些实施例中,处理器100确定两个路径穿过表示共同小区域的单一底部级别节点(即,路径彼此交叉),所述区域的大小由最小半径dmin确定为在上面建立模型的最小规格。
如果大楼(由顶部级别质心识别)内的多个路径在一个此最小质心内具有匹配(依据图7中的动作704),那么处理器100将此质心(依据图7中的动作705)标记为对应于由大楼中的许多用户共同使用的区域,例如大楼的入口或中心点(例如,电梯)。
当处理器100发现两个或两个以上路径在连续最小半径质心的序列中部分彼此匹配时(依据图7中的动作706),处理器100将这些路径标记为共享子路径(依据图7中的动作707)。在一个此实例中,一个路径为走道,而另一路径为从走道上的一个办公室到另一办公室的通道。另一实例为自助餐厅,其中在不同位置开始且在自助餐厅的不同餐桌处结束的路径由处理器100标记为具有共同子路径(依据动作707)。此外,处理器100确定两个或两个以上路径在所有最小级别质心上完全匹配的情况下其是彼此相同的。在一些实施例中,处理器100经编程以在最小级别处的质心上使用概率模型来识别相同路径。代替于使用硬阈值来确定量度是否在POR(最小质心)内,其它实施例使用高斯模型来建模噪声且基于高斯模型驱动决策制定。
处理器100的若干实施例(如图7中的动作708说明)形成中间级别质心上的群集。此匹配可针对已经发现在上文描述的级别中的一者上匹配的路径而发生,但在一些情形中,路径仅在中间级别上的单一质心内匹配。因此,在一些实施例中,处理器100经编程以检查在顶部级别质心上匹配的路径是否也在中间级别质心上匹配(依据动作708和709),且如果是,则处理器100在存储器中标记存在其中两个路径尤其接近的特定区(依据动作710)。注意,处理器100不将这些路径标记为具有共同子路径,而是处理器100在存储器中标记用户趋向于经常穿过中间级别节点识别的特定限制区域。
在一个说明性实例中,处理器100依据额外信息(例如,用户输入)确定顶部级别质心对应于超市。在此实例中,处理器100在动作710中使用此额外信息将此中间级别质心标记为对应于用户常常访问而不常常沿着穿过其的同一路径步行的特定区。在另一此实例中,处理器100将中间节点(在动作710中)标记为表示用户选择要购买的食品和/或用户为所述食品付款的自助餐厅的区域。因此,一些实施例的动作710中标记的此类中间质心由处理器100使用以检测类似于超市或自助餐厅的地点,且帮助识别复杂的相关地点,比如用户的“家中”。
在执行动作708和709时,如果处理器100发现路径在中间级别质心上匹配而无任何其它级别的匹配,那么处理器100将中间级别节点(依据图7中的动作711)标记为表示两个相关区域之间的共同区。在一个此实例中,动作711中识别的中间级别节点是购物中心中的两个商店之间的停车场。
对于树620的每个级别(图6H),一些实施例的处理器100执行的类似性群集(例如,见图5D)产生质心的列表。这些质心用于此类实施例的处理器100的辨识模块(例如,见图5E)中的匹配。因此,处理器100的一些实施例实施相关地点(POR)的发现系统130(图4A),其基于用户在相同或不同访问中到邻近或附近地点的访问,和将对应POR记录为具有共同标签(例如,先前用于静止POR的标签)的相同语义地点。
处理器100的若干实施例通过执行图8A中说明的一个或一个以上动作使针对图8B中展示的两个路径A和B的上文描述的类型的树匹配。一些实施例的处理器100经编程以通过横越其树(图8D所示)而用递归方式比较两个路径A和B上的测量(图8C所示)的子集,其中比较是逐级别、逐质心进行的。首先,处理器100通过检查路径A和B的顶部级别(也称为“根节点”)质心C1 A和C1 B是否在同一级别上(例如,包含在相同大小质心内,例如针对办公大楼)而开始。如果一个路径较大且另一路径较小,那么处理器100可能已要求容纳更大得多的质心。如果一个路径(比如路径A)对应于较大质心,那么处理器100简单地收集路径A的在与路径B的顶部级别质心相同级别上的所有质心且针对其每一者重复下文描述的程序。
在路径匹配的第一步骤中,处理器100依据动作811检查两个质心是否具有重叠。存在三种可能性:(a)质心不重叠。在此情况下,处理器100依据动作812将两个路径标记为在这些质心内不相交。(b)在动作811中,如果答复为是,那么处理器100去往动作813以检查质心的均值(平均值)是否彼此足够接近(例如,在预定阈值内)以将其视为相同。在此情况(b)中,如果处理器100发现动作813中的答复为是,即路径在对应级别上的这些质心内匹配,且质心依据动作814标记为匹配的。在此情况(b)中,如果进行群集,那么质心可由处理器100组合,且特定路径被访问的次数的计数器可增加。在动作813中如果答复为否,那么处理器100确定(c)质心具有相关重叠量。在一些实施例中,处理器100确定“相关重叠”为大约如dmin界定的最小质心的量值的重叠,且此观察由处理器100在一些实施例中通过执行动作817来标记。
在路径匹配的另一步骤中,处理器100检查当前质心是否在最小质心的级别上(依据动作815)且如果是,那么停止。如图8A所示,从动作814和817到达动作815。在上文针对路径匹配程序描述的可能性(a)(无重叠可能性)中同样成立,其中在动作812之后,处理器100停止。否则,如果动作815中的答复为否,那么在以上路径匹配程序的情况(b)和(c)中(去往步骤1,动作811)针对重叠区内的每一对(来自每一路径一个)下一级别质心重复(依据动作816)。在一些实施例中,由处理器100在路径匹配中执行宽度第一搜索。
当上述路径匹配程序终止时,结果为路径发现为匹配(如图8D中说明)的质心的列表。注意,列表中的质心可在不同级别上(这意味着其对应于具有不同半径的质心)。因此,举例来说,列表上的一个质心可整体对应于办公大楼201(图1B),而另一质心(包含在一个较大质心中)可为此相同办公大楼201的区域203。两个路径A和B(图8D)在给定级别(比如根节点级别或根节点级别以下的第一级别)上的质心内匹配的事实并不意味着其在之后的级别(例如,图6H所示的底部级别)上的质心的任一者内匹配。举例来说,可存在全部位于同一办公大楼内的一群路径,但每一者在大楼的不同区域中。然而,当一对质心在最低级别处匹配时(例如,图8D中的质心ALL和BLL),其用于在存储器110中标记基于路径的相关地点(POR)。
一些实施例基于地点再访问的分布随时间自适应地确定相关地点(POR)的大小。举例来说,在到小地点(例如,大楼内的某人的办公室)的多个再访问期间,该人通常花费其大多数时间在所述地点内的同一位置(例如,该人通常坐在其桌边同一椅子上)。因此,若干实施例使用跨越多个地点再访问的信号测量中的类似性(例如,执行Tanimoto函数)(这个类似性足够高(例如,变量在预定阈值以下)),以确定相关地点的大小逐渐变小(随着多个地点再访问),即通过使用指示差异性的逐对距离缩减POR的大小,例如下文参看图9A-9D描述。
类似地,在到大地点(例如大楼内的自助餐厅)的多个再访问期间,某人通常花费时间在该大地点内的不同位置(例如,该人可在不同的日子坐在不同餐桌旁)。因此,若干实施例使用跨越相距较远但仍在同一相关地点内的多个地点再访问的信号测量来增大POR的大小,以使其逐渐变大(随着多个地点再访问)直到达到预定最大大小为止,如下文参看图9E和9F描述。
图9A说明大楼内的办公套间900,包含接待区域901、两个办公室902和903、会议室904。图9A还说明在办公室903内已通过组合四个相关地点911-914(例如,通过执行上文参看图1A描述的动作105)形成的延伸相关地点910。在形成相关地点910(图9B)时,计算机系统120计算四个地点911、912、913和914的质心之间的逐对距离921-926(图9B)(例如,通过执行Tanimoto函数而获得)。接着,计算机系统120计算逐对距离921、922、923、924、925和926的均值μ和标准偏差σ,例如图9C中说明,随后如下计算延伸POR910的大小:dsize=μ+3σ。
在此状态下,如果发现新的相关地点931足够接近延伸POR910,那么延伸POR910可由计算机系统120通过以下操作改变为如图9D中说明的新的延伸POR930:计算额外逐对距离932、933、934和935且使用其计算逐对距离921-926和932-935的新均值μn和新标准偏差σn,随后如下计算延伸POR930的大小:dnsize=μn+3σn。
当已确定新地点访问CVt时,一些实施例的计算机系统120如下执行图9E中说明的类型的方法。具体来说,在动作941中,计算机系统120使用地点访问CVt从已知地点模型135(图4A)中寻找最接近地点访问CVt的相关地点PORt,且接着去往动作942。在动作942中,计算机系统120检查两个地点CVt与PORt之间的距离(表示为dist(CVt,PORt))是否小于相关地点PORt的当前大小dsize。
当动作942中的答复为否时,那么计算机系统120执行动作943以产生新的相关地点PORnew且将其大小dnewsize设定为预定距离(例如,ddefaultSize)。当动作942中的答复为是时,那么计算机系统120在动作944中通过将地点CVt包含在现有相关地点PORt中而更新所述现有相关地点,且接着去往动作945。在动作945中,计算机系统120将现有相关地点PORt的大小再计算为Rdsize,但动作945实施的特定方式依据实施例不同,如下文论述。在动作945完成后,如果Rdsize小于或等于预定最小值dminSize(见动作946),那么当前大小dsize改变为最小值dminSize(见动作947)。且如果Rdsize大于或等于预定最大值dmaxSize(见动作948),那么当前大小dsize改变为最小值dmaxSize(见动作949)。最后,当对动作946和948两者的答复均为否时,那么在动作950中,当前大小dsize改变为Rdsize。
在上文参看图9A-9D描述的第一实例中,图9E的动作945如上所述计算Rdsize,具体来说Rdsize=μ+3σ。在第二实例中,现有相关地点PORt将如本文所描述在动作945中增大,且一些实施例使用类似公式(其中预定因数k≥1)按比例增加,使得Rdsize=k·(μ+3σ),但注意,μ和σ是关于访问与现有相关地点PORt之间的距离(而不是用于在上文描述的第一实例中计算μ和σ的逐对距离)。在第三实例中,Rdsize=dsize+α*(dist(CVt,PORt)-dsize/2),其中0≤α≤1,且α是预定常数。注意,dist=1-类似性,其中类似性是通过执行类似性函数(例如,Tanimoto)而获得。
在一些实施例中,当在动作951中(图9E)发现待包含在POR960中的新地点961处于足够小的距离(dist(CV1,PORt)(例如,小于POR960的半径的一半或dsize/2)时,在动作952中(例如,使用上文描述的任何公式)缩减延伸POR960(图9F)。在一些实施例中,当在动作953中发现待包含在POR960中的另一新地点962处于足够大的距离(dist(CV2,PORt)(例如,大于POR960的半径的一半或dsize/2但小于POR960的半径dsize)时,在动作954中(例如,使用上文描述的任何公式)增大同一延伸POR960(图9F)。
因此,此详细描述中呈现用于发现相关地点(POR)且/或自动设定其大小的方法、设备、系统和非暂时性计算机可读媒体。在一些方面中,在发现一个或一个以上相关地点的过程中,无线信号的测量的集合可由移动装置或由服务器或由其组合接收或以其它方式获得,如图9G中的动作971说明。接着,可识别(由硬件或通过处理器执行软件,或其它手段)一个或一个以上地点,如图9G中的动作972说明。
所识别的每一地点可具有质心,其通过使用测量的集合中的子集中的一个或一个以上测量而获得。在一些方面中,地点的识别可基于时间上循序进行的测量(依据动作972A)(图9G)。此识别可基于测量的类似性,由硬件或通过处理器执行软件或其它手段答复问题“我是否在同一地点?”,且如果是,那么返回到972以在计算当前正识别的地点的质心的过程中包含所述测量。
在某些方面中,在动作972A中使用两个此类地点来确定这些地点是否沿着路径循序发生(例如,其测量是否在时间上循序),且确定其是否具有彼此足够类似的质心(例如,Tanimoto距离小于0.1),且当两个条件均满足时,执行动作973(图9G)。在若干方面中,在动作972B中独立于测量进行的任何时间,基于确定为类似或相同的标签的比较且基于确定为彼此足够类似的质心而识别两个地点,且当两个条件均满足时,再次执行动作973(下文描述)。
在动作973中,可(由硬件或通过处理器执行软件或其它手段)基于比较两个质心确定具有所述两个质心的对应的两个地点是否类似。接着,在动作974中,可基于对应的两个地点确定为类似(由硬件或通过处理器执行软件或其它手段)而存储相关地点,例如作为包含动作973中使用的对应两个地点的列表。
在一些方面中,可(由硬件或通过处理器执行软件或其它手段)接收指定待与所述多个相关地点中的一个或一个以上相关地点相关联的一个或一个以上标签的用户输入。随后,可(由硬件或通过处理器执行软件或其它手段)基于所接收的用户输入确定所述多个相关地点中的至少两个相关地点是否与所述一个或一个以上标签中的共同标签或与确定为类似的标签相关联。另外,如上所述,可(由硬件或通过处理器执行软件或其它手段)基于一个或一个以上距离量度(指示差异性)确定所述至少两个相关地点是否类似。随后,响应于确定所述至少两个相关地点与类似标签(或相同标签)相关联且响应于确定所述至少两个地点类似,可(由硬件或通过处理器执行软件或其它手段)确定所述至少两个地点界定延伸相关地点。
在某些方面中,测量可包含在每一子集中用于在时间上相对于彼此循序测量,且每一地点的识别可基于此类子集。每一测量可基于例如检查(由硬件或通过处理器执行软件或其它手段)测量(例如,相对于子集的质心)是否满足关于类似性量度的测试而包含在测量的子集中。可例如由硬件或通过处理器执行软件或其它手段执行类似性函数以将每一测量与子集中的测量的质心比较而获得类似性量度。每一测量可包含无线信号的发射器的识别符的群组和从群组中识别的发射器接收的无线信号的强度。每一质心可包含对应于特定群组中识别的无线发射器的平均值的群组。每一平均值可(由硬件或通过处理器执行软件或其它手段)针对特定群组中识别的每一无线发射器跨越在进行测量时测得的来自所述每一无线发射器的对应无线信号的强度计算。
在若干方面中,可(由硬件或通过处理器执行软件或其它手段)基于测量的集合产生树的根节点,且树中的多个子节点可连接到根节点,其中基于集合中的测量的子集产生至少一个子节点。如上所述,测量可包含在每一子集中用于在时间上相对于彼此循序测量,且用于满足关于类似性量度的测试。测量的集合中的多个子集可(由硬件或通过处理器执行软件或其它手段)与额外测量的子集比较以识别新的相关地点。另外或作为替代,测量的集合中的多个子集可(由硬件或通过处理器执行软件或其它手段)与测量的另一集合中的子集比较以识别已知相关地点。
一些实施例的计算机系统120是移动装置,例如包含相机1019(图4A)以产生正在屏幕上显示的真实世界对象的视频的帧的智能电话。如上所述,计算机系统120可进一步包含提供指示实际移动的测量的各种传感器1003,例如加速计、陀螺仪、罗盘等。计算机系统120可使用加速计和罗盘和/或其它传感器来以正常方式感测倾斜和/或转向,辅助处理器100确定其自身定向和相对于地面的位置。代替于传感器1003或除此之外,计算机系统120可使用来自相机1019的图像来辅助处理器100确定其自身定向和位置。并且,计算机系统120可额外包含以正常方式使用的图形引擎1004和图像处理器1005。计算机系统120可任选地包含各种模块以支持增强现实(AR)功能性。
除存储器110外,计算机系统120还可包含一个或一个以上其它类型的存储器,例如快闪存储器(或SD卡)和/或硬盘和/或光盘(也称为“次级存储器”)1008来存储用于加载到存储器110(也称为“主存储器”)中和/或用于供处理器100使用的数据和/或软件。计算机系统120可进一步包含收发器1010中的无线发射器和接收器和/或任何其它通信接口。应理解,计算机系统120可为任何便携式电子装置,例如蜂窝式或其它无线通信装置、个人通信系统(PCS)装置、个人导航装置(PND)、个人信息管理器(PIM)、个人数字助理(PDA)、膝上型计算机、相机、智能电话、平板计算机(例如,可从苹果公司购得的iPad)或能够产生增强现实(AR)环境的其它适宜的移动平台。
上文描述的类型的计算机系统120可包含例如使用“计算机视觉”技术的对象辨识等其它位置确定方法。计算机系统120可进一步在用户接口中包含麦克风和扬声器。当然,计算机系统120可包含与本发明无关的其它元件,例如只读存储器1007,其可用于存储固件以供处理器100使用。
在计算机系统120的一些实施例中,上述模块通过一个或一个以上处理器100执行计算机系统120的存储器110中的软件的指令而实施,但在其它实施例中,任一或一个以上模块实施在计算机系统120中的硬件电路和/或固件和/或软件的任何组合中。因此,依据实施例,本文描述的类型的各种功能可实施在软件(由一个或一个以上处理单元或处理器核心执行)中或专门硬件电路中或固件中,或其任何组合中。
处理器100执行由计算机系统120中的一个或一个以上处理单元实施的功能。对于硬件实施方案,处理器100的一个或一个以上处理单元可实施在一个或一个以上微处理器、内嵌式处理器、控制器、专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理装置(DSPD)、可编程逻辑装置(PLD)、现场可编程门阵列(FPGA)、处理器、控制器、微控制器、微处理器、电子装置、经设计以执行本文描述的功能的其它电子单元,或其组合内。对于固件和/或软件实施方案,所述方法可以执行本文描述的功能的模块(例如,程序、功能等)实施。
此外,如本文使用,术语“存储器”指代非暂时性的任何类型的计算机存储媒体,包含长期、短期或与移动平台相关联的其它存储器,且不限于任何特定类型的存储器或特定数目的存储器,或上面存储存储器的特定类型的媒体。因此,本文描述的方法可通过各种手段依据应用实施。举例来说,这些方法可实施在固件(图4A)或软件或硬件或其任何组合中。
可使用有形地体现计算机指令的任何机器可读媒体来实施本文描述的方法。举例来说,软件(图4A)可包含存储在存储器110中且由处理器100执行的程序代码。存储器可实施在处理器100内或外部。如果以固件和/或软件实施,那么所述功能可作为一个或一个以上计算机指令或代码存储在计算机可读媒体上。实例包含以数据结构(例如,预定移动的序列)编码的非暂时性计算机可读媒体,和以计算机程序(例如,可经执行以执行上文描述的方法的软件)编码的非暂时性计算机可读媒体。
参看附图描述若干说明性实施例,附图形成本发明的一部分。虽然描述其中可实施本发明的一个或一个以上方面的特定实施例,但可使用其它实施例且可作出各种修改,而不脱离本发明的范围或所附权利要求书的精神。
尽管结合特定实施例说明本发明,但实施例不限于此。因此,尽管一些实施例中的物件120为移动装置,但在其它实施例中通过使用不同的形状因数来实施物件120,例如,在某些其它实施例中物件120是移动平台(例如,平板计算机,例如可从苹果公司购得的iPad),而在另外其它实施例中物件120是任何电子装置或计算机系统。此电子装置或系统120的说明性实施例可包含以无线方式互相通信的多个物理部分,例如作为例如膝上型计算机、桌上型计算机或服务器计算机等静止计算机的部分的处理器和存储器,其经由一个或一个以上无线链路与封围在足够小以致可以在手中握持的外壳中的传感器和用户输入电路通信。
图4A说明其中可实施本发明的一个或一个以上方面的实例计算系统。举例来说,如图4A中说明的计算机系统可作为计算装置的一部分并入,所述计算装置可实施、执行和/或实行本文描述的特征、方法和/或方法步骤的任一者和/或全部。举例来说,计算机系统120可表示手持式装置的组件中的一些组件。手持式装置可为具有例如相机和/或显示器单元等输入传感器单元的任何计算装置。手持式装置的实例包含(但不限于)视频游戏控制台、平板计算机、智能电话和移动装置。
图4A提供计算机系统120的一个实施例的示意说明,计算机系统120可执行各个其它实施例提供的方法(如本文描述),且/或可充当主机计算机系统、远程信息站/终端、销售点装置、移动装置、机顶盒和/或计算机系统。图4A仅意图提供各个组件的一般化说明,其任一者和/或全部可视需要利用。因此,图4A宽泛地说明可如何以相对分离或相对较集中方式实施个别系统元件。
计算机系统120展示为包括可经由总线1015电耦合(或可以其它方式通信,视需要)的硬件元件。硬件元件可包含:一个或一个以上处理器100,包含(不限于)一个或一个以上通用处理器和/或一个或一个以上专用处理器(例如,数字信号处理芯片、图形加速处理器等);一个或一个以上输入装置115,其可包含(不限于)相机、鼠标、键盘等;以及一个或一个以上输出装置121,其可包含显示器单元、打印机等。
计算机系统120可进一步包含(且/或与之通信)一个或一个以上非暂时性存储装置125,其可包括(不限于)本地和/或网络可存取存储装置,且/或可包含(不限于)磁盘驱动器、驱动器阵列、光学存储装置、固态存储装置(例如,随机存取存储器(“RAM”))和/或只读存储器(“ROM”)(其可为可编程的、快闪可更新等)。此类存储装置可经配置以实施任何适当的数据存储,包含(不限于)各种文件系统、数据库结构等。
计算机系统120可能还包含通信子系统122,其可包含(不限于)调制解调器、网卡(无线或有线)、红外通信装置、无线通信装置和/或芯片组(例如,装置、802.11装置、WiFi装置、WiMax装置、蜂窝式通信设施等)等。通信子系统122可允许与网络(例如,下文描述的网络,仅举一例)、其它计算机系统和/或本文描述的任何其它装置交换数据。计算机系统120可进一步包括可包含RAM或ROM装置(如上文描述)的非暂时性存储器110。
计算机系统120还可包括软件元件,展示为当前位于存储器110内,包含操作系统140、装置驱动器、可执行库和/或其它代码,例如一个或一个以上应用程序145,其可包括各个实施例提供的计算机程序,且/或可经设计以实施其它实施例提供的方法和/或配置其它实施例提供的系统,如本文描述。仅借助实例,相对于上文论述的方法描述的一个或一个以上程序可能实施为可由计算机(和/或计算机内的处理器)执行的代码和/或指令;在一方面中,接着此代码和/或指令可用于配置和/或调适通用计算机(或其它装置)以执行根据所描述的方法的一个或一个以上操作。
这些指令和/或代码的集合可能存储在计算机可读存储媒体上,例如上文描述的存储装置125上。在一些情况下,存储媒体可能并入在计算机系统(例如,计算机系统120)内。在其它实施例中,存储媒体可能与计算机系统分离(例如,可装卸式媒体,例如压缩光盘),且/或提供在安装封装中,使得存储媒体可用于以存储在其上的指令/代码编程、配置和/或调适通用计算机。这些指令可能采取计算机系统120可执行的可执行代码的形式,且/或可能采取源和/或可安装代码的形式,所述源和/或可安装代码在计算机系统120上编译和/或安装(例如,使用多种通常可用编译器、安装程序、压缩/解压缩实用程序等的任一者)后,接着采取可执行代码的形式。
可根据特定要求作出实质变化。举例来说,也可能使用定制硬件,且/或特定元件可能实施在硬件、软件(包含便携式软件,例如小应用程序等)或两者中。此外,可采用到例如网络输入/输出装置等其它计算装置的连接。
一些实施例可采用计算机系统(例如,计算机系统120)来执行根据本发明的方法。举例来说,所描述的方法的程序的一些或全部可由计算机系统120响应于处理器100执行包含在存储器110中的一个或一个以上指令(其可能并入到操作系统140和/或其它代码(例如,应用程序145)中)的一个或一个以上序列而执行。此类指令可从另一计算机可读媒体(例如,存储装置125的一者或一者以上)读取到存储器110中。仅借助实例,工作存储器110中所含的指令的序列的执行可能致使处理器100执行本文描述的方法的一个或一个以上程序。
一些实施例的应用程序145可使用辨识系统150对POR的辨识向用户显示信息,所述信息基于已经辨识的POR来选择。所显示的信息取决于实施例,例如当用户正步行路过餐馆时,可在输出装置121(例如,计算机系统120(其可为移动装置)的屏幕)上显示广告或优惠券。
一些实施例的计算机系统120基于来自辨识系统150的地点访问信息构建用户简档,且接着使用用户简档答复若干问题。作为第一实例,一星期内地点被访问多少次以及平均花费多少时间(例如,家中、工作)?作为第二实例,我到已忘记地点的最后一次访问是在何时?(例如,更换轮胎)。另外,计算机系统120的一些实施例提取用户行为模式且将其存储在用户简档中(例如,我过去经常去什么类型的地点,健身房还是商店?;我过去通常何时去杂货店?)。此用户的离线简档随后由一些实施例的应用程序145使用以获得对用户行为的更深理解且决定适宜的营销目标和策略。
一些实施例的计算机系统120使用此类用户简档来预测用户行为。基于地点访问的时间模式,一些实施例的应用程序145预测用户的下一次访问,且使用此预测执行各种动作。举例来说,当发现系统130识别一个模式为用户在访问电影院之后去餐馆,那么应用程序145使用此模式获得和显示在区域内的且可能吸引用户的餐馆的优惠券。计算机系统120的此基于预测的广告在实际购买发生之前即刻到达用户,且影响用户的行为,例如引导用户去不同的餐馆。
本文使用的术语“机器可读媒体”和“计算机可读媒体”指代参与提供致使机器以特定方式操作的数据的任何非暂时性媒体。在使用计算机系统120实施的实施例中,各种计算机可读媒体可能参与向处理器100提供指令/代码以供执行,且/或可能用于存储和/或携载此类指令/代码(例如,作为信号)。在许多实施方案中,计算机可读媒体是物理和/或有形存储媒体。此非暂时性媒体可采取许多形式,包含(但不限于)非易失性媒体和易失性媒体。非易失性媒体包含(例如)光盘和/或磁盘,例如存储装置125。易失性媒体包含(不限于)动态存储器(例如,存储器110)。
非暂时性计算机可读媒体包含物理和/或有形计算机可读存储媒体。存储媒体可为可由计算机存取的任何可用非暂时性媒体。借助实例而非限制,此类计算机可读媒体可包括穿孔卡、纸带、RAM、ROM、PROM、EPROM、EEPROM、快闪存储器、CD-ROM或其它光盘存储装置、磁盘存储装置或其它磁性存储装置,或可用于存储软件指令(也称为“处理器指令”或“计算机指令”)或数据结构的形式的程序代码且可由计算机存取的任何其它非暂时性媒体;本文使用的磁盘和光盘包含柔性磁盘、硬盘、压缩光盘(CD)、激光光盘、数字多功能光盘(DVD)、软性磁盘和蓝光光盘,其中磁盘通常以磁性方式再现数据,而光盘利用激光以光学方式再现数据。以上内容的组合也应包含在计算机可读媒体的范围内。
各种形式的非暂时性计算机可读媒体可参与将一个或一个以上指令的一个或一个以上序列携载到处理器100以供执行。仅借助实例,所述指令初始可在远程计算机的磁盘和/或光盘上携载。远程计算机可能将指令加载到其动态存储器中且将指令作为信号在发射媒体上发送以由计算机系统120接收和/或执行。根据本文描述的类型的一些实施例,这些信号(其可能呈电磁信号、声学信号、光学信号等的形式)均为上面可编码指令的载波的实例。
通信子系统122(和/或其组件)通常将接收信号,且总线105接着可能将信号(和/或由信号携载的数据、指令等)携载到存储器110,处理器100从存储器110检索并执行所述指令。存储器110接收到的指令可任选地在由处理器100执行之前或之后存储在非暂时性存储装置125上。
上文论述的方法、系统和装置为实例。各种实施例可视需要省略、替换或添加各种程序或组件。举例来说,在替代配置中,所描述的方法可以不同于所描述的次序的次序执行,且/或可添加、省略和/或组合各个阶段。并且,相对于某些实施例描述的特征可在各个其它实施例中组合。实施例的不同方面和元件可以类似方式组合。并且,技术进步,且因此许多元件是不将本发明的范围限于那些特定实例的实例。
描述中给出特定细节以提供对实施例的彻底理解。然而,可在没有这些特定细节的情况下实践实施例。举例来说,已在无不必要细节的情况下展示众所周知的电路、过程、算法、结构和技术以免混淆实施例。此描述仅提供实例实施例,且不希望限制本文描述的类型的实施例的范围、适用性或配置。而是,实施例的先前描述将向所属领域的技术人员提供用于实施实施例的启发性描述。可在不脱离本发明的精神和范围的情况下作出元件的功能和布置方面的各种改变。
并且,一些实施例描述为过程,所述过程描绘为流程图或框图。尽管每一者可将操作描述为循序过程,但许多操作可并行或同时执行。另外,操作的次序可重新布置。过程可具有图中未包含的额外步骤。此外,所述方法的实施例可由硬件、软件、固件、中间件、微代码、硬件描述语言或其任何组合实施。当实施在软件、固件、中间件或微代码中时,用以执行相关联任务的程序代码或代码区段可存储在例如存储媒体等计算机可读媒体中。处理器可执行所述相关联任务。
已描述若干实施例,可在不脱离本发明的精神的情况下使用各种修改、替代构造和等效物。举例来说,以上元件可以仅是较大系统的组件,其中其它规则可优先于本文描述的类型的实施例的应用或以其它方式修改所述应用。并且,可在考虑以上元件之前、期间或之后采取若干步骤。因此,以上描述不限制实施例的范围。
可在不脱离本发明的范围的情况下作出各种调适和修改。因此,所附权利要求书的精神和范围不应限于以上描述。应理解,所属领域的技术人员从本文的描述将容易了解实施例的若干其它方面,本文的描述中借助说明展示和描述了各个方面。图式和详细描述应视为本质上为说明性的而非限制性的。
Claims (38)
1.一种发现相关地点的方法,其包括:
由计算装置接收无线信号的测量的集合;
由所述计算装置识别一个或一个以上地点,每一地点具有通过使用无线信号的测量的所述集合中的子集获得的质心;
由所述计算装置基于比较两个质心确定具有所述两个质心的对应两个地点是否类似;以及
由所述计算装置基于所述对应两个地点被确定为类似而将包括所述对应两个地点的相关地点存储在非暂时性存储器中。
2.根据权利要求1所述的方法,其中:
独立于进行每一测量的时间而执行所述识别。
3.根据权利要求2所述的方法,其进一步包括:
接收待分别与所述一个或一个以上地点相关联的一个或一个以上标签上的用户输入;以及
由所述计算装置比较与所述对应两个地点相关联的两个标签以检查所述两个标签是否类似;
其中进一步基于所述两个标签被确定为类似而执行所述存储。
4.根据权利要求3所述的方法,其中:
从至少两个不同用户获得所述一个或一个以上标签。
5.根据权利要求4所述的方法,其中:
所述一个或一个以上标签的第一集合被指定为公共的;且
所述一个或一个以上标签的第二集合被指定为所述至少两个不同用户中的至少一个用户私人的。
6.根据权利要求1所述的方法,其中:
所述识别基于所述两个质心的每一者的所述子集中的测量是在时间上相对于彼此循序测得的。
7.根据权利要求6所述的方法,其进一步包括:
检查所述子集中的每一测量是否满足关于类似性量度的测试。
8.根据权利要求7所述的方法,其中:
通过至少执行类似性函数以将所述测量与所述子集中的测量的质心比较来获得所述类似性量度。
9.根据权利要求8所述的方法,其中:
所述测量包括无线信号的发射器的对应群组的识别符的群组,和无线信号的强度;
所述质心包括无线信号的发射器的所述对应群组的平均值的群组;且
针对每一发射器对于进行所述测量时测得的所述发射器的对应无线信号的多个强度计算每一平均值。
10.根据权利要求6所述的方法,其进一步包括:
基于无线信号的测量的所述集合和树中连接到根节点的多个子节点产生所述树的所述根节点,其中基于所述子集产生至少一个子节点。
11.根据权利要求10所述的方法,其进一步包括:
将无线信号的测量的所述集合中的多个子集与额外测量的子集比较以识别新的相关地点。
12.根据权利要求6所述的方法,其进一步包括:
将无线信号的测量的所述集合中的多个子集与测量的另一集合中的子集比较以识别已知相关地点。
13.根据权利要求1所述的方法,其中:
独立于地理信息执行所述确定。
14.一种用于处理测量的装置,所述装置包括:
无线收发器;
一个或一个以上处理器,其操作地耦合到所述无线收发器;
非暂时性存储器,其操作地耦合到所述一个或一个以上处理器;以及
保持在所述非暂时性存储器中的软件,其当在所述一个或一个以上处理器中运行时致使所述一个或一个以上处理器:
接收无线信号的测量的集合;
识别一个或一个以上地点,每一地点具有通过使用无线信号的测量的所述集合中的子集获得的质心;
基于比较两个质心确定具有所述两个质心的对应两个地点是否类似;以及
基于所述对应两个地点被确定为类似而将包括所述对应两个地点的相关地点存储在所述非暂时性存储器中。
15.根据权利要求14所述的装置,其中:
所述一个或一个以上地点的识别独立于进行每一测量的时间。
16.根据权利要求15所述的装置,其中所述软件进一步致使所述一个或一个以上处理器:
接收待分别与所述一个或一个以上地点相关联的一个或一个以上标签上的用户输入;以及
比较与所述对应两个地点相关联的两个标签以检查所述两个标签是否类似;
其中所述相关地点在所述非暂时性存储器中的存储进一步基于所述两个标签被确定为类似。
17.根据权利要求16所述的装置,其中:
从至少两个不同用户获得所述一个或一个以上标签。
18.根据权利要求14所述的装置,其中:
所述一个或一个以上地点的识别基于所述两个质心的每一者的所述子集中的所述测量是在时间上相对于彼此循序测得的。
19.根据权利要求18所述的装置,其中所述软件进一步致使所述一个或一个以上处理器:
检查所述子集中的每一测量是否满足关于类似性量度的测试。
20.根据权利要求19所述的装置,其中:
通过至少执行类似性函数以将所述测量与所述子集中的测量的质心比较来获得所述类似性量度。
21.根据权利要求18所述的装置,其中:
所述软件进一步致使所述一个或一个以上处理器基于无线信号的测量的所述集合和树中连接到根节点的多个子节点产生所述树的所述根节点,其中基于所述子集产生至少一个子节点。
22.根据权利要求14所述的装置,其中:
所述对应两个地点的类似性的确定独立于地理信息。
23.一种包括待由至少一个处理器执行的软件的非暂时性计算机可读存储媒体,所述软件包括:
用以接收无线信号的测量的集合的指令;
用以识别一个或一个以上地点的指令,每一地点具有通过使用无线信号的测量的所述集合中的子集获得的质心;
用以基于比较两个质心确定具有所述两个质心的对应两个地点是否类似的指令;
以及
用以基于所述对应两个地点被确定为类似而将包括所述对应两个地点的相关地点存储在非暂时性存储器中的指令。
24.根据权利要求23所述的非暂时性计算机可读存储媒体,其中:
所述指令独立于进行每一测量的时间。
25.根据权利要求24所述的非暂时性计算机可读存储媒体,其进一步包括:
用以接收待分别与所述一个或一个以上地点相关联的一个或一个以上标签上的用户输入的指令;以及
用以比较与所述对应两个地点相关联的两个标签以检查所述两个标签是否类似的指令;
其中所述相关地点在所述非暂时性存储器中的存储进一步基于所述两个标签被确定为类似。
26.根据权利要求23所述的非暂时性计算机可读存储媒体,其中:
所述一个或一个以上地点的识别基于所述两个质心的每一者的所述子集中的测量是在时间上相对于彼此循序测得的。
27.根据权利要求26所述的非暂时性计算机可读存储媒体,其中所述软件进一步包括:
用以检查所述子集中的每一测量是否满足关于类似性量度的测试的指令。
28.根据权利要求27所述的非暂时性计算机可读存储媒体,其中:
通过至少执行类似性函数以将所述测量与所述子集中的测量的质心比较来获得所述类似性量度。
29.根据权利要求26所述的非暂时性计算机可读存储媒体,其中:
所述软件进一步致使所述至少一个处理器基于无线信号的测量的所述集合和树中连接到根节点的多个子节点产生所述树的所述根节点,其中基于所述子集产生至少一个子节点。
30.根据权利要求23所述的非暂时性计算机可读存储媒体,其中:
所述对应两个地点的类似性的确定独立于地理信息。
31.一种包括耦合到存储器和无线接收器的处理器的系统,所述系统包括:
用于获得无线信号的测量的集合的装置;
用于识别一个或一个以上地点的装置,每一地点具有通过使用无线信号的测量的所述集合中的子集获得的质心;
用于基于比较两个质心确定具有所述两个质心的对应两个地点是否类似的装置;
以及
用于基于所述对应两个地点被确定为类似而将包括所述对应两个地点的相关地点存储在非暂时性存储器中的装置。
32.根据权利要求31所述的系统,其中:
所述确定独立于进行每一测量的时间而执行。
33.根据权利要求32所述的系统,其进一步包括:
用于接收待分别与所述一个或一个以上地点相关联的一个或一个以上标签上的用户输入的装置;以及
用于比较与所述对应两个地点相关联的两个标签以检查所述两个标签是否类似的装置;
其中所述用于存储的装置进一步基于所述两个标签被确定为类似。
34.根据权利要求31所述的系统,其中:
所述用于识别的装置基于所述两个质心的每一者的所述子集中的测量是在时间上相对于彼此循序测得的。
35.根据权利要求34所述的系统,其进一步包括:
用于检查所述子集中的每一测量是否满足关于类似性量度的测试的装置。
36.根据权利要求34所述的系统,其进一步包括:
基于无线信号的测量的所述集合和树中连接到根节点的多个子节点产生所述树的所述根节点的装置,其中基于所述子集产生至少一个子节点。
37.一种用于发现延伸相关地点的设备,其包括:
至少一个处理器;以及
存储计算机可读指令的非暂时性存储器,所述计算机可读指令当由所述至少一个处理器执行时致使所述设备:
接收无线信号的测量的集合;
识别一个或一个以上地点,每一地点具有通过使用无线信号的测量的所述集合中的子集获得的质心;
基于比较两个质心确定具有所述两个质心的对应两个地点是否类似;以及
基于所述对应两个地点被确定为类似而将包括所述对应两个地点的相关地点存储在所述非暂时性存储器中。
38.根据权利要求37所述的设备,其中:
所述对应两个地点的类似性的确定独立于地理信息。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201161540426P | 2011-09-28 | 2011-09-28 | |
US61/540,426 | 2011-09-28 | ||
US13/627,823 | 2012-09-26 | ||
US13/627,823 US9432805B2 (en) | 2011-09-28 | 2012-09-26 | Discovering and automatically sizing a place of relevance |
PCT/US2012/057579 WO2013049360A1 (en) | 2011-09-28 | 2012-09-27 | Discovering and automatically sizing a place of relevance |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103947230A true CN103947230A (zh) | 2014-07-23 |
Family
ID=47912414
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201280056405.6A Pending CN103947230A (zh) | 2011-09-28 | 2012-09-27 | 发现相关地点以及自动设定其大小 |
Country Status (6)
Country | Link |
---|---|
US (1) | US9432805B2 (zh) |
EP (1) | EP2761893A1 (zh) |
JP (1) | JP2014532353A (zh) |
KR (1) | KR101659975B1 (zh) |
CN (1) | CN103947230A (zh) |
WO (1) | WO2013049360A1 (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105590330A (zh) * | 2014-10-30 | 2016-05-18 | 清华大学 | 基于群智感知的室内平面图生成方法、服务器及系统 |
CN107710236A (zh) * | 2015-06-30 | 2018-02-16 | 高通股份有限公司 | 并行置信空间运动规划器 |
CN110008801A (zh) * | 2017-12-04 | 2019-07-12 | 地图盒子有限公司 | 基于移动遥测数据识别数字地图中的缺失要素 |
Families Citing this family (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103888493B (zh) * | 2012-12-20 | 2018-03-23 | 腾讯科技(深圳)有限公司 | 信息推送方法及装置 |
JP6090438B2 (ja) * | 2013-05-14 | 2017-03-08 | 富士通株式会社 | グルーピング装置、グルーピング方法、およびグルーピングプログラム |
WO2014189495A1 (en) * | 2013-05-21 | 2014-11-27 | Intel Corporation | Systems and methods for simultaneously and automatically creating databases of wifi signal information |
US9411632B2 (en) * | 2013-05-30 | 2016-08-09 | Qualcomm Incorporated | Parallel method for agglomerative clustering of non-stationary data |
US20150006279A1 (en) * | 2013-06-27 | 2015-01-01 | Google Inc. | Systems and methods of generating a valid location cluster based on a location of a commercial entity |
US9465816B2 (en) | 2013-08-19 | 2016-10-11 | Globalfoundries Inc. | Generating an image of a floor plan |
US10051110B2 (en) | 2013-08-29 | 2018-08-14 | Apple Inc. | Management of movement states of an electronic device |
CN105917679A (zh) * | 2014-01-16 | 2016-08-31 | 哈曼国际工业有限公司 | 将移动装置定位在车辆中 |
US9344748B2 (en) | 2014-03-31 | 2016-05-17 | Arris Enterprises, Inc. | Adaptive streaming transcoder synchronization |
KR102216049B1 (ko) * | 2014-04-21 | 2021-02-15 | 삼성전자주식회사 | 시맨틱 라벨링 시스템 및 방법 |
US9485528B2 (en) | 2014-04-28 | 2016-11-01 | Rovi Guides, Inc. | Methods and systems for preventing users from terminating services based on use |
CN106716402B (zh) * | 2014-05-12 | 2020-08-11 | 销售力网络公司 | 以实体为中心的知识发现 |
US9807549B2 (en) * | 2014-07-18 | 2017-10-31 | Intel Corporation | Systems and methods for adaptive multi-feature semantic location sensing |
US10028084B2 (en) | 2015-02-10 | 2018-07-17 | Qualcomm Incorporated | Adaptive position indicator |
US20200322868A1 (en) * | 2015-07-17 | 2020-10-08 | Origin Wireless, Inc. | Method, apparatus, and system for improving topology of wireless sensing systems |
US9818063B2 (en) | 2015-08-31 | 2017-11-14 | Sas Institute Inc. | Forecasting interest in an object over a future period of time using a three-stage time-series analysis process |
US11106741B2 (en) | 2017-06-06 | 2021-08-31 | Salesforce.Com, Inc. | Knowledge operating system |
US11194842B2 (en) | 2018-01-18 | 2021-12-07 | Samsung Electronics Company, Ltd. | Methods and systems for interacting with mobile device |
FR3079309B1 (fr) * | 2018-03-21 | 2020-07-17 | Sigfox | Procede et systeme de geolocalisation de terminaux evoluant en groupe |
US11240752B2 (en) | 2019-02-04 | 2022-02-01 | Morgan State University | Adaptive energy efficient cellular network |
US11567996B2 (en) * | 2020-12-28 | 2023-01-31 | Atlassian Pty Ltd | Collaborative document graph-based user interfaces |
US20240095221A1 (en) * | 2022-09-08 | 2024-03-21 | Johnson Controls Tyco IP Holdings LLP | Gateway system that maps points into a graph schema |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1798983A (zh) * | 2003-04-25 | 2006-07-05 | 高通股份有限公司 | 获得信号捕获辅助数据的系统和方法 |
US20080214205A1 (en) * | 2007-02-05 | 2008-09-04 | Commscope, Inc. Of North Carolina | System and method for generating a location estimate using a method of intersections |
US20080214202A1 (en) * | 2007-03-02 | 2008-09-04 | General Instrument Corporation | Method and Apparatus for Bluetooth Discoverability Using Region Estimation |
US20110018732A1 (en) * | 2009-07-27 | 2011-01-27 | Electronics And Telecommunications Research Institute Of Daejeon | Device and method for collecting information related to infrastructure, and positioning method and system using the same |
US20110182238A1 (en) * | 2008-08-06 | 2011-07-28 | Christopher Marshall | Location estimation by observing wireless signals |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001128222A (ja) | 1999-10-25 | 2001-05-11 | Matsushita Electric Ind Co Ltd | 無線移動局の位置検出方法及び装置 |
US6938234B1 (en) | 2002-01-22 | 2005-08-30 | Cadence Design Systems, Inc. | Method and apparatus for defining vias |
US7715850B2 (en) | 2002-10-22 | 2010-05-11 | Qualcomm Incorporated | Method and apparatus for identifying transmitters in a wireless communication system using power predictions |
US7395073B2 (en) | 2003-06-05 | 2008-07-01 | Ntt Docomo Inc. | Method and apparatus for location estimation using region of confidence filtering |
JP2006308361A (ja) | 2005-04-27 | 2006-11-09 | Nippon Telegr & Teleph Corp <Ntt> | 位置検出システム及びその方法 |
SG146461A1 (en) | 2007-03-15 | 2008-10-30 | Agis Pte Ltd | Location determination using sequential pattern recognition |
GB2462592A (en) * | 2008-08-06 | 2010-02-17 | Geotate Bv | Supplementing GPS position information adaptively with WiFi location data |
US20100317371A1 (en) | 2009-06-12 | 2010-12-16 | Westerinen William J | Context-based interaction model for mobile devices |
US8660577B2 (en) * | 2009-12-04 | 2014-02-25 | Nokia Corporation | Method and apparatus for on-device positioning using compressed fingerprint archives |
WO2011070551A1 (en) | 2009-12-10 | 2011-06-16 | Nokia Corporation | Method and apparatus for constructing a user-generated geolocation system |
US8682345B2 (en) * | 2011-09-28 | 2014-03-25 | Qualcomm Incorporated | Utilizing relationships between places of relevance |
-
2012
- 2012-09-26 US US13/627,823 patent/US9432805B2/en not_active Expired - Fee Related
- 2012-09-27 WO PCT/US2012/057579 patent/WO2013049360A1/en active Application Filing
- 2012-09-27 JP JP2014533323A patent/JP2014532353A/ja not_active Ceased
- 2012-09-27 CN CN201280056405.6A patent/CN103947230A/zh active Pending
- 2012-09-27 KR KR1020147011496A patent/KR101659975B1/ko active IP Right Grant
- 2012-09-27 EP EP12772654.5A patent/EP2761893A1/en not_active Withdrawn
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1798983A (zh) * | 2003-04-25 | 2006-07-05 | 高通股份有限公司 | 获得信号捕获辅助数据的系统和方法 |
US20080214205A1 (en) * | 2007-02-05 | 2008-09-04 | Commscope, Inc. Of North Carolina | System and method for generating a location estimate using a method of intersections |
US20080214202A1 (en) * | 2007-03-02 | 2008-09-04 | General Instrument Corporation | Method and Apparatus for Bluetooth Discoverability Using Region Estimation |
US20110182238A1 (en) * | 2008-08-06 | 2011-07-28 | Christopher Marshall | Location estimation by observing wireless signals |
US20110018732A1 (en) * | 2009-07-27 | 2011-01-27 | Electronics And Telecommunications Research Institute Of Daejeon | Device and method for collecting information related to infrastructure, and positioning method and system using the same |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105590330A (zh) * | 2014-10-30 | 2016-05-18 | 清华大学 | 基于群智感知的室内平面图生成方法、服务器及系统 |
CN105590330B (zh) * | 2014-10-30 | 2018-10-16 | 清华大学 | 基于群智感知的室内平面图生成方法、服务器及系统 |
CN107710236A (zh) * | 2015-06-30 | 2018-02-16 | 高通股份有限公司 | 并行置信空间运动规划器 |
CN110008801A (zh) * | 2017-12-04 | 2019-07-12 | 地图盒子有限公司 | 基于移动遥测数据识别数字地图中的缺失要素 |
Also Published As
Publication number | Publication date |
---|---|
EP2761893A1 (en) | 2014-08-06 |
KR101659975B1 (ko) | 2016-09-27 |
US9432805B2 (en) | 2016-08-30 |
US20130080457A1 (en) | 2013-03-28 |
KR20140071465A (ko) | 2014-06-11 |
JP2014532353A (ja) | 2014-12-04 |
WO2013049360A1 (en) | 2013-04-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103947230A (zh) | 发现相关地点以及自动设定其大小 | |
Zhai et al. | Beyond Word2vec: An approach for urban functional region extraction and identification by combining Place2vec and POIs | |
Zhao et al. | A trajectory clustering approach based on decision graph and data field for detecting hotspots | |
CN106462627B (zh) | 根据多个位置数据报告分析语义地点和相关数据 | |
Zheng et al. | Detecting collective anomalies from multiple spatio-temporal datasets across different domains | |
US20180049001A1 (en) | Method of and server for processing wireless device sensor data to generate an entity vector associated with a physical location | |
Shen et al. | A framework for identifying activity groups from individual space-time profiles | |
CN105091890B (zh) | 用于推荐候选路径的方法和装置 | |
JP5935516B2 (ja) | 情報処理装置、情報処理方法、及びプログラム | |
CN102572390A (zh) | 对监视对象者的行动进行监视的装置以及方法 | |
GB2541307A (en) | Analyzing consumer behavior using electronically-captured consumer location data | |
US11893073B2 (en) | Method and apparatus for displaying map points of interest, and electronic device | |
US20150248436A1 (en) | Methods, Circuits, Devices, Systems and Associated Computer Executable Code for Assessing a Presence Likelihood of a Subject at One or More Venues | |
JP2013250862A (ja) | 情報処理装置、情報処理方法、及びプログラム | |
KR20140093772A (ko) | 사용자의 선호도 및 이동 패턴을 이용한 관심지역 추천 방법 | |
Cai et al. | Discovering regions of anomalous spatial co-locations | |
JP6616860B2 (ja) | 情報生成装置、プログラム及び情報生成方法 | |
RU2658876C1 (ru) | Способ и сервер для обработки данных датчика беспроводного устройства для создания вектора объекта, связанного с физическим положением | |
Honarvar et al. | Particular matter prediction using synergy of multiple source urban big data in smart cities | |
Cui et al. | Research on the driving forces of urban hot spots based on exploratory analysis and binary logistic regression model | |
JP2020077118A (ja) | 機械学習装置、判定装置、プログラム及び機械学習方法 | |
JP2019186693A (ja) | 情報生成装置、プログラム及び情報生成方法 | |
Fan | Reexamining contemporary urbanism in the United States: convenient mix of the old and new | |
Kurowska et al. | The use of gravity model in spatial planning | |
CN111898322B (zh) | 一种数据处理方法及相关设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20140723 |
|
WD01 | Invention patent application deemed withdrawn after publication |