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

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

Info

Publication number
CN104748751A
CN104748751A CN201410466348.XA CN201410466348A CN104748751A CN 104748751 A CN104748751 A CN 104748751A CN 201410466348 A CN201410466348 A CN 201410466348A CN 104748751 A CN104748751 A CN 104748751A
Authority
CN
China
Prior art keywords
intelligent machine
matrix
camera
coordinate system
attitude
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201410466348.XA
Other languages
English (en)
Other versions
CN104748751B (zh
Inventor
刘进
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Wuhan Chuxiong Gaojing Technology Co ltd
Original Assignee
Individual
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Individual filed Critical Individual
Priority to CN201410466348.XA priority Critical patent/CN104748751B/zh
Publication of CN104748751A publication Critical patent/CN104748751A/zh
Application granted granted Critical
Publication of CN104748751B publication Critical patent/CN104748751B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • H04W4/021Services related to particular areas, e.g. point of interest [POI] services, venue services or geofences
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/04Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by terrestrial means
    • G01C21/08Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by terrestrial means involving use of the magnetic field of the earth
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/10Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration
    • G01C21/12Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/10Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration
    • G01C21/12Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning
    • G01C21/16Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning by integrating acceleration or speed, i.e. inertial navigation
    • G01C21/165Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning by integrating acceleration or speed, i.e. inertial navigation combined with non-inertial navigation instruments
    • G01C21/1654Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning by integrating acceleration or speed, i.e. inertial navigation combined with non-inertial navigation instruments with electromagnetic compass
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/20Instruments for performing navigational calculations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/006Mixed reality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/20Scenes; Scene-specific elements in augmented reality scenes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • H04W4/025Services making use of location information using location based information parameters
    • H04W4/027Services making use of location information using location based information parameters using movement velocity, acceleration information

Abstract

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

Description

姿态矩阵的计算方法及基于姿态矩阵的定位导航方法
技术领域
本发明涉及信息技术领域,尤其涉及一种姿态矩阵的计算方法及基于姿态矩阵的定位导航方法。
背景技术
地理信息位置服务一直只强调空间定位和空间距离,却忽视了一个非常重要的数据和概念——姿态,实际上用户更关心目的地或目标相对于自身的方向,没有姿态的位置服务是不完整的位置服务。比如一款的士打车软件,司机在抢单的时候如果只考虑距离,就可能选择位于自身后方的乘客,由于车道不能逆行,导致司机无法接到乘客,乘客也无法乘坐的士。作战的时候如果只知道敌人在接近而不知道敌人从哪个方向接近,这必然会导致混乱和恐慌。因此智能机姿态的测定能实现一种真正意义上的位置服务,使得基于智能机姿态的位置服务成为可能,具有非常重要的意义,并且必将形成一种新的数据新标准而被广泛应用。
姿态传感器的应用涉及方方面面,在很多领域都需要用到智能机自身姿态的信息,如影像、视频纠正、单目定位,3D遥控、室内导航、导弹制导。传统的姿态测量非常笨重和昂贵,一般安装在大型飞机,车船上,主要用于航天军事领域。近年来随着传感器技术的提高,各种廉价、轻小型号的用于姿态测定的传感器得以安装在小型智能机上,这为智能机姿态传感数据新标准的建立和广泛应用创造了硬件条件。
一旦这些传感器数据通过数据融合处理得到智能机姿态数据之后就能实现各种重要的应用。表示姿态的传感数据用得最多、最传统的是航位角、俯仰角和翻滚角,主要用于无人机姿态表述和地面移动测量系统MMS,但是这样表示缺点很多:
(1)首先需要用大量三角函数重构姿态矩阵,导致计算速度慢;
(2)三个角度相对于坐标系的转角不统一;
(3)三个角度的转换顺序没有一个统一的标准,不同导航设备上的三个角的顺序定义是不一样的,没有统一的标准,导致针对不同导航设备的姿态数据软件不能统一接口和通用共享,因此缺少统一的姿态数据标准极大地阻碍了导航技术的发展。
有些软件内部采用的定位算法不是基于图像的,在无GPS和wifi环境下软件是不能正常定位的,软件中的摄像头扫描界面效果给人一种图像识别定位的感觉。传统的图像定位方法是不知道姿态数据的,这样就要求至少需要三对以上的物像同名点对应关系才能进行定位计算,事实上三对同名点除了进行定位还要计算姿态,因此得到的结果很不稳定,很不准确,特别是在三点位一条直线或者三点之间距离很小都会出现很不稳定,不精确的问题,原因就是这三点除了进行定位计算以外还要负担姿态运算。
本发明中提到的智能机姿态数据的各个方面潜在应用,包括姿态指向、视频(图像)纠正、3D遥控,3D导航、目标叠加,智能机视频与地图影像相互之间的信息叠加,目前还没有在轻便廉价的智能机领域得到应用。
发明内容
本发明要解决的技术问题在于针对现有技术中的上述缺陷,提供一种姿态矩阵的计算方法及基于姿态矩阵的定位导航方法。
本发明解决其技术问题所采用的技术方案是:
提供一种智能机姿态矩阵计算方法,包括以下步骤:
通过智能机加速度计检测三个值{vax’,vay’,vaz’}计算ax、ay和az
a x a y a z = R a T v ax ′ v ay ′ v az ′ ,
或对{vax’,vay’,vaz’}进行滤波后得到{vax,vay,vaz},计算ax、ay和az
a x a y a z = R a T v ax v ay v az , 其中Ra是重力加速度传感器相对于智能机的姿态转换矩阵;
通过智能机磁力计获取方位角的三角函数;或者方向传感器获取方位角
计算姿态矩阵
姿态矩阵Rg的第1行是智能机x轴在局部坐标系下的单位矢量;第2行是智能机y轴在局部坐标系下的单位矢量;第3行是智能机z轴在局部坐标系下的单位矢量;其中局部坐标系是z轴沿重力指向地球外,x轴朝北y轴朝西的坐标系;
其中
R θ = sa z L 1 - ( a y / L ) 2 - sa x a y / [ L 2 1 - ( a y / L ) 2 ] a x / L 0 s 1 - ( a y / L ) 2 a y / L - s a x L 1 - ( a y / L ) 2 - sa z a y / [ L 2 1 - ( a y / L ) 2 ] a z / L , L = a x 2 + a y 2 + a z 2
当az<0时,s=-1,az≥0时,s=1;
m 0 x m 0 y m 0 z = R &theta; T m x m y m z .
其中mx,my,mz是智能机磁力计检测出来的三个值{vmx,vmy,vmz},或{vmx,vmy,vmz}经过滤波得到的三个值。
本发明还提供一种智能机姿态矩阵计算方法,该方法基于智能机支持Android系统,具体包括以下步骤:
获取智能机Android系统函数中的getRotationMatrix函数获取矩阵Rg纵东’,然后将Rg纵东’经过矩阵转置操作得到Rg纵东=(Rg纵东’)T,Rg纵东是X轴指向东Y轴指向北坐标系下的姿态矩阵;
计算局部坐标系下的姿态矩阵姿态矩阵Rg的第1行是智能机x轴在局部坐标系下的单位矢量;第2行是智能机y轴在局部坐标系下的单位矢量;第3行是智能机z轴在局部坐标系下的单位矢量;其中局部坐标系是z轴沿重力指向地球外,x轴朝北y轴朝西的坐标系。
本发明还提供一种基于智能机姿态矩阵的指向或导航方法,包括以下步骤:
1)定义智能机主方向或载体主方向相对于智能机自身的矢量单位p;
2)根据权利要求1-4中任一项所述的方法计算智能机当前姿态矩阵Rg
3)计算p=Rg Tp,为智能机主方向或载体主方向相对于指北坐标系的矢量;
4)计算局部坐标系中的目标矢量vo=O-P,其中局部坐标系中智能机自身坐标为P,目标的坐标为O,则目标矢量vo=O-P;
5)计算矢量p与目标矢量vo之间夹角的余弦,或计算两个矢量之间的夹角;
6)若夹角的余弦或者两个矢量之间的夹角在预设范围内,则触发智能机执行预设关联事件。
本发明还提供一种基于智能机姿态矩阵的2D导航方法,包括以下步骤:
将智能机水平放置,利用方向传感器的第一个值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|的结果大于预设值,则说明方向吻合。
本发明还提供一种基于智能机姿态数据的视频影像实时纠正方法,其特征在于,包括以下步骤:
采用上文所述的方法,获取智能机拍摄视频的每一帧对应的姿态矩阵Rg,根据R=△R·Rg得到智能机上的摄像头的局部坐标姿态矩阵R,其中△R是摄像头相对于智能机的转换矩阵;
将R矩阵分解为R=RτR_,计算得到矩阵Rτ;
其中,R_是预设期待输出图像的姿态矩阵,Rτ是变换矩阵;
将原始图像I经过H=K2Rτ TK-1的Homograph变换得到I’,
其中 K = f c x f c y 1 是拍摄相机的内部参数矩阵,f是焦距的像素长度,(cx,cy)是相机主点坐标,cx=w/2,cy=h/2,w、h是原始图像I的宽和高;
K 2 = f 2 c x 2 f 2 c y 2 1 是纠正以后虚拟相机的内部参数矩阵,f2是纠正以后虚拟相机的焦距的像素长度,(cx2,cy2)是纠正以后虚拟相机主点坐标。
本发明还提供一种基于姿态数据的智能机单像定位方法,包括以下步骤:
搜集采集物方点,转化成局部坐标系坐标;
采用权利要求上述述的方法获取智能机的姿态矩阵Rg,根据R=△R·Rg得到智能机上摄像头的姿态矩阵R,△R是摄像头相对于智能机的转换矩阵;
拍摄一张图像,自动提取其中的多个特征点,通过匹配算法得到与物点对应的n对物像同名点;n个物方点的坐标是Xi=[Xix,Xiy,Xiz]T i=1,…,n;对应n个像点坐标是[ui vi]Ti=1,…,n;
计算相机在局部坐标系下的坐标T=[Tx,Ty,Tz]T
(1)特征点无错情况下
若确认多个特征点无错误,则采用数学模型解方程得到自身在局部坐标系下坐标Tx,Ty,Tz,
z 1 - x 1 z 1 - y 1 . . . . . . . . . z n - x n z n - y n T x T y T z = z 1 X 1 x - x 1 X 1 z z 1 X 1 y - y 1 X 1 z . . . z n X nx - x n X nz z n X ny - y n X nz - - - ( HH 2 )
其中 x i y i z i = R T u i - c x f x v i - c y f y 1
进而得到相机位置T=[Tx,Ty,Tz]T
(2)容错情况下
若不确认多个特征点是否全部正确,采用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*。
本发明还提供一种基于智能机姿态数据的单目单点定位方法,包括步骤:
假设智能机上的相机内部参数矩阵为:
K = f x c x f y c y 1
fx,fy分别指相机内部参数中的水平和垂直焦距像素长,
被观察物体是一个直径=D大小的物体,
在智能机上成像的宽度是Δu,高度是Δv,
成像中心点像坐标(u,v),(cx,cy)是相机主点坐标;
采用权利要求1-4方法获取智能机的姿态矩阵Rg,R=△RRg得到智能机上摄像头的姿态矩阵R,△R是摄像头相对于智能机的转换矩阵;
计算 z = D &CenterDot; MIN ( f x &Delta;u , f y &Delta;v )
(1)若已知智能机摄像头光心局部坐标系坐标是T,
单目估算出物体的局部坐标系下三维坐标X:
X = T + z R T K - 1 u v 1 = T + z R T u - c x f x v - c y f y 1
(2)若已知物体的局部坐标系下三维坐标X,计算相机坐标T
T = X - z R T u - c x f x v - c y f y 1 .
本发明还提供一种基于智能机姿态数据的相对定位方法,假设相机1,2之间有i=1..n≥2对同名点u1i,v1i~u2i,v2i
相机2相对于相机1的姿态矩阵R=R2R1 T;其中R1=△RRg1 R2=△RRg2,Rg1,Rg2是智能机相机在拍摄的1,2两个地点测出来的姿态矩阵数据,△R是摄像头相对于智能机的转换矩阵;已知相机1的内参矩阵 K 1 = f 1 c x 1 f 1 c y 1 1 , 相机2的内参矩阵 K 2 = f 2 c x 2 f 2 c y 2 1 , 其中(cxi,cyi)是相机i的像素主点坐标,fi是相机i的焦距像素长,已知两相机之间的距离是L;计算相机2相对于相机1的位移矢量T;
方法具体包括如下步骤:
1)用权利要求1所述的方法计算智能机的姿态Rg1,Rg2,进一步计算2个智能机上各自相机姿态R1=△RRg1 R2=△RRg2,得到相对姿态R=R2R1 T
2)首先构建矩阵A
A = u 12 * z u 11 R * y - u 12 * y u 11 R * z u 12 * x u 11 R * z - u 12 * z u 11 R * x u 12 * y u 11 R * x - u 12 * x u 11 R * y . . . . . . . . . . . . u n 2 * z u n 1 R * y - u n 2 * y u n 1 R * z u n 2 * x u n 1 R * z - u n 2 * z u n 1 R * x u n 2 * y u n 1 R * x - u n 2 * x u n 1 R * y
其中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=UnxnWnx3VT 3x3,分解出来的V的最后1列的矢量,即对应于最小奇异值的特征矢量,即为t,T=-LRTt得到结果,结束;否则继续进行步骤4);
4)设置迭代初值nmax=0,k=1;
5)随机挑选A矩阵中的2行,构建A2x3
就是求约束||t2||=1下A2x3t2=0的解,或采用SVD分解得到A2x3=U2x2W2x3VT 3x3,
分解出来的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’x3VT 3x3;分解出来的V的最后1列矢量,即对应于最小奇异值的特征矢量,即为t;最终得到T=-LRTt。
本发明还提供一种基于姿态矩阵的智能机3D遥控方法,包括以下步骤:
首先上述方法获取遥控智能机的姿态矩阵Rg,假设rij是Rg第i行j列的元素值;
然后按以下方法实现x方向,y方向,旋转三个自由度控制:
1)控制y值:y轴ry的z分量控制上下移动
控制对象的屏幕y坐标Ym=(h/2)(1+kyr23)或者
其中h为屏幕高度,ky为某一灵敏系数,ky=0.01~1之间的某值;
2)控制x值:y轴ry的x,y分量控制水平移动
初始时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)。
构造通过n个关于Rg的函数实现智能机控制多自由度控制,智能机与被控制设备通过有线或无线机制进行数据通信,实现如鼠标或投影仪指针的移动和旋转控制,智能灯的红绿蓝三分量控制,无人机的空中飞行的3轴姿态控制。
本发明还提供一种基于姿态数据的运动方向测定及导航方法,其特征在于,包括以下步骤:
步骤1.根据上述方法获取智能机的姿态矩阵Rg
步骤2.测量局部坐标系下物体的运动加速度a,a的x分量代表往北移动的分量,a的y分量代表往西移动的分量;
步骤3.对运动加速度a积分一次,得到目标在指北坐标系下的移动速度v,积分两次,得到目标在指北坐标系下的位移s
步骤4.为避免累积误差,若获取到其它精确的定位方法得到的定位值,则立即对目标位置进行纠正;
步骤5.回到步骤1进行下一轮的定位位置修正。
本发明还提供一种基于姿态数据的虚拟现实方向漫游控制方法,包括以下步骤:
1)根据漫游者的输入或者漫游者的自身位置设置局部坐标系中的初始坐标位置(ex,ey,ez);
2)采用上述方法得到智能机的姿态矩阵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;否则:
v x v y = 1 r 31 2 + r 32 2 r 13 2 + r 23 2 r 13 r 31 - r 23 r 32 r 13 r 32 + r 23 r 31 r 13 r 32 + r 23 r 31 - ( r 13 r 31 - r 23 r 32 ) &Delta;X &Delta;Y
5)在滑动数据是漫游者双指做拉开或合拢操作所获得的情况下,则得到拉开和合拢之前双指之间的屏幕距离,以及拉开和合拢之后双指之间的屏幕距离;
6)根据步骤4)和5)中得到的数据修正漫游者在局部坐标系中的坐标位置(ex,ey,ez),并根据修正后的坐标位置显示局部坐标系中的三维场景。
本发明还提供了一种基于姿态数据的视频图像投影到地图的方法,包括以下步骤:
采用权利要求1-4的方法得到智能机的姿态矩阵R=△RRg,△R是智能机摄像头相对于智能机的转换矩阵;
根据GPS测得拍摄相机在局部坐标系中的坐标为T,此时相机或摄像头拍摄下图像帧I;
将图像帧I经过Homograph变换Hmap=[K[r1 r2 -RT]]-1=[r1 r2 -RT]-1K-1得到Imap,Imap是视频图像映射到地图上的正射影像,其中r1 r2分别是R矩阵的第1列和第2列,K是智能机上的相机内部参数矩阵, K = f x c x f y c y 1 , fx,fy分别指相机内部参数中的水平和垂直焦距像素长,cx,cy)是相机主点坐标。
本发明产生的有益效果是:实时快速测量便携智能机姿态,帮助位置服务用户更好的了解自身与其它移动用户之间的相互位置关系,触发智能机与周边目标之间的某一关联事件,如指向该目标,选中该目标,击中该目标、通知该目标、联络该目标等,实现基于智能机姿态的导航导向以及各种虚拟现实,增强现实应用;视频图像的每一幅画面有了对应的姿态就可以作水平、垂直纠正处理,在颠簸的飞机、船只、用户倾斜手持状态下拍摄的视频经处理能得到正放的稳定图像;可以进行摄影测量双点相对定位、单像定位、单点定位等处理(以前由于缺乏姿态数据需要双目3点以上才能实现,而且精度不高)。本发明使得以上技术在各种廉价、轻型的智能机上得以广泛应用。
附图说明
下面将结合附图及实施例对本发明作进一步说明,附图中:
图1是本发明实施例位置服务中同时符合位置和方向的目标位示意图;
图2是本发明实施例的单像双点定位示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
由于传统的三角度表示法存在各种缺陷,本发明提出采用以下2种姿态描述方法解决与姿态有关的各种问题。
1.姿态矩阵表述法
姿态矩阵表述法的优点是不会像三角度法那样由于角度顺序不统一而引起歧义,具有很好的几何描述特性和实际物理意义,比如姿态矩阵的三行表示在北坐标系下x,y,z三个轴的三个单位矢量,而且也非常便于各种坐标转换计算,很多情况下避免了繁琐耗时的三角函数运算,大大提高了运算效率。
2.4元数表示法
姿态矩阵需要3x3=9个浮点数表示一个姿态,由于姿态矩阵中的9个元素构建的是一个单位正交矩阵,内部存在很大耦合,所以数据量冗余大,不便于高速传输和存储在有限的空间,因此可进一步采用4元数表示法。
采用4元数压缩则克服了各方面困难,不仅传输效率高,且可直接通过导航算法获取,4元数域的矩阵乘法也很方便。4元数还有一个优点就是在定姿算法中具有很好的可导性,通过导函数计算方便地实现了姿态的动态优化,这样定姿算法中得到的4元数可直接用来保存为数据协议的必要内容。
本发明中所有的方法应用都是基于描述智能机姿态的姿态矩阵或是4元数的,而姿态矩阵可以用四元数紧凑的描述出来。因此智能机姿态传感数据需要建立统一的数据,以便实现与其相关的各种应用。
本发明所说的姿态数据是指智能机传感器通过数据融合得到的智能机相对于局部坐标系下的姿态矩阵,或者姿态矩阵对应的四元数。建立智能机姿态传感数据标准使得各领域与姿态相关的应用都可以通过该数据标准进行抽象,应用主要分为以下几大类:
1.室内外导航,运动测量
2.姿态控制,遥控,指向控制
3.视频图像纠正处理
4.基于图像的定位
5.视频目标叠加及地图叠加。
这里所说的智能机的概念包括一切含显示屏和姿态传感的智能设备,如手机,平板电脑,笔记本电脑,带姿态传感和显示屏的摄像头,相机,智能显示器,智能电视机显示屏、以及各种可穿戴设备。
本发明基于智能机姿态数据的目标方向选择
获取智能机姿态矩阵Rg
本发明所说的姿态矩阵Rg描述了智能机的姿态,姿态矩阵Rg的第1行是智能机x轴在局部坐标系下的单位矢量;第2行是智能机y轴在局部坐标系下的单位矢量;第3行是智能机z轴在局部坐标系下的单位矢量;其中局部坐标系是z轴沿重力指向地球外,x轴朝北y轴朝西的坐标系。Rg的获取方法如下:
方法1
计算姿态矩阵
其中
R &theta; = sa z L 1 - ( a y / L ) 2 - sa x a y / [ L 2 1 - ( a y / L ) 2 ] a x / L 0 s 1 - ( a y / L ) 2 a y / L - s a x L 1 - ( a y / L ) 2 - sa z a y / [ L 2 1 - ( a y / L ) 2 ] a z / L , L = a x 2 + a y 2 + a z 2
ax,ay,az是智能机加速度计检测出来的三个值{vax,vay,vaz},或{vax,vay,vaz}经过滤波得到的三个值ax,ay,az
当az<0时,s=-1,az≥0时,s=1;
m 0 x m 0 y m 0 z = R &theta; T m x m y m z
mx,my,mz是智能机磁力计检测出来的三个值{vmx,vmy,vmz},或{vmx,vmy,vmz}经过滤波得到的三个值mx,my,mz
或者采用带入公式(1)计算Rg
如果定义
带入公式(1)得到的正好是Rg纵东,即X轴指向东Y轴指向北坐标系下的姿态矩阵。
方法2
若智能机使用了Android系统,并支持Android系统函数中的getRotationMatrix功能,则可采用:getRotationMatrix函数获取矩阵Rg纵东’,然后将Rg纵东’经过矩阵转置操作(Rg 纵东’)T得到Rg纵东=(Rg纵东’)T
Rg纵东是X轴指向东Y轴指向北坐标系下的姿态矩阵,可将Rg纵东转换成X轴指北,Y轴指西的局部坐标系Rg。进一步得到局部坐标系下的姿态矩阵
方法3,通过智能机旋转矢量传感器输出的3个数据q1=values[0],q2=values[1],q3=values[2],计算若旋转矢量传感器有第4个输出则可直接计算q0=values[3],再按以下公式计算Rg纵东矩阵
再采用公式(2)进一步得到局部坐标系下的姿态矩阵Rg
计算姿态矢量并用于指向判断
步骤简述:
1.定义智能机主方向或载体主方向相对于智能机自身的矢量单位p
2.采用上一节所述的方法获取智能机当前姿态矩阵Rg
3.计算p=Rg Tp为智能机主方向或载体主方向相对于指北坐标系的矢量。
4.计算局部坐标系中的目标矢量vo=O-P
假设局部坐标系中智能机自身坐标为P,目标的坐标为O,则目标矢量vo=O-P;
5.计算矢量p与目标矢量vo之间夹角的余弦,或计算两个矢量之间的夹角。
如果夹角的余弦很大,接近1,或者夹角偏差的绝对值|dφ|很小则触发智能机与该目标O之间的某一关联事件。如指向该目标,选中该目标,击中该目标、通知该目标、联络该目标等。
可通过两矢量的点积除以|vo|得到夹角dφ的余弦,
cos(dφ)=(p点积vo)/|vo|
如果该余弦cos(dφ)>cos(φa)则该目标方向选择事件可触发。
6.在需要与用户的可视化交互情况下,在指北坐标系中实时绘制目标,智能机,和矢量p
计算局部坐标系中智能机主方向矢量与目标矢量之间夹角的方向余弦。根据余弦值大小判定夹角。并且在三维空间或2维空间中绘制出智能机主方向矢量与目标矢量之间方向关系便于人机交互。
具体应用方式有以下几种类型:
方法1姿态指向
用户通过操作智能机所指主方向所形成的矢量与目标矢量之间的夹角保持较小角度,或夹角的余弦>cos(φa),则将触发某一事件。
用户用智能机主方向指向某一目标,如果目标矢量与主方向矢量之间的夹角的余弦>cos(φa)可执行与该目标相关联的事件,如选中该目标,击中该目标、通知该目标、联络该目标等。Φa为最大容忍偏差角。
在三维空间中实时绘制智能机姿态矢量rz与目标矢量vo之间的关系示意图,以便于实现用户的交互控制。
实施方式:
假设智能机头部定义为主方向,头部相对于智能机自身坐标系的矢量是p={0,1,0}T
那么p=Rg Tp={r21 r22 r23}T其中rij是R矩阵第i行j列的元素。
假设智能机右侧定义为主方向,右侧相对于智能机自身坐标系的矢量是p={1,0,0}T
那么p=Rg Tp={r11 r12 r13}T
方法2导航服务
将智能机与某一载体,如车船,固定起来,定义载体主方向相对于智能机自身的矢量p。
在地图中实时绘制载体主方向矢量p=RTp与目标矢量vo之间的关系示意图。
计算夹角的余弦cos(dφ)>cos(φa)说明方向吻合,再结合距离约束可触发某一事件。
本方法也可以与运动方向形成的轨迹矢量结合智能机主方向进行融合,进而计算与目标矢量之间的夹角。
实施方式:
摄像头拍摄方向朝前固定安装在车船上,摄像头拍摄方向相对于智能机自身坐标系的矢量是p={0,0,-1}T
那么p=Rg Tp={-r31-r32-r33}T其中rij是Rg矩阵第i行j列的元素。
p与vo之间的夹角的余弦=(p点积vo)/|vo|
如图1所示,位置服务中同时符合位置和方向的目标位于图中的阴影区。
方法3 2D导航服务
这种方法要求智能机水平放置,利用方向传感器的第一个值value[0]得出主方向角矢量与智能机到目标矢量之间的夹角。或两者之间的点积。这里可以用局部坐标系中忽略Z轴的2维坐标,也可以直接用经纬度建立的2维坐标系。
实时计算智能机2维主矢量{cosφ,sinφ}与2维目标矢量vo=O‐P示意图。
其中φ=value[0]+△φ value[0]是方向传感器的第一个值,△φ是在地图平面上,用户定义的主方向相对于智能机主方向之间夹角。
O是局部坐标系中X,Y平面上目标的2维坐标,P是局部坐标系中X,Y平面上的智能机2维坐标。
{cosφ,sinφ}与目标矢量vo之间的夹角<φa说明方向吻合。
或者{cosφ,sinφ}与2目标矢量vo点积除以|vo|的结果>cosφa则说明方向吻合。
实施方式:
应用:导航,顺路方向的的士叫车抢单,司机将智能机固定在车上,智能机软件只可选择cos(dφ)>cos(φa)的乘客,选出来的都是顺路乘客。
2D导航的具体实施方式:
要求智能机水平放置,利用方向传感器的第一个值value[0]得出主方向角矢量与智能机到目标矢量之间的夹角,或两者之间的点积。
计算2维地图上的目标矢量vo={vox,voy}的方位角φvo可调用反三角函数atan2(voy,vox)实现,计算φ角与φvo角形成的矢量在平面上的夹角
实施方法,采用但不局限于以下方法:
φ角与φvo之间的夹角可以按以下方式计算:
一般采用2维点积的方式计算φ角与φvo之间的夹角余弦=({cosφ,sinφ}点积vo)/|vo|,若该余弦值>cos(φa)认定为方向一致。
为便于用户交互控制,在地图上将目标矢量vo与智能机矢量{cosφ,sinφ}同时画出。特别是当目标不在地图视野范围内时,地图上智能机到目标连线与地图边框交点处绘制方向为vo的箭头指向目标。
基于智能机姿态数据的视频影像实时纠正
一般方法步骤如下:
1.采用权利要求1方法获取智能机拍摄视频的每一帧对应的姿态矩阵Rg。
2.R=△RRg得到智能机上的摄像头的局部坐标姿态矩阵R,其中△R是摄像头相对于智能机的转换矩阵。
3.根据实际应用需求R矩阵分解为R=RτR_从而得到矩阵Rτ,计算矩阵Rτ的方法有三类
(a)根据实际应用中R_的特性直接得到,再通过Rτ=R R_T得出Rτ
详见下文中的标准对地坐标系下的影像正射纠正
(b)根据实际应用中Rτ和R_的特性列方程Rτ=R R_T或R=RτR_求解得到Rτ中的几个重要元素的值,从而构建Rτ
详见下文中的任意R矩阵的Z轴旋转分解出水平矩阵
(c)根据Rτ和R_的性质列方程Rτ=R R_T或R=RτR_求解得到R_中的几个重要元素的值,从而构建R_,最后通过Rτ=R R_T得出Rτ
详见下文中的对地坐标系下的影像正射纠正
4.对图像I经过H=K2Rτ TK-1的Homograph变换得到I’
其中 K = f c x f c y 1 是拍摄相机的内部参数矩阵,f是焦距的像素长度,cx,cy是相机主点坐标。对于理想相机cx,cy是图像的中心点,cx=w/2,cy=h/2,w,h是原始图像I的宽和高。
K 2 = f 2 c x 2 f 2 c y 2 1 是纠正以后虚拟相机的内部参数矩阵,f2是纠正以后虚拟相机的焦距的像素长度,(cx2,cy2)是纠正以后虚拟相机主点坐标。
注:
-对于理想相机(cx2,cy2)是纠正以后虚拟相机图像的中心点,cx2=H/2,cy2=H/2,W,H是图像纠正以后虚拟相机的宽高。
-通常f2选取与f相等,而W,H的大小根据实际应用需求选取,有时为避免纠正后图像出界而选取W>w H>h
-如果H=K2Rτ TK-1中的第三行元素是[0 0 1],那么Homograph透视变换可简化成仿射变换从而提高图像变换速度。
下面具体给出前述三类计算矩阵Rτ的应用案例和方法
(a)标准对地坐标系下的影像正射纠正
视频摄像机往下拍地面上的场景,但由于各种原因,视线不可能完全垂直于地面。为得到垂直于地面的图像,先通过以下方法计算Rτ
R=RτR_中的 R _ = 1 - 1 - 1 , R &tau; = R R _ T = R 1 - 1 - 1
最后根据公式H=K2Rτ TK-1实时将原始视频帧影像纠正成垂直于地面拍摄的效果,这个变换效果是图像I始终是垂直于地面往下拍的效果,若姿态矩阵R是相对于局部指北坐标系的,图像I的右侧始终指向北,下侧始终指东。垂直于地面的图像实际上可直接映射到地理信息系统地图平面上,因此本技术实现了从视频图像到地理信息系统地图平面上的实时映射。(b)任意R矩阵的Z轴旋转分解出水平矩阵
对于红外末制导导引头图像获取,或者在颠簸的车、船、飞机上安装有摄像头的视频捕获到视频帧图像的同时,将该帧对应的姿态数据保留并加以处理,保证载体获取的图像始终是保持水平正方的,这样目标识别程序就不用考虑目标的旋转了,这会极大提高目标识别的效率和准确性,也能使得用户获取的视频更稳定更准确。本方法涉及第(b)类计算Rτ的方法如下:
首先设 R &tau; = cos &tau; - sin &tau; sin &tau; cos &tau; 1
由R_=Rτ TR列方程得到
R _ = 0 = cos &tau; - sin &tau; sin &tau; cos &tau; 1 T r 11 r 12 r 13 r 21 r 22 r 23 r 31 r 32 r 33 = cos &tau; sin &tau; - sin &tau; cos &tau; 1 r 11 r 12 r 13 r 21 r 22 r 23 r 31 r 32 r 33
针对矩阵第1行第3列元素等于0列方程
r13cosτ+r23sinτ=0
再考虑到{cosτ,sinτ}是2维单位向量,解得
有两个解是正常的,因为旋转两个角度(还有一个相机底朝天,两者刚好相差180度)都能保证本体x轴保持水平于地面。因此必须保证本体y轴朝下,也就是R_的第2行第3列元素值<0,即列约束不等式:
-r13sinτ+r23cosτ<0
解得 cos &tau; = - r 23 r 13 2 + r 23 2 sin &tau; = r 13 r 13 2 + r 23 2 代入上式得到 - r 13 sin &tau; + r 23 cos &tau; = - r 13 2 + r 23 2 < 0
另一个解不满足条件舍去。
最后根据公式H=K2Rτ TK-1实时将原始视频帧影像纠正成水平于地平面拍摄的效果。
(c)对地坐标系下的影像正射纠正
为得到的垂直纠正图像且跟随摄像头绕垂直于地面方向轴的旋转而旋转,采用如下方法:
假设摄像头旋转了τ角,
R=RτR_中的 R = - cos &tau; sin &tau; sin &tau; cos &tau; - 1
列方程
R &tau; = 0 = r 11 r 12 r 13 r 21 r 22 r 23 r 31 r 32 r 33 - cos &tau; sin &tau; sin &tau; cos &tau; - 1 T = r 11 r 12 r 13 r 21 r 22 r 23 r 31 r 32 r 33 - cos &tau; sin &tau; sin &tau; cos &tau; - 1
解得: cos &tau; = r 22 r 21 2 + r 22 2 sin &tau; = r 21 r 21 2 + r 22 2 cos &tau; = - r 22 r 21 2 + r 22 2 sin &tau; = - r 21 r 21 2 + r 22 2
(d)最终得到:
(e) R &tau; = R R &perp; T = R - cos &tau; sin &tau; sin &tau; cos &tau; - 1
最后根据公式H=K2Rτ TK‐1实时将原始视频帧影像纠正成垂直于地面拍摄的效果,这个变换效果是图像I会跟随摄像头绕垂直于地面方向轴的旋转而旋转。
基于姿态数据的智能机单像定位方法
假设相机或摄像机内参数据已知,f是焦距的像素长度,(cx,cy)是相机主点坐标。
内参矩阵 K = f c x f c y 1
单像目标定位整体实施步骤如下:
1.搜集采集物方点,转化成局部坐标系坐标,如指北为x轴,指西为y轴
2.采用权利要求1方法获取智能机的姿态矩阵Rg,R=△RRg得到智能机上摄像头的姿态矩阵R。△R是摄像头相对于智能机的转换矩阵
3.拍摄一张图像,自动提取其中的多个特征点,通过匹配算法得到与物点对应的n对物像同名点。
n个物方点的坐标是Xi=[Xix,Xiy,Xiz]T i=1,…,n
对应n个像点坐标是[ui vi]T i=1,…,n
4.分无错和容错2种情况计算相机在局部坐标系下的坐标T:
(1)若确认多个特征点无错误,则
采用数学模型解方程得到自身在局部坐标系下坐标Tx,Ty,Tz
z 1 - x 1 z 1 - y 1 . . . . . . . . . z n - x n z n - y n T x T y T z = z 1 X 1 x - x 1 X 1 z z 1 X 1 y - y 1 X 1 z . . . z n X nx - x n X nz z n X ny - y n X nz - - - ( HH 2 )
其中 x i y i z i = R T u i - c x f x v i - c y f y 1
进而得到相机位置T。
(2)若不确认多个特征点是否全部正确,采用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*。单目多点容错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)k<pe pe是RANSAC容忍错误概率,一般设为10‐2~10‐20之间的一个数值。
6)将前面搜索得到的正确特征点集ζmax搜集起来进行最后一次多点最小2乘计算,按公式(HH2)计算得到Tbest得到最终结果。
5.如需进一步提高精度,可基于数学模型式(HH2)对正确特征点集ζmax中多点进行LM优化。以期望得到更精确的解。
LM优化中一般是固定所有物点坐标Xix,Xiy,Xiz,i=1,…,n优化相机的位置T和姿态R
6.如需要得出目标的经纬度,可根据局部坐标系原点的经纬度将相机在局部坐标系下的坐标(Tx,Ty,Tz)转换成大地经纬度。
说明:
真正实现了基于场景图像的室内定位,用于商场室内定位,导航,基于位姿的电子商务商铺广告发布。
如图2所示为单像双点定位示意图
基于智能机姿态数据的单目单点定位方法
假设智能机上的相机内部参数矩阵为:
K = f x c x f y c y 1
fx,fy分别指相机内部参数中的水平和垂直焦距像素长,理想情况下应满足fx=fy
被观察物体是一个直径=D大小的物体,
在智能机上成像的宽度是Δu,高度是Δv,
成像中心点像坐标u,v,
采用上述方法获取智能机的姿态矩阵Rg,R=△RRg得到智能机上摄像头的姿态矩阵R。△R是摄像头相对于智能机的转换矩阵;
以下分两种情况讨论:
(3)若已知智能机摄像头光心局部坐标系坐标是T,
可单目估算出物体的局部坐标系下三维坐标:
X = T + z R T K - 1 u v 1 = T + z R T u - c x f x v - c y f y 1 - - - ( HH 7 )
其中 z = D &CenterDot; MIN ( f x &Delta;u , f y &Delta;v )
(4)反过来若已知物体的局部坐标系下三维坐标X,可以求相机坐标T
T = X - z R T u - c x f x v - c y f y 1 - - - ( HH 8 )
这种情况实现了相机的单目定位。
这种单像单点定位方法同样也可以采用前述单像双点定位中的Ransac容错模式,只不过随机挑选2个像点改为随机挑选1个像点;数学模型由(HH2)改为由(HH8)得到相机坐标。
基于智能机姿态数据的相对定位算法
假设相机1,2之间有i=1..n≥2对同名点u1i,v1i~u2i,v2i,前面所述方法计算智能机的姿态Rg1,Rg2,进一步计算2个智能机上各自相机姿态R1=△RRg1 R2=△RRg2△R是摄像头相对于智能机的转换矩阵。
相机2相对于相机1的姿态矩阵R=R2R1 T
已知相机1的内参矩阵 K 1 = f 1 c x 1 f 1 c y 1 1 , 相机2的内参矩阵 K 2 = f 2 c x 2 f 2 c y 2 1 . 其中cxi,cyi是相机i的像素主点坐标,fi是相机i的焦距像素长。
已知两相机之间的距离是L;
可以计算相机2相对于相机1的位移矢量T。
方法步骤如下:
1.首先构建矩阵A
A = u 12 * z u 11 R * y - u 12 * y u 11 R * z u 12 * x u 11 R * z - u 12 * z u 11 R * x u 12 * y u 11 R * x - u 12 * x u 11 R * y . . . . . . . . . . . . u n 2 * z u n 1 R * y - u n 2 * y u n 1 R * z u n 2 * x u n 1 R * z - u n 2 * z u n 1 R * x u n 2 * y u n 1 R * x - u n 2 * x u n 1 R * y
其中
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
2.如果确认n对点都是正确的,则
求约束||t3x1||=1下Anx3t3x1=0的解
或采用SVD分解得到Anx3=UnxnWnx3VT 3x3,
分解出来的V的最后1列的矢量,即对应于最小奇异值的特征矢量,即为t
T=-LRT t得到结果,结束
否则继续进行以下步骤
3.设置迭代初值nmax=0 k=1
4.随机挑选A矩阵中的2行,构建A2x3
就是求约束||t2||=1下A2x3t2=0的解
或采用SVD分解得到A2x3=U2x2W2x3VT 3x3,
分解出来的V的最后1列的矢量即为t2
5.将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
6.如果(1-(nmax/n)2)k<0.00001错误率足够小,退出迭代进入步骤8.
7迭代次数k增加1,回到步骤4反复迭代;
8.最后采用最小二乘法针对最大内点集ζ重新计算一次最优t,
求约束||t3x1||=1下An’x3t3x1=0的解其中n’=nmax
或采用SVD分解得到An’x3=Un’xn’Wn’x3VT 3x3,
分解出来的V的最后1列矢量,即对应于最小奇异值的特征矢量,即为t最终得到T=-LRTt。
以前在未知相机姿态数据的情况下,两相机之间相对定向计算是需要至少5对点的,而本发明中在已知相机姿态的前提下,只需要至少2对即可计算相对位置了,可应用于序列图像三维重建,基于图像的室内外定位等领域。
本算法在得到相对姿态T以后可进一步虚拟出物方点,然后通过多相机LM算法优化R,T数据,使得精度进一步提高。
基于姿态数据的智能机3D遥控方法
基于智能机姿态的多自由度控制
构造通过n个关于Rg的函数实现智能机控制多自由度控制,智能机与被控制设备通过有线或无线机制进行数据通信,实现如鼠标或投影仪指针的移动和旋转控制,智能灯的红绿蓝三分量控制,无人机的空中飞行的3轴姿态控制等。
以控制鼠标为例,传统的鼠标只可能控制x,y两个自由度移动,而本发明的3自由度鼠标控制还包含鼠标在显示屏上的旋转,以便实现各种新应用。
方法的核心思想就是直接根据姿态矩阵Rg的三个矢量rx,ry,rz来控制鼠标,实际上就是期待ry矢量所指的方位来控制鼠标移动。
首先用权利要求1方法获取遥控智能机的姿态矩阵Rg,假设rij是Rg第i行j列的元素值;然后按以下方法实现x方向,y方向,旋转三个自由度控制鼠标:
y方向mouse2[1]:y轴ry的z分量控制鼠标上下移动;
鼠标的屏幕y坐标Ym=(h/2)(1+kyr23)或者
其中h为屏幕高度,ky为某一灵敏系数ky=0.01~1之间的某值。
分析:当kr23=0时,智能机ry保持水平,鼠标的屏幕y坐标正式h/2,位于屏幕中间高度。代码实现如下:
mouse2[1]=gl.win_height/2+3*gl.win_height/2*imu.r[5];//y轴的z分量
x方向mouse2[0]:y轴ry的x,y分量控制鼠标水平移动;
初始时Xm=W/2 W是显示屏幕宽度。
根据实时不停采集到的姿态矩阵R,不停修正鼠标的屏幕x坐标Xm
Xm不断减小Tkx(φ-φ’)
其中φ=atan2(r22,r21) φ’是上次得到的φ值
kx为某一灵敏系数kx=0.01~1之间的某值。
T是两次采样时间间隔ms
在不停的修改过程中若Xm小于0则Xm等于0,若Xm大于W则Xm等于W。
代码实现如下:
float angleh=atan2(imu.r[4],imu.r[3]);//φ
static float old_angle_h=angleh;//φ’
mouse2[0]-=T*gl.win_width/2*(angleh-old_angle_h)/8;
old_angle_h=angleh;
//鼠标的水平位置不能超界
if(mouse2[0]<0)mouse2[0]=0;else if(mouse2[0]>gl.win_width)mouse2[0]=gl.win_width;
旋转方向mouse2[2]:绕y轴ry旋转控制鼠标旋转;
根据采集得到的R矩阵得到绕y轴ry旋转的角度弧度值
τ=atan2(r13,r33)
这个弧度值可以用作特殊用途的控制,比如游戏中飞机旋转角,机械设计中的零件旋转,房屋建筑CAD设计中的墙面旋转等。
绕y轴旋转来控制鼠标旋转,mouse2[2]得到的就是绕y轴旋转角的弧度值τ,
代码实现如下:
mouse2[2]=atan2(imu.r[2],imu.r[8]);
如果智能机没有安装磁力计,而是安装了陀螺仪,采用以下方法连续获取姿态矩阵Rg
第1步计算Rg的初值
R g = sa z L 1 - ( a y / L ) 2 - sa x a y / [ L 2 1 - ( a y / L ) 2 ] a x / L 0 s 1 - ( a y / L ) 2 a y / L - s a x L 1 - ( a y / L ) 2 - sa z a y / [ L 2 1 - ( a y / L ) 2 ] a z / L
az>0,±和μ取上半部分,其中ax,ay,az是当前加速度计的采样值,
当az≤0时,s=-1,az>0时,s=1;
将Rg转换成4元数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,对4元数按如下方式修正,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}单位化成 { q 0 , q 1 , q 2 , q 3 } / q 0 2 + q 1 2 + q 2 2 + q 3 2 输出
4元数转Rg矩阵公式如下
q 0 2 + q 1 2 - q 2 2 - q 3 2 2 ( q 1 q 2 + q 0 q 3 ) 2 ( q 1 q 3 - q 0 q 2 ) 2 ( q 1 q 2 - q 0 q 3 ) q 0 2 - q 1 2 + q 2 2 - q 3 2 2 ( q 2 q 3 + q 0 q 1 ) 2 ( q 1 q 3 + q 0 q 2 ) 2 ( q 2 q 3 - q 0 q 1 ) q 0 2 - q 1 2 - q 2 2 + q 3 2 ;
第7步回到第3步继续接收陀螺仪运动数据更新姿态4元数q0~q3,在循环的过程中每次到第7步都能输出当前的Rg矩阵和四元数。
在本技术可以用于智能机姿态遥控设备。
具体实施方式,智能机绕z轴旋转角速度积分控制鼠标在屏幕水平方向移动,智能机绕x轴旋转角速度积分控制鼠标在屏幕垂直方向移动,智能机绕y轴旋转角速度积分控制鼠标自身的旋转(普通的鼠标没有旋转控制的功能,因此这是一个可选功能,可增加或放弃此项功能)。
通过智能机无线控制计算机鼠标、平板电脑、笔记本电脑,电视机、幻灯片指针等各种设备中的指针移动操作。
基于姿态数据的运动方向测定及导航方法
步骤1.按权利要求1中所述方法获取智能机的姿态矩阵Rg
步骤2.测量局部值坐标系下物体的运动加速度a
有两种获取方式,
(1)利用线性加速度传感器得到的a,再通过公式a=Rg Ta计算出a为指北坐标系下智能机的加速度;其中Rg是指北坐标系下的姿态矩阵。
说明
线性加速度a得到的是相对智能机自身的运动加速度,然而用户往往关心的是智能机的绝对运动加速度而不是自身相对运动加速度,所以需要通过姿态矩阵R将直接检测出来的自身相对运动加速度a还原成绝对运动加速度a=RTa。
(2)如果没有线性加速度传感器,测量智能机重力加速度矢量ag=[agx agy agz]T,通过公式a=Rg Tag-[0 0 g0]T计算得到,其中ag是重力加速度传感器的测量值,g0是重力加速度的传感器平均幅值,即重力加速度计在静止条件下测得的加速度矢量模的均值。
这种方式中通常a是相对于局部指北坐标系的,也就是a的x分量代表往北移动的加速度分量,a的y分量代表往西移动的加速度分量。
步骤3.对a积分一次,也就是累加a,即可得到目标在指北坐标系下的移动速度v,积分两次,也就是累加v即可得到目标在指北坐标系下的位移s
具体实施方式:
v+=a
s+=v
步骤4.为避免累积误差,若这时获取到其它精确的定位方法得到的定位值,如GPS,WIFI或权利要求3图像定位得到的定位值s*,立即对目标位置进行纠正。
具体实施方式:
s=s*
v=0
a=0
步骤5.回到步骤1进行下一轮的定位位置修正。
本方法适用于任意智能机姿态的室内定位,运动方向检测和室内辅助定位。这种方式通常a是相对于局部指北坐标系的,也就是a的x分量代表往北移动的分量,a的y分量代表往西移动的分量。
基于姿态数据的虚拟现实方向漫游控制方法
1)根据漫游者的输入或者漫游者自身位置确定局部坐标系中的初始坐标位置(ex,ey,ez)。
2)采用上述方法得到智能机的姿态矩阵Rg,R=△RRg得到智能机显示屏的姿态矩阵R。△R是智能机显示屏相对于智能机的转换矩阵;
3)如果是智能机操作者单指相对于智能机屏幕本体滑动矢量△X,△Y
如果|r33|>|r13|且|r33|>|r23|则
vx=ΔXr11+ΔYr21 vy=ΔXr12+ΔYr22
否则:
v x v y = 1 r 31 2 + r 32 2 r 13 2 + r 23 2 r 13 r 31 - r 23 r 32 r 13 r 32 + r 23 r 31 r 13 r 32 + r 23 r 31 - ( r 13 r 31 - r 23 r 32 ) &Delta;X &Delta;Y
如果是智能机操作者双指做拉开或合拢操作,得到拉开和合拢之前双指之间的屏幕距离d0,以及拉开和合拢之后双指之间的屏幕距离d1
4)修正漫游者的移动位置ex,ey,ez
ex-vx-->ex ey-vy-->ey ez*(d0/d1)->ez
5)根据漫游者ex,ey,ez,注视方向ex+r31,ey+r32,ez+r33,相机自身朝上方向-r21,-r22,-r23
其中rij是R矩阵的i行j列元素值,
设置漫游者在局部坐标系中的位置和观察姿态
在Android OpenES中可采用
GLU.gluLookAt(gl,Xd,Yd,Zd,
Xd+r31,Yd+r32,Zd+r33,
‐r21,‐r22,‐r23);
编程实现设置漫游观察者位置和姿态;
6)智能机屏幕渲染局部坐标系中的三维场景;
7)回到步骤2)动态连续修正漫游者的姿态和位置。
本发明实施例基于姿态数据的视频图像投影到地图的方法,主要包括以下步骤:
采用上述方法得到智能机的姿态矩阵R=△RRg,△R是智能机摄像头相对于智能机的转换矩阵;
根据GPS测得拍摄相机在局部坐标系中的坐标为T=Rv(X-Ts),其中
T s = ( N s + h s ) cos &theta; s cos &phi; s ( N s + h s ) cos &theta; s sin &phi; s ( N s ( 1 - e 2 ) + h s ) sin &theta; s N = ( N s + h ) cos &theta; cos &phi; ( N s + h ) cos &theta; sin &phi; ( N s ( 1 - e 2 ) + h ) sin &theta;
是局部坐标系原点的经度,θs是局部坐标系原点的纬度,hs局部坐标系原点的高度。
θs,hs确定了地图投影面原点的位置。
Ns是随纬度变化的卯酉圈曲率半径;
a,b是地球椭球的长短轴,是大地测量学中的已知常量;e是偏心率,是定值;
h是智能机在局部坐标系中的Z坐标,即高度
此时相机或摄像头拍摄下图像帧I。
将图像帧I经过Homograph变换Hmap=[K[r1 r2 -RgT]]-1=[r1 r2 -RT]-1K-1得到Imap是视频图像映射到地图上的正射影像。其中
K = f x c x f y c y 1 是智能机上的相机内部参数矩阵。fx,fy分别指相机内部参数中的水平和垂直焦距像素长,cx,cy)是相机主点坐标。
本发明中明确说明了根据姿态矩阵Rg在X轴指北局部坐标系中的几何意义,若定义成其他局部坐标系,相关结论可用已有技术进行替换。
如果定义X轴朝东,Y轴朝北则权利要求1方法1公式(1)中的替换成算出Rg的三个行矢量正是X轴朝东Y朝北坐标系下的3个分量。
方法2,3中的Rg纵东,即直接得到X轴指向东Y轴指向北坐标系下的姿态矩阵。
应当理解的是,对本领域普通技术人员来说,可以根据上述说明加以改进或变换,而所有这些改进和变换都应属于本发明所附权利要求的保护范围。

