CN105890589A - 一种水下机器人单目视觉定位方法 - Google Patents

一种水下机器人单目视觉定位方法 Download PDF

Info

Publication number
CN105890589A
CN105890589A CN201610207731.2A CN201610207731A CN105890589A CN 105890589 A CN105890589 A CN 105890589A CN 201610207731 A CN201610207731 A CN 201610207731A CN 105890589 A CN105890589 A CN 105890589A
Authority
CN
China
Prior art keywords
underwater robot
sigma
moment
under
coordinate system
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
CN201610207731.2A
Other languages
English (en)
Other versions
CN105890589B (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.)
Northwestern Polytechnical University
Original Assignee
Northwestern Polytechnical University
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 Northwestern Polytechnical University filed Critical Northwestern Polytechnical University
Priority to CN201610207731.2A priority Critical patent/CN105890589B/zh
Publication of CN105890589A publication Critical patent/CN105890589A/zh
Application granted granted Critical
Publication of CN105890589B publication Critical patent/CN105890589B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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/005Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 with correlation of navigation data from several sources, e.g. map or contour matching
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C11/00Photogrammetry or videogrammetry, e.g. stereogrammetry; Photographic surveying
    • 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
    • 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
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S13/00Systems using the reflection or reradiation of radio waves, e.g. radar systems; Analogous systems using reflection or reradiation of waves whose nature or wavelength is irrelevant or unspecified
    • G01S13/86Combinations of radar systems with non-radar systems, e.g. sonar, direction finder
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S13/00Systems using the reflection or reradiation of radio waves, e.g. radar systems; Analogous systems using reflection or reradiation of waves whose nature or wavelength is irrelevant or unspecified
    • G01S13/88Radar or analogous systems specially adapted for specific applications
    • G01S13/881Radar or analogous systems specially adapted for specific applications for robotics

