前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >基于机器学习的精准定位系统

基于机器学习的精准定位系统

作者头像
一点人工一点智能
发布2023-06-21 16:49:41
5890
发布2023-06-21 16:49:41
举报
文章被收录于专栏:一点人工一点智能

作者:刘毅、胡宗群

来源:华中科技大学学报自然科学版

编辑:郑欣欣@一点人工一点智能

00 摘要

针对开阔空间中移动目标的定位技术,如卫星定位技术,存在的易受环境影响、定位误差较大的问题,以及室内定位技术,如超声波、WiFi网络和无线传感器网络等,存在的灵活度较低、成本较高的问题,提出一种基于机器学习的精准定位系统(PPS-ML)。该系统包括实景GIS(地理信息系统)服务器、图像训练服务器、定位服务器和无线摄像机。

其中:实景GIS服务器存储设定空间内的三维地理信息和与之对应的实景图像库;图像训练服务器通过改进后的VGG-Net进行区域机器学习,训练图像分类器,并生成位置识别模型,传入定位服务器;定位服务器通过卫星定位系统粗略定位目标所在区域,然后根据该区域的位置识别模型对无线摄像机采集的图像进行识别,实现精准定位。

结果表明:该系统达到了室内1.5m和室外3m的定位精度,且能实现8个方向的识别。

01 前言

随着移动通信的发展及人们对定位服务需求的增加,位置感知的研究越来越受到关注。目前,卫星定位仍然是人们生活中主要依赖的定位技术,然而受气候、电磁波、障碍物较多等因素的影响,卫星定位的应用受到了很大的限制,且定位精度无法达到令人满意的程度,甚至有可能失效。

而常见的室内定位技术,如WiFi、红外线、超宽带、超声波和惯性传感器等技术,均要花费大量的人力成本和经济成本完成设备布施,其灵活性较差。

因此,需要一种适合复杂的室外和室内环境、简单有效、建设成本低且定位精度高的定位系统,同时可实现包括目标静止条件下的目标朝向的精确定位系统。

计算机视觉技术通过处理和理解所提取到的大量客观图像中蕴含的信息,可以提高结果的准确率,同时该项技术通过机器承担执行任务的责任,能有效降低成本。因此,利用计算机视觉技术实现目标定位逐渐成为了研究热点。

最早的基于图像的定位方法建立了包含200幅城市环境中的正面图像数据库,通过在数据库视图中绘制建筑物立面轮廓,并将其投影到查询视图中来验证姿态确定结果。

文献[8]通过图像检索的方法在数据库中查出与输入图像相似度最大的两张图像,然后根据检索的两张图像进行三角测量从而得出位置信息。

文献[9]对基于视觉定位的SIFT(尺度不变特征转换)和SURF(加速稳健特征)特征提取器进行了评估,虽然两种方法各有优点,但是基于特征匹配的检索方法在数据库庞大的情况下会极大地影响系统的响应时间,而定位系统的速度性能指标关系着定位服务的质量。

文献[10]提出基于运动点云快速位置识别技术,其中基于词汇树特征索引和压缩的三维场景表示方法有效利用现代图形处理单元为视图配准提供实时运算,但该方法是基于SIFT关键点配准,其效率较低。

文献[11]提出一种基于点云和图像联合定位的高效检测方法,该方法使用视觉提示和耳机方向来配准空间地图,系统性能有所提高,但鲁棒性较差。与此同时,随着大数据时代的发展和计算机算力的提高,基于大规模图像识别与分类技术的迅速发展,特别是深度神经网络的发展,为诸多基于图像的任务提供了有效的解决方法。

文献[14]为地理计算机视觉的研究开辟一个新的方向,这是第一次在计算机视觉中使用一个由6×106多张地理定位图像组成的真正庞大的数据库。

之后,文献[15]在一个更大的数据集上研究了图像分类,该数据集是基于地标拍摄,有3×107幅图像,多达500个类别。基于这些研究基础,神经网络逐渐运用到位置感知领域中。

文献[16]首次提出基于卷积神经网络的位置识别技术,该系统在100%的精确率下实现了75%的召回率。

文献[17]提出一种VG-RAM WNN(虚拟通用随机存取无权神经网络)神经网络实现全局定位,该系统能够有效地学习真实环境的大地图,并以大约3m的精度执行全球定位。

文献[18]提出基于混合WNN-CNN(卷积神经网络)神经网络的视觉全球定位,通过给定实时和重新收集的图像来估计相机姿态,能实时定位和绘图,其平均误差为1.2m。