Claims (17)

1.一种智能机姿态矩阵计算方法,其特征在于,包括以下步骤:
通过智能机加速度计检测三个值{vax’,vay’,vaz’}计算ax、ay和az
a x a y a z = R a T v ax &prime; v ay &prime; v az &prime; ,
或对{vax’,vay’,vaz’}进行滤波后得到{vax,vay,vaz},计算ax、ay和az
a x a y a z = R a T v ax v ay v az , 其中Ra是重力加速度传感器相对于智能机的姿态转换矩阵;
通过智能机磁力计获取方位角的三角函数;或者方向传感器获取方位角
计算姿态矩阵
姿态矩阵Rg的第1行是智能机x轴在局部坐标系下的单位矢量;第2行是智能机y轴在局部坐标系下的单位矢量;第3行是智能机z轴在局部坐标系下的单位矢量;其中局部坐标系是z轴沿重力指向地球外,x轴朝北y轴朝西的坐标系;
其中
R &theta; = sa z L 1 - ( a y / L ) 2 - sa x a y / [ L 2 1 - ( a y / L ) 2 ] a x / L 0 s 1 - ( a y / L ) 2 a y / L - s a x L 1 - ( a y / L ) 2 - sa z a y / [ L 2 1 - ( a y / L ) 2 ] a z / L , L = a x 2 + a y 2 + a z 2
当az<0时,s=-1,az≥0时,s=1;
m 0 x m 0 y m 0 z = R &theta; T m x m y m z ;
其中mx,my,mz是智能机磁力计检测出来的三个值{vmx,vmy,vmz},或{vmx,vmy,vmz}经过滤波得到的三个值;
若将替换成
则算出的Rg是X轴朝东Y朝北坐标系下的姿态矩阵。
2.根据权利要求1所述的方法,其特征在于,若智能机中安装有方向传感器:则通过该智能机获取方位角带入公式(1)计算姿态矩阵Rg
3.一种智能机姿态矩阵计算方法,其特征在于,该方法基于智能机支持Android系统,具体包括以下步骤:
获取智能机Android系统函数中的getRotationMatrix函数获取矩阵Rg纵东’,然后将Rg纵东’经过矩阵转置操作得到Rg纵东=(Rg纵东’)T,Rg纵东是X轴指向东Y轴指向北坐标系下的姿态矩阵;
计算局部坐标系下的姿态矩阵姿态矩阵Rg的第1行是智能机x轴在局部坐标系下的单位矢量;第2行是智能机y轴在局部坐标系下的单位矢量;第3行是智能机z轴在局部坐标系下的单位矢量;其中局部坐标系是z轴沿重力指向地球外,x轴朝北y轴朝西的坐标系。
4.根据权利要求2所述的方法,其特征在于,若智能机支持旋转矢量传感器,则通过智能机旋转矢量传感器输出的3个数据q1=values[0],q2=values[1],q3=values[2],计算如果旋转矢量传感器能输出4个数据,则q0=values[3];
再按以下公式计算Rg纵东矩阵
其中,Rg纵东是X轴指向东Y轴指向北坐标系下的姿态矩阵;
再采用公式进一步得到局部坐标系下的姿态矩阵Rg
5.一种基于智能机姿态矩阵的指向或导航方法,其特征在于,包括以下步骤:
1)定义智能机主方向或载体主方向相对于智能机自身的矢量单位p;
2)根据权利要求1-4中任一项所述的方法计算智能机当前姿态矩阵Rg
3)计算p=Rg Tp,为智能机主方向或载体主方向相对于指北坐标系的矢量;
4)计算局部坐标系中的目标矢量vo=O-P,其中局部坐标系中智能机自身坐标为P,目标的坐标为O,则目标矢量vo=O-P;
5)计算矢量p与目标矢量vo之间夹角的余弦,或计算两个矢量之间的夹角;
6)若夹角的余弦或者两个矢量之间的夹角在预设范围内,则触发智能机执行预设关联事件。
6.一种基于智能机姿态矩阵的2D导航方法,其特征在于,包括以下步骤:
将智能机水平放置,利用方向传感器的第一个值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φ}同时画出。
7.一种基于智能机姿态数据的视频影像实时纠正方法,其特征在于,包括以下步骤:
采用权利要求1-4中任一项所述的方法,获取智能机拍摄视频的每一帧对应的姿态矩阵Rg,根据R=△R·Rg得到智能机上的摄像头的局部坐标姿态矩阵R,其中△R是摄像头相对于智能机的转换矩阵;
将R矩阵分解为R=RτR_,计算得到矩阵Rτ
其中,R_是预设期待输出图像的姿态矩阵,Rτ是变换矩阵;
将原始图像I经过H=K2Rτ TK-1的Homograph变换得到I’,
其中 K = f c x f c y 1 是拍摄相机的内部参数矩阵,f是焦距的像素长度,(cx,cy)是相机主点坐标,cx=w/2,cy=h/2,w、h是原始图像I的宽和高;
K 2 = f 2 c x 2 f 2 c y 2 1 是纠正以后虚拟相机的内部参数矩阵,f2是纠正以后虚拟相机的焦距的像素长度,(cx2,cy2)是纠正以后虚拟相机主点坐标。
8.一种基于姿态数据的智能机单像定位方法,其特征在于,包括以下步骤:
搜集采集物方点,转化成局部坐标系坐标;
采用权利要求1-4中任一项所述的方法获取智能机的姿态矩阵Rg,根据R=△R·Rg得到智能机上摄像头的姿态矩阵R,△R是摄像头相对于智能机的转换矩阵;
拍摄一张图像,自动提取其中的多个特征点,通过匹配算法得到与物点对应的n对物像同名点;n个物方点的坐标是Xi=[Xix,Xiy,Xiz]T i=1,…,n;对应n个像点坐标是[ui vi]Ti=1,…,n;
计算相机在局部坐标系下的坐标T=[Tx,Ty,Tz]T
(1)特征点无错情况下
若确认多个特征点无错误,则采用数学模型解方程得到自身在局部坐标系下坐标Tx,Ty,Tz,
z 1 - x 1 z 1 - y 1 . . . . . . . . . z n - x n z n - y n T x T y T z = z 1 X 1 x - x 1 X 1 z z 1 X 1 y - y 1 X 1 z . . . z n X nx - x n X nz z n X ny - y n X nz - - - ( HH 2 )
其中 x i y i z i = R T u i - c x f x v i - c y f y 1
进而得到相机位置T=[Tx,Ty,Tz]T
(2)容错情况下
若不确认多个特征点是否全部正确,采用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*。
9.根据权利要求8所述的方法,其特征在于,其中单目多点容错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)k<pe,pe是RANSAC容忍错误概率,设为10-2~10-20之间的一个数值;
6)将前面搜索得到的最优内点集合ζmax搜集起来进行最后一次多点最小2乘计算,按公式(HH2)计算得到最终结果Tbest
10.基于智能机姿态数据的单目单点定位方法,其特征在于,包括步骤:
假设智能机上的相机内部参数矩阵为:
K = f x c x f y c y 1
fx,fy分别指相机内部参数中的水平和垂直焦距像素长,
被观察物体是一个直径=D大小的物体,
在智能机上成像的宽度是Δu,高度是Δv,
成像中心点像坐标(u,v),(cx,cy)是相机主点坐标;
采用权利要求1-4方法获取智能机的姿态矩阵Rg,R=△RRg得到智能机上摄像头的姿态矩阵R,△R是摄像头相对于智能机的转换矩阵;
计算 z = D &CenterDot; MIN ( f x &Delta;u , f y &Delta;v )
(1)若已知智能机摄像头光心局部坐标系坐标是T,
单目估算出物体的局部坐标系下三维坐标X:
X = T + z R T K - 1 u v 1 = T + z R T u - c x f x v - c y f y 1
(2)若已知物体的局部坐标系下三维坐标X,计算相机坐标T
T = X - z R T u - c x f x v - c y f y 1 .
11.一种基于智能机姿态数据的相对定位方法,其特征在于,假设相机1,2之间有i=1..n≥2对同名点u1i,v1i~u2i,v2i
相机2相对于相机1的姿态矩阵R=R2R1 T;其中R1=△RRg1 R2=△RRg2,Rg1,Rg2是智能机相机在拍摄的1,2两个地点测出来的姿态矩阵数据,△R是摄像头相对于智能机的转换矩阵;已知相机1的内参矩阵 K 1 = f 1 c x 1 f 1 c y 1 1 , 相机2的内参矩阵 K 2 = f 2 c x 2 f 2 c y 2 1 , 其中(cxi,cyi)是相机i的像素主点坐标,fi是相机i的焦距像素长,已知两相机之间的距离是L;计算相机2相对于相机1的位移矢量T;
方法具体包括如下步骤:
1)用权利要求1所述的方法计算智能机的姿态Rg1,Rg2,进一步计算2个智能机上各自相机姿态R1=△RRg1 R2=△RRg2,得到相对姿态R=R2R1 T
2)首先构建矩阵A
A = u 12 * z u 11 R * y - u 12 * y u 11 R * z u 12 * x u 11 R * z - u 12 * z u 11 R * x u 12 * y u 11 R * x - u 12 * x u 11 R * y . . . . . . . . . . . . u n 2 * z u n 1 R * y - u n 2 * y u n 1 R * z u n 2 * x u n 1 R * z - u n 2 * z u n 1 R * x u n 2 * y u n 1 R * x - u n 2 * x u n 1 R * y
其中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=UnxnWnx3VT 3x3,分解出来的V的最后1列的矢量,即对应于最小奇异值的特征矢量,即为t,T=-LRTt得到结果,结束;否则继续进行步骤4);
4)设置迭代初值nmax=0,k=1;
5)随机挑选A矩阵中的2行,构建A2x3
就是求约束||t2||=1下A2x3t2=0的解,或采用SVD分解得到A2x3=U2x2W2x3VT 3x3,
分解出来的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’x3VT 3x3;分解出来的V的最后1列矢量,即对应于最小奇异值的特征矢量,即为t;最终得到T=-LRTt。
12.一种基于姿态矩阵的智能机3D遥控方法,其特征在于,包括以下步骤:
设计关于姿态矩阵Rg的n个函数f1(Rg),…,fn(Rg),实现智能机姿态的n自由度遥控;
首先用权利要求1-4中任一项所述的方法获取遥控智能机的姿态矩阵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)。
13.根据权利要求12所述的方法,其特征在于,如果智能机安装了陀螺仪,则采用以下方法连续获取姿态矩阵Rg
第1步计算Rg的初值
R g = sa z L 1 - ( a y / L ) 2 - sa x a y / [ L 2 1 - ( a y / L ) 2 ] a x / L 0 s 1 - ( a y / L ) 2 a y / L - s a x L 1 - ( a y / L ) 2 - sa z a y / [ L 2 1 - ( a y / L ) 2 ] a z / L
az>0,±和μ取上半部分,其中ax,ay,az是当前加速度计的采样值,
当az≤0时,s=-1,az>0时,s=1;
将Rg转换成4元数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,对4元数按如下方式修正,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}单位化成 { q 0 , q 1 , q 2 , q 3 } / q 0 2 + q 1 2 + q 2 2 + q 3 2 输出4元数转Rg矩阵公式如下
q 0 2 + q 1 2 - q 2 2 - q 3 2 2 ( q 1 q 2 + q 0 q 3 ) 2 ( q 1 q 3 - q 0 q 2 ) 2 ( q 1 q 2 - q 0 q 3 ) q 0 2 - q 1 2 + q 2 2 - q 3 2 2 ( q 2 q 3 + q 0 q 1 ) 2 ( q 1 q 3 + q 0 q 2 ) 2 ( q 2 q 3 - q 0 q 1 ) q 0 2 - q 1 2 - q 2 2 + q 3 2 ;
第7步回到第3步继续接收陀螺仪运动数据更新姿态4元数q0~q3,在循环的过程中每次到第7步都能输出当前的Rg矩阵和四元数。
14.一种基于姿态数据的运动方向测定及导航方法,其特征在于,包括以下步骤:
步骤1.根据权利要求1-4中任一项所述的方法获取智能机的姿态矩阵Rg
步骤2.测量局部坐标系下物体的运动加速度a,a的x分量代表往北移动的分量,a的y分量代表往西移动的分量;
步骤3.对运动加速度a积分一次,得到目标在指北坐标系下的移动速度v,积分两次,得到目标在指北坐标系下的位移s
步骤4.为避免累积误差,若获取到其它精确的定位方法得到的定位值,则立即对目标位置进行纠正;
步骤5.回到步骤1进行下一轮的定位位置修正。
15.根据权利要求14所述的方法,其特征在于,步骤2中测量局部坐标系下物体的运动加速度a通过以下方法得到:
(1)若智能机中有线性加速度传感器,则利用线性加速度传感器得到加速度a,再通过公式a=Rg Ta计算出为指北坐标系下智能机的加速度a;其中Rg是指北坐标系下的姿态矩阵;或者
(2)如果没有线性加速度传感器,测量智能机重力加速度矢量ag=[agx agy agz]T,通过公式a=Rg Tag-[0 0 g0]T计算得到,其中ag是重力加速度传感器的测量值,g0是重力加速度的传感器平均幅值,即重力加速度计在静止条件下测得的加速度矢量模的均值。
16.一种基于姿态数据的虚拟现实方向漫游控制方法,其特征在于,包括以下步骤:
1)根据漫游者的输入或者漫游者的自身位置设置局部坐标系中的初始坐标位置(ex,ey,ez);
2)采用权利要求1-4的方法得到智能机的姿态矩阵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;否则:
v x v y = 1 r 31 2 + r 32 2 r 13 2 + r 23 2 r 13 r 31 - r 23 r 32 r 13 r 32 + r 23 r 31 r 13 r 32 + r 23 r 31 - ( r 13 r 31 - r 23 r 32 ) &Delta;X &Delta;Y
5)在滑动数据是漫游者双指做拉开或合拢操作所获得的情况下,则得到拉开和合拢之前双指之间的屏幕距离,以及拉开和合拢之后双指之间的屏幕距离;
6)根据步骤4)和5)中得到的数据修正漫游者在局部坐标系中的坐标位置(ex,ey,ez),并根据修正后的坐标位置显示局部坐标系中的三维场景。
17.一种基于姿态数据的视频图像投影到地图的方法,其特征在于,包括以下步骤:
采用权利要求1-4所述的方法得到智能机的姿态矩阵R=△RRg,△R是智能机摄像头相对于智能机的转换矩阵;
根据GPS测得拍摄相机在局部坐标系中的坐标为T,此时相机或摄像头拍摄下图像帧I;
将图像帧I经过Homograph变换Hmap=[K[r1 r2 -RT]]-1=[r1 r2 -RT]-1K-1得到Imap,Imap是视频图像映射到地图上的正射影像,其中r1 r2分别是R矩阵的第1列和第2列,K是智能机上的相机内部参数矩阵, K = f x c x f y c y 1 , fx,fy分别指相机内部参数中的水平和垂直焦距像素长,cx,cy)是相机主点坐标。
CN201410466348.XA 2013-12-29 2014-09-12 姿态矩阵的计算方法及基于姿态矩阵的定位导航方法 Active CN104748751B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410466348.XA CN104748751B (zh) 2013-12-29 2014-09-12 姿态矩阵的计算方法及基于姿态矩阵的定位导航方法

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
CN201310736179 2013-12-29
CN201310736170 2013-12-29
CN2013107361792 2013-12-29
CN2013107361701 2013-12-29
CN201410466348.XA CN104748751B (zh) 2013-12-29 2014-09-12 姿态矩阵的计算方法及基于姿态矩阵的定位导航方法

