首页> 中国专利> 利用智能手机进行室内地图现场补测的方法

利用智能手机进行室内地图现场补测的方法

摘要

本发明涉及一种利用智能手机进行室内地图现场补测的方法,包括以下步骤:1)传感器检校,将智能手机屏幕朝下放在水平桌面上,静止设定时间后,记录加速度计和陀螺仪的观测数据,计算相应的零偏;2)系统初始化,当用户对准房屋的第一个转角点进行拍照时,系统进行初始化,利用加速度计和磁力计的观测数据计算手机的初始姿态;3)观测数据记录,所有传感器的观测数据都记录下来,包括加速度计、陀螺仪、磁力计以及对每个转角点拍照的时刻;4)测量结果计算,利用上一步记录的所有传感器数据,进行融合,计算出待测房屋的每条边长、转角和面积。与现有技术相比,本发明具有方便、快速、精确和成本低等优点。

著录项

  • 公开/公告号CN104978476A

    专利类型发明专利

  • 公开/公告日2015-10-14

    原文格式PDF

  • 申请/专利权人 李巍岳;周发根;

    申请/专利号CN201410149163.6

  • 发明设计人 李巍岳;周发根;

    申请日2014-04-14

  • 分类号

  • 代理机构上海科盛知识产权代理有限公司;

  • 代理人赵志远

  • 地址 250013 山东省济南市历下区羊头峪东沟1号3单元202号

  • 入库时间 2023-12-18 11:28:43

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2019-06-25

    授权

    授权

  • 2017-04-26

    实质审查的生效 IPC(主分类):G06F19/00 申请日:20140414

    实质审查的生效

  • 2015-10-14

    公开

    公开

说明书

技术领域

本发明涉及一种地图测绘方法,尤其是涉及一种利用智能手机进行室内地图现场补测的方法。 

背景技术

人们80%以上的时间都在室内环境中度过,因此,围绕室内地图和导航所开展的应用,是一个有着巨大需求和发展潜力的市场。室内地图作为信息的载体,不仅将我们所处的环境图形化,直观的呈现给我们,而且基于地图还可以进行兴趣点搜索、路径引导、辅助手机传感器定位等。由此可见,室内地图扮演着至关重要的角色。 

室内地图一般分为两类;标量格式地图和矢量格式地图。其中标量地图是指图片格式的建筑物平面图,如PDF、JPG、PNG等格式。通常我们见到建筑物内有一些示意图,如贴在办公楼墙壁上的疏散线路图,或者商场里面的平面导购图、展览馆里的导览图等,如果将这些示意图进行数字化,就成为了标量地图。所有标量地图都是以像素为单位进行存储的,它们的一个共同特点是放大后会变模糊,这是因为对像素进行重采样造成的,是不可避免的。矢量地图是以点、线、面等矢量形式保存的,常见的如ArcGIS的shapefile、AutoCAD的dwg格式等。矢量地图的优点是可以无限级别的缩放,其占用的存储空间也通常比标量地图要小,因此室内地图应该选择矢量格式。 

获取矢量地图的最理想的方式是由建筑单位直接提供dwg格式的建筑设计图或者竣工验收图。但是受到职责和权限的约束,通常我们很难获得这种dwg格式的图,而只能得到标量格式的平面图,因此我们要对它进行矢量化,利用专业的制图软件生成我们需要的矢量格式地图。 

当矢量地图生成之后,经常存在一个问题:那就是地图与现场不一致。产生这个问题的原因主要有两个:(1)我们无法获取最新的标量格式的平面图,或者由于 施工误差,即使最新的平面图也与现场存在不一致。(2)建筑物竣工后,由于房屋装修,改变了原有的隔断,这个是最常见的情况,特别是在一些大型商场,在装修过程中经常会对隔断进行拆除或重新设定。 

因此要进行现场补测,使得地图与现场相符。室内环境中可以采用的测图手段非常有限。众所周知,在室外,GPS是常用的测绘手段,一般的地籍测量设备都依靠GPS进行测量和制图,例如申请号为200910045401.8的中国专利公开了一种基于GPS定位的数字地图自动生成方法,但是由于在室内环境中GPS信号很微弱,或者完全没有信号,因此这些设备都无法使用。全站仪也是常有的测绘设备,但是它需要给定控制点,且全站仪携带不方便,效率低。而且该方法设备国语庞大,甚至需要计算机的介入,并且基于中国普通居民的流量套餐一般都较少的现状,利用云计算远程计算机实现地图测绘也不现实。 

