CN104732518B - A kind of PTAM improved methods based on intelligent robot terrain surface specifications - Google Patents
A kind of PTAM improved methods based on intelligent robot terrain surface specifications Download PDFInfo
- Publication number
- CN104732518B CN104732518B CN201510025810.7A CN201510025810A CN104732518B CN 104732518 B CN104732518 B CN 104732518B CN 201510025810 A CN201510025810 A CN 201510025810A CN 104732518 B CN104732518 B CN 104732518B
- Authority
- CN
- China
- Prior art keywords
- mrow
- mtd
- msub
- mtr
- camera
- 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.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 title claims abstract description 74
- 238000012937 correction Methods 0.000 claims abstract description 16
- 238000001514 detection method Methods 0.000 claims abstract description 13
- 238000013507 mapping Methods 0.000 claims abstract description 13
- 230000008569 process Effects 0.000 claims description 31
- 239000011159 matrix material Substances 0.000 claims description 19
- 239000013598 vector Substances 0.000 claims description 13
- 238000013519 translation Methods 0.000 claims description 9
- 238000005457 optimization Methods 0.000 claims description 8
- 230000009466 transformation Effects 0.000 claims description 8
- 238000006073 displacement reaction Methods 0.000 claims description 4
- 230000000694 effects Effects 0.000 claims description 4
- 238000005259 measurement Methods 0.000 claims description 4
- 230000006872 improvement Effects 0.000 claims description 3
- NAWXUBYGYWOOIX-SFHVURJKSA-N (2s)-2-[[4-[2-(2,4-diaminoquinazolin-6-yl)ethyl]benzoyl]amino]-4-methylidenepentanedioic acid Chemical compound C1=CC2=NC(N)=NC(N)=C2C=C1CCC1=CC=C(C(=O)N[C@@H](CC(=C)C(O)=O)C(O)=O)C=C1 NAWXUBYGYWOOIX-SFHVURJKSA-N 0.000 claims description 2
- 238000000354 decomposition reaction Methods 0.000 claims description 2
- 238000011156 evaluation Methods 0.000 claims description 2
- 238000004519 manufacturing process Methods 0.000 claims description 2
- 230000009467 reduction Effects 0.000 claims description 2
- 230000000717 retained effect Effects 0.000 claims description 2
- 238000004364 calculation method Methods 0.000 claims 1
- 230000000007 visual effect Effects 0.000 claims 1
- 238000005516 engineering process Methods 0.000 description 3
- 230000007613 environmental effect Effects 0.000 description 2
- 230000003190 augmentative effect Effects 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Landscapes
- Studio Devices (AREA)
- Image Analysis (AREA)
- Image Processing (AREA)
Abstract
A kind of PTAM improved methods based on intelligent robot terrain surface specifications, first, complete parameter correction, this includes parameter definition and camera calibration;Then current environment texture information is obtained using camera, and builds four layers of Gaussian image pyramid, extract the characteristic information in present image with FAST Corner Detection Algorithms, the data correlation set up between Corner Feature obtains pose estimation model;In the initial drawing stage of map, obtain two key frames and camera is erected in mobile robot;In initialization procedure, mobile robot starts movement, while angle point information and setting up association in camera capture current scene;After the initialization for realizing sparse 3 D map, update key frame and set up characteristic point sub-pixel precision mapping relations with block matching method using polar curve search, accurately relocated with reference to pose estimation model realization camera.Match point is finally projected into space, current global context three-dimensional map is completed and creates.
Description
Technical Field
The invention belongs to the field of robot vision, and relates to improvement of a PTAM algorithm based on ground features.
Background
With the closer and closer relationship between the robot and the human being, the related technology of the intelligent robot is greatly emphasized. Synchronous positioning and Mapping (SLAM) of mobile robots is one of the most popular positioning technologies of current intelligent mobile robots. The method is actually a motion estimation problem, and utilizes internal and external data acquired by a sensor to calculate the position of the mobile robot at a certain moment and establish a dependent map model. The vision-based SLAM belongs to the research category of vision measurement, and a vision sensor has unique advantages: the volume is small, the weight is light, the price is low, the installation is convenient, and the extracted external information is very rich. These advantages further facilitate the current study and application of vision-based SLAM. Application number 201310678018.2 provides a feature detection operator using SURF as monocular vision SLAM, which is innovated and improved from three aspects of interest point detection, SURF descriptor generation, SURF point matching and the like, and provides a SURF feature matching method based on region growing to complete simultaneous positioning and map creation of a robot, so that in the SURF descriptor matching process, a descriptor is only compared with the descriptor most likely to be matched with the descriptor, the comparison times in the monocular vision SLAM problem are obviously reduced, and the matching speed is improved. However, the method still has the problems that a metric map cannot be established and three-dimensional characteristic information cannot be provided, and the robustness and the real-time performance of the algorithm are to be further improved.
The technology of creating environment model from motion is a method for simultaneously solving the motion track of a camera and a scene structure model. As a representative method of SFM, the concept of ptam (parallel Tracking and mapping) was first proposed by g.klein et al in the field of Augmented Reality (AR) in 2007 to solve the environmental recognition problem in real time. However, the unmodified PTAM algorithm also has the problem that a metric map cannot be established, and the movement of the camera is strictly limited.
Disclosure of Invention
Aiming at the existing problems, the invention provides a ground feature-based PTAM improved algorithm, on the basis of adding ground features, the PTAM synchronously estimates the current pose of a monocular camera and a three-dimensional space point, and updates and detects the feature point by using a FAST corner point method, and simultaneously continuously updates the poses of the camera and the three-dimensional feature point by using an optimal local and global beam adjustment method, thereby completing high-precision positioning and map creation.
The invention adopts the following technical scheme:
firstly, completing parameter correction, which comprises parameter definition and camera correction; tracking features in the key frame, initializing the pose, and estimating plane parameters on the basis; then, acquiring current environment texture information by using a camera, constructing a four-layer Gaussian image pyramid, extracting feature information in a current image by using a FAST corner detection algorithm, and establishing data association among corner features to obtain a pose estimation model; in the initial drawing stage of the map, two key frames are acquired, a camera is arranged on a mobile robot, and the initialization process is started after the camera is calibrated with the ground; in the initialization process, the mobile robot starts to move, meanwhile, a camera captures angular point information in a current scene and establishes correlation, a pose estimation model acquires initial estimation of the current pose, and then a pose estimation method based on ground features is used for acquiring accurate estimation of the current pose; after the initialization of the three-dimensional sparse map is realized, the key frame is updated, the sub-pixel precision mapping relation of the feature points is established by using an epipolar line search and block matching method, and the accurate relocation of the camera is realized by combining a pose estimation model. And finally, projecting the matching points to a space to complete the creation of the current global environment three-dimensional map. Meanwhile, global and local bundling adjustment is utilized to complete consistency optimization of the algorithm.
The method specifically comprises the following steps:
step 1, parameter correction
Step 1.1, parameter definition
(1) Robot pose
Establishing a world coordinate system at the beginning of the mobile robot, and during the movement of the robot, representing the pose as follows:
from the above formula, the pose of the mobile robot can be described by x ═ x, y, and θ, where x and y represent the translation of the mobile robot in the x-axis and y-axis directions, respectively, and θ is the rotation angle of the mobile robot around the z-axis.
In the world coordinate system, the pose of the camera can be expressed as:
wherein, Tc∈ SE (3), SE (3) being a special rigid transformation group, RcIs a 3 × 3 rotation matrix, tcIs a translation matrix of 3 × 1. the position matrix establishes a world coordinate system and a point p under a camera coordinate systemc,pwIs a corresponding relation of, i.e. pc=Tcpw. In the present study, as shown in fig. 2, the camera is fixed on the mobile robot, and there is a fixed rotational-translational relationship T between the camera and the robotcr. In the moving process of the robot, if the pose increment of the robot is T at a certain time intervalrsCorresponding to this, the pose increment of the camera is TcsAnd then:
Trs=TrcTcsTcr(3)
wherein,
(2) ground plane calibration parameters
And fixing the camera on the mobile robot, and flatly placing the calibration target on the ground. The camera establishes a pose relationship between the camera and the robot by acquiring image information with a calibration target. T iscp∈ SE (3) is a transformation matrix between camera and calibration target, Rcp,tcpRespectively represents TcpOf the rotational and translational components of, inverse toAssume that the robot's origin of coordinates is coincident with the camera and that the robot's x-axis is oriented the same as the camera's z-axis. In the target coordinate system, the x direction of the robotThe vector may be represented by TcpThe first two components of the row 3 vector of (a). At this time, the transformation relationship between the robot coordinate system and the target coordinate system can be expressed as:
wherein gamma is the rotation angle of the robot coordinate system and the target coordinate system, (x)r,yr) The coordinates of the robot origin in the target coordinate system can be determined by the translation vector of the camera and the target. Therefore, the transformation relationship between the robot and the camera can be expressed as Tcr=TcpTpr,According to the pose relation between the camera and the target plane, a ground plane equation under a camera coordinate system can be obtained:
(0,0,1,0)Tpcpc=0 (5)
wherein p iscFor a three-dimensional point in the camera coordinate system, the ground plane parameter can be represented as (n)TD), and n ═ 0,0,1) Rpc,d=tp(3)。
Step 1.2, Camera calibration
There is distortion due to the lens manufacturing, and the distortion is mainly divided into a mirror distortion due to the lens shape and a tangential distortion due to the camera assembly process. The correction of the monocular camera is realized by adopting an FOV model, and the correction model is shown in figure 3. The model is a method for wide-angle camera distortion removal proposed by Devernay and Faugeras, and the mathematical description is as follows:
in the formula, xuIs the pixel normalized coordinate, udIs the distorted pixel coordinate, ω is the distortion coefficient, rd,ruRespectively the distances from the normalized coordinates to the center of the coordinate system before and after correction.
By utilizing the camera model, mapping the pixel coordinates of the image to a normalized coordinate plane, and simultaneously combining a parameter matrix K in the camera to realize image distortion correction, namely:
u=Kxu(7)
step 2, initialization based on ground features
Step 2.1, feature tracking
FAST corner detection is a simple and FAST corner detection algorithm proposed by Edward Rosten and Tom Drummond. The algorithm judges whether a pixel point is an angular point or not by using the difference of gray values of adjacent pixel points in a certain neighborhood (usually a circular region) of the pixel point, and the following formula is as follows:
wherein u isfIs a candidate corner, s is any point in the neighborhood of the candidate corner, c (u)f) Represents ufAnd (x) is the image gray value at x, and if N exceeds the threshold condition, the candidate corner point at x is the corner point candidate point.
Before a camera tracking thread, a system acquires current environment texture information by using a camera, constructs a four-layer Gaussian image pyramid, adopts a corner detection algorithm of FAST, establishes data correlation among corner features in a block search mode, predicts the corresponding relation between a three-dimensional point and a feature point in a current frame by using a projection relation, and searches a fixed area near the position to acquire an accurate matching relation.
Step 2.2, pose initialization
In the moving process of the robot, ground information is acquired through a camera, and tracking of corner features is achieved through a FAST algorithm. According to the data association information, a homography relation of the plane points can be established, namely:
π(Hur)=up(9)
where pi (p) is the projection function, p ═ x, y, z, pi (p) ═ x/z, y/z,1), ur,upRespectively a reference frame and a current frame. According to the translation amount T of cameracAnd ground plane equation parameters (n)TD), homography of the plane points can be established:
H=KTc(I|nd)TK-1(10)
wherein n isdAnd K is an intra-camera parameter matrix. Formula (3) is substituted into formula (10), and the homography relationship between the pose of the robot and the ground features can be described as follows:
H=KTcrTrsTrc(I|nd)TK-1(11)
by utilizing the homography relation of the image feature points, a pose estimation model can be established:
wherein r (x) pi (h (x) uref)-upIs a homography error function, i.e., a projection error function, and H (x) is a homography matrix. According to the small displacement assumption, the first order Taylor expansion of the error function r is expressed as:
in this case, the extreme condition of the energy function is:
namely:
wherein,the pose estimation of the mobile robot can be obtained by iteratively solving the above formula. In order to further improve the positioning accuracy, a robustness weight is introduced to construct a pose estimation model based on M-animation, and at the moment, an energy function is expressed as:
wherein w (x) is a robust Tukey weighting function, and the extreme condition of the energy function is:
step 2.3, plane parameter estimation
The robot realizes robot positioning by utilizing the homography relation based on the ground features, but the positioning precision is difficult to ensure due to the influence of the non-ground features, so the invention adopts a rapid non-ground feature removing method. And constructing a normal estimation model according to a parallel vector cross multiplication mode. The experiment shows that the angle isAnd a certain error exists in point detection, so that ideal cross multiplication conditions cannot be met, and the normal estimation model adaptability is poor. And determining the non-ground characteristic information by using the projection error r as a judgment basis. But the method discriminates significantly less as the distance between the non-terrestrial features and the observation point decreases. Compared with the method, the method has the advantages that on the basis of initial estimation of the attitude, the homography matrix is used for directly deducing the normal estimation model, and whether the angular point is the ground characteristic information or not is judged by acquiring the difference between the normal estimation model and the parameters of the ground level equation. According to the plane homography relation, a plane parameter n can be establisheddThe estimation model of (2):
wherein r (n)d)=π(H(nd)uref)-upAs a function of the corresponding projection error. Similar to the pose estimation solving process, on the basis of the small displacement assumption, a vertical (18) solving model can be built according to a first-order Taylor formula of an error function.
At this time, the plane parameters may be obtained by iterative equation (18):
wherein,
step 3, pose estimation
The pose estimation module has the main function of completing the real-time update of the pose of the camera. The specific implementation process is as follows. After the initialization work is finished, a pose estimation model is established according to the projection error, and the mathematical description is as follows:
wherein e isjIs a projection error, andis Tukey's double-weight objective function, sigmaTAnd (3) an unbiased estimation value of the feature point matching standard deviation, and mu is a camera pose six-tuple description vector.
For the failure condition existing in the tracking, the characteristic observation ratio is proposed to evaluate the tracking quality of each frame of image. If the ratio is lower than the set threshold, the tracking effect can be poor, the tracking is continued, but the system cannot update the frame into the map; if the situation that the characteristic observation ratio is lower than the set threshold value occurs in the tracking of the multi-frame images, the situation of 'tracking loss' can be considered, and then the tracking process is initialized. Through the steps, the pose is accurately estimated, and the tracking process is normally carried out.
Step 4, map creation
Step 4.1, map initialization
The system utilizes the ground features and a standard stereo camera algorithm model to establish a current environment initialization map. In the process of initializing the map, the FAST corner matching relation in the image is utilized, the RANSAC algorithm is combined, an initial pose estimation method based on ground features is adopted, a triangulation method is used for calculating the three-dimensional coordinates of the current feature point, the initial point is determined to be the origin of a global world coordinate system, and the initialization of the three-dimensional sparse map is completed.
In the initial drawing stage of the map, the specific process of acquiring two key frames is as follows, the camera is arranged on the mobile robot, and the initialization process is started after the camera is calibrated with the ground. In the initialization process, the mobile robot starts to move, meanwhile, the camera captures corner point information in the current scene and establishes association, and initial estimation of the current pose is obtained through a solving formula (12). When the initial estimate exceeds a set threshold d0In practice, 2And 2, acquiring accurate estimation of the current pose by the pose estimation method based on the ground features.
Step 4.2, keyframe update and epipolar line search
When the map is initialized, only two key frames are contained, and only a small adjacent volume space can be described, and when the camera leaves the initial position, new key frames and map features need to be added. If the number of image frames between the camera and the current key frame exceeds the threshold value condition, the tracking effect of the camera is optimal, and the distance between the camera and the nearest map key point is as small as possible, the key frame adding process is automatically executed. Due to real-time constraints, the tracking system may only measure a subset of the visible features in the frame, and thus the mapping thread needs to re-plan and measure the remaining map features.
In the updating of the key frame, the system firstly performs Shi-Tomas evaluation on all corner points in the newly added key frame to acquire the current corner point information with the salient features, the salient points near the successfully observed feature points are discarded, and the retained salient points are used as candidate map nodes. Because the new map node needs known depth information and cannot be obtained only by a single-frame image, a key frame closest to the new map node needs to be selected as a second view, and a characteristic point sub-pixel precision mapping relation is established by using an epipolar line search and block matching method. In the second view, a zero mean SSD method is adopted, and accurate relocation of the camera is achieved by combining a pose estimation model. And finally, projecting the matching points to the space to generate the current global environment three-dimensional map.
Step 4.3, optimization
And (3) realizing the global consistency optimization of the current map by utilizing an optimal local and global LM (Levenberg-Marquardt) bundling adjustment algorithm to improve the robustness. The mathematical description of the bundle adjustment algorithm is as follows:
wherein σjiFor unbiased estimation of the match standard deviation of FAST feature points in the ith keyframe, μiPose six-tuple description vector, p, representing the ith keyframeiAre points in the global map.
The stable cost function in (21) is made extremely small by the constant bundling adjustment. Global clustering adjusts the pose of all keyframes and the position of map points while exploiting the inherent sparsity in the structure-motion problem so that the complexity of the overall matrix decomposition presents a cubic-scale reduction, represented by O ((N + M)3) Down to O (N)3) However, in most estimation cases, the computation is limited by the generated outer dot product, and the computation amount increases significantly as the map grows.
Aiming at the problems, local clustering adjustment is introduced, only the poses of the subset of the key frames are adjusted, and the target function at the moment becomes:
x is a set to be adjusted of the series key frames, Y is a fixed frame set, and Z is a map point subset. Set X consists of the latest key frame and the 4 closest key frames in the map, and all the viewpoints in the map of key frames constitute set Z, and finally Y contains all the key frames obtained from the measurement data in Z. Therefore, the local clustering adjustment optimizes the pose of the latest and latest key frame, updates all points in the map, and meanwhile, the complexity is remarkably reduced and does not exceed O (NM).
Compared with the original PTAM algorithm, the invention adds the ground characteristic to improve the algorithm, and realizes the following advantages:
(1) the initialization process is improved, and the strict limitation of the motion of the camera by the PTAM algorithm is effectively removed.
(2) The relatively accurate metric map can be effectively established, and reliable guarantee is provided for further environmental measurement.
Drawings
FIG. 1 is a flow chart of a method according to the present invention;
FIG. 2 camera calibration model;
FIG. 3 is a schematic view of a planar parameter calibration.
Detailed Description
The invention is further described in detail below with reference to the accompanying drawings.
The flow chart of the PTAM improved algorithm based on the ground features is shown in the attached drawing (1), and specifically comprises the following steps:
step 1, parameter correction
Step 1.1, parameter definition
And establishing a robot pose representation according to the relation between the robot coordinate system and the world coordinate system, and determining ground plane calibration parameters according to the pose relation between the camera and the target plane.
Step 1.2, Camera calibration
And correcting the monocular camera by adopting an FOV model, mapping the image pixel coordinates to a normalized coordinate plane, and simultaneously combining a parameter matrix K in the camera to realize image distortion correction.
Step 2, initialization based on ground features
Step 2.1, feature tracking
And acquiring environment texture information, extracting features and establishing corner feature association.
Step 2.2, pose initialization
And establishing a homography relation and a pose initialization estimation model to realize pose initialization.
Step 2.3, plane parameter estimation
Step 3, pose estimation
And on the basis of finishing initialization, realizing the initialization pose estimation of the camera according to a pose estimation model based on the ground features. Further, the PTAM establishes a sub-pixel precision matching relation of corner feature in an image pyramid according to the camera initialization pose by adopting an epipolar line search mode, and brings a pose estimation model again to realize accurate relocation of the camera.
Step 4, map creation
Step 4.1, map initialization
System for establishing current environment initialization map by using standard stereo camera algorithm model
Step 4.2, keyframe update and epipolar line search
And adding a new key frame, establishing a sub-pixel precision mapping relation of the feature points by using an epipolar search and block matching method, and realizing accurate relocation of the camera by combining a pose estimation model. And finally, projecting the matching points to a space to complete the creation of the current global environment three-dimensional map.
Step 4.3, optimization
And the global and local clustering adjustment is utilized to realize the consistency optimization of the map.
Claims (1)
1. A PTAM improvement method based on intelligent robot ground features is characterized in that:
firstly, completing parameter correction, which comprises parameter definition and camera correction; tracking features in the key frame, initializing the pose, and estimating plane parameters on the basis; then, acquiring current environment texture information by using a camera, constructing a four-layer Gaussian image pyramid, extracting feature information in a current image by using a FAST corner detection algorithm, and establishing data association among corner features to obtain a pose estimation model; in the initial drawing stage of the map, two key frames are acquired, a camera is arranged on a mobile robot, and the initialization process is started after the camera is calibrated with the ground; in the initialization process, the mobile robot starts to move, meanwhile, a camera captures angular point information in a current scene and establishes correlation, a pose estimation model acquires initial estimation of the current pose, and then a pose estimation method based on ground features is used for acquiring accurate estimation of the current pose; after the initialization of the three-dimensional sparse map is realized, updating the key frame, establishing a sub-pixel precision mapping relation of the feature points by using an epipolar line search and block matching method, and realizing the accurate relocation of the camera by combining a pose estimation model; finally, the matching points are projected to the space, and the creation of the current global environment three-dimensional map is completed; meanwhile, the consistency optimization of the algorithm is completed by utilizing global and local bundling adjustment;
the method specifically comprises the following steps:
step 1, parameter correction
Step 1.1, parameter definition
(1) Robot pose
Establishing a world coordinate system at the beginning of the mobile robot, and expressing the pose of the mobile robot in the moving process of the robot as follows:
<mrow> <mtable> <mtr> <mtd> <mrow> <msub> <mi>T</mi> <mi>r</mi> </msub> <mo>=</mo> <mfenced open = "(" close = ")"> <mtable> <mtr> <mtd> <msub> <mi>R</mi> <mi>r</mi> </msub> </mtd> <mtd> <msub> <mi>t</mi> <mi>r</mi> </msub> </mtd> </mtr> <mtr> <mtd> <mn>0</mn> </mtd> <mtd> <mn>1</mn> </mtd> </mtr> </mtable> </mfenced> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <msub> <mi>R</mi> <mi>r</mi> </msub> <mo>=</mo> <mfenced open = "(" close = ")"> <mtable> <mtr> <mtd> <mrow> <mi>c</mi> <mi>o</mi> <mi>s</mi> <mi>&theta;</mi> </mrow> </mtd> <mtd> <mrow> <mi>s</mi> <mi>i</mi> <mi>n</mi> <mi>&theta;</mi> </mrow> </mtd> <mtd> <mn>0</mn> </mtd> </mtr> <mtr> <mtd> <mrow> <mo>-</mo> <mi>s</mi> <mi>i</mi> <mi>n</mi> <mi>&theta;</mi> </mrow> </mtd> <mtd> <mrow> <mi>cos</mi> <mi>&theta;</mi> </mrow> </mtd> <mtd> <mn>0</mn> </mtd> </mtr> <mtr> <mtd> <mn>0</mn> </mtd> <mtd> <mn>0</mn> </mtd> <mtd> <mn>1</mn> </mtd> </mtr> </mtable> </mfenced> <mo>,</mo> <msub> <mi>t</mi> <mi>r</mi> </msub> <mo>=</mo> <mfenced open = "(" close = ")"> <mtable> <mtr> <mtd> <mi>x</mi> </mtd> </mtr> <mtr> <mtd> <mi>y</mi> </mtd> </mtr> <mtr> <mtd> <mn>0</mn> </mtd> </mtr> </mtable> </mfenced> </mrow> </mtd> </mtr> </mtable> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>1</mn> <mo>)</mo> </mrow> </mrow>
as can be seen from the above formula, the pose of the mobile robot is described by x ═ x, y, and θ, where x and y represent the translation of the mobile robot in the x-axis and y-axis directions, respectively, and θ is the rotation angle of the mobile robot around the z-axis;
in the world coordinate system, the pose of the camera is expressed as:
<mrow> <msub> <mi>T</mi> <mi>c</mi> </msub> <mo>=</mo> <mfenced open = "(" close = ")"> <mtable> <mtr> <mtd> <msub> <mi>R</mi> <mi>c</mi> </msub> </mtd> <mtd> <msub> <mi>t</mi> <mi>c</mi> </msub> </mtd> </mtr> <mtr> <mtd> <mn>0</mn> </mtd> <mtd> <mn>1</mn> </mtd> </mtr> </mtable> </mfenced> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>2</mn> <mo>)</mo> </mrow> </mrow>
wherein, Tc∈ SE (3), SE (3) being a special rigid transformation group, RcIs a 3 × 3 rotation matrix, tcA translation matrix of 3 × 1 is used, and the position matrix establishes a world coordinate system and a point p under a camera coordinate systemc,pwIs a corresponding relation of, i.e. pc=Tcpw(ii) a In the method, a camera is fixed on a mobile robot, and a fixed rotation translation relation T exists between the camera and the robotcr(ii) a In the moving process of the robot, if the pose increment of the robot is T at a certain time intervalrsCorresponding to this, the pose increment of the camera is TcsAnd then:
Trs=TrcTcsTcr(3)
wherein,
(2) ground plane calibration parameters
Fixing a camera on a mobile robot, and horizontally placing a calibration target on the ground; the camera establishes a pose relationship between the camera and the robot by acquiring image information with a calibration target; t iscp∈ SE (3) is a transformation matrix between camera and calibration target, Rcp,tcpRespectively represents TcpOf the rotational and translational components of, inverse toAssuming that the coordinate origin of the robot is consistent with the camera, and the x-axis of the robot is oriented in the same direction as the z-axis of the camera; under the target coordinate system, the x-direction vector of the robot is represented by TcpThe first two component representations of the row 3 vector of (a); at this time, the transformation relationship between the robot coordinate system and the target coordinate system is expressed as:
<mrow> <mtable> <mtr> <mtd> <mrow> <msub> <mi>p</mi> <mi>r</mi> </msub> <mo>=</mo> <msub> <mi>T</mi> <mrow> <mi>r</mi> <mi>p</mi> </mrow> </msub> <msub> <mi>p</mi> <mi>p</mi> </msub> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <msub> <mi>T</mi> <mrow> <mi>r</mi> <mi>p</mi> </mrow> </msub> <mo>=</mo> <mfenced open = "(" close = ")"> <mtable> <mtr> <mtd> <mrow> <mi>c</mi> <mi>o</mi> <mi>s</mi> <mi>&gamma;</mi> </mrow> </mtd> <mtd> <mrow> <mi>sin</mi> <mi>&gamma;</mi> </mrow> </mtd> <mtd> <mn>0</mn> </mtd> <mtd> <msub> <mi>x</mi> <mi>r</mi> </msub> </mtd> </mtr> <mtr> <mtd> <mrow> <mo>-</mo> <mi>sin</mi> <mi>&gamma;</mi> </mrow> </mtd> <mtd> <mrow> <mi>cos</mi> <mi>&gamma;</mi> </mrow> </mtd> <mtd> <mn>0</mn> </mtd> <mtd> <msub> <mi>y</mi> <mi>r</mi> </msub> </mtd> </mtr> <mtr> <mtd> <mn>0</mn> </mtd> <mtd> <mn>0</mn> </mtd> <mtd> <mn>1</mn> </mtd> <mtd> <mn>0</mn> </mtd> </mtr> <mtr> <mtd> <mn>0</mn> </mtd> <mtd> <mn>0</mn> </mtd> <mtd> <mn>0</mn> </mtd> <mtd> <mn>1</mn> </mtd> </mtr> </mtable> </mfenced> </mrow> </mtd> </mtr> </mtable> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>4</mn> <mo>)</mo> </mrow> </mrow>
wherein gamma is the rotation angle of the robot coordinate system and the target coordinate system, (x)r,yr) The coordinates of the robot origin under a target coordinate system are determined by translation vectors of the camera and the target; the transformation relationship between the robot and the camera is therefore denoted Tcr=TcpTpr,Acquiring a ground plane equation under a camera coordinate system according to the pose relation between the camera and the target plane:
(0,0,1,0)Tpcpc=0 (5)
wherein p iscThe ground plane parameter is expressed as (n) for a three-dimensional point under the camera coordinate systemTD), and n ═ 0,0,1) Rpc,d=tp(3);
Step 1.2, Camera calibration
There is distortion due to the lens manufacturing, and the distortion is mainly divided into a mirror distortion caused by the lens shape and a tangential distortion caused by the camera assembly process; the method adopts an FOV model to realize the correction of the monocular camera; the model is a method for wide-angle camera distortion removal proposed by Devernay and Faugeras, and the mathematical description is as follows:
<mrow> <mtable> <mtr> <mtd> <mrow> <msub> <mi>u</mi> <mi>d</mi> </msub> <mo>=</mo> <mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <msub> <mi>u</mi> <mn>0</mn> </msub> </mtd> </mtr> <mtr> <mtd> <msub> <mi>v</mi> <mn>0</mn> </msub> </mtd> </mtr> </mtable> </mfenced> <mo>+</mo> <mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <msub> <mi>f</mi> <mi>u</mi> </msub> </mtd> <mtd> <mn>0</mn> </mtd> </mtr> <mtr> <mtd> <mn>0</mn> </mtd> <mtd> <msub> <mi>f</mi> <mi>v</mi> </msub> </mtd> </mtr> </mtable> </mfenced> <mfrac> <msub> <mi>r</mi> <mi>d</mi> </msub> <msub> <mi>r</mi> <mi>u</mi> </msub> </mfrac> <msub> <mi>x</mi> <mi>u</mi> </msub> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <msub> <mi>r</mi> <mi>d</mi> </msub> <mo>=</mo> <mfrac> <mn>1</mn> <mi>&omega;</mi> </mfrac> <mi>arctan</mi> <mrow> <mo>(</mo> <mn>2</mn> <msub> <mi>r</mi> <mi>u</mi> </msub> <mi>tan</mi> <mfrac> <mi>&omega;</mi> <mn>2</mn> </mfrac> <mo>)</mo> </mrow> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <msub> <mi>r</mi> <mi>u</mi> </msub> <mo>=</mo> <mfrac> <mrow> <mi>tan</mi> <mrow> <mo>(</mo> <msub> <mi>r</mi> <mi>d</mi> </msub> <mi>&omega;</mi> <mo>)</mo> </mrow> </mrow> <mrow> <mn>2</mn> <mi>tan</mi> <mfrac> <mi>&omega;</mi> <mn>2</mn> </mfrac> </mrow> </mfrac> </mrow> </mtd> </mtr> </mtable> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>6</mn> <mo>)</mo> </mrow> </mrow>
in the formula, xuIs the pixel normalized coordinate, udIs the distorted pixel coordinate, ω is the distortion coefficient, rd,ruRespectively the distances from the normalized coordinates to the center of the coordinate system before and after correction;
mapping the pixel coordinates of the image to a normalized coordinate plane by using a camera model, and simultaneously combining a parameter matrix K in the camera to realize image distortion correction, namely:
u=Kxu(7)
step 2, initialization based on ground features
Step 2.1, feature tracking
FAST corner detection is a simple and FAST corner detection algorithm proposed by Edward Rosten and Tom Drummond; the algorithm judges whether the pixel point is an angular point or not by utilizing the difference of the gray values of adjacent pixel points in a certain neighborhood of the pixel point, and the following formula is as follows:
<mrow> <mi>N</mi> <mo>=</mo> <munder> <mi>&Sigma;</mi> <mrow> <mi>s</mi> <mo>&Element;</mo> <mi>c</mi> <mrow> <mo>(</mo> <msub> <mi>u</mi> <mi>f</mi> </msub> <mo>)</mo> </mrow> </mrow> </munder> <mo>|</mo> <mi>I</mi> <mrow> <mo>(</mo> <mi>s</mi> <mo>)</mo> </mrow> <mo>-</mo> <mi>I</mi> <mrow> <mo>(</mo> <msub> <mi>u</mi> <mi>f</mi> </msub> <mo>)</mo> </mrow> <mo>|</mo> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>8</mn> <mo>)</mo> </mrow> </mrow>
wherein u isfIs a candidate corner, s is any point in the neighborhood of the candidate corner, c (u)f) Represents ufThe neighborhood of (a), I(s), is the image gray value at s, if N exceeds the threshold condition, the candidate corner at s is the corner;
before a camera tracking thread, a system acquires current environment texture information by using a camera, constructs a four-layer Gaussian image pyramid, adopts a corner detection algorithm of FAST, establishes data correlation among corner features in a block search mode, predicts the corresponding relation between a three-dimensional point and a feature point in a current frame by using a projection relation, and searches a fixed area near the position to acquire an accurate matching relation;
step 2.2, pose initialization
In the moving process of the robot, acquiring ground information through a camera, and tracking corner features by using a FAST algorithm; according to the data association information, establishing a homography relation of the plane points, namely:
π(Hur)=up(9)
where pi (p) is the projection function, p ═ x, y, z, pi (p) ═ x/z, y/z,1), ur,upRespectively corresponding feature points under a reference frame and a current frame; according to the translation amount T of cameracAnd ground plane equation parameters (n)TD), establishing a homography relation of the plane points:
H=KTc(I|nd)TK-1(10)
wherein n isdN/d, and K is an in-camera parameter matrix; formula (3) is substituted into formula (10), and the homography relationship between the pose of the robot and the ground features is described as follows:
H=KTcrTrsTrc(I|nd)TK-1(11)
establishing a pose estimation model by using the homography relation of the image feature points:
<mrow> <mtable> <mtr> <mtd> <mrow> <mi>x</mi> <mo>=</mo> <mi>arg</mi> <munder> <mi>min</mi> <mi>x</mi> </munder> <mi>f</mi> <mrow> <mo>(</mo> <mi>x</mi> <mo>)</mo> </mrow> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <mi>f</mi> <mrow> <mo>(</mo> <mi>x</mi> <mo>)</mo> </mrow> <mo>=</mo> <munder> <mi>&Sigma;</mi> <mi>p</mi> </munder> <mo>|</mo> <mo>|</mo> <mi>r</mi> <mrow> <mo>(</mo> <mi>x</mi> <mo>)</mo> </mrow> <mo>|</mo> <msup> <mo>|</mo> <mn>2</mn> </msup> </mrow> </mtd> </mtr> </mtable> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>12</mn> <mo>)</mo> </mrow> </mrow>
wherein r (x) pi (h (x) uref)-upIs a homography error function, i.e. a projection error function, H (x) is a homography matrix; according to the small displacement assumption, the first order Taylor expansion of the error function r is expressed as:
<mrow> <mi>r</mi> <mrow> <mo>(</mo> <mi>&xi;</mi> <mo>)</mo> </mrow> <mo>=</mo> <mi>r</mi> <mrow> <mo>(</mo> <mn>0</mn> <mo>)</mo> </mrow> <mo>+</mo> <mfrac> <mrow> <mo>&part;</mo> <mi>r</mi> </mrow> <mrow> <mo>&part;</mo> <mi>&xi;</mi> </mrow> </mfrac> <msub> <mo>|</mo> <mrow> <mi>&xi;</mi> <mo>=</mo> <mn>0</mn> </mrow> </msub> <mi>&xi;</mi> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>13</mn> <mo>)</mo> </mrow> </mrow>
in this case, the extreme condition of the energy function is:
<mrow> <mfrac> <mrow> <mo>&part;</mo> <mi>f</mi> </mrow> <mrow> <mo>&part;</mo> <mi>&xi;</mi> </mrow> </mfrac> <mo>=</mo> <msup> <mi>&Sigma;J</mi> <mi>T</mi> </msup> <mi>r</mi> <mo>=</mo> <mn>0</mn> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>14</mn> <mo>)</mo> </mrow> </mrow>
namely:
<mrow> <mtable> <mtr> <mtd> <mrow> <munder> <mi>&Sigma;</mi> <mi>p</mi> </munder> <msup> <mi>J</mi> <mi>T</mi> </msup> <mrow> <mo>(</mo> <mi>r</mi> <mo>(</mo> <mn>0</mn> <mo>)</mo> <mo>+</mo> <mi>J</mi> <mi>&xi;</mi> <mo>)</mo> </mrow> <mo>=</mo> <mn>0</mn> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <mi>&xi;</mi> <mo>=</mo> <mo>-</mo> <msup> <mrow> <mo>(</mo> <munder> <mi>&Sigma;</mi> <mi>p</mi> </munder> <msup> <mi>J</mi> <mi>T</mi> </msup> <mi>J</mi> <mo>)</mo> </mrow> <mrow> <mo>-</mo> <mn>1</mn> </mrow> </msup> <munder> <mi>&Sigma;</mi> <mi>p</mi> </munder> <msup> <mi>J</mi> <mi>T</mi> </msup> <mi>r</mi> <mrow> <mo>(</mo> <mn>0</mn> <mo>)</mo> </mrow> </mrow> </mtd> </mtr> </mtable> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>15</mn> <mo>)</mo> </mrow> </mrow>
wherein,obtaining pose estimation of the mobile robot by iterative solution of the above formula; in order to further improve the positioning accuracy, a robustness weight is introduced to construct a pose estimation model based on M-animation, and at the moment, an energy function is expressed as:
<mrow> <mi>f</mi> <mrow> <mo>(</mo> <mi>x</mi> <mo>)</mo> </mrow> <mo>=</mo> <munder> <mo>&Sigma;</mo> <mi>p</mi> </munder> <mi>w</mi> <mrow> <mo>(</mo> <mi>r</mi> <mo>)</mo> </mrow> <mo>|</mo> <mo>|</mo> <mi>r</mi> <mo>|</mo> <msup> <mo>|</mo> <mn>2</mn> </msup> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>16</mn> <mo>)</mo> </mrow> </mrow>
w (r) is a robust Tukey weighting function, and the extreme condition of the energy function is:
<mrow> <mi>&xi;</mi> <mo>=</mo> <mo>-</mo> <msup> <mrow> <mo>(</mo> <munder> <mi>&Sigma;</mi> <mi>p</mi> </munder> <msup> <mi>J</mi> <mi>T</mi> </msup> <mi>w</mi> <mo>(</mo> <mi>r</mi> <mo>)</mo> <mi>J</mi> <mo>)</mo> </mrow> <mrow> <mo>-</mo> <mn>1</mn> </mrow> </msup> <munder> <mi>&Sigma;</mi> <mi>p</mi> </munder> <msup> <mi>J</mi> <mi>T</mi> </msup> <mi>w</mi> <mrow> <mo>(</mo> <mi>r</mi> <mo>)</mo> </mrow> <mi>r</mi> <mrow> <mo>(</mo> <mn>0</mn> <mo>)</mo> </mrow> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>17</mn> <mo>)</mo> </mrow> </mrow>
step 2.3, plane parameter estimation
The robot realizes robot positioning by utilizing a homography relation based on ground features, but the positioning precision is difficult to ensure due to the influence of non-ground features, so a rapid non-ground feature removing method is adopted; constructing a normal estimation model according to a parallel vector cross multiplication mode; because the angular point detection has errors, ideal cross multiplication conditions cannot be met, and the normal estimation model has poor fitness; determining non-ground characteristic information by using the projection error r as a judgment basis; but as the distance between the non-ground features and the observation points is reduced, the discrimination of the method is obviously reduced; compared with the method, on the basis of initial estimation of the attitude, a homography matrix is used for directly deducing a normal estimation model, and whether the angular point is ground characteristic information is judged by obtaining the difference between the normal estimation model and parameters of a ground plane equation; establishing a plane parameter n according to a plane homography relationdThe estimation model of (2):
<mrow> <mi>f</mi> <mrow> <mo>(</mo> <msub> <mi>n</mi> <mi>d</mi> </msub> <mo>)</mo> </mrow> <mo>=</mo> <munder> <mo>&Sigma;</mo> <mi>p</mi> </munder> <mo>|</mo> <mo>|</mo> <mi>r</mi> <mrow> <mo>(</mo> <msub> <mi>n</mi> <mi>d</mi> </msub> <mo>)</mo> </mrow> <mo>|</mo> <msup> <mo>|</mo> <mn>2</mn> </msup> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>18</mn> <mo>)</mo> </mrow> </mrow>
wherein r (n)d)=π(H(nd)uref)-upAs a function of the corresponding projection error; similar to the pose estimation solving process, on the basis of the small displacement assumption, a vertical (18) solving model is established according to a first-order Taylor formula of an error function;
at this time, the plane parameters are obtained by iterative equation (18):
<mrow> <mtable> <mtr> <mtd> <mrow> <msub> <mi>n</mi> <mi>d</mi> </msub> <mo>=</mo> <msub> <mi>n</mi> <mi>d</mi> </msub> <mo>+</mo> <mover> <mi>n</mi> <mo>^</mo> </mover> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <mover> <mi>n</mi> <mo>^</mo> </mover> <mo>=</mo> <mo>-</mo> <msup> <mrow> <mo>(</mo> <munder> <mo>&Sigma;</mo> <mi>p</mi> </munder> <msubsup> <mi>J</mi> <mi>n</mi> <mi>T</mi> </msubsup> <msub> <mi>J</mi> <mi>n</mi> </msub> <mo>)</mo> </mrow> <mrow> <mo>-</mo> <mn>1</mn> </mrow> </msup> <munder> <mo>&Sigma;</mo> <mi>p</mi> </munder> <msubsup> <mi>J</mi> <mi>n</mi> <mi>T</mi> </msubsup> <mi>r</mi> <mrow> <mo>(</mo> <msub> <mi>n</mi> <mi>d</mi> </msub> <mo>)</mo> </mrow> </mrow> </mtd> </mtr> </mtable> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>19</mn> <mo>)</mo> </mrow> </mrow>
wherein,
step 3, pose estimation
The pose estimation module has the main function of completing the real-time update of the pose of the camera; the specific implementation process is as follows; after the initialization work is finished, a pose estimation model is established according to the projection error, and the mathematical description is as follows:
<mrow> <mi>&xi;</mi> <mo>=</mo> <munder> <mi>argmin</mi> <mi>&xi;</mi> </munder> <mi>&Sigma;</mi> <mi>O</mi> <mi>b</mi> <mi>j</mi> <mrow> <mo>(</mo> <mfrac> <mrow> <mo>|</mo> <msub> <mi>e</mi> <mi>j</mi> </msub> <mo>|</mo> </mrow> <msub> <mi>&sigma;</mi> <mi>j</mi> </msub> </mfrac> <mo>,</mo> <msub> <mi>&sigma;</mi> <mi>T</mi> </msub> <mo>)</mo> </mrow> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>20</mn> <mo>)</mo> </mrow> </mrow>
wherein e isjIs a projection error, andis Tukey's double-weight objective function, sigmaTThe unbiased estimation value of the feature point matching standard deviation is obtained, and mu is a camera pose six-tuple description vector;
for the failure condition existing in the tracking, a characteristic observation ratio is provided to evaluate the tracking quality of each frame of image; if the ratio is lower than the set threshold value, if the tracking effect is poor, the tracking is continued, but the system cannot update the frame into the map; if the situation that the characteristic observation ratio is lower than the set threshold value occurs in the tracking of the multi-frame images, namely the situation of 'tracking loss' is considered, then the tracking process is initialized; accurate estimation of the pose is achieved through the steps, and the tracking process can be normally carried out;
step 4, map creation
Step 4.1, map initialization
The system utilizes the ground characteristics and a standard stereo camera algorithm model to establish a current environment initialization map; in the process of initializing the map, utilizing a FAST corner matching relation in an image, combining a RANSAC algorithm, adopting an initial pose estimation method based on ground features, calculating three-dimensional coordinates of a current feature point by using a triangulation method, and determining an initial point as an origin of a global world coordinate system to complete initialization of the three-dimensional sparse map;
in the initial drawing stage of the map, the specific process of acquiring two key frames is as follows, a camera is arranged on a mobile robot, and the initialization process is started after the camera is calibrated with the ground; in the initialization process, the mobile robot starts to move, meanwhile, a camera captures corner point information in a current scene and establishes association, and initial estimation of a current pose is obtained through a solving formula (12); when the initial estimate exceeds a set threshold d0Then, a pose estimation method based on the ground features in the step 2.2 is used for obtaining accurate estimation of the current pose;
step 4.2, keyframe update and epipolar line search
When the map is initialized, only two key frames are contained, and only a small adjacent volume space can be described, and when the camera leaves the initial position, new key frames and map features need to be added; if the number of image frames between the camera and the current key frame exceeds a threshold value condition, the tracking effect of the camera is optimal, and the distance between the camera and the nearest map key point is as small as possible, the key frame adding process is automatically executed; due to real-time constraints, the tracking system may measure only a subset of the visible features in the frame, and therefore the mapping thread needs to re-plan and measure the remaining map features;
in the updating of the key frame, the system firstly carries out Shi-Tomas evaluation on all corner points in the newly added key frame to acquire the current corner point information with the salient features, the salient points near the feature points which are observed successfully are discarded, and the retained salient points are taken as candidate map nodes; because the new map node needs known depth information and can not be obtained only by a single-frame image, a key frame closest to the new map node needs to be selected as a second view, and a characteristic point sub-pixel precision mapping relation is established by using an epipolar line search and block matching method; in the second view, a zero mean SSD method is adopted, and accurate relocation of the camera is realized by combining a pose estimation model; finally, the matching points are projected to the space to generate a current global environment three-dimensional map;
step 4.3, optimization
The optimal local and global LM cluster adjustment algorithm is utilized to realize the global consistency optimization of the current map so as to improve the robustness; the mathematical description of the bundle adjustment algorithm is as follows:
<mrow> <mo>{</mo> <mo>{</mo> <msub> <mi>&mu;</mi> <mn>2</mn> </msub> <mo>...</mo> <msub> <mi>&mu;</mi> <mi>N</mi> </msub> <mo>}</mo> <mo>,</mo> <mo>{</mo> <msub> <msup> <mi>p</mi> <mo>&prime;</mo> </msup> <mn>1</mn> </msub> <mo>...</mo> <msub> <msup> <mi>p</mi> <mo>&prime;</mo> </msup> <mi>M</mi> </msub> <mo>}</mo> <mo>}</mo> <mo>=</mo> <munder> <mrow> <mi>arg</mi> <mi>min</mi> </mrow> <mrow> <mo>{</mo> <mo>{</mo> <mi>&mu;</mi> <mo>}</mo> <mo>,</mo> <mo>{</mo> <mi>p</mi> <mo>}</mo> <mo>}</mo> </mrow> </munder> <munder> <mo>&Sigma;</mo> <mrow> <mi>i</mi> <mo>&Element;</mo> <mi>X</mi> <mo>&Element;</mo> <mi>Y</mi> </mrow> </munder> <munder> <mo>&Sigma;</mo> <mrow> <mi>j</mi> <mo>&Element;</mo> <msub> <mi>S</mi> <mi>i</mi> </msub> </mrow> </munder> <mi>O</mi> <mi>b</mi> <mi>j</mi> <mrow> <mo>(</mo> <mfrac> <mrow> <mo>|</mo> <msub> <mi>e</mi> <mrow> <mi>j</mi> <mi>i</mi> </mrow> </msub> <mo>|</mo> </mrow> <msub> <mi>&sigma;</mi> <mrow> <mi>j</mi> <mi>i</mi> </mrow> </msub> </mfrac> <mo>,</mo> <msub> <mi>&sigma;</mi> <mi>T</mi> </msub> <mo>)</mo> </mrow> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>21</mn> <mo>)</mo> </mrow> </mrow>
wherein σjiFor unbiased estimation of the match standard deviation of FAST feature points in the ith keyframe, μiPose six-tuple description vector, p, representing the ith keyframeiPoints in the global map;
the stable cost function in the formula (21) is extremely small through continuous bundling adjustment; global clustering adjusts the pose of all keyframes and the position of map points while exploiting the inherent sparsity in the structure-motion problem so that the complexity of the overall matrix decomposition presents a cubic-scale reduction, represented by O ((N + M)3) Down to O (N)3) However, in most estimation cases, the method is limited by the generated outer dot vector product, and the calculation amount is increased remarkably along with the growth of the map;
aiming at the problems, local clustering adjustment is introduced, only the poses of the subset of the key frames are adjusted, and the target function at the moment becomes:
<mrow> <mo>{</mo> <mo>{</mo> <msub> <mi>&mu;</mi> <mi>&chi;</mi> </msub> <mo>&Element;</mo> <mi>X</mi> <mo>}</mo> <mo>,</mo> <mo>{</mo> <msub> <msup> <mi>p</mi> <mo>&prime;</mo> </msup> <mi>z</mi> </msub> <mo>&Element;</mo> <mi>Z</mi> <mo>}</mo> <mo>}</mo> <mo>=</mo> <munder> <mi>argmin</mi> <mrow> <mo>{</mo> <mo>{</mo> <mi>&mu;</mi> <mo>}</mo> <mo>,</mo> <mo>{</mo> <mi>p</mi> <mo>}</mo> <mo>}</mo> </mrow> </munder> <munder> <mo>&Sigma;</mo> <mrow> <mi>i</mi> <mo>&Element;</mo> <mi>X</mi> <mo>&Element;</mo> <mi>Y</mi> </mrow> </munder> <munder> <mo>&Sigma;</mo> <mrow> <mi>j</mi> <mo>&Element;</mo> <mi>Z</mi> <mo>&cap;</mo> <msub> <mi>S</mi> <mi>i</mi> </msub> </mrow> </munder> <mi>O</mi> <mi>b</mi> <mi>j</mi> <mrow> <mo>(</mo> <mi>i</mi> <mo>,</mo> <mi>j</mi> <mo>)</mo> </mrow> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>22</mn> <mo>)</mo> </mrow> </mrow>
x is a set to be adjusted of a series of key frames, Y is a fixed frame set, and Z is a map point subset; the set X consists of a latest key frame and 4 nearest key frames in the map, all the visual points in the map of the key frames form a set Z, and finally Y comprises all the key frames obtained by the measurement data in Z; therefore, the local clustering adjustment optimizes the pose of the latest and latest key frame, updates all points in the map, and meanwhile, the complexity is remarkably reduced and does not exceed O (NM).
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510025810.7A CN104732518B (en) | 2015-01-19 | 2015-01-19 | A kind of PTAM improved methods based on intelligent robot terrain surface specifications |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510025810.7A CN104732518B (en) | 2015-01-19 | 2015-01-19 | A kind of PTAM improved methods based on intelligent robot terrain surface specifications |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104732518A CN104732518A (en) | 2015-06-24 |
CN104732518B true CN104732518B (en) | 2017-09-01 |
Family
ID=53456386
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510025810.7A Expired - Fee Related CN104732518B (en) | 2015-01-19 | 2015-01-19 | A kind of PTAM improved methods based on intelligent robot terrain surface specifications |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104732518B (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109102525A (en) * | 2018-07-19 | 2018-12-28 | 浙江工业大学 | A kind of mobile robot follow-up control method based on the estimation of adaptive pose |
CN109993798A (en) * | 2019-04-09 | 2019-07-09 | 上海肇观电子科技有限公司 | Method, equipment and the storage medium of multi-cam detection motion profile |
Families Citing this family (60)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6575325B2 (en) * | 2015-11-27 | 2019-09-18 | 富士通株式会社 | Camera position / orientation estimation apparatus, camera position / orientation estimation method, and camera position / orientation estimation program |
CN105678754B (en) * | 2015-12-31 | 2018-08-07 | 西北工业大学 | A kind of unmanned plane real-time map method for reconstructing |
EP3488384A1 (en) * | 2016-07-21 | 2019-05-29 | Mobileye Vision Technologies Ltd. | Crowdsourcing and distributing a sparse map, and lane measurements for autonomous vehicle navigation |
CN106570904B (en) * | 2016-10-25 | 2019-04-09 | 大连理工大学 | A kind of multiple target relative pose recognition methods based on Xtion camera |
CN106548486B (en) * | 2016-11-01 | 2024-02-27 | 浙江大学 | Unmanned vehicle position tracking method based on sparse visual feature map |
CN106600641B (en) * | 2016-12-07 | 2020-02-11 | 常州工学院 | Embedded visual servo control method based on multi-feature fusion |
CN106885574B (en) * | 2017-02-15 | 2020-02-07 | 北京大学深圳研究生院 | Monocular vision robot synchronous positioning and map construction method based on re-tracking strategy |
CN107358624B (en) * | 2017-06-06 | 2020-01-07 | 武汉几古几古科技有限公司 | Monocular dense instant positioning and map reconstruction method |
CN107272454A (en) * | 2017-06-19 | 2017-10-20 | 中国人民解放军国防科学技术大学 | A kind of real time human-machine interaction method based on virtual reality |
CN107291093A (en) * | 2017-07-04 | 2017-10-24 | 西北工业大学 | Unmanned plane Autonomous landing regional selection method under view-based access control model SLAM complex environment |
CN107687850B (en) * | 2017-07-26 | 2021-04-23 | 哈尔滨工业大学深圳研究生院 | Unmanned aerial vehicle pose estimation method based on vision and inertia measurement unit |
CN107677279B (en) * | 2017-09-26 | 2020-04-24 | 上海思岚科技有限公司 | Method and system for positioning and establishing image |
CN107767450B (en) * | 2017-10-31 | 2021-05-28 | 南京维睛视空信息科技有限公司 | Spark-slam-based real-time graph establishing method |
CN107808395B (en) * | 2017-10-31 | 2020-12-04 | 南京维睛视空信息科技有限公司 | Indoor positioning method based on SLAM |
CN107869989B (en) * | 2017-11-06 | 2020-02-07 | 东北大学 | Positioning method and system based on visual inertial navigation information fusion |
CN107885871A (en) * | 2017-11-24 | 2018-04-06 | 南京华捷艾米软件科技有限公司 | Synchronous superposition method, system, interactive system based on cloud computing |
CN107862720B (en) * | 2017-11-24 | 2020-05-22 | 北京华捷艾米科技有限公司 | Pose optimization method and pose optimization system based on multi-map fusion |
CN108780577A (en) * | 2017-11-30 | 2018-11-09 | 深圳市大疆创新科技有限公司 | Image processing method and equipment |
CN108090958B (en) * | 2017-12-06 | 2021-08-27 | 上海阅面网络科技有限公司 | Robot synchronous positioning and map building method and system |
CN108109169B (en) * | 2017-12-12 | 2021-12-14 | 深圳市神州云海智能科技有限公司 | Pose estimation method and device based on rectangular identifier and robot |
CN108171787A (en) * | 2017-12-18 | 2018-06-15 | 桂林电子科技大学 | A kind of three-dimensional rebuilding method based on the detection of ORB features |
CN108253962A (en) * | 2017-12-18 | 2018-07-06 | 中北智杰科技(北京)有限公司 | New energy pilotless automobile localization method under a kind of low light environment |
CN108133496B (en) * | 2017-12-22 | 2021-11-26 | 北京工业大学 | Dense map creation method based on g2o and random fern algorithm |
CN108615244B (en) * | 2018-03-27 | 2019-11-15 | 中国地质大学(武汉) | A kind of image depth estimation method and system based on CNN and depth filter |
CN110389349B (en) * | 2018-04-17 | 2021-08-17 | 北京京东尚科信息技术有限公司 | Positioning method and device |
CN110264509B (en) * | 2018-04-27 | 2022-10-14 | 腾讯科技(深圳)有限公司 | Method, apparatus, and storage medium for determining pose of image capturing device |
CN108765326A (en) * | 2018-05-18 | 2018-11-06 | 南京大学 | A kind of synchronous superposition method and device |
CN110660098B (en) * | 2018-06-28 | 2022-08-12 | 北京京东叁佰陆拾度电子商务有限公司 | Positioning method and device based on monocular vision |
CN109141393B (en) * | 2018-07-02 | 2020-12-08 | 北京百度网讯科技有限公司 | Relocation method, relocation apparatus and storage medium |
CN109100731B (en) * | 2018-07-17 | 2022-11-11 | 重庆大学 | Mobile robot positioning method based on laser radar scanning matching algorithm |
US10953545B2 (en) * | 2018-08-13 | 2021-03-23 | Beijing Jingdong Shangke Information Technology Co., Ltd. | System and method for autonomous navigation using visual sparse map |
CN110858403B (en) * | 2018-08-22 | 2022-09-27 | 杭州萤石软件有限公司 | Method for determining scale factor in monocular vision reconstruction and mobile robot |
CN109215059B (en) * | 2018-10-16 | 2021-06-29 | 西安建筑科技大学 | Local data association method for tracking moving vehicle in aerial video |
US10839556B2 (en) * | 2018-10-23 | 2020-11-17 | Microsoft Technology Licensing, Llc | Camera pose estimation using obfuscated features |
CN109544629B (en) | 2018-11-29 | 2021-03-23 | 南京人工智能高等研究院有限公司 | Camera position and posture determining method and device and electronic equipment |
CN109341707B (en) * | 2018-12-03 | 2022-04-08 | 南开大学 | Method for constructing three-dimensional map of mobile robot in unknown environment |
CN109741306B (en) * | 2018-12-26 | 2021-07-06 | 北京石油化工学院 | Image processing method applied to dangerous chemical storehouse stacking |
CN109815847B (en) * | 2018-12-30 | 2020-12-01 | 中国电子科技集团公司信息科学研究院 | Visual SLAM method based on semantic constraint |
CN111568305B (en) * | 2019-02-18 | 2023-02-17 | 北京奇虎科技有限公司 | Method and device for processing relocation of sweeping robot and electronic equipment |
CN110044358B (en) * | 2019-04-29 | 2020-10-02 | 清华大学 | Mobile robot positioning method based on field line characteristics |
CN110223354A (en) * | 2019-04-30 | 2019-09-10 | 惠州市德赛西威汽车电子股份有限公司 | A kind of Camera Self-Calibration method based on SFM three-dimensional reconstruction |
CN111982133B (en) * | 2019-05-23 | 2023-01-31 | 北京地平线机器人技术研发有限公司 | Method and device for positioning vehicle based on high-precision map and electronic equipment |
US11580724B2 (en) | 2019-07-23 | 2023-02-14 | Toyota Research Institute, Inc. | Virtual teach and repeat mobile manipulation system |
CN110648363B (en) * | 2019-09-16 | 2024-10-18 | 腾讯科技(深圳)有限公司 | Camera gesture determining method and device, storage medium and electronic equipment |
CN110992487B (en) * | 2019-12-10 | 2020-09-29 | 南京航空航天大学 | Rapid three-dimensional map reconstruction device and reconstruction method for hand-held airplane fuel tank |
CN113129366B (en) * | 2020-01-10 | 2024-04-30 | 北京字节跳动网络技术有限公司 | Monocular SLAM initialization method and device and electronic equipment |
CN111121774B (en) * | 2020-01-14 | 2021-04-06 | 上海曼恒数字技术股份有限公司 | Infrared positioning camera capable of detecting self posture in real time |
CN111102984A (en) * | 2020-01-21 | 2020-05-05 | 中南民族大学 | Visualized mountain road navigation method, device, equipment and storage medium |
CN111230886A (en) * | 2020-03-05 | 2020-06-05 | 浙江理工大学 | Industrial robot kinematics parameter calibration system and method with tolerance capability |
CN111157009A (en) * | 2020-04-02 | 2020-05-15 | 深圳司南数据服务有限公司 | Indoor positioning navigation creating method and system based on mobile terminal and AR (augmented reality) intelligence |
CN111780763B (en) * | 2020-06-30 | 2022-05-06 | 杭州海康机器人技术有限公司 | Visual positioning method and device based on visual map |
CN112116651B (en) * | 2020-08-12 | 2023-04-07 | 天津(滨海)人工智能军民融合创新中心 | Ground target positioning method and system based on monocular vision of unmanned aerial vehicle |
CN112348893B (en) * | 2020-10-30 | 2021-11-19 | 珠海一微半导体股份有限公司 | Local point cloud map construction method and visual robot |
WO2022134057A1 (en) * | 2020-12-25 | 2022-06-30 | Intel Corporation | Re-localization of robot |
CN112783995B (en) * | 2020-12-31 | 2022-06-03 | 杭州海康机器人技术有限公司 | V-SLAM map checking method, device and equipment |
CN113156948B (en) * | 2021-04-19 | 2022-06-28 | 浙江工业大学 | Ground and obstacle distinguishing and identifying method of two-wheeled self-balancing robot |
CN115248043A (en) * | 2021-04-28 | 2022-10-28 | 广东博智林机器人有限公司 | Map optimization method and device, robot and readable storage medium |
CN113211449B (en) * | 2021-06-10 | 2022-06-17 | 哈工大机器人集团股份有限公司 | Robot calibration method and system based on path analysis |
CN114581517A (en) * | 2022-02-10 | 2022-06-03 | 北京工业大学 | Improved VINS method for complex illumination environment |
CN115451920B (en) * | 2022-10-27 | 2023-03-14 | 南京航空航天大学 | Relative pose measurement method for unmanned autonomous landing |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102435188A (en) * | 2011-09-15 | 2012-05-02 | 南京航空航天大学 | Monocular vision/inertia fully autonomous navigation method for indoor environment |
CN102519481A (en) * | 2011-12-29 | 2012-06-27 | 中国科学院自动化研究所 | Implementation method of binocular vision speedometer |
CN104050671A (en) * | 2014-06-25 | 2014-09-17 | 西安石油大学 | Oil well pipe sleeve damage image edge detection method based on grey correlation analysis and Zernike moment |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2002013141A1 (en) * | 2000-08-09 | 2002-02-14 | Dynamic Digital Depth Research Pty Ltd | Image conversion and encoding techniques |
JP5034852B2 (en) * | 2007-10-09 | 2012-09-26 | 富士通株式会社 | Image measuring method and image measuring apparatus |
-
2015
- 2015-01-19 CN CN201510025810.7A patent/CN104732518B/en not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102435188A (en) * | 2011-09-15 | 2012-05-02 | 南京航空航天大学 | Monocular vision/inertia fully autonomous navigation method for indoor environment |
CN102519481A (en) * | 2011-12-29 | 2012-06-27 | 中国科学院自动化研究所 | Implementation method of binocular vision speedometer |
CN104050671A (en) * | 2014-06-25 | 2014-09-17 | 西安石油大学 | Oil well pipe sleeve damage image edge detection method based on grey correlation analysis and Zernike moment |
Non-Patent Citations (5)
Title |
---|
Mobile Robot 3D Map Building Based on Laser Ranging and Stereovision;Jia Songmin等;《Proceedings of the 2011 IEEE International Conference on Mechatronics and Automation》;20110810;第1774-1779页 * |
Mobile Robot Localization and Map Building Based on Laser Ranging and PTAM;Sheng Jinbo等;《Proceedings of the 2011 IEEE International Conference on Mechatronics and Automation》;20110810;第1015-1020页 * |
RTM框架下基于分层拓扑结构的多机器人系统地图拼接;贾松敏等;《机器人》;20130531;第35卷(第3期);第292-298页 * |
基于RGB-D相机的移动机器人三维SLAM;贾松敏等;《华中科技大学学报(自然科学版)》;20140131;第42卷(第1期);第103-109页 * |
基于变分模型的单目视觉三维重建方法;贾松敏等;《光学学报》;20140430;第34卷(第4期);第0415002-1-第0415002-7页 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109102525A (en) * | 2018-07-19 | 2018-12-28 | 浙江工业大学 | A kind of mobile robot follow-up control method based on the estimation of adaptive pose |
CN109102525B (en) * | 2018-07-19 | 2021-06-18 | 浙江工业大学 | Mobile robot following control method based on self-adaptive posture estimation |
CN109993798A (en) * | 2019-04-09 | 2019-07-09 | 上海肇观电子科技有限公司 | Method, equipment and the storage medium of multi-cam detection motion profile |
CN109993798B (en) * | 2019-04-09 | 2021-05-28 | 上海肇观电子科技有限公司 | Method and equipment for detecting motion trail by multiple cameras and storage medium |
Also Published As
Publication number | Publication date |
---|---|
CN104732518A (en) | 2015-06-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104732518B (en) | A kind of PTAM improved methods based on intelligent robot terrain surface specifications | |
CN109166149B (en) | Positioning and three-dimensional line frame structure reconstruction method and system integrating binocular camera and IMU | |
CN109029433B (en) | Method for calibrating external parameters and time sequence based on vision and inertial navigation fusion SLAM on mobile platform | |
CN112634451B (en) | Outdoor large-scene three-dimensional mapping method integrating multiple sensors | |
CN106127739B (en) | Monocular vision combined RGB-D SLAM method | |
CN110807809B (en) | Light-weight monocular vision positioning method based on point-line characteristics and depth filter | |
CN109579825B (en) | Robot positioning system and method based on binocular vision and convolutional neural network | |
CN112304307A (en) | Positioning method and device based on multi-sensor fusion and storage medium | |
CN111862673B (en) | Parking lot vehicle self-positioning and map construction method based on top view | |
CN108229416B (en) | Robot SLAM method based on semantic segmentation technology | |
CN110223348A (en) | Robot scene adaptive bit orientation estimation method based on RGB-D camera | |
CN108010081B (en) | RGB-D visual odometer method based on Census transformation and local graph optimization | |
CN113658337B (en) | Multi-mode odometer method based on rut lines | |
CN112734841B (en) | Method for realizing positioning by using wheel type odometer-IMU and monocular camera | |
CN107680133A (en) | A kind of mobile robot visual SLAM methods based on improvement closed loop detection algorithm | |
CN110726406A (en) | Improved nonlinear optimization monocular inertial navigation SLAM method | |
CN111354043A (en) | Three-dimensional attitude estimation method and device based on multi-sensor fusion | |
CN104281148A (en) | Mobile robot autonomous navigation method based on binocular stereoscopic vision | |
CN112484746B (en) | Monocular vision auxiliary laser radar odometer method based on ground plane | |
CN111998862B (en) | BNN-based dense binocular SLAM method | |
CN112669354A (en) | Multi-camera motion state estimation method based on vehicle incomplete constraint | |
CN112802096A (en) | Device and method for realizing real-time positioning and mapping | |
CN116449384A (en) | Radar inertial tight coupling positioning mapping method based on solid-state laser radar | |
CN112767546B (en) | Binocular image-based visual map generation method for mobile robot | |
CN116128966A (en) | Semantic positioning method based on environmental object |
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 | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20170901 Termination date: 20200119 |
|
CF01 | Termination of patent right due to non-payment of annual fee |