703
The International Archives of the Photogrammetry, Remote Sensing and Spatial Information Sciences. Vol. XXXVII. Part B5. Beijing 2008
The result of the inverse distance weighting is shown under
www.photogrammetry.ethz.ch/~hanuscht/tm_beijing.html.
It shows that the interpolation of the difference surface using
this method is not sufficient, especially not smooth enough.
Therefore, a more complex function was introduced. Figure 5
was generated using an artificial dataset. The original image A
was modified in a way that the brightness increased in vertical
direction (Figure 5 a, side A’), starting from the middle of the
image. The generated image was corrected using the described
algorithm (Figure 5 b).
Figure 5. Correction of the artificially modified image
Original image A and artificially modified image A’
Original image A and corrected image A’ corrected
The used interpolation method is a biharmonic spline
interpolation (Sandwell, 1987). For each pixel of the slave
image, a correction value is calculated and added to the original
grey value. Figure 6 shows the interpolated grey-value-
difference-surface for the artificially modified dataset.
Figure 6. Grey difference surface interpolated using a
biharmonic spline function and used points (red)
The grid space of the generated surface is equal to the pixel size.
Due to this, for each pixel of the image a correction value is
provided to change the brightness according to the master
image. It has to be considered, that the regions outside the used
point cloud are extrapolated. This does not influence the result,
because the main part of the object is covered with common
points. If this is not the case, the usage of the correction values
should be restricted to defined areas.
Figure 7 shows the result of the whole algorithm using real data,
without artificial brightness modifications. The visible seams (a)
are significantly removed (b).
Figure 7. Comparison between:
a) Original data, image A (left) and image B (right)
b) Original image A (left) corrected image B (right)
Figure 8 shows the brightness difference surface. After the
correction of the image brightness, the visualization can be
conducted.
Figure 8. Grey difference surface for the real data example
4. VISUALIZATION
To visualize the extracted data and to achieve a satisfying result
the open source software system Blender was used (Blender,
2008). It is an open source 3D content creation suite, available
for all major operating systems under the GNU General Public
License. Among other features it can be used for modelling, UV
unwrapping, texture mapping, animation and rendering,
comparable with a commercial system, e.g. Maya (Autodesk).
To fulfil our requirements, only a small part of the functionality
was used. The supported programming language Python was
used to integrate this software into the existing workflow.
Therefore, a script was generated to import the triangle and
coordinate lists from the triangle to image assignment. The
material for each triangle was defined by the calculated texture
coordinates (u-,v- coordinates) (chapter 3.3). Using this
information the object can be visualized inside the software in
real-time and virtual reality models can be exported in different
formats (VRML, COLLADA, etc.). A further step is the
generation of movies and high resolution images. Therefore,
different steps are necessary. For example different illumination
sources and camera positions, as well as the camera path for the
camera movement has to be defined in an iterative procedure.
These steps require, depending on the experiences of the
operator, some time to become familiar with the functionality of
the software. Finally movies and images in any resolution and
from any position can be generated and exported. The
bottleneck of this procedure is the handling of large datasets in