首页 / 专利库 / 数学与统计 / 滤波反投影 / 姿态矩阵的计算方法及基于姿态矩阵的定位导航方法

姿态矩阵的计算方法及基于姿态矩阵的定位导航方法

阅读:425发布:2022-02-24

专利汇可以提供姿态矩阵的计算方法及基于姿态矩阵的定位导航方法专利检索,专利查询,专利分析的服务。并且本 发明 公开了一种 姿态 矩阵的计算方法及基于姿态矩阵的 定位 导航方法,其中姿态矩阵的计算方法可基于智能机 加速 度计 、智能机磁 力 计或者智能机Android系统函数中的getRotationMatrix函数。通过计算得到的姿态矩阵Rg的第1行是智能机x轴在局部 坐标系 下的单位矢量;第2行是智能机y轴在局部坐标系下的单位矢量;第3行是智能机z轴在局部坐标系下的单位矢量;其中局部坐标系是z轴沿重力指向地球外,x轴朝北y轴朝西的坐标系。运用姿态矩阵可以进行室内外导航、运动测量姿态控制、遥控、指向控制、视频图像纠正处理、基于图像的定位等。,下面是姿态矩阵的计算方法及基于姿态矩阵的定位导航方法专利的具体信息内容。

1.一种智能机姿态矩阵计算方法,其特征在于,包括以下步骤:
通过智能机加速度计检测三个值{vax’,vay’,vaz’}计算ax、ay和az:
或对{vax’,vay’,vaz’}进行滤波后得到{vax,vay,vaz},计算ax、ay和az:
其中Ra是加速度传感器相对于智能机的姿态转换矩阵;
通过智能机磁力计获取方位 的三角函数;或者方向传感器获取方位角
计算姿态矩阵
姿态矩阵Rg的第1行是智能机x轴在局部坐标系下的单位矢量;第2行是智能机y轴在局部坐标系下的单位矢量;第3行是智能机z轴在局部坐标系下的单位矢量;其中局部坐标系是z轴沿重力指向地球外,x轴朝北y轴朝西的坐标系;
其中
当az<0时,s=-1,az≥0时,s=1;
其中mx,my,mz是智能机磁力计检测出来的三个值{vmx,vmy,vmz},或{vmx,vmy,vmz}经过滤波得到的三个值;
若将 替换成
则算出的Rg是X轴朝东Y朝北坐标系下的姿态矩阵。
2.根据权利要求1所述的方法,其特征在于,若智能机中安装有方向传感器:则通过该智能机获取方位角 带入公式(1)计算姿态矩阵Rg,其中value[0]为方向传感器
的第一个值。
3.一种智能机姿态矩阵计算方法,其特征在于,该方法基于智能机支持Android系统,具体包括以下步骤:
获取智能机Android系统函数中的getRotationMatrix函数获取矩阵Rg纵东’,然后将Rg纵东’经过矩阵转置操作得到Rg纵东=(Rg纵东’)T,Rg纵东是X轴指向东Y轴指向北坐标系下的姿态矩阵;
计算局部坐标系下的姿态矩阵 姿态矩阵Rg的第1行是智能机x轴在
局部坐标系下的单位矢量;第2行是智能机y轴在局部坐标系下的单位矢量;第3行是智能机z轴在局部坐标系下的单位矢量;其中局部坐标系是z轴沿重力指向地球外,x轴朝北y轴朝西的坐标系;若智能机支持旋转矢量传感器,则通过智能机旋转矢量传感器输出的3个数据q1=values[0],q2=values[1],q3=values[2],计算 如果旋转矢量传
感器能输出4个数据,则q0=values[3];
再按以下公式计算Rg纵东矩阵
其中,Rg纵东是X轴指向东Y轴指向北坐标系下的姿态矩阵;
再采用公式 进一步得到局部坐标系下的姿态矩阵Rg。
4.一种基于智能机姿态矩阵的指向或导航方法,其特征在于,包括以下步骤:
1)定义智能机主方向或载体主方向相对于智能机自身的矢量单位p;
2)根据权利要求1-3中任一项所述的方法计算智能机当前姿态矩阵Rg;
3)计算p┴=RgTp,为智能机主方向或载体主方向相对于指北坐标系的矢量;
4)计算局部坐标系中的目标矢量vo=O-P,其中局部坐标系中智能机自身坐标为P,目标的坐标为O,则目标矢量vo=O-P;
5)计算矢量p┴与目标矢量vo之间夹角的余弦,或计算两个矢量之间的夹角;
6)若夹角的余弦或者两个矢量之间的夹角在预设范围内,则触发智能机执行预设关联事件。
5.一种2D导航方法,其特征在于,该2D导航方法应用了权利要求1的智能机姿态矩阵,具体包括以下步骤:
将智能机平放置,利用方向传感器的第一个值value[0]得出智能机主方向角矢量与智能机到目标矢量之间的夹角,或两者之间的点积;
实时计算智能机2维主矢量{cosφ,sinφ}与2维目标矢量vo=O-P示意图,O是局部坐标系中X,Y平面上目标的2维坐标,P是局部坐标系中X,Y平面上的智能机2维坐标;其中φ=value[0]+△φ,value[0]是方向传感器的第一个值,△φ是在地图平面上用户定义的主方向相对于智能机主方向之间的夹角;
若{cosφ,sinφ}与目标矢量vo之间的夹角小于预设值说明方向吻合,或者{cosφ,sinφ}与2维目标矢量vo点积除以|vo|的结果大于预设值,则说明方向吻合;
为便于用户交互,可在地图上将目标矢量vo箭头与智能机矢量{cosφ,sinφ}同时画出。
6.一种基于智能机姿态数据的视频影像实时纠正方法,其特征在于,包括以下步骤:
采用权利要求1-3中任一项所述的方法,获取智能机拍摄视频的每一对应的姿态矩阵Rg,根据R=△R·Rg得到智能机上的摄像头的局部坐标姿态矩阵R,其中△R是摄像头相对于智能机的转换矩阵;
将R矩阵分解为R=RτR_,计算得到矩阵Rτ;
其中,R_是预设期待输出图像的姿态矩阵,Rτ是变换矩阵;
将原始图像I经过H=K2RτTK-1的Homograph变换得到I’,
其中 是拍摄相机的内部参数矩阵,f是焦距的像素长度,(cx,cy)是相机
主点坐标,cx=w/2,cy=h/2,w、h是原始图像I的宽和高;
是纠正以后虚拟相机的内部参数矩阵,f2是纠正以后虚拟相机的焦
距的像素长度,(cx2,cy2)是纠正以后虚拟相机主点坐标。
7.一种基于姿态数据的智能机单像定位方法,其特征在于,包括以下步骤:
采集物方点,转化成局部坐标系坐标;
采用权利要求1-3中任一项所述的方法获取智能机的姿态矩阵Rg,根据R=△R·Rg得到智能机上摄像头的姿态矩阵R,△R是摄像头相对于智能机的转换矩阵;
拍摄一张图像,自动提取其中的多个特征点,通过匹配算法得到与物点对应的n对物像同名点;n个物方点的坐标是Xi=[Xix,Xiy,Xiz]T,i=1,…,n;对应n个像点坐标是[ui vi]T,i=1,…,n;
计算相机在局部坐标系下的坐标T=[Tx,Ty,Tz]T:
(1)特征点无错情况下
若确认多个特征点无错误,则采用数学模型解方程得到自身在局部坐标系下坐标Tx,Ty,Tz,
其中 (cx,cy)为智能机上摄像头的像素主点坐标;
进而得到相机位置T=[Tx,Ty,Tz]T;
(2)容错情况下
若不确认多个特征点是否全部正确,采用Ransac容错算法,通过共线方程模型随机选取两对点n=2,根据模型式(HH2)计算相机位置T,并通过共线方程zi[u’i v’i 1]T=KR(Xi-T)验证T,K为智能机上摄像头的内参矩阵,通过KR(Xi-T)算出的u’i,v’I与ui,vi之间的距离误差小于error像素认为是符合共线方程;选取符合共线方程点数最多的正确特征点集ζmax并计算ζmax对应的相机位置T*。
8.根据权利要求7所述的方法,其特征在于,其中单目多点容错Ransac算法流程如下:
1)从n个像点中随机挑选出2个距离足够大的像点,至少要大于容忍误差error的2倍;
2)挑选出来的2个像点与物点对应形成2对物象同名点,按式(HH2)计算智能机位置T;
3)用T验证所有n对物象同名点的共线方程对应关系,共线方程KR(Xi-T)算出的u’i,v’I与ui,vi之间的误差距离小于error像素认为是符合共线方程,统计符合共线方程的个数i_in,如果i_in数量超过前期的数量nmax则记录本组满足共线方程容忍误差数量最大的点集ζmax,并刷新nmax=i_in;
4)更新迭代次数k+1→k;
5)回到第1)步,直到满足ransac概率收敛条件(1-(nmax/n)2)k6)将前面搜索得到的最优内点集合ζmax搜集起来进行最后一次多点最小2乘计算,按公式(HH2)计算得到最终结果Tbest。
9.基于智能机姿态数据的单目单点定位方法,其特征在于,包括步骤:
假设智能机上的相机内部参数矩阵为:
fx,fy分别指相机内部参数中的水平和垂直焦距像素长,
被观察物体是一个直径=D大小的物体,
在智能机上成像的宽度是Δu,高度是Δv,
成像中心点像坐标(u,v),(cx,cy)是相机主点坐标;
采用权利要求1-3中任一项所述的方法获取智能机的姿态矩阵Rg,R=△RRg得到智能机上摄像头的姿态矩阵R,△R是摄像头相对于智能机的转换矩阵;
计算
(1)若已知智能机摄像头光心局部坐标系坐标是T,
单目估算出物体的局部坐标系下三维坐标X:
(2)若已知物体的局部坐标系下三维坐标X,计算相机坐标T
10.一种基于智能机姿态数据的相对定位方法,其特征在于,假设相机1,2之间有i对同名点u1i,v1i~u2i,v2i,其中i=1..n,其中n≥2;
相机2相对于相机1的姿态矩阵R=R2R1T;其中R1=△RRg1R2=△RRg2,Rg1,Rg2是智能机相机在拍摄的1,2两个地点测出来的姿态矩阵数据,△R是摄像头相对于智能机的转换矩阵;
已知相机1的内参矩阵 相机2的内参矩阵 其中(cxi,
cyi)是相机i的像素主点坐标,fi是相机i的焦距像素长,已知两相机之间的距离是Ld;计算相机2相对于相机1的位移矢量T;
方法具体包括如下步骤:
1)用权利要求1所述的方法计算智能机的姿态Rg1,Rg2,进一步计算2个智能机上各自相机姿态R1=△RRg1R2=△RRg2,得到相对姿态R=R2R1T
2)首先构建矩阵A
其中uji*=Ki-1ui=[uji*x uji*y uji*z]T,i=1,2;j=1..n;ujiR*=Ruji*=[ujiR*x ujiR*y ujiR*z]T;
3)如果确认n对点都是正确的,则求约束||t3x1||=1下Anx3t3x1=0的解或采用SVD分解得到Anx3=UnxnWnx3VT3x3,分解出来的V的最后1列的矢量,即对应于最小奇异值的特征矢量,即为t,T=-LdRTt得到结果,结束;否则继续进行步骤4);
4)设置迭代初值nmax=0,k=1;
5)随机挑选A矩阵中的2行,构建A2x3;
就是求约束||t2||=1下A2x3t2=0的解,或采用SVD分解得到A2x3=U2x2W2x3VT3x3,分解出来的V的最后1列的矢量即为t2;
6)将t2=[ttx tty ttz]T代入第j=1...n个点,采用式(AB)验证点j是否是内点,
(uj2*zuj1R*y-uj2*yuj1R*z)ttx+(uj2*xuj1R*z-uj2*zuj1R*x)tty+(uj2*yuj1R*x-uj2*xuj1R*y)ttz<ε(AB)其中ε表示最大容忍误差物方长度,相对于两相机之间的距离=1而言,
满足式(AB),则点j是内点,如果满足内点的数量nt超过最佳值nmax则ζt-->ζ,nt-->nmax;
7)如果(1-(nmax/n)2)k<0.00001,退出迭代进入步骤9);
8)迭代次数k增加1,回到步骤5)反复迭代;
9)最后采用最小二乘法针对最大内点集ζ重新计算一次最优t;
求约束||t3x1||=1下An’x3t3x1=0的解;其中n’=nmax;
或采用SVD分解得到An’x3=Un’xn’Wn’x3VT3x3;分解出来的V的最后1列矢量,即对应于最小奇异值的特征矢量,即为t;最终得到T=-LdRTt。
11.一种基于姿态矩阵的智能机3D遥控方法,其特征在于,包括以下步骤:
设计关于姿态矩阵Rg的n个函数f1(Rg),…,fn(Rg),实现智能机姿态的n自由度遥控;
首先用权利要求1-3中任一项所述的方法获取遥控智能机的姿态矩阵Rg,假设rij是Rg第i行j列的元素值;
然后按以下方法实现x方向,y方向,旋转三个自由度控制:
1)控制y值:y轴ry的z分量控制y方向上下移动
控制对象的屏幕y坐标Ym=(h/2)(1+kyr23)或者
其中h为屏幕高度,ky为某一灵敏系数,ky=0.01~1之间的某值;
2)控制x值:y轴ry的x,y分量控制x方向水平移动
初始时Xm=W/2,W是显示屏幕宽度;根据实时不停采集到的姿态矩阵R,不停修正控制对象的屏幕x坐标Xm,Xm不断减小Tkx(φ-φ’),其中φ=atan2(r22,r21);φ’是上次得到的φ值;kx为某一灵敏系数,kx=0.01~1之间的某值,T是两次采样时间间隔;在不停的修改过程中若Xm小于0则Xm等于0,若Xm大于W则Xm等于W;
3)控制旋转值:绕y轴ry旋转控制旋转
根据采集得到的R矩阵得到绕y轴ry旋转的角度弧度值τ=atan2(r13,r33)。
12.根据权利要求11所述的方法,其特征在于,如果智能机安装了陀螺仪,则采用以下方法连续获取姿态矩阵Rg:
第1步 计算Rg的初值
az>0,±和 取上半部分,其中ax,ay,az是当前加速度计的采样值,
当az≤0时,s=-1,az>0时,s=1;
将Rg转换成四元数q0,q1,q2,q3作为以下第2-7步迭代的初值;
第2步 设定exInt,eyInt,ezInt原始值为0,exInt=0,eyInt=0,ezInt=0;
第3步 根据接收到的重力加速度计数据ax,ay,az,
得到误差矢量{ex,ey,ez}并计算其累计值exInt,eyInt,ezInt;
先将矢量{ax,ay,az}替换成将其单位化以后的矢量
vx=2*(q1*q3-q0*q2);
vy=2*(q0*q1+q2*q3);
vz=q0*q0-q1*q1-q2*q2+q3*q3;
ex=(ay×vz-az×vy);
ey=(az×vx-ax×vz);
ez=(ax×vy-ay×vx);
计算误差累计值
exInt替换为exInt+ex×Ki;eyInt替换为eyInt+ey×Ki;ezInt替换为ezInt+ez×Ki;
其中Ki为一可调节的正系数,Ki在0.00001至0.5中任意选取;
第4步 根据误差矢量{ex,ey,ez}及其累计值纠正陀螺仪数据{gx0,gy0,gz0}
假设智能机读出当前的一组陀螺仪数据为{gx0,gy0,gz0},gx=gx0+Kp×ex+exInt;gy=gy0+Kp×ey+eyInt;gz=gz0+Kp×ez+ezInt;
其中Kp为一可调节的正系数,Kp在0.000001至20.0中任意选取;
第5步 根据陀螺仪数据gx,gy,gz修正四元数
随着不断接收到陀螺仪数据gx,gy,gz,对四元数按如下方式修正,halfT为修正周期,halfT=0.00001~-10.0*与上次循环的时间间隔
q0替换为q0+(-q1×gx-q2×gy–q3×gz)×halfT;
q1替换为q1+(q0×gx-q3×gy+q2×gz)×halfT;
q2替换为q2+(q3×gx+q0×gy-q1×gz)×halfT;
q3替换为q3+(-q2×gx+q1×gy+q0×gz)×halfT;
第6步 输出Rg矩阵和四元数
将四元数{q0,q1,q2,q3}单位化成 输出;
四元数转Rg矩阵公式如下
第7步 回到第3步继续接收陀螺仪运动数据更新姿态四元数q0~q3,在循环的过程中每次到第7步都能输出当前的Rg矩阵和四元数。
13.一种基于姿态数据的运动方向测定及导航方法,其特征在于,包括以下步骤:
步骤1.根据权利要求1-3中任一项所述的方法获取智能机的姿态矩阵Rg;
步骤2.测量局部坐标系下物体的运动加速度a┴,a┴的x分量代表往北移动的分量,a┴的y分量代表往西移动的分量;
步骤3.对运动加速度a┴积分一次,得到目标在指北坐标系下的移动速度v┴,积分两次,得到目标在指北坐标系下的位移s┴;
步骤4.为避免累积误差,若获取到其它精确的定位方法得到的定位值,则立即对目标位置进行纠正;
步骤5.回到步骤1进行下一轮的定位位置修正。
14.根据权利要求13所述的方法,其特征在于,步骤2中测量局部坐标系下物体的运动加速度a┴通过以下方法得到:
(1)若智能机中有线性加速度传感器,则利用线性加速度传感器得到加速度a,再通过T
公式a┴=Rga计算出为指北坐标系下智能机的加速度a┴;其中Rg是指北坐标系下的姿态矩阵;或者
(2)如果没有线性加速度传感器,测量智能机重力加速度矢量ag=[agx agy agz]T,通过公式a┴=RgTag-[0 0 g0]T计算得到,其中ag是重力加速度传感器的测量值,g0是重力加速度的传感器平均幅值,即重力加速度计在静止条件下测得的加速度矢量模的均值。
15.一种基于姿态数据的虚拟现实方向漫游控制方法,其特征在于,包括以下步骤:
1)根据漫游者的输入或者漫游者的自身位置设置局部坐标系中的初始坐标位置(ex,
ey,ez);
2)采用权利要求1-3中任一项所述的方法得到智能机的姿态矩阵Rg,R=△RRg得到智能机显示屏的姿态矩阵R,△R是智能机显示屏相对于智能机的转换矩阵;
3)获取智能机漫游者手指在屏幕本体上的滑动数据;
4)在滑动数据是漫游者单指相对于智能机屏幕本体滑动矢量△X,△Y的情况下,如果|r33|>|r13|且|r33|>|r23|,其中rij是R矩阵的i行j列元素值,则单指滑动后,在局部坐标系中的定位坐标改正数(vx,vy),vx=ΔXr11+ΔYr21,vy=ΔXr12+ΔYr22;否则:
5)在滑动数据是漫游者双指做拉开或合拢操作所获得的情况下,则得到拉开和合拢之前双指之间的屏幕距离,以及拉开和合拢之后双指之间的屏幕距离;
6)根据步骤4)和5)中得到的数据修正漫游者在局部坐标系中的坐标位置(ex,ey,ez),并根据修正后的坐标位置显示局部坐标系中的三维场景。
16.一种基于姿态数据的视频图像投影到地图的方法,其特征在于,包括以下步骤:
采用权利要求1-3中任一项所述的方法得到智能机的姿态矩阵R=△RRg,△R是智能机摄像头相对于智能机的转换矩阵;
根据GPS测得拍摄相机在局部坐标系中的坐标为T,此时相机或摄像头拍摄下图像帧I;
将图像帧I经过Homograph变换Hmap=[K[r1r2-RT]]-1=[r1r2-RT]-1K-1得到Imap,Imap是视频图像映射到地图上的正射影像,其中r1,r2分别是R矩阵的第1列和第2列,K是智能机上的相机内部参数矩阵, fx,fy分别指相机内部参数中的水平和垂直焦距像
素长,cx,cy是相机主点坐标。

