Improved Identiﬁcation for Point-Distributed Coded Targets with Self-Adaption and High Accuracy in Photogrammetry

: A robust and effective method for the identiﬁcation of point-distributed coded targets (IPCT) in a video-simultaneous triangulation and resection system (V-STARS) was reported recently. However, its limitations were the setting of critical parameters, it being non-adaptive, making misidentiﬁcations in certain conditions, having low positioning precision, and its identiﬁcation effect being slightly inferior to that of the V-STARS. Aiming to address these shortcomings of IPCT, an improved IPCT, named I-IPCT, with an adaptive binarization, a more precise ellipse-center localization, and especially an invariance of the point–line distance ratio (PLDR), was proposed. In the process of edge extraction, the adaptive threshold Gaussian function was adopted to realize the acquisition of an adaptive binarization threshold. For the process of center positioning of round targets, the gray cubic weighted centroid algorithm was adopted to realize high-precision center localization. In the template point recognition procedure, the invariant of the PLDR was used to realize the determination of template points adaptively. In the decoding procedure, the invariant of the PLDR was adopted to eliminate confusion. Experiments in indoor, outdoor, and unmanned aerial vehicle (UAV) settings were carried out; meanwhile, sufﬁcient comparisons with IPCT and V-STARS were performed. The results show that the improvements can make the identiﬁcation approximately parameter-free and more accurate. Meanwhile, it presented a high three-dimensional measurement precision in close-range photogrammetry. The improved IPCT performed equally well as the commercial software V-STARS on the whole and was slightly superior to it in the UAV test, in which it provided a fantastic open solution using these kinds of coded targets and making it convenient for researchers to freely apply the coded targets in many aspects, including UAV photogrammetry for high-precision automatic image matching and three-dimensional real-scene reconstruction.


Introduction
Coded targets play an important role in close-range photogrammetry, machine vision, computer vision, and industrial measurements [1,2]. Each coded target has its distinct number of coding sequences, so they always serve as tie points or control points. For this reason, coded targets can be specially applied in fast image matching, object tracking, and automatic high-precision camera orientation [3][4][5]. According to their application areas, coded targets can be used in robot navigation, augmented reality, close-range/UAV photogrammetry, and many other fields [6,7]. For example, Chan et al. adopted coded targets to realize self-localization of an uncalibrated camera [5]. The authors of [8] used coded targets as tie points between images to help realize bundle adjustment and in [9],

Round Target Extraction and Center Positioning
The round targets are obtained through contour extraction, an ellipse filter with geometric constraints, and ellipse fitting. Then, the center of each target is obtained by center positioning through solving the ellipse equation.

Template Point Recognition
Based on Figure 2, IPCT uses the projective and permutation invariant (P 2 -Invariant) to achieve template point recognition. The five black dots and three green dots represent the template point and decoding point, respectively.

Round Target Extraction and Center Positioning
The round targets are obtained through contour extraction, an ellipse filter with geometric constraints, and ellipse fitting. Then, the center of each target is obtained b center positioning through solving the ellipse equation.

