11.03.2014 Views

Applying OLAP Pre-Aggregation Techniques to ... - Jacobs University

Applying OLAP Pre-Aggregation Techniques to ... - Jacobs University

Applying OLAP Pre-Aggregation Techniques to ... - Jacobs University

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

2.1 Array Databases 21<br />

• Bilinear interpolation is used <strong>to</strong> interpolate cell values at direct positions within<br />

a quadrilateral grid. It assumes that feature attribute values vary as a bilinear<br />

function of position within the grid cell: v = a + bx + cy + dxy. Given a<br />

direct position, p, in a grid cell whose vertices are V, V + V 1 , V + V 2 , and<br />

V + V 1 + V 2 , where V 1 and V 2 are offset vec<strong>to</strong>rs of the grid, and with cell values<br />

at vertices v 1 , v 2 , v 3 , and v 4 , respectively, there are unique numbers i and j, with<br />

0 ≤ i ≤ 1, and 0 ≤ j ≤ 1 such that p = V + iV 1 + jV 2 . The cell value at p is:<br />

v = (1 − i)(1 − j)v 1 + i(1 − j)v 2 + j(1 − i)v 3 + ijv 4 .<br />

Since the values for output cells are calculated according <strong>to</strong> the relative positions<br />

and values of input cells, bilinear interpolation is preferred for data where the<br />

location from a known point or phenomenon determines the value assigned <strong>to</strong><br />

a cell (that is, continuous surfaces). Elevation, slope, intensity of noise from an<br />

airport, and salinity of groundwater near an estuary are phenomena represented<br />

as continuous surfaces and are most appropriately resampled using bilinear interpolation.<br />

• Quadratic interpolation is used <strong>to</strong> interpolate cell values along curves. It assumes<br />

that cell values vary as a quadratic function of distance along a value<br />

segment: v = a + bx + cx 2 , where a is the value of a cell at the start of a value<br />

segment and v is the value of a cell at distance x along the curve from the start.<br />

Three point value pairs are needed <strong>to</strong> provide control values for calculating the<br />

coefficients of the function.<br />

• Cubic interpolation is used <strong>to</strong> interpolate cell values along curves. It assumes<br />

that cell values vary as a cubic function of distance along a value segment:<br />

v = a + bx + cx 2 + dx 3 where a is the value of a cell at the start of a value<br />

segment and v is the value of a cell at distance x along the curve from the start.<br />

Four point value pairs are needed <strong>to</strong> provide control values for calculating the<br />

coefficients of the function.<br />

Cubic convolution has a tendency <strong>to</strong> sharpen the edges of the data more than bilinear<br />

interpolation since more cells are involved in the calculation of the output<br />

values.<br />

Pyramid Evaluation<br />

During the evaluation of a scaling operation with a target scale fac<strong>to</strong>r s, the pyramid<br />

level with the largest scale fac<strong>to</strong>r s ′ with s ′ < s is determined. This level is loaded and<br />

then an adjustment is made by scaling the resulting image by a fac<strong>to</strong>r of s/s ′ . If, for<br />

example, scaling by s = 11 is required, then pyramid level 3 with scale fac<strong>to</strong>r s ′ = 8<br />

is chosen, requiring a rest scaling of 11/8 = 1.375, thereby <strong>to</strong>uching only 1/64 of<br />

what is read without a pyramid.<br />

The computation complexity of a scaling operation depends on the chosen resampling<br />

method. For example, nearest neighbor resampling considers the closest cell<br />

center of the input raster and assigns the value of that cell <strong>to</strong> the corresponding cell

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!