说明书全文

姿态矩阵的计算方法及基于姿态矩阵的定位导航方法

技术领域

[0001] 本发明涉及信息技术领域,尤其涉及一种姿态矩阵的计算方法及基于姿态矩阵的定位导航方法。

背景技术

[0002] 地理信息位置服务一直只强调空间定位和空间距离,却忽视了一个非常重要的数据和概念——姿态,实际上用户更关心目的地或目标相对于自身的方向,没有姿态的位置
服务是不完整的位置服务。比如一款的士打车软件,司机在抢单的时候如果只考虑距离,就
可能选择位于自身后方的乘客,由于车道不能逆行,导致司机无法接到乘客,乘客也无法乘
坐的士。作战的时候如果只知道敌人在接近而不知道敌人从哪个方向接近,这必然会导致
混乱和恐慌。因此智能机姿态的测定能实现一种真正意义上的位置服务,使得基于智能机
姿态的位置服务成为可能,具有非常重要的意义,并且必将形成一种新的数据新标准而被
广泛应用。
[0003] 姿态传感器的应用涉及方方面面,在很多领域都需要用到智能机自身姿态的信息,如影像、视频纠正、单目定位,3D遥控、室内导航、导弹制导。传统的姿态测量非常笨重和昂贵,一般安装在大型飞机,车船上,主要用于航天军事领域。近年来随着传感器技术的提
高,各种廉价、轻小型号的用于姿态测定的传感器得以安装在小型智能机上,这为智能机姿
态传感数据新标准的建立和广泛应用创造了硬件条件。
[0004] 一旦这些传感器数据通过数据融合处理得到智能机姿态数据之后就能实现各种重要的应用。表示姿态的传感数据用得最多、最传统的是航位俯仰角和翻滚角,主要用
于无人机姿态表述和地面移动测量系统MMS,但是这样表示缺点很多:
[0005] (1)首先需要用大量三角函数重构姿态矩阵,导致计算速度慢;
[0006] (2)三个角度相对于坐标系的转角不统一;
[0007] (3)三个角度的转换顺序没有一个统一的标准,不同导航设备上的三个角的顺序定义是不一样的,没有统一的标准,导致针对不同导航设备的姿态数据软件不能统一接口
和通用共享,因此缺少统一的姿态数据标准极大地阻碍了导航技术的发展。
[0008] 有些软件内部采用的定位算法不是基于图像的,在无GPS和wifi环境下软件是不能正常定位的,软件中的摄像头扫描界面效果给人一种图像识别定位的感觉。传统的图像
定位方法是不知道姿态数据的,这样就要求至少需要三对以上的物像同名点对应关系才能
进行定位计算,事实上三对同名点除了进行定位还要计算姿态,因此得到的结果很不稳定,
很不准确,特别是在三点位一条直线或者三点之间距离很小都会出现很不稳定,不精确的
问题,原因就是这三点除了进行定位计算以外还要负担姿态运算。
[0009] 本发明中提到的智能机姿态数据的各个方面潜在应用,包括姿态指向、视频(图像)纠正、3D遥控,3D导航、目标叠加,智能机视频与地图影像相互之间的信息叠加,目前还
没有在轻便廉价的智能机领域得到应用。

