一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

无人机深度信息的确定方法、装置、无人机及存储介质与流程

2021-11-24 20:16:00 来源:中国专利 TAG:


1.本技术涉及视觉定位技术领域,特别涉及一种无人机深度信息的确定方法、装置、无人机及存储介质。


背景技术:

2.目前,无人机在物品配送中的应用较为广泛。在配送过程中,无人机可以基于视觉定位技术来确定自身当前所处的位置,从而基于该位置对飞行路径进行规划,以实现自主导航。而无人机在基于视觉定位技术确定自身当前所处的位置时,需要参考其上安装的相机采集到的图像中的特征点的深度信息。
3.相关技术中,无人机中安装的相机多采用双目相机;在进行视觉定位的过程中,无人机基于双目相机的基线长度,确定从双目相机采集到的图像中特征点的深度信息。
4.在上述方法中,确定出的深度信息的精度和基线长度有关,即两个相机之间的距离越远,精度越高。但由于无人机上用于安装相机的空间是有限的,这就导致双目相机的基线长度较小,从而导致无人机在处于高空中进行视觉定位时确定的深度信息的精度较低。


技术实现要素:

5.本技术实施例提供了一种无人机深度信息的确定方法、装置、无人机及存储介质,能够提高确定深度信息的精度。所述技术方案如下:
6.一方面,提供了一种无人机深度信息的确定方法,所述方法包括:
7.通过目标相机采集图像帧,从所述图像帧中确定多个特征点的坐标信息;
8.获取单点测距传感器采集到的所述图像帧中的目标点的第一深度信息,所述目标相机和所述单点测距传感器均安装在无人机上;
9.获取所述多个特征点在关键图像帧中的第二深度信息和所述无人机在所述图像帧中的第一位姿信息;
10.基于所述多个特征点在关键图像帧中的第二深度信息、所述第一位姿信息、所述多个特征点的坐标信息和所述目标点的第一深度信息,确定所述多个特征点在所述图像帧中的第三深度信息。
11.在一种可能的实现方式中,所述基于所述多个特征点在关键图像帧中的第二深度信息、所述第一位姿信息、所述多个特征点的坐标信息和所述目标点的第一深度信息,确定所述多个特征点在所述图像帧中的第三深度信息,包括:
12.对于任一特征点,若所述特征点是所述图像帧中首次观测到的特征点,则将所述目标点的第一深度信息作为所述特征点的第三深度信息;
13.若所述特征点不是所述图像帧中首次观测到的特征点,则基于所述目标点的第一深度信息和所述第二深度信息,确定所述特征点在所述图像帧中的第四深度信息;
14.基于所述特征点的坐标信息和所述第一位姿信息,对所述特征点在所述图像帧中的第四深度信息进行更新,得到所述特征点的第三深度信息。
15.在另一种可能的实现方式中,所述基于所述目标点的第一深度信息和所述第二深度信息,确定所述特征点在所述图像帧中的第四深度信息,包括:
16.若所述特征点在所述图像帧中的位置处于所述目标点周围的预设区域内,则将所述目标点的第一深度信息作为所述第四深度信息;
17.若所述特征点在所述图像帧中的位置未处于所述目标点周围的预设区域内,则将所述第二深度信息作为所述第四深度信息。
18.在另一种可能的实现方式中,所述基于所述特征点的坐标信息和所述第一位姿信息,对所述特征点在所述图像帧中的第四深度信息进行更新,得到所述特征点的第三深度信息,包括:
19.基于所述特征点的坐标信息确定所述特征点在所述图像帧中的归一化坐标,确定所述归一化坐标对所述第四深度信息的偏导数,将所述偏导数作为所述观测矩阵;
20.基于所述观测矩阵对所述第一位姿信息进行修正,得到所述第三深度信息。
21.在本技术实施例中,通过松耦合的方式结合特征点的深度来确定系统的观测矩阵,从而对关键图像帧对应的第一位姿信息进行修正,得到特征点更新后的深度信息,进而降低了计算量。
22.在另一种可能的实现方式中,在基于所述目标点的第一深度信息和所述第二深度信息,确定所述特征点在所述图像帧中的第四深度信息之后,所述方法还包括:
23.若所述特征点在所述图像帧中的位置未处于所述目标点周围的预设区域内,则执行所述基于所述特征点的坐标信息和所述第一位姿信息,对所述特征点在所述图像帧中的第四深度信息进行更新,得到所述特征点的第三深度信息的步骤;
24.若所述特征点在所述图像帧中的位置处于所述目标点周围的预设区域内,则获取所述目标点在多个图像帧中的第一深度方差以及所述关键图像帧中的多个特征点的第二深度方差,所述多个图像帧包括当前采集的所述图像帧;
25.基于所述第一深度方差、所述第二深度方差、所述第二深度信息对所述第四深度信息进行更新,得到所述第三深度信息。
26.在另一种可能的实现方式中,所述方法还包括:
27.基于每个特征点的第三深度信息,确定所述图像帧中的多个特征点的第三深度方差;
28.若所述第三深度方差小于预设方差,则基于所述图像帧中的所述每个特征点的第三深度信息,确定所述无人机的目标位姿信息。
29.在另一种可能的实现方式中,所述基于每个特征点的第三深度信息,确定所述图像帧中的多个特征点的第三深度方差,包括:
30.若所述多个特征点均是所述图像帧中首次观测到的特征点,则确定初始深度方差为所述第三深度方差;
31.若所述多个特征点中存在不是所述图像帧中首次观测到的特征点,则获取所述目标点在多个图像帧中的第一深度方差以及所述关键图像帧中的多个特征点的第二深度方差,基于所述第一深度方差和所述第二深度方差,确定所述第三深度方差,所述多个图像帧包括当前采集的所述图像帧。
32.在另一种可能的实现方式中,所述初始深度方差的确定过程,包括:
33.确定所述多个特征点在所述图像帧中的平均重投影误差,以及所述目标点在所述多个图像帧中的第一深度方差;
34.将所述平均重投影误差、所述第一深度方差和预设参数的乘积作为所述初始深度方差。
35.在另一种可能的实现方式中,所述无人机在所述图像帧中的第一位姿信息的确定过程,包括:
36.获取所述无人机的第二位姿信息,所述第二位姿信息为所述目标图像在关键图像帧中的位姿信息;
37.基于所述第二位姿信息对所述无人机在图像帧中的位姿信息进行预测,得到所述第一位姿信息。
38.在另一种可能的实现方式中,所述从所述图像帧中确定多个特征点的坐标信息,包括:
39.对所述图像帧进行特征点提取,得到多个待处理的特征点;
40.从所述多个待处理的特征点中去除不符合共面假设的特征点,得到所述多个特征点;
41.获取所述多个特征点在所述图像帧中的坐标信息。
42.另一方面,提供了一种无人机深度信息的确定装置,所述装置包括:
43.第一确定模块,用于通过目标相机采集图像帧,从所述图像帧中确定多个特征点的坐标信息;
44.第一获取模块,用于获取单点测距传感器采集到的所述图像帧中的目标点的第一深度信息,所述目标相机和所述单点测距传感器均安装在无人机上;
45.第二获取模块,用于获取所述多个特征点在关键图像帧中的第二深度信息和所述无人机在所述图像帧中的第一位姿信息;
46.第二确定模块,用于基于所述多个特征点在关键图像帧中的第二深度信息、所述第一位姿信息、所述多个特征点的坐标信息和所述目标点的第一深度信息,确定所述多个特征点在所述图像帧中的第三深度信息。
47.在一种可能的实现方式中,所述第二确定模块,包括:
48.第一确定单元,用于对于任一特征点,若所述特征点是所述图像帧中首次观测到的特征点,则将所述目标点的第一深度信息作为所述特征点的第三深度信息;若所述特征点不是所述图像帧中首次观测到的特征点,则基于所述目标点的第一深度信息和所述第二深度信息,确定所述特征点在所述图像帧中的第四深度信息;
49.更新单元,用于基于所述特征点的坐标信息和所述第一位姿信息,对所述特征点在所述图像帧中的第四深度信息进行更新,得到所述特征点的第三深度信息。
50.在另一种可能的实现方式中,所述第一确定单元,用于若所述特征点在所述图像帧中的位置处于所述目标点周围的预设区域内,则将所述目标点的第一深度信息作为所述第四深度信息;若所述特征点在所述图像帧中的位置未处于所述目标点周围的预设区域内,则将所述第二深度信息作为所述第四深度信息。
51.在另一种可能的实现方式中,所述更新单元,用于基于所述特征点的坐标信息确定所述特征点在所述图像帧中的归一化坐标,确定所述归一化坐标对所述第四深度信息的
偏导数,将所述偏导数作为所述观测矩阵;基于所述观测矩阵对所述第一位姿信息进行修正,得到所述第三深度信息。
52.在另一种可能的实现方式中,所述装置还包括:
53.所述更新单元,用于若所述特征点在所述图像帧中的位置未处于所述目标点周围的预设区域内,则基于所述特征点的坐标信息和所述第一位姿信息,对所述特征点在所述图像帧中的第四深度信息进行更新,得到所述特征点的第三深度信息;
54.所述更新单元,还用于若所述特征点在所述图像帧中的位置处于所述目标点周围的预设区域内,则获取所述目标点在多个图像帧中的第一深度方差以及所述关键图像帧中的多个特征点的第二深度方差,所述多个图像帧包括当前采集的所述图像帧;基于所述第一深度方差、所述第二深度方差、所述第二深度信息对所述第四深度信息进行更新,得到所述第三深度信息。
55.在另一种可能的实现方式中,所述装置还包括:
56.第三确定模块,用于基于每个特征点的第三深度信息,确定所述图像帧中的多个特征点的第三深度方差;
57.第四确定模块,用于若所述第三深度方差小于预设方差,则基于所述图像帧中的所述每个特征点的第三深度信息,确定所述无人机的目标位姿信息。
58.在另一种可能的实现方式中,所述第三确定模块,用于若所述多个特征点均是所述图像帧中首次观测到的特征点,则确定初始深度方差为所述第三深度方差;若所述多个特征点中存在不是所述图像帧中首次观测到的特征点,则获取所述目标点在多个图像帧中的第一深度方差以及所述关键图像帧中的多个特征点的第二深度方差,基于所述第一深度方差和所述第二深度方差,确定所述第三深度方差,所述多个图像帧包括当前采集的所述图像帧。
59.在另一种可能的实现方式中,所述装置还包括:
60.第五确定模块,用于确定所述多个特征点在所述图像帧中的平均重投影误差,以及所述目标点在所述多个图像帧中的第一深度方差;将所述平均重投影误差、所述第一深度方差和预设参数的乘积作为所述初始深度方差。
61.在另一种可能的实现方式中,所述装置还包括:第六确定模块,用于获取所述无人机的第二位姿信息,所述第二位姿信息为所述目标图像在关键图像帧中的位姿信息;基于所述第二位姿信息对所述无人机在图像帧中的位姿信息进行预测,得到所述第一位姿信息。
62.在另一种可能的实现方式中,所述第一确定模块,用于对所述图像帧进行特征点提取,得到多个待处理的特征点;从所述多个待处理的特征点中去除不符合共面假设的特征点,得到所述多个特征点;获取所述多个特征点在所述图像帧中的坐标信息。
63.另一方面,提供了一种无人机,所述无人机包括处理器和存储器,所述存储器中存储有至少一条程序代码,所述至少一条程序代码由所述处理器加载并执行,以实现上述的无人机深度信息的确定方法。
64.另一方面,提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有至少一条程序代码,所述至少一条程序代码由处理器加载并执行,以实现上述的无人机深度信息的确定方法。
65.另一方面,提供了一种计算机程序产品,当所述计算机程序产品中的程序代码由无人机的处理器执行时,使得所述无人机能够执行上述的无人机深度信息的确定方法。
66.在本技术实施例中,在对无人机进行视觉定位的过程中,单点测距传感器采集到的深度信息精度较高,因此由于图像帧中多个特征点的第三深度信息是结合单点测距传感器采集的第一深度信息和已知的关键图像帧中的特征点的第二深度信息确定的,这样即使无人机处于高空中也能得到准确的深度信息,进而提高了视觉定位过程中深度信息确定的精度。
附图说明
67.为了更清楚地说明本技术实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
68.图1是本技术实施例提供的一种实施环境的示意图;
69.图2是本技术实施例提供的一种无人机深度信息的确定方法的流程图;
70.图3是本技术实施例提供的一种无人机深度信息的确定方法的流程图;
71.图4是本技术实施例提供的一种无人机深度信息的确定方法的流程图;
72.图5是本技术实施例提供的一种无人机深度信息的确定装置的结构框图;
73.图6是本技术实施例提供的一种无人机的结构框图。
具体实施方式
74.为使本技术的目的、技术方案和优点更加清楚,下面将结合附图对本技术实施方式作进一步地详细描述。
75.本技术的说明书和权利要求书及该附图中的术语“第一”、“第二”、“第三”和“第四”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们的任意变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其他步骤或单元。
76.图1是本技术实施例提供的一种实施环境的示意图。参见图1,该实施环境中包括:目标相机101、单点测距传感器102和无人机103,目标相机101、单点测距传感器102分别与无人机103通过无线或有线网络连接。
77.目标相机101和单点测距传感器102均安装在待定位的无人机上。例如,目标相机101和单点测距传感器102均安装在无人机的下方。
78.目标相机101可以为单目相机。单点测距传感器102可以为超声波测距传感器、激光测距传感器或者红外测距传感器等传感器中的任一种。
79.在本技术实施例中,在无人机行进过程中,目标相机101,用于拍摄参考面的图像,向无人机103发送该图像;单点测距传感器102,用于测量与参考面之间的距离,向无人机103发送该距离,该距离也即是参考面的中心点的深度;无人机103,用于基于该深度确定出该图像中的多个特征点的深度信息,进而根据该深度信息对无人机进行视觉定位。
80.本技术实施例提供的深度信息的确定方法可以应用在无人机飞行场景中。下述场景中的无人机为上述实施环境中的无人机103,目标相机为目标相机101,单点测距传感器为单点测距传感器102。例如,无人机的下方安装有目标相机,在无人机飞行过程中,无人机根据目标相机拍摄的图像以及单点测距传感器采集的深度,通过本技术提供的深度信息确定方法,确定该图像中的特征点的深度信息,从而基于该深度信息对无人机进行视觉定位。
81.图2是本技术实施例提供的一种无人机深度信息的确定方法的流程图。参见图2,该方法包括:
82.步骤201:通过目标相机采集图像帧,从该图像帧中确定多个特征点的坐标信息;
83.步骤202:获取单点测距传感器采集到的该图像帧中的目标点的第一深度信息,该目标相机和该单点测距传感器均安装在无人机上;
84.步骤203:获取该多个特征点在关键图像帧中的第二深度信息和该无人机在该图像帧中的第一位姿信息;
85.步骤204:基于该多个特征点在关键图像帧中的第二深度信息、该第一位姿信息、该多个特征点的坐标信息和该目标点的第一深度信息,确定该多个特征点在该图像帧中的第三深度信息。
86.在一种可能的实现方式中,该基于该多个特征点在关键图像帧中的第二深度信息、该第一位姿信息、该多个特征点的坐标信息和该目标点的第一深度信息,确定该多个特征点在该图像帧中的第三深度信息,包括:
87.对于任一特征点,若该特征点是该图像帧中首次观测到的特征点,则将该目标点的第一深度信息作为该特征点的第三深度信息;
88.若该特征点不是该图像帧中首次观测到的特征点,则基于该目标点的第一深度信息和该第二深度信息,确定该特征点在该图像帧中的第四深度信息;
89.基于该特征点的坐标信息和该第一位姿信息,对该特征点在该图像帧中的第四深度信息进行更新,得到该特征点的第三深度信息。
90.在另一种可能的实现方式中,该基于该目标点的第一深度信息和该第二深度信息,确定该特征点在该图像帧中的第四深度信息,包括:
91.若该特征点在该图像帧中的位置处于该目标点周围的预设区域内,则将该目标点的第一深度信息作为该第四深度信息;
92.若该特征点在该图像帧中的位置未处于该目标点周围的预设区域内,则将该第二深度信息作为该第四深度信息。
93.在另一种可能的实现方式中,该基于该特征点的坐标信息和该第一位姿信息,对该特征点在该图像帧中的第四深度信息进行更新,得到该特征点的第三深度信息,包括:
94.基于该特征点的坐标信息确定该特征点在该图像帧中的归一化坐标,确定该归一化坐标对该第四深度信息的偏导数,将该偏导数作为该观测矩阵;
95.基于该观测矩阵对该第一位姿信息进行修正,得到该第三深度信息。
96.在另一种可能的实现方式中,在基于该目标点的第一深度信息和该第二深度信息,确定该特征点在该图像帧中的第四深度信息之后,该方法还包括:
97.若该特征点在该图像帧中的位置未处于该目标点周围的预设区域内,则执行该基于该特征点的坐标信息和该第一位姿信息,对该特征点在该图像帧中的第四深度信息进行
更新,得到该特征点的第三深度信息的步骤;
98.若该特征点在该图像帧中的位置处于该目标点周围的预设区域内,则获取该目标点在多个图像帧中的第一深度方差以及该关键图像帧中的多个特征点的第二深度方差,该多个图像帧包括当前采集的该图像帧;
99.基于该第一深度方差、该第二深度方差、该第二深度信息对该第四深度信息进行更新,得到该第三深度信息。
100.在另一种可能的实现方式中,该方法还包括:
101.基于每个特征点的第三深度信息,确定该图像帧中的多个特征点的第三深度方差;
102.若该第三深度方差小于预设方差,则基于该图像帧中的该每个特征点的第三深度信息,确定该无人机的目标位姿信息。
103.在另一种可能的实现方式中,该基于每个特征点的第三深度信息,确定该图像帧中的多个特征点的第三深度方差,包括:
104.若该多个特征点均是该图像帧中首次观测到的特征点,则确定初始深度方差为该第三深度方差;
105.若该多个特征点中存在不是该图像帧中首次观测到的特征点,则获取该目标点在多个图像帧中的第一深度方差以及该关键图像帧中的多个特征点的第二深度方差,基于该第一深度方差和该第二深度方差,确定该第三深度方差,该多个图像帧包括当前采集的该图像帧。
106.在另一种可能的实现方式中,该初始深度方差的确定过程,包括:
107.确定该多个特征点在该图像帧中的平均重投影误差,以及该目标点在该多个图像帧中的第一深度方差;
108.将该平均重投影误差、该第一深度方差和预设参数的乘积作为该初始深度方差。
109.在另一种可能的实现方式中,该无人机在该图像帧中的第一位姿信息的确定过程,包括:
110.获取该无人机的第二位姿信息,该第二位姿信息为该目标图像在关键图像帧中的位姿信息;
111.基于该第二位姿信息对该无人机在图像帧中的位姿信息进行预测,得到该第一位姿信息。
112.在另一种可能的实现方式中,该从该图像帧中确定多个特征点的坐标信息,包括:
113.对该图像帧进行特征点提取,得到多个待处理的特征点;
114.从该多个待处理的特征点中去除不符合共面假设的特征点,得到该多个特征点;
115.获取该多个特征点在该图像帧中的坐标信息。
116.在本技术实施例中,在对无人机进行视觉定位的过程中,单点测距传感器采集到的深度信息精度较高,因此由于图像帧中多个特征点的第三深度信息是结合单点测距传感器采集的第一深度信息和已知的关键图像帧中的特征点的第二深度信息确定的,这样即使无人机处于高空中也能得到准确的深度信息,进而提高了视觉定位过程中深度信息确定的精度。
117.图3是本技术实施例提供的一种无人机深度信息的确定方法的流程图,该方法由
无人机执行,参见图3,该方法包括:
118.步骤301:无人机通过目标相机采集图像帧,从该图像帧中确定多个特征点的坐标信息。
119.其中,目标相机安装在待定位的无人机上。在一些实施例中,目标相机每采集到一个图像帧,就向无人机发送该图像帧;无人机接收目标相机采集的图像帧,对于每个图像帧,从该图像帧中确定多个特征点的坐标信息。
120.在一些实施例中,无人机从该图像帧中确定多个特征点的坐标信息的实现方式包括以下步骤(1)

