Computing/Colour Matching
 

Colour Matching

- Applying Colour Data from Panoramic Images to Laser Range Data

This page describes work I've been doing in 2004 on the problem of applying colour information to laser scanned data. Laser scanning returns depth information about surfaces in a scene, and also the intensity of reflected light from that point. Finding out the colour values at the scanned points requires mapping colour photographic images into the scan space.
 
Other systems for this task suffer from being cumbersome and time-consuming. This reflects the approach often taken, where individual images taken from various locations are remapped onto the scan space one at a time based on a number of corresponding locations in the data sets. Any errors introduced by poorly chosen correspondences or by inaccurate computation of the mapping transformation can lead to poorly matched results.
 
Using a laser scanner with a setup so that the beam centre of projection can be replaced with a digital camera means a range image and set of photographs can be captured from the same central point. A 360° spherical panoramic image of a room is shown below:
 
room intensity image
 
At the time the scan was captured, a set of digital images were also taken in a cylindrical panoramic sequence at roughly 30° intervals. A number of freely available panorama stitching tools are available on the Web. I've used PanoTools by Helmut Dersch. The output from the stitching process is shown below. Note how the two images are offset in azimuth.
 

panoramic image

Using the modular framework built into my Hybrid Rendering implementation, the user chooses two matching points in each image. These should be chosen so that one is as far above the perceived horizon and one as far below as is possible. This is so that the most accurate 'stretch' factor in the vertical direction can be computed. Now the colour image is remapped into the scan image space. The first chosen point gives the offset point in azimuth between the images. The angular distance in elevation between the two points gives the amount the colour pixels should be stretched to match to the scan image. After remapping, the colour values of points surrounding any hole are used to infer the intermediate values. An matched image is shown below. The colour values have been shown as slightly transparent to show how accurate the match is with the underlying intensity image. The only errors seem to be those that can be seen in some slightly mismatched areas in the panorama as a result of the stitching process.
 

colour image overlaid on intensity image

The images below show some laser scan point clouds coloured using the matching procedure.
 

Back to top