基于Beacon三点定位的楼层定位方法与流程

文档序号:14993831发布日期:2018-07-20 23:09阅读:542来源:国知局

beacon是一种通过低功率蓝牙技术(bluetoothlowenergy)实现精确定位的设备,如今beacon技术应用得越来越广泛,依据beacon基站定位用户位置的需求和功能也越来越多。

目前基于beacon技术的定位系统及方法是在用户逛商场的时候,先定位出用户的位置,然后使用手机/平板的摄像头拍摄出用户行进路线前方的照片,然后经由网络将定位信息和拍摄的前方照片发往ar服务器,经由ar服务器确定出用户当前走到商场的哪家门店,最后将商场门店信息发给用户所持有的手机/平板做进一步处理。

如图1和图2所示,具体地说,基于beacon技术的定位系统包含移动端和beacon硬件设备,其中beacon硬件设备和移动端app都采用ibeacon(低功率蓝牙技术)协议。移动端利用其内部安装的beacon搜索模块1搜索用户附近的beacon设备,得到最原始的数据(beaconrawdata),该得到的最原始数据包括beacon设备号(uuid)、组号(major)、组内编号(minor)、信号强度(rssi)、功率(txpower,距离beacon1米时的信号强度),然后将原始数据(rawdata)传递给beacon数据转换模块2。由beacon数据转换模块2将beacon搜索模块1输出的beaconrawdata转换成经度、纬度、用户到beacon的距离等信息,然后将转换后的数据传给定位模块3。由定位模块3接收beacon数据转换模块2的输出数据,调用定位方法,测出用户当前位置,并将结果传输给数据处理/集成模块4。

数据处理/集成模块4接收定位模块3和照相(camera)模块5传送的数据,打包成特定的数据结构,然后传给第一网络处理模块6。

第一网络处理模块6接收数据处理/集成模块4的数据后通过网络接口将数据发送到ar服务器。

ar服务器中的第二网络处理模块7接收移动端发来的用户位置和camera图像,并将收到的数据转码、返解成服务端能够识别的数据结构,然后将处理结果传给图像识别及图像转换模块8。

图像识别及图像转换模块8识别移动端发来的camera照片,调用图像识别算法和后台数据知识库,将识别结果封装为特定的数据结构给数据处理/存储模块9做进一步处理。

数据处理/存储模块9接收图像识别及转换模块8传来的数据结构,同时查询存储有图像识别及处理算法的算法/数据知识库10,并结合用户位置,分析图像信息,最终得到用户当前在哪些店面附近。

数据处理/存储模块9将最终得到用户当前在哪些店面附近的信息通过第二网络处理模块7传送回网络处理模块6和数据处理/集成模块4,由数据处理/集成模块4根据ar服务器传回的处理数据和营销信息,通过营销模块11以一种友好的形式告知用户。

但是这种定位方法在选择参考beacon基站时,往往是选择距离最近或信号最强的数个beacon,再通过常用的三点定位方法业定位出用户所在的位置,但是在选择beacon时往往会忽视这些beacon是否在同一平面(或同一楼层),而移动终端在复杂的环境下会搜集到数十个到上百个beacon,并根据信号最强或距离最近选出来数个beacon,而这些数个beacon往往会在不同的平面(或不同的楼层),如果直接使用这些beacon定位用户的位置,会产生较大的定位误差。



技术实现要素:

本发明的目的在于提供一种能够避免或减小这类误差的基于beacon三点定位的楼层定位方法。

本发明中基于beacon三点定位的楼层定位方法是对用户所在位置利用三点定位方法进行定位之前先对用户所在楼层进行定位,对于用户所在楼层的定位方法包括以下步骤:

1)将beacon搜索模块搜到的beacon按楼层进行分类,并对每一楼层进行编号,同时根据每个楼层中beacon的数量对所有楼层作降序排序;

2)选择三个beacon数量最多的楼层分别为楼层f1、楼层f2、楼层f3,将楼层f1、楼层f2、楼层f3根据beacon数量呈降序排列,每一楼层中对应的beacon数量分别为b1、b2、b3;

3)计算b1、b2、b3的标准差σ;

4)判断标准差,如果标准差σ≥50%,则beacon数量最多的楼层f1为用户所在楼层;如果σ小于50%,则按打分策略分别对楼层f1、f2、f3分别打分,得分最高的楼层则为用户所在楼层;

5)依据步骤4)中选出的楼层,选择该楼层中所有beacon中信号最强或距离最近的前3个beacon作为三点定位方法的参考点,通过三点定位方法准确定位出用户所在位置。

所述步骤3)中,将楼层f1、f2、f3中的beacon数量b1、b2、b3代入以下标准差计算公式,获得标准差σ,