(3):
[0121] (1)无人机对该图像帧进行特征点提取,得到多个待处理的特征点。
[0122]
在一种可能的实现方式中,步骤(1)的实现方式可以为:无人机在该图像帧中跟踪上一图像帧的特征点;若图像帧中跟踪得到的特征点的数量小于预设数量,则从该图像帧中提取新的特征点,将该跟踪得到的特征点和新的特征点组成该多个待处理的特征点,直至该图像帧包括的多个待处理的特征点的数量不小于预设数量。
[0123]
其中,通过对相邻图像帧进行特征点的跟踪,从而建立图像帧之间的特征匹配关系。本技术对无人机在图像帧中跟踪上一图像帧的特征点不作具体限定。例如,无人机可以采用光流法进行特征点跟踪。并且,本技术对无人机提取新的特征点的实现方式不作具体限定;例如,无人机可以采用fast(features fromaccelerated segment test,加速分段检测的特征)算法、sift(scale invariantfeature transform,尺度不变特征变换)算法等算法中的任一算法对图像帧进行特征点提取,或者无人机也可以采用除上述算法以外的其它算法对当前的图像帧进行特征点提取。
[0124] (2)无人机从该多个待处理的特征点中去除不符合共面假设的特征点,得到该多个特征点。
[0125]
其中,无人机在通过目标相机拍摄图像帧时,由于该图像帧为与位于无人机下方的参考面相对应的图像帧,而该参考面中可能存在处于不同海拔高度的物体,若该多个待处理的特征点中存在处于不同海拔高度的特征点,则根据该多个待处理的特征点确定出的深度信息可能存在误差,因此无人机可以从该多个待处理的特征点中去除不符合共面假设的特征点。
[0126]
在一种可能的实现方式中,无人机可以采用ransac(random sampleconsensus,随机抽样一致性)处理的方式从多个待处理的特征点中去除不符合共面假设的特征点;例如,通过单应性(homography)矩阵变换、本质矩阵变换等方式进行ransac处理。
[0127] (3)无人机获取该多个特征点在该图像帧中的坐标信息。
[0128]
其中,坐标信息可以包括该特征点在图像帧中的像素坐标;或者该坐标信息也可以包括特征点图像帧中的图像坐标。相应的,在确定特征点的像素坐标之后,无人机可以将该像素坐标转换成图像坐标。
[0129]
在本技术实施例中,由于从提取到的多个待处理的特征点中去除了不符合共面假设的特征点,从而保证了剩余的特征点符合共面假设,进而为提高特征点的深度信息确定的精度提供了数据支持。
[0130]
步骤302:无人机获取单点测距传感器采集到的该图像帧中的目标点的第一深度信息,该目标相机和该单点测距传感器均安装在该无人机上。
[0131]
其中,该第一深度信息为单点测距传感器采集的与参考面之间的距离,也即是参考面的中心点的深度;相应的,由于图像帧为目标相机采集的参考面的图像,则目标点为图像帧的中心点。
[0132]
步骤303:无人机获取该多个特征点在关键图像帧中的第二深度信息和该无人机在该图像帧中的第一位姿信息。
[0133]
其中,关键图像帧为无人机从目标相机采集到的相邻的多个图像帧中确定出的参考图像帧。在本技术实施例中,由于目标相机采集图像帧的采样频率较高,而在相邻的两个图像帧之间无人机的位姿变化一般比较小,因此,在一定的位姿变化范围内,新得到的图像帧只与某一特定的帧进行对齐以估计当前的位姿,当超出一定的范围后,采取新的特定的帧进行下一阶段的对齐,这些用来进行图像对齐的特定帧为关键图像帧。
[0134]
可选地,无人机确定关键图像帧的实现方式包括:若当前采集的图像帧中新提取的特征点数量超过预设数量,则确定该图像帧为关键图像帧;或者,若旧特征点的平均像素移动距离超过预设距离,则确定当前采集的图像帧为关键图像帧,其中,平均像素移动距离为旧特征点从上一关键图像帧到当前采集的图像帧之间的平均像素移动距离。
[0135]
需要说明的是,无人机确定关键图像帧的过程还可以包括其他实现方式,本技术在此不做限定。
[0136]
其中,该第一位姿信息为表示无人机在图像帧处相对于在关键图像帧处的相对位置和相对姿态的信息。在一些实施例中,无人机确定该无人机在该图像帧中的第一位姿信息的过程包括:无人机获取该无人机的第二位姿信息,该第二位姿信息为该目标图像在关键图像帧中的位姿信息;基于该第二位姿信息对该无人机在图像帧中的位姿信息进行预测,得到该第一位姿信息。
[0137]
在该实施例中,由于关键图像帧的位姿信息已知,因此无人机根据该第二位姿信息来预测第一位姿信息。例如,无人机通过ekf(extended kalman filter,扩展卡尔曼滤波器)基于该第二位姿信息对无人机在图像帧中的位姿信息进行预测。
[0138]
在本技术实施例中,由于无人机在行进过程中,在关键图像帧处的位姿信息已知,那么通过结合该位姿信息可以对无人机在图像帧相对于关键图像帧的相对位姿信息进行预测,从而能够为后续深度信息的确定提供数据支持。
[0139]
在本技术实施例中,无人机可以基于该多个特征点在关键图像帧中的第二深度信息、该第一位姿信息、该多个特征点的坐标信息和该目标点的第一深度信息,确定该多个特征点在该图像帧中的第三深度信息。需要说明的一点是,由于图像帧中存在多个特征点,该多个特征点中的任一特征点可能为图像帧中首次观测到的特征点,也可能不是图像帧中首次观测到的特征点,因此,在步骤303 之后,对于任一特征点,无人机执行步骤304的操作或者执行步骤305