Template Point Recognition
Based on Figure 2, IPCT uses the projective and permutation invariant (P 2 -Invar to achieve template point recognition. The five black dots and three green dots repre the template point and decoding point, respectively. The value of P 2 -Invariant is the key to achieving template point recognition. workflow of template point recognition is as follows: (1) Find the three collinear points C, E, and A. (2) Find the suitable points D a from the remaining five points. The suitable condition is the one where the calculate Invariant is equal to the designed P 2 -Invariant.
To avoid false choices, D and B are constrained by the geometric distance restr condition.
where is the distance from E to D or B, and is empirically calculated as 2.5. The value of P 2 -Invariant is the key to achieving template point recognition. The workflow of template point recognition is as follows: (1) Find the three collinear points C, E, and A. (2) Find the suitable points D and B from the remaining five points. The suitable condition is the one where the calculated P 2 -Invariant is equal to the designed P 2 -Invariant.
To avoid false choices, D and B are constrained by the geometric distance restricted condition. where d is the distance from E to D or B, and β is empirically calculated as 2.5.

Decoding Point Determination
After the five template points are determined, the affine transformation parameters between the designed plane and the imaging plane can be obtained.
Then, the three decoding points under the image coordinate system are transformed by the affine transformation parameters to obtain their corresponding calculated points under the designed coordinate system. Comparing the calculated points P cal with the designed points P des in the coding library, the decoding points which satisfy the distance constraint are selected: dis(P cal , P des ) ≤ h, where h is empirically set as 1.0. After the five template points and the three decoding points are determined, a GCT can be identified.

Existing Problems
In the procedure of the above identification process in IPCT, there exist mainly three problems.
Firstly, at the edge extraction stage, the binarization threshold is manually set with a given value according to specific lighting conditions and is not adaptive under challenging lighting conditions. Secondly, at the center positioning stage, the centers of round targets are obtained by fitting the ellipse edge, whose localization precision is as low as 0.2-0.3 px. As V-STARS has a precision of center positioning as high as 0.02 px, which can be regarded as the standard, it is urgent to improve the center positioning precision of IPCT.
Thirdly, at the template point recognition stage and decoding point determination stage, two empirical parameters, β in Equation (1) and h in Equation (2), which are directly related to the Euclidean distances, are not flexible and cannot be adjusted self-adaptively. Tests have shown that when the shooting angle is larger, the method will be restricted by the constraints to some extent as the image deformation is larger. Evidently, as shown in Figure 2, when the image deformation increases, the distance difference between DE and BE increases, and β should be adjusted manually. In addition, when the potential decoding points are too close or there exists some interference, misidentifications will occur. Obviously, h is not anti-jamming. In brief, β and h should be manually tuned according to different application scenes and they cannot be easily controlled.
Due to these limitations, we developed an improved IPCT, which includes three aspects of improvement, to optimize the identification. I-IPCT includes an adaptive binarization for edge detection, a more precise center localization for round targets, and an invariance of the PLDR to replace the constraint conditions in Equations (1) and (2) for template point recognition and decoding point determination.

Adaptive Binarization for Edge Detection
The manual binarization threshold in IPCT is not convenient for complex scenarios. Here, we adopted adaptive threshold Gaussian functions to automatically calculate the threshold value for binarization. where Src(x, y) is the original gray value of (x, y) and T(x, y) is a threshold calculated individually for each pixel.
T(x, y) = ∑ where the threshold value T(x, y) is a weighted sum of the K×K neighborhood of (x, y) minus C and K is the block size of a pixel neighborhood that is used to calculate a threshold value for the pixel: 3, 5, 7, and so on. C is a constant. G(i, j) are the Gaussian filter coefficients.

More Precise Ellipse-Center Localization
Ellipse fitting in IPCT is not applicable to high-precision 3D measurements. Here, we adopted an advanced gray weighted centroid algorithm to achieve a more precise localization for the ellipse center.
The unified model of gray weighted centroid algorithm is: where (u 0 , v 0 ) is the centroid of a round target, g u i , v j is the gray value at u i , v j inside a round target, T is a parameter threshold related to the gray value, and k is the weighted index for the gray value (k = 1, 2, 3 . . . ). It is equivalent to the traditional gray weighted centroid calculation formula when T = 0 and k = 1, and to the gray square weighted centroid method when k = 2. Through sufficient experiments, we found the best parameters were T = 0 and k = 3.

The Invariance Theory of PLDR
The theory of invariance of PLDR was originally from Refs. [17,18], which implemented line-feature matching for two images. The theory adopted point matches from scale invariant feature transform (SIFT) [19] to guide line matching. Here, we regarded the coded target identification as feature matching for two images because the designed GCT plane can be regarded as the left image and the affined GCT plane can be regarded as the right image.
2.4.1. The Invariance of the PLDR for Line Matching As shown in Figure 3, there exists a three-dimensional line L on the object space plane. l and l are the corresponding two-dimensional lines on the two images. X i and X i (i = 1, 2) are the corresponding points, and Q i (i = 1, 2) are the intersections of X i and X i on the object plane.  The invariance of the point-line distance ratio is expressed as the ratio of the d between two points and the line. When , , and are coplanar, the points an on the two camera planes can be associated by a homograph. A more special affin formation matrix can be used in the local small plane region.
where is the scale factor.
On the two camera planes, the distance ratio between two points and a line expressed as: Substituting Equation (7) into Equation (8), we obtain Equation (9): Equation (9) indicates that the distance ratio between two points, and the re line on the left image is equal to the distance ratio between the two corresponding and the corresponding line on the right image. This invariant serves as a basis matching.
The matching degree is measured by the similarity expressed in Equation (1 larger the similarity, the higher the matching degree. The maximum of the simi 1.0. The essence of template point recognition is template point matching. That i we should address is how to match the affined template points (Figure 4b) with signed template points ( Figure 4a). Here, we apply the invariance of the PLDR in is the line to be matched and ( , ′) and ( , ′) are the corresponding points. ognize the template points, how to match and with ′ and ′ , respectiv comes a problem when the corresponding line is known. The invariance of the point-line distance ratio is expressed as the ratio of the distance between two points and the line. When Q 1 , Q 2 , and L are coplanar, the points and lines on the two camera planes can be associated by a homograph. A more special affine transformation matrix H a can be used in the local small plane region.
where s is the scale factor. On the two camera planes, the distance ratio between two points and a line can be expressed as: Substituting Equation (7) into Equation (8), we obtain Equation (9): Equation (9) indicates that the distance ratio between two points, and the reference line on the left image is equal to the distance ratio between the two corresponding points and the corresponding line on the right image. This invariant serves as a basis for line matching.
The matching degree is measured by the similarity expressed in Equation (10). The larger the similarity, the higher the matching degree. The maximum of the similarity is 1.0.
The above shows the principle of PLDR invariance for line matching. It should be pointed out that the corresponding points are known and the line is to be matched.

The Invariance of the PLDR for Template Point Recognition
The essence of template point recognition is template point matching.
That is, what we should address is how to match the affined template points (Figure 4b) with the designed template points (Figure 4a). Here, we apply the invariance of the PLDR in reverse. CEA is the line to be matched and (D,D ) and (B,B ) are the corresponding points. To recognize the template points, how to match D and B with D and B , respectively, becomes a problem when the corresponding line CEA is known.  Here, we replace Equation (1) with Equation (11) to constrain the template point matching.
As D and B are symmetrical with respect to line as designed, the ideal PLDR value Similar to template point matching, decoding point determination depends on the matching of three decoding points. That is, we should address how to match the affined decoding points (Figure 5b) with the designed decoding points (Figure 5a). Different from Equation (6), which provides a predefined distance threshold directly, we first roughly set an initial sufficient range constraint for the distance difference (refer to the green dashed circle shown in Figure 5), as shown in Equation (13); then, we adopted the invariance of the PLDR associated with the decoding points to constrain the matching precisely, as shown in Equation (14).
where M represents the average diameter length of all ellipses of a GCT. ε is a constant scale factor. Because M can be self-adapted and ε is built-in, the threshold ε M is also self-adapted.
The three decoding points should satisfy the constraint in Equation (14) at the same time. To screen out the optimal three decoding points from the twenty-eight points in the coding library, the maximum of the average of the sum of similarities serves as the criterion, as shown in Equation (15)  Here, we replace Equation (1) with Equation (11) to constrain the template point matching.
As D and B are symmetrical with respect to line CEA as designed, the ideal PLDR value D Ratio D, B, CEA associated with the template points remains constant as 1.0 under any affined transformation. However, the actual PLDR value D Ratio D , B , C E A will have a divergence δ of 1.0. Then, Equation (12) can be served as the criterion by which to find D and B. abs

The Invariance of the PLDR for Decoding Point Determination
Similar to template point matching, decoding point determination depends on the matching of three decoding points. That is, we should address how to match the affined decoding points (Figure 5b) with the designed decoding points (Figure 5a). Different from Equation (6), which provides a predefined distance threshold directly, we first roughly set an initial sufficient range constraint for the distance difference (refer to the green dashed circle shown in Figure 5), as shown in Equation (13); then, we adopted the invariance of the PLDR associated with the decoding points to constrain the matching precisely, as shown in Equation (14). dis(P cal , P des ) ≤ εM (13) where M represents the average diameter length of all ellipses of a GCT. ε is a constant scale factor. Because M can be self-adapted and ε is built-in, the threshold εM is also self-adapted.
The three decoding points should satisfy the constraint in Equation (14) at the same time. To screen out the optimal three decoding points from the twenty-eight points in the coding library, the maximum of the average of the sum of similarities serves as the criterion, as shown in Equation (15)

The Identification Process of the Improved IPCT
The complete procedures of the improved IPCT are shown in Figure 6. I, J, and K correspond to decoding points 4, 6, and 14, respectively. Steps 2 and 6 are the same as the procedures in IPCT. Steps 1, 3, 4, and 5 are the important innovative parts of I-IPCT. In IPCT, the binarization is not self-adaptive; the center positioning precision is low by ellipse fitting; the template point identification is based on the P 2 -Invariant embedded with the geometric distance restricted condition (Equation (1)); and the decoding point identification is based on affine transformation embedded with the geometric distance restricted condition (Equation (6)). In the improved IPCT, the binarization is self-adaptive under changing lighting conditions; the positioning precision of the ellipse center is high using an advanced gray weighted centroid algorithm; the template point identification is based on the P 2 -Invariant embedded with the PLDR (Equation (12)), and the decoding point identification is based on affine transformation embedded with the PLDR (Equation (15)).

The Identification Process of the Improved IPCT
The complete procedures of the improved IPCT are shown in Figure 6. I, J, and K correspond to decoding points 4, 6, and 14, respectively. Steps 2 and 6 are the same as the procedures in IPCT. Steps 1, 3, 4, and 5 are the important innovative parts of I-IPCT. In IPCT, the binarization is not self-adaptive; the center positioning precision is low by ellipse fitting; the template point identification is based on the P 2 -Invariant embedded with the geometric distance restricted condition (Equation (1)); and the decoding point identification is based on affine transformation embedded with the geometric distance restricted condition (Equation (6)). In the improved IPCT, the binarization is self-adaptive under changing lighting conditions; the positioning precision of the ellipse center is high using an advanced gray weighted centroid algorithm; the template point identification is based on the P 2 -Invariant embedded with the PLDR (Equation (12)), and the decoding point identification is based on affine transformation embedded with the PLDR (Equation (15)).

The Identification Process of the Improved IPCT
The complete procedures of the improved IPCT are shown in Figure 6. I, J, and K correspond to decoding points 4, 6, and 14, respectively. Steps 2 and 6 are the same as the procedures in IPCT. Steps 1, 3, 4, and 5 are the important innovative parts of I-IPCT. In IPCT, the binarization is not self-adaptive; the center positioning precision is low by ellipse fitting; the template point identification is based on the P 2 -Invariant embedded with the geometric distance restricted condition (Equation (1)); and the decoding point identification is based on affine transformation embedded with the geometric distance restricted condition (Equation (6)). In the improved IPCT, the binarization is self-adaptive under changing lighting conditions; the positioning precision of the ellipse center is high using an advanced gray weighted centroid algorithm; the template point identification is based on the P 2 -Invariant embedded with the PLDR (Equation (12)), and the decoding point identification is based on affine transformation embedded with the PLDR (Equation (15)).

Results
The experimental data GSI_CodedTarget_Identification (GCTI) provided by IPCT was used as the object of the test. The test data included images captured from indoor, outdoor, and UAV scenes. The identification results of V-STARS and IPCT served as comparisons, which will not be shown here again as they can be found in Ref. [16]. We provide the detailed identification results of the improved IPCT visually. The cross intersection marked by the green color is the positioning center of each GCT. The parameters below each image denote the viewing angle, correct identifications, and accurate identification rate. For outdoor and UAV scenes, different scenes were distinguished by brightness and shooting height, respectively. Empirically, I-IPCT is applicable to any experimental conditions when δ is set as 0.06 and ε is set as 0.2.
Before the final results are presented, taking a sample as an example, the intermediate results of adaptive binarization and gray cubic weighted centroid calculation are shown in Figures 7 and 8.

Results
The experimental data GSI_CodedTarget_Identification (GCTI) provided by IPCT was used as the object of the test. The test data included images captured from indoor, outdoor, and UAV scenes. The identification results of V-STARS and IPCT served as comparisons, which will not be shown here again as they can be found in Ref. [16]. We provide the detailed identification results of the improved IPCT visually. The cross intersection marked by the green color is the positioning center of each GCT. The parameters below each image denote the viewing angle, correct identifications, and accurate identification rate. For outdoor and UAV scenes, different scenes were distinguished by brightness and shooting height, respectively. Empirically, I-IPCT is applicable to any experimental conditions when δ is set as 0.06 and ε is set as 0.

Results
The experimental data GSI_CodedTarget_Identification (GCTI) provided by IPCT was used as the object of the test. The test data included images captured from indoor, outdoor, and UAV scenes. The identification results of V-STARS and IPCT served as comparisons, which will not be shown here again as they can be found in Ref. [16]. We provide the detailed identification results of the improved IPCT visually. The cross intersection marked by the green color is the positioning center of each GCT. The parameters below each image denote the viewing angle, correct identifications, and accurate identification rate. For outdoor and UAV scenes, different scenes were distinguished by brightness and shooting height, respectively. Empirically, I-IPCT is applicable to any experimental conditions when δ is set as 0.06 and ε is set as 0.2.
Before the final results are presented, taking a sample as an example, the intermediate results of adaptive binarization and gray cubic weighted centroid calculation are shown in Figures 7 and 8.    The first indoor test used twenty 6 mm diameter GCTs and the shooting distance was 2 m. The viewing angles included 0, 10, 20, 30, 40, 50, 60, 65, 70, 75, and 80°. To depict the legend better, the result at a viewing angle of 65° served as a representative result ( Figure  9) and the results using the other viewing angles are shown in the Appendix ( Figure A1).
(65°, 20/100%) As shown in Figures 9 and A1, and Ref. [16], compared with IPCT, the improved IPCT results were approximate when the viewing angle was within 60° but obviously prevailed when the viewing angle was larger than 60°. That is, the effect improved significantly when the viewing angle was 65°, 70°, 75°, and 80°. In addition, compared with V-STARS, the improved IPCT performed better overall when the viewing angle was within 70°, and it was slightly inferior to V-STARS at 75° and 80°.

Experiments with Small-Sized GCTs
The second indoor test used twenty 3 mm diameter GCTs; the shooting distance was 1 m at viewing angles of 0, 30, and 60°. The result at viewing angle 0° served as a representative result ( Figure 10) and the results using the other viewing angles are shown in the Appendix ( Figure A2). As shown in Figures 9 and A1, and Ref. [16], compared with IPCT, the improved IPCT results were approximate when the viewing angle was within 60 • but obviously prevailed when the viewing angle was larger than 60 • . That is, the effect improved significantly when the viewing angle was 65 • , 70 • , 75 • , and 80 • . In addition, compared with V-STARS, the improved IPCT performed better overall when the viewing angle was within 70 • , and it was slightly inferior to V-STARS at 75 • and 80 • .

Experiments with Small-Sized GCTs
The second indoor test used twenty 3 mm diameter GCTs; the shooting distance was 1 m at viewing angles of 0, 30, and 60 • . The result at viewing angle 0 • served as a representative result ( Figure 10) and the results using the other viewing angles are shown in the Appendix A ( Figure A2).
The identification results of the improved IPCT were better than those of IPCT and slightly inferior to those of V-STARS, as shown in Figures 10 and A2, and Ref. [16]. Compared with IPCT, the accurate identification rate of the improved IPCT increased by 15% when the viewing angle was 60 • . In particular, processed by IPCT at 0 • , CODE83 (marked with a red rectangle in Figure 10) was misidentified as CODE21, but the improved IPCT correctly identified CODE83. Through observation and analysis from the outline shape of CODE21 (Figure 11a) and CODE83 (Figure 11b), the positions of some individual decoding points of CODE21 and CODE83 were very close to one another, which is prone to inducing misidentification. The identification results of the improved IPCT were better than those of IPCT and slightly inferior to those of V-STARS, as shown in Figures 10 and A2, and Ref. [16]. Compared with IPCT, the accurate identification rate of the improved IPCT increased by 15% when the viewing angle was 60°. In particular, processed by IPCT at 0°, CODE83 (marked with a red rectangle in Figure 10) was misidentified as CODE21, but the improved IPCT correctly identified CODE83. Through observation and analysis from the outline shape of CODE21 ( Figure 11a) and CODE83 (Figure 11b), the positions of some individual decoding points of CODE21 and CODE83 were very close to one another, which is prone to inducing misidentification.  The identification results of the improved IPCT were better than t slightly inferior to those of V-STARS, as shown in Figures 10 and A2, an pared with IPCT, the accurate identification rate of the improved IPCT when the viewing angle was 60°. In particular, processed by IPCT at 0°, with a red rectangle in Figure 10) was misidentified as CODE21, but th correctly identified CODE83. Through observation and analysis from th CODE21 ( Figure 11a) and CODE83 (Figure 11b), the positions of some ing points of CODE21 and CODE83 were very close to one another, inducing misidentification.

Experiments with Mixed GCTs
Six 6 mm diameter GCTs and six 3 mm diameter GCTs were mixed and pasted on a wall. The shooting distance was 1.5 m at viewing angles of 0, 30, and 60 • . The result at a viewing angle of 0 • served as a representative result (Figure 12), and the results using the other viewing angles are shown in the Appendix A ( Figure A3).

Experiments with Mixed GCTs
Six 6 mm diameter GCTs and six 3 mm diameter GCTs were mixed and pasted on a wall. The shooting distance was 1.5 m at viewing angles of 0, 30, and 60°. The result at a viewing angle of 0° served as a representative result (Figure 12), and the results using the other viewing angles are shown in the Appendix ( Figure A3).
(0°, 12/100%) Comparing the results shown in Figures 12 and A3, and Ref. [16], we can see that the improved IPCT identified all of the GCTs correctly in any situation, which was similar to the performance of IPCT. As V-STARS could only correctly identify half of the GCTs at a viewing angle of 60°, the improved IPCT was superior in performance. Through careful observation of the image at a viewing angle of 60°, we found that the area where the GCTs were not identified was a little bit fuzzy. As this will affect ellipse extraction, we can infer that the method of ellipse extraction in V-STARS is different from that of the improved IPCT.

Experiment for Outdoor Scenes
The outdoor test used eleven 6 mm diameter GCTs, and the brightness was challenging to some extent. The result of scene 3 served as a representative result (Figure 13), and the results of the other scenes are shown in the Appendix ( Figure A4). Comparing the results shown in Figures 12 and A3, and Ref. [16], we can see that the improved IPCT identified all of the GCTs correctly in any situation, which was similar to the performance of IPCT. As V-STARS could only correctly identify half of the GCTs at a viewing angle of 60 • , the improved IPCT was superior in performance. Through careful observation of the image at a viewing angle of 60 • , we found that the area where the GCTs were not identified was a little bit fuzzy. As this will affect ellipse extraction, we can infer that the method of ellipse extraction in V-STARS is different from that of the improved IPCT.

Experiment for Outdoor Scenes
The outdoor test used eleven 6 mm diameter GCTs, and the brightness was challenging to some extent. The result of scene 3 served as a representative result (Figure 13), and the results of the other scenes are shown in the Appendix A ( Figure A4).
Referring to the results in Ref. [16], the performance of the improved IPCT was similar to those of IPCT and V-STARS according to the results of scene 1 and scene 2. However, it prevailed over the other two methods as it correctly identified all the GCTs, as shown from the results of scene 3. Referring to the results in Ref. [16], the performance of the improved IPCT was similar to those of IPCT and V-STARS according to the results of scene 1 and scene 2. However, it prevailed over the other two methods as it correctly identified all the GCTs, as shown from the results of scene 3.

Experiment for UAV Scenes
The UAV test, with shooting heights of 4, 7, and 8 m, used nine 12 mm diameter GCTs. The result at a height of 4 m served as a representative result (Figure 14), and the results at the other heights are shown in the Appendix ( Figure A5).

Experiment for UAV Scenes
The UAV test, with shooting heights of 4, 7, and 8 m, used nine 12 mm diameter GCTs. The result at a height of 4 m served as a representative result (Figure 14), and the results at the other heights are shown in the Appendix A ( Figure A5).
From Figures 14 and A5, and Ref. [16], the improved IPCT obtained the best results which surpassed the results of IPCT and V-STARS. When the height was 7 m and 8 m, the improved IPCT behaved quite satisfactorily with obvious improvement compared to IPCT. In particular, for the image taken at a height of 7 m, we can see that the sunlight was not uniform. For IPCT, the GCTs in the shade could not be identified with the GCTs in the sunlight at the same time, but they were identified successfully here using I-IPCT, which demonstrates the effectiveness of adaptive binarization for challenging illumination. It should be pointed out that, compared with the shooting distance, the size of the 12 mm diameter GCTs was slightly small for the UAV when the shooting height was greater than 4 m. If larger-sized GCTs are adopted, better identifications could be obtained.  From Figures 14 and A5, and Ref. [16], the improved IPCT obtained the best results which surpassed the results of IPCT and V-STARS. When the height was 7 m and 8 m, the improved IPCT behaved quite satisfactorily with obvious improvement compared to IPCT. In particular, for the image taken at a height of 7 m, we can see that the sunlight was not uniform. For IPCT, the GCTs in the shade could not be identified with the GCTs in the sunlight at the same time, but they were identified successfully here using I-IPCT, which demonstrates the effectiveness of adaptive binarization for challenging illumination. It should be pointed out that, compared with the shooting distance, the size of the 12 mm diameter GCTs was slightly small for the UAV when the shooting height was greater than 4 m. If larger-sized GCTs are adopted, better identifications could be obtained.
As well as the examples of the visible results in the main text and the Appendix, detailed comparisons of the accurate identification rate between V-STARS, IPCT, and the improved IPCT are listed in Table 1. It is clear that the improved IPCT provides a comprehensive upgrade in its accurate identification rate compared with IPCT. It also performed equally as well as V-STARS on the whole and behaved better than V-STARS for the UAV test.  Table 1. It is clear that the improved IPCT provides a comprehensive upgrade in its accurate identification rate compared with IPCT. It also performed equally as well as V-STARS on the whole and behaved better than V-STARS for the UAV test.

Discussion
The key to the improvement seen with I-IPCT was the adoption of the advanced gray cubic weighted centroid method and the invariance theory of PLDR; therefore, we performed a validation analysis regarding the precision of ellipse-center localization and the robustness of the PLDR. Six milimeter diameter GCTs are the most widely used in common scenarios [14], so this size of GCT was adopted for the experiments and analysis. The validation analysis used every viewing angle with increasing steps ranging from 0 to 80 • .

The Precision of Ellipse-Center Localization
Bias_RMS_X, Bias_RMS_Y, and Bias_RMS_XY represent the root-mean-square error (RMSE) of the biases between the improved IPCT and V-STARS at image coordinates in the X and Y directions and plane, respectively. The detailed information of the localization precision using a viewing angle of 0 • can be seen in Table 2. The improved IPCT obtained a high center-localization precision with a plane bias RMSE of 0.047, which is a great breakthrough compared with the plane bias RMSE of 0.217 using IPCT. The details of the comparisons of IPCT and improved IPCT for center localization precision using different viewing angles are shown in Figure 15. The center positioning precision of IPCT is marked with the symbol (0) with broken lines and the precision of the improved IPCT is presented as solid lines. The RMSE of bias was from approximately 0.04 px to 0.08 px when the viewing angle was less than 65 • . The improved IPCT had a worse performance compared to IPCT when the viewing angle was 75 • (0.158 vs. 0.104, respectively). The reason is that, as the GCTs were not made of retro-reflective materials and no flash lamp was used, the gray values' distribution of the round target was not even when the viewing angle was too large. Therefore, the precision of ellipse-center localization by the gray weighted centroid method was worse. On the whole, the improved IPCT can obtain four times better precision. Compared with ellipse fitting, it was obvious that the improved IPCT with the gray cubic weighted centroid algorithm was more suitable for GCT identification and performed more similarly to V-STARS.

The Robustness of the PLDR
The variance in the PLDR for template point recognition was used for analysis. We counted the minimum, maximum, and average of the PLDR values. As shown in Figure  16, the average of the PLDR using each viewing angle was close to 1.0. The minimum and maximum PLDR values were 0.944 and 1.051, respectively. The vibration of the PLDR was

The Robustness of the PLDR
The variance in the PLDR for template point recognition was used for analysis. We counted the minimum, maximum, and average of the PLDR values. As shown in Figure 16, the average of the PLDR using each viewing angle was close to 1.0. The minimum and maximum PLDR values were 0.944 and 1.051, respectively. The vibration of the PLDR was smaller than 0.06. In addition, the minimum and maximum PLDR values for the outdoor and UAV tests were 0.972 and 0.961 and 1.026 and 1.043, respectively. Thus, the PLDR was very robust and could be adapted for common scenarios when the vibration threshold of the PLDR is set as 0.06. Figure 15. Comparison of IPCT and the improved IPCT for precision of center localization using different viewing angles.

The Robustness of the PLDR
The variance in the PLDR for template point recognition was used for analysis. We counted the minimum, maximum, and average of the PLDR values. As shown in Figure  16, the average of the PLDR using each viewing angle was close to 1.0. The minimum and maximum PLDR values were 0.944 and 1.051, respectively. The vibration of the PLDR was smaller than 0.06. In addition, the minimum and maximum PLDR values for the outdoor and UAV tests were 0.972 and 0.961 and 1.026 and 1.043, respectively. Thus, the PLDR was very robust and could be adapted for common scenarios when the vibration threshold of the PLDR is set as 0.06. Next, we provide the statistics on the maximum bias value of the PLDR and the direct positioning for decoding points using different viewing angles ( Figure 17). The maximum bias of direct positioning of IPCT was about 0.7 (unit: mm) [16] and the maximum bias of the PLDR was about 0.2 (non-dimensional number). Because the statistic was aimed at the 6 mm diameter GCTs, the maximum bias of direct positioning would be larger than 0.7 mm as the increasing size of the GCTs renders them liable to trigger false decoding. However, the maximum bias of the PLDR was kept invariable as it is irrelevant to the size of the GCTs, and can guarantee the correct decoding. Thus, it is more suitable to use I-IPCT for UAV photogrammetry where large-sized GCTs are needed. Next, we provide the statistics on the maximum bias value of the PLDR and the direct positioning for decoding points using different viewing angles ( Figure 17). The maximum bias of direct positioning of IPCT was about 0.7 (unit: mm) [16] and the maximum bias of the PLDR was about 0.2 (non-dimensional number). Because the statistic was aimed at the 6 mm diameter GCTs, the maximum bias of direct positioning would be larger than 0.7 mm as the increasing size of the GCTs renders them liable to trigger false decoding. However, the maximum bias of the PLDR was kept invariable as it is irrelevant to the size of the GCTs, and can guarantee the correct decoding. Thus, it is more suitable to use I-IPCT for UAV photogrammetry where large-sized GCTs are needed. Combined with the PLDR theory and the above results, it can be confirmed that the application of the PLDR is very valid as it is based on the distance ratio constraint, which can be self-adaptive according to the change in image size and image distortion. There is no doubt that it surpasses the distance constraint which should manually tune the param- Combined with the PLDR theory and the above results, it can be confirmed that the application of the PLDR is very valid as it is based on the distance ratio constraint, which can be self-adaptive according to the change in image size and image distortion. There is no doubt that it surpasses the distance constraint which should manually tune the parameters according to different application scenarios. On the other hand, the PLDR is very robust as the distance ratio can withstand more error disturbance or uncertainty. As described and tested in the work of Ref. [17], their proposed methods used matched points for line matching, which is rather robust to mismatches from SIFT. They were robust and achieved very good performance even when the percentage of points matching the outlier was as high as 50%. Therefore, the stability of the point-line distance ratio theory could not be easily disturbed by image deformation, and the improved IPCT could achieve parameter-free and more accurate identification.
How can the improved IPCT produce such a good effect? We conclude that the improved IPCT combines three excellent theories together, the gray cubic weighted centroid algorithm, the P 2 -Invariant, and the invariance of PLDR. Firstly, the gray cubic weighted centroid can provide a precise center positioning for round targets. Secondly, just as the authors of [20,21] mentioned, the P 2 -Invariant is very stable, scale-invariant, and fast to achieve point registration. Thirdly, based on the work in [16] and [20], the coplanar P 2 -Invariant assisted by the PLDR can be used to detect template points. Based on the work in Ref. [16] and Ref. [22], the affine transformation assisted by the PLDR can be used to decode a GCT. As the key procedures of the improved IPCT are adaptive, robust, and accurate, it can obtain an excellent identification effect.

The Precision Validation of 3D Measurement
The high correct-identification rate and the high ellipse-center-positioning precision do not represent the 3D measurement precision. We should evaluate 3D measurement precision by recovering the 3D coordinates of the GCTs. As the commercial photogrammetric system V-STARS remains a closed source [23], the details related to its methods for center positioning and GCT recognition cannot be accessed. However, V-STARS claims to have a typical high measurement precision of 5 µm + 5 µm/m [14,15], and the center-positioning precision is 0.02 px, according to Refs. [14,24,25]. Therefore, the 3D measurement results of V-STARS can be used as the truth. In the following, we go through the whole process of photogrammetry, including performing image matching and bundle adjustment, to help evaluate the center positioning precision and 3D measurement precision further. The same camera, a NIKON D300S, was used to capture three groups of images for these twenty 6 mm sized GCTs. The number of photos for each group were 14, 14, and 15, respectively. Through GCT matching and bundle adjustment, the cameras' exterior orientations and the 3D coordinates of GCTs were obtained. Taking the first group as an example, the 3D display is shown in Figure 18. center positioning and GCT recognition cannot be accessed. However, V-STARS claims to have a typical high measurement precision of 5 µm + 5 µm/m [14,15], and the center-positioning precision is 0.02 px, according to Refs. [14,24,25]. Therefore, the 3D measurement results of V-STARS can be used as the truth. In the following, we go through the whole process of photogrammetry, including performing image matching and bundle adjustment, to help evaluate the center positioning precision and 3D measurement precision further. The same camera, a NIKON D300S, was used to capture three groups of images for these twenty 6 mm sized GCTs. The number of photos for each group were 14, 14, and 15, respectively. Through GCT matching and bundle adjustment, the cameras' exterior orientations and the 3D coordinates of GCTs were obtained. Taking the first group as an example, the 3D display is shown in Figure 18. Figure 18. Cameras' exterior orientations and 3D coordinates of GCTs of group 1. The 3D coordinates of each GCT calculated by our method was compared with the 3D coordinates of the corresponding GCT through registration. The bias of the 3D coordinates was regarded as the precision of 3D measurement. The 3D coordinates of a total of twenty GCTs were obtained. The biases of group 1, group 2, and group 3 are represented by different colors, as shown in Figure 19.
0.07 0.08 mm) Figure 18. Cameras' exterior orientations and 3D coordinates of GCTs of group 1. The 3D coordinates of each GCT calculated by our method was compared with the 3D coordinates of the corresponding GCT through registration. The bias of the 3D coordinates was regarded as the precision of 3D measurement. The 3D coordinates of a total of twenty GCTs were obtained. The biases of group 1, group 2, and group 3 are represented by different colors, as shown in Figure 19. Figure 18. Cameras' exterior orientations and 3D coordinates of GCTs of group 1. The 3D coordinates of each GCT calculated by our method was compared with the 3D coordinates of the corresponding GCT through registration. The bias of the 3D coordinates was regarded as the precision of 3D measurement. The 3D coordinates of a total of twenty GCTs were obtained. The biases of group 1, group 2, and group 3 are represented by different colors, as shown in Figure 19. From Figure 19, we can see that the maximum 3D bias was as low as 67 um, and the mean 3D bias was about 20-30 um. The RMS of each group was 25, 25, and 32 um, respectively. For these three tests, the repeated 3D precision was stable and rather good. This indicates the potential for using this method to perform 3D measurements in close-range From Figure 19, we can see that the maximum 3D bias was as low as 67 um, and the mean 3D bias was about 20-30 um. The RMS of each group was 25, 25, and 32 um, respectively. For these three tests, the repeated 3D precision was stable and rather good. This indicates the potential for using this method to perform 3D measurements in closerange photogrammetry. In addition, it also reflects the high precision of elliptic-center positioning based on the gray cube weighted centroid method.
In this paper, we used a gray cubic weighted centroid method to obtain the center positions of all points, which may not be the best method to perform center positioning. In future research, we will test other high-precision edge extraction and center positioning methods as mentioned in Ref. [26]. We will also consider a faster ellipse extraction method through learning from Ref. [27] to adapt to fast processing or dynamic scenarios. In addition, another piece of close-range photogrammetric software called AUSTRALIS [28,29] should be considered as a comparison to guide the research.
In the UAV test above, the shooting altitude was 4-8 m. This altitude can be applicable for small objects or research areas, such as heritage buildings [30,31]. However, the shooting altitude is about 50 m or higher for most applications in photogrammetric real-scene 3Dbuilding modeling. Thus, a limitation of the study is that we have not carried out tests with higher shooting altitudes. According to the authors of [14], the size of the GCTs should increase as the shooting distance increases. When the shooting altitude is 80 m, the point's diameter should be 24 cm and the size of a GCT should be 1.9 m in length and width. As the improved IPCT demands for every GCT to be on a plane, it is not convenient to make such a big GCT or carry such a big flat board for a GCT to be attached. Therefore, the limitations of the improved IPCT are that it is slightly difficult to apply the GCTs in UAV photogrammetry scenes with higher shooting distances, such as 200 m. Our UAV tests in this paper are just a preliminary experiment. We expect other researchers will develop methods with the advantage of using large-sized GCTs and higher shooting altitudes in the future. Furthermore, as our method is not applicable for situations of occlusion and blur, in the future, we will try to identify GCTs through referencing deep learning methods [32].

Conclusions
This paper proposed an innovative improved method for GSI-coded target identification based on an adaptive thresh Gaussian binarization, a gray cubic weighted centroid algorithm, and the invariance theory of PLDR, which possesses outstanding performance in binarization, precise ellipse-center localization, and template-point matching and decodingpoint matching. According to the data from extensive experiments and analyses of indoor, outdoor, and UAV scenes, the precision of ellipse-center localization by the gray cubic weighted centroid algorithm was very high and the PLDR was very reliable and effective. The proposed identification method achieved a comprehensive improvement compared with the state-of-the-art method and, at the same time, performed comparably to V-STARS or better for the UAV test. The proposed improvement can make identification more precise, accurate, robust, and self-adaptive, which is very important for applications with more complicated scenarios. Additionally, it has presented the potential to be used in 3D highprecision close-range photogrammetry. The contribution of this paper is that it provides an excellent and clear solution for identifying GSI-coded targets; thus, scholars and technicians can carry out research in this area without being constrained by commercial software.

Data Availability Statement:
The experimental data that support the findings of this study are openly available at the following URL/DOI: https://figshare.com/articles/software/GSI_CodedTarget_ Identification/20696923 (accessed on 1 April 2023).

Conflicts of Interest:
The authors declare no conflict of interest.