其中,数值xi为beacon数量b1、b2、b3,μ为beacon数量b1、b2、b3的算术平均值,n为具体的楼层数量,σ为标准差。

所述步骤4)中,用于所述楼层f1、f2、f3的打分策略从基于距离和/或基于信号强度两个方面进行处理。

基于距离的打分策略包括以下步骤:

4.1根据平均距离维度、信号强度维度及beacon数维度三个对象的远近、强弱及具体数量而将维度权重的分值分为四个档次,每个档次具有相应的维度权重的分值;

4.2为平均距离提供相应的维度权重,同时根据beacon距离用户的远近分成6个维度,并统计每个维度内的beacon数目,所述6个维度分别是距离用户在1m内、距离用户在3m内、距离用户在5m内、距离用户在8m内、距离用户在10m内和距离用户在10m外,每个维度对应有相应的维度权重;

4.3将beacon搜索模块搜索到的beacon信号强度值换算得到beacon距离用户的距离,并计算出楼层f1、楼层f2、楼层f3中各beacon至用户的平均距离;

4.4将各楼层f1、楼层f2、楼层f3中beacon根据步骤4.2中的6个维度进行分类,并列出每一维度中的具体数量;

4.5将步骤4.3中各楼层f1、楼层f2、楼层f3的平均距离对照步骤4.1中的平均距离的远近而获得相应的维度权重的分值;将步骤4.4中各楼层f1、楼层f2、楼层f3的6个维度对照beacon数维度获得相应的维度权重的分值;

4.6计算每个维度的得分,每个维度的得分=维度权重*维度权重的分值;

4.7累加各楼层每个维度得分,总分最高者为用户所在楼层。

步骤4.1中,四个档次分别是平均距离最短、信号最强及beacon数维度的数量最多者维度权重的分值为50%,并记录为a;平均距离次短、信号次强及beacon数维度的数量次多者维度权重的分值为30%,并记录为b;平均距离最长、信号最弱及beacon数维度的数量最少者维度权重的分值为20%,并记录为c;只要beacon数维度的数量为0时,则不考虑平均距离和信号强度,其维度权重的分值为0,记录为d。

所述平均距离是由各楼层所含beacon到用户的距离的算术平均值。

步骤4.2中,平均距离的维度权重为50,距离用户在1m内的维度权重为30、距离用户在3m内的维度权重为20、距离用户在5m内的维度权重为10、距离用户在8m内的维度权重为5、距离用户在10m内的维度权重为3、距离用户在10m外的维度权重为2。

基于信号强度的打分策略包括以下步骤:

4.1根据平均距离维度、信号强度维度及beacon数维度三个对象的远近、强弱及具体数量而将维度权重的分值分为四个档次,每个档次具有相应的维度权重的分值;

4.2为平均信号强度提供相应的维度权重,同时根据beacon搜索模块搜索到的rssi值分成7个维度,该7个维度分别为rssi值小于等于功率(txpower)、rssi值小于等于txpower-10、rssi值小于等于txpower-20、rssi值小于等于txpower-25、rssi值小于等于txpower-30、rssi值小于等于txpower-35和rssi值大于txpower–35;

4.3根据beacon搜索模块搜索到的rssi值,计算出楼层f1、楼层f2、楼层f3中的平均信号强度;

4.4将各楼层f1、楼层f2、楼层f3中beacon根据步骤4.2中的7个维度进行分类,并列出每一维度中的具体数量;

4.5将步骤4.3中各楼层f1、楼层f2、楼层f3的平均信号强度对照步骤4.1中的平均信号强度的强弱而获得相应的维度权重的分值;将步骤4.4中各楼层f1、楼层f2、楼层f3的7个维度对照beacon数维度获得相应的维度权重的分值;

4.6计算每个维度的得分,每个维度的得分=维度权重*维度权重的分值;

4.7累加各楼层每个维度得分,总分最高者为用户所在楼层。

所述平均信号强度是用户接收到的各楼层所含beacon的rssi值的算术平均值。

步骤4.2中平均信号强度的维度权重为50;rssi值小于等于功率(txpower)的维度权重为30、rssi值小于等于txpower-10的维度权重为20、rssi值小于等于txpower-20的维度权重为15、rssi值小于等于txpower-25的维度权重为10、rssi值小于等于txpower-30的维度权重为8、rssi值小于等于txpower-35的维度权重为5、rssi值大于txpower–35的维度权重为3。

采用本发明中的方法之后可以在三点定位前比较准确地定位用户当前所在楼层,以便能更准确地对用户所在位置进行定位。

附图说明

图1是现有基于beacon三定位方法的系统示意图。

