CMRT09: Object Extraction for 3D City Models, Road Databases and Traffic Monitoring - Concepts, Algorithms, and Evaluation
100
The camera is located within a given distance from
the wall (distance measured at closest point).
The camera center point is located in the half-space in
front of the wall.
The camera is facing the wall plane.
In order to reduce computing time and improve texture quality,
an additional criterion has been introduced: cameras that are
almost aligned with the wall plane are discarded. A maximum
threshold on the angle defined by the wall plane and the camera
directions is introduced (see Figure 7). This filtering step is an
extension of the backface culling criterion.
Figure 7. Angle criterion for the pre-selection of candidate
cameras: the cameras with their direction vector in
the red angular area are discarded
For each candidate camera a grid on the camera plane is
defined. Each grid point defines a 3D ray passing through the
camera center point. The 3D rays not intersecting the current
wall are ignored. The remaining 3D rays are tested with respect
to all the walls compatible with the camera (pre-selection
method described in section 3): any ray intersecting a wall face
closer than the current one is discarded. The candidate camera
is finally selected as viewing the current wall, if at least one of
the rays has not been discarded. The process is illustrated in
Figure 8.
Figure 8. Principle of 3D ray tracing: the rays launched from
the tested camera are discarded if they do not
intersect the current wall (see rays on the extreme
sides) or if they first intersect a closer wall (see rays
on the left)
5.2 Test results
The method was tested with 10x10 and 20x20 rays per camera,
with and without threshold on the angle during pre-selection.
The threshold on angle was set to 3# radians when applied. The
8
distance threshold was set to 150m (identical to 2D ray tracing).
Numerical results are shown in Table 3. An example of selected
walls is illustrated in Figure lOd.
Method
Total # of
visible walls
Avg # of
cam. per wall
Computing
time
I Ox 10 rays
1349(11.8%)
4.36
3min51s
20x20 rays
1604(14%)
4.49
1 lmin45s
10x10 rays
amax = 3*n/8
1032 (9%)
4.55
2min49s
20x20 rays
amax = 3*11/8
1213 (10.6%)
4.56
8min25s
Table 3. Results of 3D ray tracing
5.3 Discussion
As expected from a 3D-based approach, the walls located at the
background can be textured if they are high enough. Fewer
texture images are selected with the 3D ray-tracing approach
than with the z-buffer approach, but they generally have a
better quality. It is not surprising as ray tracing is not a dense
approach and most small wall textures are naturally discarded.
In the example of Figure lOe, only the relevant facade of the
high building located at the back of the block was selected as
visible. Figure 11 shows another example of distant facade that
can be textured only with a 3D approach.
The additional pre-selection criterion on angles removes
sidelong walls, which are usually seen by few cameras. It
improves the relevance of the selection by discarding walls
with a poor texture resolution. Using 20x20 rays instead of
10x10 rays significantly increases the total number of visible
walls, but further tests are needed in order to find out whether
these additional walls can be textured with a good enough
quality. Importantly, as each wall is processed in turn, the
texturing stage can be performed without requiring the
complete processing of the path.
The computing time is intermediate between 2D ray tracing and
3D z-buffering. In our implementation many calculations are
redundant. A spatial division of the space could be performed in
order to make use of object-space coherence and accelerate ray
tracing (Glassner, 1984; Jevans and Wyvill, 1989).
6. CONCLUSION AND PERSPECTIVES
The 2D approach is satisfactory in most cases, and it is fast,
simple and easy to implement. However any building located
behind another cannot be textured.
The 3D approaches provide more exhaustive wall textures,
including texture images for high building walls located at the
back of lower buildings. The use of the 3D dimension makes
the visibility estimation closer to ground truth, and the selection
process more efficient. Although both ray-tracing and z-buffer
techniques can be implemented very efficiently, the approach
based on 3D ray tracing is a good compromise to achieve a
relevant selection. It also seems important to prefer a wall-by-
wall analysis, as further texturing stages can then be performed
without requiring the complete processing of the path. The z-
buffering technique could be considered if the resulting depth
image is a valuable source of information in further steps.
The main constraint for the 3D approaches is obviously the
availability of a 3D building database. Given a 2D map, the 3D
information can be derived from a correlation-based or LIDAR
Digital Elevation Model, or even from the analysis of
architectural plans or building permits. In our opinion, a coarse
3D city model is sufficient to significantly improve the
relevance of the texture selection.
We are now working on refining the selection with texture
quality criteria rather than just visibility. The texture quality