A method and system for repositioning an unmanned vehicle based on reflective columns
By setting up multiple reflective columns in the underground environment and building a reflective column feature database, the kdtree algorithm is used for rapid matching, which solves the problem of low positioning accuracy of driverless vehicles in the underground environment, and achieves high-precision and high-reliability vehicles Relocation.
Patent Information
- Application Number
- CN202410777318.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-06-17
- Publication Date
- 2024-12-27
- Estimated Expiration
- 2044-06-17
AI Technical Summary
In complex underground terrain environments, the positioning accuracy of driverless vehicles is low. The existing technologies such as inertial navigation, visual odometers and laser SLAM perform poorly under the influence of light changes, dust and dynamic obstacles, resulting in reduced positioning accuracy or Tracking is missing.
By selecting the positioning reference points of multiple unmanned vehicles in the underground environment and setting reflective columns with different numbers and spacings at each reference point, the vehicle-mounted lidar sensor collects point cloud data of reflective columns and performing point intensity extraction and removal Noise processing and clustering analysis, a reflective column feature database was constructed, and the kdtree algorithm was used for rapid matching to achieve vehicle repositioning.
It improves the repositioning accuracy and reliability of driverless vehicles in underground environments, simplifies the repositioning process, reduces the computational complexity, and ensures the continuous operation and driving safety of the vehicle in complex environments.
Smart Images

