Upkeep - Congruency test

From Wikicap - European Commission

SECOND DRAFT

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:

  1. the object’s vector and image representation
  2. two separate images covering that object.


The procedure of the LPIS congruency test

Activity diagram

BP0108001 Congruency test.png

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:

  1. construct the AABB for one representation (LPIS RP) and calculate its parameters
  2. construct the AABB for the other representation (orthoimage) and calculate its parameters
  3. 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
  1. ground level points (i.e. not on an elevated positions as tree tops, hedges, walls)
  2. 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

Step1 formula3a.png

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:
  1. ground level points (i.e. not on an elevated positions as tree tops, hedges, walls)
  2. 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:

Analysis-AMBB.png


To pass the test, calculate the difference in angle and length and confirm that:

  1. the angle between AABB RP and ABMM image is less than 1 degree. No relative rotation more than 1 degree has been observed.
  2. 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:


Mid1.png
Mid2.png
TranslationAMBB.png

Go back to the main upkeep article