一种基于无线强度的室内定位方法及系统
技术领域
本发明涉及室内定位技术领域,特别是涉及一种基于无线强度的室内定位方法及系统。
背景技术
目前,基于Wi-Fi的室内定位方法主要包括两种:距离无关的位置指纹算法和距离相关的三边定位算法。由于精度级别的限制,三边定位算法在实际环境中表现较差,而位置指纹算法虽然定位精度相对较高,但由于定位环境易变及不同型号设备的Wi-Fi发射功率不同等原因,存在定位结果不稳定和定位效率低等缺点。
发明内容
为实现上述目标及其他相关目标,本发明提供一种基于无线强度的室内定位方法,所述方法包括:在定位范围内设置多个无线接入点,并从定位范围内选择一组已知坐标的位置作为信号采集点;将参考设备放在各信号采集点,分别采集各无线接入点收到的所述参考设备在各信号采集点时所发射无线信号的信号强度值;对应各个信号采集点分别形成一候选指纹,所述候选指纹是根据所述参考设备在其中一信号采集点时由各无线接入点收到的无线信号的信号强度值所生成,每个候选指纹包括:对应的信号采集点所在坐标、及参考设备在所述信号采集点时各无线接入点所收到的无线信号的信号强度值及相应的各无线接入点信息;将每个候选指纹中的信号强度值按递减或递增进行排序,且使对应的无线接入点信息随之变化次序而形成候选序列;当定位所述定位范围内的待定位设备时,采集各无线接入点所收到待定位设备的无线信号的信号强度值,并据以生成目标指纹,所述目标指纹包括:在所述待定位设备存在时各无线接入点所收到的无线信号的信号强度值及相应的各无线接入点信息;将所述目标指纹中的信号强度值按与候选指纹相同的排序方式进行排序,并使对应的目标指纹内的无线接入点信息随信号强度值变化次序而形成目标序列;将所述目标序列同各所述候选序列进行比对,将比对不一致的候选序列对应候选指纹加以滤除;在所述滤除剩余的候选指纹中获取与所述目标指纹最相似的,根据所获取的候选指纹对应的信号采集点坐标来得到所述待定位设备的定位结果。
可选的,所述候选指纹是根据在不同时间下分别采样所得到的多组各无线接入点所收到的无线信号的信号强度值的均值生成的。
可选的,在所述均值的计算中,在同一采集点采集的多个指纹中大部分指纹内最大信号强度值对应的接入点应相同,则在计算均值时排除所有最大信号强度值对应其他接入点的数据,用排除后的剩下的指纹的均值作为最后的候选指纹。。
可选的,所述在所述滤除剩余的候选指纹中获取与所述目标指纹最相似的,根据所获取的候选指纹对应的信号采集点坐标来得到所述待定位设备的定位结果,包括:计算各个无线接入点接收到的待定位设备的信号强度值与所有候选指纹所包含的各对应信号强度值间的欧式距离,得到对应数量个欧氏距离最相近的候选指纹,设所述数量为K;计算定位结果,以得到的欧氏距离最相近的各候选指纹点与目标指纹的欧氏距离的倒数为权值,由加权K临近算法计算出待定位设备的坐标。
可选的,所述坐标是与坐标所在的设备预分配的MAC地址相关联的。
为实现上述目标及其他相关目标,本发明提供一种基于无线强度的室内定位系统,包括:多个无线接入点,设置在定位范围内;指纹采集模块,用于将定位范围内选取的已知坐标的一组位置作为信号采集点,且当有参考设备放在各信号采集点时,分别采集各无线接入点收到所述参考设备在各信号采集点时所发射无线信号的信号强度值,并对应各个信号采集点分别形成候选指纹,所述候选指纹是根据所述参考设备在其中一信号采集点时由各无线接入点收到的所述无线信号的信号强度值所生成,每个候选指纹包括:对应的信号采集点所在坐标、及参考设备在所述信号采集点时各无线接入点所收到的无线信号的信号强度值及相应的各无线接入点信息;所述指纹采集模块,还用于采集各无线接入点所收到的位于所述定位范围内的待定位设备的无线信号的信号强度值,并据以生成目标指纹;所述目标指纹包括:在所述待定位设备存在时各无线接入点所收到的无线信号的信号强度值及相应的各无线接入点信息;定位算法模块,用于将每个候选指纹中的信号强度值按递减或递增进行排序,且使对应的无线接入点信息随之变化次序而形成候选序列,且将所述目标指纹中的信号强度值按与候选指纹相同的排序方式进行排序,并使对应的目标指纹内的无线接入点信息随信号强度值变化次序而形成目标序列;并将所述目标序列同各所述候选序列进行比对,将比对不一致的候选序列对应候选指纹加以滤除;并在所述滤除剩余的候选指纹中获取与所述目标指纹最相似的,根据所获取的候选指纹对应的信号采集点坐标来得到所述待定位设备的定位结果。
可选的,所述候选指纹或目标指纹是根据在不同时间下分别采样所得到的多组各无线接入点所收到的无线信号的信号强度值的均值生成的。
可选的,在所述均值的计算中,在同一采集点采集的多个指纹中大部分指纹内最大信号强度值对应的接入点应相同,则在计算均值时排除所有最大信号强度值对应其他接入点的数据,用排除后的剩下的指纹的均值作为最后的候选指纹。
可选的,所述在所述滤除剩余的候选指纹中获取与所述目标指纹最相似的,根据所获取的候选指纹对应的信号采集点坐标来得到所述待定位设备的定位结果,包括:计算各个无线接入点接收到的待定位设备的信号强度值与所有候选指纹所包含的各对应信号强度值间的欧式距离,得到对应数量个欧氏距离最相近的候选指纹,设所述数量为K;计算定位结果,以得到的欧氏距离最相近的各候选指纹点与目标指纹的欧氏距离的倒数为权值,由加权K临近算法计算出待定位设备的坐标。
可选的,所述坐标是与坐标所在的设备预分配的MAC地址相关联的。
可选的,所述的基于无线强度的室内定位系统,还包括:数据适配模块,用于将所述指纹采集模块所采集数据转换为定位算法模块需要的指定格式,并将其发送至指定网络端口,供定位算法模块使用;配置管理模块,用于提供与所述指定网络端口连接的接口以供所述指纹采集模块调用,建立起指纹采集模块与定位算法模块的通信,完成指纹数据库的创建;应用接口模块,用于提供统一的应用接口,供所述配置管理模块建立定位算法模块与使用所述定位结果的应用软件的连接。
如上所述,本发明提供的基于无线强度的室内定位方法及系统,在定位范围内设置多个无线接入点,并从所述定位范围中选择一组已知坐标的作为信号采集点;将参考设备放在各信号采集点,分别采集各无线接入点收到的所述参考设备在各信号采集点时所发射无线信号的信号强度值;对应各个信号采集点分别形成一候选指纹,并将每个候选指纹中的信号强度值按递减或递增进行排序,形成各无线接入点的候选序列,采用相同方式对应待定位设备生成目标指纹,将所述目标指纹中的信号强度值按相同方式排序形成各无线接入点的目标序列,将所述目标序列同各所述候选序列进行比对以滤除比对不一的指纹;在所述剩余候选指纹中获取与所述目标指纹最相似的,来从中获取所述待定位设备的定位结果。
与现有技术相比,本发明的有益效果是:
(1)优化指纹采集过程,使构建的位置指纹数据库更可靠,定位精度更高。
(2)利用无线信号强度生成的指纹所携带的距离与强度的模式信息过滤指纹库,在提高搜索效率的同时排除大量干扰数据,增强了定位精度。
附图说明
图1显示为本发明一实施例中基于无线强度的室内定位方法的流程示意图。
图2显示为本发明一实施例中基于无线强度的室内定位方法用于定位待定位设备的流程示意图。
图3显示为本发明一实施例中基于无线强度的室内定位系统的结构示意图。
元件标号说明
1 基于无线强度的室内定位系统
11 指纹采集模块
12 指纹数据库
13 定位算法模块
14 数据适配模块
15 配置管理模块
16 应用接口模块
2 待定位设备
3 无线接入点
S1~S8 方法步骤
具体实施方式
以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
如图1所示,本发明提供一种基于无线强度的室内定位方法,所述方法包括:
步骤S1:在定位范围内设置多个无线接入点,并从定位范围内选择一组已知坐标的位置作为信号采集点。
在一实施例中,所述无线接入点包括:Wi-Fi协议的网络接入点(可表示为AP,n个无线接入点即AP1~APn),其中,所述无线接入点例如为基站等,而可收发无线信号;所述坐标例如为以所述定位范围的平面为坐标平面,在该平面内每个点都具有(x,y)二维坐标,复杂的甚至可形成三维立体坐标,在一实施例中,所述坐标是与坐标所在的设备(例如参考设备,Wi-Fi接入点,待定位设备等)预分配的MAC地址相关联的,根据网络查询MAC地址即可找到预先关联的地理位置坐标,这样可更为便捷精确地完成定位。
例如,所述定位范围内有n个无线接入点,在定位范围内选择m个已知坐标的位置作为信号采集点A1、A2...Am,坐标分别为(x1,y1),(x2,y2)....(xm,ym),采集点的位置与接入点位置无关,只要坐标可以人工确定就可,不一定非要在无线接入点位置上。
步骤S2:将参考设备放在各信号采集点,分别采集各无线接入点收到的所述参考设备在各信号采集点时所发射无线信号的信号强度值。
在一实施例中,所述无线信号例如为Wi-Fi信号,故所述信号强度值可为Wi-Fi信号的信号强度值(RSSI)值,而所述参考设备为具有相同协议无线通讯模块(如Wi-Fi模块)的电子终端,如手机、平板电脑、笔记本电脑、无线路由器或无线网卡等等。
例如,选择将参考设备放在信号采集点A1,并采集所有n个Wi-Fi接入点收到参考设备所发射Wi-Fi信号的至少一组共n个信号强度值,当然A1处的Wi-Fi接入点的信号强度值应该是最大的,而每个信号采集点A1~Am一共可采集m组信号强度值,每组有n个信号强度值。
步骤S3:对应各个信号采集点分别形成一候选指纹,所述候选指纹是根据所述参考设备在其中一信号采集点时由各无线接入点收到的无线信号的信号强度值所生成,每个候选指纹包括:对应的信号采集点所在坐标、及参考设备在所述信号采集点时各无线接入点所收到的无线信号的信号强度值及相应的各无线接入点信息。
在一实施例中,相比于现有的Wi-Fi定位的指纹算法,本实施例中的候选指纹包含了几个分量,其中,第一分量是关于信号采集点的坐标,第二分量是关于相互关联的无线接入点信息及信号强度值,例如可表示为(接入点信息,RSSI);需说明的是,所述指纹并非仅限定于Wi-Fi使用,在其他无线通讯方式中亦可使用。
例如,任取一个信号采集点,所述无线接入点信息包括无线接入点的名称,例如B1接入点~Bn接入点,对应的信号强度值为a1~an,其关联关系可如下表所示:
接入点信息 |
接入点接收到无线信号强度值RSSI |
B1 |
a1 |
B2 |
a2 |
B3 |
a3 |
B4 |
a4 |
.... |
.... |
Bn |
an |
步骤S4:将每个候选指纹中的信号强度值按递减或递增进行排序,且使对应的无线接入点信息随之变化次序而形成候选序列。
在一实施例中,接续上述实施例中的列表,假设需要递减排序,假设a1~an是递减的,则排序之后,生成的候选序列则为{B1,B2,....,Bn};当然此仅为举例,若在其他实施例中,a1~an的大小并非是依次递增或递减的,一样可以先进行排序,而由于接入点和接入点接收无线信号的信号强度值之间存在对应关系,因此B1~Bn也需要对应调换次序来形成候选序列,此处仅说明原理,不一一列举。
步骤S5:当定位所述定位范围内的待定位设备时,采集各无线接入点所收到待定位设备的无线信号的信号强度值,并据以生成目标指纹,所述目标指纹包括:在所述待定位设备存在时各无线接入点所收到的无线信号的信号强度值及相应的各无线接入点信息。
在一实施例中,所述待定位设备可以是具有与无线接入点采用相同协议进行通讯的无线模块(例如Wi-Fi模块)的电子终端,例如:手机、笔记本电脑、平板电脑等等;所述目标指纹的生成方式可以和所述候选指纹类似,至少具有所述第二分量。
步骤S6:将所述目标指纹中的信号强度值按与候选指纹相同的排序方式进行排序,并使对应的目标指纹内的无线接入点信息随信号强度值变化次序而形成目标序列。
在一实施例中,所述相同的排序方式指的是,若候选序列是根据递减RSSI方式排序而成,则目标序列也是RSSI递减方式排序而成;反之,若候选序列是根据递增RSSI方式排序而成,则目标序列也是RSSI递增方式排序而成。
例如,假设所述目标指纹内无线接入点信息和各个对应RSSI值之间的关系如下表所示,假设c1~cn是递减的,则进行和候选序列相同的RSSI排序方式后,得到目标序列{B1,B2,....Bn};
接入点信息 |
接入点接收到无线信号强度值RSSI |
B1 |
c1 |
B2 |
c2 |
B3 |
c3 |
B4 |
c4 |
.... |
.... |
Bn |
cn |
也就是说,该待定位设备对应的目标序列即为{B1,B2,....Bn}。
步骤S7:将所述目标序列同各所述候选序列进行比对,将比对不一致的候选序列对应候选指纹加以滤除。
在一实施例中,承接上述实施例,假设待定位设备对应目标序列{B1,B2,....Bn},跟各个信号采集点所分别对应的候选序列进行比对,将其中候选序列同样为{B1,B2,....Bn}的信号采集点加以保留,而滤除不一致的信号采集点;在原理上来说,只有在与所述待定位设备在地理位置上接近的信号采集点才可能获取一致的候选序列,在此步骤中,也就是缩小了定位设备的地理范围。
在一实施例中,优选的,各所述候选指纹存储于指纹数据库中且存储有备份,则所述过滤可将不一致的候选指纹从指纹数据库中滤除,但,若判断过滤后的指纹数据库为空时,则可例如所述备份来恢复指纹数据库为过滤前的原数据库。
步骤S8:在所述滤除剩余的候选指纹中获取与所述目标指纹最相似的,根据所获取的候选指纹对应的信号采集点坐标来得到所述待定位设备的定位结果。
在一实施例中,所述在所述滤除剩余的候选指纹中获取与所述目标指纹最相似的,根据所获取的候选指纹对应的信号采集点坐标来得到所述待定位设备的定位结果,包括:计算各个无线接入点接收到的待定位设备的信号强度值与所有候选指纹所包含的各对应信号强度值(RSSI)间的欧式距离,得到对应数量个欧氏距离最相近的候选指纹,设所述数量为K;计算定位结果,以得到的欧氏距离最相近的K个候选指纹点与目标指纹的欧氏距离的倒数为权值,由加权K临近算法计算出待定位设备的坐标。
在一实施例中,优选的,所述候选指纹是根据在不同时间下分别采样所得到的多组各无线接入点所收到的无线信号的信号强度值的均值生成的,如此,不使用单次采集的结果生成指纹,而是在待采集地点,于不同时间进行采样,得到不同时间下的多组采样数据,即多个指纹,用这多个指纹的均值来生成,以避免偶然误差的影响,同时,在计算均值的过程中,根据每个采集点上所采集的多个指纹中每个指纹的值最大的RSSI所对应的接入点基本相同的特性排除一些明显异常的采集数据,即这多个指纹中如果大部分的指纹里值最大的RSSI所对应的接入点为第一个接入点,则在计算均值时所有值最大的RSSI对应其他接入点的指纹都被排除。
举例来说,比如在采集点A1于不同时间采集了5组数据,每组都包括一组无线接入点(AP)及其对应信号强度,如下:
第1组AP1(-20) AP2(-30) AP3(-40)
第2组AP1(-20) AP2(-30) AP3(-40)
第3组AP1(-20) AP2(-30) AP3(-40)
第4组AP1(-20) AP2(-30) AP3(-40)
第5组AP1(-20) AP2(-10) AP3(-40)
可以发现前四组信号最强的RSSI对应的AP都是AP1(最强值为-20),而第5组对应的是AP2(最强值-10),因此我们计算前4组的均值作为最后结果,而不是用所有5组来计算,排除了第5组这一偶然数据。
在一实施例中,优选的,所述方法在确定定位结果(即待定位设备的坐标)后,还可包括:判断目标指纹对应的待定位设备是否已被定位过,若是则对定位结果进行滤波处理,保证定位结果稳定性,否则将定位结果存入定位结果的历史列表里。
结合上述技术细节,如图2所示,提供一个优选的进行待定位设备定位方法的实施例。
如图3所示,与上述定位方法实施例原理类似的,本发明提供一种基于无线强度的室内定位系统1,应用于设置有多个无线接入点3(例如为Wi-Fi接入点)的定位范围内的设备定位,所述系统1包括:
指纹采集模块11,可例如包含安装于信号采集点的所述参考设备或待定位设备(如手机、平板电脑、笔记本电脑等)的打点APP软件,用于将所述多个无线接入点3中已知坐标的一组作为信号采集点,且当有参考设备放在各信号采集点时,分别采集各无线接入点3收到所述参考设备在各信号采集点时所发射无线信号的信号强度值,并对应各个信号采集点分别形成候选指纹,所述候选指纹是根据所述参考设备在其中一信号采集点时由各无线接入点3收到的所述无线信号的信号强度值所生成,每个候选指纹包括:对应的信号采集点所在坐标、及参考设备在所述信号采集点时各无线接入点3所收到的无线信号的信号强度值及相应的各无线接入点3信息;
所述指纹采集模块11,还用于采集各无线接入点3所收到的位于所述定位范围内的待定位设备2的无线信号的信号强度值,并据以生成目标指纹;所述目标指纹包括:在所述待定位设备2存在时各无线接入点3所收到的无线信号的信号强度值及相应的各无线接入点3信息。
优选的,所述指纹采集模块11可建立指纹数据库12,将所述候选指纹存于所述指纹数据库12中;进一步优选的,各所述候选指纹存储于指纹数据库中且存储有备份,则所述过滤可将不一致的候选指纹从指纹数据库中滤除,但,若判断过滤后的指纹数据库为空时,则可例如所述备份来恢复指纹数据库为过滤前的原数据库。
定位算法模块13(Position Algorithm Module,PAM),用于将每个候选指纹中的信号强度值按递减或递增进行排序,且使对应的无线接入点3信息随之变化次序而形成候选序列,且将所述目标指纹中的信号强度值按与候选指纹相同的排序方式进行排序,并使对应的目标指纹内的无线接入点3信息随信号强度值变化次序而形成目标序列;并将所述目标序列同各所述候选序列进行比对,将比对不一致的候选序列对应候选指纹加以滤除;并在所述滤除剩余的候选指纹中获取与所述目标指纹最相似的,根据所获取的候选指纹对应的信号采集点坐标来得到所述待定位设备2的定位结果。
在一实施例中,优选的,所述候选指纹是根据在不同时间下分别采样所得到的多组各无线接入点所收到的无线信号的信号强度值的均值生成的,如此,不使用单次采集的结果生成指纹,而是在待采集地点(信号采集点),于不同时间进行采样,得到不同时间下的多组采样数据,即多个指纹,用这多个指纹的均值来生成,以避免偶然误差的影响,同时,在计算均值的过程中,根据每个采集点上所采集的多个指纹中每个指纹的值最大的RSSI所对应的接入点基本相同的特性排除一些明显异常的采集数据,即这多个指纹中如果大部分的指纹里值最大的RSSI所对应的接入点为第一个接入点,则在计算均值时所有值最大的RSSI对应其他接入点的指纹都被排除。
在一实施例中,所述在所述滤除剩余的候选指纹中获取与所述目标指纹最相似的,根据所获取的候选指纹对应的信号采集点坐标来得到所述待定位设备2的定位结果,包括:计算各个无线接入点3接收到的待定位设备2的信号强度值与所有候选指纹所包含的各对应信号强度值间的欧式距离,得到对应数量个欧氏距离最相近的候选指纹,设所述数量为K;计算定位结果,以得到的欧氏距离最相近的各候选指纹点与目标指纹的欧氏距离的倒数为权值,由加权K临近算法计算出待定位设备2的坐标。
在一实施例中,所述坐标是与坐标所在的设备预分配的MAC地址相关联的。
在一实施例中,为了实现不同格式数据的网络传输,优选的,所述的基于无线强度的室内定位系统1,还包括:数据适配模块14(Data Adapter Module,DAM),用于将所述指纹采集模块11所采集数据转换为定位算法模块需要的指定格式,并将其发送至指定网络端口(例如指定IP的指定TCP端口),供定位算法模块13使用;配置管理模块15(ConfigurationManagement Module,CMM),用于提供与所述指定网络端口连接的接口以供所述指纹采集模块调用,建立起指纹采集模块与定位算法模块的通信,完成指纹数据库的创建;应用接口模块16(Application Interface Module,AIM),用于提供统一的应用接口,供所述配置管理模块建立定位算法模块与使用所述定位结果的应用软件(包括图形软件)的连接。
如上所述,本发明提供的基于无线强度的室内定位方法及系统,在定位范围内设置多个无线接入点,并从所述定位范围中选择一组已知坐标的作为信号采集点;将参考设备放在各信号采集点,分别采集各无线接入点收到的所述参考设备在各信号采集点时所发射无线信号的信号强度值;对应各个信号采集点分别形成一候选指纹,并将每个候选指纹中的信号强度值按递减或递增进行排序,形成各无线接入点的候选序列,采用相同方式对应待定位设备生成目标指纹,将所述目标指纹中的信号强度值按相同方式排序形成各无线接入点的目标序列,将所述目标序列同各所述候选序列进行比对以滤除比对不一的指纹;在所述剩余候选指纹中获取与所述目标指纹最相似的,来从中获取所述待定位设备的定位结果。
与现有技术相比,本发明的有益效果是:
(1)优化指纹采集过程,使构建的位置指纹数据库更可靠,定位精度更高。
(2)利用无线信号强度生成的指纹所携带的距离与强度的模式信息过滤指纹库,在提高搜索效率的同时排除大量干扰数据,增强了定位精度。
上述实施例仅例示性说明本发明的原理及其功效,而非用于限制本发明。任何熟悉此技术的人士皆可在不违背本发明的精神及范畴下,对上述实施例进行修饰或改变。因此,举凡所属技术领域中具有通常知识者在未脱离本发明所揭示的精神与技术思想下所完成的一切等效修饰或改变,仍应由本发明的权利要求所涵盖。