Figure CN118731971B_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of unmanned driving, and in particular to a method and system for repositioning an unmanned vehicle based on reflective columns. Background Art
[0002] As modern mining develops towards deeper and more complex geological conditions, the underground working environment is becoming increasingly harsh, which poses a great safety hazard to traditional manual operations. Unmanned vehicles, with their advantages of high efficiency, safety, and intelligence, are increasingly widely used in underground environments and have become an important means for modern mines to achieve automated and unmanned mining.
[0003] Unmanned vehicles need to achieve autonomous navigation and operation in complex and changeable underground environments, and accurate and reliable positioning is the core foundation. Traditional unmanned vehicle positioning technologies mainly include inertial navigation, visual odometer, laser SLAM and other methods. Inertial navigation is affected by the drift of inertial components, and long-term use will produce large cumulative errors. Visual odometers are easily affected by changes in lighting and missing image features, and perform poorly in low-light, dusty, and featureless underground environments. Although laser SLAM technology has achieved good results in map construction and positioning, it will also have problems with reduced positioning accuracy or even tracking loss under interference from complex terrain, dynamic obstacles, etc.
[0004] In the related art, for example, Chinese patent document CN115856911A provides a positioning method and device, which also includes: obtaining the historical three-dimensional point cloud data of the vehicle's surrounding environment collected by the positioning acquisition device, and constructing an indoor environment point cloud map; extracting the position information of all reflective columns in the indoor environment point cloud map; locating the position information of the vehicle based on the position information of all reflective columns in the indoor environment point cloud map. However, this solution directly extracts the position information of all reflective columns in the indoor environment point cloud map. Under the complex terrain conditions of the underground environment, the reflective column point cloud is easily affected by factors such as occlusion and scattering, resulting in inaccurate extracted reflective column position information, which in turn affects the vehicle positioning accuracy. Summary of the invention
[0005] In response to the problem of low repositioning accuracy of unmanned vehicles in complex terrain conditions in underground environments in the prior art, the present application provides a method and system for repositioning unmanned vehicles based on reflective columns. By selecting multiple positioning reference points of unmanned vehicles in the underground environment, and setting reflective columns with different numbers and spacings at each positioning reference point, the accuracy of vehicle repositioning is improved.
[0006] The purpose of this application is achieved through the following technical solutions.
[0007] One aspect of the present specification provides a method for relocating an unmanned vehicle based on reflective columns, comprising: S1, selecting multiple positioning reference points of unmanned vehicles in an underground mining environment, including the starting point of the unmanned vehicle and areas with severe environmental degradation; arranging at least three reflective columns at each positioning reference point, the number of reflective columns arranged at different reference points and the distances between them are not the same, but it is necessary to ensure that the laser radar sensor on the unmanned vehicle can stably scan all the arranged reflective columns at one time from the reference point; the reflective columns are coated with a high-reflectivity material; the reflective material coated on the reflective columns is a high-reflectivity material to improve the scanning accuracy of the laser radar sensor.
[0008] S2, the unmanned vehicle moves to a location where reflective columns are arranged, and collects reflective column point cloud data of the surrounding environment through the on-board laser radar sensor; performs point intensity extraction processing on the collected reflective column point cloud data, and extracts laser radar points with point intensities greater than a preset intensity threshold as high-intensity reflection points of the reflective columns; the threshold is a preset laser radar point intensity threshold, which is used to screen out high-intensity reflection points of the reflective columns.
[0009] S3, denoising the obtained high-intensity reflection points of the reflective column; clustering the denoised reflective column point cloud data to obtain the geometric center of each cluster; calculating the Euclidean distance between the geometric center points of each cluster as the side length L of the reflective column i ; Use statistical filtering method to remove noise from high-intensity reflection points of reflective columns. S4, at each positioning reference point, change the side length L of the reflective column i Marked in order as reflective column feature a i 、b i and c i ; Among them, a i represents the shortest side length, b i represents the middle side length, c i Indicates the longest side length; according to the reflective column feature a i 、b i and c i , and the corresponding vehicle position coordinates (X v ,Y v ,Z v ), construct a reflective column feature database, establish a mapping relationship between reflective column features and vehicle positions; store the reflective column feature database based on the kdtree algorithm; S5, when the unmanned vehicle is started or the positioning fails, collect the reflective column point cloud data, and execute steps S2 and S3 to obtain the reflective column feature x to be matched at the current vehicle position search ,y search , z search ; S6, obtain the reflective column feature x to be matched search ,y search , zsearch Input into the reflective column feature database based on the kdtree algorithm, perform search and match, obtain the kdtree tree node with the smallest Euclidean distance to the reflective column feature to be matched, and obtain the historical reflective column feature index corresponding to the node; S7, according to the historical reflective column feature index, query in the reflective column feature database to obtain the historical vehicle position coordinates (X v ',Y v ',Z v '), (X v ',Y v ',Z v ') as the relocation position of the unmanned vehicle to complete the vehicle relocation.
[0010] Among them, reflective columns are a commonly used road traffic facility, usually installed at the edge or center of the road to reflect the light of vehicle headlights, improve road recognition and driving safety at night or in bad weather. Reflective columns generally adopt a cylindrical or columnar structure, and the surface is coated with a reflective material with high reflective performance. In the field of unmanned driving, by arranging reflective columns at fixed positions and extracting their point cloud features, a reference map can be constructed to achieve vehicle positioning. Reflective materials are a type of material that can efficiently reflect light or other electromagnetic waves. Common ones include mirror reflective materials (such as metal coatings) and retroreflective materials (such as frosted glass, reflective film). Among them, retroreflective materials can reflect incident light back to its original direction and are widely used in the fields of lighting and display. The surface of the reflective column usually adopts a special retroreflective coating, which makes it present high-brightness reflective characteristics under the illumination of vehicle headlights, which is conducive to the accurate recognition of lidar and visual sensors. Reflective column features refer to a series of geometric and topological descriptors extracted from reflective column point cloud data, which are used to characterize the spatial distribution and structural characteristics of reflective columns. Common ones include cluster center coordinates, side lengths, normal vectors, etc. By designing appropriate feature representations, the data dimension of reflective column point clouds can be reduced and the efficiency of scene understanding and matching can be improved. At the same time, reflective column features generally have good discrimination and robustness, and can be stably matched and identified under different viewing angles, distances and occlusion conditions, which is the key to positioning and mapping. Kdtree (k-dimensional tree) is a commonly used spatial data indexing algorithm. It organizes data points into a balanced binary tree structure by recursively dividing the k-dimensional space into two parts. Kdtree can transform spatial search problems into tree traversal problems, support fast nearest neighbor queries, range queries and other operations, and the time complexity can reach O (logn). In autonomous driving, kdtree is often used to accelerate tasks such as point cloud registration, map construction, and obstacle detection. By pre-building a kdtree index of reflective column features, the feature matching speed during vehicle positioning can be greatly improved. Vehicle relocalization refers to the process of estimating the current position (position and direction) of the vehicle by sensing the surrounding environment, matching the reference map, and when the position of the unmanned vehicle shifts or the positioning system fails. Vehicle relocalization is one of the core functions of the unmanned driving system and directly affects the driving safety and control performance of the vehicle. Usually, relocalization requires on-board sensors to extract specific environmental features (such as reflective columns, road markings, terrain, etc.) and match them with pre-built high-precision maps to obtain the position transformation of the vehicle relative to the map coordinate system. Efficient and accurate relocalization algorithms can ensure the continuous operation of vehicles in complex environments and are the key to achieving long-term autonomous navigation.
[0011] Wherein, in step S2, the reflective column point cloud data is collected, and the collected reflective column point cloud data is subjected to point intensity extraction processing to obtain the reflective column high-intensity reflection point, including the following steps: S21, the laser radar sensor on the unmanned vehicle scans 360° at each positioning reference point to collect the reflective column point cloud data to obtain a three-dimensional point cloud data set; wherein the three-dimensional point cloud data set includes the spatial coordinates (x, y, z) of the reflective column reflection point in the laser radar coordinate system and the corresponding laser reflection intensity I; S22, for each point cloud data point in the three-dimensional point cloud data set, extract its laser reflection intensity I, and compare the laser reflection intensity I with a preset laser reflection intensity threshold IT h Compare; S23, select the laser reflection intensity I greater than the threshold IT h point cloud data points as candidate high-intensity reflection points of reflective columns; S24, further screening out point cloud data points whose spatial coordinates (x, y, z) meet preset spatial position conditions among the candidate high-intensity reflection points of reflective columns, as final high-intensity reflection points of reflective columns; wherein the preset spatial position conditions are pre-set according to the spatial arrangement characteristics of the reflective columns; S25, inputting the screened high-intensity reflection points of reflective columns into step S3, and performing subsequent denoising and clustering processing of the high-intensity reflection points of reflective columns.
[0012] Point cloud data refers to a large number of discrete spatial points collected by 3D scanning equipment (such as LiDAR, depth camera, etc.), each of which contains its 3D coordinate information and properties such as reflection intensity. Point cloud data can intuitively represent the geometric shape and spatial distribution of objects, and is widely used in 3D modeling, reverse engineering, autonomous driving and other fields. In autonomous driving, on-board LiDAR obtains dynamic point cloud data by scanning the road environment for obstacle detection, scene understanding and positioning matching.
[0013] Preferably, the high-intensity reflection points of the reflective columns obtained in step S2 are denoised by a statistical filtering method based on the spatial distribution characteristics of the high-intensity reflection points of the reflective columns, specifically: calculating the mean and variance of the spatial coordinates of all the high-intensity reflection points of the reflective columns; determining the spatial distribution threshold range of the high-intensity reflection points of the reflective columns based on the mean and variance; filtering out the high-intensity reflection points of the reflective columns that are not within the spatial distribution threshold range, to obtain the denoised high-intensity reflection points of the reflective columns.
[0014] Furthermore, in S1, different numbers of reflective columns are arranged at different positioning reference points, and the distances between the reflective columns are different.
[0015] Furthermore, in S3, the obtained reflective column high-intensity reflection points are subjected to denoising, including: for each reflective column high-intensity reflection point P in the reflective column high-intensity reflection point set, i , calculate P iThe Euclidean distance to all other high-intensity reflection points of the reflective column; select the distance P i The nearest MinPts points constitute point P i The local neighborhood of MinPts is a preset positive integer; the average value of the distance between the high-intensity reflection point Pi of the reflective column and all points in the corresponding local neighborhood is calculated as the reflection point P i The local reachable density value; for each high-intensity reflection point P in the set of high-intensity reflection points of the reflective column i , calculate P i The local outlier factor LOF value of point P i The local reachability density average of all points in the local neighborhood of point P i The ratio of the local reachable density value to the local reachable density value; the LOF value greater than the threshold T h The high-intensity reflection points of the reflective column are judged as noise points; the noise points are removed from the set of high-intensity reflection points of the reflective column to obtain the denoised high-intensity reflection points of the reflective column.
[0016] Among them, the local neighborhood refers to a local area around the data point, which is usually composed of the k nearest neighbors to the point or all points whose distance is less than a given threshold. The local neighborhood reflects the distribution characteristics of the data point in the local space and is the basis for tasks such as anomaly detection, density estimation, and cluster analysis. By examining the similarities or differences between the data point and the points in its local neighborhood, the inherent structure and regularity of the data can be discovered. In the reflective column denoising algorithm, the local neighborhood of each high-intensity reflection point is calculated, and then its local reachable density is estimated to evaluate whether the point is an outlier or noise. LOF (Local Outlier Factor) is a density-based local outlier detection indicator used to measure the degree of outlier of a data point relative to its local neighborhood. The calculation of the LOF value is based on the local reachability density of the data point, which reflects the closeness of the point to the surrounding points. Specifically, the LOF value is equal to the ratio of the average local reachability density of all points in the local neighborhood of the point to the local reachability density of the point itself. The larger the LOF value, the greater the difference between the data point and the surrounding points, and the more likely it is an outlier or noise. By setting the LOF threshold, outliers in the data can be automatically identified and filtered to improve data quality. Hierarchical clustering is an important cluster analysis method that recursively merges or splits data points to generate a cluster tree (Dendrogram) to describe the hierarchical structure of the data. Hierarchical clustering can be divided into two strategies: agglomerative and divisive. Among them, the agglomerative strategy initially regards each data point as an independent cluster, and then iteratively merges the most similar clusters until the termination condition is met; the divisive strategy starts with a large cluster containing all data points and continuously splits it into smaller clusters. The advantage of hierarchical clustering is that there is no need to pre-specify the number of clusters, and it can generate a hierarchical structure of data, which is easy to explain and display. Cluster refers to the result of cluster analysis, which represents a set of data points that are similar in some characteristics or properties. The data points within a good cluster should be highly similar, while the data points between different clusters are quite different. Clusters reflect the inherent distribution and organizational structure of the data and can reveal the potential patterns and relationships of the data. In the reflective column clustering algorithm, high-intensity reflection points are classified into several clusters through a hierarchical clustering method, and each cluster corresponds to an independent reflective column object. The center of the cluster can be used to characterize the spatial position of the reflective column, and the distribution characteristics of the points in the cluster describe the geometric shape of the reflective column. The cluster is the basic unit for realizing reflective column extraction and feature calculation.
[0017] Furthermore, in S3, clustering processing is performed on the denoised reflective column point cloud data to obtain the geometric center of each cluster, including: calculating the Euclidean distance between the denoised reflective column high-intensity reflection points and constructing a distance matrix between the reflective column high-intensity reflection points; based on the obtained distance matrix, calculating the similarity between the reflective column high-intensity reflection points to obtain a similarity matrix; initializing each reflective column high-intensity reflection point as an independent cluster, and merging the clusters using a hierarchical clustering method based on the obtained similarity matrix; for each merged cluster C, calculating the geometric center of all the reflective column high-intensity reflection points in cluster C as the center point coordinates (X c ,Y c ,Z c ).
[0018] Further, the similarity between the high-intensity reflection points of the reflective column is calculated to obtain a similarity matrix, including: for each high-intensity reflection point i of the reflective column in the distance matrix, according to the Euclidean distance between point i and all other high-intensity reflection points of the reflective column, the k high-intensity reflection points of the reflective column closest to point i are selected as the k nearest neighbors of point i, and the indexes of the k nearest neighbor points of point i are stored in the k nearest neighbor list corresponding to point i, where k is a positive integer; an N*N shared nearest neighbor similarity matrix is initialized, where N is the total number of high-intensity reflection points of the reflective column after denoising; each pair of high-intensity reflection points i and j of the reflective column are traversed; the k nearest neighbor lists corresponding to points i and j are extracted, and the number of high-intensity reflection points of the reflective column contained in the two k nearest neighbor lists is calculated, which is recorded as S ij ; Calculate the number of high-intensity reflection points of the reflective column contained in the k-nearest neighbor list of point i and point j, respectively, denoted as K i and K j ; Calculate the shared nearest neighbor similarity Sim between point i and point j ij ; Fill the shared nearest neighbor similarity Simij of point i and point j into the corresponding positions (i, j) and (j, i) of the shared nearest neighbor similarity matrix; Repeat the above steps until the shared nearest neighbor similarity matrix is filled, and output the obtained similarity matrix.
[0019] Among them, k-nearest neighbors (k-NN) refer to the k data points closest to a given data point, which are usually selected based on Euclidean distance or other similarity metrics. K-nearest neighbors can reflect the neighborhood characteristics of data points in local space and are widely used in pattern recognition, machine learning and other fields. Common k-nearest neighbor-based algorithms include k-NN classification, k-NN regression, k-NN density estimation, etc. By examining the k-nearest neighbors of a data point, its category, attribute or distribution can be inferred and predicted. In the reflective column clustering algorithm, the k-nearest neighbors of each reflective column high-intensity reflection point are calculated to construct a shared nearest neighbor similarity matrix, thereby realizing hierarchical clustering of the reflective column point cloud. The shared nearest neighbor similarity matrix (SharedNearestNeighborSimilarityMatrix) is a matrix used to measure the similarity between data points, in which each element represents the shared nearest neighbor similarity of two data points. The calculation of shared nearest neighbor similarity is based on the k-nearest neighbor lists of the two data points, reflecting the degree of overlap in their local neighborhood.
[0020] Specifically, the shared nearest neighbor similarity is equal to the ratio of the number of k nearest neighbors shared by two data points to the sum of the number of their respective k nearest neighbors. The shared nearest neighbor similarity matrix is a symmetric matrix with elements on the main diagonal being 1, indicating that the similarity between each data point and itself is 1. Unlike traditional global similarity metrics such as Euclidean distance, shared nearest neighbor similarity can characterize the neighborhood structure of data points in local space and is more robust to noise and outliers. By constructing a shared nearest neighbor similarity matrix between high-intensity reflection points of reflective columns by Replace, their similarity can be accurately evaluated, providing a reliable basis for subsequent hierarchical clustering. The shared nearest neighbor similarity matrix is widely used in algorithms such as spectral clustering and hierarchical clustering.
[0021] Furthermore, the shared nearest neighbor similarity Sim between point i and point j is calculated ij ,in Among them, S ij K represents the number of high-intensity reflection points of reflective columns contained in the k-nearest neighbor lists of points i and j; i K represents the number of high-intensity reflection points of the reflective column contained in the k-nearest neighbor list of point i; j W represents the number of high-intensity reflection points of the reflective column included in the k-nearest neighbor list of point j; ij represents the similarity weight between point i and point j, which is used to measure the similarity between two points; k is a positive integer, representing the number of selected nearest neighbor points.
[0022] Introducing S in the denominator ij Items, that is, the number of intersections of the k nearest neighbor lists of point i and point j.ij The purpose of the term is to avoid repeated calculation of the common neighbors of two points when calculating the similarity, thereby improving the accuracy of the similarity calculation. i +K j -S ij represents the number of unions of the k nearest neighbor lists of point i and point j, but in the process of calculating the union, by subtracting S ij The common neighbors of two points are excluded, avoiding repeated calculations. The similarity weight W is introduced when calculating the shared nearest neighbor similarity. ij . Similarity weight W ij is a real number between 0 and 1, used to quantify the similarity between point i and point j. ij = 1, it means that point i and point j are completely similar; when W ij = 0, it means that point i and point j are completely dissimilar. By introducing similarity weights, the similarity relationship between different point pairs can be more flexibly characterized, and the accuracy of shared nearest neighbor similarity calculation can be improved. ij ×W ij Represents the number of common neighbors of point i and point j S ij and the similarity weight W ij The product of K reflects the combined influence of the number of shared neighbors and the degree of similarity between two points. i +K j -S ij ×W ij represents the number of the union of the k nearest neighbor lists of point i and point j, and is obtained by subtracting S ij ×W ij The common neighbors of two points are excluded, while the influence of similarity weight is taken into account.
[0023] Furthermore, each high-intensity reflection point of the reflective column is initialized as an independent cluster, and based on the obtained similarity matrix, the clusters are merged using a hierarchical clustering method, including: calculating C i All high-intensity reflection points of reflective columns in C j The minimum similarity between all high-intensity reflection points of the reflective column in C i and C j The minimum similarity MinSim(C i ,C j ); among the minimum similarities between the current clusters, select the largest minimum similarity MaxMinSim, and merge the corresponding two clusters into a new cluster; determine whether the number of current clusters is greater than the preset cluster number threshold, and whether MaxMinSim is greater than the preset similarity threshold; if so, continue to merge the clusters, otherwise, output the current cluster set as the clustering result.
[0024] Among them, the cluster merging step introduces the minimum similarity between clusters as the judgment basis for cluster merging. Each time the cluster to be merged is selected, the minimum similarity between the current clusters is calculated first, and then the two clusters corresponding to the maximum value of the minimum similarity are selected for merging. This method can avoid cluster merging errors caused by the high or low similarity of high-intensity reflection points of individual reflective columns, thereby improving the accuracy of clustering. At the same time, the improved cluster merging step adds the judgment of cluster stop conditions, that is, clustering is stopped when the number of clusters is less than or equal to the preset threshold or the maximum and minimum similarities are less than or equal to the preset threshold. The setting of this double stop condition can avoid the problem of reduced similarity within the clusters due to excessive clustering while ensuring the control of the number of clusters, thereby improving the efficiency and accuracy of clustering.
[0025] Furthermore, in step S4, the reflective column feature database is stored based on the kdtree algorithm, including: obtaining all reflective column feature points in the constructed reflective column feature database, each reflective column feature point includes the coordinates and reflective intensity value of the reflective column; according to the coordinates of the reflective column feature points, an m-dimensional binary tree structure is constructed using the kdtree algorithm as an index of the reflective column feature database; at each leaf node of the constructed kdtree index, an inverted index method based on the reflective intensity value is used to construct an array containing the reflective intensity values of all reflective columns under the corresponding leaf node, and each element in the array is the reflective intensity value of a reflective column feature point; at each leaf node of the kdtree index, a fixed-length encoding method is used to compress and store the constructed reflective intensity array. A compressed reflective intensity array is obtained; at each leaf node of the kdtree index, the compressed reflective intensity array is stored to obtain an enhanced kdtree index structure; and the constructed reflective column feature database is organized, stored and indexed using the obtained enhanced kdtree index structure.
[0026] Among them, the m-dimensional binary tree is a tree data structure used to organize and retrieve high-dimensional spatial data, in which each node represents a partitioned area of the m-dimensional space, and each internal node contains a partition dimension and a partition value, which divides the space into two non-intersecting sub-areas, corresponding to the left and right subtrees of the node. The m-dimensional binary tree recursively divides the m-dimensional space into two parts, assigns data points to different subtrees, and realizes hierarchical organization of the space. Common m-dimensional binary tree variants include kdtree and octree. In the index of the reflective column feature database, kdtree is used to construct an m-dimensional binary tree structure, and each node corresponds to an m-dimensional space area containing several reflective column feature points, which is convenient for fast retrieval and matching. Inverted index is a commonly used information retrieval technology that accelerates the query process by mapping keywords to documents. Unlike the forward index (mapping documents to keywords), the inverted index constructs a list of all documents containing the keyword for each keyword, which is called the inverted list. When searching, by locating the keyword in the inverted list, all documents containing the keyword can be quickly obtained, avoiding full-text search. In the reflective column feature database, an inverted index based on the reflective intensity value is used. The intensity value of each reflective column feature point is used as the keyword, and an inverted list from the intensity value to the feature point is constructed on the leaf node of the kdtree to accelerate the similarity matching of the feature points.
[0027] Fixed-Length Encoding is a simple data compression method that represents each data element as a fixed-length binary code. Fixed-length encoding achieves compact storage and fast decoding of data by agreeing on the encoding length and format in advance. Common fixed-length encodings include ASCII encoding and Unicode encoding. In the reflective column feature database, the reflective intensity array on the leaf node of kdtree is compressed using fixed-length encoding to reduce storage overhead and improve data locality. The enhanced kdtree index structure is based on the traditional kdtree and introduces reflective intensity inverted list and fixed-length encoding to achieve efficient indexing and storage of the reflective column feature database. By constructing an inverted index of reflective intensity values on the leaf nodes of kdtree, the similarity matching of feature points is accelerated; fixed-length encoding is used to compress the reflective intensity array to reduce storage overhead. The enhanced kdtree index structure combines space partitioning, inverted indexing and data compression methods to improve the retrieval efficiency and storage performance of the reflective column feature database, and better support feature matching and position estimation tasks in vehicle relocation.
[0028] Among them, the improved kdtree nearest neighbor search algorithm introduces an inverted index based on the reflective intensity value and data compression technology on the leaf nodes of the kdtree index, which improves the efficiency of the reflective column matching search while reducing the index storage overhead. Specifically, kdtree is first used to perform a fast nearest neighbor search in the xyz coordinate space to narrow the search range; then, the compressed reflective intensity array is used for precise matching to improve the matching accuracy.
[0029] Preferably, after the reflective column feature database is organized, stored and indexed using the enhanced kdtree index structure, the following steps are also included: S47, in step S5, when the cluster center point coordinates output by step S3 are matched with the reflective column feature database constructed by step S1, the cluster center point coordinates are first input into the root node of the enhanced kdtree index obtained by step S46, and then the kdtree nearest neighbor search algorithm is used to recursively search down the child nodes of the kdtree until a leaf node is found; S48, extracting the compressed reflective intensity array stored in the leaf node searched by step S47, and decompressing it to obtain the reflective intensity values of all reflective column feature points under the leaf node; S49, calculating step S40. The mean reflection intensity of the center point of the cluster outputted in step S3 is compared with all reflection intensity values obtained in step S48, and the reflection column feature point closest to the mean reflection intensity of the center point of the cluster is selected as the candidate matching point; S50, repeating steps S47 to S49 until all the center points of the cluster outputted in step S3 are traversed to obtain a set of candidate matching points of all the center points of the cluster; S51, for each center point of the cluster, performing Euclidean distance calculation on its xyz coordinates and the xyz coordinates of all the candidate matching points in the set of candidate matching points, selecting the candidate matching point with the closest distance as the best matching point of the center point of the cluster, and taking the reflection column number of the best matching point as the identification number of the cluster, so as to achieve matching and identification of the reflection column.
[0030] Preferably, the m-dimensional binary tree structure is a balanced m-dimensional binary tree structure. The inverted index method specifically includes: extracting the reflective intensity values of all reflective column feature points under each leaf node of the kdtree index to construct a reflective intensity value array; sorting the constructed reflective intensity value array to obtain an ordered reflective intensity value array; using the ordered reflective intensity value array, constructing an inverted index table, each element of the index table includes a reflective intensity value and the position information of the reflective intensity value in the ordered array. In the enhanced kdtree index structure, on each leaf node, the quantity information of the reflective column feature points contained in the leaf node is also stored. When using the enhanced kdtree index to perform a matching query on the reflective column feature points, the following steps are included: the coordinates of the reflective column feature points to be matched are input into the root node of the enhanced kdtree index, and the kdtree nearest neighbor search algorithm is used to recursively search the child nodes of the kdtree downward until a leaf node is searched; the compressed reflective intensity array stored in the searched leaf node is extracted and decompressed to obtain the reflective intensity values of all reflective column feature points under the leaf node; the reflective intensity value of the reflective column feature point to be matched is calculated, compared with all the reflective intensity values obtained by decompression, and the reflective column feature point with the closest reflective intensity value is selected as the best matching point.
[0031] Furthermore, the fixed-length encoding method adopts the Huffman coding method. Huffman coding is a lossless data compression algorithm based on the frequency of character occurrence. It achieves data compression and decompression by assigning shorter codes to frequently occurring characters and longer codes to rare characters. Huffman coding constructs an optimal prefix code tree (Huffman Tree) based on the frequency of characters to ensure the unique decodability of the code. Compared with fixed-length coding, Huffman coding can dynamically adjust the code length according to the statistical characteristics of the data to achieve a higher compression rate. In the reflective column feature database, Huffman coding is used to compress the reflective intensity array on the leaf node of kdtree to further reduce storage overhead and improve data transmission and loading efficiency.
[0032] Another aspect of the present specification provides a system for relocating an unmanned vehicle based on reflective columns, comprising: at least one processing unit; and a method for executing instructions to implement relocating an unmanned vehicle based on reflective columns.
[0033] Compared with the prior art, the advantages of this application are:
[0034] The present application increases the diversity and uniqueness of the distribution of reflective columns by setting reflective columns of different numbers and spacings at positioning reference points in the underground environment. The combination of reflective columns at different positions forms a unique geometric distribution feature, so that the reflective column features at different positions have a high degree of distinction. When relocating a vehicle, the location of the vehicle can be accurately identified by matching the currently collected reflective column features with the historical reflective column features, thereby improving the accuracy of relocation. At the same time, as an artificially set positioning reference object, the reflective column has a stable and reliable geometric distribution feature that is not easily affected by changes in the underground environment, thereby ensuring the reliability of vehicle relocation.
[0035] This application uses point intensity extraction, a denoising method based on local outlier factors, and a clustering method based on shared nearest neighbor similarity to process the collected reflective column point cloud data. Through point intensity extraction, the high-intensity reflection points of the reflective column can be accurately extracted from the point cloud data, and the background noise can be filtered out. The denoising method based on local outlier factors can effectively identify and eliminate noise points by calculating the local reachable density and local outlier factor of each high-intensity reflection point of the reflective column, and obtain a stable and reliable set of high-intensity reflection points of the reflective column. The clustering method based on shared nearest neighbor similarity comprehensively considers the local neighborhood structure similarity between the high-intensity reflection points of the reflective column, and can accurately cluster the high-intensity reflection points of the reflective column to obtain the clustering center of each reflective column. These processing steps effectively filter out noise interference and extract stable and reliable reflective column features, laying the foundation for the subsequent construction of a high-quality reflective column feature database.
[0036] This application constructs a mapping relationship database between reflective column features and vehicle positions, and uses an enhanced kdtree index structure for storage and retrieval. Organizing the reflective column features into an m-dimensional binary tree structure according to the kdtree algorithm can quickly narrow the search range and reduce the retrieval complexity. Introducing the inverted index and Huffman coding compression of the reflective intensity value on the leaf nodes of the kdtree index further improves the retrieval efficiency and storage performance. Using the enhanced kdtree index structure, fast and accurate matching retrieval can be achieved in the reflective column feature database. When the unmanned vehicle is started or the positioning fails, by collecting the reflective column point cloud data of the current vehicle position, extracting the reflective column features to be matched, and using the enhanced kdtree index to search and match in the reflective column feature database, the historical reflective column features that best match the current reflective column features can be quickly found, the corresponding historical vehicle position coordinates can be obtained, and the real-time relocation of the vehicle can be achieved.
[0037] This application directly uses the historical vehicle position coordinates obtained by matching the reflective column features as the relocation position of the unmanned vehicle, avoiding complex position calculations and coordinate conversions, and simplifying the relocation process. By pre-building a reflective column feature database and establishing a mapping relationship between reflective column features and vehicle positions, the relocation process only requires the collection and matching retrieval of reflective column features to directly obtain the vehicle position coordinates, meeting the needs of real-time relocation of unmanned vehicles. The simplified relocation process reduces the computational complexity and shortens the relocation time, allowing the unmanned vehicle to quickly complete relocation when positioning failure is detected, ensuring the continuity and safety of the driving process. BRIEF DESCRIPTION OF THE DRAWINGS
[0038] Figure 1 is an exemplary flow chart of a method for relocating an unmanned vehicle based on reflective columns according to some embodiments of this specification;
[0039] Figure 2 is a schematic diagram of the installation position of the reflective column according to some embodiments of this specification;
[0040] Figure 3 is an exemplary flow chart of constructing a similarity matrix according to some embodiments of this specification;
[0041] Figure 4 is an exemplary flowchart of vehicle repositioning according to some embodiments of the present specification. DETAILED DESCRIPTION
[0042] The method and system provided in the embodiments of this specification are described in detail below with reference to the accompanying drawings.
[0043] Figure 1 This is an exemplary flow chart of a method for relocating an unmanned vehicle based on reflective columns according to some embodiments of the present specification. A method for relocating an unmanned vehicle based on reflective columns includes: selecting multiple positioning reference points of unmanned vehicles in an underground environment, the positioning reference points including the starting point of the unmanned vehicle; setting at least three reflective columns at each positioning reference point; the reflective columns are coated with reflective materials; collecting reflective column point cloud data; performing point intensity extraction processing on the collected reflective column point cloud data, extracting points with point intensity greater than a threshold as reflective column high-intensity reflection points; denoising the obtained reflective column high-intensity reflection points; clustering the denoised reflective column point cloud data to obtain the geometric center of each cluster cluster; calculating the Euclidean distance between the geometric center points of each cluster as the side length L of the reflective column i ; At each positioning reference point, the side length L of the reflective column i Marked in order as reflective column feature a i 、b i and c i; Among them, a i represents the shortest side length, b i represents the middle side length, c i Indicates the longest side length; according to the reflective column feature a i 、b i and c i , and the corresponding vehicle position coordinates (X v ,Y v ,Z v ), construct a reflective column feature database, establish a mapping relationship between reflective column features and vehicle positions; store the reflective column feature database based on the kdtree algorithm; when the unmanned vehicle is started or the positioning fails, collect the reflective column point cloud data to obtain the reflective column feature x to be matched at the current vehicle position search ,y search , z search ; The obtained reflective column feature x to be matched search ,y search , z search Input it into the reflective column feature database based on the kdtree algorithm, perform search and match, obtain the kdtree tree node with the smallest Euclidean distance to the reflective column feature to be matched, and obtain the historical reflective column feature index corresponding to the node; according to the historical reflective column feature index, query the reflective column feature database to obtain the historical vehicle position coordinates (X v ',Y v ',Z v '), (X v ',Y v ',Z v ') as the relocation position of the unmanned vehicle to complete the vehicle relocation.
[0044] Figure 2 It is a schematic diagram of the installation position of the reflective column shown in some embodiments of this specification. Data collection: In the underground environment, select appropriate locations to arrange multiple positioning reference points of unmanned vehicles. The selection of positioning reference points needs to comprehensively consider factors such as the layout of underground tunnels, the driving route of the vehicle, and the obstruction of the field of vision to ensure that each reference point can cover the key position of the vehicle. At the same time, a certain distance must be maintained between adjacent reference points to avoid being too dense and affecting the positioning effect. Among them, the starting position of the unmanned vehicle is set as a special positioning reference point as the initial benchmark for vehicle repositioning.
[0045] At each selected positioning reference point, at least three reflective columns are set. The reflective columns are made of materials that meet mining safety standards, and the surface is coated with high-reflectivity reflective paint or attached with reflective film to ensure that they have obvious high-intensity reflective characteristics under laser radar scanning, and are easy to identify and extract from the environmental background.
[0046] The layout of reflective columns adopts a combination of unequal-sided triangles or irregular quadrilaterals. For three reflective columns, they are arranged into an unequal-sided triangle, and the length ratio of the longest side, the second longest side and the shortest side of the triangle should be obviously different from other reference points. For four or more reflective columns, they are arranged into an irregular quadrilateral or polygon, and the distances between adjacent reflective columns are different and the distance combination is unique. By making comprehensive use of the differences in the number and distance of reflective columns, the geometric distribution characteristics formed by the combination of reflective columns at different positioning reference points are different and easy to distinguish.
[0047] After the reflective columns are laid out, the laser radar sensor carried by the unmanned vehicle is controlled to collect point cloud data covering all reflective columns. The installation position and angle of the laser radar must be accurately calibrated to ensure that the complete data of each reflective column can be scanned. Starting from the starting point, the vehicle passes through each positioning reference point in an orderly manner along the set route, and collects static point cloud data for a certain period of time at each reference point through the laser radar, while recording the vehicle position coordinates as the true position value of the reference point. All the collected static point cloud data are aggregated to form a complete original reflective column point cloud data set.
[0048] In specific implementation, multi-line laser radars such as Velodyne series products can be used to connect to the control system of the unmanned vehicle through the vehicle interface or serial port, and the laser radar can be controlled through ROS or custom drivers to set appropriate frame rate, angle resolution, sampling frequency and other parameters. In terms of point cloud data time synchronization, GPS timing, NTP network synchronization and other means can be used to obtain accurate timestamps, and match and align with the unmanned vehicle's own odometer or combined navigation information to ensure the accuracy of the position coordinates. The original point cloud data set can be stored in common point cloud formats such as PCD, PLY, and LAS.
[0049] After obtaining the original reflective column point cloud data set, the data needs to be preprocessed to extract stable and reliable high-intensity reflection points of the reflective column and filter out noise interference. Since the surface of the reflective column is coated with highly reflective material, the reflection intensity under the laser radar scanning will be significantly higher than the surrounding environment. Therefore, the high-intensity reflection points of the reflective column can be extracted by threshold segmentation of the reflection intensity value of each point in the point cloud data. First, for each point in the point cloud data set, extract its corresponding reflection intensity value I. Then, set a reflection intensity threshold IT h , the intensity value I is greater than IT h The points are extracted to form a set of high-intensity reflection points of the reflective column {P i}. Threshold IT h The selection needs to be experimentally measured and statistically analyzed based on the reflective properties of the reflective column material and the intensity distribution of the underground environmental background, so as to take into account the accuracy and completeness of the extraction.
[0050] The extracted set of high-intensity reflection points of reflective columns may be mixed with a small amount of environmental noise points. In order to further improve the data quality, it is necessary to use a point cloud denoising algorithm for optimization processing. Among them, the denoising method based on the local outlier factor LOF can effectively detect and remove occasional noise points in the reflective column point set. The basic principle of the LOF denoising algorithm is to determine whether the point is an outlier by analyzing the density difference between the point and its local neighborhood points. If the local density of a point is significantly lower than the average local density of its neighborhood points, it is considered that the point is an outlier relative to the local area and is likely to be a noise point.
[0051] For the high-intensity reflection point set of the reflective column {P i}, perform the following steps: calculate the Euclidean distance from point Pi to all other high-intensity reflection points of the reflective column, and select the distance P i The nearest MinPts points constitute the local neighborhood Ni of point Pi. MinPts is a preset positive integer that controls the size of the local neighborhood, and is generally set to 10 to 20. i Each point P in the local neighborhood Ni of j , calculated with P j Centered on P j The reachable density of a hypersphere whose radius is the distance to its MinPtsth nearest neighbor. The reachable density is defined as the ratio of the number of points contained in the hypersphere to the volume of the hypersphere, reflecting the compactness of the points in the local area. i The average reachability density lrdNi of all points in the local neighborhood. Calculate point P i The local reachability density lrdP i , that is, P i The reachable density of the MinPts neighborhood hypersphere centered at point P i The local outlier factor LOFP i , defined as the ratio of the average neighborhood reachability density to the point reachability density: LOFP i Compared with the preset threshold Th, if LOFP i Greater than T h , then the decision point P i is a noise point. Threshold T h The strictness of noise point detection is controlled. It can be set according to the trade-off between noise level and misjudgment cost, and is usually set to 1.2 to 2.0. After traversing all high-intensity reflection points of reflective columns, the detected noise points are removed from the point set to obtain the denoised high-intensity reflection point set of reflective columns {P i'}. In terms of specific parameter settings, MinPts and Th can be appropriately adjusted according to the distribution characteristics of the reflective column point cloud and the actual noise situation to balance the denoising effect and fidelity. In addition, to further reduce the computational overhead, the reflective column point cloud can be pre-processed by downsampling before implementing the LOF algorithm, or a neighborhood search acceleration strategy based on octree, KD tree, etc. can be adopted.
[0052] After completing the denoising preprocessing of the reflective column point cloud data, it is necessary to perform cluster analysis on the high-intensity reflection points to identify the point cloud clusters corresponding to different reflective columns. The purpose of cluster analysis is to classify the high-intensity reflection points of reflective columns with close spatial distribution and similar geometric structures into one category, and extract the center position of each category as the feature description of the reflective column. This embodiment adopts a hierarchical clustering method based on shared nearest neighbor similarity, which has the advantage of being able to adapt to point cloud distributions of different densities and scales, and the clustering effect is stable and reliable.
[0053] Figure 3 This is an exemplary flow chart of constructing a similarity matrix according to some embodiments of this specification. First, the Euclidean distance between the high-intensity reflection points of the reflective column after denoising is calculated to construct a distance matrix D of the high-intensity reflection points of the reflective column. Assume that the set of high-intensity reflection points of the reflective column is {P i '}, there are N points in total, then D is an N×N symmetric matrix, where the element D ij Indicates point P i 'To P j 'Euclidean distance. Based on the distance matrix D, the shared nearest neighbor similarity between the high-intensity reflection points of the reflective column is calculated to obtain the similarity matrix S. The calculation process of the shared nearest neighbor similarity is as follows: for each high-intensity reflection point P of the reflective column in the distance matrix D i ', according to P i 'The Euclidean distance between all other high-intensity reflection points of reflective columns, select distance P i 'The nearest k points are P i 'k nearest neighbors, and store the indexes of these k points in P i 'The corresponding neighbor list NNi. Where k is a preset positive integer that controls the size of the local neighborhood, and the empirical value is usually 1% to 2% of the number of point clouds. Initialize an N×N shared nearest neighbor similarity matrix S to store the similarity values of any two high-intensity reflection points of reflective columns.
[0054] Traverse each pair of reflective columns with high intensity reflection points P i ' and P j ': Extract P i ' and P j 'The respective k-nearest neighbor lists NNi and NNj; calculate the number of points C contained in NNi and NNj ij , that is, Pi ' and P j 'The number of overlapping points in the k nearest neighbors; note P i The number of k nearest neighbors of ' is K i , P j The number of k nearest neighbors of ' is K j ; Calculate P i ' and P j 'The shared nearest neighbor similarity S ij , the calculation formula is: Among them, W ij P i ' and P j ' reflects the pairwise importance between two points and can be calculated based on geometric features such as the distance between points and the consistency of normal vectors. ij When it is set to 1, it degenerates into the traditional Jaccard similarity coefficient. ij Fill in the corresponding positions (i, j) and (j, i) of the similarity matrix S. Repeat until the matrix S is filled. In addition, to improve clustering efficiency and real-time performance, data structures such as KD trees can be used to accelerate k-nearest neighbor search when calculating the shared nearest neighbor similarity matrix, and mechanisms such as priority queues can be used to optimize the calculation and sorting of inter-cluster similarities during hierarchical clustering.
[0055] After obtaining the shared nearest neighbor similarity matrix of the high-intensity reflection points of the reflective column, the hierarchical clustering method is used to cluster and merge the point cloud. The specific implementation is as follows: i 'Considered as an independent cluster C i , a total of N initial clusters {C 1 ,C 2 ,......,C N}, where N is the total number of high-intensity reflection points of the reflective column. For any two current clusters C i and C j , calculate the minimum similarity MinSim(C i ,C j ). The steps for calculating the minimum similarity are as follows: extract C i and C j All high-intensity reflection points of the reflective columns in the constituting point sets {Pi'} and {Pj'}. Traverse each point Pm' in Ci and calculate the similarity between Pm' and all points in Cj: In the similarity matrix S, extract P m 'With {P j '} The pairwise similarity values of each point in; among these pairwise similarity values, select the minimum value SimP m ', denoted as point P m 'With cluster C j Repeat the above steps to get Ci All points and clusters C j The similarity of i All points and clusters C j In the similarity of i With cluster C j The minimum similarity MinSim(C i ,C j ). Repeatedly calculate the minimum similarity between all clusters.
[0056] In the minimum similarity between the current clusters, select the maximum value MaxMinSim and separate the corresponding two clusters C i and C j Merge into a new cluster C new Update the merged cluster set and update the minimum similarity between clusters. Delete C from the cluster set i and C j , add a new cluster C new ;MaxMinSim and the minimum similarity of other clusters remain unchanged, the new cluster C new With other clusters C k The minimum similarity MinSim(C new ,C k ) Take the minimum value of MinSim(Ci,Ck) and MinSim(Cj,Ck). Determine whether the current number of clusters is greater than the preset cluster number threshold N c , and whether MaxMinSim is greater than the preset similarity threshold T s :If yes, return and continue clustering; if no, terminate the merging process and output the current clustering set {C 1 ',C 2 ',......,C M '}, where M is the final number of clusters, M≤N c Among them, the cluster number threshold N c It is set according to the prior information of the layout of reflective columns on site, and usually takes a value of 1.5 to 0.8 of the actual number of reflective columns, which is used to control the termination condition of cluster merging to avoid over-merging or under-merging.
[0057] For each cluster C obtained by hierarchical clustering k '(k=1,2,......,M), extract the coordinates of all the high-intensity reflection points of the reflective column, calculate the arithmetic mean of the coordinate values of these points in the three directions of X, Y, and Z, and use them as the geometric center coordinates of the cluster (X k ,Y k ,Z k). The geometric center reflects the position distribution of the cluster in three-dimensional space and can be used as a characteristic description of the reflective column to which the cluster belongs. In addition, the dual thresholds of the number of clusters and similarity are introduced in the judgment conditions for cluster merging, which can effectively reduce the computational complexity of the algorithm while avoiding excessive merging, and better balance the clustering accuracy and real-time performance.
[0058] Figure 4 This is an exemplary flow chart of vehicle relocation according to some embodiments of this specification. After completing the cluster analysis of the reflective column point cloud, it is necessary to extract key features from each cluster and build a feature database for subsequent positioning matching queries. At the same time, in order to improve the retrieval efficiency and storage performance of feature data, an enhanced kdtree indexing method is used to organize and optimize it. For each reflective column clustering result identified at each positioning reference point, its geometric and topological features are extracted. The steps are as follows: Calculate the geometric center coordinates (X k ,Y k ,Z k ), k = 1, 2, ..., M, where M is the number of clusters. Calculate the Euclidean distance between any two reflective column cluster centers and construct an M × M distance matrix D, where the element D ij Indicates the Euclidean distance between the i-th cluster center and the j-th cluster center. In the distance matrix D, extract the minimum, middle, and maximum values of each row (each cluster center) and record them as the shortest side length a of the cluster. i , middle side length b i and the longest side length c i . The edge length feature (a i ,b i ,c i ) and the position coordinates (X v ,Y v ,Z v ) to form a composite feature point (a i ,b i ,c i ,X v ,Y v ,Z v ). Repeat to extract the clustering features of reflective columns at all positioning reference points and obtain the reflective column feature database {(a, b, c, X, Y, Z)}.
[0059] Constructing enhanced kdtree index. In order to speed up the retrieval of reflective column feature data and save storage space, the enhanced kdtree algorithm is used to index the feature database. Specifically, all feature points in the reflective column feature database are used as keywords according to their coordinates (X, Y, Z), and the kdtree algorithm is used to construct an m-dimensional (here m=3) binary tree index structure. Kdtree recursively divides the space into non-overlapping rectangular areas, each area corresponds to a node of the tree, and realizes fast retrieval of high-dimensional data. On each leaf node of the kdtree index tree, an inverted index of reflective intensity values is introduced. Specifically, for all feature points falling in the leaf node area, the average reflective intensity value of the high-intensity reflection point of the reflective column in the corresponding cluster is extracted to form a reflective intensity array. Each element in the array is a 32-bit floating point number, representing the average reflective intensity of a cluster. For the reflective intensity array obtained on each leaf node, the Huffman coding method is used for compression storage. Huffman coding is a lossless compression algorithm based on data frequency. It achieves efficient data compression by assigning shorter codes to frequently occurring data and longer codes to sparse data.
[0060] Specifically, the frequency of occurrence of each intensity value in the reflection intensity array is counted, and a Huffman tree is constructed in descending order of frequency. Each leaf node of the Huffman tree corresponds to an intensity value, and the coding length is inversely proportional to its frequency of occurrence. Thus, the Huffman code of each intensity value is obtained. Then, each intensity value in the reflection intensity array is replaced with its corresponding Huffman code to form a compressed bit stream. At the head of the bit stream, the shape information of the Huffman tree is additionally stored for reconstructing the coding table during decompression. At each leaf node of the kdtree index, the compressed reflection intensity bit stream data is stored, and the starting position and length of the bit stream are recorded. Repeat to complete the compressed storage of the reflection intensity array of all leaf nodes in the kdtree index tree to obtain an enhanced kdtree index structure. Using the enhanced kdtree index structure, the reflective column feature database is organized and stored to speed up the feature retrieval speed in the subsequent positioning stage.
[0061] Among them, the calculation of Euclidean distance and geometric center involves addition and subtraction of floating-point coordinates; the construction of kdtree index involves recursive space partitioning and median search; the inverted index of reflective intensity and Huffman coding involve data frequency statistics and bit stream operations. In the specific programming implementation, the mature kdtree library function (such as pcl::KdTree FLANN) can be directly called to simplify the construction process of the index tree. In addition, Huffman coding is used in compression coding, mainly considering that the materials and layout of reflective columns are usually relatively standardized, resulting in uneven distribution of the average reflective intensity values of clusters, and some commonly used intensity values appear frequently. Huffman coding can make full use of this prior distribution feature to achieve a higher compression rate. In order to further improve the random access performance of data, Huffman coding can be used separately on each leaf node instead of encoding the entire reflective intensity array as a whole to reduce the amount of data decompressed at a single time.
[0062] When the unmanned vehicle is started or the positioning fails, it is necessary to re-collect environmental information through the on-board sensor and match it with the pre-built reflective column feature database to achieve the relocation of the vehicle position. The specific implementation process is as follows: control the on-board laser radar to scan the current vehicle's surrounding environment and obtain a frame of three-dimensional point cloud data within a 360° viewing angle. Each point in the point cloud data contains its spatial coordinates (x, y, z) and reflection intensity value r. The collected point cloud data is pre-processed, including: extracting point intensity information, identifying the high-intensity reflection points of the reflective column in the point cloud according to the reflection intensity value r; denoising the high-intensity reflection points of the reflective column, and eliminating outliers and isolated points; using a hierarchical clustering method based on shared nearest neighbor similarity, clustering analysis is performed on the high-intensity reflection points of the reflective column to obtain K reflective column clustering clusters.
[0063] For each reflective column cluster obtained by clustering, calculate its geometric center coordinates (x k ,y k ,z k ), k = 1, 2, ..., K. Then, the Euclidean distance between any two reflective column cluster centers is calculated to obtain three distance values (the shortest side length a search , the middle side length b search , the longest side length c search ), as the feature vector of the reflective column to be matched at the current position xsearch = (asearch, bsearch, csearch). search Input into the pre-built reflective column feature database based on the kdtree algorithm for search and matching. Starting from the root node of the kdtree index, recursively convert x search Compare with the splitting hyperplane of the current node, and choose to enter the left subtree or the right subtree until reaching the leaf node. During the search process, record xsearch The minimum Euclidean distance between each node and the splitting hyperplane is used as the search radius R of the node. k . Find the string containing x search After the leaf node is found, all the historical reflective column feature points {x 1 ,x 2 ,.....,x n}, calculate x search The Euclidean distances to these feature points are {d1, d2, ..., dn}.
[0064] In {d 1 ,d 2 ,.....,d n}Select the minimum value d min , and its corresponding historical feature point x min As with x search The best matching reflective column feature. Then, compare d min The minimum search radius R recorded during the search process min : If d min >R min , then expand the search range and trace back to x min The parent node of the leaf node continues to search in the adjacent sibling subtree; if d min ≤R min , then x min As the final nearest matching feature point, the search ends. min The index number in the reflective column feature database is queried to obtain the corresponding historical vehicle position coordinates (X v ',Y v ',Z v '). The historical vehicle position coordinates (X v ',Y v ',Z v ') is used as the current relocation position of the unmanned vehicle and is output to the vehicle control system to complete the vehicle's positioning recovery. Among them, the lidar drive and point cloud data reading can use the relevant software packages of the ROS system; the point cloud preprocessing and clustering analysis can call the filtering and segmentation functions of the PCL library; the reflective column feature extraction and matching can use the PCL kdtree nearest neighbor search algorithm.
[0065] The key to the entire relocation process lies in the extraction and rapid matching of reflective column features. Independent reflective column objects are obtained through cluster analysis, and their side length features are used to characterize the geometric distribution of reflective columns, which has good distinguishability and robustness. The enhanced kdtree indexing algorithm, combined with tree node segmentation and inverted indexing technology, can quickly lock the nearest neighbor area of the feature to be matched and reduce the search complexity. At the same time, an adaptive search radius and backtracking mechanism are introduced in the matching process to robustly handle local optimal matching and improve positioning accuracy. During the driving process of the vehicle, the database can also be incrementally expanded and optimized by periodically updating the reflective column features to adapt to changing environmental conditions.
Claims
1. A method for relocating an unmanned vehicle based on a reflective column, comprising: S1, selecting multiple positioning reference points of the unmanned vehicle in the underground environment, where the positioning reference points include the starting point of the unmanned vehicle; At least three reflective columns are arranged at each positioning reference point; the reflective columns are coated with reflective materials; S2, collecting reflective column point cloud data; performing point intensity extraction processing on the collected reflective column point cloud data, extracting points with point intensities greater than a threshold value as high-intensity reflection points of the reflective column; S3, denoising the obtained high-intensity reflection points of the reflective column; clustering the denoised reflective column point cloud data to obtain the geometric center of each cluster; calculating the Euclidean distance between the geometric center points of each cluster as the side length of the reflective column ; S4, at each positioning reference point, the side length of the reflective column Mark as reflective column features in order , and ;in, represents the shortest side length, represents the middle side length, Indicates the longest side length; according to the characteristics of the reflective column , and , and the corresponding vehicle position coordinates , construct a reflective column feature database, establish a mapping relationship between reflective column features and vehicle positions; store the reflective column feature database based on the kdtree algorithm; S5, when the unmanned vehicle is started or the positioning fails, the reflective column point cloud data is collected, and steps S2 and S3 are executed to obtain the reflective column features to be matched at the current vehicle position , , ; S6, the obtained reflective column features to be matched , , Input into the reflective column feature database based on the kdtree algorithm, perform search and matching, obtain the kdtree tree node with the smallest Euclidean distance to the reflective column feature to be matched, and obtain the historical reflective column feature index corresponding to the node; S7, according to the historical reflective column feature index, query the reflective column feature database to obtain the historical vehicle position coordinates that best match the reflective column feature of the current vehicle position ,Will As the relocation position of the unmanned vehicle, complete the vehicle relocation; In S1, different numbers of reflective columns are set at different positioning reference points, and the distances between the reflective columns are different; In S3, the obtained high-intensity reflection points of the reflective column are subjected to denoising, including: For each reflective column high-intensity reflection point in the reflective column high-intensity reflection point set ,calculate The Euclidean distance to all other high-intensity reflection points of the reflective column; select the distance The nearest MinPts points constitute the point The local neighborhood of , MinPts is a preset positive integer; Calculate the high-intensity reflection points of reflective columns The average distance between the corresponding local neighborhood points is taken as the reflection point The local reachable density value of ; For each reflective column high-intensity reflection point in the reflective column high-intensity reflection point set ,calculate The local outlier factor LOF value of the point The ratio of the average local reachable density of all points in the local neighborhood of to the local reachable density value of point Pi; The LOF value is greater than the threshold The high-intensity reflection points of the reflective column are judged as noise points; the noise points are removed from the set of high-intensity reflection points of the reflective column to obtain the denoised high-intensity reflection points of the reflective column; In S3, clustering is performed on the de-noised reflective column point cloud data to obtain the geometric center of each cluster, including: Calculate the Euclidean distance between the high-intensity reflection points of the reflective column after denoising, and construct the distance matrix between the high-intensity reflection points of the reflective column; Based on the obtained distance matrix, the similarity between the high-intensity reflection points of the reflective column is calculated to obtain a similarity matrix; Each high-intensity reflection point of the reflective column is initialized as an independent cluster, and based on the obtained similarity matrix, the hierarchical clustering method is used to merge the clusters; For each merged cluster C, calculate the geometric center of all high-intensity reflection points of reflective columns in cluster C as the center point coordinates of cluster C ; Calculate the similarity between the high-intensity reflection points of the reflective column to obtain a similarity matrix, including: For each high-intensity reflection point i of a reflective column in the distance matrix, select the k reflective column high-intensity reflection points closest to point i as the k nearest neighbors of point i according to the Euclidean distance between point i and all other high-intensity reflection points of reflective columns, and store the index of the k nearest neighbor points of point i in the k nearest neighbor list corresponding to point i, where k is a positive integer; Initialize an N*N shared nearest neighbor similarity matrix, where N is the total number of high-intensity reflection points of the reflective column after denoising; Traverse each pair of high-intensity reflection points i and j of the reflective column: Extract the k-nearest neighbor lists corresponding to points i and j, and calculate the number of high-intensity reflection points of the reflective column contained in the two k-nearest neighbor lists, which is recorded as ; Calculate the number of high-intensity reflection points of the reflective column contained in the k-nearest neighbor list of point i and point j, respectively, and record them as and ; Calculate the shared nearest neighbor similarity between point i and point j ; The shared nearest neighbor similarity of point i and point j is Fill in the corresponding positions (i, j) and (j, i) of the shared nearest neighbor similarity matrix; Repeat the above steps until the shared nearest neighbor similarity matrix is filled, and output the obtained similarity matrix.
2. The method for relocating an unmanned vehicle based on a reflective column according to claim 1, characterized in that: Calculate the shared nearest neighbor similarity between point i and point j : ; in, Indicates the number of high-intensity reflection points of reflective columns contained in the k-nearest neighbor lists of points i and j; Indicates the number of high-intensity reflection points of the reflective column included in the k-nearest neighbor list of point i; Indicates the number of high-intensity reflection points of the reflective column included in the k-nearest neighbor list of point j; represents the similarity weight between point i and point j, which is used to measure the similarity between two points; k is a positive integer, representing the number of selected nearest neighbor points.
3. The method for relocating an unmanned vehicle based on a reflective column according to claim 1, characterized in that: Each high-intensity reflection point of the reflective column is initialized as an independent cluster. Based on the obtained similarity matrix, the clusters are merged using a hierarchical clustering method, including: calculate All reflective columns with high intensity reflection points and The minimum similarity between all high-intensity reflection points of the reflective column in is taken as and The minimum similarity ; Among the minimum similarities between the current clusters, select the maximum minimum similarity MaxMinSim and merge the corresponding two clusters into a new cluster; Determine whether the number of current clusters is greater than the preset cluster number threshold, and whether MaxMinSim is greater than the preset similarity threshold; if so, continue cluster merging, otherwise, output the current cluster set as the clustering result.
4. The method for relocating an unmanned vehicle based on a reflective column according to claim 1, characterized in that: In step S4, the reflective column feature database is stored based on the kdtree algorithm, including: Obtain all reflective column feature points in the constructed reflective column feature database, each reflective column feature point includes the coordinates and reflective intensity value of the reflective column; According to the coordinates of the reflective column feature points, the kdtree algorithm is used to construct an m-dimensional binary tree structure as the index of the reflective column feature database; On each leaf node of the constructed kdtree index, an inverted index method based on the reflective intensity value is used to construct an array containing the reflective intensity values of all reflective columns under the corresponding leaf node, and each element in the array is the reflective intensity value of a reflective column feature point; At each leaf node of the kdtree index, a fixed-length encoding method is used to compress and store the constructed reflective intensity array to obtain a compressed reflective intensity array; On each leaf node of the kdtree index, the compressed reflection intensity array is stored to obtain an enhanced kdtree index structure; The enhanced kdtree index structure is used to organize, store and index the constructed reflective column feature database.
5. The method for relocating an unmanned vehicle based on a reflective column according to claim 4, characterized in that: The fixed length encoding method adopts the Huffman encoding method.
6. A system for relocating an unmanned vehicle based on a reflective column, characterized in that: include: At least one processing unit; used to execute instructions to implement the method for relocating an unmanned vehicle based on reflective columns according to any one of claims 1 to 5.