国外学者提出一种方案,称为SLAM(simultaneous localization and mapping,即时定位与地图构建),这种方式利用搭载在机器人上面的相机和IMU等传感器,在室内环境中一边定位,一边制图。这种制图方式精度高,但是成本高昂,适应于某些特定场合下使用。 

近年来智能手机飞速发展,其硬件配置越来越高。很多智能手机上已经配置了相机、加速度计、陀螺仪、磁力计等传感器,为室内地图的测绘提供了可能。但是如何利用智能手机中这些已有的传感器,来实现室内地图制作功能成为当前解决的问题。 

发明内容

本发明的目的就是为了克服上述现有技术存在的缺陷而提供一种快捷方便的利用智能手机进行室内地图现场补测的方法。 

本发明的目的可以通过以下技术方案来实现: 

一种利用智能手机进行室内地图现场补测的方法,其特征在于,用户站在房屋内部的地面上,利用相机对准房屋的转角点,每个转角点拍照一次,系统将记录相机的拍照时刻,同时依靠内置于智能手机中的加速度计、陀螺仪、磁力计获取观测数据,然后进行相应的运算和数据融合,计算出待测房屋的每条边长、转角和面积;该方法基于以下一个简单事实:当使用者将相机对准房屋转角点拍照时,使用者的眼睛、手机屏幕中心、房屋转角点这三点近似的位于同一直线上;该方法具体包括 以下步骤: 

1)传感器检校,将智能手机屏幕朝下放在水平桌面上,静止设定时间后,记录加速度计和陀螺仪的观测数据,计算相应的零偏; 

2)系统初始化,当用户对准房屋的第一个转角点进行拍照时,系统进行初始化,利用加速度计和磁力计的观测数据计算手机的初始姿态; 

3)观测数据记录,从相机对准第一个转角点拍照到对准最后一个转角点拍照的整个过程,为一次测图周期,在这个测图周期中,所有传感器的观测数据都记录下来,包括加速度计、陀螺仪、磁力计以及对每个转角点拍照的时刻; 

4)测量结果计算,利用上一步记录的所有传感器数据,进行融合,计算出待测房屋的每条边长、转角和面积。 

所述步骤1)具体为: 

传感器检校,当使用者将手机静止放置30s,记录加速度计和陀螺仪的观测数据,计算三轴加速度计零偏和三轴陀螺仪零偏: 

bACCE(x)=axbACCE(y)=aybACCE(z)=az-g,bGyro(x)=ωxbGyro(y)=ωybGyro(z)=ωz

其中,g为重力加速度,和分别加速度计测得三个方向数据的均值, 和分别是30s内陀螺仪测得三个方向数据的均值,bACCE(x)、bACCE(y)和bACCE(z)分别为三轴加速度计三个方向的零偏,bGyro(x)、bGyro(y)和bGyro(z)分别为三轴陀螺仪三个方向的零偏。 

所述步骤2)具体为: 

21)当使用者对准房屋的第一个转角点进行拍照时,系统记录下这一时刻; 

22)计算一秒钟内加速度计数据和磁力计数据的均值和磁力计数据的均值: 

ax=1fΣi=1tax-bAcce(x)ay=1fΣi=1fay-bAcce(y)az=1fΣi=1faz-bAcce(z),mx=1fΣi=1fmxmy=1fΣi=1fmymz=1fΣi=1fmz

其中f表示加速度计和磁力计的输出频率,和分别磁力计测得三个方向数据的均值; 

23)首先定义两个向量和

然后计算和的向量积,记为

再计算与的向量积,记为

再将三个向量都进行单位化 

利用三个单位矢量便可以构建出初始姿态矩阵,如下: 

多组传感器的观测数据以拍照时的时刻作为标签进行区分。 

所述步骤4)具体为: 

31)经过系统初始化以后,确定了手机的初始姿态,初始姿态矩阵写成如下的形式: 

RbL=R11R12R13R21R22R23R31R32R33

其中,R11~R33为初始姿态矩阵中的元素; 

采用四元数算法进行姿态矩阵更新,其初始值计算公式: 

Q0=q1q2q3q4=121+R11+R22+R33(R32-R23)/4q1(R13-R31)/4q1(R21-R12)/4q1

四元数的更新算法如下: 

Qk+1=(cosθ2·I+sinθ2θ·S)·Qk

上式中,I表示4阶的单位矩阵,S阵和θ的表达式如下: 