Publications (2)

Publication Number Publication Date
CN104748751A true CN104748751A (zh) 2015-07-01
CN104748751B CN104748751B (zh) 2019-02-22

Family

ID=53477589

Family Applications (3)

Application Number Title Priority Date Filing Date
CN201410163542.0A Active CN104748746B (zh) 2013-12-29 2014-04-23 智能机姿态测定及虚拟现实漫游方法
CN201410466348.XA Active CN104748751B (zh) 2013-12-29 2014-09-12 姿态矩阵的计算方法及基于姿态矩阵的定位导航方法
CN201480044865.6A Active CN105474033B (zh) 2013-12-29 2014-12-26 智能机姿态测定、全景影像生成及目标识别方法

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN201410163542.0A Active CN104748746B (zh) 2013-12-29 2014-04-23 智能机姿态测定及虚拟现实漫游方法

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN201480044865.6A Active CN105474033B (zh) 2013-12-29 2014-12-26 智能机姿态测定、全景影像生成及目标识别方法

Country Status (2)

Country Link
CN (3) CN104748746B (zh)
WO (1) WO2015096806A1 (zh)

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105911576A (zh) * 2016-04-08 2016-08-31 北京无线电计量测试研究所 确定分布式协同系统中副分系统的位置信息的方法及装置
CN106352897A (zh) * 2016-08-26 2017-01-25 杨百川 一种基于单目视觉传感器的硅mems陀螺误差估计与校正方法
CN106444809A (zh) * 2016-10-12 2017-02-22 湖南绿野航空科技有限公司 一种无人机飞行控制器
CN107037403A (zh) * 2016-09-26 2017-08-11 蔚来汽车有限公司 基于增强现实的物体相对定位方法
CN107145706A (zh) * 2017-03-30 2017-09-08 北京奇艺世纪科技有限公司 虚拟现实vr设备融合算法性能参数的评估方法及装置
CN107462244A (zh) * 2017-04-24 2017-12-12 北京航空航天大学 一种基于gps定位和航摄图像匹配的航空遥感平台姿态角高精度测量方法
CN107493531A (zh) * 2017-08-04 2017-12-19 歌尔科技有限公司 一种头部姿态检测方法、装置和耳机
TWI614640B (zh) * 2016-08-11 2018-02-11 拓景科技股份有限公司 實境資訊影片之播放管理方法及系統,及其相關電腦程式產品
CN108444452A (zh) * 2018-02-11 2018-08-24 武汉雄楚高晶科技有限公司 目标经纬度和拍摄装置的三维空间姿态的检测方法及装置
CN109490926A (zh) * 2018-09-28 2019-03-19 浙江大学 一种基于双目相机和gnss的路径规划方法
CN110036259A (zh) * 2017-09-30 2019-07-19 华为技术有限公司 一种姿态矩阵的计算方法及设备
CN110427106A (zh) * 2019-07-19 2019-11-08 武汉恒新动力科技有限公司 体感动作数据处理方法、设备及计算机可读存储介质
CN110954055A (zh) * 2019-12-17 2020-04-03 中国人民解放军海军航空大学 一种球面两站测向交叉定位计算方法
CN112762955A (zh) * 2020-12-25 2021-05-07 灵鹿科技(嘉兴)股份有限公司 一种导航系统定位纠偏方法
CN113050692A (zh) * 2021-03-26 2021-06-29 极研(福建)投资发展有限公司 一种具有社交功能的智能陪伴设备
CN115855117A (zh) * 2023-02-16 2023-03-28 深圳佑驾创新科技有限公司 相机和惯性测量单元相对车体安装姿态的联合标定方法