Landscapes

  • Engineering & Computer Science (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Robotics (AREA)
  • Electromagnetism (AREA)
  • Multimedia (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)

Abstract

本发明提出一种水下机器人单目视觉定位方法,结合多普勒和陀螺仪测得水下机器人在载体系下的线速度和角速度,得到状态方程;取4个已知在全局系下坐标的静止特征点,通过坐标系变化,得到特征点在图像系下的位置,得到量测方程;已知k‑1时刻的状态向量和其协方差矩阵,通过Unscented变换方法,求得Sigma点;再通过一次时间更新,估计k时刻的量测值;结合多普勒和陀螺仪测得航行器在载体系下的线速度和角速度,全局系下的特征点在图像系下的位置,可以得到k时刻量测值,经过量测更新,估计k时刻的状态向量,并得到k时刻状态向量的协方差矩阵。本发明突破了几何法中特征点的布置必须满足特定条件这一限制,弥补了EKF滤波只能估计位置信息这一缺陷,能同时估计位置信息和欧拉角。

Description

一种水下机器人单目视觉定位方法
技术领域
本发明涉及水下视觉定位技术领域,具体为一种水下机器人单目视觉定位方法,通过基于非线性卡尔曼滤波的位姿估计,实现水下机器人单目视觉定位。
背景技术
随着海洋开发事业的迅速发展,水下施工和建设项目越来越多,对于水下作用手段的性能要求也越来越高。水下机器人只有获得到高精度的位置和姿态信息才能实现精确控制,水下定位是水下机器人发展需要解决的关键技术之一。长期以来,人们一直致力于水声定位技术的研究,在水下机器人中长距离的目标定位及导航等方面取得了很好的研究成果,但由于水声定位系统数据更新频率低,在近距离测量中声学系统的稳定性和精度还有待进一步提高。
光视觉传感器近距离探测精度能达到厘米级,体积小且成本低,在水下机器人近距离目标定位及导航中有其独特的优势,因此光视觉传感器在水下机器人控制领域得到了广泛地研究与应用。
目前的水下机器人视觉定位主要采用几何法和扩展卡尔曼滤波(ExtendedKalman Filter,EKF)算法。几何法通过机器人上安装的相机获取视觉目标上的n个特征点在图像系下的位置坐标,利用PnP(Perspective-n-Point)算法求解了机器人相对于目标位置和姿态并在室内水池进行了实验,实验结果证明了该方法的可行性。但PnP算法在求解过程中存在着多解和鲁棒性差等问题,为了得到唯一解,特征点的布置必须满足特定条件,因此限制的其使用范围。扩展卡尔曼滤波(Extended Kalman Filter,EKF)算法估计出了机器人相对于目标的位置,利用获得位置信息进行水下机器人的运动控制,该方法已完成了水下物体打捞、水下动力定位和水下电缆插拔等实验并取得了成功。但目前利用EKF滤波的方法只用来估计机器人的位置,并没有考虑机器人的欧拉角,导致方法在实际使用中不能够有效用于水下机器人的控制。
发明内容
为了避免现有技术的不足之处,本发明提出非线性无迹卡尔曼滤波(UnscentedKalman Filter,UKF)的方法联合估计水下机器人的状态和参数。
根据水下机器人数学模型,结合多普勒和陀螺仪测得水下机器人在载体系下的线速度和角速度,得到状态方程;取4个已知在全局系下坐标的静止特征点,在水下机器人动力学模型的基础上,通过坐标系变化,得到可知全局系下的特征点在图像系下的位置,得到量测方程;已知k-1时刻的状态向量和其协方差矩阵,通过Unscented变换方法,求得Sigma点;再通过一次时间更新,估计k时刻的量测值;结合多普勒和陀螺仪测得航行器在载体系下的线速度和角速度,全局系下的特征点在图像系下的位置,可以得到k时刻量测值,经过量测更新,估计k时刻的状态向量,并得到k时刻状态向量的协方差矩阵。
本发明的技术方案为:
所述一种水下机器人单目视觉定位方法,其特征在于:包括以下步骤:
步骤1:设置计算时刻k=0,并设置水下机器人在k=0时刻的系统状态向量初值:x(k)=[x(k) y(k) z(k) φ(k) θ(k) ψ(k) u(k) v(k) w(k) p(k) q(k) r(k)]T其中[x(k)y(k) z(k)]T是水下机器人在全局坐标系下的位置,[φ(k) θ(k) ψ(k)]T是水下机器人的欧拉角,是水下机器人在载体坐标系下的线速度以及角速度,为n维实数域;
并根据设置的水下机器人在k=0时刻的系统状态向量初值,计算水下机器人在k=0时刻的状态方差矩阵xi(0)为系统状态向量中的元素;
步骤2:根据k-1时刻得到的系统状态向量量测值和后验状态方差矩阵P(k-1),结合k时刻多普勒和陀螺仪测得水下机器人在载体坐标系下的线速度和角速度,估计k时刻水下机器人的系统状态向量量测值和后验状态方差矩阵P(k):
步骤2.1:计算Sigma点集χ(k-1):
χ 0 ( k - 1 ) = x ^ ( k - 1 )
χ i ( k - 1 ) = x ^ ( k - 1 ) + ( n + λ ) P i ( k - 1 ) , i = 1 , ... , n
χ i ( k - 1 ) = x ^ ( k - 1 ) - ( n + λ ) P i - n ( k - 1 ) , i = n + 1 , ... , 2 n
其中n为系统状态向量的维数,χi(k-1)为点集χ(k-1)的第i列,Pi(k-1)为P(k-1)的第i列,λ是UT变换参数;
步骤2.2:将步骤2.1得到的Sigma点集χ(k-1)代入系统状态项得到变换后的Sigma点集χ(k/k-1):
其中χi(k/k-1)为点集χ(k/k-1)的第i列,系统状态项为:
其中T是控制周期,R为载体坐标系转换到全局坐标系下的坐标转换矩阵;
步骤2.3:根据步骤2.2得到的变换后的Sigma点集χ(k/k-1),进行均值加权得到系统状态向量的预测均值
x ^ ( k / k - 1 ) = Σ i = 0 2 n W i χ i ( k / k - 1 )
其中Wi是UT变换权值;进行协方差加权得到系统状态向量的预测方差
P ‾ ( k ) = Σ i = 0 2 n W i [ χ i ( k / k - 1 ) - x ^ ( k / k - 1 ) ] [ χ i ( k / k - 1 ) - x ^ ( k / k - 1 ) ] T + Q ‾ ( k )
其中是系统噪声的协方差矩阵;
步骤2.4:将步骤2.2得到的变换后的Sigma点集χ(k/k-1)代入量测项进行非线性变换:
zi(k/k-1)=h[χi(k/k-1),k/k-1],i=0,…,2n
其中量测项为:
h[x(k),k]=[[mj(k) nj(k)]×4 u(k) v(k) w(k) p(k) q(k) r(k)]T(mj(k),nj(k))为第j个特征点在图像坐标系下的坐标,j=1,2,3,4:
m j ( k ) = f x R 11 ( x g j - x ( k ) ) + R 21 ( y g j - y ( k ) ) + R 31 ( z g j - z ( k ) ) R 13 ( x g j - x ( k ) ) + R 23 ( y g j - y ( k ) ) + R 33 ( z g j - z ( k ) ) n j ( k ) = f y R 12 ( x g j - x ( k ) ) + R 22 ( y g j - y ( k ) ) + R 32 ( z g j - z ( k ) ) R 13 ( x g j - x ( k ) ) + R 23 ( y g j - y ( k ) ) + R 33 ( z g j - z ( k ) )
为第j个特征点在全局坐标系下的坐标,fx和fy分别是相机的两个焦距,相机坐标系与水下机器人的载体坐标系重合;并加权求和计算得到系统量测量的预测值:
z ^ ( k / k - 1 ) = Σ i = 0 2 n W i z i ( k / k - 1 )
步骤2.5:计算更新的状态方差:
P z ( k ) z ( k ) = Σ i = 0 2 n W i [ z i ( k / k - 1 ) - z ^ ( k / k - 1 ) ] [ z i ( k / k - 1 ) - z ^ ( k / k - 1 ) ] T + R ‾ ( k )
P x ( k ) z ( k ) = Σ i = 0 2 n W i [ χ i ( k / k - 1 ) - x ^ ( k / k - 1 ) ] [ z i ( k / k - 1 ) - z ^ ( k / k - 1 ) ] T
其中是量测噪声的协方差矩阵;计算增益矩阵:
K ( k ) = P x ( k ) z ( k ) P z ( k ) z ( k ) - 1
估计k时刻水下机器人的系统状态向量量测值为:
x ^ ( k ) = x ^ ( k / k - 1 ) + K ( k ) [ z ( k ) - z ^ ( k / k - 1 ) ]
其中为量测噪声;k时刻水下机器人的后验状态方差矩阵P(k)为:
P ( k ) = P ‾ ( k ) - K ( k ) P z ( k ) z ( k ) K T ( k ) .
有益效果
本发明与几何法和EKF滤波的方法相比,突破了几何法中特征点的布置必须满足特定条件这一限制,弥补了EKF滤波只能估计位置信息这一缺陷,能同时估计位置信息和欧拉角,大大拓展了使用范围。
附图说明
本发明的上述和/或附加的方面和优点从结合下面附图对实施例的描述中将变得明显和容易理解,其中:
图1:视觉导航系统示意图
图2:机器人在全局系下的运动轨迹
图3:像素点在图像系下的运动轨迹
图4:实际位姿(黑)和估计位姿(红)
图5:实际位姿与UKF估计位姿的误差
具体实施方式
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,参考附图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。
本实施例基于非线性无迹卡尔曼滤波(Unscented Kalman Filter,UKF)方法的原理是根据水下机器人数学模型,结合多普勒和陀螺仪测得水下机器人在载体系下的线速度和角速度,得到状态方程;取4个已知在全局系下坐标的静止特征点,在水下机器人动力学模型的基础上,通过坐标系变化,得到可知全局系下的特征点在图像系下的位置,得到量测方程;已知k-1时刻的状态向量和其协方差矩阵,通过Unscented变换方法,求得Sigma点;再通过一次时间更新,估计k时刻的量测值;结合多普勒和陀螺仪测得航行器在载体系下的线速度和角速度,全局系下的特征点在图像系下的位置,可以得到k时刻量测值,经过量测更新,估计k时刻的状态向量,并得到k时刻状态向量的协方差矩阵。
具体步骤为:
步骤1:设置计算时刻k=0,并设置水下机器人在k=0时刻的系统状态向量初值:x(k)=[x(k) y(k) z(k) φ(k) θ(k) ψ(k) u(k) v(k) w(k) p(k) q(k) r(k)]T其中[x(k)y(k) z(k)]T是水下机器人在全局坐标系下的位置,[φ(k) θ(k) ψ(k)]T是水下机器人的欧拉角,是水下机器人在载体坐标系下的线速度以及角速度,为n维实数域;
并根据设置的水下机器人在k=0时刻的系统状态向量初值,计算水下机器人在k=0时刻的状态方差矩阵xi(0)为系统状态向量中的元素;
步骤2:根据k-1时刻得到的系统状态向量量测值和后验状态方差矩阵P(k-1),结合k时刻多普勒和陀螺仪测得水下机器人在载体坐标系下的线速度和角速度,估计k时刻水下机器人的系统状态向量量测值和后验状态方差矩阵P(k):
步骤2.1:计算Sigma点集χ(k-1):
χ 0 ( k - 1 ) = x ^ ( k - 1 )
χ i ( k - 1 ) = x ^ ( k - 1 ) + ( n + λ ) P i ( k - 1 ) , i = 1 , ... , n
χ i ( k - 1 ) = x ^ ( k - 1 ) - ( n + λ ) P i - n ( k - 1 ) , i = n + 1 , ... , 2 n
其中n为系统状态向量的维数,χi(k-1)为点集χ(k-1)的第i列,Pi(k-1)为P(k-1)的第i列,λ是UT变换参数;
步骤2.2:将步骤2.1得到的Sigma点集χ(k-1)代入系统状态项得到变换后的Sigma点集χ(k/k-1):
其中χi(k/k-1)为点集χ(k/k-1)的第i列,系统状态项为:
其中T是控制周期,R为载体坐标系转换到全局坐标系下的坐标转换矩阵;
步骤2.3:根据步骤2.2得到的变换后的Sigma点集χ(k/k-1),进行均值加权得到系统状态向量的预测均值
x ^ ( k / k - 1 ) = Σ i = 0 2 n W i χ i ( k / k - 1 )
其中Wi是UT变换权值;进行协方差加权得到系统状态向量的预测方差
P ‾ ( k ) = Σ i = 0 2 n W i [ χ i ( k / k - 1 ) - x ^ ( k / k - 1 ) ] [ χ i ( k / k - 1 ) - x ^ ( k / k - 1 ) ] T + Q ‾ ( k )
其中是系统噪声的协方差矩阵;
步骤2.4:将步骤2.2得到的变换后的Sigma点集χ(k/k-1)代入量测项进行非线性变换:
zi(k/k-1)=h[χi(k/k-1),k/k-1],i=0,…,2n
其中量测项为:
h[x(k),k]=[[mj(k) nj(k)]×4 u(k) v(k) w(k) p(k) q(k) r(k)]T(mj(k),nj(k))为第j个特征点在图像坐标系下的坐标,j=1,2,3,4:
m j ( k ) = f x R 11 ( x g j - x ( k ) ) + R 21 ( y g j - y ( k ) ) + R 31 ( z g j - z ( k ) ) R 13 ( x g j - x ( k ) ) + R 23 ( y g j - y ( k ) ) + R 33 ( z g j - z ( k ) ) n j ( k ) = f y R 12 ( x g j - x ( k ) ) + R 22 ( y g j - y ( k ) ) + R 32 ( z g j - z ( k ) ) R 13 ( x g j - x ( k ) ) + R 23 ( y g j - y ( k ) ) + R 33 ( z g j - z ( k ) )
为第j个特征点在全局坐标系下的坐标,fx和fy分别是相机的两个焦距,相机坐标系与水下机器人的载体坐标系重合;并加权求和计算得到系统量测量的预测值:
z ^ ( k / k - 1 ) = Σ i = 0 2 n W i z i ( k / k - 1 )
步骤2.5:计算更新的状态方差:
P z ( k ) z ( k ) = Σ i = 0 2 n W i [ z i ( k / k - 1 ) - z ^ ( k / k - 1 ) ] [ z i ( k / k - 1 ) - z ^ ( k / k - 1 ) ] T + R ‾ ( k )
P x ( k ) z ( k ) = Σ i = 0 2 n W i [ χ i ( k / k - 1 ) - x ^ ( k / k - 1 ) ] [ z i ( k / k - 1 ) - z ^ ( k / k - 1 ) ] T
其中是量测噪声的协方差矩阵;计算增益矩阵:
K ( k ) = P x ( k ) z ( k ) P z ( k ) z ( k ) - 1
估计k时刻水下机器人的系统状态向量量测值为:
x ^ ( k ) = x ^ ( k / k - 1 ) + K ( k ) [ z ( k ) - z ^ ( k / k - 1 ) ]
其中为量测噪声;k时刻水下机器人的后验状态方差矩阵P(k)为:
P ( k ) = P ‾ ( k ) - K ( k ) P z ( k ) z ( k ) K T ( k ) .
具体到本实施例
当k=0时,设置初值
x ^ ( 0 ) = ( - 0.5 , 2.5 , - 3.5 , 2 π / 180 , - 2 π / 180 , 2 π / 180 , 0.1 , 0.1 , - 0.1 , - π / 180 , π / 180 , - π / 180 )
P(0)=diag(10,10,10,10π/180,10π/180,10π/180,1,1,1,π/180,π/180,π/180)
以根据k-1=0时刻得到的系统状态向量量测值和后验状态方差矩阵P(k-1),结合k时刻多普勒和陀螺仪测得水下机器人在载体坐标系下的线速度和角速度,估计k=1时刻水下机器人的系统状态向量量测值和后验状态方差矩阵P(k):
步骤2.1:计算Sigma点集χ(k-1):
χ 0 ( k - 1 ) = x ^ ( k - 1 )
χ i ( k - 1 ) = x ^ ( k - 1 ) + ( n + λ ) P i ( k - 1 ) , i = 1 , ... , n
χ i ( k - 1 ) = x ^ ( k - 1 ) - ( n + λ ) P i - n ( k - 1 ) , i = n + 1 , ... , 2 n
其中n=12,λ是UT变换参数,λ=-12+1.2000e-05;得到Sigma点集
步骤2.2:将步骤2.1得到的Sigma点集χ(k-1)代入系统状态项得到变换后的Sigma点集χ(k/k-1):
其中χi(k/k-1)为点集χ(k/k-1)的第i列,系统状态项为:
其中T是控制周期,R为载体坐标系转换到全局坐标系下的坐标转换矩阵。
结合多普勒和惯性测量单元测得水下机器人在载体坐标系下的线速度和角速度,取系统噪声可得状态方程
本实施例T=0.01,得到
本实施例得到变换后的Sigma点集为:
步骤2.3:根据步骤2.2得到的变换后的Sigma点集χ(k/k-1),进行均值加权得到系统状态向量的预测均值
x ^ ( k / k - 1 ) = Σ i = 0 2 n W i χ i ( k / k - 1 )
其中Wi是UT变换权值;本实施例中
x ^ ( 1 / 0 ) = - 0.4992 2.5009 - 3.5008 0.0347 - 0.0347 0.0347 0.1000 0.1000 - 0.1000 - 0.0175 0.0175 - 0.0175
进行协方差加权得到系统状态向量的预测方差
P ‾ ( k ) = Σ i = 0 2 n W i [ χ i ( k / k - 1 ) - x ^ ( k / k - 1 ) ] [ χ i ( k / k - 1 ) - x ^ ( k / k - 1 ) ] T + Q ‾ ( k )
其中是系统噪声的协方差矩阵,取
Q ‾ ( k ) = d i a g ( 0.1 , 0.1 , 0.1 , 0.1 π / 180 , 0.1 π / 180 , 0.1 π / 180 , 1 , 1 , 1 , π / 180 , π / 180 , π / 180 )
得到
步骤2.4:将步骤2.2得到的变换后的Sigma点集χ(k/k-1)代入量测项进行非线性变换:
zi(k/k-1)=h[χi(k/k-1),k/k-1],i=0,…,2n
其中量测项为:
h[x(k),k]=[[mj(k) nj(k)]×4 u(k) v(k) w(k) p(k) q(k) r(k)]T(mj(k),nj(k))为第j个特征点在图像坐标系下的坐标,j=1,2,3,4:取4个已知在工作空间的静特征点的全局坐标系下坐标,在水下机器人动力学模型的基础上,通过坐标系变化,得到可知全局坐标系下的特征点在图像坐标系下的位置
m j ( k ) = f x R 11 ( x g j - x ( k ) ) + R 21 ( y g j - y ( k ) ) + R 31 ( z g j - z ( k ) ) R 13 ( x g j - x ( k ) ) + R 23 ( y g j - y ( k ) ) + R 33 ( z g j - z ( k ) ) n j ( k ) = f y R 12 ( x g j - x ( k ) ) + R 22 ( y g j - y ( k ) ) + R 32 ( z g j - z ( k ) ) R 13 ( x g j - x ( k ) ) + R 23 ( y g j - y ( k ) ) + R 33 ( z g j - z ( k ) )
为第j个特征点在全局坐标系下的坐标,fx和fy分别是相机的两个焦距,相机坐标系与水下机器人的载体坐标系重合;4个已知在全局坐标系下静止特征点的坐标O1(0.25 0.25 0)、O2(0.25 -0.25 0)、O3(-0.25 -0.25 0)和O4(-0.25 0.25 0),单位为m,相机的内参数fx=1000Pixel,fy=1000Pixel,图像坐标系的原点就是图像的中心。特征点在图像坐标系下的位置为
m 1 = 223.2040 n 1 = - 605.9487 m 2 = 217.1903 n 2 = - 742.7737 m 3 = 76.9334 n 3 = - 734.2584 m 4 = 82.2094 n 4 = - 598.0352 .
得到非线性变换后的:
并加权求和计算得到系统量测量的预测值:
z ^ ( k / k - 1 ) = Σ i = 0 2 n W i z i ( k / k - 1 )
得到
z ^ ( 1 / 0 ) = 0.4597 - 1.2356 0.4538 - 1.5322 0.1632 - 1.5033 0.1709 - 1.2103 0.0001 0.0001 - 0.0001 - 0.0000 0.0000 - 0.0000 .
步骤2.5:计算更新的状态方差:
P z ( k ) z ( k ) = Σ i = 0 2 n W i [ z i ( k / k - 1 ) - z ^ ( k / k - 1 ) ] [ z i ( k / k - 1 ) - z ^ ( k / k - 1 ) ] T + R ‾ ( k )
P x ( k ) z ( k ) = Σ i = 0 2 n W i [ χ i ( k / k - 1 ) - x ^ ( k / k - 1 ) ] [ z i ( k / k - 1 ) - z ^ ( k / k - 1 ) ] T
其中是量测噪声的协方差矩阵;得到
计算增益矩阵:
K ( k ) = P x ( k ) z ( k ) P z ( k ) z ( k ) - 1
得到
估计k时刻水下机器人的系统状态向量量测值为:
x ^ ( k ) = x ^ ( k / k - 1 ) + K ( k ) [ z ( k ) - z ^ ( k / k - 1 ) ]
其中为量测噪声;
h [ x ( 1 ) , 1 ] = 223.2040 - 605.9487 217.1903 - 742.7737 76.9334 - 734.2584 82.2094 - 598.0352 0.1000 0.1000 - 0.1000 - 0.0175 0.0175 - 0.0175
得到
x ^ ( 1 ) = - 0.0539 1.7708 - 5.4851 0.0440 - 0.0697 0.0189 0.1010 0.1015 - 0.0966 - 0.0181 0.0101 - 0.0203
k时刻水下机器人的后验状态方差矩阵P(k)为:
P ( k ) = P ‾ ( k ) - K ( k ) P z ( k ) z ( k ) K T ( k )
得到
尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在不脱离本发明的原理和宗旨的情况下在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。

Claims (1)

1.一种水下机器人单目视觉定位方法,其特征在于:包括以下步骤:
步骤1:设置计算时刻k=0,并设置水下机器人在k=0时刻的系统状态向量初值:x(k)=[x(k) y(k) z(k) φ(k) θ(k) ψ(k) u(k) v(k) w(k) p(k) q(k) r(k)]T其中[x(k) y(k) z(k)]T是水下机器人在全局坐标系下的位置,[φ(k) θ(k) ψ(k)]T是水下机器人的欧拉角,是水下机器人在载体坐标系下的线速度以及角速度,为n维实数域;
并根据设置的水下机器人在k=0时刻的系统状态向量初值,计算水下机器人在k=0时刻的状态方差矩阵xi(0)为系统状态向量中的元素;
步骤2:根据k-1时刻得到的系统状态向量量测值和后验状态方差矩阵P(k-1),结合k时刻多普勒和陀螺仪测得水下机器人在载体坐标系下的线速度和角速度,估计k时刻水下机器人的系统状态向量量测值和后验状态方差矩阵P(k):
步骤2.1:计算Sigma点集χ(k-1):
χ 0 ( k - 1 ) = x ^ ( k - 1 )
χ i ( k - 1 ) = x ^ ( k - 1 ) + ( n + λ ) P i ( k - 1 ) , i = 1 , ... , n
χ i ( k - 1 ) = x ^ ( k - 1 ) - ( n + λ ) P i - n ( k - 1 ) , i = n + 1 , ... , 2 n
其中n为系统状态向量的维数,χi(k-1)为点集χ(k-1)的第i列,Pi(k-1)为P(k-1)的第i列,λ是UT变换参数;
步骤2.2:将步骤2.1得到的Sigma点集χ(k-1)代入系统状态项得到变换后的Sigma点集χ(k/k-1):
其中χi(k/k-1)为点集χ(k/k-1)的第i列,系统状态项为:
其中T是控制周期,R为载体坐标系转换到全局坐标系下的坐标转换矩阵;
步骤2.3:根据步骤2.2得到的变换后的Sigma点集χ(k/k-1),进行均值加权得到系统状态向量的预测均值
x ^ ( k / k - 1 ) = Σ i = 0 2 n W i χ i ( k / k - 1 )
其中Wi是UT变换权值;进行协方差加权得到系统状态向量的预测方差
P ‾ ( k ) = Σ i = 0 2 n W i [ χ i ( k / k - 1 ) - x ^ ( k / k - 1 ) ] [ χ i ( k / k - 1 ) - x ^ ( k / k - 1 ) ] T + Q ‾ ( k )
其中是系统噪声的协方差矩阵;
步骤2.4:将步骤2.2得到的变换后的Sigma点集χ(k/k-1)代入量测项进行非线性变换:
zi(k/k-1)=h[χi(k/k-1),k/k-1],i=0,…,2n
其中量测项为:
h[x(k),k]=[[mj(k) nj(k)]×4 u(k) v(k) w(k) p(k) q(k) r(k)]T
(mj(k),nj(k))为第j个特征点在图像坐标系下的坐标,j=1,2,3,4:
m j ( k ) = f x R 11 ( x g j - x ( k ) ) + R 21 ( y g j - y ( k ) ) + R 31 ( z g j - z ( k ) ) R 13 ( x g j - x ( k ) ) + R 23 ( y g j - y ( k ) ) + R 33 ( z g j - z ( k ) ) n j ( k ) = f y R 12 ( x g j - x ( k ) ) + R 22 ( y g j - y ( k ) ) + R 32 ( z g j - z ( k ) ) R 13 ( x g j - x ( k ) ) + R 23 ( y g j - y ( k ) ) + R 33 ( z g j - z ( k ) )
为第j个特征点在全局坐标系下的坐标,fx和fy分别是相机的两个焦距,相机坐标系与水下机器人的载体坐标系重合;并加权求和计算得到系统量测量的预测值:
z ^ ( k / k - 1 ) = Σ i = 0 2 n W i z i ( k / k - 1 )
步骤2.5:计算更新的状态方差:
P z ( k ) z ( k ) = Σ i = 0 2 n W i [ z i ( k / k - 1 ) z ^ ( k / k - 1 ) ] [ z i ( k / k - 1 ) - z ^ ( k / k - 1 ) ] T + R ‾ ( k )
P x ( k ) z ( k ) = Σ i = 0 2 n W i [ χ i ( k / k - 1 ) - x ^ ( k / k - 1 ) ] [ z i ( k / k - 1 ) - z ^ ( k / k - 1 ) ] T
其中是量测噪声的协方差矩阵;计算增益矩阵:
K ( k ) = P x ( k ) z ( k ) P z ( k ) z ( k ) - 1
估计k时刻水下机器人的系统状态向量量测值为:
x ^ ( k ) = x ^ ( k / k - 1 ) + K ( k ) [ z ( k ) - z ^ ( k / k - 1 ) ]
其中 为量测噪声;k时刻水下机器人的后验状态方差矩阵P(k)为:
P ( k ) = P ‾ ( k ) - K ( k ) P z ( k ) z ( k ) K T ( k ) .
CN201610207731.2A 2016-04-05 2016-04-05 一种水下机器人单目视觉定位方法 Active CN105890589B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610207731.2A CN105890589B (zh) 2016-04-05 2016-04-05 一种水下机器人单目视觉定位方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610207731.2A CN105890589B (zh) 2016-04-05 2016-04-05 一种水下机器人单目视觉定位方法

Publications (2)

Publication Number Publication Date
CN105890589A true CN105890589A (zh) 2016-08-24
CN105890589B CN105890589B (zh) 2017-12-22

Family

ID=57012676

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610207731.2A Active CN105890589B (zh) 2016-04-05 2016-04-05 一种水下机器人单目视觉定位方法

Country Status (1)

Country Link
CN (1) CN105890589B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107300382A (zh) * 2017-06-27 2017-10-27 西北工业大学 一种用于水下机器人的单目视觉定位方法
CN108444478A (zh) * 2018-03-13 2018-08-24 西北工业大学 一种用于水下航行器的移动目标视觉位姿估计方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101251379A (zh) * 2008-02-19 2008-08-27 哈尔滨工程大学 一种面向水下运载器的实时双目视觉导引方法
CN102052924A (zh) * 2010-11-25 2011-05-11 哈尔滨工程大学 一种小型水下机器人组合导航定位方法
JP2012203682A (ja) * 2011-03-25 2012-10-22 Ihi Corp 水中航走体用船上管制装置の表示方法
CN103528571A (zh) * 2013-10-12 2014-01-22 上海新跃仪表厂 单目立体视觉相对位姿测量方法
CN104677340A (zh) * 2013-11-30 2015-06-03 中国科学院沈阳自动化研究所 一种基于点特征的单目视觉位姿测量方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101251379A (zh) * 2008-02-19 2008-08-27 哈尔滨工程大学 一种面向水下运载器的实时双目视觉导引方法
CN102052924A (zh) * 2010-11-25 2011-05-11 哈尔滨工程大学 一种小型水下机器人组合导航定位方法
JP2012203682A (ja) * 2011-03-25 2012-10-22 Ihi Corp 水中航走体用船上管制装置の表示方法
CN103528571A (zh) * 2013-10-12 2014-01-22 上海新跃仪表厂 单目立体视觉相对位姿测量方法
CN104677340A (zh) * 2013-11-30 2015-06-03 中国科学院沈阳自动化研究所 一种基于点特征的单目视觉位姿测量方法

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107300382A (zh) * 2017-06-27 2017-10-27 西北工业大学 一种用于水下机器人的单目视觉定位方法
CN107300382B (zh) * 2017-06-27 2020-06-16 西北工业大学 一种用于水下机器人的单目视觉定位方法
CN108444478A (zh) * 2018-03-13 2018-08-24 西北工业大学 一种用于水下航行器的移动目标视觉位姿估计方法
CN108444478B (zh) * 2018-03-13 2021-08-10 西北工业大学 一种用于水下航行器的移动目标视觉位姿估计方法

Also Published As

Publication number Publication date
CN105890589B (zh) 2017-12-22

Similar Documents

Publication Publication Date Title
CN102829777B (zh) 自主式水下机器人组合导航系统及方法
Costanzi et al. UKF-based navigation system for AUVs: Online experimental validation
CN108536140B (zh) 一种无人船自主导航系统及方法
CN108444478A (zh) 一种用于水下航行器的移动目标视觉位姿估计方法
CN105823480A (zh) 基于单信标的水下移动目标定位算法
CN104075715A (zh) 一种结合地形和环境特征的水下导航定位方法
CN106679662B (zh) 一种基于tma技术的水下机器人单信标组合导航方法
CN107966145B (zh) 一种基于稀疏长基线紧组合的auv水下导航方法
CN104390646A (zh) 水下潜器地形辅助惯性导航系统的位置匹配方法
CN107990891A (zh) 基于长基线和信标在线标定的水下机器人组合导航方法
CN106054607A (zh) 水下检测与作业机器人动力定位方法
CN102928858A (zh) 基于改进扩展卡尔曼滤波的gnss单点动态定位方法
CN110906933A (zh) 一种基于深度神经网络的auv辅助导航方法
CN109425347A (zh) 一种半潜无人船的同时定位与地图构建方法
CN103292813B (zh) 一种提高水面艇编队导航精度的信息滤波方法
Xu et al. Accurate two-step filtering for AUV navigation in large deep-sea environment
CN104280024A (zh) 一种深水机器人组合导航装置和方法
CN105890589A (zh) 一种水下机器人单目视觉定位方法
Tuohy et al. Map based navigation for autonomous underwater vehicles
CN113485385B (zh) 基于误差椭圆的uuv集群编队构型设计方法
Song et al. Cooperative mid-depth navigation aided by ocean current prediction
Jo et al. Velocity-aided underwater navigation system using receding horizon Kalman filter
CN105808911A (zh) 一种深海潜水器导航方法
Xie et al. AUV dead-reckoning navigation based on neural network using a single accelerometer
Zhang et al. Research and implementation on multi-beacon aided AUV integrated navigation algorithm

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