1.本发明属于图像处理、人工智能技术领域,具体涉及一种基于单目视觉的
无人机仿地飞行方法。
背景技术:
2.无人机测绘、巡检等任务过程中,会面临山坡等起伏地势的场景,这种地势场景增加了任务过程的危险性,并可能影响任务过程中数据的质量(如测绘场景的图像覆盖率)。
3.通常,无人机可增加对地探测的传感器设备,如毫米波雷达、激光雷达、双目相机等,以此实现对地距离的测量,从而控制无人机在任务过程中,始终保持一定的对地
高度飞行。但是,上述传感器体积、重量、成本都较高,且探测距离有限。在测绘领域,可借助单目相机和sfm技术,可实现对场景的三维建图,以此获得场景点云信息,实现仿地飞行。但通常该技术面临以下难点:
4.1)三维建图需要多帧图像之间的特征提取、匹配计算操作,计算资源消耗大,且对相机分辨率、场景特征纹理有较高要求;
5.2)单目sfm方法需要一定的相机平移动作才能完成初始化,在实际应用过程中为减小误差累积,可能会较为频繁初始化,这样降低了该方法的实用性。
技术实现要素:
6.本发明提供了一种基于单目视觉的无人机仿地飞行方法,采用一种基于单个地标点观测的视觉
里程计算方法,仅通过低成本、低分辨率的单目相机,结合无人机姿态、高度、gnss位移等数据,无需繁杂的三维稀疏/稠密建图步骤,即能实现对地高度的测量,解决了上文中的技术难点。
7.本发明采用了如下技术方案:
8.一种基于单目视觉的无人机仿地飞行方法,包括如下步骤:
9.s1、在视觉处理器中,对单目采集图像和飞控传入的姿态数据、gnss高度、gnss坐标数据进行精确同步;
10.s2、采用基于
关键帧的视觉里程计算方法,在关键帧中,计算无人机正射投影点的像素坐标,作为基准坐标,并采集基准坐标周围的图像特征;
11.s3、在非关键帧中,跟踪、匹配基准坐标所在的图像区域块,并结合先验对包括地高度数据、姿态数据、gnss高度在内的信息计算相对关键帧的里程信息;
12.s4、根据视觉里程信息,并结合gnss的里程数据,计算尺度比例,以此校正对地高度。
13.优选的,通过在关键帧中计算无人机正射投影点,在非关键帧中对该投影点进行特征匹配跟踪,并依靠先验的对地高度信息、同步的姿态、高度数据来计算缺失尺度的视觉里程信息,并依靠真实gnss里程信息校正对地高度信息,以此控制无人机保持一定对地高度飞行。
14.优选的,采用基于关键帧的视觉里程计算方法,在关键帧中计算无人机正射投影点,在非关键帧中对该投影点进行特征匹配跟踪,并依靠先验的对地高度信息、同步的姿态、高度数据来计算缺失尺度的视觉里程信息的方法包括:
15.假定相机和无人机刚性连接,其x坐标轴和y坐标轴分别和无人机机体的xy坐标轴重叠ψ,γ,θ分别为无人机偏航、横滚、俯仰角。首先,在关键帧中,通过姿态信息,采用以下计算方法,获取无人机在大地的正射投影点的像素坐标(uv);
16.u=cx+f.tanγ
17.v=cy+f.tanθ/cosγ
18.其中,pitch/roll分别为无人机俯仰/横滚角,cx/cy/f为相机内参数。
19.在关键帧中,选取以正射投影像素坐标为中心,大小为100*100的图像块,作为待匹配跟踪的图像特征块;然后在非关键帧中,通过相关滤波的跟踪方法,对关键帧的图像特征块进行跟踪,获取其中心像素坐标(rx,ry),并根据姿态数据,计算导航坐标系下相对于关键帧的位移:
[0020][0021]
在上述计算中,λ为非零的尺度因子。通过关键帧先验的对地高度和非关键帧相对于关键帧的gnss高度变化
△
h,作为对xd的约束,以此消除尺度因子,求解xn和xe:
[0022][0023]
由于为先验对地高度信息,并非真实对地高度,因此计算得到的xn和xe并非真实尺度下的位移。
[0024]
优选的,关键帧更新的方法包括:
[0025]
对当前帧综合采用以下策略进行判断,当满足下面任意一个条件,立即将当前帧作为新的关键帧,即更新关键帧:
[0026]
1)当前帧的跟踪质量,通过相关滤波的psr(峰值旁瓣比)参数,当低于固定阈值时,意味着跟踪即将丢失,此时更新关键帧
[0027]
2)当前帧相对前帧关键帧的视差。根据视差的原理,我们计算当前帧相对关键帧水平方向位移与先验对地高度的比值,当超过某预设阈值时,意味着特征视差过大,此时更新关键帧;
[0028]
3)当前帧相对前关键帧的姿态。如果当前帧相对关键帧的俯仰或横滚角超过阈值,意味着跟踪的特征即将移出画面视野从而丢失,此时更新关键帧。
[0029]
根据视觉里程信息,并结合gnss的里程数据,计算尺度比例,以此校正对地高度的方法包括:
[0030]
设在导航坐标系下,获取的视觉里程计位移分别为xn和xe,对应的gnss位移分别为dn和de。可知,由于两个里程计相差一个尺度因子s,因此数值满足以下条件:
[0031][0032]
可由xn和dn求解得到s,最终可得关键帧时刻真实对地高度值为:
[0033]
h=sx
d-δh
[0034]
本发明的技术效果和优点:本发明提出的一种基于单目视觉的无人机仿地飞行方法,与现有技术相比,具有以下优点:
[0035]
1、计算复杂度低,对运算设备要求低,降低设备成本体积和重量;
[0036]
2、鲁棒可靠,对图像分辨率、环境纹理特征要求低;
[0037]
3、支持更高的飞行任务高度。
附图说明
[0038]
图1为本发明仿地飞行任务的场景示意图;
[0039]
图2为本发明关键帧中正射投影点和特征块示意图;
[0040]
图3为本发明关键帧和非关键帧的位移里程计算模型示意图。
具体实施方式
[0041]
下面将对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0042]
实施例
[0043]
本发明利用图像处理、视频分析技术,利用无人机搭载的对地单目相机,对地面场景进行图像采集、分析计算,同时,借助飞控提供的姿态、gnss数据,实现对地高度的计算,最终实现无人机的仿地飞行。
[0044]
一种基于单目视觉的无人机仿地飞行方法,包括如下步骤:
[0045]
s1、在视觉处理器中,对单目采集图像和飞控传入的姿态数据、gnss高度、gnss坐标数据进行精确同步;
[0046]
s2、采用基于关键帧的视觉里程计算方法,在关键帧中,计算无人机正射投影点的像素坐标,作为基准坐标,并采集基准坐标周围的图像特征;
[0047]
s3、在非关键帧中,跟踪、匹配基准坐标所在的图像区域块,并结合先验对包括地高度数据、姿态数据、gnss高度在内的信息计算相对关键帧的里程信息;
[0048]
s4、根据视觉里程信息,并结合gnss的里程数据,计算尺度比例,以此校正对地高度。
[0049]
通过在关键帧中计算无人机正射投影点,在非关键帧中对该投影点进行特征匹配跟踪,并依靠先验的对地高度信息、同步的姿态、高度数据来计算缺失尺度的视觉里程信息,并依靠真实gnss里程信息校正对地高度信息,以此控制无人机保持一定对地高度飞行。
[0050]
采用基于关键帧的视觉里程计算方法,在关键帧中计算无人机正射投影点,在非
关键帧中对该投影点进行特征匹配跟踪,并依靠先验的对地高度信息、同步的姿态、高度数据来计算缺失尺度的视觉里程信息的方法包括:
[0051]
假定相机和无人机刚性连接,其x坐标轴和y坐标轴分别和无人机机体的xy坐标轴重叠ψ,γ,θ分别为无人机偏航、横滚、俯仰角。首先,在关键帧中,通过姿态信息,采用以下计算方法,获取无人机在大地的正射投影点的像素坐标(uv);
[0052]
u=cx+f.tanγ
[0053]
v=cy+f.tanθ/cosγ
[0054]
其中,pitch/roll分别为无人机俯仰/横滚角,cx/cy/f为相机内参数。
[0055]
在关键帧中,选取以正射投影像素坐标为中心,大小为100*100的图像块,作为待匹配跟踪的图像特征块;然后在非关键帧中,通过相关滤波的跟踪方法,对关键帧的图像特征块进行跟踪,获取其中心像素坐标(rx,ry),并根据姿态数据,计算导航坐标系下相对于关键帧的位移:
[0056][0057]
在上述计算中,λ为非零的尺度因子。通过关键帧先验的对地高度和非关键帧相对于关键帧的gnss高度变化
△
h,作为对xd的约束,以此消除尺度因子,求解xn和xe:
[0058][0059]
由于为先验对地高度信息,并非真实对地高度,因此计算得到的xn和xe并非真实尺度下的位移。
[0060]
关键帧更新的方法包括:
[0061]
对当前帧综合采用以下策略进行判断,当满足下面任意一个条件,立即将当前帧作为新的关键帧,即更新关键帧:
[0062]
1)当前帧的跟踪质量,通过相关滤波的psr(峰值旁瓣比)参数,当低于固定阈值时,意味着跟踪即将丢失,此时更新关键帧;
[0063]
2)当前帧相对前帧关键帧的视差。根据视差的原理,我们计算当前帧相对关键帧水平方向位移与先验对地高度的比值,当超过某预设阈值时,意味着特征视差过大,此时更新关键帧;
[0064]
3)当前帧相对前关键帧的姿态。如果当前帧相对关键帧的俯仰或横滚角超过阈值,意味着跟踪的特征即将移出画面视野从而丢失,此时更新关键帧。
[0065]
根据视觉里程信息,并结合gnss的里程数据,计算尺度比例,以此校正对地高度的方法包括:
[0066]
设在导航坐标系下,获取的视觉里程计位移分别为xn和xe,对应的gnss位移分别为dn和de。可知,由于两个里程计相差一个尺度因子s,因此数值满足以下条件:
[0067][0068]
可由xn和dn求解得到s,最终可得关键帧时刻真实对地高度值为:
[0069]
h=sx
d-δh。
[0070][0071]
请参阅图1-3所示,本发明提供了一种基于单目视觉的无人机仿地飞行方法,包括步骤:
[0072]
首先,对惯导的姿态数据和相机的图像数据进行严格同步。对于每一帧图像,都需要获取尽可能同步的传感器信息。我们在处理器中,设置了1个io引脚,连接飞控和相机,通过电平边沿触发,控制图像的抓拍,并获取同步的姿态、gnss位置和高度数据。
[0073]
其次,以系统工作时(当无人机开启仿地飞行任务)的第一帧,作为关键帧;在关键帧中,以正射投影点作为地标点,根据同步后的姿态数据,计算图像中正射投影点像素坐标位置,并生成特征块(以正射投影点为中心,边长为100像素的正方向区域),见图2;
[0074]
然后,在后续的非关键帧中,进行以下计算:
[0075]
1)依靠相关滤波(cf)方法,跟踪关键帧中的特征块,得到当前帧中的地标点的像素坐标;
[0076]
2)根据地标点像素坐标、同步的姿态数据和gnss高度变化,计算当前帧与关键帧在导航坐标系下的相对位移信息、当前帧-关键帧的几何模型示意图见图3,其中1为关键帧拍摄时的相机位姿,其计算得到的正射投影点作为地标点;2为非关键帧,在非关键帧中对地标点进行跟踪,并得到ned下地标点的位置,从而得到相对关键帧的位移信息;
[0077]
3)是否需要更新关键帧。
[0078]
最后,结合gnss的相对位移信息,恢复校正得到真实的对地高度信息。飞控根据该对地高度信息,对无人机高度进行控制,使其保持一定的对地高度飞行。
[0079]
方法原理:对于无人机的仿地飞行功能,可采用激光雷达/毫米波雷达/视觉等传感器。
[0080]
本发明依靠低分辨率的单目视觉传感器,并非采用传统的类似sfm建图的方法,而是另辟蹊径,采用一种基于单个地标点观测的视觉里程计,并采用快速的相关滤波跟踪方法在帧间对地标进行跟踪,省去了地标点的特征提取和匹配计算,大大提升了计算效率;同时,依靠视觉里程信息,结合gnss信息,恢复校正对地高度信息。最终,飞控依靠该对地高度控制无人机仿地飞行。本发明的仿地飞行方法采用单目相机传感器,相对于采用激光雷达、毫米波雷达传感器的方法,降低了成本、体积重量,且提升了工作高度;另外,本发明采用了视觉里程计方法,相对于视觉传统的三维重建方法,其运算高效,对图像分辨率、环境纹理特征要求低,也无需较为复杂的平移初始化操作,对于无人机平台具有较广泛的应用前景。
[0081]
最后应说明的是:以上所述仅为本发明的优选实施例而已,并不用于限制本发明,尽管参照前述实施例对本发明进行了详细的说明,对于本领域的技术人员来说,其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的
保护范围之内。
技术特征:
1.一种基于单目视觉的无人机仿地飞行方法,其特征在于,包括如下步骤:s1、在视觉处理器中,对单目采集图像和飞控传入的姿态数据、gnss高度、gnss坐标数据进行精确同步;s2、采用基于关键帧的视觉里程计算方法,在关键帧中,计算无人机正射投影点的像素坐标,作为基准坐标,并采集基准坐标周围的图像特征;s3、在非关键帧中,跟踪、匹配基准坐标所在的图像区域块,对包括地高度数据、姿态数据、gnss高度在内的信息计算相对关键帧的里程信息;s4、根据视觉里程信息,并结合gnss的里程数据,计算尺度比例,以此校正对地高度。2.根据权利要求1所述的一种基于单目视觉的无人机仿地飞行方法,其特征在于:在关键帧中计算无人机正射投影点,在非关键帧中对该投影点进行特征匹配跟踪,并依靠先验的对地高度信息、同步的姿态、高度数据来计算缺失尺度的视觉里程信息,并依靠真实gnss里程信息校正对地高度信息,以此控制无人机保持一定对地高度飞行。3.根据权利要求2所述的一种基于单目视觉的无人机仿地飞行方法,其特征在于:采用基于关键帧的视觉里程计算方法,在关键帧中计算无人机正射投影点,在非关键帧中对该投影点进行特征匹配跟踪,并依靠先验的对地高度信息、同步的姿态、高度数据来计算缺失尺度的视觉里程信息。4.根据权利要求3所述的一种基于单目视觉的无人机仿地飞行方法,其特征在于:依靠先验的对地高度信息、同步的姿态、高度数据来计算缺失尺度的视觉里程信息,具体方法包括如下:假定相机和无人机刚性连接,其x坐标轴和y坐标轴分别和无人机机体的xy坐标轴重叠ψ,γ,θ分别为无人机偏航、横滚、俯仰角;首先,在关键帧中,通过姿态信息,采用以下计算方法,获取无人机在大地的正射投影点的像素坐标(uv);u=cx+f.tanγv=cy+f.tanθ/cosγ其中,pitch/roll分别为无人机俯仰/横滚角,cx/cy/f为相机内参数;在关键帧中,选取以正射投影像素坐标为中心,大小为100*100的图像块,作为待匹配跟踪的图像特征块;然后在非关键帧中,通过相关滤波的跟踪方法,对关键帧的图像特征块进行跟踪,获取其中心像素坐标(rx,ry),并根据姿态数据,计算导航坐标系下相对于关键帧的位移:在上述计算中,λ为非零的尺度因子;通过关键帧先验的对地高度和非关键帧相对于关键帧的gnss高度变化
△
h,作为对x
d
的约束,以此消除尺度因子,求解x
n
和x
e
:
由于为先验对地高度信息,并非真实对地高度,因此计算得到的x
n
和x
e
并非真实尺度下的位移。5.根据权利要求2所述的一种基于单目视觉的无人机仿地飞行方法,其特征在于:关键帧更新的方法包括:对当前帧综合采用以下策略进行判断,当满足下面任意一个条件,立即将当前帧作为新的关键帧,即更新关键帧:1)当前帧的跟踪质量,通过相关滤波的psr(峰值旁瓣比)参数,当低于固定阈值时,意味着跟踪即将丢失,此时更新关键帧;2)当前帧相对前帧关键帧的视差,根据视差的原理,我们计算当前帧相对关键帧水平方向位移与先验对地高度的比值,当超过某预设阈值时,意味着特征视差过大,此时更新关键帧;3)当前帧相对前关键帧的姿态,如果当前帧相对关键帧的俯仰或横滚角超过阈值,意味着跟踪的特征即将移出画面视野从而丢失,此时更新关键帧。6.根据权利要求2所述的一种基于单目视觉的无人机仿地飞行方法,其特征在于:根据视觉里程信息,并结合gnss的里程数据,计算尺度比例,以此校正对地高度的方法包括:设在导航坐标系下,获取的视觉里程计位移分别为x
n
和x
e
,对应的gnss位移分别为d
n
和d
e
,由于两个里程计相差一个尺度因子s,因此数值满足以下条件:可由x
n
和d
n
求解得到s,最终可得关键帧时刻真实对地高度值为:h=sx
d-δh。
技术总结
本发明公开了一种基于单目视觉的无人机仿地飞行方法,具体包括:S3、在非关键帧中,跟踪、匹配基准坐标所在的图像区域块,并结合先验对包括地高度数据、姿态数据、GNSS高度在内的信息计算相对关键帧的里程信息;S4、根据该视觉里程信息,并结合GNSS的里程数据,计算尺度比例,以此校正对地高度。本发明基于单目视觉里程计方法,在缺乏真实对地高度的情况下,设置一个先验的对地高度,采用基于关键帧的视觉里程计算方法,通过两帧图像对同一地标点的观测,结合姿态、高度数据计算两帧之间的视觉位移里程信息,并借助真实GNSS位移数据来校正对地高度,实现无人机对地高度的估计,从而实现无人机仅依赖单目视觉的仿地飞行。现无人机仅依赖单目视觉的仿地飞行。现无人机仅依赖单目视觉的仿地飞行。
技术研发人员:
李振宇
受保护的技术使用者:
深圳市科卫泰实业发展有限公司
技术研发日:
2022.12.19
技术公布日:
2023/3/28