S=0-ωx·Δt-ωy·Δt-ωz·Δtωx·Δt0ωz·Δt-ωy·Δtωy·Δt-ωz·Δt0ωx·Δtωz·Δtωy·Δt-ωx·Δt0

θ=(ωx·Δt)2+(ωy·Δt)2+(ωz·Δt)2

其中,△t表示陀螺仪数据的采样间隔,ωx,ωy,ωz分别表示陀螺仪的三轴输出数据,即角速度,角速度经过零偏误差的补偿后,即可代入以上两式进行计算,得到每个采样时刻的四元数的值; 

32)姿态提取,先由四元数求取对应的姿态矩阵,然后进行姿态角提取,公式如下: 

y=-arctanRbL(1,2)RbL(2,2)p=acrsinRbL(3,2)r=-arctanRbL(3,1)RbL(3,3)

其中,表示矩阵的第x行第y列的元素; 

33)距离计算,系统根据高度H和俯仰角p运用正弦函数计算出使用者与墙角之间的水平距离L: 

L=H·tan(90-p) 

34)系统根据使用者与各墙角之间的水平距离L和航向角运用余弦定理和正弦定理等公式计算得到测图结果: 

|AB|=L12+L22-2·L1·L2·cos(e1)

其中,L1和L2分别为使用者与墙角A和B的水平距离,e1为对墙角A和B两次拍照对应的夹角,|AB|为AB边的边长; 

房屋的转角,其中墙角B的转角∠∠ABC: 

ABC=arcsin(L1·sin(e1)|AB|)+arcsin(L2·sin(e2)|BC|)

其中,|BC|为AB边的边长,e2为对墙角B和C两次拍照对应的夹角; 

房屋的面积分成几个三角形之和,其中三角形AOB面积: 

SΔAOB=12·L1·L2·sin(e1)

其中,SAOB为三角形AOB的面积。 

所述步骤33)中的高度H为事先测定。 

所述步骤34)测图结果包括房间的每条边长、每个转角和房间的面积。 

与现有技术相比,本发明具有以下优点: 

1)完全基于智能手机中已有的传感器进行地图制作,无需增加额外的硬件成 本,便可实现室内地图的补测,是一种方便、快速和低成本的手段,这是区别于现有技术的显著优点; 

2)本发明方法考虑了传感器的检校和误差补偿,采用了数据融合算法,能有效的保证测图精度。 

附图说明

图1为本发明方法的主要步骤流程图; 

图2为手机设备坐标系的轴向定义图; 

图3为测量点当地水平坐标系的轴向定义图; 

图4为使用者拍照时示意图: 

图5为拍照时人到房屋转角点的水平距离计算原理图; 

图6为测图计算时的几何关系示意图。 

具体实施方式

下面结合附图和具体实施例对本发明进行详细说明。本实施例以本发明技术方案为前提进行实施,给出了详细的实施方式和具体的操作过程,但本发明的保护范围不限于下述的实施例。 

本发明公开了一种利用智能手机进行室内地图现场补测的方法。在使用过程中,使用者站在房屋内部的地面上,利用相机对准房屋的转角点,每个转角点拍照一次,系统将记录相机的拍照时刻。这个过程中,依靠内置于智能手机中的加速度计、陀螺仪、磁力计等传感器获取观测数据,然后进行相应的运算和数据融合,计算出待测房屋的每条边长、转角和面积。该方法基于以下一个简单事实:当使用者将相机对准房屋转角点拍照时,使用者的眼睛、手机屏幕中心、房屋转角点这三点近似的位于同一直线上。如图1所示,该方法具体包括以下步骤: 

1)系统启动,启动三轴加速度计和三轴陀螺仪等传感器,记录计算初始信息 

2)观测数据记录,在测图周期中,所有传感器的观测数据都记录下来; 

3)测量结果计算,利用上一步记录的所有传感器数据,进行融合,计算出待测房屋的每条边长、转角和面积。 

步骤1)包括子步骤: 

11)传感器检校,当使用者将手机屏幕朝下放在水平桌面上并静止约30秒钟后,记录加速度计和陀螺仪的观测数据,计算三轴加速度计零偏和三轴陀螺仪零偏; 

12)系统初始化,当使用者对准房屋的第一个转角点进行拍照时,系统进行初始化,利用加速度计和磁力计的观测数据计算手机的初始姿态; 

本方法默认拍摄时使用者的眼睛、手机屏幕中心、房屋转角点这三点近似位于同一直线上。 