步骤306 的操作。
[0140]
步骤304:对于任一特征点,若该特征点是该图像帧中首次观测到的特征点,则无人机将该目标点的第一深度信息作为该特征点的第三深度信息。
[0141]
其中,若本技术实施例中的目标相机为单目相机,同一时刻单目相机拍摄到的图像帧数量为1,然而根据一个图像帧,无人机无法确定该图像帧中特征点的深度信息;因此,无人机可以将单点测距传感器采集到的目标点的第一深度信息作为特征点的第三深度信息,从而确定该特征点的深度初值。
[0142]
需要说明的一点是,后续若有其它图像帧也观测到该特征点,则表示该特征点不再是首次观测到的特征点,则无人机可以通过步骤305

步骤306的操作对该特征点的深度信息进行更新。
[0143]
在本技术实施例中,单点测距传感器的采样频率与目标相机的采样频率可以相同也可以不同;相应的,第一种情况:若单点测距传感器的采样频率和目标相机的采样频率相同,则单点测距传感器采集到的第一深度信息为图像帧的中心点的深度信息。
[0144]
在该情况中,无人机可以将该中心点的深度信息作为图像帧中首次观测到的特征点的第三深度信息。
[0145]
第二种情况:若单点测距传感器的采样频率和目标相机的采样频率不同,则单点测距传感器采集到的第一深度信息并非图像帧的中心点的深度信息。
[0146]
在该情况中,对于图像帧,无人机可以确定单点测距传感器在采集目标点的第一深度信息时,采样时刻与采集图像帧的采样时刻最近的目标点的第一深度信息,将该第一深度信息作为图像帧中首次观测到的特征点的第三深度信息。
[0147]
步骤305:若该特征点不是该图像帧中首次观测到的特征点,则无人机基于该目标点的第一深度信息和该第二深度信息,确定该特征点在该图像帧中的第四深度信息。
[0148]
在一种可能的实现方式中,无人机基于该目标点的第一深度信息和该第二深度信息,确定该特征点在该图像帧中的第四深度信息的过程,也即步骤305至少可以包括以下两种实现方式:
[0149]
第一种实现方式:若该特征点在该图像帧中的位置处于该目标点周围的预设区域内,则无人机将该目标点的第一深度信息作为该第四深度信息。
[0150]
其中,该预设区域可以根据需要进行设置和更改,本技术对此不作具体限定;例如,该预设区域可以为距离目标点所在位置预设像素数的区域,该预设像素数可以为10像素数、15像素数或者30像素数等。
[0151]
在该实现方式中,由于单点测距传感器采集到的目标点的第一深度信息的精度较高,则无人机可以将该第一深度信息作为图像帧中目标点附近的特征点的第四深度信息,使得第四深度信息确定的精度较高。
[0152]
第二种实现方式:若该特征点在该图像帧中的位置未处于该目标点周围的预设区域内,则无人机将该第二深度信息作为该第四深度信息。
[0153]
在该情况中,由于关键图像帧中的特征点的深度信息已知,则无人机可以将该关键图像帧中已经确定的第二深度信息作为图像帧中相同特征点的第四深度信息。
[0154]
在本技术实施例中,由于单点测距传感器测量的精度较高,因此结合单点测距传感器测量得到的深度信息来确定目标点附近的特征点的深度初值能够提高深度确定的精度;另一方面,对于重复观测到的与关键图像帧匹配的其它特征点,其深度初值可以结合在处理关键图像帧时确定的深度信息来确定,这样在保证深度确定的精度较高的基础上,提高了深度确定的效率。
[0155]
在一些实施例中,在步骤305之后,本技术提供的无人机深度信息的确定方法还包括以下两种实现方式:
[0156]
在一种可能的实现方式中,若该特征点在该图像帧中的位置未处于该目标点周围的预设区域内,则无人机执行步骤306的操作。
[0157]
其中,对于未处于该目标点周围的预设区域内的特征点,该特征点的第四深度信息是基于关键图像帧中特征点的第二深度信息确定的,则无人机可以通过该关键图像帧对应的第一位姿信息来对该第四深度信息进行更新。
[0158]
在另一种可能的实现方式中,若该特征点在该图像帧中的位置处于该目标点周围的预设区域内,则无人机获取该目标点在多个图像帧中的第一深度方差以及该关键图像帧中的多个特征点的第二深度方差,该多个图像帧包括当前采集的该图像帧;基于该第一深度方差、该第二深度方差、该第二深度信息对该第四深度信息进行更新,得到该第三深度信息。
[0159]
其中,该多个图像帧为目标相机采集到的连续的多个图像帧,且该多个图像帧包括关键图像帧和当前采集的图像帧。由于该多个图像帧中的每个图像帧的目标点的深度信息均可以由单点测距传感器采集到的第一深度信息确定,因此,该第一深度方差为该多个图像帧的中心点的深度方差。该第二深度方差为关键图像帧中的特征点的深度方差。
[0160]
在该实现方式中,无人机可以通过ekf,也即通过以下公式一来实现基于该第一深度方差、该第二深度方差、该第二深度信息对该第四深度信息进行更新,得到该第三深度信息的过程。
[0161]
公式一:
[0162]
其中,μ
fuse
为第三深度信息;μ为第四深度信息;μ
obs
为第二深度信息;σ
obs
为第二深度方差;σ为第一深度方差。
[0163]
在本技术实施例中,由于单点测距传感器采集到的深度信息较为准确,则在更新特征点的深度信息时,可以结合该单点测距传感器采集到的深度信息的第一深度方差以及关键图像帧中已知的第二深度方差来一同更新图像帧的特征点深度,从而节省了ekf更新的计算量。
[0164]
步骤306:无人机基于该特征点的坐标信息和该第一位姿信息,对该特征点在该图像帧中的第四深度信息进行更新,得到该特征点的第三深度信息。
[0165]
在一种可能的实现方式中,无人机可以通过ekf对第四深度信息进行更新,相应的,无人机执行步骤306的实现方式可以包括以下步骤(1)

