法律状态公告日
法律状态信息
法律状态
2020-04-24
专利权的转移 IPC(主分类):G01C21/20 登记生效日:20200407 变更前: 变更后: 申请日:20141219
专利申请权、专利权的转移
2017-04-12
授权
授权
2015-04-22
实质审查的生效 IPC(主分类):G01C21/20 申请日:20141219
实质审查的生效
2015-03-25
公开
公开
技术领域
本发明涉及室内定位导航领域。
背景技术
随着智能手机的普及,位置定位服务越来越受到人们的重视。而现如今的卫星定位只解决了室外定位的问题,室内定位仍未得到统一。近年来基于Wifi的室内定位方法由于其部署方便,得到了比较广泛的关注,但是目前的研究成果显示,其定位精度受室人流疏密、墙壁遮挡等因素的影响较大。综合设备的部署成本和定位精度的影响因素考虑,并结合发展较为成熟的图像处理技术,视觉定位技术逐渐成为室内定位研究的另一个热点,并获得了越来越多的关注。关于视觉定位方法的研究始于机器人定位领域,但是近年来随着具有摄像头的智能手机的发展,视觉室内定位方法由于其所需设备简单,除用户配备摄像头的智能手机外,无需添加其他硬件设备而得到广泛的关注。
基于视觉的室内定位通过将用户所在位置的图像信息来估计出移动设备的位置,从而进行定位。通常该定位系统分为两步:即建立基于视频采集的Visual Map数据库的离线阶段和在线的定位估计阶段。如表1所示:
表1
Visual Map数据库是由视频帧,该帧所对应的地理位置信息和该帧的哈希值(该哈希值由感知哈希算法计算而来)组成,其中n表示帧的个数。传统的用于视觉定位的数据库为图片库,获取方法为先在室内环境下按照一定间隔均匀设置参考点,使其覆盖需定位区域。然后在每个参考点分别朝向不同方向进行照相以获得基于图片的数据库。但这种对图像进行采集和位置标注的方式十分费时费力。
发明内容
本发明内容是为了解决现有方法的室内视觉定位精度低,且费时费力的问题,从而提供一种基于视频采集的Visual Map数据库建立方法及利用该数据库的室内视觉定位方法。
基于视频采集的Visual Map数据库建立方法,它由以下步骤实现:
步骤一、根据需要定位的室内环境,选择坐标原点P0(X0,Y0),建立平面二维直角坐标系;
步骤二、通过载有视频获取设备的平台在匀速直线过程中进行视频拍摄,并且通过对所获得的视频进行处理来记录视频中帧的位置坐标信息,该位置坐标通过拍摄平台的运动速度和该帧的序号以及该视频的帧速率,通过公式:
>
获得;其中,n为该帧的序号,v为拍摄平台运动速度,α为拍摄平台运动方向和坐标系x轴夹角,(X0,Y0)为坐标原点,(Xn,Yn)为该帧在步骤一中所建立的平面坐标系中的位置坐标;
步骤三、通过感知哈希算法计算出已经标记位置坐标信息的帧的哈希值,并存储,完成Visual Map数据库的建立。
基于上述Visual Map数据库的室内视觉定位方法,它由以下步骤实现:
步骤A、通过感知哈希算法计算出待定位用户上传的图像的哈希值;
步骤B、根据步骤A获得的哈希值从Visual Map数据库中搜索到4帧图像,完成粗匹配过程;
步骤C、将步骤B中得到的4帧粗匹配图像与用户上传图像通过SURF算法进行匹配点计算;
步骤D、通过RANSAC算法从步骤C中每对图像得到的匹配点中选择8对匹配点,并记录其相对应图像中的坐标;
步骤E、将步骤C中得到的像素坐标通过对极几何来计算出用户的位置坐标,完成室内视觉定位。
步骤E中所述将步骤C中得到的像素坐标通过对极几何来计算出用户的位置坐标的具体方法为:
步骤E1、采用8点法求基本矩阵F,所述基本矩阵F是对极几何的数学描述;
对极几何中基本矩阵F的基本关系式为:
x′TFx=0 (2)
其中,X,X′分别表示两幅匹配图像中的一对匹配点在其像素坐标系中的坐标;
将获得的8对匹配点Xi(ui,vi,1),X′i(u′i,v′i,1),(1≤i≤8)代入公式(2)中,令基本矩阵F=(fij),即:
>
其中,f=(f11,f12,f13,f21,f22,f23,f31,f32,f33)T;
求解该线性方程组,获得基本矩阵F;
步骤E2、调用建立Visual Map数据库所用相机的内部参数矩阵K1,并读取待定位用户的相机内部参数矩阵K2;相机内部参数矩阵K由公式(4)给出:
>
其中,f为相机焦距,ku,kv表示相机的像素点尺寸,u0,v0表示图像的尺寸即图像坐标系中u轴和v轴所包含像素点的个数,θ表示图像坐标系中u轴和v轴之间的夹角,并由公式(5)求得本质矩阵E:
Ε=K2TFK1 (5)
步骤E3、由于步骤E2计算出的本质矩阵E包含了用户拍照位置与数据库中匹配图像所处位置之间的旋转矩阵R和转移向量t,如公式(6)所示:
E=[t]×R (6)
其中,[]×表示反对称矩阵,如公式(7)所示,
>
从而通过本质矩阵E求出旋转矩阵R和转移向量t;
步骤E4、在步骤E3中求出的转移向量t是以用户拍照位置为参考系得出的,将其转换至世界坐标系中,如公式(8)所示,
tw=-Rr-1R-1t (8)
其中:tw表示在规定的世界坐标系中用户拍照位置与匹配图像位置之间的方向向量,Rr-1表示匹配图像在被采集时相机的旋转矩阵;
步骤E5、已知世界坐标系中两幅图像的方向向量及其中一个匹配图像的二维位置坐标(Xd,Yd),确定一条过匹配图像的直线,如公式(9)所示,
>
其中:tw是步骤四得出的转移向量,是一个3×1的列向量,tw(2)代表tw第二行的元素,同理tw(1)代表tw第一行的元素;
步骤E6、将粗匹配得到的4帧图像分别和用户上传图像按照上述步骤求出4条直线,该4条直线存在若干交点,采用公式(10)完成最优点的确定,即:定位结果的确定:
>
其中:Ni表示第i个匹配图像与用户提供图像的匹配点数,di(x,y)表示选定的交点到第i个匹配图像所做直线的距离,如公式(11)表示,
>
其中:ai=t(2),bi=-t(1),ci=-t(2)xi+t(1)yi,xi和yi表示第i幅匹配图像对应的坐标。
步骤E3中从本质矩阵E恢复旋转矩阵R和转移矩阵t的算法,其特征在于以下步骤:
步骤E31、将3×3阶的本质矩阵E分解为E=[ea eb ec]的形式,其中ea,eb,ec为 3×1阶列向量;对ea,eb,ec三个列向量两两求外积得ea×eb,ea×ec和eb×ec,并选出其中幅值最大的一组,且设ea×eb结果的幅值最大;
步骤E32、根据公式(12)和公式(13),分别计算出矩阵V=[va vb vc]以及矩阵U=[ua ub uc]:
>
>
步骤E33、构造矩阵D形式如下:
>
矩阵V和矩阵U,得出转移向量t如公式(15)所示:
t=[u13 u23 u33] (1)
其中:u13表示矩阵U第1行第3列的元素,u23表示矩阵U第2行第3列的元素,u33表示矩阵U第3行第3列的元素;旋转矩阵R如公式(16)所示:
>
可知,旋转矩阵R有两个取值Ra或Rb;
步骤E34、构造矩阵Ha=[Ra|t],Hb=[Ra|-t],Hc=[Rb|t],Hd=[Ra|-t];其中:Ha=[Ra|t]表示3×3阶的旋转矩阵R和3×1阶的转移向量t合并成为4×4阶的向量Ha,如公式(17)所示:
>
Hb,Hc,Hd的构造方式同理;
步骤E35、令向量P=[1 1 1 1]T,并计算L1=HaP,L2=HbP,L3=HcP,L4=HdP,当Li(i=1,2,3,4)满足条件(18)时,取Li对应的R和t作为最终的旋转矩阵R和转移向量t;
>
其中,Li是4×1阶的列向量,Li(3)和Li(4)分别表示向量Li的第3行第1列元素和第4行第1列元素。
本发明减少了Visual Map数据库建立的工作量,并利用对极几何的相关算法提高现有基于图像匹配的方法的精度,进而提高了室内视觉定位精度。
附图说明
图1是RANSAC算法流程示意图;
图2是在室内地图上选择坐标原点并建立坐标系的示意图;
图3是计算帧的位置坐标示意图;
图4是像素坐标系示意图;
图5是基于视频采集的Visual Map数据库的室内视觉定位方法流程示意图。
具体实施方式
具体实施方式一、基于视频采集的Visual Map数据库建立方法,它包括下述步骤:
步骤一、根据需要定位的室内环境,选择坐标原点P0(X0,Y0),建立平面二维直角坐标系,如图2所示;
步骤二、通过载有视频获取设备(手机)的平台在匀速直线过程中进行视频拍摄,并且通过对所获得的视频进行处理来记录视频中帧的位置坐标信息,该位置坐标可以通过拍摄平台的运动速度和该帧的序号以及该视频的帧速率计算得到,如公式(1)所示:
>
其中,n为该帧的序号,v为拍摄平台运动速度,α为拍摄平台运动方向和坐标系x轴夹角,(X0,Y0)为坐标原点,(Xn,Yn)为该帧在步骤一中所建立的平面坐标系中的位置坐标,如图3所示;
步骤三、通过感知哈希算法计算出已经标记位置坐标信息的帧的哈希值,完成数据库的建立,本发明将该数据库称之为Visual Map。
具体实施方式二、基于具体实施方式一的视频采集的Visual Map数据库的室内视觉定位方法,它包括下述步骤:
步骤一、通过感知哈希算法计算出待定位用户上传的图像的哈希值;
步骤二、根据步骤一通过感知哈希算法计算所得的哈希值从Visual Map数据库中搜索到4帧图像,完成粗匹配过程;
步骤三、将步骤二中得到的4帧粗匹配图像与用户上传图像通过SURF算法进行匹配点计算;
步骤四、通过RANSAC算法从步骤三中每对图像得到的匹配点中选择8对匹配点,并记录其在相对应图像中的坐标;
步骤五、根据步骤四中得到的像素坐标通过对极几何来计算出用户的位置坐标,完成室内定位。
步骤E中所述将步骤C中得到的像素坐标通过对极几何来计算出用户的位置坐标的具体方法为:它包括下述步骤:
步骤一:采用8点法求基本矩阵F。基本矩阵F是对极几何的数学描述。对极几何中基本矩阵F的基本关系式为:
x′TFx=0 (2)
其中,X,X′分别表示两幅匹配图像中的一对匹配点在其像素坐标系中的坐标。将实施方式一中步骤四得到的8对匹配点Xi(ui,vi,1),X′i(u′i,v′i,1),(1≤i≤8)代入公式(2)中,令基本矩阵F=(fij),如公式(3)所示:
>
其中,f=(f11,f12,f13,f21,f22,f23,f31,f32,f33)T。直接通过求解该线性方程组来计算基本矩阵F。
步骤二:调用建立Visual Map数据库所用相机的内部参数矩阵K1,并读取待定位用户的相机内部参数矩阵K2。相机内部参数矩阵K由公式(4)给出:
>
其中,f为相机焦距,ku,kv表示相机的像素点尺寸,u0,v0表示图像的尺寸即图像坐标系中u轴和v轴所包含像素点的个数,θ表示图像坐标系中u轴和v轴之间的夹角,如图4所示。在此基础上,由公式(5)求得本质矩阵E
Ε=K2TFK1 (5)
步骤三、由于步骤二计算出的本质矩阵E包含了用户拍照位置与数据库中匹配图像所处位置之间的旋转矩阵R和转移向量t,如公式(6)所示,
E=[t]×R (2)
其中,[]×表示反对称矩阵,如公式(7)所示,
>
从而可以通过本质矩阵E求出R和t;
在步骤三中求出的转移向量t是以用户拍照位置为参考系得出的,此步将其转换至世界坐标系中,如公式(8)所示,
tw=-Rr-1R-1t (8)
其中:tw表示在规定的世界坐标系中用户拍照位置与匹配图像位置之间的方向向量,Rr-1表示匹配图像在被采集时相机的旋转矩阵。
步骤五、已知世界坐标系中两幅图像的方向向量及其中一个图像(这里指匹配图像)的二维位置坐标(Xd,Yd),可确定一条过匹配图像的直线,如公式(9)所示,
>
其中,tw是步骤四得出的转移向量,是一个3×1的列向量,tw(2)代表tw第二行的元素,同理tw(1)代表tw第一行的元素;
步骤六、将粗匹配得到的4帧图像分别和用户上传图像按照上述步骤求出4条直线,该4条直线存在若干交点,采用公式(10)完成最优点即定位结果的确定,
>
其中,Ni表示第i个匹配图像与用户提供图像的匹配点数,di(x,y)表示选定的交点到第i个匹配图像所做直线的距离,如公式(11)表示:
>
其中,ai=t(2),bi=-t(1),ci=-t(2)xi+t(1)yi,xi和yi表示第i幅匹配图像对应的坐标。
从本质矩阵E恢复旋转矩阵R和转移矩阵t的方法,它包括以下步骤:
步骤一、将3×3阶的本质矩阵E分解为E=[ea eb ec]的形式,其中ea,eb,ec为3×1阶列向量;对ea,eb,ec三个列向量两两求外积得ea×eb,ea×ec和eb×ec,并选出其中幅值最大的一组,为便于一下步骤的执行,这里假设ea×eb结果的幅值最大;
步骤二、根据公式(12)和公式(13),分别计算出矩阵V=[va vb vc]以及矩阵U=[ua ub uc];
>
>
步骤三、构造矩阵D形式如下:
>
矩阵V和矩阵U,得出转移向量t如公式(15)所示,
t=[u13 u23 u33] (15)
其中u13表示矩阵U第1行第3列的元素,u23表示矩阵U第2行第3列的元素,u33表示矩阵U第3行第3列的元素。旋转矩阵R如公式(16)所示,
>
可以看出旋转矩阵R有两个取值Ra或Rb;
步骤四、构造矩阵Ha=[Ra|t],Hb=[Ra|-t],Hc=[Rb|t],Hd=[Ra|-t]。其中Ha=[Ra|t]表示3×3阶的旋转矩阵R和3×1阶的转移向量t合并成为4×4阶的向量Ha,如公式(17)所示,
>
Hb,Hc,Hd的构造方式同理。
步骤五、令向量P=[1 1 1 1]T,并计算L1=HaP,L2=HbP,L3=HcP,L4=HdP,当Li(i=1,2,3,4)满足条件(18)时,取Li对应的R和t作为最终的旋转矩阵R和转移向量t。
>
其中,Li是4×1阶的列向量,Li(3)和Li(4)分别表示向量Li的第3行第1列元 素和第4行第1列元素。
本发明在快速建立基于视频的Visual Map数据库的基础上,提出了相应的室内视觉定位方法。该方法主要是通过载有视频获取设备(手机)的平台在匀速直线过程中进行视频拍摄,并且通过对所获得的视频进行处理来记录视频中帧的坐标位置信息以及图像匹配信息。在线的定位阶段,系统将带定位用户上传的图片与基于视频的Visual Map数据库通过利用感知哈希算法计算而来的哈希值进行粗匹配,再通过获得的粗匹配帧与上传图片通过SURF算法和相应的对极几何算法来完成基于视觉的室内定位。
在实际应用中,将粗匹配帧和用户上传图像通过SURF算法进行匹配点计算时,会存在一些误匹配点。误匹配点的存在会导致室内定位的精度下降,因此,应用时需要利用RANSAC(RANdom SAmple Consensus)算法来剔除误匹配点,算法流程如图2所示,其中单应矩阵用来描述两个平面之间的二维投影变换关系,用两个像平面上的4对对应点即可求得单应矩阵,t和n0为设定的阈值,至少有n0个匹配点的实际位置坐标和由单应矩阵反算而来的位置坐标的欧氏距离小于t时,认为该单应矩阵是满足该对匹配图像的变换关系的,通过此种方法可以剔除掉不满足上述单应矩阵的误匹配点。
在实际环境中,载有视频获取设备(手机)的平台以一定速度在需要建立数据库的区域运动,设备终端通过摄像头来采集环境下的视频信息。根据运动开始的起点和终点,以及所获得的视频时间长度并结合室内定位系统的精度要求对相应的帧进行标记,标记其位置信息。然后通过感知哈希算法计算该帧的哈希值,并与该帧的位置坐标相对应,完成数据库的快速建立。
机译: 提供基于位置的服务的装置及其方法,可通过利用成员存储数据库中的成员商店的位置信息或通过与参考数据的数据库自动获得参考位置来消除单独的参考位置获得过程
机译: 基于该方法的电机变化预防系统及其数据库建立方法
机译: 基于当地生活信息的数据库商品订购系统及建立方法