基于粗精双步相关图像特征提取的室内WLAN定位方法与流程

文档序号:11139813阅读:1160来源:国知局
基于粗精双步相关图像特征提取的室内WLAN定位方法与制造工艺

本发明属于室内定位技术,具体涉及一种基于粗精双步相关图像特征提取的室内WLAN定位方法。



背景技术:

随着移动通信的飞速发展,基于位置的服务LBS(Location Based Service)受到越来越多的重视,而在室内场所,如商场、机场及停车库等,现有的室外定位系统,如GPS(Global Positioning System)定位系统,由于受到建筑物等设施的遮蔽,难以在室内实现精确定位。与此同时,由于WLAN的大规模部署及WLAN接入的广泛普及,利用现有的WLAN基础设施来对室内用户进行定位越来越受到人们的关注,其中,基于接收信号强度RSS的室内WLAN定位技术更是受到深入的研究。

作为基于RSS的室内WLAN定位技术中的典型算法,位置指纹定位算法主要包含两个阶段:离线阶段和在线阶段。在离线阶段,首先在定位目标区域内标定若干参考点RP(Reference Point),其次在每个RP处采集一段时间内来自不同WLAN接入点AP(Access Point)的RSS值,以构造位置指纹数据库;而在在线阶段,则利用用户实时采集的RSS值,结合位置指纹数据库及相应的搜索匹配算法,实现对用户的定位。

位置指纹定位算法存在的主要问题是离线阶段需要大量的人力和时间开销,特别是当定位目标区域较大时,所需的开销将会显著增大,从而限制了位置指纹定位算法的应用。为了解决以上问题,有必要开发一种新的基于粗精双步相关图像特征提取的室内WLAN定位方法。



技术实现要素:

本发明的目的是提供一种基于粗精双步相关图像特征提取的室内WLAN定位方法,它无需在离线阶段采集位置指纹,且具有较高的定位精度,能解决传统位置指纹定位算法中在离线阶段需要大量人力和时间开销的问题。

本发明所述的基于粗精双步相关图像特征提取的室内WLAN定位方法,包括以下步骤:

步骤一、在定位目标区域内随机采集Nseq条RSS序列,记为rssij=(rssij1,rssij2,...,rssijk)(1≤j≤Mi),其中,Mi为第i条RSS序列的序列长度,即第i条RSS序列包含的RSS矢量个数,k为AP数目,rssijl(1≤l≤k)为第i条RSS序列内第j个RSS矢量中来自第l个AP的信号强度值;

步骤二、在每条RSS序列中,利用时间戳顺序对不同RSS矢量进行升序排列,其中,将第i条RSS序列内第j个RSS矢量重构为一个新的k+1维矢量

步骤三、在每条新的k+1维矢量中,对时间戳信息和RSS矢量信息进行加权,加权系数为wts和wrss,其中,wts+wrss=1且0≤wts,wrss≤1,于是,得到所对应的混合矢量

步骤四、对每条RSS序列所对应的混合矢量进行谱聚类,得到每个混合矢量所属的聚类号及对应的聚类类心;

步骤五、利用中值滤波方法,修正每条混合矢量所属的聚类号及对应的聚类类心;

步骤六、根据每条RSS序列中相邻聚类之间的转移关系,以连通图的形式构建每条RSS序列所对应的类转移图;

步骤七、重复步骤二至步骤六,直到完成对所有RSS序列所对应类转移图的构建;

步骤八、将采集得到的所有RSS序列按序列标号连接成一条总序列

步骤九、计算RSST中不同RSS矢量之间的欧式距离,得到距离矩阵Ddis

步骤十、对于距离矩阵Ddis中第i行第j列的元素dij,设定门限dth,当dij≤dth时,令dij=1,反之,则令dij=0,于是得到二值矩阵Dbin

步骤十一、利用二值矩阵Dbin生成二值图像GRbin,二值图像GRbin中第i行第j列像素点的像素值Iij等于Dbin中第i行第j列的元素值Dbin(i,j),其中,Iij=1的像素点为白色,Iij=0的像素点为黑色;

步骤十二、对二值图像GRbin进行中值滤波处理,得到图像GRfil

步骤十三、对中值滤波处理后的二值图像GRfil进行腐蚀处理,得到图像GRero,腐蚀处理后的图像GRero中存在若干不规则白色块;

步骤十四、对于腐蚀处理后的二值图像GRero进行边缘检测处理,得到二值图像GRedg

步骤十五、对边缘检测处理后的二值图像GRedg进行边缘信息提取,得到步骤十三中腐蚀处理后二值图像GRero中NWhiteBlock个不规则白色块的位置信息;

步骤十六、利用步骤八中得到的总序列RSST和步骤十五中得到的不规则白色块w(1≤w≤NWhiteBlock)的位置信息,提取具有较大相似度的两个RSS片段和

步骤十七、计算与中不同RSS矢量之间的得分值,构造得分矩阵Hw

步骤十八、利用得分矩阵Hw进行相关性测序,得到与中相互关联的聚类,其中,与中相互关联的聚类定义为不规则白色块w所对应的相互关联聚类;

步骤十九、重复步骤十六至步骤十八,直到得到所有不规则白色块所对应的相互关联聚类;

步骤二十、对于步骤七中得到的类转移图,合并所有相互关联聚类,且将合并后的类转移图定义为信号逻辑图;

步骤二十一、以定位目标区域内各物理叉路口作为各子区域的边界,将定位目标区域划分为NArea个子区域,且对每个子区域进行标号,记子区域标号为1,…,NArea

步骤二十二、根据各子区域的物理邻接关系,将定位目标区域表示为一幅由不同子区域节点相互连通的物理环境图;

步骤二十三、利用相应的映射准则,得到信号逻辑图与物理环境图的映射关系;

