Upkeep - Congruency test
Contents
Introduction
"Congruent" refers to a situation where two polygons (parcel representations) have the same shape and dimension. As a result, all their corresponding sides (perimeter segments) have the same length, and the angle between any two corresponding segments has the same value. In a simplified form, this concept is used for two purposes:
Vindication of a reported change
When the visual inspection could not detect alledged changes on the land, this congruency test offers a way to demonstrate that no change has occured.
The test does not check the full perimeter nor the interior of the reference parcel as these were investigated by the prior visual inspection. It relies on (the lack of) displacements on well identifiable ground points in each cardinal direction.
Calculation of coordinate shift between two shapes
The congruency test procedure and formulas can also be used to determine the length and direction of the local translation (coordinate shift) between two congruent representations of a single object. For instance between:
- the object’s vector and image representation
- two separate images covering that object.
The procedure of the LPIS congruency test
Activity diagram
figure 3cii.1: Congruency test activity diagram
Since a congruency test on the full reference parcel perimeter (all sides of the polygon) would result in numerous tests of shapes, sides, angles and dimension, we resort to a very simplified representation of the shape's perimeter, namely the AABB.
The test involves three steps:
- construct the AABB for one representation (LPIS RP) and calculate its parameters
- construct the AABB for the other representation (orthoimage) and calculate its parameters
- compare the two derived vector parameter sets for the absence of scale variation and rotation.
Note: The formulas involved are simple geometric and in a GIS environment, the automation of this process with a user-friendly application and user interface is essential.
1. Defining the AABB of a LPIS RP
Follow the instructions for the AABB construction:
- Select the 2 vertices on the perimeter that represent the most distant from each other. These vertex points should be
- ground level points (i.e. not on an elevated positions as tree tops, hedges, walls)
- visible (i.e. the view should not be obstructed by a nearby object.)
Record the (x,y) coordinates of each vertex and visualize the long diagonal on screen (A and C)
- Select the vertex on one side of the long diagonal has the largest euclidean distance perpendicular to that diagonal, record the (x,y) coordinates (B)
- Select the vertex of the other side of the long diagonal and record the (x,y) coordinates (D).
BB1 is now the origin of the AABB vector.
The quality and correspondence of the cardinal points is paramount, if several candidates are possible, select those with the best identification potential considering both representations. Restart the process of AABB construction if no suitabe correspondence can be assured.
Formulas
Given the coordinates from the collected cardinal points A (Ax,Ay), B (Bx,By), C(Cx,Xy) and D(Dx,Dy)
1. Calculate the orientation of the long axis with help of
2. Calculate the distance from point B to the long axis
dB = ( (Ay-Cy)*Bx + (Cx-Ax)*By + (Ax*Cy - Cx*Ay) ) / sqrt( (Cx-Ax)^2 + (Cy-Ay)^2 )
3. Calculate the distance from point D to the long axis
dD = ( (Ay-Cy)*Dx + (Cx-Ax)*Dy + (Ax*Cy - Cx*Ay) ) / sqrt( (Cx-Ax)^2 + (Cy-Ay)^2 )
4. Calculate the coordinates for the four AABB corners as:
AABB corner | x-coordinate | y-coordinate |
BB1 | Ax+dB*cos(alpha1 + 90) | Ay+dB*sin(alpha1 + 90) |
BB2 | Cx+dB*cos(alpha1 + 90) | Cy+dB*sin(alpha1 + 90) |
BB3 | Cx+dD*cos(alpha1 - 90) | Cy+dD*sin(alpha1 - 90) |
BB4 | Ax+dD*cos(alpha1 - 90) | Ay+dD*sin(alpha1 - 90) |
2.Defining the AABB of land on an orthoimage
- Select the 2 vertices on the perimeter that seem the most distant from each other. These vertex points should be:
- ground level points (i.e. not on an elevated positions as tree tops, hedges, walls)
- visible (i.e. the view should not be obstructed by a nearby object.)
Record the (x,y) coordinates of each vertex and visualize the long diagonal on screen (A' and C')
- Select the vertex on one side of the long diagonal has the largest eucledian distance perpendicular to that diagonal, record the (x,y) coordinates (B')
- Select the vertex of the other side of the long diagonal and record the (x,y) coordinates (D').
BB1' is now the origin of the AABB vector.
Formulas
The formulas are mutatis mutandis the same as those on the previous paragraph.
3. Comparing both AABB vector parameters for change detection
The formulas to calculate these the angle between the vectors and their difference in length:
To pass the test, calculate the difference in angle and length and confirm that:
- the angle between AABB RP and ABMM image is less than 1 degree. No relative rotation more than 1 degree has been observed.
- the difference in dimension, measured as the length of the two AABB diagonals is less than 2.5 meter. This indicates no compression or stretching has occurred in the direction of the long axis.
Note: in surveying, relative accuracy (scale effects such as compression or stretching) are often expressed via formula with parts per million. At scale 1/5000, such specification could be 0.5mm + 200ppm and for a length of 500 meter, results a threshold of 2.5m + 0.1m. Clearly, it would only affect very large or elongated parcels so is not used here.
3. Processing the AABB vector parameters for coordinate shift calculation
Shift is calculated through the vector parameters and results as translation between two vector centers (M and M', for illustration see figures 2.1, 2.2, 2.3 and 2.4). The formulas are:
Go back to the main upkeep article