发明内容

[0010] 本发明要解决的技术问题在于针对现有技术中的上述缺陷,提供一种姿态矩阵的计算方法及基于姿态矩阵的定位导航方法。
[0011] 本发明解决其技术问题所采用的技术方案是:
[0012] 提供一种智能机姿态矩阵计算方法,包括以下步骤:
[0013] 通过智能机加速度计检测三个值{vax’,vay’,vaz’}计算ax、ay和az:
[0014]
[0015] 或对{vax’,vay’,vaz’}进行滤波后得到{vax,vay,vaz},计算ax、ay和az:
[0016] 其中Ra是加速度传感器相对于智能机的姿态转换矩阵;
[0017] 通过智能机磁力计获取方位角 的三角函数;或者方向传感器获取方位角
[0018] 计算姿态矩阵
[0019] 姿态矩阵Rg的第1行是智能机x轴在局部坐标系下的单位矢量;第2行是智能机y轴在局部坐标系下的单位矢量;第3行是智能机z轴在局部坐标系下的单位矢量;其中局部坐
标系是z轴沿重力指向地球外,x轴朝北y轴朝西的坐标系;
[0020] 其中
[0021]
[0022] 当az<0时,s=-1,az≥0时,s=1;
[0023]
[0024] 其中mx,my,mz是智能机磁力计检测出来的三个值{vmx,vmy,vmz},或{vmx,vmy,vmz}经过滤波得到的三个值。
[0025] 本发明还提供一种智能机姿态矩阵计算方法,该方法基于智能机支持Android系统,具体包括以下步骤:
[0026] 获取智能机Android系统函数中的getRotationMatrix函数获取矩阵Rg纵东’,然后将Rg纵东’经过矩阵转置操作得到Rg纵东=(Rg纵东’)T,Rg纵东是X轴指向东Y轴指向北坐标系下的姿态矩阵;
[0027] 计算局部坐标系下的姿态矩阵 姿态矩阵Rg的第1行是智能机x轴在局部坐标系下的单位矢量;第2行是智能机y轴在局部坐标系下的单位矢量;第3行是智
能机z轴在局部坐标系下的单位矢量;其中局部坐标系是z轴沿重力指向地球外,x轴朝北y
轴朝西的坐标系。
[0028] 本发明还提供一种基于智能机姿态矩阵的指向或导航方法,包括以下步骤:
[0029] 1)定义智能机主方向或载体主方向相对于智能机自身的矢量单位p;
[0030] 2)根据权利要求1-4中任一项所述的方法计算智能机当前姿态矩阵Rg;
[0031] 3)计算p┴=RgTp,为智能机主方向或载体主方向相对于指北坐标系的矢量;
[0032] 4)计算局部坐标系中的目标矢量vo=O-P,其中局部坐标系中智能机自身坐标为P,目标的坐标为O,则目标矢量vo=O-P;
[0033] 5)计算矢量p┴与目标矢量vo之间夹角的余弦,或计算两个矢量之间的夹角;
[0034] 6)若夹角的余弦或者两个矢量之间的夹角在预设范围内,则触发智能机执行预设关联事件。
[0035] 本发明还提供一种基于智能机姿态矩阵的2D导航方法,包括以下步骤:
[0036] 将智能机平放置,利用方向传感器的第一个值value[0]得出主方向角矢量与智能机到目标矢量之间的夹角,或两者之间的点积;
[0037] 实时计算智能机2维主矢量{cosφ,sinφ}与2维目标矢量vo=O-P示意图,O是局部坐标系中X,Y平面上目标的2维坐标,P是局部坐标系中X,Y平面上的智能机2维坐标;其中
φ=value[0]+△φ,value[0]是方向传感器的第一个值,△φ是在地图平面上用户定义的
主方向相对于智能机主方向之间的夹角;
[0038] 若{cosφ,sinφ}与目标矢量vo之间的夹角小于预设值说明方向吻合,或者{cosφ,sinφ}与2目标矢量vo点积除以|vo|的结果大于预设值,则说明方向吻合。
[0039] 本发明还提供一种基于智能机姿态数据的视频影像实时纠正方法,其特征在于,包括以下步骤:
[0040] 采用上文所述的方法,获取智能机拍摄视频的每一对应的姿态矩阵Rg,根据R=△R·Rg得到智能机上的摄像头的局部坐标姿态矩阵R,其中△R是摄像头相对于智能机的
转换矩阵;
[0041] 将R矩阵分解为R=RτR_,计算得到矩阵Rτ;
[0042] 其中,R_是预设期待输出图像的姿态矩阵,Rτ是变换矩阵;
[0043] 将原始图像I经过H=K2RτTK-1的Homograph变换得到I’,
[0044] 其中 是拍摄相机的内部参数矩阵,f是焦距的像素长度,(cx,cy)是相机主点坐标,cx=w/2,cy=h/2,w、h是原始图像I的宽和高;
[0045] 是纠正以后虚拟相机的内部参数矩阵,f2是纠正以后虚拟相机的焦距的像素长度,(cx2,cy2)是纠正以后虚拟相机主点坐标。
[0046] 本发明还提供一种基于姿态数据的智能机单像定位方法,包括以下步骤:
[0047] 搜集采集物方点,转化成局部坐标系坐标;
[0048] 采用权利要求上述述的方法获取智能机的姿态矩阵Rg,根据R=△R·Rg得到智能机上摄像头的姿态矩阵R,△R是摄像头相对于智能机的转换矩阵;
[0049] 拍摄一张图像,自动提取其中的多个特征点,通过匹配算法得到与物点对应的n对物像同名点;n个物方点的坐标是Xi=[Xix,Xiy,Xiz]T i=1,…,n;对应n个像点坐标是[ui 
vi]Ti=1,…,n;
[0050] 计算相机在局部坐标系下的坐标T=[Tx,Ty,Tz]T:
[0051] (1)特征点无错情况下
[0052] 若确认多个特征点无错误,则采用数学模型解方程得到自身在局部坐标系下坐标Tx,Ty,Tz,
[0053]
[0054] 其中
[0055] 进而得到相机位置T=[Tx,Ty,Tz]T;
[0056] (2)容错情况下
[0057] 若不确认多个特征点是否全部正确,采用Ransac容错算法,通过共线方程模型随机选取两对点n=2,根据模型式(HH2)计算相机位置T,并通过共线方程zi[u’i v’i 1]T=KR
(Xi-T)验证T,通过KR(Xi-T)算出的u’i,v’I与ui,vi之间的距离误差小于error像素认为是符
合共线方程;选取符合共线方程点数最多的正确特征点集ζmax并计算ζmax对应的相机位置
T*。
[0058] 本发明还提供一种基于智能机姿态数据的单目单点定位方法,包括步骤:
[0059] 假设智能机上的相机内部参数矩阵为:
[0060]
[0061] fx,fy分别指相机内部参数中的水平和垂直焦距像素长,
[0062] 被观察物体是一个直径=D大小的物体,
[0063] 在智能机上成像的宽度是Δu,高度是Δv,
[0064] 成像中心点像坐标(u,v),(cx,cy)是相机主点坐标;
[0065] 采用权利要求1-4方法获取智能机的姿态矩阵Rg,R=△RRg得到智能机上摄像头的姿态矩阵R,△R是摄像头相对于智能机的转换矩阵;
[0066] 计算
[0067] (1)若已知智能机摄像头光心局部坐标系坐标是T,
[0068] 单目估算出物体的局部坐标系下三维坐标X:
[0069]
[0070] (2)若已知物体的局部坐标系下三维坐标X,计算相机坐标T
[0071]
[0072] 本发明还提供一种基于智能机姿态数据的相对定位方法,假设相机1,2之间有i=1..n≥2对同名点u1i,v1i~u2i,v2i,
[0073] 相机2相对于相机1的姿态矩阵R=R2R1T;其中R1=△RRg1 R2=△RRg2,Rg1,Rg2是智能机相机在拍摄的1,2两个地点测出来的姿态矩阵数据,△R是摄像头相对于智能机的转换
矩阵;已知相机1的内参矩阵 相机2的内参矩阵 其中
(cxi,cyi)是相机i的像素主点坐标,fi是相机i的焦距像素长,已知两相机之间的距离是L;计
算相机2相对于相机1的位移矢量T;
[0074] 方法具体包括如下步骤:
[0075] 1)用权利要求1所述的方法计算智能机的姿态Rg1,Rg2,进一步计算2个智能机上各自相机姿态R1=△RRg1 R2=△RRg2,得到相对姿态R=R2R1T
[0076] 2)首先构建矩阵A
[0077]
[0078] 其中uji*=Ki-1ui=[uji*x uji*y uji*z]T,i=1,2;j=1..n;ujiR*=Ruji*=[ujiR*x ujiR*y ujiR*z]T;
[0079] 3)如果确认n对点都是正确的,则求约束||t3x1||=1下Anx3t3x1=0的解或采用SVD分解得到Anx3=UnxnWnx3VT3x3,分解出来的V的最后1列的矢量,即对应于最小奇异值的特征矢
量,即为t,T=-LRTt得到结果,结束;否则继续进行步骤4);
[0080] 4)设置迭代初值nmax=0,k=1;
[0081] 5)随机挑选A矩阵中的2行,构建A2x3;
[0082] 就是求约束||t2||=1下A2x3t2=0的解,或采用SVD分解得到A2x3=U2x2W2x3VT3x3,
[0083] 分解出来的V的最后1列的矢量即为t2;
[0084] 6)将t2=[ttx tty ttz]T代入第j=1...n个点,采用式(AB)验证点j是否是内点,
[0085] (uj2*zuj1R*y-uj2*yuj1R*z)ttx+(uj2*xuj1R*z-uj2*zuj1R*x)tty+(uj2*yuj1R*x-uj2*xuj1R*y)ttz<ε    (AB)[0086] 其中ε表示最大容忍误差物方长度,相对于两相机之间的距离=1而言,
[0087] 满足式(AB),则点j是内点,如果满足内点的数量nt超过最佳值nmax则ζt-->ζ,nt-->nmax;
[0088] 7)如果(1-(nmax/n)2)k<0.00001,退出迭代进入步骤9);
[0089] 8)迭代次数k增加1,回到步骤5)反复迭代;
[0090] 9)最后采用最小二乘法针对最大内点集ζ重新计算一次最优t;
[0091] 求约束||t3x1||=1下An’x3t3x1=0的解;其中n’=nmax;
[0092] 或采用SVD分解得到An’x3=Un’xn’Wn’x3VT3x3;分解出来的V的最后1列矢量,即对应于最小奇异值的特征矢量,即为t;最终得到T=-LRTt。
[0093] 本发明还提供一种基于姿态矩阵的智能机3D遥控方法,包括以下步骤:
[0094] 首先上述方法获取遥控智能机的姿态矩阵Rg,假设rij是Rg第i行j列的元素值;
[0095] 然后按以下方法实现x方向,y方向,旋转三个自由度控制:
[0096] 1)控制y值:y轴ry的z分量控制上下移动
[0097] 控制对象的屏幕y坐标Ym=(h/2)(1+kyr23)或者
[0098] 其中h为屏幕高度,ky为某一灵敏系数,ky=0.01~1之间的某值;
[0099] 2)控制x值:y轴ry的x,y分量控制水平移动
[0100] 初始时Xm=W/2,W是显示屏幕宽度;根据实时不停采集到的姿态矩阵R,不停修正控制对象的屏幕x坐标Xm,Xm不断减小Tkx(φ-φ’),其中φ=atan2(r22,r21);φ’是上次得到的φ值;kx为某一灵敏系数,kx=0.01~1之间的某值,T是两次采样时间间隔;在不停的修
改过程中若Xm小于0则Xm等于0,若Xm大于W则Xm等于W;
[0101] 3)控制旋转值:绕y轴ry旋转控制旋转
[0102] 根据采集得到的R矩阵得到绕y轴ry旋转的角度弧度值τ=atan2(r13,r33)。
[0103] 构造通过n个关于Rg的函数实现智能机控制多自由度控制,智能机与被控制设备通过有线或无线机制进行数据通信,实现如鼠标或投影仪指针的移动和旋转控制,智能灯
的红绿蓝三分量控制,无人机的空中飞行的3轴姿态控制。
[0104] 本发明还提供一种基于姿态数据的运动方向测定及导航方法,其特征在于,包括以下步骤:
[0105] 步骤1.根据上述方法获取智能机的姿态矩阵Rg;
[0106] 步骤2.测量局部坐标系下物体的运动加速度a┴,a┴的x分量代表往北移动的分量,a┴的y分量代表往西移动的分量;
[0107] 步骤3.对运动加速度a┴积分一次,得到目标在指北坐标系下的移动速度v┴,积分两次,得到目标在指北坐标系下的位移s┴;
[0108] 步骤4.为避免累积误差,若获取到其它精确的定位方法得到的定位值,则立即对目标位置进行纠正;
[0109] 步骤5.回到步骤1进行下一轮的定位位置修正。
[0110] 本发明还提供一种基于姿态数据的虚拟现实方向漫游控制方法,包括以下步骤:
[0111] 1)根据漫游者的输入或者漫游者的自身位置设置局部坐标系中的初始坐标位置(ex,ey,ez);
[0112] 2)采用上述方法得到智能机的姿态矩阵Rg,R=△RRg得到智能机显示屏的姿态矩阵R,△R是智能机显示屏相对于智能机的转换矩阵;
[0113] 3)获取智能机漫游者手指在屏幕本体上的滑动数据;
[0114] 4)在滑动数据是漫游者单指相对于智能机屏幕本体滑动矢量△X,△Y的情况下,如果|r33|>|r13|且|r33|>|r23|,其中rij是R矩阵的i行j列元素值,则单指滑动后,在局部坐
标系中的定位坐标改正数(vx,vy),vx=ΔXr11+ΔYr21 vy=ΔXr12+ΔYr22;否则:
[0115]
[0116] 5)在滑动数据是漫游者双指做拉开或合拢操作所获得的情况下,则得到拉开和合拢之前双指之间的屏幕距离,以及拉开和合拢之后双指之间的屏幕距离;
[0117] 6)根据步骤4)和5)中得到的数据修正漫游者在局部坐标系中的坐标位置(ex,ey,ez),并根据修正后的坐标位置显示局部坐标系中的三维场景。
[0118] 本发明还提供了一种基于姿态数据的视频图像投影到地图的方法,包括以下步骤:
[0119] 采用权利要求1-4的方法得到智能机的姿态矩阵R=△RRg,△R是智能机摄像头相对于智能机的转换矩阵;
[0120] 根据GPS测得拍摄相机在局部坐标系中的坐标为T,此时相机或摄像头拍摄下图像帧I;
[0121] 将图像帧I经过Homograph变换Hmap=[K[r1 r2 -RT]]-1=[r1 r2 -RT]-1K-1得到Imap,Imap是视频图像映射到地图上的正射影像,其中r1 r2分别是R矩阵的第1列和第2列,K是智能机上的相机内部参数矩阵, fx,fy分别指相机内部参数中的水平和
垂直焦距像素长,cx,cy)是相机主点坐标。
[0122] 本发明产生的有益效果是:实时快速测量便携智能机姿态,帮助位置服务用户更好的了解自身与其它移动用户之间的相互位置关系,触发智能机与周边目标之间的某一关
联事件,如指向该目标,选中该目标,击中该目标、通知该目标、联络该目标等,实现基于智
能机姿态的导航导向以及各种虚拟现实,增强现实应用;视频图像的每一幅画面有了对应
的姿态就可以作水平、垂直纠正处理,在颠簸的飞机、船只、用户倾斜手持状态下拍摄的视
频经处理能得到正放的稳定图像;可以进行摄影测量双点相对定位、单像定位、单点定位等
处理(以前由于缺乏姿态数据需要双目3点以上才能实现,而且精度不高)。本发明使得以上
技术在各种廉价、轻型的智能机上得以广泛应用。
附图说明
[0123] 下面将结合附图及实施例对本发明作进一步说明,附图中:
[0124] 图1是本发明实施例位置服务中同时符合位置和方向的目标位示意图;
[0125] 图2是本发明实施例的单像双点定位示意图。