步骤二十四、利用步骤三中的加权系数wts和wrss,对在线阶段终端新采集的RSS矢量及其所对应的时间戳us进行加权,得到混合矢量其中,为在线阶段终端新采集的来自第l个AP的信号强度值;

步骤二十五、在信号逻辑图中计算得到与具有最小欧式距离的类心所对应的逻辑节点;

步骤二十六、根据信号逻辑图与物理环境图的映射关系,得到终端所在的子区域。

所述步骤十七包括以下步骤:

所述步骤十七(一)、为了满足如下条件:

其中,rssφ为中第φ(1≤φ≤Msim_1)个RSS矢量,为中第个RSS矢量,为rssφ与的得分值,Msim_1=xw_min-xw_max+1为的序列长度,Msim_2=yw_min-yw_max+1为的序列长度,(xw_min,xw_max)和(yw_min,yw_max)分别为不规则白色块w(1≤w≤NWhiteBlock)中所有像素点横纵坐标的最小值和最大值,NWhiteBlock为步骤十三中腐蚀处理后二值图像GRero中不规则白色块的个数;定义中RSS矢量rssφ与中RSS矢量的得分值为:

其中,

Wη=-(α-β)η

(η,μ)是以为基准的像素点横纵坐标偏移量,且η和μ均为整数,令

步骤十七(二)、构造得分矩阵Hw

所述步骤十八包括以下步骤:

步骤十八(一)、确定Hw中的最大值元素其中,为Hw中第φ行第列的元素;

步骤十八(二)、将在Hw中的位置保存在位置矩阵Lw中,同时确定下一得分值并令φ=c且

步骤十八(三)、重复步骤十八(二),直到下一得分值为0;

步骤十八(四)、统计Lw中所保存位置的总数NLw

步骤十八(五)、令r=NLw

步骤十八(六)、比较Lw(r)与Lw(r-1)的位置,若Lw(r-1)(1)=Lw(r)(1)+1且Lw(r-1)(2)=Lw(r)(2)+1,则将Lw(r)与Lw(r-1)作为一组位置对,并以(Lw(r)(1),Lw(r-1)(1),Lw(r)(2),Lw(r-1)(2))的形式保存在相关矩阵L'w中,其中,Lw(r)表示Lw中第r个位置,Lw(r)(1)表示第r个位置所对应的横坐标,Lw(r)(2)表示第r个位置所对应的纵坐标;

步骤十八(七)、令r=r-1;

步骤十八(八)、重复步骤十八(六)和步骤十八(七),直到r=2;

步骤十八(九)、统计矩阵L'w中形如(Lw(r)(1),Lw(r-1)(1),Lw(r)(2),Lw(r-1)(2))的元素个数N'Lw

步骤十八(十)、从第1个元素开始遍历L'w中的N'Lw个元素;

步骤十八(十一)、利用L'w中第S(S=1,2,…,N'Lw)个元素(xS_1,xS_2,yS_1,yS_2),在步骤十六所得到的两个RSS片段和中进一步提取更精确的相似RSS片段对和

其中,和分别为中第xS_1和第xS_2个RSS矢量,和分别为中第yS_1和第yS_2个RSS矢量;

步骤十八(十二)、经过步骤四的谱聚类处理和步骤五的中值滤波处理后,RSST中每一个RSS矢量属于某个聚类,令RSST中RSS矢量rssj(1≤j≤MT)所对应聚类的类号和类心分别为和(1≤i≤Nseq,1≤g≤K),其中,表示rssj属于RSSi所对应的类转移图上类号为g的聚类,为所对应的类心,K为RSSi所对应的类转移图中的聚类个数,MT为RSST的序列长度,即RSST包含的RSS矢量个数,rssj(1≤j≤MT)为RSST中第j个RSS矢量,于是,得到类号集合

步骤十八(十三)、计算得到和中相互关联的聚类所对应的类号集合:

其中,num为类号集合中不重复的元素个数,类号集合中所有元素(即类号)所对应的聚类即为相互关联的聚类;

步骤十八(十四)、重复步骤十八(十一)至步骤十八(十三),直到得到和中所有相互关联的聚类,其中,与中相互关联的聚类即为不规则白色块w所对应的相互关联聚类。

本发明具有以下优点:本发明首先将定位目标区域内随机采集的RSS序列进行谱聚类处理以得到类转移图;然后,为了确定不同类转移图之间的关系,利用图像边缘检测方法,对RSS序列之间的相关位置进行粗定位;其次,利用相关性测序方法对相关位置进行精确定位,进而将不同类转移图拼接成一幅逻辑图;再次,通过对定位目标区域物理结构的划分,得到反映定位目标区域拓扑结构的物理环境图;最后,利用相应的信号逻辑图到物理环境图的映射准则,在在线阶段根据实时采集的RSS数据对目标进行定位。相比于传统位置指纹定位方法,本发明无需在离线阶段采集位置指纹,且具有较高的定位精度。本发明能够运用于无线电通信网络环境,主要面向室内WLAN定位方法,解决了传统位置指纹定位算法中在离线阶段需要大量人力和时间开销的问题。

附图说明

图1a为本发明中步骤一至步骤十四的流程图;

图1b为本发明中步骤十五至步骤二十六的流程图;

图2为室内WLAN环境下21条RSS序列的采集路径;

图3为时间戳标记的RSS序列示意图;

图4为21条RSS序列所对应类转移图的构建过程;

图5为原始二值图像;

图6为图5经中值滤波处理后得到的图像;

图7为图6经腐蚀处理后得到的图像;

图8为图7中某一局部图像经边缘检测后得到的图像;

图9为图7中某不规则白色块经边缘检测后得到的长宽信息;

图10(a)—10(g)为所有RSS序列的相关性测序结果;

图11为拼接得到的信号逻辑图;

图12为定位目标区域所对应的物理环境图;

图13为正确定位区域概率结果;

图14为平均正确定位区域概率结果。

具体实施方式