图2是现有基于beacon三定位方法的流程图。

图3是本发明中基于beacon三定位方法的功能流程图。

图4是本发明中定位模块运行在服务端后的功能模块图。

图5是本发明中定位模块运行在服务端后的流程图。

具体实施方式

下面将结合附图对本发明中的具体实施例作详细说明。

如图4和图5所示,本发明中基于beacon三定位系统包括有移动端和ar服务器(augmentedreality),其中移动端为智能手机或平板电脑等等。

在移动端内设置有beacon搜索模块1、beacon数据转换模块2、照相(camera)模块5、数据处理/集成模块4、第一网络处理模块6和营销模块11。在ar服务器内设置有第二网络处理模块7、定位模块3、图像识别及图像转换模块8、数据处理/存储模块9和算法/数据知识库10。

在用户进入商场时,利用移动端内部安装的beacon搜索模块1搜索用户附近的beacon设备,得到最原始的数据(beaconrawdata),同时使用手机/平板的摄像头即camera模块5拍摄出用户行进路线前方的照片,由beacon数据转换模块2将beacon搜索模块1输出的最原始的数据转换成经度、纬度、用户到beacon基点的距离等信息后连同camera模块5拍摄的照片一起经由第一网络处理模块6发往ar服务器,在ar服务器内,由第二网络处理模块7接收传送的信息及照片,并将接收的信息及照片分别传送到定位模块3和图像识别及图像转换模块8,由定位模块3根据传送的信息对用户所在位置进行定位,并由图像识别及图像转换模块8作进一步定位处理找出相应的门店,定位后的信息及找出的相应门店的信息经数据处理/存储模块9存储处理后经由第二网络处理模块7将需要推送的信息传送给移动端,由移动端中的营销模块11向用户推送营销内容,即将商场门店的信息发给手机/平板做进一步处理。

其中定位模块3内部对用户所在位置利用三点定位方法进行定位之前先对用户所在楼层进行定位,对于用户所在楼层的定位方法包括以下步骤,如图3所示:

1)将beacon搜索模块1搜到的beacon按楼层进行分类,并对每一楼层进行编号,同时根据每个楼层中beacon的数量对所有楼层作降序排序。

2)选择三个beacon数量最多的楼层分别为楼层f1、楼层f2、楼层f3,且将楼层f1、楼层f2、楼层f3根据beacon数量呈降序排列,每一楼层中对应的beacon数量分别为b1、b2、b3。

3)计算b1、b2、b3的标准差σ;

将b1、b2、b3代入以下标准差计算公式,

其中,数值xi为beacon数量b1、b2、b3,μ为beacon数量b1、b2、b3的算术平均值,n为具体的楼层数量,σ为标准差。

4)判断标准差,如果标准差σ≥50%,则beacon数量最多的楼层f1为用户所在楼层,再选用f1楼层中的beacon进行三点定位方法进一步确定用户所在的具体位置;如果σ小于50%,则按打分策略分别对楼层f1、f2、f3分别打分,得分最高的楼层则为用户所在楼层。

5)依据步骤4)中选出的楼层,选择该楼层中所有beacon中信号最强或距离最近的前3个beacon作为三点定位方法的参考点,通过三点定位方法准确定位出用户所在位置。

步骤4中的打分策略主要是为了把握各楼层中beacon集合的质量,为此对各楼层进行打分,打分过程可以从基于距离和基于信号强度两个方面分别进行,以便选择出处于同一楼层的beacon,再供三点定位方法使用。下面对基于距离和基于信号强度两个方面的打分过程分别加以说明。

一、基于距离

4.1根据平均距离维度、信号强度维度及beacon数维度三个对象的远近、强弱及具体数量而将维度权重的分值分为四个档次,每个档次具有相应的维度权重的分值,即提供维度打分结果对应的分值信息表,见表1。

4.2为平均距离提供相应的维度权重,平均距离的维度权重为50,同时根据beacon距离用户的远近分成6个维度,该6个维度分别是距离用户在1m内、距离用户在3m内、距离用户在5m内、距离用户在8m内、距离用户在10m内和距离用户在10m外,每个维度对应有相应的维度权重具体见表2。表1、表2及表3中的维度权重及维度权重的分值是根据项目实践总结出来的经验数值,在用户定位中广泛使用。

表1

表2基于距离的维度表

4.3将beacon搜索模块1搜索到的beacon信号强度值换算得到beacon距离用户的距离,计算出楼层f1、楼层f2、楼层f3中各beacon至用户的平均距离,该平均距离为楼层所含beacon到用户的距离的算术平均值,其由beacon的信号强度(rssi)值换算得到距离的方式及算术平均值的计算属于现有技术,在此不再详细说明。

