My question is how do obtain occupancy grid map given sensor data of a robot? . I searched a lot and concluded that by using proximity sensors (rangefinders, sonar) and putting that data in occupancy grid mapping algorithm one can obtain grid maps. Am i right in that or not? If not kindly correct me because still i am stuck at that point after a lot of literature search.


Yes, you are correct that creating an occupancy grid map is as simple as taking sensor data and putting it into a map. However, you will need to know the world location of your robot so that all your sensor measurements can be put into the same reference frame. (I assume you want a standard world map.)

Obtaining the world location of your robot is a broader topic. But assuming you have it, it is just a matter of some transforms to put sensor measurements into the same frame.

$$ T_{world}^{robot}*T_{robot}^{sensor}*T_{sensor}^{object}=T_{world}^{object} $$

A few relevant frames shown in this diagram:

diagram of relevant frames

Typically, the occupancy grid map will designate free space (which is the space between the robot and the sensor reading, occupied space (which is where the sensor detected something), and unknown space (which is behind the occupied space).

Things get complicated because there is uncertainty in the robot position, and noise in the sensor measurement. So that is why the modern way to do all this is probabilistically.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.