6.2. Technical Description

6.2.1. Map Projection Methods

6.2.1.1. Traditional Tiling Algorithm

The current map projection algorithm uses a simple vertical projection approach. The supplied X-Y insert point and GSD allows the algorithm to project the applicable image map onto the scene. If the projected area of the image is smaller than the scene geometry, the image is "tiled" to increase the spatial coverage. With this tiling algorithm, the upper-left corner of the map's image is placed at a specified coordinate in world-space. The image is then tiled across the x-y plane as shown in Figure 6-4:

Figure 6-4. Tiling Algorithm

When a ray strikes a facet with the appropriate material ID, the intersection coordinate, (x,y,z), is calculated. The z value is ignored, and the (x,y) value is found on the tiled map image. The digital count at this location is then fed into the remainder of the mapping algorithm (e.g. material maps use this value with a LUT to set the material associated with the ray intersection).

6.2.1.2. UV Algorithm

The UV mapping algorithm wraps a map image around a DIRSIG object. Conceptually, a collection of facets in 3d space are ``unwrapped'' and projected onto a 2d image. When a facet in the model is intersected, the corresponding location in the 2d image is found.

Figure 6-5. Unwrapping an object onto a map image

6.2.2. Texture Theory and Methodology

This section discusses the mathematics behind the procedure for expanding a base set of spectral curves featuring the correct multispectral statistics for a material class and the procedure for selecting a texture curve for a given pixel.

6.2.2.1. Expanding the Curve Set

From a set of actual spectral curves representative of a land cover class (material type), and assumed to be distributed as , generate a mean vector and covariance matrix at the full DIRSIG database resolution given by:

Equation 6-1.

Equation 6-2.

where and are the mean vector and covariance matrix for an individual class, is the mean for the point of the spectra, and is the covariance between the and spectral means for this class.

One can compute the eigenvalues and eigenvectors for the covariance matrix, to obtain the following:

Equation 6-3.

Equation 6-4.

where: and the columns of contain the normalized eigenvectors corresponding to the eigenvalues, , for an individual land cover class.

We know that if the zero-centered original data was transformed via its eigenvector matrix, , as:

Equation 6-5.

where

Equation 6-6.

are the original spectral curves, one would obtain a data set, , which was spectrally non-correlated. This non-correlated data set would be distributed where the covariance matrix, , has the form:

Equation 6-7.

This non-correlated covariance matrix is used to generate multivariate random variables distributed as . To do this, we generate a set of Gaussian-distributed random numbers, , distributed as for to form the vector:

Equation 6-8.

This vector is then back transformed through the inverse of this equation as:

Equation 6-9.

to yield a multivariate random variable distributed which could be used to represent a reflectance curve from a population with these multivariate statistics (note that any negative values are truncated to zero).

In order to expedite run-times, a large family of these curves (e.g. 100 curves) is generated prior to the DIRSIG simulation and sampled uniformly whenever a reflectance vector is desired for a particular pixel of a particular material type.

6.2.2.2. Selecting a Curve

While there is a definite use for imagery exhibiting the proper multivariate statistics within specific land cover classes (e.g. for the maximum likelihood classification-like algorithms), the appearance of this imagery will not be adequate for all ground cover types. For instance, at a fairly coarse resolution, a gaussian random texture pattern would produce fairly ``good looking'' texture for a stone-covered rooftop, however, this would be inadequate for more structured texture patterns such as those exhibited by a field of row crops (e.g. corn). In order to account for such texture patterns, the many fractal-based approaches implemented in the literature do not provide the control needed. For this reason the following procedure was implemented which utilizes existing ``real'' imagery from which the variations in brightness (texture) are used to drive the choice of reflectance spectra used in the DIRSIG simulation.

In order to accomplish the task at hand, the user needs two things: (i) an image in a defined spectral bandpass which exhibits the texture desired and whose dimensions are at least as large as the synthetic image which will be generated, and (ii) a family of reflectance curves for a particular material type which were either generated as defined in Section 6.2.2.1 or simply a real database of values. The approach will use the brightness variations of the real texture image with respect to its mean to choose the proper reflectance curve to use for a particular pixel in the synthetic scene. The process proceeds as follows.

For each curve in the reflectance database for a particular material type, a ranking is derived which places each curve in a relative relationship with the mean of the family of curves. This is accomplished by computing the mean texture reflectance value of each curve in the population over a bandpass region equal to that of the chosen texture image as:

Equation 6-10.

for i = 1, N where is the average reflectance over the bandpass from to for the curve in the family of N curves, is the spectral reflectance for the curve at , and is the number of points across the bandpass for the curve. The mean and standard deviation for the bandpass averages are then computed as:

Equation 6-11.

and

Equation 6-12.

Once these statistics are determined, the curves can be ranked by assigning each curve a z-score which is computed as:

Equation 6-13.

These z-scores will be used to select the proper curve to associate with a particular brightness in the texture image. This is carried out by computing the z-score for an individual pixel in the texture image with respect to the image gray-level mean and standard deviation as

Equation 6-14.

where is the digital count for the current pixel in the texture image and and are the texture image gray-level mean and standard deviation. This value is then compared to the values for the current family of material reflectance curves and the curve with the most closely matching score within the bandpass of the texture image is chosen. In this manner, if texture were generated within the bandpass matching that of the texture image, it would closely match the texture image. However, the texture generated in other bandpass regions will exhibit contrasts as indicated by the relationships in the reflectance curves. For instance, if curve 5 exhibits higher reflectance than curve 3 in the bandpass region corresponding to the texture image, this does not imply the same relationship exists in another bandpass region. This method will allow the shape of one spectral curve to dictate the proper texture contrasts in the various bandpass images which may be generated. Spectral correlation is also maintained for all generated radiance values since only a single curve is used for the current pixel.