下面结合附图对本发明作进一步说明。

如图1a至图1b所示的基于粗精双步相关图像特征提取的室内WLAN定位方法,包括以下步骤:

步骤一、在定位目标区域内随机采集Nseq条RSS序列,记为rssij=(rssij1,rssij2,...,rssijk)(1≤j≤Mi),其中,Mi为第i条RSS序列的序列长度,即第i条RSS序列包含的RSS矢量个数,k为AP数目,rssijl(1≤l≤k)为第i条RSS序列内第j个RSS矢量中来自第l个AP的信号强度值;

步骤二、在每条RSS序列中,利用时间戳顺序对不同RSS矢量进行升序排列,其中,将第i条RSS序列内第j个RSS矢量重构为一个新的k+1维矢量

步骤三、在每条新的k+1维矢量中,对时间戳信息和RSS矢量信息进行加权,加权系数为wts和wrss,其中,wts+wrss=1且0≤wts,wrss≤1,于是,得到所对应的混合矢量

步骤四、对每条RSS序列所对应的混合矢量进行谱聚类,得到每个混合矢量所属的聚类号及对应的聚类类心;具体包括以下步骤:

步骤四(一)、对于RSSi,构建邻接矩阵Mwa,如下式:

其中,Mi为RSSi的序列长度,wpq为RSSi中与的相似度,且其中,||·||表示二范数计算。

步骤四(二)、在Mwa中设定相似度门限thw,当wpq<thw时,令wpq=0;当wpq≥thw时,wpq保持不变;在实验中thw=0.2。

步骤四(三)、将Mwa中的每一列求和,得到构造Mi×Mi的对角矩阵Dm,如下:

步骤四(四)、计算拉普拉斯算子L=Dm-Mwa

步骤四(五)、计算L的特征值及特征向量,即根据LV=vV,得到(vE-L)V=0,并进一步得到det(vE-L)=0,其中,E为Mi×Mi的单位矩阵;v∈R为L的特征值;V表示L的特征向量,是长度为Mi的列向量;由det(vE-L)=0可得L的a(a≤Mi)个所有特征值;由(vE-L)V=0可得a个特征值所对应的a(a≤Mi)个特征向量;取L的c(c≤a)个最小特征值{vh}(h=1,…,c)及相应的c个特征向量其中,vh为第h个特征值,Vh为第h个特征值所对应的特征向量,ehd(d=1,…,Mi)为第h个特征向量中第d个分量;将c个特征向量构成一个Mi×c矩阵Mr

实验中,c=7为所划分的物理子区域个数。

步骤四(六)、将Mr中的每一行定义为一个混合矢量的重构矢量,从而得到Mi个重构矢量Nd=(ned1,…,nedc),其中,nedf(f=1,…,c)为Mr中第d行的第f个元素,将Mi个重构矢量进行K均值聚类;具体包括以下步骤:

步骤四(六)一、确定所需聚类的K均值聚类个数K(K<<Mi),实验中K=7;随机在Mi个重构矢量中选取K个样本Sab=(sab1,sab2,...,sabc)(b=1,…,K)作为初始类心,其中sabf(f=1,…,c)为Sab中第f个元素。

步骤四(六)二、逐个计算剩余的Mi-K个样本与所有初始类心的欧式距离,并将样本分配到与其欧氏距离(二范数)最小的初始类心所对应的聚类中;其中,Mi-K个样本中的每个样本与每个初始类心的欧氏距离(二范数)计算为:

步骤四(六)三、重新计算K个聚类的聚类中心,并将新的K个聚类的聚类中心作为初始类心,计算每个聚类的聚类中心:

其中,Cb表示第b个聚类的所有样本;X表示Cb中的每个样本;Nub表示Cb的样本个数;Zb表示第b个聚类的新类心。

步骤四(六)四、计算所有聚类类心的偏离度J:

步骤四(六)五、重复步骤四(六)二至步骤四(六)四,使得J达到最小值,此时的Sab(b=1,…,K)即为各聚类类心;将∑||X-Zb||2(X∈Cb,b=1,…,K)从小到大排序, 将对应的类从1开始按升序排列到K,即可得到各类的类号,同类中的样本的类号相同。

步骤五、利用中值滤波方法,修正每条混合矢量所属的聚类号及对应的聚类类心;具体包括以下步骤:

步骤五(一)、定义RSSi所对应的聚类号序列为其中cnij∈{1,…,Mi}(j=1,…,Mi)为序列RSSi中第j个接收信号强度矢量所对应的类号。

步骤五(二)、用长度为3的滑动窗口(We-1WeWe+1)(e=2,…,M-1)中的We对Cni中的第二个元素到第Mi-1个元素进行遍历,其中当We遍历到cnie时,(We-1WeWe+1)=(cni(e-1),cnie,cni(e+1)),取(We-1WeWe+1)中各元素的中值替换cnie

步骤五(三)、从第1个元素开始遍历Cni中的Mi个元素。

步骤五(四)、记当前遍历元素为cnij,如果cnij为没有被遍历过的第g个新类号,则Ncg=cnij(1≤g≤Mi),其中,Ncg表示第g个没有被遍历过的新类号。

步骤五(五)、重复步骤五(二),直到遍历完Cni中的Mi个元素。

步骤五(六)、遍历结束后,当Ncg的个数小于Mi时,进行步骤五(七),反之,进行步骤六。

步骤五(七)、依次取出Ncg,根据K均值聚类的结果,将Ncg所对应的类心记录在Nzg中,其中,Nzg表示Ncg所对应的类心。

步骤五(八)、依次取出Ncg,将Ncg所对应的Cni中的类号更新为g。

步骤六、根据每条RSS序列中相邻聚类之间的转移关系,以连通图的形式构建每条RSS序列所对应的类转移图;具体包括以下步骤:

步骤六(一)、在RSSi对应的Cni中,每一个不同的元素用一个圆圈表示,圆圈中用相应的元素值进行标识。

步骤六(二)、从第1个元素开始遍历Cni中的Mi个元素。

步骤六(三)、当当前遍历元素与上一时刻遍历元素不同时,用直线连接两元素对应的圆圈,当两元素所对应的圆圈存在多次连接时,只保留一条连接线。

步骤六(四)、重复步骤六(三),直到遍历完Cni中的Mi个元素,完成RSSi类转移图的构建。

步骤七、重复步骤二至步骤六,直到完成对所有RSS序列所对应类转移图的构建。

步骤八、将采集得到的所有RSS序列按序列标号连接成一条总序列即将所有在定位目标区域内采集到的Nseq条RSS序列排列为序列

其中,Mi(1≤i≤Nseq)为RSSi的序列长度。

步骤九、计算RSST中不同RSS矢量之间的欧式距离,得到距离矩阵Ddis;具体包括以下步骤:

步骤九(一)、计算RSST中每两个RSS矢量rssi与rssj的欧氏距离

其中,MT为RSST的序列长度,即RSST包含的RSS矢量个数,rssi(1≤i≤MT)为RSST中第i个RSS矢量。

步骤九(二)、构造距离矩阵Ddis

步骤十、对于距离矩阵Ddis中第i行第j列的元素dij,设定门限dth,当dij≤dth时,令dij=1,反之,则令dij=0,于是得到二值矩阵Dbin

步骤十一、利用二值矩阵Dbin生成二值图像GRbin,二值图像GRbin中第i行第j列像素点的像素值Iij等于Dbin中第i行第j列的元素值Dbin(i,j),其中,Iij=1的像素点为白色,Iij=0的像素点为黑色。

步骤十二、对二值图像GRbin进行中值滤波处理,得到图像GRfil;具体包括以下步骤:

步骤十二(一)、选择大小为3×3的窗口win作为中值滤波的基本单元,即

其中,win中共有9个元素,winwin1(win1=1,2,…,9)为win中的第win1个元素。

步骤十二(二)、对步骤十得到的矩阵Dbin进行补0处理得到Dbin_n,即

步骤十二(三)、将win中的win5对齐Dbin_n中的元素Dbin_n(bin_n1,bin_n2),其中,bin_n1=2,3,...,MT+1,bin_n2=2,3,...,MT+1,Dbin_n(bin_n1,bin_n2)为Dbin_n中第bin_n1行第bin_n2列的元素。

步骤十二(四)、取出当前win对应于Dbin_n中的元素,将所有元素按从大到小排列并依次标号为1,2,…,9,且将矩阵Dbin中第(bin_n1)-1行第(bin_n2)-1列的元素更新为标号为5的元素。

步骤十二(五)、重复步骤十二(三)和步骤十二(四),完成对矩阵Dbin中所有元素的更新,得到矩阵Dfil

步骤十二(五)、利用二值矩阵Dfil生成二值图像GRfil,令图像GRfil中第i行第j列像素点的像素值Iij等于Dfil中第i行第j列的元素值Dfil(i,j),Iij=1的像素点为白色,Iij=0的像素点为黑色,从而得到中值滤波后的二值图像GRfil

步骤十三、对中值滤波后的二值图像GRfil进行腐蚀处理,得到图像GRero,腐蚀处理后的图像GRero中存在若干不规则白色块;具体包括以下步骤:

步骤十三(一)、选择大小为5×5的窗口ero:

步骤十三(二)、将ero中第三行第三列的元素依次对齐Dfil中的元素Dfil(fil_1,fil_2),其中,fil_1=3,4,...,MT-2fil_2=3,4,...,MT-2,Dfil(fil_1,fil_2)为Dfil中第fil_1行第fil_2列的元素。

步骤十三(三)、对于矩阵Dfil中的元素Dfil(fil_1,fil_2),当对齐于ero的所有Dfil中元素全为1时,令Dfil(fil_1,fil_2)=1,而当对齐于ero的所有Dfil中元素不全为1时,令Dfil(fil_1,fil_2)=0,从而得到矩阵Dero

步骤十三(四)、利用二值矩阵Dero生成二值图像GRero,令图像GRero中第i行第j列像素点的像素值Iij等于Dero中第i行第j列的元素值Dero(i,j),Iij=1的像素点为白色,Iij=0的像素点为黑色,得到中值滤波后的二值图像GRero,并且可以得到图像GRero上存在多个不规则白色块。

步骤十四、对于腐蚀处理后的二值图像GRero进行边缘检测处理,得到二值图像GRedg;具体包括以下步骤:

步骤十四(一)、确定3×3的边缘检测窗口edg,具体为:

步骤十四(二)、将edg中的元素edg5对齐矩阵Dero中的元素Dero(ero_a,ero_b),其中ero_a=2,3,...,MT-1,ero_b=2,3,...,MT-1,Dero(ero_a,ero_b)为Dero中第ero_a行第ero_b列的元素。

步骤十四(三)、选定横向和纵向边缘检测的Sobel卷积因子Gx和Gy

步骤十四(四)、将对齐于edg的Dero中元素分别与Gx和Gy相乘,得到关于当前元素Dero(ero_a,ero_b)在横向及纵向上的灰度差分值Gx_ero_a及Gy_ero_b

Gx_ero_a=Dero((ero_a)+1,(ero_b)+1)+2Dero((ero_a),(ero_b)+1)

+Dero((ero_a)-1,(ero_b)+1)-[Dero((ero_a)+1,(ero_b)-1)

+2Dero((ero_a),(ero_b)-1)+Dero((ero_a)-1,(ero_b)-1)]

Gy_ero_b=Dero((ero_a)+1,(ero_b)+1)+2Dero((ero_a)+1,(ero_b))