具体实施方式

[0126] 为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不
用于限定本发明。
[0127] 由于传统的三角度表示法存在各种缺陷,本发明提出采用以下2种姿态描述方法解决与姿态有关的各种问题。
[0128] 1.姿态矩阵表述法
[0129] 姿态矩阵表述法的优点是不会像三角度法那样由于角度顺序不统一而引起歧义,具有很好的几何描述特性和实际物理意义,比如姿态矩阵的三行表示在北坐标系下x,y,z
三个轴的三个单位矢量,而且也非常便于各种坐标转换计算,很多情况下避免了繁琐耗时
的三角函数运算,大大提高了运算效率。
[0130] 2.4元数表示法
[0131] 姿态矩阵需要3x3=9个浮点数表示一个姿态,由于姿态矩阵中的9个元素构建的是一个单位正交矩阵,内部存在很大耦合,所以数据量冗余大,不便于高速传输和存储在有
限的空间,因此可进一步采用4元数表示法。
[0132] 采用4元数压缩则克服了各方面困难,不仅传输效率高,且可直接通过导航算法获取,4元数域的矩阵乘法也很方便。4元数还有一个优点就是在定姿算法中具有很好的可导
性,通过导函数计算方便地实现了姿态的动态优化,这样定姿算法中得到的4元数可直接用
来保存为数据协议的必要内容。
[0133] 本发明中所有的方法应用都是基于描述智能机姿态的姿态矩阵或是4元数的,而姿态矩阵可以用四元数紧凑的描述出来。因此智能机姿态传感数据需要建立统一的数据,
以便实现与其相关的各种应用。
[0134] 本发明所说的姿态数据是指智能机传感器通过数据融合得到的智能机相对于局部坐标系下的姿态矩阵,或者姿态矩阵对应的四元数。建立智能机姿态传感数据标准使得
各领域与姿态相关的应用都可以通过该数据标准进行抽象,应用主要分为以下几大类:
[0135] 1.室内外导航,运动测量
[0136] 2.姿态控制,遥控,指向控制
[0137] 3.视频图像纠正处理
[0138] 4.基于图像的定位
[0139] 5.视频目标叠加及地图叠加。
[0140] 这里所说的智能机的概念包括一切含显示屏和姿态传感的智能设备,如手机,平板电脑,笔记本电脑,带姿态传感和显示屏的摄像头,相机,智能显示器,智能电视机显示
屏、以及各种可穿戴设备。
[0141] 本发明基于智能机姿态数据的目标方向选择
[0142] 获取智能机姿态矩阵Rg
[0143] 本发明所说的姿态矩阵Rg描述了智能机的姿态,姿态矩阵Rg的第1行是智能机x轴在局部坐标系下的单位矢量;第2行是智能机y轴在局部坐标系下的单位矢量;第3行是智能
机z轴在局部坐标系下的单位矢量;其中局部坐标系是z轴沿重力指向地球外,x轴朝北y轴
朝西的坐标系。Rg的获取方法如下:
[0144] 方法1
[0145] 计算姿态矩阵
[0146] 其中
[0147]
[0148] ax,ay,az是智能机加速度计检测出来的三个值{vax,vay,vaz},或{vax,vay,vaz}经过滤波得到的三个值ax,ay,az。
[0149] 当az<0时,s=-1,az≥0时,s=1;
[0150]
[0151] mx,my,mz是智能机磁力计检测出来的三个值{vmx,vmy,vmz},或{vmx,vmy,vmz}经过滤波得到的三个值mx,my,mz。
[0152] 或者采用 带入公式(1)计算Rg
[0153] 如果定义
[0154]
[0155] 带入公式(1)得到的正好是Rg纵东,即X轴指向东Y轴指向北坐标系下的姿态矩阵。
[0156] 方法2
[0157] 若智能机使用了Android系统,并支持Android系统函数中的getRotationMatrix功能,则可采用:getRotationMatrix函数获取矩阵Rg纵东’,然后将Rg纵东’经过矩阵转置操作(Rg纵东’)T得到Rg纵东=(Rg纵东’)T。
[0158] Rg纵东是X轴指向东Y轴指向北坐标系下的姿态矩阵,可将Rg纵东转换成X轴指北,Y轴指西的局部坐标系Rg。进一步得到局部坐标系下的姿态矩阵
[0159]
[0160] 方法3,通过智能机旋转矢量传感器输出的3个数据q1=values[0],q2=values[1],q3=values[2],计算 若旋转矢量传感器有第4个输出则可直接计
算q0=values[3],再按以下公式计算Rg纵东矩阵
[0161]
[0162] 再采用公式(2)进一步得到局部坐标系下的姿态矩阵Rg。
[0163] 计算姿态矢量并用于指向判断
[0164] 步骤简述:
[0165] 1.定义智能机主方向或载体主方向相对于智能机自身的矢量单位p
[0166] 2.采用上一节所述的方法获取智能机当前姿态矩阵Rg
[0167] 3.计算p┴=RgTp为智能机主方向或载体主方向相对于指北坐标系的矢量。
[0168] 4.计算局部坐标系中的目标矢量vo=O-P
[0169] 假设局部坐标系中智能机自身坐标为P,目标的坐标为O,则目标矢量vo=O-P;
[0170] 5.计算矢量p┴与目标矢量vo之间夹角的余弦,或计算两个矢量之间的夹角。
[0171] 如果夹角的余弦很大,接近1,或者夹角偏差的绝对值|dφ|很小则触发智能机与该目标O之间的某一关联事件。如指向该目标,选中该目标,击中该目标、通知该目标、联络
该目标等。
[0172] 可通过两矢量的点积除以|vo|得到夹角dφ的余弦,
[0173] cos(dφ)=(p┴点积vo)/|vo|
[0174] 如果该余弦cos(dφ)>cos(φa)则该目标方向选择事件可触发。
[0175] 6.在需要与用户的可视化交互情况下,在指北坐标系中实时绘制目标,智能机,和矢量p┴。
[0176] 计算局部坐标系中智能机主方向矢量与目标矢量之间夹角的方向余弦。根据余弦值大小判定夹角。并且在三维空间或2维空间中绘制出智能机主方向矢量与目标矢量之间
方向关系便于人机交互
[0177] 具体应用方式有以下几种类型:
[0178] 方法1姿态指向
[0179] 用户通过操作智能机所指主方向所形成的矢量与目标矢量之间的夹角保持较小角度,或夹角的余弦>cos(φa),则将触发某一事件。
[0180] 用户用智能机主方向指向某一目标,如果目标矢量与主方向矢量之间的夹角的余弦>cos(φa)可执行与该目标相关联的事件,如选中该目标,击中该目标、通知该目标、联络
该目标等。Φa为最大容忍偏差角。
[0181] 在三维空间中实时绘制智能机姿态矢量rz与目标矢量vo之间的关系示意图,以便于实现用户的交互控制。
[0182] 实施方式:
[0183] 假设智能机头部定义为主方向,头部相对于智能机自身坐标系的矢量是p={0,1,0}T
[0184] 那么p┴=RgTp={r21 r22 r23}T其中rij是R矩阵第i行j列的元素。
[0185] 假设智能机右侧定义为主方向,右侧相对于智能机自身坐标系的矢量是p={1,0,0}T
[0186] 那么p┴=RgTp={r11 r12 r13}T
[0187] 方法2导航服务
[0188] 将智能机与某一载体,如车船,固定起来,定义载体主方向相对于智能机自身的矢量p。
[0189] 在地图中实时绘制载体主方向矢量p┴=RTp与目标矢量vo之间的关系示意图。
[0190] 计算夹角的余弦cos(dφ)>cos(φa)说明方向吻合,再结合距离约束可触发某一事件。
[0191] 本方法也可以与运动方向形成的轨迹矢量结合智能机主方向进行融合,进而计算与目标矢量之间的夹角。
[0192] 实施方式:
[0193] 摄像头拍摄方向朝前固定安装在车船上,摄像头拍摄方向相对于智能机自身坐标系的矢量是p={0,0,-1}T
[0194] 那么p┴=RgTp={-r31-r32-r33}T其中rij是Rg矩阵第i行j列的元素。
[0195] p┴与vo之间的夹角的余弦=(p┴点积vo)/|vo|
[0196] 如图1所示,位置服务中同时符合位置和方向的目标位于图中的阴影区。
[0197] 方法3 2D导航服务
[0198] 这种方法要求智能机水平放置,利用方向传感器的第一个值value[0]得出主方向角矢量与智能机到目标矢量之间的夹角。或两者之间的点积。这里可以用局部坐标系中忽
略Z轴的2维坐标,也可以直接用经纬度建立的2维坐标系。
[0199] 实时计算智能机2维主矢量{cosφ,sinφ}与2维目标矢量vo=O‐P示意图。
[0200] 其中φ=value[0]+△φ value[0]是方向传感器的第一个值,△φ是在地图平面上,用户定义的主方向相对于智能机主方向之间夹角。
[0201] O是局部坐标系中X,Y平面上目标的2维坐标,P是局部坐标系中X,Y平面上的智能机2维坐标。
[0202] {cosφ,sinφ}与目标矢量vo之间的夹角<φa说明方向吻合。
[0203] 或者{cosφ,sinφ}与2目标矢量vo点积除以|vo|的结果>cosφa则说明方向吻合。
[0204] 实施方式:
[0205] 应用:导航,顺路方向的的士叫车抢单,司机将智能机固定在车上,智能机软件只可选择cos(dφ)>cos(φa)的乘客,选出来的都是顺路乘客。
[0206] 2D导航的具体实施方式:
[0207] 要求智能机水平放置,利用方向传感器的第一个值value[0]得出主方向角矢量与智能机到目标矢量之间的夹角,或两者之间的点积。
[0208] 计算2维地图上的目标矢量vo={vox,voy}的方位角φvo可调用反三角函数atan2(voy,vox)实现,计算φ角与φvo角形成的矢量在平面上的夹角
[0209] 实施方法,采用但不局限于以下方法:
[0210] φ角与φvo之间的夹角可以按以下方式计算:
[0211]
[0212] 一般采用2维点积的方式计算φ角与φvo之间的夹角余弦=({cosφ,sinφ}点积vo)/|vo|,若该余弦值>cos(φa)认定为方向一致。
[0213] 为便于用户交互控制,在地图上将目标矢量vo与智能机矢量{cosφ,sinφ}同时画出。特别是当目标不在地图视野范围内时,地图上智能机到目标连线与地图边框交点处
绘制方向为vo的箭头指向目标。
[0214] 基于智能机姿态数据的视频影像实时纠正
[0215] 一般方法步骤如下:
[0216] 1.采用权利要求1方法获取智能机拍摄视频的每一帧对应的姿态矩阵Rg。
[0217] 2.R=△RRg得到智能机上的摄像头的局部坐标姿态矩阵R,其中△R是摄像头相对于智能机的转换矩阵。
[0218] 3.根据实际应用需求R矩阵分解为R=RτR_从而得到矩阵Rτ,计算矩阵Rτ的方法有三类
[0219] (a)根据实际应用中R_的特性直接得到,再通过Rτ=R R_T得出Rτ
[0220] 详见下文中的标准对地坐标系下的影像正射纠正
[0221] (b)根据实际应用中Rτ和R_的特性列方程Rτ=R R_T或R=RτR_求解得到Rτ中的几个重要元素的值,从而构建Rτ。
[0222] 详见下文中的任意R矩阵的Z轴旋转分解出水平矩阵
[0223] (c)根据Rτ和R_的性质列方程Rτ=R R_T或R=RτR_求解得到R_中的几个重要元素的值,从而构建R_,最后通过Rτ=R R_T得出Rτ
[0224] 详见下文中的对地坐标系下的影像正射纠正
[0225] 4.对图像I经过H=K2RτTK-1的Homograph变换得到I’
[0226] 其中 是拍摄相机的内部参数矩阵,f是焦距的像素长度,cx,cy是相机主点坐标。对于理想相机cx,cy是图像的中心点,cx=w/2,cy=h/2,w,h是原始图像I的宽
和高。
[0227] 是纠正以后虚拟相机的内部参数矩阵,f2是纠正以后虚拟相机的焦距的像素长度,(cx2,cy2)是纠正以后虚拟相机主点坐标。
[0228] 注:
[0229] -对于理想相机(cx2,cy2)是纠正以后虚拟相机图像的中心点,cx2=H/2,cy2=H/2,W,H是图像纠正以后虚拟相机的宽高。
[0230] -通常f2选取与f相等,而W,H的大小根据实际应用需求选取,有时为避免纠正后图像出界而选取W>w H>h
[0231] -如果H=K2RτTK-1中的第三行元素是[0 0 1],那么Homograph透视变换可简化成仿射变换从而提高图像变换速度。
[0232] 下面具体给出前述三类计算矩阵Rτ的应用案例和方法
[0233] (a)标准对地坐标系下的影像正射纠正
[0234] 视频摄像机往下拍地面上的场景,但由于各种原因,视线不可能完全垂直于地面。为得到垂直于地面的图像,先通过以下方法计算Rτ
[0235] R=RτR_中的
[0236] 最后根据公式H=K2RτTK-1实时将原始视频帧影像纠正成垂直于地面拍摄的效果,这个变换效果是图像I┴始终是垂直于地面往下拍的效果,若姿态矩阵R是相对于局部指北
坐标系的,图像I┴的右侧始终指向北,下侧始终指东。垂直于地面的图像实际上可直接映射
地理信息系统地图平面上,因此本技术实现了从视频图像到地理信息系统地图平面上的
实时映射。(b)任意R矩阵的Z轴旋转分解出水平矩阵
[0237] 对于红外末制导导引头图像获取,或者在颠簸的车、船、飞机上安装有摄像头的视频捕获到视频帧图像的同时,将该帧对应的姿态数据保留并加以处理,保证载体获取的图
像始终是保持水平正方的,这样目标识别程序就不用考虑目标的旋转了,这会极大提高目
标识别的效率和准确性,也能使得用户获取的视频更稳定更准确。本方法涉及第(b)类计算
Rτ的方法如下:
[0238] 首先设
[0239] 由R_=RτTR列方程得到
[0240]
[0241] 针对矩阵第1行第3列元素等于0列方程
[0242] r13cosτ+r23sinτ=0
[0243] 再考虑到{cosτ,sinτ}是2维单位向量,解得
[0244]
[0245] 有两个解是正常的,因为旋转两个角度(还有一个相机底朝天,两者刚好相差180度)都能保证本体x轴保持水平于地面。因此必须保证本体y轴朝下,也就是R_的第2行第3列
元素值<0,即列约束不等式:
[0246] -r13sinτ+r23cosτ<0
[0247] 解得 代入上式得到
[0248] 另一个解不满足条件舍去。
[0249] 最后根据公式H=K2RτTK-1实时将原始视频帧影像纠正成水平于地平面拍摄的效果。
[0250] (c)对地坐标系下的影像正射纠正
[0251] 为得到的垂直纠正图像且跟随摄像头绕垂直于地面方向轴的旋转而旋转,采用如下方法:
[0252] 假设摄像头旋转了τ角,
[0253] R=RτR_中的
[0254] 列方程
[0255]
[0256] 解得: 或
[0257] (d)最终得到:
[0258] (e)
[0259] 最后根据公式H=K2RτTK‐1实时将原始视频帧影像纠正成垂直于地面拍摄的效果,这个变换效果是图像I┴会跟随摄像头绕垂直于地面方向轴的旋转而旋转。
[0260] 基于姿态数据的智能机单像定位方法
[0261] 假设相机或摄像机内参数据已知,f是焦距的像素长度,(cx,cy)是相机主点坐标。
[0262] 内参矩阵
[0263] 单像目标定位整体实施步骤如下:
[0264] 1.搜集采集物方点,转化成局部坐标系坐标,如指北为x轴,指西为y轴
[0265] 2.采用权利要求1方法获取智能机的姿态矩阵Rg,R=△RRg得到智能机上摄像头的姿态矩阵R。△R是摄像头相对于智能机的转换矩阵
[0266] 3.拍摄一张图像,自动提取其中的多个特征点,通过匹配算法得到与物点对应的n对物像同名点。
[0267] n个物方点的坐标是Xi=[Xix,Xiy,Xiz]T i=1,…,n
[0268] 对应n个像点坐标是[ui vi]T i=1,…,n
[0269] 4.分无错和容错2种情况计算相机在局部坐标系下的坐标T:
[0270] (1)若确认多个特征点无错误,则
[0271] 采用数学模型解方程得到自身在局部坐标系下坐标Tx,Ty,Tz
[0272]
[0273] 其中
[0274] 进而得到相机位置T。
[0275] (2)若不确认多个特征点是否全部正确,采用Ransac容错算法,通过共线方程模型随机选取两对点n=2,根据模型式(HH2)计算相机位置T,并通过共线方程zi[u’i v’i 1]T=
KR(Xi-T)验证T,
[0276] 通过KR(Xi-T)算出的u’i,v’I与ui,vi之间的误差距离小于error像素认为是符合共线方程。选取符合共线方程点数最多的正确特征点集ζmax并计算ζmax对应的相机位置T*。单
目多点容错RANSAC算法流程如下:
[0277] 1)从n个像点中随机挑选出2个距离足够大的像点,一般至少要大于容忍误差error的2倍;
[0278] 2)挑选出来的2个像点与物点对应形成2对物象同名点,按式(HH2)计算智能机位置T;
[0279] 3)用T验证所有n对物象同名点的共线方程对应关系,共线方程KR(Xi‐T)算出的u’i,v’I与ui,vi之间的误差距离小于error像素认为是符合共线方程,统计符合共线方程的
个数i_in,如果i_in数量超过前期的数量nmax则记录本组满足共线方程容忍误差数量最多
的正确特征点集ζmax,并刷新nmax=i_in;
[0280] 4)更新迭代次数k+1→k
[0281] 5)回到第1步,直到满足ransac概率收敛条件(1‐(nmax/n)2)k
[0282] 6)将前面搜索得到的正确特征点集ζmax搜集起来进行最后一次多点最小2乘计算,按公式(HH2)计算得到Tbest得到最终结果。
[0283] 5.如需进一步提高精度,可基于数学模型式(HH2)对正确特征点集ζmax中多点进行LM优化。以期望得到更精确的解。
[0284] LM优化中一般是固定所有物点坐标Xix,Xiy,Xiz,i=1,…,n优化相机的位置T和姿态R
[0285] 6.如需要得出目标的经纬度,可根据局部坐标系原点的经纬度将相机在局部坐标系下的坐标(Tx,Ty,Tz)转换成大地经纬度。
[0286] 说明:
[0287] 真正实现了基于场景图像的室内定位,用于商场室内定位,导航,基于位姿电子商务商铺广告发布。
[0288] 如图2所示为单像双点定位示意图
[0289] 基于智能机姿态数据的单目单点定位方法
[0290] 假设智能机上的相机内部参数矩阵为:
[0291]
[0292] fx,fy分别指相机内部参数中的水平和垂直焦距像素长,理想情况下应满足fx=fy
[0293] 被观察物体是一个直径=D大小的物体,
[0294] 在智能机上成像的宽度是Δu,高度是Δv,
[0295] 成像中心点像坐标u,v,
[0296] 采用上述方法获取智能机的姿态矩阵Rg,R=△RRg得到智能机上摄像头的姿态矩阵R。△R是摄像头相对于智能机的转换矩阵;
[0297] 以下分两种情况讨论:
[0298] (3)若已知智能机摄像头光心局部坐标系坐标是T,
[0299] 可单目估算出物体的局部坐标系下三维坐标:
[0300]
[0301] 其中
[0302] (4)反过来若已知物体的局部坐标系下三维坐标X,可以求相机坐标T
[0303]
[0304] 这种情况实现了相机的单目定位。
[0305] 这种单像单点定位方法同样也可以采用前述单像双点定位中的Ransac容错模式,只不过随机挑选2个像点改为随机挑选1个像点;数学模型由(HH2)改为由(HH8)得到相机坐
标。
[0306] 基于智能机姿态数据的相对定位算法
[0307] 假设相机1,2之间有i=1..n≥2对同名点u1i,v1i~u2i,v2i,前面所述方法计算智能机的姿态Rg1,Rg2,进一步计算2个智能机上各自相机姿态R1=△RRg1 R2=△RRg2△R是摄像
头相对于智能机的转换矩阵。
[0308] 相机2相对于相机1的姿态矩阵R=R2R1T。
[0309] 已知相机1的内参矩阵 相机2的内参矩阵 其中cxi,cyi是相机i的像素主点坐标,fi是相机i的焦距像素长。
[0310] 已知两相机之间的距离是L;
[0311] 可以计算相机2相对于相机1的位移矢量T。
[0312] 方法步骤如下:
[0313] 1.首先构建矩阵A
[0314]
[0315] 其中
[0316] uji*=Ki-1ui=[uji*x uji*y uji*z]T i=1,2 j=1..n
[0317] ujiR*=Ruji*=[ujiR*x ujiR*y ujiR*z]T
[0318] 2.如果确认n对点都是正确的,则
[0319] 求约束||t3x1||=1下Anx3t3x1=0的解
[0320] 或采用SVD分解得到Anx3=UnxnWnx3VT3x3,
[0321] 分解出来的V的最后1列的矢量,即对应于最小奇异值的特征矢量,即为t
[0322] T=-LRTt得到结果,结束
[0323] 否则继续进行以下步骤
[0324] 3.设置迭代初值nmax=0 k=1
[0325] 4.随机挑选A矩阵中的2行,构建A2x3
[0326] 就是求约束||t2||=1下A2x3t2=0的解
[0327] 或采用SVD分解得到A2x3=U2x2W2x3VT3x3,
[0328] 分解出来的V的最后1列的矢量即为t2
[0329] 5.将t2=[ttx tty ttz]T代入第j=1..n个点,采用式(AB)验证点j是否是内点,
[0330] (uj2*zuj1R*y-uj2*yuj1R*z)ttx+(uj2*xuj1R*z-uj2*zuj1R*x)tty+(uj2*yuj1R*x-uj2*xuj1R*y)ttz<ε  (AB)[0331] 其中ε表示最大容忍误差物方长度,暂且相对于两相机之间的距离=1而言。
[0332] 满足式(AB)则点j是内点,如果满足内点的数量nt超过最佳值nmax则ζt-->ζnt-->nmax
[0333] 6.如果(1-(nmax/n)2)k<0.00001错误率足够小,退出迭代进入步骤8.
[0334] 7迭代次数k增加1,回到步骤4反复迭代;
[0335] 8.最后采用最小二乘法针对最大内点集ζ重新计算一次最优t,
[0336] 求约束||t3x1||=1下An’x3t3x1=0的解其中n’=nmax
[0337] 或采用SVD分解得到An’x3=Un’xn’Wn’x3VT3x3,
[0338] 分解出来的V的最后1列矢量,即对应于最小奇异值的特征矢量,即为t最终得到T=-LRTt。
[0339] 以前在未知相机姿态数据的情况下,两相机之间相对定向计算是需要至少5对点的,而本发明中在已知相机姿态的前提下,只需要至少2对即可计算相对位置了,可应用于
序列图像三维重建,基于图像的室内外定位等领域。
[0340] 本算法在得到相对姿态T以后可进一步虚拟出物方点,然后通过多相机LM算法优化R,T数据,使得精度进一步提高。
[0341] 基于姿态数据的智能机3D遥控方法
[0342] 基于智能机姿态的多自由度控制
[0343] 构造通过n个关于Rg的函数实现智能机控制多自由度控制,智能机与被控制设备通过有线或无线机制进行数据通信,实现如鼠标或投影仪指针的移动和旋转控制,智能灯
的红绿蓝三分量控制,无人机的空中飞行的3轴姿态控制等。
[0344] 以控制鼠标为例,传统的鼠标只可能控制x,y两个自由度移动,而本发明的3自由度鼠标控制还包含鼠标在显示屏上的旋转,以便实现各种新应用。
[0345] 方法的核心思想就是直接根据姿态矩阵Rg的三个矢量rx,ry,rz来控制鼠标,实际上就是期待ry矢量所指的方位来控制鼠标移动。
[0346] 首先用权利要求1方法获取遥控智能机的姿态矩阵Rg,假设rij是Rg第i行j列的元素值;然后按以下方法实现x方向,y方向,旋转三个自由度控制鼠标:
[0347] y方向mouse2[1]:y轴ry的z分量控制鼠标上下移动;
[0348] 鼠标的屏幕y坐标Ym=(h/2)(1+kyr23)或者
[0349] 其中h为屏幕高度,ky为某一灵敏系数ky=0.01~1之间的某值。
[0350] 分析:当kr23=0时,智能机ry保持水平,鼠标的屏幕y坐标正式h/2,位于屏幕中间高度。代码实现如下:
[0351] mouse2[1]=gl.win_height/2+3*gl.win_height/2*imu.r[5];//y轴的z分量
[0352] x方向mouse2[0]:y轴ry的x,y分量控制鼠标水平移动;
[0353] 初始时Xm=W/2 W是显示屏幕宽度。
[0354] 根据实时不停采集到的姿态矩阵R,不停修正鼠标的屏幕x坐标Xm,
[0355] Xm不断减小Tkx(φ-φ’)
[0356] 其中φ=atan2(r22,r21) φ’是上次得到的φ值
[0357] kx为某一灵敏系数kx=0.01~1之间的某值。
[0358] T是两次采样时间间隔ms
[0359] 在不停的修改过程中若Xm小于0则Xm等于0,若Xm大于W则Xm等于W。
[0360] 代码实现如下:
[0361] float angleh=atan2(imu.r[4],imu.r[3]);//φ
[0362] static float old_angle_h=angleh;//φ’
[0363] mouse2[0]-=T*gl.win_width/2*(angleh-old_angle_h)/8;
[0364] old_angle_h=angleh;
[0365] //鼠标的水平位置不能超界
[0366] if(mouse2[0]<0)mouse2[0]=0;else if(mouse2[0]>gl.win_width)mouse2[0]=gl.win_width;
[0367] 旋转方向mouse2[2]:绕y轴ry旋转控制鼠标旋转;
[0368] 根据采集得到的R矩阵得到绕y轴ry旋转的角度弧度值
[0369] τ=atan2(r13,r33)
[0370] 这个弧度值可以用作特殊用途的控制,比如游戏中飞机旋转角,机械设计中的零件旋转,房屋建筑CAD设计中的墙面旋转等。
[0371] 绕y轴旋转来控制鼠标旋转,mouse2[2]得到的就是绕y轴旋转角的弧度值τ,
[0372] 代码实现如下:
[0373] mouse2[2]=atan2(imu.r[2],imu.r[8]);
[0374] 如果智能机没有安装磁力计,而是安装了陀螺仪,采用以下方法连续获取姿态矩阵Rg
[0375] 第1步计算Rg的初值
[0376]
[0377] az>0,±和μ取上半部分,其中ax,ay,az是当前加速度计的采样值,
[0378] 当az≤0时,s=-1,az>0时,s=1;
[0379] 将Rg转换成4元数q0,q1,q2,q3作为以下第2-7步迭代的初值;
[0380] 第2步设定exInt,eyInt,ezInt原始值为0,exInt=0,eyInt=0,ezInt=0;
[0381] 第3步根据接收到的重力加速度计数据ax,ay,az,
[0382] 得到误差矢量{ex,ey,ez}并计算其累计值exInt,eyInt,ezInt;
[0383] 先将矢量{ax,ay,az}替换成将其单位化以后的矢量
[0384] vx=2*(q1*q3-q0*q2);
[0385] vy=2*(q0*q1+q2*q3);
[0386] vz=q0*q0-q1*q1-q2*q2+q3*q3;
[0387] ex=(ay×vz-az×vy);
[0388] ey=(az×vx-ax×vz);
[0389] ez=(ax×vy-ay×vx);
[0390] 计算误差累计值
[0391] exInt替换为exInt+ex×Ki;eyInt替换为eyInt+ey×Ki;ezInt替换为ezInt+ez×Ki;
[0392] 其中Ki为一可调节的正系数,Ki在0.00001至0.5中任意选取;
[0393] 第4步根据误差矢量{ex,ey,ez}及其累计值纠正陀螺仪数据{gx0,gy0,gz0}
[0394] 假设智能机读出当前的一组陀螺仪数据为{gx0,gy0,gz0} gx=gx0+Kp×ex+exInt;gy=gy0+Kp×ey+eyInt;gz=gz0+Kp×ez+ezInt;
[0395] 其中Kp为一可调节的正系数,Kp在0.000001至20.0中任意选取;
[0396] 第5步根据陀螺仪数据gx,gy,gz修正四元数
[0397] 随着不断接收到陀螺仪数据gx,gy,gz,对4元数按如下方式修正,halfT为修正周期,halfT=0.00001~-10.0*与上次循环的时间间隔
[0398] q0替换为q0+(-q1×gx-q2×gy–q3×gz)×halfT;
[0399] q1替换为q1+(q0×gx-q3×gy+q2×gz)×halfT;
[0400] q2替换为q2+(q3×gx+q0×gy-q1×gz)×halfT;
[0401] q3替换为q3+(-q2×gx+q1×gy+q0×gz)×halfT;
[0402] 第6步输出Rg矩阵和四元数
[0403] 将四元数{q0,q1,q2,q3}单位化成 输出
[0404] 4元数转Rg矩阵公式如下
[0405]
[0406] 第7步回到第3步继续接收陀螺仪运动数据更新姿态4元数q0~q3,在循环的过程中每次到第7步都能输出当前的Rg矩阵和四元数。
[0407] 在本技术可以用于智能机姿态遥控设备。
[0408] 具体实施方式,智能机绕z轴旋转角速度积分控制鼠标在屏幕水平方向移动,智能机绕x轴旋转角速度积分控制鼠标在屏幕垂直方向移动,智能机绕y轴旋转角速度积分控制
鼠标自身的旋转(普通的鼠标没有旋转控制的功能,因此这是一个可选功能,可增加或放弃
此项功能)。
[0409] 通过智能机无线控制计算机鼠标、平板电脑、笔记本电脑,电视机、幻灯片指针等各种设备中的指针移动操作。
[0410] 基于姿态数据的运动方向测定及导航方法
[0411] 步骤1.按权利要求1中所述方法获取智能机的姿态矩阵Rg
[0412] 步骤2.测量局部值坐标系下物体的运动加速度a┴
[0413] 有两种获取方式,
[0414] (1)利用线性加速度传感器得到的a,再通过公式a┴=RgTa计算出a┴为指北坐标系下智能机的加速度;其中Rg是指北坐标系下的姿态矩阵。
[0415] 说明
[0416] 线性加速度a得到的是相对智能机自身的运动加速度,然而用户往往关心的是智能机的绝对运动加速度而不是自身相对运动加速度,所以需要通过姿态矩阵R将直接检测
T
出来的自身相对运动加速度a还原成绝对运动加速度a┴=Ra。
[0417] (2)如果没有线性加速度传感器,测量智能机重力加速度矢量ag=[agx agy agz]T,通过公式a┴=RgTag-[0 0 g0]T计算得到,其中ag是重力加速度传感器的测量值,g0是重力加
速度的传感器平均幅值,即重力加速度计在静止条件下测得的加速度矢量模的均值。
[0418] 这种方式中通常a┴是相对于局部指北坐标系的,也就是a┴的x分量代表往北移动的加速度分量,a┴的y分量代表往西移动的加速度分量。
[0419] 步骤3.对a┴积分一次,也就是累加a┴,即可得到目标在指北坐标系下的移动速度v┴,积分两次,也就是累加v┴即可得到目标在指北坐标系下的位移s┴。
[0420] 具体实施方式:
[0421] v┴+=a┴
[0422] s┴+=v┴
[0423] 步骤4.为避免累积误差,若这时获取到其它精确的定位方法得到的定位值,如GPS,WIFI或权利要求3图像定位得到的定位值s*,立即对目标位置进行纠正。
[0424] 具体实施方式:
[0425] s┴=s*
[0426] v┴=0
[0427] a┴=0
[0428] 步骤5.回到步骤1进行下一轮的定位位置修正。
[0429] 本方法适用于任意智能机姿态的室内定位,运动方向检测和室内辅助定位。这种方式通常a┴是相对于局部指北坐标系的,也就是a┴的x分量代表往北移动的分量,a┴的y分
量代表往西移动的分量。
[0430] 基于姿态数据的虚拟现实方向漫游控制方法
[0431] 1)根据漫游者的输入或者漫游者自身位置确定局部坐标系中的初始坐标位置(ex,ey,ez)。
[0432] 2)采用上述方法得到智能机的姿态矩阵Rg,R=△RRg得到智能机显示屏的姿态矩阵R。△R是智能机显示屏相对于智能机的转换矩阵;
[0433] 3)如果是智能机操作者单指相对于智能机屏幕本体滑动矢量△X,△Y
[0434] 如果|r33|>|r13|且|r33|>|r23|则
[0435] vx=ΔXr11+ΔYr21 vy=ΔXr12+ΔYr22
[0436] 否则:
[0437]
[0438] 如果是智能机操作者双指做拉开或合拢操作,得到拉开和合拢之前双指之间的屏幕距离d0,以及拉开和合拢之后双指之间的屏幕距离d1。
[0439] 4)修正漫游者的移动位置ex,ey,ez
[0440] ex-vx-->ex ey-vy-->ey ez*(d0/d1)->ez
[0441] 5)根据漫游者ex,ey,ez,注视方向ex+r31,ey+r32,ez+r33,相机自身朝上方向-r21,-r22,-r23
[0442] 其中rij是R矩阵的i行j列元素值,
[0443] 设置漫游者在局部坐标系中的位置和观察姿态
[0444] 在Android OpenES中可采用
[0445] GLU.gluLookAt(gl,Xd,Yd,Zd,
[0446] Xd+r31,Yd+r32,Zd+r33,
[0447] ‐r21,‐r22,‐r23);
[0448] 编程实现设置漫游观察者位置和姿态;
[0449] 6)智能机屏幕渲染局部坐标系中的三维场景;
[0450] 7)回到步骤2)动态连续修正漫游者的姿态和位置。
[0451] 本发明实施例基于姿态数据的视频图像投影到地图的方法,主要包括以下步骤:
[0452] 采用上述方法得到智能机的姿态矩阵R=△RRg,△R是智能机摄像头相对于智能机的转换矩阵;
[0453] 根据GPS测得拍摄相机在局部坐标系中的坐标为T=Rv(X-Ts),其中
[0454]
[0455] 是局部坐标系原点的经度,θs是局部坐标系原点的纬度,hs局部坐标系原点的高度。
[0456] θs,hs确定了地图投影面原点的位置。
[0457] Ns是随纬度变化的卯酉圈曲率半径;
[0458] a,b是地球椭球的长短轴,是大地测量学中的已知常量;e是偏心率,是定值;
[0459] h是智能机在局部坐标系中的Z坐标,即高度
[0460] 此时相机或摄像头拍摄下图像帧I。
[0461] 将图像帧I经过Homograph变换Hmap=[K[r1 r2 -RgT]]-1=[r1 r2 -RT]-1K-1得到Imap是视频图像映射到地图上的正射影像。其中
[0462] 是智能机上的相机内部参数矩阵。fx,fy分别指相机内部参数中的水平和垂直焦距像素长,cx,cy)是相机主点坐标。
[0463] 本发明中明确说明了根据姿态矩阵Rg在X轴指北局部坐标系中的几何意义,若定义成其他局部坐标系,相关结论可用已有技术进行替换。
[0464] 如果定义X轴朝东,Y轴朝北则权利要求1方法1公式(1)中的 替换成算出Rg的三个行矢量正是X轴朝东Y朝北坐标系下的3个分量。
[0465] 方法2,3中的Rg纵东,即直接得到X轴指向东Y轴指向北坐标系下的姿态矩阵。
[0466] 应当理解的是,对本领域普通技术人员来说,可以根据上述说明加以改进或变换,而所有这些改进和变换都应属于本发明所附权利要求的保护范围。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