Families Citing this family (106)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105004342A (zh) * 2015-07-15 2015-10-28 成都万维图新信息技术有限公司 一种基于互联网的旅游数据处理方法
CN105395252A (zh) * 2015-12-10 2016-03-16 哈尔滨工业大学 具有人机交互的可穿戴式血管介入手术三维立体图像导航装置
JP6362634B2 (ja) * 2016-02-05 2018-07-25 株式会社バンダイナムコエンターテインメント 画像生成システム、ゲーム装置及びプログラム
CN107295393B (zh) * 2016-04-11 2019-12-13 腾讯科技(北京)有限公司 媒体播放中的附加媒体展示方法及装置以及计算设备和计算机可读存储介质
CN107644395B (zh) * 2016-07-21 2021-08-10 荣耀终端有限公司 图像处理方法以及移动设备
US10169914B2 (en) * 2016-08-26 2019-01-01 Osense Technology Co., Ltd. Method and system for indoor positioning and device for creating indoor maps thereof
TWI596366B (zh) * 2016-10-24 2017-08-21 財團法人工業技術研究院 定位方法與其影像擷取裝置
CN106507086B (zh) * 2016-10-28 2018-08-31 北京灵境世界科技有限公司 一种漫游实景vr的3d呈现方法
CN106530218B (zh) * 2016-10-28 2020-04-10 浙江宇视科技有限公司 一种坐标转换方法及装置
CN106598229B (zh) * 2016-11-11 2020-02-18 歌尔科技有限公司 一种虚拟现实场景的生成方法、设备及虚拟现实系统
CN106403959A (zh) * 2016-11-22 2017-02-15 天津海运职业学院 一种应用多传感器阵列的电磁定位系统
CN106610721A (zh) * 2016-12-16 2017-05-03 飞狐信息技术(天津)有限公司 实现同时响应陀螺仪与手势拖拽交互的方法和装置及手机
JP6866646B2 (ja) * 2017-01-16 2021-04-28 オムロン株式会社 センサ支援システム、端末、センサおよびセンサ支援方法
CN107402004B (zh) * 2017-07-28 2021-03-09 歌尔光学科技有限公司 传感器的姿态信息获取方法及装置
CN107545040B (zh) * 2017-08-04 2020-09-08 深圳航天智慧城市系统技术研究院有限公司 一种在计算机三维地理信息场景中标注方向的方法及系统
CN109389638B (zh) * 2017-08-08 2020-11-06 重庆虚拟实境科技有限公司 摄影机位置确定方法及系统
CN107516327B (zh) * 2017-08-21 2023-05-16 腾讯科技(上海)有限公司 基于多层滤波确定相机姿态矩阵的方法及装置、设备
TWI649721B (zh) * 2017-12-06 2019-02-01 凌通科技股份有限公司 無人飛行機之全景拍照方法與使用其之無人飛行機
CN109900238B (zh) * 2017-12-08 2021-01-22 中国电信股份有限公司 基站天线角的测量方法、装置和计算机可读存储介质
CN108492123B (zh) * 2018-01-17 2022-02-15 上海大兮软件科技有限公司 一种基于虚拟现实技术的广告发布系统及其发布方法
CN110148205B (zh) * 2018-02-11 2023-04-25 北京四维图新科技股份有限公司 一种基于众包影像的三维重建的方法和装置
GB2571306A (en) * 2018-02-23 2019-08-28 Sony Interactive Entertainment Europe Ltd Video recording and playback systems and methods
CN108801274B (zh) * 2018-04-16 2021-08-13 电子科技大学 一种融合双目视觉和差分卫星定位的地标地图生成方法
CN110417489B (zh) * 2018-04-26 2021-09-17 杭州海康机器人技术有限公司 一种无人机定向天线的校准方法及装置
CN108682036B (zh) * 2018-04-27 2022-10-25 腾讯科技(深圳)有限公司 位姿确定方法、装置及存储介质
CN108994820A (zh) * 2018-07-27 2018-12-14 国网江苏省电力有限公司徐州供电分公司 用于带电作业的机器人系统及作业场景构建方法
CN109407935A (zh) * 2018-09-14 2019-03-01 歌尔科技有限公司 一种虚拟现实显示控制方法、装置和系统
CN111145248B (zh) * 2018-11-06 2023-06-27 北京地平线机器人技术研发有限公司 位姿信息确定方法、确定装置和电子设备
CN109460077B (zh) * 2018-11-19 2022-05-17 深圳博为教育科技有限公司 一种自动跟踪方法、自动跟踪设备及自动跟踪系统
CN111220156B (zh) * 2018-11-25 2023-06-23 星际空间(天津)科技发展有限公司 一种基于城市实景的导航方法
CN109871739B (zh) * 2018-12-27 2023-06-23 南京国图信息产业有限公司 基于yolo-sioctl的机动站自动目标检测与空间定位方法
CN109785373B (zh) * 2019-01-22 2022-12-23 东北大学 一种基于散斑的六自由度位姿估计系统及方法
CN109636077B (zh) * 2019-02-19 2022-11-25 浙江大学 基于双重局部位姿变换的变节点装配路径规划方法
CN110036411B (zh) * 2019-02-27 2023-07-28 香港应用科技研究院有限公司 生成电子三维漫游环境的装置和方法
CN109920064A (zh) * 2019-03-14 2019-06-21 烟台九田自动化科技有限公司 一种基于增强现实技术的模型空间位姿的精确调整方法
CN110276471B (zh) * 2019-03-25 2023-06-16 东北大学 优化维修排队系统的方法
CN109827547B (zh) * 2019-03-27 2021-05-04 中国人民解放军战略支援部队航天工程大学 一种分布式多传感器空间目标同步关联方法
CN109959392B (zh) * 2019-04-04 2021-05-04 上海扩博智能技术有限公司 用于智能冰箱的运动传感器校准方法、系统、设备及介质
CN110033447B (zh) * 2019-04-12 2022-11-08 东北大学 一种基于点云方法的高铁重轨表面缺陷检测方法
CN110766738B (zh) * 2019-05-08 2024-03-26 叠境数字科技(上海)有限公司 基于多视角深度传感器的虚拟试鞋方法
CN110189315B (zh) * 2019-05-28 2022-09-16 李峥嵘 一种风电机组叶片无人机自动定位方法
CN112149467A (zh) * 2019-06-28 2020-12-29 北京京东尚科信息技术有限公司 飞机集群执行任务的方法和长机
CN110490155B (zh) * 2019-08-23 2022-05-17 电子科技大学 一种禁飞空域无人机检测方法
CN110533647B (zh) * 2019-08-28 2023-02-03 东北大学 一种基于线特征匹配的液晶屏Mark点定位方法
CN110580720B (zh) * 2019-08-29 2023-05-12 天津大学 一种基于全景图的相机位姿估计方法
CN110609569B (zh) * 2019-09-26 2022-07-15 温岭市非普电气有限公司 一种应用于电力杆塔的自主控制无人机精准巡检系统和方法
CN112166340B (zh) * 2019-10-17 2024-04-05 深圳市大疆创新科技有限公司 获取雷达位置的方法、雷达以及可移动平台
CN110908510B (zh) * 2019-11-08 2022-09-02 四川大学 一种倾斜摄影建模数据在沉浸式显示设备中的应用方法
CN110930508B (zh) * 2019-11-27 2023-03-24 西安应用光学研究所 二维光电视频与三维场景融合方法
CN111091117B (zh) * 2019-12-31 2021-01-29 北京城市网邻信息技术有限公司 用于二维全景图像的目标检测方法、装置、设备、介质
CN111198576A (zh) * 2020-01-09 2020-05-26 哈尔滨工程大学 人工智能大数据下粒子化无人机组控制方法、介质及机组
CN111273777A (zh) * 2020-02-11 2020-06-12 Oppo广东移动通信有限公司 虚拟内容的控制方法、装置、电子设备及存储介质
CN111383205B (zh) * 2020-03-11 2023-03-24 西安应用光学研究所 一种基于特征点和三维模型的图像融合定位方法
CN111429523B (zh) * 2020-03-16 2021-06-15 天目爱视(北京)科技有限公司 一种在3d建模中远距离标定方法
CN113379822B (zh) * 2020-03-16 2024-03-22 天目爱视(北京)科技有限公司 一种基于采集设备位姿信息获取目标物3d信息的方法
CN111402428B (zh) * 2020-03-23 2023-04-07 青岛大学 一种基于argis的地下管线探查方法
CN111445453B (zh) * 2020-03-25 2023-04-25 森兰信息科技(上海)有限公司 摄像机获取的琴键图像的偏移判断方法、系统、介质及装置
CN111368577B (zh) * 2020-03-28 2023-04-07 吉林农业科技学院 一种图像处理系统
CN111768490B (zh) * 2020-05-14 2023-06-27 华南农业大学 基于迭代最近点与人工干预的植物三维建模方法及系统
CN111681315B (zh) * 2020-06-10 2022-10-04 中国电子科技集团公司第二十八研究所 一种基于三维gis地图的高空与剖面标绘定位方法
CN111596693B (zh) * 2020-06-17 2023-05-26 中国人民解放军国防科技大学 基于云台相机的无人机对地面目标跟踪控制方法及系统
CN112070885A (zh) * 2020-08-31 2020-12-11 中国科学院空天信息创新研究院 一种基于摄影测量光度立体模型的三维重建方法和系统
CN112068703B (zh) 2020-09-07 2021-11-16 北京字节跳动网络技术有限公司 目标物体的控制方法、装置、电子设备及存储介质
CN112085770A (zh) * 2020-09-10 2020-12-15 上海庞勃特科技有限公司 一种用于乒乓球轨迹捕捉的双目多目标匹配与筛选方法
CN112066977B (zh) * 2020-09-15 2024-02-27 中国人民解放军63660部队 一种光电测量网络多目标匹配与编目方法
CN112182774B (zh) * 2020-10-16 2024-03-26 西安应用光学研究所 一种直升机载环境下的三维场景实时更新方法
CN112288824B (zh) * 2020-10-27 2024-04-12 中国科学院上海微系统与信息技术研究所 一种基于现实场景的长焦相机标定装置及标定方法
CN112468716B (zh) * 2020-11-02 2022-07-19 航天信息股份有限公司 摄像头视角矫正方法、装置、存储介质及电子设备
CN112492292B (zh) * 2020-11-27 2023-04-11 天目爱视(北京)科技有限公司 一种自由姿态的智能视觉3d信息采集设备
CN112541932B (zh) * 2020-11-30 2024-03-26 西安电子科技大学昆山创新研究院 基于双光相机不同焦距变换参数的多源图像配准方法
CN112711024B (zh) * 2020-12-04 2024-02-09 中国科学技术大学 基于视距空间最大化的音频室内定位系统节点布设方法
CN112506351A (zh) * 2020-12-23 2021-03-16 武汉小绿人动力技术股份有限公司 一种室外赛车场内沉浸式赛车系统及控制方法
CN113012032B (zh) * 2021-03-03 2022-12-09 中国人民解放军战略支援部队信息工程大学 一种自动标注地名的空中全景图像显示方法
CN113112545B (zh) * 2021-04-15 2023-03-21 西安电子科技大学 基于计算机视觉的手持移动打印装置定位方法
CN113034571B (zh) * 2021-04-16 2023-01-20 广东工业大学 一种基于视觉—惯性的物体三维尺寸测量方法
CN113407027B (zh) * 2021-06-04 2023-03-03 浙江商汤科技开发有限公司 位姿获取方法及装置和电子设备、存储介质
CN113487677B (zh) * 2021-06-07 2024-04-12 电子科技大学长三角研究院(衢州) 一种基于任意分布式配置的多ptz相机的室外中远距场景标定方法
CN113310505B (zh) * 2021-06-15 2024-04-09 苏州挚途科技有限公司 传感器系统的外参标定方法、装置及电子设备
CN113658263B (zh) * 2021-06-17 2023-10-31 石家庄铁道大学 基于视觉场景的电磁干扰源可视化标注方法
CN113724326B (zh) * 2021-08-17 2022-12-20 南京航空航天大学 一种自主空中加油场景下锥套目标的单目视觉位姿解算方法
CN113739765B (zh) * 2021-08-23 2024-03-26 中国人民解放军63660部队 一种无额外控制点的双目协同落点测量方法
CN113483669B (zh) * 2021-08-24 2023-02-17 凌云光技术股份有限公司 一种基于立体靶标的多传感器位姿标定方法及装置
CN113680059A (zh) * 2021-08-31 2021-11-23 中科锐新(北京)科技有限公司 一种户外场景ar游戏定位装置和方法
CN113795053B (zh) * 2021-09-16 2023-07-07 四川智动木牛智能科技有限公司 一种智能农机自动出入机库方法
CN115937722A (zh) * 2021-09-30 2023-04-07 华为技术有限公司 一种设备定位方法、设备及系统
CN116021506A (zh) * 2021-10-26 2023-04-28 美智纵横科技有限责任公司 机器人控制方法、装置和存储介质
CN114234811B (zh) * 2021-12-21 2024-04-02 长三角哈特机器人产业技术研究院 基于视觉和激光测距的管路粗定位方法及系统
CN114234876B (zh) * 2021-12-23 2023-06-23 中国人民解放军空军军医大学 一种测量远方位目标宽度的方法
CN114565714B (zh) * 2022-02-11 2023-05-23 山西支点科技有限公司 一种单目视觉传感器混合式高精度三维结构恢复方法
CN114543840B (zh) * 2022-02-25 2023-07-25 四川大学 环境因素对空三摄影影响实验装置和测评方法
CN114570658A (zh) * 2022-03-04 2022-06-03 赛那德科技有限公司 一种基于动态视觉的物流包裹分拣方法、系统及电子设备
CN114820485B (zh) * 2022-04-15 2024-03-26 华南理工大学 一种基于机载图像测量波浪爬高的方法
CN114742980B (zh) * 2022-04-15 2022-12-16 北京航空航天大学云南创新研究院 结合关系图谱的三维展馆浏览方法
CN114842173B (zh) * 2022-04-15 2023-08-29 北华航天工业学院 一种增强现实系统及其控制方法
CN114820504B (zh) * 2022-04-22 2023-03-21 江苏泽景汽车电子股份有限公司 图像融合偏差的检测方法、装置、电子设备及存储介质
CN114546141B (zh) * 2022-04-25 2022-07-12 成都柔水科技有限公司 一种基于ue5的适用于gis应用的相机控制方法
CN114904844A (zh) * 2022-04-26 2022-08-16 中南大学 一种针对精密复杂零件的机器人激光清洗路径规划与控制的方法
CN114963029B (zh) * 2022-06-20 2024-04-02 天津精仪精测科技有限公司 一种基于负压波监测的多径管网泄漏检测方法
CN114897965B (zh) * 2022-07-12 2022-09-13 北京飞渡科技有限公司 一种三维场景开敞度分析的方法及系统
CN115082560B (zh) * 2022-07-22 2022-11-18 季华实验室 一种物料位姿识别方法、装置、电子设备及上料系统
CN115512083B (zh) * 2022-09-20 2023-04-11 广西壮族自治区地图院 一种多倾斜角度数控沙盘自适应投影方法
CN115497087B (zh) * 2022-11-18 2024-04-19 广州煌牌自动设备有限公司 一种餐具姿态的识别系统及其方法
CN116309686A (zh) * 2023-05-19 2023-06-23 北京航天时代光电科技有限公司 游泳运动员视频定位测速方法、装置、设备及存储介质
CN116787443B (zh) * 2023-07-26 2023-11-21 中国科学院宁波材料技术与工程研究所 基于单位对偶四元数的并联机构运动学标定方法和系统
CN117058209B (zh) * 2023-10-11 2024-01-23 山东欧龙电子科技有限公司 一种基于三维地图的飞行汽车视觉图像深度信息计算方法
CN117392571B (zh) * 2023-12-08 2024-02-13 中国电力科学研究院有限公司 一种基于无人机图像的架空输配电线路验收方法及系统

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1601448A (zh) * 2004-09-30 2005-03-30 清华大学 手机游戏的互动信息感知方法及嵌入手机的智能游戏平台
JP2010049076A (ja) * 2008-08-22 2010-03-04 Yamaha Corp 方位追従表示装置、方位追従表示方法および方位追従表示プログラム
CN102297693A (zh) * 2010-06-24 2011-12-28 鼎亿数码科技(上海)有限公司 测量物体位置和方位的方法
CN102538820A (zh) * 2011-12-13 2012-07-04 中国测绘科学研究院 一种航空遥感集成系统检校方法
CN103363988A (zh) * 2013-07-24 2013-10-23 武汉诚迈科技有限公司 一种利用智能手机传感器实现地磁室内定位导航的方法
CN103369135A (zh) * 2013-06-20 2013-10-23 清华大学 移动设备位置识别的方法和系统

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101178615A (zh) * 2007-12-12 2008-05-14 美新半导体(无锡)有限公司 姿态及运动感应系统及使用该系统的便携式电子设备
CN101290229A (zh) * 2008-06-13 2008-10-22 哈尔滨工程大学 硅微航姿系统惯性/地磁组合方法
CN101917661B (zh) * 2010-08-20 2013-01-09 宇龙计算机通信科技(深圳)有限公司 一种移动终端通讯方法及移动终端
CN201917661U (zh) * 2010-11-29 2011-08-03 浙江亚特电器有限公司 一种移动机器人定位系统
CN102121827B (zh) * 2010-11-29 2013-12-18 浙江亚特电器有限公司 一种移动机器人定位系统及其定位方法
US20120229624A1 (en) * 2011-03-08 2012-09-13 Bank Of America Corporation Real-time image analysis for providing health related information

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1601448A (zh) * 2004-09-30 2005-03-30 清华大学 手机游戏的互动信息感知方法及嵌入手机的智能游戏平台
JP2010049076A (ja) * 2008-08-22 2010-03-04 Yamaha Corp 方位追従表示装置、方位追従表示方法および方位追従表示プログラム
CN102297693A (zh) * 2010-06-24 2011-12-28 鼎亿数码科技(上海)有限公司 测量物体位置和方位的方法
CN102538820A (zh) * 2011-12-13 2012-07-04 中国测绘科学研究院 一种航空遥感集成系统检校方法
CN103369135A (zh) * 2013-06-20 2013-10-23 清华大学 移动设备位置识别的方法和系统
CN103363988A (zh) * 2013-07-24 2013-10-23 武汉诚迈科技有限公司 一种利用智能手机传感器实现地磁室内定位导航的方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
CHI MING CHEUK 等: "Automatic Calibration for Inertial Measurement Unit", 《2012 12TH INTERNATIONAL CONFERENCE ON CONTROL, AUTOMATION, ROBOTICS & VISION》 *
张凤军 等: "基于智能手机的三维交互技术研究", 《计算机辅助设计与图形学学报》 *
曾浩: "基于android平台的增强现实导航软件的设计与实现", 《中国优秀硕士学位论文全文数据库 信息科技辑》 *