文献[19]提出一种基于图像指纹和深度学习的室内定位方法,该方法为无方向的定位系统,不能满足更好的定位体验。

基于当前位置识别系统的研究,本研究提出一种基于机器学习的定位系统,将位置识别视为图像分类的过程,实验结果表明:该方法达到了室内1.5m和室外3m的定位精度,且能实现8个方向的识别。

02  系统方法概述

在现实环境中,视点各方向具有不同的特征,每个视点的每个方向视为不同的类别,那么不同的类别就映射不同的位置信息。

当用户输入的查询图像被识别出属于哪一类别时,即可确定用户的位置信息。基于这种思想,本研究提出一种基于机器学习的定位系统,该系统将定位问题转变为图像分类问题,能有效提高定位精度。

该定位系统原理框图如图1所示,系统包括实景GIS服务器、图像训练服务器、定位服务器和无线摄像机。

图片
图片

所述系统各单元具体功能如下:

实景GIS服务器存储设定空间内的三维地理信息和与之对应的实景图像库,为图像训练服务器提供训练所需的360°实景图像;

图像训练服务器以空间区域为单位,分批提取实景GIS服务器内存储的对应区域的360°实景图像,通过改进的VGG-Net进行图像训练,并生成各区域的位置识别模型,这些位置识别模型将传入定位服务器中等待调用;

定位服务器调取无线摄像机联合卫星定位所确定区域的位置识别模型,通过该模型对无线摄像机采集到的图像进行分类识别,根据识别结果确定无线摄像机所在位置,当无线摄像机由用户所持有时,即可确定用户所在的位置信息;

无线摄像机(如智能手机、平板电脑等)通过卫星定位功能,确定无线摄像机所在大致区域。

本研究提出的系统其关键点在于如何进行区域机器学习来获得位置识别模型。该模型旨在计算用户的位置,其中位置计算包括方向估计和坐标估计。

03 位置识别模型的设计和方法

3.1 数据采集

本系统利用了卫星定位系统的粗略位置估计,同时针对庞大的数据库所带来的系统性能问题,将某一设定区域划分为多个d_x\times d_y 的矩形区域。如图2所示,在d_x \times d_y 的矩形区域中,以d为边长的正方形网格线交点为待定位目标二维平面视点位置,d 为设定的定位精度,通过预测网格点来最终估计目标点的坐标位置(x,y)

图片
图片

考虑到每个视点位置的每个方向即为一个类别,而类别的数量不宜过大,因此本研究将所述矩形区域大小设定为15d\times 8d 。矩形区域的划分能为每个小区域创建微型数据库,其图片数量较整个区域要少得多,模型将更简单。

目标方向判定作为定位的关键组成部分,关系着位置服务的体验质量。目前,大多数方向判定技术是基于数字罗盘和惯性传感器技术。本研究致力于利用图像分类的方法实现目标方向的判定,以期待获得更好的鲁棒性。

针对图像分类的数据采集,在每个二维平面视点位置分多个视角方向采集。所述的视角方向为:设定以正北方向为0°、与0°夹角α=iθ的方向,i=0,1,⋯,n,n<360°/θn为整数,θ为设定的定位角度的精度,本研究取θ=45°n=7<360°/45°,其二维平面视角如图3所示。

图片
图片

3.2 网络模型设计

在图像分类上,卷积神经网络有着优越的表现,其实质是通过设计一个恰当的函数ff来实现的。

此外,考虑到较浅的卷积层能够表达更多的局部特征,因此联合较浅的卷积层作为池化层的输入,基于这种思想,本研究的图像分类模型基于经典的VGG网络设计,其体系结构如图4所示,该模型新加入两个Concat层,可更好提取浅层特征。

图片
图片

网络输入为固定的156×156的灰度图像(Image)。模型的第一层和第二层为卷积层,应用3×3的卷积核(Conv),两层的输出均为64幅156×156像素的图像。将第一层的输入与第二层的输出连接合并为Concat层,其中网络的输入首先进行归一化(Normalize)操作。

由于通道数不同,因此该模型将第一层的输入经1×1卷积提高维度再进行合并。Concat层之后是一个最大池化层(Pool),使用2×2的滑动窗口,步长为两个像素点,得到64幅78×78像素的图像。第三层和第四层依然采用3×3的卷积核,均执行128次卷积,这里同样加入一个Concat层,其原理同上。

该层之后是另一个最大池化层,然后连接两个3×3×256的卷积层、2×2最大池化层、3×3×512卷积层和2×2最大池化层,紧接着还是3×3×512卷积层和2×2最大池化层,最后是三个全连接层(FC):前两个各有2048个神经元,第三个为输出层,该层连接Softmax函数以获得类别分数进行分类,类别个数根据实际位置点确定。Softmax函数为

