4.1. Cross-Source Point Cloud Registration Model
The cross-source point cloud registration model is described as a mathematical optimisation problem. Given two 3D point clouds with different coordinate systems, the optimal rigid transformation matrix is solved such that the relative spatial positions of the two clouds are aligned after the transformation. Let the mathematical expressions of the reference and target point clouds be as follows:
and
, where
ms and
nt are the number of data points that make up the point clouds, respectively. The conversion process can be described by the 3 × 3 rotation matrix (
R) and 3D translation vector (
T). They can be expressed by Equation (1), where
Vx,
Vy, and
Vz are the translation lengths along the direction of the spatial coordinate axis, and
θx,
θy, and
θz are the rotation angles around the spatial coordinate axis in the clockwise direction. The problem of multimodal point cloud spatial coordinate matching is abstracted as minimising the value of the
function in Equation (1). The root mean square (RMS) value of corresponding points is used to characterise the accuracy of multimodal point cloud spatial matching.
where
NS is the number of data points contained in the intersection region of the multimodal point cloud.
4.2. Point Cloud Data Processing
Both 3D laser scanning and UAV tilt photography mapping generate massive quantities of data, which must be downsampled, and feature points should be extracted to eliminate the impact of overly numerous points on subsequent storage, transfer, and computation. The collected cross-source data may contain outliers affecting the subsequent feature point extraction and registration stages, and noise points must be filtered out. Hence, cross-source point cloud data preprocessing involves noise filtering, downsampling, and feature point extraction. For noise filtering, the typical radius filtering method is employed. In what follows, downsampling and feature point extraction are discussed, which are special processes for deriving cross-source point cloud characteristics.
Point cloud downsampling involves extracting the least number of data possible from areas with small curvatures and the greatest number of data possible from areas with large curvatures [
38]. To simplify a point cloud swiftly without destroying its internal geometric features, a voxel filter is used. First, a 3D voxel grid coordinate system is created. Then, all the points inside each grid are replaced by the centroids inside each grid.
Feature points contain rich geometric feature information and can be used as an abstract representation of the original data shape. The point clouds of overlapping areas from different mapping systems and perspectives are relatively consistent. In this study, the intrinsic shape signature (ISS) [
39] detection method is utilised to find feature points. The algorithm is easy to implement and yields stable results. Assume there exists a point cloud
P containing
nt data points, and the point coordinates are denoted by
pm. The specific implementation steps are as follows:
- (1)
Define a local coordinate system for each point pm in the point cloud, P, and set the search radius, diss, for the neighbourhood query.
- (2)
Query all points in the region of
P centred on
pm with radius
diss. Calculate their weight values,
vmn:
- (3)
Calculate the covariance matrix corresponding to each point
pm:
- (4)
Calculate the eigenvalues, , of each covariance matrix, and rank them from largest to smallest.
- (5)
Set the threshold values
and
. The points satisfying the two following inequalities are considered feature points and kept:
4.3. Traditional HHO Algorithm
The HHO algorithm is a gradient-free algorithm proposed in 2019 [
37]. It solves the optimisation problem by simulating biological behaviours such as tracking, encircling, repelling, and attacking in the process of collaborative prey hunting by Harris hawk groups in nature, where each member of the Harris hawk population represents a candidate solution. The HHO algorithm consists of three phases: exploration, transition, and exploitation. When |
Ecv| ≥ 1, the Harris hawk algorithm performs a global exploration. In this stage, Harris hawks are randomly perched in a location, searching and tracking their prey through keen vision. The hawks select one of the two strategies with equal probabilities to determine the perching locations. When |
Ecv| < 1, the algorithm entered the exploitation phase, several Harris hawks swept up at the same time to form an encirclement and waited for the time of surprise attack. The HHO algorithm selects a suitable location update strategy based on two parameters: prey escape energy,
Ecv, and successful escape probability,
c.
Figure 2 is a simple example of the process through which a Harris hawk chases its prey. The whole search process of the algorithm is as follows:
In the above equation, Tmax represents the maximum number of times that the population can updated; Eiv denotes the initial escape energy corresponding to the algorithm when the prey perceives the crisis and starts to escape, which is a randomly distributed value on the range [−1, 1]; Ecv is the escape energy value after the tsth iteration; Oavg(ts) is the average value obtained after counting the positions of all population members; O(ts) is the position vector of the Harris hawk; Oprey(ts) denotes the position of the prey at the ts th iteration; Lmin and Lmax are the lower and upper boundaries that constrain the space of values taken by the candidate solutions; Or(ts) represents the current location of a random Harris hawk individual; q is the control parameter of the global search policy; q, e1, e2, e3, and e4 are all random values distributed in the range of [0, 1]; ΔO(ts) represents the positional distance between the Harris hawk and its prey in the tsth iteration; Sr is a two-dimensional vector composed of random numbers distributed on [0, 1]; f(·) denotes the adaptation value calculation for the current decision variable. Jr is a random value distributed in the range of [0, 2]. LF(·) indicates that the parameters are updated using Lévy flight for long- and short-distance searches.
4.4. TMCHHO
An excellent swarm intelligence optimisation algorithm must maintain diversity when the population is initialised [
40]. Thus, a global search is used to rapidly converge near the optimal solution after the optimisation task starts to execute, and the strong local convergence ability is maintained to fully explore the candidate solution space in its latter stage. The position vector at initialisation of the Harris hawk population is composed of normally distributed random numbers, thus increasing the time and computational costs of the global search. Furthermore, when the algorithm enters the development stage, the position update is prone to stagnation owing to the lack of learning among individuals of the population in a single iteration. This affects the accuracy of the algorithm for finding the best solution. To resolve these problems, the two following improvements are introduced:
- (1)
Mapping the PWLCM sequence to optimise the distribution of the initial population:
A reasonable initial solution for the population can increase the search space and accelerate the convergence of the population. Chaos [
41], as a nonlinear phenomenon in nature, has been widely used in swarm intelligence optimisation algorithms because of its ergodicity, randomness, and sensitivity to initial conditions. Presently, logistic chaotic maps are widely used in metaheuristic algorithms. Previous studies emphasise that PWLCM systems have unique advantages compared with logistic maps [
42,
43].
Figure 3a–d show the histograms and point distribution diagrams of the logistic map and PWLCM system, respectively.
Figure 3 indicates that the probability of the logistic sequence in [0, 0.1] and [0.9, 1] is higher than that in other intervals. The PWLCM sequence exhibits better randomness and ergodicity. In this study, the PWLCM system is mapped into the value space of the optimisation variables, thus replacing the pseudo-random numbers in initialising the population of Harris hawks and reducing the influence of insufficient population diversity on the global exploration capacity. The expression for the PWLCM system mentioned above is as follows:
In the above formula, the value range of the control parameter tcr is (0, 0.5), which is set to 0.4 in this paper; ; and rk and rk+1 are the chaotic numbers in the chaotic sequence.
- (2)
Introduction of trigonometric mutation to improve location update strategies:
Trigonometric mutation [
44] refers to randomly extracting three mutually different solutions, i.e.,
Zt1,n,
Zt2,n, and
Zt3,n, as vertices in the population. Moreover, the vector differences, i.e.,
,
, and
, are used as the side lengths of the hypergeometric triangular search space. Three fitness values
f(
Zt1,n),
f(
Zt2,n), and
f(
Zt3,n) are used to perturb the stagnant population. In the development stage of the Harris hawk algorithm, a trigonometric mutation is introduced to control the population to always mutate toward the individual with the optimal objective function value and adaptively adjust the forward progress of each Harris hawk to improve the learning ability among the individuals of the population in each iteration. The equation for trigonometric mutations is derived as follows:
In the above, f(Ztm,n) represents the objective function value of the current individual; K is the sum of the objective function values of the three extracted solutions; k1, k2, and k3 are the ratios of the corresponding function values; td1, td2, and td3 represent the forward progress along the directions of three individuals, respectively; and orm,n is the Gaussian distribution scaling factor, that is, orm,n~N(0, β). In this paper, β is set to 0.1.
The centre point of the hypergeometric triangle search space is used as the base vector position, and the individual mutation direction and step size are controlled by the weighted vector. When
, the base vector moves towards individual
Zm. When
, the base vector moves towards individual
Zn, ensuring that the candidate solution updates its position in the direction of the better individual at each iteration. As shown in
Figure 4, when
, the individual moves in direction
Zt3,n, which has the smallest objective function value. Furthermore, the Gaussian distribution factor,
orm,n, regulates the degree of trigonometric mutation perturbation.
Figure 5 shows the flowchart of the TMCHHO algorithm.