Monocular vision SLAM scale recovery method for unmanned aerial vehicle

文档序号:1952608 发布日期:2021-12-10 浏览:16次 中文

阅读说明:本技术 一种用于无人机的单目视觉slam尺度恢复方法 (Monocular vision SLAM scale recovery method for unmanned aerial vehicle ) 是由 张泽勇 耿虎军 高峰 关俊志 李晨阳 王雅涵 蔡迎哲 柴兴华 陈彦桥 彭会湘 于 2021-09-16 设计创作,主要内容包括:本发明公开了一种用于无人机的单目视觉SLAM尺度恢复方法,属于无人机技术领域。该方法首先获取高度信息和摄像头图像,根据图像计算SLAM坐标;然后根据时间戳近似同步的规则,采集多组数据并计算欧氏距离,进而计算SLAM坐标的尺度信息。本方法可动态提高尺度信息的精准度,从而能够动态、精准地恢复SLAM坐标系的尺度。(The invention discloses a monocular vision SLAM scale recovery method for an unmanned aerial vehicle, and belongs to the technical field of unmanned aerial vehicles. Firstly, acquiring height information and a camera image, and calculating an SLAM coordinate according to the image; and then, according to the rule that the timestamps are approximately synchronous, acquiring multiple groups of data, calculating Euclidean distances and further calculating scale information of SLAM coordinates. The method can dynamically improve the accuracy of the scale information, so that the scale of the SLAM coordinate system can be dynamically and accurately recovered.)

1. A monocular vision SLAM scale restoration method for an unmanned aerial vehicle is characterized by comprising the following steps:

(1) the unmanned aerial vehicle initializes a high-precision altimeter, and the altimeter fixes the altitude information with time stamp on a frequent distribution belt; meanwhile, a camera of the unmanned aerial vehicle acquires an image with a timestamp;

(2) processing the image through an SLAM algorithm to obtain an SLAM coordinate with a time stamp;

(3) acquiring a plurality of groups of data according to a rule of approximate synchronization of timestamps to form a data set, wherein each group of data comprises height information and SLAM coordinates approximately synchronized with the timestamp of the height information; the height difference between any two height information in the data set is greater than a threshold value;

(4) calculating the Euclidean distance between the highest height information and the lowest height information in the data set, and calculating the Euclidean distance between the two corresponding SLAM coordinates; calculating the ratio of the two Euclidean distances to obtain scale information of the SLAM coordinate;

(5) mapping the SLAM coordinates into an altimeter coordinate system by using scale information, calculating a difference value between the mapped coordinates and the corresponding altimeter coordinates, and removing a data set of which the difference value exceeds a precision threshold value from a data set;

(6) and recalculating the scale information of the SLAM coordinates according to the new data set, and realizing the dynamic adjustment of the scale information of the SLAM coordinates.

2. The monocular vision SLAM scale restoration method for unmanned aerial vehicles according to claim 1, wherein in step (3), before data collection, abnormal data of sudden change and repeated jumping are removed.

3. The monocular vision SLAM scale restoration method for unmanned aerial vehicles according to claim 1, wherein the accuracy threshold in step (5) is an average value of the difference values of each set of data in the current data set obtained according to step (5).

4. The monocular vision SLAM scale restoration method for unmanned aerial vehicles according to claim 1, wherein the new data set in step (6) is supplemented with one or more sets of new data according to the precision requirement on the basis of the data set obtained in step (5).

Technical Field

The invention relates to the technical field of artificial intelligence and unmanned planes, in particular to a monocular vision SLAM scale recovery method for an unmanned plane.

Background

Along with the development of artificial intelligence, the importance of unmanned aerial vehicles in a plurality of fields is increasingly obvious. Most unmanned aerial vehicles rely on GPS to achieve navigation of the unmanned aerial vehicle. However, in some special periods, if the GPS fails, is not available, or is disturbed, the drone will lose the most important navigation information, which is undoubtedly fatal to the drone.

For this reason, there is a need to develop an emergency positioning method in case of GPS failure. Currently, SLAM navigation is available in the art to achieve the above needs. However, the SLAM method in the monocular case still needs to rely on GPS for initialization, which results in that the monocular SLAM method cannot perform effective positioning in the case of GPS failure.

Disclosure of Invention

In view of the above, the present invention provides a monocular vision SLAM scale recovery method for an unmanned aerial vehicle, which can accurately recover a monocular vision SLAM scale under the condition that a GPS fails, so as to implement navigation and positioning based on a monocular SLAM.

In order to achieve the purpose, the invention adopts the technical scheme that:

a monocular vision SLAM scale restoration method for unmanned aerial vehicles comprises the following steps:

(1) the unmanned aerial vehicle initializes a high-precision altimeter, and the altimeter fixes the altitude information with time stamp on a frequent distribution belt; meanwhile, a camera of the unmanned aerial vehicle acquires an image with a timestamp;

(2) processing the image through an SLAM algorithm to obtain an SLAM coordinate with a time stamp;

(3) acquiring a plurality of groups of data according to a rule of approximate synchronization of timestamps to form a data set, wherein each group of data comprises height information and SLAM coordinates approximately synchronized with the timestamp of the height information; the height difference between any two height information in the data set is greater than a threshold value;

(4) calculating the Euclidean distance between the highest height information and the lowest height information in the data set, and calculating the Euclidean distance between the two corresponding SLAM coordinates; calculating the ratio of the two Euclidean distances to obtain scale information of the SLAM coordinate;

(5) mapping the SLAM coordinates into an altimeter coordinate system by using scale information, calculating a difference value between the mapped coordinates and the corresponding altimeter coordinates, and removing a data set of which the difference value exceeds a precision threshold value from a data set;

