|
PhD research - Vision Based Global Localisation
|
Table of contents
- Introduction
- How it works
- Images
- Videos
[Top]
My research is on vision based global localisation. What? Basically, I developed a system that can be used to estimate position and orientation (localisation) for a mobile robot, or anything that moves really. This functions similar to the GPS found in modern cars. My system uses an off the shelf webcam with a special panoramic mirror that provides a full 360 degrees field of view. A rich 3D map (similar to a first person shooter game) is used to provide the system with a working knowledge of the environment. The system works by capturing images from the webcam and determines the most likely place it was taken from relative to the 3D map. Overall, the system achieves an accuracy of within 1 metre for position and 10 degrees for orientation and can operate where a GPS is ineffective eg. indoors. A moderate size 50x50m environment was used for testing.
|
  |
|   |
[Top]
An overview of the process of building the localisation system is presented in Figure 1. The first step, and the most time consuming, was to build a 3D model of the environment. This was done by using a Riegl Z420i laser range scanner, shown in Figure 2. A high resolution 3D scan was taken at various locations in the environment and stitched together to build a complete model. Using the 3D model, 2D images were then generated (from the point of view of the webcam) every 0.5 metre and 10 degrees, and a unique scene signature was extracted from each image. The signatures are stored in a database to be used later on. To localise the robot, the same signature was extracted from the webcam and fed through a particle filter. The particle filter is a probabilistic algorithm that can be used to estimate the pose (position and orientation) of a robot given sensory and odometry information. The particle filter in this case, uses the signature from the webcam and odometry information from the robot to assigns a probability score of match to all the other signatures in the database, and outputs the estimated pose of the robot (x, y, θ).
My system is a rather brute force approach to global localisation but works effectively. The novel part is using the 3D model to sample the environment as oppose to manually driving a robot around and taking images. This not only can be a more time efficient process, but can also be more practical depending on the application, and does not suffer from accumulated odometry errors from manually driving a robot. The Riegl Z420i scanner used at the time was rather slow, capturing about 16,000 data points max, so probably took longer than manually taking images. But recently there has been a large leap in the performance of laser scanners and scanners capable of over 1 million points a second are already on the market (Veloydone), making the proposed method a practical choice.
|
|
|   |
Figure 1: Process of building the localisation system
|
Figure 2: Riegl Z420i laser range scanner. Effective up to 800m, with 360x80 degrees field of view and user defined angular resolution. Mounted on top is a Nikon SLR camera to record colour information, the laser does not provide any.
|
|
|
|
|