GRDPIN

Point Grid Interpolation


EnvironmentsPYTHON :: EASI :: MODELER
Batch ModeYes
Quick linksDescription :: Parameters :: Parameter descriptions :: Details :: Algorithm :: Related

Back to top

Description


Generates a raster image by interpolating image values between specified pixel locations. Optionally associated with each input pixel gray level is a user-specified confidence level.
Back to top

Parameters


Name Type Length Value range
Input: Input vector segment Vector port 0 - 1  
Output: Output raster channel* Raster port 1 - 1  
Number of Sample Points Integer 0 - 1 1 - 12
Default: 6
Field Name String 0 - 1 Default: ATTRIBUTE
Output Raster Type Text 0 - 1024 8U | 16S | 16U | 32R
Default: 32R

* Required parameter
Back to top

Parameter descriptions

Input: Input vector segment

Specifies the vector segment in which the attribute values of the point structures will be used as the basis for the interpolation. Confidences for all attribute values are assumed to be 1.0.

Output: Output raster channel

Specifies the output image channel to receive the interpolated result.

Number of Sample Points

Specifies the number of closest points to consider when interpolating a point. More data points generate a smoother result but a loss of local detail, while fewer data points provide less interpolation.

If this parameter is set to 1, the output image is a proximal map (Thiessen polygons), where each output pixel is the value of the nearest known (input) data point (that is, no interpolation).

The value of this parameter must be less than or equal to the total number of points specified by the input vector segment.

Field Name

Specifies the field name that contains the elevation values.

If this parameter is specified as ZCOORD, the actual z-coordinates of the vectors are used. Field names are not case-sensitive, and they do not need to be specified in complete form. If more than one match exists, the first name is used.

Supported values are:

The Field Name (FLDNME) parameter is required only for vector layers that contain 3-D points or contours. For 3-D lines, the z-coordinates are automatically used. For 2-D layers, the elevation values are not specified.

The same name applies to all contour and 3-D point segments specified in the input vectors (DBVS) parameter. The segments that do not satisfy this requirement can be converted to the required format using ZVALTRNS.

If a field name other than ZCOORD is specified but is not found, VDEMINT attempts to use the z-coordinates of each vertex or point; this may, however, lead to unexpected results.

Output Raster Type

Specifies the image data type of the output raster channel.

Supported values are:
Back to top

Details

GRDPIN is used to read gray-level values for up to 50,000 pixel locations in order to generate a raster image based on interpolation between the specified gray levels. Optionally associated with each input pixel gray level is a user-specified confidence level.

The gray-level data values are read from the point attributes of a vector segment (DBVS) stored in the image file.

You can control the results of the interpolation with the NUMSMP (Number of Sample Points) parameter. This value defines the number of closest points taken into account during the interpolation procedure. A larger NUMSMP value yields a smoother output image at the expense of local detail. If NUMSMP is equal to 1, a proximal map will be generated in which each output pixel takes on the value of its nearest known (input) data point. In other words, interpolation is not performed. NUMSMP is restricted to the range of 1 through 12 and, if not specified, defaults to 6.

Each vector may contain more than one attribute field. The FLDNME (Field Name) parameter is used to select the attribute field to use.

Back to top

Algorithm

Among the many grid interpolation algorithms that exist, the most widely used models for use with discrete points are local methods using k-nearest neighbors; that is, the k nearest of all sample points to the grid point in question) weighted by their distances from the grid point.

(i) Interpolation Algorithm

We expect for most phenomena that the gray-level value at any grid point should be most like the sample points nearest to the grid point. Thus, the influence a neighboring sample point has on the estimated value is weighted by the inverse distance to the grid point. The interpolation equation then becomes:

                 k
                __       Zi
                \       ------
                /_      (Di**2) / Ci  
                i=1     
     Zxy =  ---------------------------
                 k        
                __        1
                \       ------
                /_      (Di**2) / Ci
                i=1

where, for each k-nearest neighbor, Zi is its gray level, Di is its distance from the current grid point being interpolated, Ci is its confidence level, and Zxy is the interpolated result for the current grid point.

(ii) k-nearest Point Search Algorithm

For each grid point, the k-nearest neighbors must be identified from the entire data set before the distance-weighted equation can be employed. The search for the k-neighbors is the most computationally intensive part of the interpolation process. Intuitively, one has only to calculate the distance to each attribute and select the closest ones. Although simple in design, this is a very time-consuming process.

Improving upon this basic approach, we have adopted the search strategy described by Michael E. Hodgson in "The Professional Geographer" 41(1) 1989. This algorithm "learns", from its previous search, the distance within which the k-nearest neighboring points of the current grid point can be found.

An initial preprocessing phase partitions the image file into a matrix of n X n subregions or cells. An array is created which associates each sample point with a particular matrix cell. The k-nearest neighbors of the first grid point are determined by a brute force search of all sample points.

Identification of the k-neighbors for all other grid points consists of three steps:
  1. Calculate the distances from the current grid point to the k-neighbors determined for the previous grid point.
  2. Add and subtract the largest distance found in step 1 to the X,Y coordinates of the current grid point to identify those matrix cells whose sample points will be considered for the current search.
  3. Compute the distances from the current grid point to all sample points in the subset of matrix cells determined in step 2 to identify the k-closest neighbors.

© PCI Geomatics Enterprises, Inc.®, 2024. All rights reserved.