+Dero((ero_a)+1,(ero_b)-1)-[Dero((ero_a)-1,(ero_b)+1)

+2Dero((ero_a)-1,(ero_b))+Dero((ero_a)-1,(ero_b)-1)]。

步骤十四(五)、得到关于当前元素Dero(ero_a,ero_b)的灰度差分值Gxy

Gxy=|Gx_ero_a|+|Gy_ero_b|。

步骤十四(六)、对于矩阵Dero中的元素Dero(ero_a,ero_b),设定灰度差分门限Gth,当Gxy≥Gth时,令Dero(ero_a,ero_b)=1,当Gxy<Gth时,令Dero(ero_a,ero_b)=0,从而得 到矩阵Dedg

步骤十四(七)、利用二值矩阵Dedg生成二值图像GRedg,令图像GRedg中第i行第j列像素点的像素值Iij等于Dedg中第i行第j列的元素值Dedg(i,j),Iij=1的像素点为白色,Iij=0的像素点为黑色,得到边缘检测处理后的二值图像GRedg

步骤十五、对边缘检测处理后的二值图像GRedg进行边缘信息提取,得到步骤十三中腐蚀处理后二值图像GRero中NWhiteBlock个不规则白色块的位置信息;具体包括以下步骤:

步骤十五(一)、设定空矩阵co_1

步骤十五(二)、遍历矩阵Dedg中的所有元素Dedg(edg_c,edg_d),其中edg_c=1,2,...,MT,edg_d=1,2,...,MT,Dedg(edg_c,edg_d)表示矩阵Dedg中第edg_c行第edg_d列的元素;当Dedg(edg_c,edg_d)=1时,将坐标(edg_c,edg_d)记录于co1中。

步骤十五(三)、设定空矩阵co_2,co_3及co_4

步骤十五(四)、令遍历号vinu=1。

步骤十五(五)、若vinu>vile则步骤结束,其中,vile为co_1中坐标个数,若vinu≤vile,则搜索co1中第vinu个坐标co_1_(vinu),并令co_1(vinu)为当前处理坐标co_1_(vinu)。

步骤十五(六)、将co_1_(vinu)存入co_2中。

步骤十五(七)、若co_1_(vinu,1)≤co_1_(vinu,2),则令vinu=vinu+1并返回步骤十五(五),其中,co_1_(vinu,1)和co_1_(vinu,2)分别为co_1_(vinu)的横坐标及纵坐标值。

步骤十五(八)、令处理号prnu=1。

步骤十五(九)、若co_1_(vinu,1)>co_1_(vinu,2),则确定co_1_(vinu)的八邻域坐标nef1,nef2,nef3,nef4,nee1,nee2,nee3,nee4,其中,nef1,nef2,nef3,nef4(八邻域中的四邻域坐标)及nee1,nee2,nee3,nee4(八邻域中的对角坐标)分别为:

步骤十五(十)、确定坐标nef1,nef2,nef3,nef4在co_1中的个数,若nef1,nef2,nef3,nef4中有fo(fo=0,1,2,3,4)个坐标存在于co_1中,则令四邻域标记量nfo=fo;确定坐标nee1,nee2,nee3,nee4在co_1中的个数,若nee1,nee2,nee3,nee4中有ei(ei=0,1,2,3,4)个坐标存在于co1中,则令对角标记量nei=ei。

步骤十五(十一)、若prnu=1,则令prnu=prnu+1并转步骤十五(十二);若prnu≠1,则转步骤十五(十三)。

步骤十五(十二)、若nfo≠0,则将步骤十五(十)中的nfo个坐标中的任意一个设为当前坐标co_1_(vinu),将剩余的nfo-1个四邻域坐标及nei个对角坐标存入co_3并返回步骤十五(五);若nfo=0,则将步骤十五(十)中的nei个坐标的任意一个设为当前坐标co_1_(vinu),将剩余的nei-1个对角坐标存入co_3并返回步骤十五(五)。

步骤十五(十三)、若nfo≠0,则将步骤十五(十)中的nfo个坐标与co2中的坐标进 行比较,若nfo个坐标不全包含于co_2,则将不包含于co_2中的任意一个坐标设为当前坐标co_1_(vinu),将剩余的不包含于co_2中的四邻域坐标及不包含于co_2中的对角坐标存入co_2并返回步骤十五(五);若nfo个坐标全部包含于co_2,则将步骤十五(十)中的nei个坐标与co_2中的坐标进行比较,若坐标不全包含于co_2,则将不包含于co_2中的任意一个坐标设为当前坐标co_1_(vinu),将剩余的不包含于co_2中的对角坐标存入co_2并返回步骤十五(五);若步骤十五(十)中的nei个坐标全部包含于co_2,则将co_2中的坐标与co_3中的坐标进行比较,如果co_2与co_3中有相同的坐标,则取co_2中所有横纵坐标中的最大值和最小值存入co_4中,其中,存储的横纵坐标的最大值和最小值的形式为(xmin,xmax,ymin,ymax),其中(xmin,xmax)及(ymin,ymax)分别为co_2中横纵坐标的最大值和最小值,令vinu=vinu+1,返回步骤十五(五);如果co_2与co_3中没有相同的坐标,令vinu=vinu+1,返回步骤十五(五);若nfo=0,则转步骤十五(十四)。

步骤十五(十四)、若nfo=0,则步骤十五(十)中的nei个坐标与co_2所包含的坐标进行比较,若坐标不全部包含于co_2,则将不包含于co_2中的任意一个坐标设为当前坐标co_1_(vinu),将剩余的不包含于co_2中的对角坐标存入co_2并返回步骤十五(五);若坐标全部包含于co_2,则将co_2中的坐标与co_3中的坐标进行比较,如果co_2与co_3中有相同的坐标,取co_2中所有横纵坐标中的最大值和最小值存入co_4中,其中存储的横纵坐标的最大值和最小值的形式为(xmin,xmax,ymin,ymax),其中,(xmin,xmax)及(ymin,ymax)分别为co_2中横纵坐标的最大值和最小值,令vinu=vinu+1,返回步骤十五(五);如果co_2与co_3中没有相同的坐标,令vinu=vinu+1,返回步骤十五(五)。