4.4将各楼层f1、楼层f2、楼层f3中beacon根据表2中的维度进行分类,并列出每一维度中的具体数量,具体见表4。

表4

4.5将表4中的平均距离和beacon数量(数维度)与表1中的维度打分结果相比对,获得相应的打分结果及维度权重的分值,楼层f1、f2、f3的平均距离楼层f2最短,则档次为a,维度权重的分值为50%,楼层f1、f3则分别为b和c;1m以内beacon数楼层f1、f2、f3中分别为2、4、1,则档次分别为b、a、c,维度权重的分值分别为30%、50%、20%,依次类推,得出楼层f1、f2、f3在每一维度下的档次和维度权重的分值,具体见表5。

表5

4.6计算每个维度的得分,每个维度的得分=维度权重*维度权重的分值;具体是对楼层f1、f2、f3分别打分,即将每一维度中维度权重和维度权重的分值相乘,最后相加得分,打分结果如下:

f1打分结果=50*30%+30*30%+20*20%+10*0%+5*50%+3*50%+2*50%=15+9+4+0+2.5+1.5+1=33

f2打分结果=50*50%+30*50%+20*50%+10*0%+5*0%+3*20%+2*30%=25+15+10+0+0+0.6+0.6=51.2

f3打分结果=50*20%+30*20%+20*50%+10*50%+5*20%+3*30%+2*20%=10+6+10+5+1+0.9+0.4=33.3

4.7选取得分最高的楼层f2为用户当前所在楼层。

二、基于信号强度

4.1根据平均距离维度、信号强度维度及beacon数维度三个对象的远近、强弱及具体数量而将维度权重的分值分为四个档次,每个档次具有相应的维度权重的分值,即提供维度打分结果对应的分值信息表,见表1。

4.2为平均信号强度提供相应的维度权重,该维度权重为50,同时将beacon搜索模块搜索到的rssi值根据强弱分成7个维度,该7个维度分别为rssi值小于等于功率(txpower)、rssi值小于等于txpower-10、rssi值小于等于txpower-20、rssi值小于等于txpower-25、rssi值小于等于txpower-30、rssi值小于等于txpower-35和rssi值大于txpower–35,每个维度权重具体见表3。

4.3根据移动终端搜到的beacon信息,计算出楼层f1、楼层f2、楼层f3平均信号强度,该平均信号强度为用户接收到的各楼层所含beacon的rssi值的算术平均值。

表3

4.4将不同楼层中的beacon根据表3中的维度进行分类,并列出每一维度中的中beacon数量,具体见表6。

表6

4.5将表6中的平均信号强度和beacon数量(数维度)与表1中的维度打分结果相比对,获得相应的打分结果及维度权重的分值,楼层f1、f2、f3的平均信号强度中f2最强,则档次为a,维度权重的分值为50%,楼层f1、f3则分别为b和c;rssi值小于等于功率(txpower)的beacon数目的楼层f1、f2、f3中分别为2、4、1,则档次分别为b、a、c,维度权重的分值分别为30%、50%、20%,依次类推,得出楼层f1、f2、f3在每一维度下的档次和维度权重的分值,具体见表7。

表7

4.6计算每个维度的得分,每个维度的得分=维度权重*维度权重的分值;具体是对楼层f1、f2、f3分别打分,即将每一维度中维度权重和维度权重的分值相乘,最后相加得分,打分结果如下:

那么最终f1、f2、f3的打分结果计算过程如下:

f1打分结果=50*30%+30*30%+20*20%+15*50%+10*50%+8*50%+5*50%+2*0%=15+9+4+7.5+5+4+2.5+0=47

f2打分结果=50*50%+30*50%+20*30%+15*0%+10*30%+8*50%+5*0%+2*0%=25+15+6+0+3+4+0+0=53

f3打分结果=50*20%+30*20%+20*50%+15*30%+10*20%+8*0%+5*50%+2*50%=10+6+10+4.5+2+0+2.5+1=36

4.7选取得分最高的楼层f2为用户当前所在楼层。

通过两种方式均可以选取得分最高者f2作为用户当前所在楼层。

本发明中的中楼层定位方法既可运行在移动端,也可运行在服务端,由于移动设备的运算能力越来越强,有的甚至超越了pc机,移动设备检测到beacon信息后,立刻在本地进行运算,就可快速得到用户当前位置,具有很好的即时性,移动端将beacon信息通过网络上传给远程服务器,远程服务器使用本发明中的楼层定位方法进行楼层定位后使用同一楼层中的三点定位算法定位出用户的具体位置,然后经过一系列的处理,再将定位结果通过网络返回给移动端。

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