With the rapid development of artificial intelligence technology,SLAM technology has become more mature and its application scenarios have become more diversified.Increasingly complex application scenarios have put forward higher and higher requirements for the positioning performance of the SLAM system.A single sensor is usually unable to complete the task,and multi-sensor fusion has become a current research hotspot.The mainstream sensors used for SLAM tasks include lidar and cameras,both of which have their own characteristics and are suitable for different application scenarios.Laser SLAM has been widely used in the early stage of SLAM development due to the accuracy and robustness of lidar ranging,forming a mature theory.However,with the development of computers,visual SLAM can rely on the image information captured by the camera.Compared with the sparse laser point cloud,it can obtain more semantic information,and it is unanimously considered to have a longer-term development prospect.Taking monocular vision SLAM as an example,only one camera can complete the positioning task,but accurate depth information cannot be obtained.Lidar is accurate in ranging,but it can only obtain sparse point clouds,missing important semantic information.Therefore,combining the two can learn from each other and get a SLAM algorithm based on multi-sensor fusion.The key to multi-sensor fusion is data fusion.This paper proposes a depth mapping module to link the laser point cloud with the image feature points,which has achieved good results.The main work of this paper is as follows:1.A SLAM framework is designed and implemented based on monocular vision.The front-end uses feature point method and PnP to build a visual odometer,and the back-end relies on BA for optimization.Among them,both PnP and back-end BA are realized by non-linear optimization,and iteratively solved by Gauss-Newton method.Experiments on the KITTI visual ranging data set verify the effectiveness of the algorithm.The average translation error is 1.24%,and the average rotation error is 0.0032 deg/m.2.Aiming at the data fusion method of lidar and camera,a depth mapping module is proposed to establish the relationship between the laser point cloud and the image feature points,and obtain the accurate depth information of the image feature points.The general process is to first obtain the point cloud collection near the 3D points corresponding to the image feature points through coordinate system transformation,then use the clustering method to determine the point cloud subset of the plane where the feature points are located,and finally construct the plane and calculate the depth value of the feature points through interpolation.3.The depth mapping module is applied to the monocular vision SLAM framework to realize the SLAM algorithm based on the combination of vision and laser.The depth mapping module is applied on the front end and the back end respectively.When calculating PnP at the front end,the depth mapping module is used to replace the triangulation to obtain the depth of the feature points,and the epipolar constraint is added.In the back-end BA,a depth constraint item is added to the cost function,and joint optimization is performed with the reprojection error.Finally,experiments were performed on the KITTI data set.Compared with the baseline,the average translation error was reduced by 0.31%,and the average rotation error was reduced by 0.001 deg/m,which proved the effectiveness of the combined algorithm. |