图片
图片

式中:V_i 为分类器前级输出单元的输出;i 为类别索引;C 为总的类别个数;S_i 为当前输入属于类别i 的相对分数,以分数最高者判定所属类别。另外,本研究使用ReLU非线性函数作为网络模型的激活函数,具体可表示为:

图片
图片

位置识别模型的训练任务旨在训练一个Softmax多分类器来学习各位置的特征。Softmax将多个神经元的输出映射到(0,1)区间内并归一化和为1,可以看成概率来理解。在训练的过程中希望当前输入属于某个类别的概率取到最大,因此网络使用多类别交叉熵函数(categorical-cross entropy)来计算损失,即

图片
图片

式中:K 为种类数量;y 为标签,当类别为i 时,则y_i=1 ,否则y_i=0p_i 为类别i 的概率,概率值通过Softmax计算得来。

该网络模型使用Adam随机优化算法来执行参数更新。Adam是一种高效的更新算法,该算法内存需求较低,其梯度的对角缩放具有不变性,因此很适合求解带有大规模数据或参数的问题。Adam算法还可以设计独立的自适应性学习率,以达到更优的结果。

3.3 减少过拟合

过拟合通常是指网络在模型训练的过程中对某些特征的过度表达使得模型在训练数据上能很好拟合数据,但在训练数据外的数据集上却误差很大,此时模型的泛化能力较差,这是训练数据太少导致。本研究以30°的间隔将训练图像进行旋转操作,这样对于每幅图像,能生成11个附加图像。通过这种方式,人工放大了数据集,有效防止了过拟合。

此外,网络在前两个全连接层中使用Dropout。本研究使用10%的Dropout(根据多次实验选择),即网络以0.1的概率将每个隐藏神经元的输出置为零,那么这些被置为零的神经元就不会参与参数的更新。研究表明Dropout能有效防止训练数据的过拟合。

04 实验与分析

4.1 数据处理

本实验使用手机摄像机分别采集了不同时间段的室内和室外环境数据。在第1节所述的网格点位置,选取连续的网格点数据来阐述本研究的模型,其中每个点分8个方向,每个方向采集大约600张图像,这些图像是在不同时间段采集,以尽量接近真实的环境变化,其大小为960×544像素,其中:80%用于训练;20%用于测试。

对采集的图像数据首先进行滤波、边缘增强和亮度均衡化处理。另外,考虑到同一方向上不同距离拍摄的图片的差异主要在于图片的边缘位置,而图像中心部分的特征基本相同,即这种差异在于图片的环境信息与图片的连接处,虽然也有空间结构信息的不同,但是图像经过神经网络的全连接层处理后,其结构信息会有所丢失;

因此,本实验引入一种掩膜遮罩的图像预处理方式,即在图像中心部位按一定的比例加入掩膜。该方法能有效减少从相机获得的信息冗余及来自动态对象变化的噪声。本实验以25%的比例加入掩膜。

为了评估模型在室内和室外环境中在位置和方向判定上的性能,本实验在室内和室外采集了不同的定位精度的图像进行实验。这里的评估是基于三个室内环境和三个室外环境的数据进行。图5为数据集的一些示例图像。

图片
图片

4.2 室外定位实验和结果分析

由于拍摄距离的变化对图像差异的影响因拍摄视野的不同而不同,因此在室外环境中的视野相对广阔,画面中包含的景物范围大,此时同一方向上不同距离拍摄的图片差异小,不易区分。

因此,本实验在室外设置1、2和3m的距离间隔进行对比实验。不同间隔的定位准确率数据统计如表1所示,这里的定位是包括坐标和方向的定位。另外,还单独给出了不同间隔下模型对方向判定的准确率统计,如表2所示。

图片
图片
图片
图片

由表1可以看出:模型对距离间隔为1、2和3m的定位平均准确率分别为72.866%、87.511%和93.643%。从每一列的数据中比较,间隔越大,模型的定位准确率越高;

当间隔变小时,模型的判定性能将略有下降。就3m的间隔来说,模型平均达到了93.643%的判定准确率,可以认为本研究的模型达到了室外3m的定位精度,能基本满足定位要求。

目前民用卫星定位系统的定位误差为10m多,甚至更大,因此该模型完全可以辅助现有的卫星定位系统实现更精准的定位。从表2还可以看出:模型在方向判定上有着较高的识别率,且距离间隔对方向的判定影响较小,这为定位服务提供了更好的体验。