步骤11)中,传感器检校的目的是确定加速度计和陀螺仪的零偏,用于后续的误差补偿。将手机屏幕朝下放在水平桌面(或者水平地面)上,静止约30秒钟,这段时间内,系统没有受到额外的加速度和角速度。对加速度计而言,它敏感到的是与重力方向相反的支撑力;对陀螺仪而言,它敏感的是地球自转角速度。因为地球自转角速度是一个很微弱的量(约15°/h),它的值远远小于手机中内置的Mems陀螺仪的零偏值,因此可以忽略。 

手机传感器的三个轴相互正交,组成设备坐标系,以下简记为b系。它的轴向定义如图2所示:X轴沿屏幕指向右方,Y轴沿屏幕指向前方,Z轴垂直于屏幕指向上方。当手机屏幕朝下静止放在水平桌面上时,每个轴上的加速度和角速度的真实值分别为: 

式(1)中的g表示重力加速度值。现对静止时间内的加速度计和陀螺仪数据求均值,公式为: 

ax=1n·fΣi=1n·faxay=1n·fΣi=1n·fayaz=1n·fΣi=1n·faz---(3)ωx=1n·fΣi=1n·fωxωy=1n·fΣi=1n·fωyωz=1n·fΣi=1n·fωz---(4)

上两式中,n表示手机在水平桌面上静止的时间,本例中取30s,表示加速度计和陀螺仪的输出频率,本例中取50Hz。于是可以计算出零偏值,如下: 

bACCE(x)=axbACCE(y)=aybACCE(z)=az-g---(5)bGyro(x)=ωxbGyro(y)=ωybGyro(z)=ωz---(6)

以上得到的三轴加速度计零偏和三轴陀螺仪零偏的值都要保存起来,用于后续 的数据误差补偿。 

步骤12)中系统初始化的目的是确定手机的初始姿态,手机的姿态是指手机设备坐标系与当地水平坐标系的旋转关系。将当地水平坐标系简记为L系,它的轴向定义如图3所示:X轴沿卯酉圈指向东,Y轴沿子午圈指向北,Z轴指向天顶。 

手机的姿态由三个欧拉角确定,分别称为俯仰角(pitch),翻滚角(roll),航向角(yaw)。姿态矩阵的表达式如下: 

RbL=cosrcosy-sinrsinysinp-sinycospsinrcosy+cosrsinysinpcosrsiny+sinrcosysinpcosycospsinrsiny-cosrcosysinp-sinrcospsinpcosrcosp---(7)

当使用者对准房屋的第一个转角点进行拍照时,系统记录下这一时刻,然后利用接下来的一秒钟时间完成姿态的初始化,具体包括子步骤: 

121)当使用者对准房屋的第一个转角点进行拍照时,系统记录下这一时刻; 

122)计算一秒钟内加速度计数据和磁力计数据的均值,其中加速度计数据要进行零偏误差的补偿; 

123)计算初始姿态矩阵。 

其中步骤122)中加速度计数据的均值为: 

ax=1fΣi=1tax-bAcce(x)ay=1fΣi=1fay-bAcce(y)az=1fΣi=1faz-bAcce(z)---(8)

磁力计数据的均值为: 

mx=1fΣi=1fmxmy=1fΣi=1fmymz=1fΣi=1fmz---(9)

步骤123)中,首先定义两个向量和如下: 

然后计算的向量积,记为

再计算与的向量积,记为

再将三个向量和都进行单位化,即把每个向量的元素都除以自身的模,这样就变成了单位矢量。于是利用三个单位矢量便可以构建出初始姿态矩阵,如下: 

步骤2)中测图周期为从相机对准第一个转角点拍照到对准最后一个转角点拍照的整个过程,所述传感器包括加速度计、陀螺仪、磁力计等,还有相机对准每个转角点拍摄的时刻。 

步骤3)利用步骤1)和步骤2)记录的所有传感器数据,进行融合,计算出待测房屋的每条边长、转角和面积。详细包括子步骤: 

31)采用四元数算法进行姿态矩阵更新; 

32)先由四元数求取对应的姿态矩阵,然后进行姿态角提取; 

33)系统根据高度和俯仰角计算出使用者与墙角之间的水平距离; 

34)系统根据使用者与各墙角之间的水平距离和航向角计算得到测图结果; 

步骤31)开始之前,经过系统初始化以后,确定了手机的初始姿态。初始姿态矩阵可以写成如下的形式: 

RbL=R11R12R13R21R22R23R31R32R33---(15)