(6) and recalculating the scale information of the SLAM coordinates according to the new data set, and realizing the dynamic adjustment of the scale information of the SLAM coordinates.

Further, in the step (3), before data collection, abnormal data with sudden change and repeated jumping are removed.

Further, the precision threshold in step (5) is an average value of the difference values obtained in step (5) for each group of data in the current data set.

Further, the new data set in step (6) is supplemented with one or more groups of new data according to the precision requirement on the basis of the data set obtained in step (5).

The invention has the beneficial effects that:

1. the invention relates to a monocular SLAM scale recovery method independent of GPS initialization, which can recover correct coordinates and position the position of an unmanned aerial vehicle through a monocular SLAM when the unmanned aerial vehicle has no GPS, thereby effectively helping the unmanned aerial vehicle to carry out positioning and navigation.

2. The method is simple, easy to implement, suitable for hardware conditions of the unmanned aerial vehicle and high in practical value.

Drawings

FIG. 1 is a schematic diagram of an embodiment of the present invention;

fig. 2 is a flow chart of an embodiment of the present invention.

Detailed Description

In the following description, for the purpose of fully understanding the method, more specific details are set forth, and the method described is only a part, but not all, of the examples of the invention. All other examples, based on the examples of the invention, without any breakthrough in this field, belong to the scope of protection of the invention.

A monocular vision SLAM scale recovery method for an unmanned aerial vehicle is characterized in that a high-precision altimeter is used for recording altimeter reading in a flying track, height matching is carried out on coordinates calculated by the monocular vision SLAM on the flying track, after a height proportion is obtained, the coordinate of the monocular vision SLAM is reversely calculated, points with larger difference between the monocular vision SLAM and the altimeter are removed, and the coordinate of the SLAM is corrected, so that scale recovery precision is dynamically improved. The method specifically comprises the following steps:

1) and issuing the picture information acquired by the camera, and synchronizing the time stamp to the time for acquiring the picture by the camera.

2) The monocular camera subscribes the node information published by the camera, calculation is carried out, and the timestamp published by the result is synchronized with the time for the camera to acquire the picture.

3) When the camera acquires the picture, the altimeter information is read, so that the altimeter information is the same as the timestamp of the camera for acquiring the picture.

4) And calculating characteristic points by using monocular vision SLAM, and issuing SLAM coordinate points after the initialization is successful.

5) And (3) approximately synchronizing by utilizing the timestamp, simultaneously subscribing and processing the SLAM coordinate and the height of the altimeter, collecting 30 groups of data, and performing height measurement processing.

6) And judging whether the heights are at the same height or approximate to the same height, and when the height difference is large, carrying out scale calculation to obtain a scale value.

RMax=amax-aminFinding the maximum scale change value of the altimeter, if RMaxIf the value is less than the threshold value, the change is small, the reference property is not provided, and the data b should be continuously acquiredN

And acquiring a comprehensive scale value.

7) And reversely recovering the SLAM coordinates into altimeter coordinates by using the acquired scale values, eliminating points with large difference values, repeatedly acquiring data and improving the accuracy of scale recovery.

And deleting the SLAM coordinate values larger than the average value, and repeatedly acquiring data as required to dynamically improve the precision of scale transformation.

The following is a more specific example:

as shown in fig. 1 and 2, a monocular vision SLAM scale restoration method for an unmanned aerial vehicle includes the following specific steps:

and starting the unmanned aerial vehicle, starting a camera node under the ROS operating system, and synchronizing the timestamp of the camera node to the time for acquiring the camera image. Meanwhile, the high-precision altimeter starts working and records the height a of the current altimeter0The frequency synchronization is the frequency of the camera for acquiring the images, and the time stamp synchronization is the time stamp of the camera for issuing the images, so that the time stamps are the same, and mismatching caused by subsequent time difference can be reduced.

And starting the SLAM node in the ROS, subscribing the camera node, and synchronizing the time stamp of the calculation result with the time stamp of the current picture acquired by the subscribed camera, so that the time stamp mismatching caused by the SLAM calculation time is reduced. And after the SLAM is successfully initialized, issuing a SLAM calculation result, wherein the SLAM does not output a result at a fixed frequency, but outputs the result when the characteristic point calculation meets the requirement, so that the frequency of the result output by the SLAM is different from that of the result output by the altimeter.

Therefore, approximate synchronization of the time stamps is carried out, two groups of data with the same time stamp or approximate time stamps are regarded as data at the same time, 30 groups of data are collected, whether the result of the high-precision altimeter is at the same height or approximate height is firstly calculated, so that the height change is not obvious, if the height approximation occurs, the data are continuously collected until the height change is larger than a certain threshold value, and after the data with the obvious change are collected, the data scale proportion of the height of the altimeter and the SLAM output coordinate is calculated.

And after the scale is obtained, converting the SLAM coordinate into the actual height in a reverse mode, eliminating points larger than the average error, recalculating the scale, and obtaining a more accurate scale. The invention uses the altimeter of the high-precision barometer, so the altimeter height is considered to be the precise height, and the singular value in the SLAM coordinate is removed depending on the altimeter height. And subsequently, the accuracy of the scale can be dynamically improved according to the requirement.

Under the SLAM algorithm, the accumulated error is larger and larger, the SLAM data can be dynamically modified according to the height change of the altimeter, after the SLAM coordinate is converted into the actual height, if the difference value between the SLAM coordinate and the altimeter height is larger than a certain threshold value, the error of the SLAM algorithm needs to be modified, and the precision of the conversion scale is improved.

When the error e is greater than the error threshold, the SLAM coordinates need to be corrected, and after correction, the subsequent SLAM error correction is as follows:

an=an*(1+e)-1

accurate scale restoration and SLAM scale repair can be performed in continuous computation.

7页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:基于地质约束的小范围磁场数据补缺处理方法

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!