4.3 室内定位实验和结果分析

在室内环境中,视野相对狭窄,画面中包含的景物范围小,此时同一方向上不同距离拍摄的图片差异大,容易区分。因此,本实验针对室内定位设置了0.5、1.0和1.5m的距离间隔进行对比实验。不同间隔的定位准确率如表3所示,这里的实验方式与3.2节相似。模型对方向判定的准确率如表4所示。

图片
图片
图片
图片

由表3可以看出:在室内环境中,距离间隔对准确率的影响与室外有着相同的规律,即间隔越大,模型的识别率越高。但在室内环境中,模型对1.5m间隔的定位就能达到平均92.675%的准确率,说明模型达到了室内1.5m的定位精度,较室外定位更精准。

同时,该模型在室内环境中对方向的判定也能达到较高的识别率。相比于卫星定位系统在室内定位出现误差较大、甚至失效的情况,本研究方法有着明显的优点。

但从表3可以看出:模型在有些地方的定位准确率并不是很高,这因为在室内环境中有许多相似的地方或对称的结构,如墙壁、走廊等,这样就会在数据库中生成许多相似的图像,从而对识别率造成影响。

因此,在定位过程中,当用户使用无线摄像设备捕获图像时应尽量拍摄特征较明显的图像,以便得到更可靠的定位体验。

4.4 实验参数设置

在训练模型的过程中,进行多次实验之后,将Batch size(批大小)设置为64,将Epoch(迭代次数)设置为100次来遍历所有样本。此外,本实验使用均值为0、标准差为0.05的正态分布来初始化每个层的权重,并且设置常量0.1为初始偏置量。为了让网络更好地收敛,本实验设计初始学习率为0.001,每5个Epoch减少2%,选取Dropout为0.1(如2.3节所述)。

4.5 方法性能比较

将本研究提出的基于机器学习的位置识别模型(PPS-ML)与其他类似定位方法在定位精度和方向判定上的性能进行对比,所比较的方法包括:

基于SIFT特征匹配的室内定位方法[30](表示为SIFT-IP),这里作者只着重研究走廊系统,其定位精度为5~10m,能实现6个方向的判别。基于卷积神经网络的位置识别方法(表示为CNNs-LR),利用Overfeat网络提取图像特征,然后进行特征匹配来实现位置的识别,其定位精度为7m。

基于图像的全局定位系统(表示为VibGL),该系统使用了虚拟广义随机存储器无重神经网络(VG-RAM WNN)来学习真实环境,其定位精度为3m,能实现6个方向的判别。

基于图像指纹和深度学习的室内定位方法(表示为FIDL-IP),该方法采用一个卷积神经网络来实现一个精确的室内定位系统,其定位精度约为1m,但该系统是一个无方向的系统。而本研究提出的PPS-ML能实现8个方向的判别,显然优于其他对比的定位方法,而且在定位精度上,该模型能实现室内1.5m和室外3m的精度,较SIFT-IP和CNNs-PR有明显提高。

综上所述,本研究方法在室内和室外环境的定位上均有着较好的性能。

05  结语

本研究提出一种基于深度学习的位置识别方法,该方法利用位置与图像相关联的方式,将位置识别视为图像分类的过程。

针对数据集庞大的问题,将全局定位简化为局部空间的定位问题,并创建微型数据库,实现了包括目标朝向在内的精准定位。使用真实环境数据集训练并测试模型,结果表明:该模型能在室内达到1.5m和室外3m的定位精度,并且能实现8个方向的判别。相比于其他基于图像的定位方法,该方法在定位精度和方向识别上有着显著的优势。

然而,由于现实环境的不断变化,尽管本研究的实验采集了多个时间段的图像,但是仍然不能保证所训练的模型能够应对未来时间里环境改变所带来的挑战,因此如何实时更新数据库来更新模型是今后工作的重点。另外,位置图像的采集有着庞大的工作量,寻找一种高效、便捷的数据采集方法也将有利于系统的实施。

本文系转载,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文系转载前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 00 摘要
  • 01 前言
  • 02  系统方法概述
  • 03 位置识别模型的设计和方法
    • 3.1 数据采集
      • 3.2 网络模型设计
        • 3.3 减少过拟合
        • 04 实验与分析
          • 4.1 数据处理
            • 4.2 室外定位实验和结果分析
              • 4.3 室内定位实验和结果分析
                • 4.4 实验参数设置
                  • 4.5 方法性能比较
                  • 05  结语
                  领券
                  问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档