步骤十五(十五)、统计co_4中所有形如(xmin,xmax,ymin,ymax)的元素个数co4,得到腐蚀处理后的二值图像GRero上不规则白色块的个数NWhiteBlock=co4。

步骤十五(十六)、遍历co_4中的所有co4个元素,令co_4中的第w(w=1,2,...,co4)个元素(xw_min,xw_max,yw_min,yw_max)为不规则白色块w(1≤w≤NWhiteBlock)的位置信息,其中,(xw_min,xw_max)和(yw_min,yw_max)分别为不规则白色块w中所有像素点横纵坐标的最大值和最小值。

步骤十六、利用步骤八中得到的总序列RSST和步骤十五中得到的不规则白色块w(1≤w≤NWhiteBlock)的位置信息,提取具有较大相似度的两个RSS片段和具体包括以下步骤:

步骤十六(一)、利用不规则白色块w位置信息中的xw_min和xw_max,在总序列RSST中提取RSS片段其中,rssi(xw_min≤i≤xw_max)为RSST中第i个RSS矢量。

步骤十六(二)、利用不规则白色块w位置信息中的yw_min和yw_max,在总序列RSST中提取RSS片段其中,rssj(yw_min≤j≤yw_max)为RSST中第j个RSS矢量。

步骤十七、计算与中不同RSS矢量之间的得分值,构造得分矩阵Hw;具体包括以下步骤:

步骤十七(一)、为了满足如下条件:

其中,rssφ为中第φ(1≤φ≤Msim_1)个RSS矢量,为中第个RSS矢量,为rssφ与的得分值,Msim_1=xw_min-xw_max+1为的序列长度,Msim_2=yw_min-yw_max+1为的序列长度,(xw_min,xw_max)和(yw_min,yw_max)分别为不规则白色块w(1≤w≤NWhiteBlock)中所有像素点横纵坐标的最小值和最大值,NWhiteBlock为步骤十三中腐蚀处理后二值图像GRero中不规则白色块的个数;定义中RSS矢量rssφ与中RSS矢量的得分值为:

其中,

Wη=-(α-β)η

(η,μ)是以为基准的像素点横纵坐标偏移量,且η和μ均为整数,令

步骤十七(二)、构造得分矩阵Hw

步骤十八、利用得分矩阵Hw进行相关性测序,得到与中相互关联的聚类,其中,与中相互关联的聚类定义为不规则白色块w所对应的相互关联聚类;具体包括以下步骤:

步骤十八(一)、确定Hw中的最大值元素其中,为Hw中第φ行第列的元素。

步骤十八(二)、将在Hw中的位置保存在位置矩阵Lw中,同时确定下一得分值并令φ=c且

步骤十八(三)、重复步骤十八(二),直到下一得分值为0。

步骤十八(四)、统计Lw中所保存位置的总数NLw

步骤十八(五)、令r=NLw

步骤十八(六)、比较Lw(r)与Lw(r-1)的位置,若Lw(r-1)(1)=Lw(r)(1)+1且Lw(r-1)(2)=Lw(r)(2)+1,则将Lw(r)与Lw(r-1)作为一组位置对,并以(Lw(r)(1),Lw(r-1)(1),Lw(r)(2),Lw(r-1)(2))的形式保存在相关矩阵L'w中,其中,Lw(r)表示Lw中第r个位置,Lw(r)(1)表示第r个位置所对应的横坐标,Lw(r)(2)表示第r个位置所对应的纵坐标。

步骤十八(七)、令r=r-1。

步骤十八(八)、重复步骤十八(六)和步骤十八(七),直到r=2。

步骤十八(九)、统计矩阵L'w中形如(Lw(r)(1),Lw(r-1)(1),Lw(r)(2),Lw(r-1)(2))的元素个数N'Lw

步骤十八(十)、从第1个元素开始遍历L'w中的N'Lw个元素。

步骤十八(十一)、利用L'w中第S(S=1,2,…,N'Lw)个元素(xS_1,xS_2,yS_1,yS_2),在步骤十六所得到的两个RSS片段和中进一步提取更精确的相似RSS片段对和

其中,和分别为中第xS_1和第xS_2个RSS矢量,和分别为中第yS_1和第yS_2个RSS矢量;

步骤十八(十二)、经过步骤四的谱聚类处理和步骤五的中值滤波处理后,RSST中每一个RSS矢量属于某个聚类,令RSST中RSS矢量rssj(1≤j≤MT)所对应聚类的类号和类心分别为和(1≤i≤Nseq,1≤g≤K),其中,表示rssj属于RSSi所对应的类转移图上类号为g的聚类,为所对应的类心,K为RSSi所对应的类转移图中的聚类个数,MT为RSST的序列长度,即RSST包含的RSS矢量个数,rssj(1≤j≤MT)为RSST中第j个RSS矢量,于是,得到类号集合

步骤十八(十三)、计算得到和中相互关联的聚类所对应的类号集合:

其中,num为类号集合中不重复的元素个数,类号集合中所有元素(即类号)所对应的聚类即为相互关联的聚类;

步骤十八(十四)、重复步骤十八(十一)至步骤十八(十三),直到得到和中所有相互关联的聚类,其中,和中相互关联的聚类即为不规则白色块w所对应的相互关联聚类。

步骤十九、重复步骤十六至步骤十八,直到得到所有不规则白色块所对应的相互关联聚类。

步骤二十、对于步骤七中得到的类转移图,合并所有相互关联聚类,且将合并后的类转移图定义为信号逻辑图GRsig;具体包括以下步骤:

步骤二十(一)、对于每一组相互关联的聚类,将所有相互关联聚类所对应的类心的均值作为合并后的新的类心,此类心代表一个合并的类。

