当前位置:网站首页>SLAM 01. Modeling of human recognition Environment & path
SLAM 01. Modeling of human recognition Environment & path
2022-07-05 11:12:00 【Pingyuan Jun 2088】
I think some people wrote SLAM The article is too complicated , Put the scene 、 Function and technology are mixed . I just want to talk less about technology , Map reading explains the problem clearly from the perspective of human perception processing , So I wrote this article .
# scene
In reality , Suppose we enter a strange underground garage for the first time , There are no mobile phones and wifi The signal , Electronic map and GPS Navigation is not available , How do we find the entrance of the supermarket on the ground ?
People will first make judgments by observing the surrounding environment , For example, the environment of underground garage includes walls 、 Cement pillars and other obstacles ( For example, railings ) And mobile and cars and other pedestrians . We know from previous experience that those objects can pass , Those cannot pass .
Then we will follow the road signs and arrows on the ground , In this way, you can probably know the entrance to the supermarket , This is similar to the current navigation by pasting magnetic strips on the ground AGV Robot way . Human beings have another big trick : If you really can't, ask someone .
People observe their surroundings while walking , While constructing a three-dimensional indoor space map in the brain . At the same time, according to the number of steps we have taken 、 distance 、 Direction change , You will know how far you have traveled and the path you have taken , Reach one's destination .
For the first time, I came to a strange underground garage , Human beings are groping forward to find the entrance of the supermarket . But once we've gone through it , So when you return , Can restore the original map and route according to the memory in the brain , Find a place to park your car . If you enter the underground garage next time , Once again, you are familiar with the road . The reason why we can walk easily again , Because the topographic map of this place has been recorded in our brain .
There are two exceptions , For example, one is road blindness , Poor sense of road, terrain and orientation , There are too many mistakes in the process of building a 3D map , It is difficult to remember accurate maps and walking routes . Another situation is that I want to stay away for a long time , The new memory covers up the old memory , Cause memory blur .
The human brain can complete these complex functions after long-term natural evolution , Human beings don't realize how our brain works at work . We generally do not know this internal implementation mechanism , But computers should simulate human , We must know its principle .
# Drawing
First, build a map , restructure 3D There are many ways to map :
1、 For example, go around a building , The three-dimensional structure of the building can be reconstructed by taking continuous photos from multiple angles .
2、 People stand where they are and take pictures with their eyes around , Reconstruct the three-dimensional map of the surrounding environment .
3、 People take pictures with their eyes as they walk , Reconstruct the surrounding 3D map .
When we humans build environmental maps , Get the external image through the binocular camera of the eye , Then construct a three-dimensional map of the external environment . Generally, stop and scan around after getting off the bus , Get a rough three-dimensional environmental map of the terrain and landform of the surrounding environment , Then update the newly obtained information to the old map for reconstruction while walking . Human eyes are binocular , It can also measure the depth , It is easy to distinguish distant objects from near objects , So the structure is 3D Map . Of course, computer vision also has an algorithm to know the depth in the case of binocular .
There are image fusion and 3D The problem of map reconstruction . There is a time sequence between the captured images , We need to fuse the latest image with the previous image , Form a complete three-dimensional map .
In general, computer vision is carried out by matching the feature points of the image 3D restructure : Find the characteristic points of the two graphs ( It is usually edge or corner ) Match , Then find the rotation angle and translation distance according to the line of matching points , Connect the two pictures , In this way, a complete 3D Map .
# Position estimation
Knowing the external environment, we can find the reference system , You can calculate your position in this three-dimensional map in reverse . For example, taking pictures of the surrounding environment while walking , Then according to the shooting vision between different pictures 、 The depth and translation distance can in turn calculate your current posture ( Position and posture ), Connecting different positions of the camera is the motion track , And then get the walking path .
This is in SLAM Medium is the visual odometer (Visual Odometry, abbreviation VO). Generally, it is necessary to find out the characteristic points in each figure first , Then match the feature points of the two graphs , Then find the rotation matrix and translation distance between the two images according to the line of matching points , In this way, you can reverse your posture .
# Avoiding obstacles
When reconstructing the three-dimensional map around yourself , And I also know where I am , It is necessary to find a feasible path . Before finding the path , You need to know that those things are not traversable , Those can be crossed , Only in this way can we find a feasible path .
Human beings will be based on past experience , Know that those objects are impenetrable ( For example, when the transparent glass touches the wall ), Those things can be crossed .
In computer vision, it is necessary to combine deep learning technology for target recognition , Know that those goals cannot be crossed , Those can cross . Of course, if you use a depth camera , for example RGBD The camera , You can know the obstacle and its depth and distance according to the reflected infrared ray .
The laser radar technology used in robots is relatively easy to know those obstacles : Through the signal reflected by the laser, we can know the surrounding obstacles , And then know the feasible channel .
Know the obstacles , The path can be found according to the gap size of the feasible channel .
# Path planning
There are many possible paths to the destination , This requires path planning . If we have an indoor electronic map , Also have GPS Navigation function , Then it is relatively easy to plan the road . But most rooms don't GPS Signal and map navigation .
For the situation we mentioned earlier , Standing in the underground garage for the first time, I found the entrance to the ground supermarket , Generally, it provides navigation according to the indication marks on the ground . So inspired by this , The robot can be navigated by sticking magnetic strips on the ground or signs on the ceiling .
Most sweeping robots don't need to find their destination , As long as the space that can be entered is traversed in place , Just clean it once . The only possible destination of the sweeping robot is to return to the position of the charging chassis .
General situation , Let the robot walk through the enclosed space at random , For example, let the drone fly once , Build a three-dimensional map of the point cloud , Then set a destination , Then the robot can plan the path . There is a special path planning algorithm to solve this problem , Find the best path .
Once the path is found , You can mark and save some road signs , This will greatly improve the efficiency of the next navigation .
# Loop back detection
Another problem is loop detection , Be able to recognize that this place is the place you have been to before , This will reduce a lot of repetitive operations , Also in order to make the positioning more accurate .
sensor
Sensors are the ears and eyes of robots , We call sensors that can sense their own state and the external environment : Mileage counter 、IMU、RGBD The camera 、 Lidar, etc . Each sensor is suitable for different occasions , The accuracy error is different , We need to integrate different sensor signals , And noise reduction , In this way, it can be input into the system .
Optimization and correction
After the external data is input into the system , There are internal parameters 、 Deviation caused by external participation and noise , And deviations may accumulate , You need to optimize the correction . Correct the trajectory calculated by the software system according to the actual running trajectory , Only in this way can we get more accurate results . Optimization and correction are also SLAM An important topic in , It is usually implemented on the back end of the system .
========================================
The above basically involves SLAM Main technical points of , Here are some other topics .
# Dynamic environment response
What I mentioned above is that the environment has not changed , But the environment we live in is often changing : For example, a table may have moved , The fence has changed , The space has been redecorated , There are cars 、 Pedestrians 、 Small animals and other mobile robots . So how do robots cope with this dynamic change ? This is also the current SLAM And the challenges of autonomous driving . We still analyze it from the processing mode of human brain , In order to find a solution .
Encounter such dynamic changes , Human beings will first compare with the three-dimensional map of the original structure in the brain , It was found that new objects appeared , Then update the new object into the three-dimensional map . Then humans will recognize targets based on prior knowledge : Is it still , Is it moving , What is it? , And predict the next position according to its motion trajectory , Calculate the escape plan .
How should computer technology be realized ? The first is to scan the surrounding environment , Compare with the map constructed before , If it is found that there are differences, it will be updated to the map . At the same time, target recognition is carried out for the differentiated part , Distinguish whether it is an obstacle , Is it moving , Then make a plan for action .
Only deal with differences , The amount of calculation is very small , It can also easily segment objects , Then the object recognition . Object target recognition can be accomplished using deep learning techniques .
# Autonomous driving technology
SLAM It is used in many mobile robot applications : Indoor mobile robot , Autonomous vehicle in the wild 、 Drones in the air 、 Underwater environment detection robot and so on .SLAM It's just a part of self driving technology , It is also the most basic and important part .
SLAM It is mainly applied to problems encountered in entering unknown environments : No electronic map , No, GPS Supporting environment such as navigation : For example, Mars probe , For example, in reality, indoor and underground parking lots , The wireless signal here is poor ,GPS Navigation information cannot be reached , You can only observe the surrounding environment with your eyes . In addition, for electronic maps +GPS Navigation is not accurate enough , Unable to adapt to applications such as automatic parking , At this time SLAM That comes in handy !
For outdoor , In addition to relying on its own sensors to reconstruct the map SLAM technology , You can also rely on electronic maps and GPS, At the same time, target recognition of computer vision should be used : Identify traffic lights and signals ( Red, yellow and green )、 road 、 Obstacles such as houses and roads , We also need to plan roads and avoid obstacles . Especially for dynamic obstacle avoidance : automobile 、 Pedestrians 、 Little animals , And other mobile devices such as unmanned mobile robots , The first is to accurately identify , Then we can make the decision of avoiding obstacles , This is still very difficult at present , Because all kinds of objects , all sorts of strange things . And these technologies are SLAM Unable to resolve .
# summary
Let's just remember ,SLAM It is to reconstruct the three-dimensional map of the environment according to the environmental information sensed by its own sensors , Then draw your own position and running path , Plan the path and avoid obstacles according to landmarks .
as for SLAM There are various algorithms and complex mathematical formulas , To solve the tasks mentioned above . Only when we understand the overall framework can we understand the purpose of these algorithms , What problem to solve , Otherwise, I will be confused .
Also be clear ,SLAM It needs to be combined with computer vision technology represented by deep learning to achieve better results .
边栏推荐
- 2022 chemical automation control instrument examination questions and online simulation examination
- Detailed explanation of MATLAB cov function
- TSQL – identity column, guid, sequence
- 力扣(LeetCode)185. 部门工资前三高的所有员工(2022.07.04)
- FreeRTOS 中 RISC-V-Qemu-virt_GCC 的调度时机
- Array
- 技术分享 | 常见接口协议解析
- About the use of Vray 5.2 (self research notes)
- 修复动漫1K变8K
- Web Components
猜你喜欢
关于vray 5.2的使用(自研笔记)
go语言学习笔记-初识Go语言
Review the whole process of the 5th Polkadot Hackathon entrepreneurship competition, and uncover the secrets of the winning projects!
Characteristics and electrical parameters of DDR4
Based on shengteng AI Yisa technology, it launched a full target structured solution for video images, reaching the industry-leading level
[Oracle] use DataGrid to connect to Oracle Database
【DNS】“Can‘t resolve host“ as non-root user, but works fine as root
About the use of Vray 5.2 (self research notes)
Go语言-1-开发环境配置
[advertising system] parameter server distributed training
随机推荐
GBase 8c数据库如何查看登录用户的登录信息,如上一次登录认证通过的日期、时间和IP等信息?
关于vray 5.2的使用(自研笔记)
修复动漫1K变8K
Based on shengteng AI Yisa technology, it launched a full target structured solution for video images, reaching the industry-leading level
About the use of Vray 5.2 (self research notes)
Web3 Foundation grant program empowers developers to review four successful projects
Detailed explanation of MATLAB cov function
Detailed explanation of DDR4 hardware schematic design
【广告系统】增量训练 & 特征准入/特征淘汰
7.2每日学习4
Nuxt//
关于vray5.2怎么关闭日志窗口
九、磁盘管理
【Oracle】使用DataGrip连接Oracle数据库
LSTM applied to MNIST dataset classification (compared with CNN)
R3live series learning (IV) r2live source code reading (2)
About the use of Vray 5.2 (self research notes) (II)
DDR4的特性与电气参数
Taro advanced
NAS and San