Cited By (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105911576A (zh) * 2016-04-08 2016-08-31 北京无线电计量测试研究所 确定分布式协同系统中副分系统的位置信息的方法及装置
TWI614640B (zh) * 2016-08-11 2018-02-11 拓景科技股份有限公司 實境資訊影片之播放管理方法及系統,及其相關電腦程式產品
CN106352897A (zh) * 2016-08-26 2017-01-25 杨百川 一种基于单目视觉传感器的硅mems陀螺误差估计与校正方法
CN107037403A (zh) * 2016-09-26 2017-08-11 蔚来汽车有限公司 基于增强现实的物体相对定位方法
CN106444809A (zh) * 2016-10-12 2017-02-22 湖南绿野航空科技有限公司 一种无人机飞行控制器
CN106444809B (zh) * 2016-10-12 2024-04-16 湖南绿野航空科技有限公司 一种无人机飞行控制器
CN107145706A (zh) * 2017-03-30 2017-09-08 北京奇艺世纪科技有限公司 虚拟现实vr设备融合算法性能参数的评估方法及装置
CN107462244A (zh) * 2017-04-24 2017-12-12 北京航空航天大学 一种基于gps定位和航摄图像匹配的航空遥感平台姿态角高精度测量方法
CN107493531A (zh) * 2017-08-04 2017-12-19 歌尔科技有限公司 一种头部姿态检测方法、装置和耳机
CN110036259A (zh) * 2017-09-30 2019-07-19 华为技术有限公司 一种姿态矩阵的计算方法及设备
US11392668B2 (en) 2017-09-30 2022-07-19 Huawei Technologies Co., Ltd. Attitude matrix calculation method and device
CN110036259B (zh) * 2017-09-30 2021-03-30 华为技术有限公司 一种姿态矩阵的计算方法及设备
CN108444452B (zh) * 2018-02-11 2020-11-17 武汉雄楚高晶科技有限公司 目标经纬度和拍摄装置的三维空间姿态的检测方法及装置
CN108444452A (zh) * 2018-02-11 2018-08-24 武汉雄楚高晶科技有限公司 目标经纬度和拍摄装置的三维空间姿态的检测方法及装置
CN109490926B (zh) * 2018-09-28 2021-01-26 浙江大学 一种基于双目相机和gnss的路径规划方法
CN109490926A (zh) * 2018-09-28 2019-03-19 浙江大学 一种基于双目相机和gnss的路径规划方法
CN110427106A (zh) * 2019-07-19 2019-11-08 武汉恒新动力科技有限公司 体感动作数据处理方法、设备及计算机可读存储介质
CN110954055A (zh) * 2019-12-17 2020-04-03 中国人民解放军海军航空大学 一种球面两站测向交叉定位计算方法
CN112762955A (zh) * 2020-12-25 2021-05-07 灵鹿科技(嘉兴)股份有限公司 一种导航系统定位纠偏方法
CN112762955B (zh) * 2020-12-25 2022-07-19 灵鹿科技(嘉兴)股份有限公司 一种导航系统定位纠偏方法
CN113050692A (zh) * 2021-03-26 2021-06-29 极研(福建)投资发展有限公司 一种具有社交功能的智能陪伴设备
CN115855117A (zh) * 2023-02-16 2023-03-28 深圳佑驾创新科技有限公司 相机和惯性测量单元相对车体安装姿态的联合标定方法
CN115855117B (zh) * 2023-02-16 2023-06-02 深圳佑驾创新科技有限公司 相机和惯性测量单元相对车体安装姿态的联合标定方法

Also Published As

Publication number Publication date
CN105474033A (zh) 2016-04-06
CN104748746A (zh) 2015-07-01
WO2015096806A1 (zh) 2015-07-02
CN104748751B (zh) 2019-02-22
CN105474033B (zh) 2017-06-06
CN104748746B (zh) 2017-11-03

Similar Documents

Publication Publication Date Title
CN104748751B (zh) 姿态矩阵的计算方法及基于姿态矩阵的定位导航方法
CN111156998B (zh) 一种基于rgb-d相机与imu信息融合的移动机器人定位方法
CN103033189B (zh) 一种深空探测巡视器惯性/视觉组合导航方法
CN109029417A (zh) 基于混合视觉里程计和多尺度地图的无人机slam方法
CN109991636A (zh) 基于gps、imu以及双目视觉的地图构建方法及系统
CN110095116A (zh) 一种基于lift的视觉定位和惯性导航组合的定位方法
CN104750969B (zh) 智能机全方位增强现实信息叠加方法
CN110058602A (zh) 基于深度视觉的多旋翼无人机自主定位方法
CN110274588A (zh) 基于无人机集群信息的双层嵌套因子图多源融合导航方法
CN106017463A (zh) 一种基于定位传感装置的飞行器定位方法
CN105953796A (zh) 智能手机单目和imu融合的稳定运动跟踪方法和装置
CN106780729A (zh) 一种无人机序列影像批处理三维重建方法
CN106461402A (zh) 用于确定相对于数字地图的位置的方法及系统
CN106767785B (zh) 一种双回路无人机的导航方法及装置
CN109676604A (zh) 机器人曲面运动定位方法及其运动定位系统
WO2010052558A2 (en) System and method for the precise integration of virtual objects to interactive panoramic walk-through applications
CN112184786B (zh) 一种基于合成视觉的目标定位方法
KR100822814B1 (ko) Gps/ins 장비를 이용한 측량 정보 및 gis 지리정보, 실시간 영상정보를 결합한 공간정보 서비스방법
CN109459029A (zh) 一种用于确定目标对象的导航路线信息的方法与设备
US20230116869A1 (en) Multi-sensor-fusion-based autonomous mobile robot indoor and outdoor navigation method and robot
KR101943823B1 (ko) 고속비행 중 정밀위치 데이터 획득을 위한 무인기 및 고속비행 중 정밀위치 데이터 획득을 위한 무인기 임무장비 동기화 결정방법
Troiani et al. Low computational-complexity algorithms for vision-aided inertial navigation of micro aerial vehicles
CN110533719A (zh) 基于环境视觉特征点识别技术的增强现实定位方法及装置
CN108253942B (zh) 一种提高倾斜摄影测量空三质量的方法
Ma et al. Location and 3-D visual awareness-based dynamic texture updating for indoor 3-D model

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20220610

Address after: 430000 Building 2, Wulipu Wuke dormitory, Hanyang District, Wuhan City, Hubei Province

Patentee after: WUHAN CHUXIONG GAOJING TECHNOLOGY Co.,Ltd.

Address before: 430000 room 801, building 6, luogui community, Chenjiawan, Xiongchu Avenue, Wuhan City, Hubei Province

Patentee before: Liu Jin