步骤二十(二)、保持该合并的类与其它类之间的连接关系,即将其它类与合并之前所确定的所有类的连接关系修正为与合并之后合并的类的连接关系。

步骤二十(三)、重复步骤二十(一)至步骤二十(二),遍历完所有相互关联的聚类, 并进行相应的类合并操作,得到经拼接后的信号逻辑图。

步骤二十一、以定位目标区域内各物理叉路口作为各子区域的边界,将定位目标区域划分为NArea个子区域,且对每个子区域进行标号,记子区域标号为1,…,NArea

步骤二十二、根据各子区域的物理邻接关系,将定位目标区域表示为一幅由不同子区域节点相互连通的物理环境图;具体包括以下步骤:

步骤二十二(一)、将每个不同的子区域用一个圆圈表示,圈内的数字是相应的区域号。

步骤二十二(二)、根据各子区域的物理连接特性,用直线将两个在目标区域中相连的子区域连接起来,确定所有的连接关系后,就可得到各子区域连通的物理环境图。

步骤二十三、利用相应的映射准则,得到信号逻辑图与物理环境图的映射关系;具体包括以下步骤:

步骤二十三(一)、计算物理环境图中各子区域的邻接度AD(Adjacent Degree),各子区域的AD定义为该子区域和其邻接子区域所邻接的子区域个数总和,一个子区域与另一个子区域邻接表示这两个区域能够不经过其他区域到达彼区,此外,在所有子区域的AD中,得到最大ADAmag和最小ADAmig

步骤二十三(二)、对于步骤二十所得到的信号逻辑图GRsig,计算GRsig中各逻辑节点的AD,各逻辑节点的AD定义为该逻辑节点和其邻接逻辑节点所邻接的逻辑节点个数总和,一个逻辑节点与另一个逻辑节点邻接表示这两个逻辑节点能够不经过其他逻辑节点到达彼节点。

步骤二十三(三)、计算得到信号逻辑图GRsig中的最大ADAmal和最小ADAmil,对于GRsig中各逻辑节点的ADVADl,将其修正为VADg

步骤二十三(四)、选择物理环境图中与VADg距离最小的AD所对应的子区域,作为该逻辑节点的初始映射子区域,即此逻辑节点与该子区域具有初始映射关系,此处距离定义为二者之差的绝对值。

步骤二十三(五)、重复步骤二十三(二)至步骤二十三(四),可得到信号逻辑图GRsig与物理环境图的初始映射关系。

对于上述得到的初始映射关系,将利用中心点进行校正,以得到最终的映射关系。具体操作如下:

步骤二十三(六)、在物理环境图中,寻找每个子区域到其它子区域的Floyd最短路径,对于一个给定的子区域,定义其所对应的中心区域为该子区域到其它子区域的Floyd最短路径的公共区域,当不存在此公共区域时,则此区域的中心区域不存在;其中,计算一个区域到另一个区域的Floyd最短路径包括以下步骤:

步骤二十三(六)一、定义区域Phpi(pi=1,…,NArea)(Phpi∈{1,…,NArea})到区域Phpj(pj=1,…,NArea)(Phpj∈{1,…,NArea})的距离为d(Phpi,Phpj),此处的距离表示Phpi到Phpj经过的区域中不包括源点的区域个数;定义区域Phpi到Phpj之间的路径中插入的所有区域的集合为r(Phpi,Phpj);定义w(Phpi,Phpj)为区域Phpi与Phpj之间的邻接关系,当区域Phpi与Phpj邻接时,w(Phpi,Phpj)=1,否则w(Phpi,Phpj)=0。

步骤二十三(六)二、对于所有的Phpi与Phpj,设定初值d(Phpi,Phpj)=w(Phpi,Phpj);r(Phpi,Phpj)={Phpj};kin=1,其中kin为区域Phpi到Phpj之间的路径中插入的区域号。

步骤二十三(六)三、若d(Phpi,kin)+d(kin,Phpj)<d(Phpi,Phpj),则d(Phpi,Phpj)=d(Phpi,kin)+d(kin,Phpj),并将kin记入r(Phpi,Phpj)中;否则保持所有参数不变。

步骤二十三(六)四、若kin=NArea,则停止操作,否则kin=kin+1并返回步骤二十三(六)三。

步骤二十三(七)、在信号逻辑图GRsig中,根据步骤二十三(六)一至二十三(六)三,寻找每个逻辑节点到其它逻辑节点的Floyd最短路径,对于一个给定的逻辑节点,定义其所对应的中心逻辑节点为该逻辑节点到其它逻辑节点的Floyd最短路径的公共逻辑节点;当不存在此公共逻辑节点时,则此逻辑节点的中心逻辑节点不存在。

步骤二十三(八)、对于信号逻辑图中映射到物理环境图中非公共区域的公共逻辑节点,将其所映射的子区域修正为与其VADg距离最小的AD所对应的公共区域;此处的距离为两者之差的绝对值。

步骤二十三(九)、重复步骤二十三(七)和步骤二十三(八),完成对所有初始映射关系的校正,得该信号逻辑图GRsig与物理环境图最终的映射关系Mapma(ma∈{1,2,…,Nnod}),其中,Mapma表示信号逻辑图GRsig中各逻辑节点ma所对应的物理区域标号,Nnod表示信号逻辑图GRsig中的逻辑节点个数。

步骤二十四、利用步骤三中的加权系数wts和wrss,对在线阶段终端新采集的RSS矢量及其所对应的时间戳us进行加权,得到混合矢量其中,为在线阶段终端新采集的来自第l个AP的信号强度值,实验中k=5。

步骤二十五、在信号逻辑图中计算得到与具有最小欧式距离的类心所对应的逻辑节点ma。

步骤二十六、根据信号逻辑图与物理环境图的映射关系,得到终端所在的子区域。