姿态更新采用四元数算法,其初始值按以下公式计算: 

Q0=q1q2q3q4=121+R11+R22+R33(R32-R23)/4q1(R13-R31)/4q1(R21-R12)/4q1---(16)

四元数的更新算法如下: 

Qk+1=(cosθ2·I+sinθ2θ·S)·Qk---(17)

上式中,I表示4×4阶的单位阵,S阵和θ的表达式详见下面两式: 

S=0-ωx·Δt-ωy·Δt-ωz·Δtωx·Δt0ωz·Δt-ωy·Δtωy·Δt-ωz·Δt0ωx·Δtωz·Δtωy·Δt-ωx·Δt0---(18)

θ=(ωx·Δt)2+(ωy·Δt)2+(ωz·Δt)2---(19)

其中,△t表示陀螺仪数据的采样间隔,它与采样频率成倒数关系,ωx,ωy,ωz分别表示陀螺仪的三轴输出数据,即角速度。角速度经过零偏误差的补偿后,即可代入以上两式进行计算,得到每个采样时刻的四元数的值。 

步骤32)由四元数求取对应的姿态矩阵的公式如下: 

Rb(k+1)L=q12+q22-q32-q422(q2q3-q1q4)2(q2q4+q1q3)2(q2q3+q1q4)q12-q22+q32-q422(q3q4-q1q2)2(q2q4-q1q3)2(q3q4+q1q2)q12-q22-q32+q42---(20)

姿态提取公式如下: 

y=-arctanRbL(1,2)RbL(2,2)p=acrsinRbL(3,2)r=-arctanRbL(3,1)RbL(3,3)---(21)

上式中出现形如的表达式,它表示矩阵的第x行第y列的元素。 

步骤33)距离计算基于以下一个简单事实:当使用者将相机对准房屋转角点拍照时,使用者的眼睛、手机屏幕中心、房屋转角点这三点近似的位于同一直线上,如图4所示。 

设人的眼睛距离地面的高度为H(这个值可以事先准确测定),拍照时人到房屋转角点的水平距离为L,如图5所示。则: 

L=H·tan(90-p)    (22) 

因为一次测图过程中每个拍照的时刻都记录下来了,由此可以确定拍照时手机的姿态,然后利用式(21)进行姿态角提取,再利用式(22)计算出每个拍照时刻对应的L。 

以上步骤中已经完成了姿态角的提取,而且计算出了每个拍照时刻对应的水平距离L。步骤34)将通过计算,获取测图结果。 

首先计算相邻两次拍照时对应的边之间的夹角,如图6中所示,ei(i=1,2,3,4)即为两次拍照对应的夹角。 

ei=yi+1-yi    (23) 

上式中的y即为通过姿态提取所得到的航向角。 

现在计算房屋的每一条边长,以边AB为例,根据余弦定理来计算,如下所示: 

|AB|=L12+L22-2·L1·L2·cos(e1)---(24)

其余的边长也按余弦定理计算即可。 

然后计算房屋的每个转角,以∠ABC为例: 

∠ABC=∠ABO+∠OBC    (25) 

根据正弦定理: 

|AB|sin(e1)=L1sin(ABO)---(26)

于是有: 

ABC=arcsin(L1·sin(e1)|AB|)---(27)

同理可以计算出∠OBC,然后得到∠ABC的值。其余的转角也按类似的方法计算,此处不再一一列出。 

最后,计算房屋的面积。如图6所示,房屋面积由四个三角形的面积合并而成。 

根据三角形的面积计算公式,得到三角形AOB的面积为: 

12·L1·L2·sin(e1)---(28)

其余的三角形面积也按类似的方法计算,然后将所有三角形面积相加,就得到了房屋的面积。 

由此,已经计算出待测房屋的每条边长、每个转角和它的面积。 

已开发了基于本发明提出的方法的Android平台应用软件。目前,该软件已经应用于室内地图相关的产品实践中,经过了数十次的实验测试。多次测试结果显示,其测量边长和面积的精度都优于5%。 

因此,本发明提出的利用智能手机进行室内地图现场补测的方法是一种方便、可靠和低成本的方法。当然本发明的方法不仅仅局限于如本实施例所述的规则房间底面,当房间底面不规则时,也可以用分割再求和的微元思想进行测量,同时由于三角函数之间具有内在的联系,故在一些具体涉及三角函数的计算时,可能未必一定要采用本实施例中的方式,本实施例仅给出了一种较为简便的计算方式,本处不再详述。 

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号