(2):
[0166] (1)无人机基于该特征点的坐标信息确定该特征点在该图像帧中的归一化坐标,确定该归一化坐标对该第四深度信息的偏导数,将该偏导数作为该观测矩阵。
[0167]
其中,无人机可以通过以下公式二实现步骤(1)的操作:
[0168]
公式二:
[0169]
其中,h为观测矩阵;m为特征点在图像帧中的归一化坐标,为特征点在图像帧中的坐标信息。
[0170]
z
a
为特征点在关键图像帧(auchored_frame)中的第二深度信息,也即在图像帧中
的第四深度信息。
[0171]
其中,对于非首次观测到的任一特征点,其在图像帧中的坐标信息与在关键图像帧中的坐标信息之间的转换关系见以下公式三:
[0172]
公式三:
[0173]
其中,r_c_a和t_c_a表示图像帧的第一位姿信息,也即姿态和位置;表示特征点在关键图像帧中的归一化坐标。
[0174]
相应的,观测矩阵也可表示为公式四的形式:
[0175]
公式四:
[0176] (2)无人机基于该观测矩阵对该第一位姿信息进行修正,得到该第三深度信息。
[0177]
在该步骤中,无人机通过ekf对特征点的第四深度信息进行更新,得到第三深度信息。
[0178]
在本技术实施例中,通过松耦合的方式结合特征点的深度来确定系统的观测矩阵,从而对关键图像帧对应的第一位姿信息进行修正,得到特征点更新后的深度信息,进而降低了深度信息确定的计算量。
[0179]
在本技术实施例中,一方面,将单点测距传感器采集到的第一深度信息作为首次观测到的特征点的第三深度信息,克服了单个图像帧无法确定特征点深度的问题;另一方面,对于重复观测到的特征点,结合第一深度信息、关键帧的第一位姿信息以及特征点的第二深度信息来确定该特征点的第三深度信息,从而深度信息确定的精度较高。
[0180]
在本技术实施例中,在确定图像帧的多个特征点的深度信息之后,可以根据该多个特征点的深度方差确定是否可以根据图像帧的深度信息来确定无人机的位姿;相应的,图4是本技术实施例提供的一种无人机深度信息的确定方法的流程图,该方法由无人机执行,参见图4,该方法包括:
[0181]
步骤401:无人机基于每个特征点的第三深度信息,确定图像帧中的多个特征点的第三深度方差。
[0182]
在一些实施例中,该多个特征点可能均是首次观测到的特征点,也可能存在不是首次观测到的特征点,相应的,该步骤401的实现方式包括以下两种情况:
[0183]
第一种情况,若该多个特征点均是该图像帧中首次观测到的特征点,则确定初始深度方差为该第三深度方差。
[0184]
其中,初始深度方差(meas_var)的确定而可以考虑两点因素,一是多个图像帧中单点测距传感器采集到的目标点的第一深度方差(tof_variance),二是特征点的平均重投影误差(reprojection_error),相应的,该初始深度方差的确定过程可以包括以下步骤:
[0185]
无人机确定该多个特征点在该图像帧中的平均重投影误差,以及该目标点在多个图像帧中的第一深度方差;将该平均重投影误差、该第一深度方差和预设参数的乘积作为
该初始深度方差。
[0186]
在该情况中,无人机可以通过以下公式五来实现初始深度方差的确定过程:
[0187]
公式五:meas_var=lambda
×
tof_variance
×
reprojection_error
[0188]
其中,lambda为预设参数。该预设参数可以为一个固定常数;相应的,该预设参数可以根据需要进行设置和更改,本技术对此不做具体限定。
[0189]
在本技术实施例中,由于特征点可能并不是位于目标点周围的特征点,则使用单点测距传感器采集到的第一深度信息作为特征点的深度初值所导致的误差较大,通过对该深度初值设置一个初始深度方差,使得后续在深度的更新过程中可以结合深度方差确定深度是否准确。
[0190]
第二种情况,若该多个特征点中存在不是该图像帧中首次观测到的特征点,则获取该目标点在多个图像帧中的第一深度方差以及该关键图像帧中的多个特征点的第二深度方差,基于该第一深度方差和该第二深度方差,确定该第三深度方差,该多个图像帧包括当前采集的该图像帧。
[0191]
在该情况中,无人机可以通过以下公式六来实现基于该第一深度方差和该第二深度方差,确定该第三深度方差的过程:
[0192]
公式六:
[0193]
其中,σ
fuse
为第三深度方差;σ为第一深度方差;σ
obs
为第二深度方差。
[0194]
在本技术实施例中,通过结合单点测距传感器采集的深度信息的深度方差以及关键图像帧中特征点的深度方差来实现对图像帧的深度方差的ekf更新,从而节省了更新过程的计算量,节省了无人机的处理资源。
[0195]
步骤402:若该第三深度方差小于预设方差,则无人机基于该图像帧中的该每个特征点的第三深度信息,确定无人机的目标位姿信息。
[0196]
其中,若第三深度方差小于预设方差,则表示状态收敛,无人机可以通过 pnp(perspective

n

point,角度

n

点)的方式实现基于该图像帧中的该每个特征点的第三深度信息确定该无人机的目标位姿信息的过程。
[0197]
在本技术实施例中,若图像帧中的多个特征点的深度收敛,则表示该多个特征点的深度较为准确,此时通过第三深度信息确定出的无人机的位姿的准确性较高。
[0198]
在本技术实施例中,通过ekf进行深度估计,将特征点的深度信息加入ekf 的状态变量,因此,若状态收敛,也即当前确定出的第三深度信息较为准确,则无人机可以基于多个特征点的第三深度信息来进一步确定无人机的目标位姿信息,从而可以在无人机处于百米高空时也能得到稳定的尺度估计,进而得到稳定的位姿估计结果;此外,基于松耦合的方式将深度和位姿进行融合,降低了计算量和计算复杂度,使得小型无人机即使在计算资源有限的情况下,也能确定出准确的深度信息。
[0199]
上述所有可选技术方案,可以采用任意结合形成本技术的可选实施例,在此不再一一赘述。
[0200]
图5是本技术实施例提供的一种无人机深度信息的确定装置500的结构框图。参见500,该装置500包括:
[0201]
第一确定模块501,用于通过目标相机采集图像帧,从该图像帧中确定多个特征点
的坐标信息;
[0202]
第一获取模块502,用于获取单点测距传感器采集到的该图像帧中的目标点的第一深度信息,该目标相机和该单点测距传感器均安装在该无人机上;
[0203]
第二获取模块503,用于获取该多个特征点在关键图像帧中的第二深度信息和该无人机在该图像帧中的第一位姿信息;
[0204]
第二确定模块504,用于基于该多个特征点在关键图像帧中的第二深度信息、该第一位姿信息、该多个特征点的坐标信息和该目标点的第一深度信息,确定该多个特征点在该图像帧中的第三深度信息。
[0205]
在一种可能的实现方式中,该第二确定模块504,包括:
[0206]
第一确定单元,用于对于任一特征点,若该特征点是该图像帧中首次观测到的特征点,则将该目标点的第一深度信息作为该特征点的第三深度信息;若该特征点不是该图像帧中首次观测到的特征点,则基于该目标点的第一深度信息和该第二深度信息,确定该特征点在该图像帧中的第四深度信息;
[0207]
更新单元,用于基于该特征点的坐标信息和该第一位姿信息,对该特征点在该图像帧中的第四深度信息进行更新,得到该特征点的第三深度信息。
[0208]
在另一种可能的实现方式中,该第一确定单元,用于若该特征点在该图像帧中的位置处于该目标点周围的预设区域内,则将该目标点的第一深度信息作为该第四深度信息;若该特征点在该图像帧中的位置未处于该目标点周围的预设区域内,则将该第二深度信息作为该第四深度信息。
[0209]
在另一种可能的实现方式中,该更新单元,用于基于该特征点的坐标信息确定该特征点在该图像帧中的归一化坐标,确定该归一化坐标对该第四深度信息的偏导数,将该偏导数作为该观测矩阵;基于该观测矩阵对该第一位姿信息进行修正,得到该第三深度信息。
[0210]
在另一种可能的实现方式中,该装置还包括:
[0211]
该更新单元,用于若该特征点在该图像帧中的位置未处于该目标点周围的预设区域内,则基于该特征点的坐标信息和该第一位姿信息,对该特征点在该图像帧中的第四深度信息进行更新,得到该特征点的第三深度信息;
[0212]
该更新单元,还用于若该特征点在该图像帧中的位置处于该目标点周围的预设区域内,则获取该目标点在多个图像帧中的第一深度方差以及该关键图像帧中的多个特征点的第二深度方差,该多个图像帧包括当前采集的该图像帧;基于该第一深度方差、该第二深度方差、该第二深度信息对该第四深度信息进行更新,得到该第三深度信息。
[0213]
在另一种可能的实现方式中,该装置还包括:
[0214]
第三确定模块,用于基于每个特征点的第三深度信息,确定该图像帧中的多个特征点的第三深度方差;
[0215]
第四确定模块,用于若该第三深度方差小于预设方差,则基于该图像帧中的该每个特征点的第三深度信息,确定该无人机的目标位姿信息。
[0216]
在另一种可能的实现方式中,该第三确定模块,用于若该多个特征点均是该图像帧中首次观测到的特征点,则确定初始深度方差为该第三深度方差;若该多个特征点中存在不是该图像帧中首次观测到的特征点,则获取该目标点在多个图像帧中的第一深度方差
以及该关键图像帧中的多个特征点的第二深度方差,基于该第一深度方差和该第二深度方差,确定该第三深度方差,该多个图像帧包括当前采集的该图像帧。
[0217]
在另一种可能的实现方式中,该装置还包括:
[0218]
第五确定模块,用于确定该多个特征点在该图像帧中的平均重投影误差,以及该目标点在该多个图像帧中的第一深度方差;将该平均重投影误差、该第一深度方差和预设参数的乘积作为该初始深度方差。
[0219]
在另一种可能的实现方式中,该装置还包括:第六确定模块,用于获取该无人机的第二位姿信息,该第二位姿信息为该目标图像在关键图像帧中的位姿信息;基于该第二位姿信息对该无人机在图像帧中的位姿信息进行预测,得到该第一位姿信息。
[0220]
在另一种可能的实现方式中,该第一确定模块501,用于对该图像帧进行特征点提取,得到多个待处理的特征点;从该多个待处理的特征点中去除不符合共面假设的特征点,得到该多个特征点;获取该多个特征点在该图像帧中的坐标信息。
[0221]
在本技术实施例中,在对无人机进行视觉定位的过程中,单点测距传感器采集到的深度信息精度较高,因此由于图像帧中多个特征点的第三深度信息是结合单点测距传感器采集的第一深度信息和已知的关键图像帧中的特征点的第二深度信息确定的,这样即使无人机处于高空中也能得到准确的深度信息,进而提高了视觉定位过程中深度信息确定的精度。
[0222]
需要说明的是:上述实施例提供的无人机深度信息的确定装置在确定深度信息时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将终端的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的无人机深度信息的确定装置与无人机深度信息的确定方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
[0223]
本技术实施例还提供了一种无人机。图6示出了本技术实施例提供的一种无人机600的结构框图。通常,该无人机600可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(central processing units,cpu)601 和一个或一个以上的存储器602,其中,存储器602用于存储可执行指令,处理器601被配置为执行上述可执行指令,以实现上述各个方法实施例提供的无人机深度信息的确定方法。当然,该无人机600还可以具有有线或无线网络接口、键盘以及输入输出接口等部件,以便进行输入输出,该无人机600还可以包括其他用于实现设备功能的部件,在此不做赘述。
[0224]
本技术实施例还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有至少一条程序代码,该至少一条程序代码由处理器加载并执行,以实现上述的无人机深度信息的确定方法。
[0225]
本技术实施例还提供了一种计算机程序产品,当该计算机程序产品中的程序代码由无人机的处理器执行时,使得该无人机能够执行上述的无人机深度信息的确定方法。
[0226]
在一些实施例中,本技术实施例所涉及的程序代码可被部署在一个无人机上执行,或者在位于一个地点的多个无人机上执行,又或者,在分布在多个地点且通过通信网络互连的多个无人机上执行,分布在多个地点且通过通信网络互连的多个无人机可以组成区块链系统。
[0227]
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件
来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
[0228]
以上该仅为本技术的可选实施例,并不用以限制本技术,凡在本技术的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本技术的保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献