如图2所示,为室内WLAN环境下21条RSS序列的采集路径,在定位目标区域内按照采集路径采集21条RSS序列。

如图3所示,为时间戳标记的RSS序列示意图,对每条RSS序列RSSi(1≤i≤Nseq)中的RSS矢量进行时间戳标记,以重构得到新的k+1维矢量,其中,Mi为RSS序列RSSi的序列长度,即RSSi包含的RSS矢量个数,k为AP数目,实验中k=5,rssijl(1≤j≤Mi,1≤l≤k)为RSSi内第j个RSS矢量中来自第l个AP的信号强度值。

如图4所示,为21条RSS序列所对应类转移图的构建过程,将采集得到的21条RSS序列进行谱聚类、中值滤波以及类号重排处理后,得到每条混合矢量所对应的类号,以及由相邻聚类之间转移关系得到的每条RSS序列所对应的类转移图。

如图5所示,为原始二值图像GRbin,其中,GRbin中像素的横纵坐标值(i,j)分别对应步骤八所得到的总序列RSST中第i个RSS矢量rssi和第j个RSS矢量rssj,当像素值为1时,表示rssi与rssj的欧式距离不大于步骤十中设定的门限值dith,而当像素值为0时,表示rssi与rssj的欧式距离大于步骤十中设定的门限值dith

如图6所示,为图5经中值滤波处理后得到的图像,对原始二值图像GRbin进行中值滤波处理后得到图像GRfil

如图7所示,为图6经腐蚀处理后得到的图像,对中值滤波后的二值图像GRfil进行腐蚀处理后得到图像GRero,腐蚀处理后的图像GRero中存在若干不规则白色块。如图8所示,为图7中某一局部图像经边缘检测后得到的图像,从图8可以看出,图像边缘检测方法提取了原始图像中相似度较大像素块的轮廓信息,从而根据轮廓的长宽信息,可以粗略定位相关位置,例如,由图8中轮廓的长宽信息,可得第346至第362个RSS矢量所组成的RSS片段与第201至第231个RSS矢量所组成的RSS片段之间存在较大的相似度。

如图9所示,为图7中某不规则白色块经边缘检测后得到的长宽信息,从图9可以看出,白色块所表示的相关位置位于灰色圆圈内,此时,若利用图像边缘检测得到相关位置信息,则存在较大相似度的RSS片段对为第966至第1012个RSS矢量所组成的RSS片段 和第1216至第1268个RSS矢量所组成的RSS片段,显然,该片段对不能精确刻画相关位置,为了解决这一问题,本发明在利用图像边缘检测方法得到相关位置的粗略长宽信息后,再采用相关性测序方法,对具有较大相似度的RSS片段进行精确定位,以提高对于相关位置的检测精度。

如图10(a)至图10(g)所示,为所有RSS序列的相关性测序结果,其中,黑色虚线方框表示相关矩阵L'w中元素所对应得分矩阵Hw中的相关位置对。如图11所示,为拼接得到的信号逻辑图,对图3中的所有类转移图进行拼接,得到信号逻辑图GRsig

如图12所示,为定位目标区域所对应的物理环境图,以定位目标区域内各物理叉路口作为各子区域的边界,将定位目标区域划分为7个子区域,且对每个子区域进行标号,记子区域标号为1,2,…,7。

表1给出了信号逻辑图中逻辑节点与物理环境图中物理节点的映射关系。

表1

此外,实验中还比较了仅边缘检测方法与本发明方法的定位性能。仅边缘检测方法与本发明方法的区别在于,将本发明方法中的步骤十六至步骤二十更换为如下五个步骤:

步骤1、从第1个元素开始遍历co4中的co4个元素。

步骤2、对于co_4中的第co(co=1,2,...,co4)个元素(xco_min,xco_max,yco_min,yco_max),构造矩阵纵向元素区间[xco_min,xco_max],并根据谱聚类和中值滤波处理后所确定的分类结果,可得该矩阵纵向元素区间中每一个RSS矢量所对应的类号及相应的类心。

步骤3、构造矩阵横向元素区间[yco_min,yco_max],并根据谱聚类和中值滤波处理后所确定的分类结果,可得该矩阵横向元素区间中每一个RSS矢量所对应的类号及相应的类心.

步骤4、将所有包含于矩阵纵向和横向元素区间中每一个RSS矢量所对应的类心进行合并,且将所有RSS矢量所对应的类心的均值作为合并后的新的类心,该类心代表一个合并的类,并保持该合并的类与其它类之间的连接关系(即将其它类与合并之前的所有类的连接关系修正为其它类与合并的类的连接关系)。

步骤5、重复步骤2至步骤4,直到遍历完co_4中的所有元素且完成相应的类合并操作,最后得到拼接后的信号逻辑图。

如图13所示,为正确定位区域概率结果,在在线阶段,在每个子区域内采集一定数量的测试点进行定位测试,定义每个子区域的正确定位区域概率为:将测试点正确定位到其所属子区域的测试点个数与在该子区域内采集的测试点总数的比值。图中比较了仅边缘检测方法与本发明方法的正确定位区域概率,其中,TW表示混合矢量中时间戳信息的权重。

如图14所示,为平均正确定位区域概率结果,在图13结果的基础上,图14比较了仅边缘检测方法与本发明方法的平均正确定位区域概率,平均正确定位区域概率定义为所有子区域的正确定位区域概率的平均值。由图14可知,本发明方法能够在大多数时间戳信息权重条件下获得更高的定位精度,例如,当时间戳信息权重分别为0.3、0.5和0.6时,本发明方法相对于仅边缘检测方法,平均正确定位区域概率提高近30%、20%和40%。此外,本发明方法还缩小了不同时间戳信息权重条件下的定位精度差异性,即降低了系统性能对时间戳信息权重的依赖性,进而增强了系统的适应性。

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