[LBS] CNNLoc - 基于wifi指纹&CNN做室内定位

1. 简介

  • 本文提出基于Wifi指纹,使用CNN模型用于室内定位(CNNLoc模型),包括多建筑物和多楼层定位(multi-building and multi-floor localization)。文本发明了一个分类和定位模型,分别使用Stacked Auto Encoder(SAE)和一维的CNN网络。SAE模型主要用于从稀疏的RSS(Received Signal Strength)数据中提取关键特征,CNN模型用于高精度的位置估计。
  • 实验数据集为:UJIIndoorLocTampere 数据集;

1.1 基于wifi指纹的室内定位

  • 基于wifi指纹的定位一般分为两个阶段,离线阶段和在线阶段;
    1)离线阶段:收集每个位置对应的wifi信号强度信息;
    2)在线阶段:根据用户手机中扫描到的wifi及其信号强度,推断出用户所在的位置;
基于wifi指纹的室内定位.png

1.2 UJIIndoorLoc数据集说明

  • UJIIndoorLoc数据集总量为21049条,总共的AP数量为520个,信号强度缺失值为100。每条记录给出了用户实际的位置坐标(LONGITUDE, LATITUDE),用户所在楼层(FLOOR),用户所在建筑物(BUILDING)。
UJIIndoorLoc数据集.png

2. 系统设计

2.1 CNNLoc系统结构

  • CNNLoc系统结构主要分为:离线阶段和在线阶段,离线需要对信号强度做归一化处理;
CNNLoc系统结构.png

2.2 输入输出说明

  • 输入:\hat{r} = (r_1, r_2, ..., r_{520}) 接收到的ap信号强度;
  • 输出:位置:(x, y);楼层:f;建筑:b;

2.3 建筑分类模型

  • SAE模型用于将输入的特征进行压缩,提取关键特征;SAE模型压缩后的特征接几层DNN网络,用于最终建筑物分类。
building model.png

2.4 楼层分类&位置预估模型

  • SAE模型的输出结果,加入dropout层,之后介入1D-CNN网络;
  • 下面的CNN模型用于楼层分类和最终位置预估;
  • 用于位置预估的时候做了如下的修改:
    1)去除了dropout层;
    2)修改了输出,最终模型为回归问题,预测用户最终的位置(x,y);
    3)使用Relu激活函数;
  • 位置预估模型的损失函数如下:
位置预估模型损失函数.png
Floor model.png

参考资料

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。