A machine learning-based rescue unmanned aerial vehicle lighting brightness self-adaptive adjustment method

By establishing a scene feature map database and using a B+ tree main index and a doubly linked list auxiliary index, combined with a graph attention network, the problem of low brightness parameter query efficiency for rescue drones in complex environments was solved, and efficient brightness adjustment was achieved.

CN122632949APending Publication Date: 2026-08-25NANCHANG HANGKONG UNIVERSITY
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202610645812.4
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2026-05-12
Publication Date
2026-08-25

AI Technical Summary

Technical Problem

Existing lighting systems for rescue drones cannot effectively express the complex spatial and temporal relationships between environmental characteristics and multi-source collaborative lighting parameters in complex environments, resulting in low query efficiency and a tendency to output incorrect brightness parameters.

Method used

A scene feature map database containing environment nodes and lighting nodes is established. Fast querying is performed using a B+ tree main index and a doubly linked list auxiliary index. Feature aggregation is performed using a graph attention network to generate independent brightness adjustment instructions.

Benefits of technology

It improves the accuracy and retrieval efficiency of multi-source collaborative brightness parameters, adapts to the lighting control needs in complex environments, and reduces the traversal range of irrelevant feature data and erroneous output.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122632949A_ABST
    Figure CN122632949A_ABST
Patent Text Reader

Abstract

The present application relates to the field of machine learning and information retrieval technology, and particularly relates to a kind of rescue unmanned aerial vehicle illumination brightness self-adaptive adjustment method based on machine learning. A scene feature atlas database containing environment node and lighting node is established, the environment node stores the obstacle reflectivity features and spatial distribution features extracted by machine learning model, and the lighting node stores the multi-light source collaborative brightness parameters. A multi-path balanced search tree main index and a bidirectional linked list auxiliary index are constructed in the database file system. Real-time point cloud data is obtained to generate the current environment feature vector, the candidate environment node set is located in the range query in the main index, and the latest state is retrieved in the auxiliary index. The candidate set and associated parameters are input into the graph attention network for feature aggregation, and the independent brightness adjustment instruction is output. The storage and query path of heterogeneous data are optimized, the irrelevant data traversal range is reduced, the parameter acquisition accuracy and retrieval efficiency are improved, and the lighting uniformity and anti-glare stability are guaranteed.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of machine learning and information retrieval technology, specifically to a machine learning-based adaptive lighting brightness adjustment method for rescue drones. Background Technology

[0002] Existing rescue drone lighting systems typically use relational databases or flat files to store historical environmental perception data and corresponding brightness control parameters when performing multi-source coordinated brightness control. In actual operation, the drone uses onboard LiDAR to collect 3D point cloud data of the rescue environment, extracts obstacle information, and stores it in a 2D data table in the database. When it is necessary to adjust the lighting brightness according to the current environment, the system compares the real-time collected environmental features with the historical records stored in the database, finds the lighting parameter combination that matches the current environment, and distributes it to multiple lighting elements on the drone to achieve coordinated lighting. This data organization method separates the spatial distribution characteristics, reflectivity characteristics, and duty cycle data of the environment into different data fields, relying on foreign keys between tables for association.

[0003] When faced with complex rescue scenarios involving varied obstacle shapes and an increasing number of light sources, the aforementioned conventional data storage schemes cannot effectively express the complex spatial and temporal relationships between environmental characteristics and multi-source collaborative lighting parameters. When the system receives real-time environmental data and needs to search for matching collaborative lighting parameters in massive historical records, the lack of a joint retrieval structure for high-dimensional spatial features and multivariate temporal parameters necessitates a full table scan and multi-table join operation across multiple related tables in the database. This full table scan retrieval method results in an excessively large data traversal range, low query efficiency, and a tendency to read time-series mismatched erroneous data during multi-table joins, leading to the output of incorrect collaborative lighting parameters. This fails to meet the lighting control requirements of multi-source drones in complex rescue environments. Summary of the Invention

[0004] The purpose of this invention is to provide a machine learning-based adaptive adjustment method for lighting brightness of rescue drones, which can effectively solve the problems mentioned in the background art.

[0005] To achieve the above objectives, the technical solution adopted by the present invention is as follows: A machine learning-based adaptive brightness adjustment method for lighting of rescue drones, the method comprising: establishing a scene feature map database containing environment nodes and lighting nodes, wherein the environment nodes store obstacle reflectivity features and spatial distribution features extracted by machine learning models, and the lighting nodes store multi-source collaborative brightness parameters corresponding to the environment nodes; In the database file system, a B+ tree primary index is constructed based on the feature dimensions of the environment node, and a doubly linked list secondary index is constructed based on the parameter change time sequence of the lighting node. Acquire real-time point cloud data from the rescue drone, and input the real-time point cloud data into a machine learning feature extraction network to generate a current environment feature vector; Based on the current environment feature vector, a range query is performed in the B+ tree main index to locate the candidate environment node set, and the latest state of the lighting node corresponding to the candidate environment node set is retrieved in the doubly linked list auxiliary index; The candidate environment node set and the lighting parameters associated with the latest state are input into a graph attention network for feature aggregation, and the independent brightness adjustment commands for multiple lighting beads of the rescue drone are output.

[0006] Preferably, establishing a scene feature map database that includes environmental nodes and lighting nodes includes: performing voxel rasterization processing on historical rescue point cloud data, extracting the average reflectance within each voxel as the obstacle reflectance feature, and extracting the set of spatial coordinates of each voxel in the three-dimensional coordinate system as the spatial distribution feature; Voxels whose reflectance feature differences with adjacent voxels are less than a preset difference threshold are clustered, and each cluster is mapped to an environment node. For each environmental node, the brightness duty cycle data of multiple light sources that coincide with the spatial location of the cluster are extracted from the historical lighting records as the multi-light source collaborative brightness parameter, and the multi-light source collaborative brightness parameters with timestamp adjacency are constructed into a lighting node; Establish spatial adjacency edges between the environmental nodes and data association edges between the environmental nodes and their corresponding lighting nodes.

[0007] Preferably, constructing a B+ tree master index for the feature dimensions of the environmental nodes includes: concatenating the obstacle reflectivity features and the spatial distribution features in each environmental node into a high-dimensional vector of node features; Principal component analysis is performed on the high-dimensional vector of the node features to reduce its dimensionality, and the first three principal component components are extracted as the index key values ​​of the B+ tree main index. The non-leaf nodes of the B+ tree primary index store the interval boundaries formed by the maximum and minimum values ​​of the index key; In the leaf nodes of the B+ tree master index, the node identifier of the corresponding environment node and the physical offset address of the node feature high-dimensional vector in the disk file are stored in order of the index key value.

[0008] Preferably, constructing a doubly linked list auxiliary index for the parameter change sequence of the lighting nodes includes: for each lighting node, extracting each update record of the multi-light source collaborative brightness parameter in chronological order of timestamps, and encapsulating each update record into a linked list node; Each linked list node stores the updated multi-source collaborative brightness parameters, the current timestamp, and the environmental node identifier that triggered the update. The doubly linked list auxiliary index is formed by connecting all linked list nodes under the same lighting node through the predecessor pointer and successor pointer, wherein the successor pointer of the head node points to the single update record with the earliest timestamp, and the predecessor pointer of the tail node points to the single update record with the latest timestamp.

[0009] Preferably, performing a range query in the B+ tree main index based on the current environment feature vector to locate the candidate environment node set includes: performing principal component analysis dimensionality reduction processing on the current environment feature vector in the same way as in the B+ tree main index construction stage to obtain the current query key value; Starting from the root node of the B+ tree primary index, determine whether the current query key value falls within the interval boundary stored in the non-leaf node; If it falls into the leaf node, then traverse down the child node pointers to the leaf node; In the matched leaf nodes, the Euclidean distance between the current query key value and each index key value stored in the leaf node is calculated. The environment nodes corresponding to the index key values ​​whose Euclidean distance is less than a set distance threshold are extracted and combined to generate the candidate environment node set.

[0010] Preferably, retrieving the latest state of the lighting node corresponding to the candidate environment node set in the doubly linked list auxiliary index includes: extracting the lighting node identifier corresponding to each candidate environment node in the candidate environment node set; Locate the tail node of the corresponding doubly linked list auxiliary index based on the lighting node identifier; Read the current timestamp and multi-light source collaborative brightness parameters stored in the tail node, and determine the time difference between the current timestamp and the system timestamp that acquires the real-time point cloud data in real time; If the time difference is less than a preset effective duration threshold, then the multi-source collaborative brightness parameters stored in the tail node are taken as the latest state. If the time difference is greater than or equal to the preset effective duration threshold, then backtrack along the predecessor pointer of the tail node until a linked list node with a time difference less than the preset effective duration threshold is found and the multi-source collaborative brightness parameter in it is read as the latest state.

[0011] Preferably, voxel rasterization processing of historical rescue point cloud data includes: dividing the three-dimensional space into a cubic grid with a preset side length; For a cubic mesh containing point cloud data, extract the reflection intensity values ​​of all lidar reflection points within the mesh; The reflection intensity values ​​are weighted and summed according to the spatial distance between the reflection point and the optical axis of the drone camera to obtain the weighted reflection intensity sum. The average reflectance is obtained by dividing the sum of the weighted reflection intensities by the total number of reflection points within the cubic grid. The convex hull of all reflection points within the cubic mesh is calculated, and the coordinates of the geometric center point of the convex hull are used as the core coordinates of the spatial distribution features.

[0012] Preferably, performing principal component analysis dimensionality reduction processing on the current environment feature vector in the same way as the B+ tree main index construction stage includes: inputting the current environment feature vector into a pre-stored dimensionality reduction mapping matrix for multiplication operations, wherein the dimensionality reduction mapping matrix is ​​generated by calculating the covariance matrix of the set of high-dimensional vectors of node features of historical environment nodes and extracting the feature vectors corresponding to the three largest eigenvalues ​​and arranging them. The three-dimensional vector output by the multiplication operation is normalized, and the three values ​​in the normalized three-dimensional vector are mapped to the horizontal, vertical and vertical coordinates of the current query key value in the three-dimensional space.

[0013] Preferably, backtracking along the predecessor pointer of the tail node includes: adding a jump pointer to each linked list node of the doubly linked list auxiliary index, the jump pointer pointing to the historical linked list node that is pushed forward by a fixed step size from the current linked list node; When tracing back along the predecessor pointer of the tail node, the timestamp of the historical linked list node pointed to by the jump pointer of the current linked list node is read first. If the time difference between the timestamp of the historical linked list node and the system timestamp is still greater than or equal to the preset effective duration threshold, the current backtracking position is jumped to the historical linked list node, and the jump pointer of the linked list node at the current backtracking position is read until a linked list node with a time difference less than the preset effective duration threshold is located.

[0014] Preferably, establishing spatial adjacency edges between the environmental nodes includes: calculating the spatial distance between the core coordinates of any two environmental nodes corresponding to their respective clusters; If the spatial distance is less than the preset adjacency distance threshold, a spatial adjacency edge is established between the two environmental nodes, and the reciprocal of the spatial distance is used as the initial edge weight of the spatial adjacency edge. The environment nodes in the candidate environment node set are used as graph nodes of the graph attention network. The spatial adjacent edges and their initial edge weights within the candidate environment node set are input into the graph attention network. The initial edge weights are updated using the attention coefficient calculation formula. The updated edge weights are weighted and summed with the lighting parameters associated with the corresponding environment nodes to generate the independent brightness adjustment command.

[0015] Compared with the prior art, the beneficial effects of the present invention are as follows: 1. This invention establishes a scene feature graph database containing environment nodes and lighting nodes. Obstacle reflectivity features, spatial distribution features, and multi-light source collaborative brightness parameters are stored as entity nodes. Data association edges are constructed between environment nodes and lighting nodes, transforming the originally fragmented heterogeneous data into a graph structure that expresses the complex relationships between environmental features and multi-light source parameters. A multi-way search tree main index is constructed based on the feature dimensions of environment nodes, and a doubly linked list auxiliary index is constructed based on the parameter change sequence of lighting nodes. Upon receiving the current environmental feature vector, a range query is directly performed in the main index to locate the candidate environment node set, and the latest state is retrieved in the auxiliary index. This avoids full table scans across tables, reduces the traversal range of irrelevant environmental feature data, and improves the accuracy and retrieval efficiency of multi-light source collaborative brightness parameters.

[0016] 2. Voxel rasterization is performed on historical point cloud data. The average reflectance is obtained by weighted summation of the spatial distances from the reflection points to the optical axis, eliminating the interference of spatial location differences on reflectance calculation. Principal component analysis is used to extract the first three principal components as the main index key values. Combined with the structure of the storage interval boundary of non-leaf nodes and the storage physical offset address of leaf nodes, the comparison dimension of high-dimensional feature vectors is reduced. Jump pointers are added to the linked list nodes of the auxiliary index. When backtracking to find historical parameters that meet the preset effective duration threshold, the jump pointers are used to jump by a step size, reducing the number of traversals of linked list nodes. The initial edge weights of the spatial adjacency edges of the candidate environment node set are input into the graph attention network for update calculation. The updated edge weights are combined with the lighting parameters for weighted summation, so that the output independent brightness adjustment command can adapt to the spatial feature changes between adjacent environment nodes. Attached Figure Description

[0017] Figure 1 This is a flowchart illustrating the overall process of the machine learning-based adaptive lighting brightness adjustment method for rescue drones according to the present invention. Figure 2 This is a flowchart illustrating the construction process of the scene feature map database of the present invention. Figure 3 This is a flowchart illustrating the construction process of the multi-way balanced search tree master index of the present invention. Figure 4 This is a flowchart illustrating the construction process of the doubly linked list auxiliary index of the present invention. Figure 5 This is a flowchart of the main index range query and auxiliary index latest status retrieval process of the present invention; Figure 6 This is a flowchart of the graph attention network feature aggregation and instruction output of the present invention. Detailed Implementation

[0018] The technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application.

[0019] Please refer to Figure 1This embodiment provides a machine learning-based adaptive brightness adjustment method for the lighting of rescue drones. It establishes a scene feature graph database containing environment nodes and lighting nodes. Environment nodes store obstacle reflectivity and spatial distribution features extracted by a machine learning model, while lighting nodes store multi-source collaborative brightness parameters corresponding to the environment nodes. Specifically, the scene feature graph database uses an attribute graph structure for data organization. Each environment node and lighting node is an entity node in the attribute graph, storing feature data and attribute information for its corresponding dimension. The underlying storage of the scene feature graph database adopts a distributed file system architecture. Node data and edge data are stored in independent physical partitions, with logical mapping relationships established through unique identifiers to avoid interference between read / write operations of different data types. In the database file system, a B+ tree primary index is constructed for the feature dimensions of environment nodes, and a doubly linked list secondary index is constructed for the parameter change sequence of lighting nodes. Both the B+ tree primary index and the doubly linked list secondary index are stored in the index partition of the database file system, forming a physical address mapping relationship with the node data storage partition of the scene feature graph database. The read / write priority of the index partition is higher than that of the node data storage partition, ensuring the response speed of retrieval operations. Real-time point cloud data from the rescue drone is acquired and input into a machine learning feature extraction network to generate a current environment feature vector. The real-time point cloud data is collected by the drone's onboard LiDAR and includes the 3D spatial coordinates and reflection intensity data of each laser reflection point. The number of points in a single frame ranges from 10,000 to 250,000, and the acquisition frequency is synchronized with the drone's flight control system cycle. The machine learning feature extraction network adopts a 3D point cloud feature extraction network structure. The input layer receives a multi-dimensional array concatenated from the coordinates and reflection intensity of the point cloud data. After passing through multiple feature extraction layers, a fixed-dimensional current environment feature vector is output. Based on the current environment feature vector, a range query is performed in the B+ tree main index to locate the candidate environment node set, and the latest state of the corresponding lighting node in the doubly linked list auxiliary index is retrieved. The range query process starts from the root node of the B+ tree main index and traverses downwards layer by layer according to the interval matching rules of the index key value until a leaf node that meets the matching conditions is located. The identifier and feature data of the corresponding environment node are extracted from the leaf node and combined to form the candidate environment node set. The latest state retrieval process is based on the lighting node identifiers corresponding to candidate environment nodes, locating the corresponding linked list structure of the doubly linked list auxiliary index, and reading the multi-source collaborative brightness parameters that meet the time validity condition from the linked list. The candidate environment node set and the lighting parameters associated with the latest state are input into a graph attention network for feature aggregation, outputting independent brightness adjustment commands for multiple lighting beads of the rescue drone.The graph attention network uses candidate environment nodes as graph nodes and the spatial adjacency relationships between environment nodes as graph edges. It performs attention-weighted aggregation on the features of each graph node and the corresponding lighting parameters to generate a brightness adjustment instruction corresponding to each lighting chip. The brightness adjustment instruction includes the brightness duty cycle parameter of the corresponding chip, with the value of the duty cycle parameter ranging from 0 to 1, corresponding to the off state to the fully lit state of the chip.

[0020] Specifically, the machine learning feature extraction network adopts the PointNet++ network structure. The input layer receives a point cloud array with a dimension of N×4, where N is the number of point cloud data points collected in a single batch, and the four dimensions correspond to the X-axis coordinates, Y-axis coordinates, Z-axis coordinates, and reflection intensity value of the laser reflection point, respectively. The network structure contains four cascaded feature extraction units, each of which sequentially sets up a sampling layer, a grouping layer, and a multilayer perceptron layer. The sampling layer uses the farthest point sampling algorithm to extract a fixed number of sampling points from the input point cloud data as the center points of the local region. The execution process of the farthest point sampling algorithm is as follows: a random initial sampling point is selected, the minimum Euclidean distance between all remaining points and the selected sampling point is calculated, and the point with the largest minimum Euclidean distance is selected as the next sampling point. This process is repeated until the preset number of sampling points are extracted. The grouping layer sets a fixed-radius spherical neighborhood centered at each sampling point, extracting all point cloud data within the neighborhood to form local point cloud groups. The radius of the spherical neighborhood increases progressively with the feature extraction unit level, ensuring that lower-level feature extraction units capture local detailed features while higher-level feature extraction units capture global semantic features. The multilayer perceptron layer extracts features from each local point cloud group. Through three consecutive fully connected layers and the ReLU activation function, the original data of the local point cloud group is mapped into a high-dimensional local feature vector. The number of neurons in each fully connected layer is 64, 128, and 256, respectively, and the negative half-axis slope of the ReLU activation function is set to 0.01. The local feature vectors output by the four cascaded feature extraction units are processed by a global max-pooling layer to generate a 1024-dimensional global feature vector. This global feature vector is then concatenated with the local feature vector output by the last-level feature extraction unit to generate a 1024-dimensional current environment feature vector.

[0021] In this embodiment, the B+ tree master index adopts a balanced multi-way search tree structure with an order of 128. The number of child nodes for non-leaf nodes ranges from 64 to 128, ensuring the balance of the tree structure and retrieval efficiency. Non-leaf nodes only store the interval boundary data of the index key value and child node pointers, without storing the complete feature data and physical address information of the environment node, reducing the storage space occupied by non-leaf nodes and improving the traversal speed of the tree structure. All leaf nodes of the B+ tree master index are connected by bidirectional pointers to form an ordered linked list structure, facilitating the traversal of data in continuous intervals during range queries. The index key values ​​stored in the leaf nodes are sorted in ascending order, with each leaf node storing 100 to 200 index entries. Each index key value corresponds to a unique environment node identifier and physical offset address. The physical offset address points to the starting storage address of the environment node's feature data in the main partition of the database file system node data. The complete feature data of the corresponding environment node can be read directly from the disk file through the physical offset address without additional address translation operations.

[0022] In this embodiment, each node of the doubly linked list auxiliary index corresponds to a single update record of the multi-source collaborative brightness parameters of the lighting node. The nodes are bidirectionally connected via predecessor and successor pointers, forming a bidirectionally traversable linked list structure. Each lighting node corresponds to a unique doubly linked list auxiliary index. The head node stores the first parameter update record of the lighting node, and the tail node stores the latest parameter update record. All nodes of the doubly linked list auxiliary index are stored in the index partition of the database file system. The environment node identifier and lighting node identifier stored in the linked list nodes form a mapping relationship with the main data partition. The storage format of the linked list nodes uses fixed byte alignment to ensure the atomicity of data read and write operations.

[0023] In this embodiment, the range query process first performs dimensionality reduction on the current environment feature vector to generate a current query key value with the same dimension as the B+ tree main index key value. Starting from the root node of the B+ tree main index, the current query key value is compared with the interval boundaries corresponding to each child node stored in the root node to determine the interval range in which the current query key value falls. The process then traverses downwards along the pointers of the corresponding child nodes to the next level of non-leaf nodes. This interval comparison and traversal process is repeated until the leaf node of the B+ tree main index is reached, and the matched leaf node is obtained. In the matched leaf node, all stored index key values ​​are traversed, and the similarity between the current query key value and each index key value is calculated. The environment nodes corresponding to the index key values ​​whose similarity meets the preset conditions are extracted and combined to form a candidate environment node set. If there are index key values ​​that meet the similarity conditions in the adjacent leaf nodes of the matched leaf node, the adjacent leaf nodes are traversed through the bidirectional pointers between the leaf nodes to extract the corresponding environment nodes and add them to the candidate environment node set, ensuring that the range query process covers all environment nodes that meet the conditions.

[0024] In this embodiment, the latest state retrieval process involves extracting the associated lighting node identifier for each environment node in the candidate environment node set. Based on the lighting node identifier, the corresponding doubly linked list auxiliary index is located in the database's index metadata table. The tail node data of the doubly linked list auxiliary index is read, and the timestamp and multi-source collaborative brightness parameters stored in the tail node are obtained. The time difference between the tail node timestamp and the system timestamp at the time of real-time point cloud data acquisition is calculated, and it is determined whether the time difference meets the preset valid duration condition. If the valid duration condition is met, the multi-source collaborative brightness parameters stored in the tail node are used as the latest state of that lighting node; if the valid duration condition is not met, the linked list nodes are traversed forward along the predecessor pointer of the tail node until a linked list node that meets the valid duration condition is found, and the multi-source collaborative brightness parameters stored in that linked list node are read as the latest state. This retrieval process is repeated for all environment nodes in the candidate environment node set to obtain the latest state lighting parameters for all corresponding lighting nodes.

[0025] In this embodiment, the graph attention network adopts a single-layer multi-head attention structure with 8 attention heads. Each attention head independently performs attention coefficient calculation and feature aggregation operations, and parameters are not shared between different attention heads. Each environment node in the candidate environment node set is used as a node in the graph structure, and the spatial adjacency edges between environment nodes are used as edges in the graph structure to construct the input graph data. The input feature of each graph node is a multi-dimensional vector concatenated from the feature vector of the corresponding environment node and the associated latest state lighting parameters. The feature vector has a dimension of 1024, and the dimension of the lighting parameter vector is the same as the number of lighting bulbs in the rescue drone. The dimension of the concatenated input feature vector is the sum of 1024 and the number of lighting bulbs. Each attention head calculates the attention coefficient for the input graph data, assigns corresponding attention weights to the neighboring nodes of each graph node, and performs a weighted summation of the features of the neighboring nodes based on the attention weights to generate the node aggregation feature output by that attention head. The node aggregation features output from the 8 attention heads are concatenated and mapped through a fully connected layer to form an output vector consistent with the number of lighting beads in the rescue drone. The activation function of the fully connected layer is the Sigmoid function, which maps the output values ​​to the range of 0 to 1. Each value in the output vector corresponds to the brightness duty cycle parameter of a lighting bead, forming independent brightness adjustment commands for multiple lighting beads.

[0026] Table 1. Definition of Nodes and Edges in Scene Feature Map Database This table defines the storage attributes, data formats, and physical storage locations of various nodes and edges in the scene feature map database. The database file system performs data writing and reading operations according to the partitioning rules in the table to ensure the physical isolation and logical association between environmental feature data and lighting parameter data, and to avoid conflicts in reading and writing operations of different types of data.

[0027] In this embodiment, the environmental features and lighting parameters are associated and stored through a scene feature map database. A joint retrieval structure of B+ tree main index and doubly linked list auxiliary index is used to quickly locate candidate environmental nodes and retrieve the effective status of corresponding lighting parameters. A graph attention network is used to aggregate features of multiple nodes and generate independent brightness adjustment instructions for multiple LEDs adapted to the current environment, thereby completing the adaptive adjustment of the lighting brightness of the rescue drone.

[0028] In one alternative embodiment, refer to Figure 2 , Figure 3 and Figure 6The historical rescue point cloud data was processed using voxel rasterization. The mean reflectance within each voxel was extracted as the obstacle reflectance feature, and the set of spatial coordinates of each voxel in the 3D coordinate system was extracted as the spatial distribution feature. The historical rescue point cloud data consisted of multiple frames of 3D point cloud data collected during past rescue missions. Each frame of point cloud data contained the spatial coordinate information of obstacles and laser reflection intensity information of the corresponding rescue scene. All historical rescue point cloud data underwent denoising and registration preprocessing to remove outliers and noise points from the point cloud data, and the multiple frames of point cloud data were registered to the same world coordinate system. The voxel rasterization process divided the 3D space corresponding to the historical rescue point cloud data into multiple cubic grids of equal side length. Each cubic grid is a voxel. The side length of the voxel can be adjusted according to the accuracy requirements of the rescue scene. For voxels containing point cloud data, reflectance feature and spatial distribution feature extraction operations were performed. Empty voxels without point cloud data were not subjected to feature extraction processing.

[0029] Specifically, the mean reflectance within a voxel is calculated using a distance-weighted summation method to eliminate the interference of spatial location differences on the reflectance calculation results. The corresponding calculation formula is as follows: in, Let be the mean reflectance of the vth voxel. Let v be the total number of laser reflection points contained within the v-th voxel. Let be the reflection intensity value of the i-th laser reflection point within the v-th v-th voxel. is the distance weighting coefficient corresponding to the i-th laser reflection point.

[0030] Distance weighting coefficient The distance weighting coefficient is calculated from the spatial distance between the laser reflection point and the optical axis of the drone's camera. The smaller the spatial distance, the larger the corresponding weighting coefficient; conversely, the larger the spatial distance, the smaller the corresponding weighting coefficient. The calculation process for the distance weighting coefficient is as follows: the three-dimensional spatial coordinates of the laser reflection point are transformed to the camera's optical axis coordinate system using the camera's extrinsic parameter matrix. The origin of the optical axis coordinate system is the optical center of the camera, and the Z-axis coincides with the camera's optical axis. The Euclidean distance between the reflection point and the origin of the optical axis is calculated. The reciprocal of the Euclidean distance is then subjected to minimum-maximum normalization, mapping the value to a range of 0.1 to 1.0 to obtain the corresponding distance weighting coefficient. This avoids the reflection intensity value being completely filtered out due to a weighting coefficient of 0.

[0031] When extracting the spatial distribution features of voxels, the convex hull of all reflection points within the cubic mesh is calculated using the Andrew monotonic chain algorithm. The convex hull is calculated by projecting the 3D coordinates of the reflection points onto a horizontal plane. After calculating the 2D convex hull, the maximum and minimum elevation values ​​of the convex hull vertices are extracted to form the 3D convex hull structure. The coordinates of the geometric center point of the convex hull are used as the core coordinates of the spatial distribution features, and the set of 3D spatial coordinates of all reflection points within the convex hull is used as supplementary coordinate data for the spatial distribution features. The core coordinates are used to characterize the position of the voxel in 3D space, and the supplementary coordinate data are used to characterize the spatial morphology of the obstacle corresponding to the voxel.

[0032] Voxels whose reflectance feature differences are less than a preset difference threshold are clustered, and each cluster is mapped to an environment node. Neighboring voxels are those sharing vertices, edges, or faces in 3D space, i.e., 26-neighbor voxels. The preset difference threshold is set based on the reflectance distribution characteristics of historical rescue scenarios to distinguish obstacle voxels with different reflectance properties. The formula for calculating the reflectance feature difference between voxels is: in, This represents the difference in reflectance characteristics between v1 and v2 v1 v1 v2 ... The mean reflectance of v1 v1 is given. The mean reflectance of the v2 voxel.

[0033] The voxel clustering process employs a region growing algorithm. First, all voxels are traversed, and voxels without assigned cluster labels are selected as seed voxels. Then, the 26 neighboring voxels of the seed voxel are traversed, and the reflectance feature difference between the seed voxel and each neighboring voxel is calculated. If the difference is less than a preset threshold, the corresponding neighboring voxel is added to the current cluster and marked as having an assigned cluster label. The newly added voxel is used as the new seed voxel, and the above neighbor traversal and difference value judgment process is repeated until no new voxels are added to the current cluster, completing the construction of one cluster. This clustering process is repeated for all voxels until all voxels are assigned to their corresponding clusters. For clusters containing fewer voxels than a preset minimum number of voxels, they are merged into the adjacent cluster with the smallest reflectance feature difference to avoid generating too many fragmented environment nodes. Each cluster is mapped to an independent environment node. The set of average reflectance values ​​of all voxels within a cluster is used as the obstacle reflectance feature of the corresponding environment node. The set of spatial coordinates of all voxels within a cluster and the core coordinates of the cluster convex hull are used as the spatial distribution feature of the corresponding environment node. The core coordinates of the cluster convex hull are the average of the core coordinates of all voxels within the cluster.

[0034] For each environmental node, the brightness duty cycle data of multiple light sources that coincide with the spatial location of the cluster in the historical lighting records are extracted as multi-light source collaborative brightness parameters. Multi-light source collaborative brightness parameters with adjacent timestamps are constructed into a lighting node. Historical lighting records are UAV multi-light source lighting control data collected at the same time as historical rescue point cloud data during past rescue missions. These records include the brightness duty cycle parameter of each lighting bulb and its corresponding collection timestamp. A correspondence is established between historical lighting records and historical rescue point cloud data through the collection timestamps. For each cluster corresponding to an environmental node, lighting control data is extracted from the historical lighting records where the difference between the collection time and the collection time of the corresponding point cloud data for the cluster is less than a preset time threshold. The preset time threshold is set to 100 milliseconds to ensure the time synchronization between the lighting control data and the point cloud data. The multi-light source brightness duty cycle data in the lighting control data is used as the multi-light source collaborative brightness parameter for the corresponding environmental node. The dimension of the brightness duty cycle data is consistent with the number of UAV lighting bulbs, with each value corresponding to the brightness control parameter of one lighting bulb. Multiple sets of multi-source collaborative brightness parameters with adjacent timestamps under the same environmental node are encapsulated and constructed into a lighting node. The multiple sets of brightness parameters stored in the lighting node are sorted according to the order of the timestamps. The brightness parameters in the same lighting node correspond to the continuous time series lighting control records of the same environmental node.

[0035] Establish spatial adjacency edges between environment nodes and data association edges between environment nodes and their corresponding lighting nodes. Spatial adjacency edges between environment nodes are established based on the spatial location relationships of their corresponding clusters, while data association edges between environment nodes and lighting nodes are established based on the parameter relationships between the nodes. Data association edges are directed edges, starting at an environment node and ending at the corresponding associated lighting node. These data association edges realize the logical mapping between environment nodes and lighting nodes. Each environment node can correspond to multiple data association edges, associating with multiple lighting nodes, while each lighting node corresponds to only one data association edge, associating with a unique environment node.

[0036] Table 2. Statistical Table of Voxel Clustering and Environmental Node Mapping Results for Historical Rescue Scenarios This table summarizes the processing results of voxel rasterization, voxel clustering, and node mapping under different historical rescue scenarios. Based on the statistical data in the table, the adaptability of the voxel clustering algorithm to point cloud data of different scales can be verified, as well as the effect of constructing the mapping relationship between environmental nodes and lighting nodes. This provides data support for adjusting parameters such as voxel partitioning side length and clustering difference threshold.

[0037] Calculate the spatial distance between the cluster core coordinates of any two environmental nodes. If the spatial distance is less than a preset adjacency distance threshold, establish a spatial adjacency edge between the two environmental nodes, and use the reciprocal of the spatial distance as the initial edge weight. The preset adjacency distance threshold is set based on the spatial range of the rescue scenario and the lighting coverage of the drone, and is used to determine whether two environmental nodes are in adjacent spatial regions. The spatial adjacency edge is an undirected edge, with its two endpoints being two adjacent environmental nodes. The formula for calculating the initial edge weight is: in, Let n1 be the initial edge weight of the spatially adjacent edge between environment node n1 and environment node n2. The Euclidean distance between the core coordinates of the cluster corresponding to environment node n1 and the core coordinates of the cluster corresponding to environment node n2 is given.

[0038] The environment nodes in the candidate environment node set are used as graph nodes in the graph attention network. The spatial adjacency edges within the candidate environment node set and their initial edge weights are input into the graph attention network. The initial edge weights are updated using the attention coefficient calculation formula. The updated edge weights are then weighted and summed with the lighting parameters associated with the corresponding environment nodes to generate independent brightness adjustment commands. The attention coefficient calculation formula for the graph attention network is as follows: in, Let n1 be the attention coefficient relative to environment node n2. Let n be the input feature vector of the environment node n1. Let n be the input feature vector of the environment node n2. This is a feature vector concatenation operation. For attention weight vectors, It is a non-linear activation function. It is the set of all adjacent nodes of environment node n1, including environment node n1 itself.

[0039] Attention weight vector The dimension of the input feature vector is twice that of the input feature vector, matching the dimension of the concatenated two-node feature vector. The negative half-axis slope of the LeakyReLU activation function is set to 0.2. The attention coefficients calculated using the above formula can adaptively allocate weights to different neighboring nodes, assigning higher attention weights to neighboring nodes with higher relevance to the current environment node features and lower attention weights to neighboring nodes with lower relevance.

[0040] Based on the updated attention coefficients, the lighting parameters of adjacent nodes are weighted and summed to generate an aggregated lighting parameter vector. The corresponding calculation formula is as follows: in, This is the aggregated lighting parameter vector corresponding to environment node n1. It is the Sigmoid activation function. Let n1 be the attention coefficient of the environment node n1 relative to its neighboring node k. The latest state multi-source collaborative brightness parameter vector associated with neighboring node k.

[0041] The Sigmoid activation function maps the weighted sum to a range of 0 to 1, ensuring that the output aggregated lighting parameters meet the brightness duty cycle requirements. Global average pooling is applied to the aggregated lighting parameter vectors corresponding to all candidate environment nodes to generate the final multi-source brightness duty cycle vector. Each element in the vector corresponds to the brightness adjustment duty cycle of one lighting element on the rescue drone, thus generating independent brightness adjustment commands for multiple lighting elements. Global average pooling eliminates the influence of differences in the number of different environment nodes on the output results, ensuring that the output brightness adjustment commands adapt to the environmental characteristics of the entire rescue scenario.

[0042] In this embodiment, spatial gridding and feature extraction of historical point cloud data are achieved through voxel rasterization; voxel grouping and mapping to environment nodes are achieved through region growing clustering; logical associations between environment nodes and between environment nodes and lighting nodes are achieved through the construction of spatial adjacency edges and data association edges; adaptive adjustment of edge weights is achieved through attention coefficient updates of graph attention network; and independent brightness adjustment instructions adapted to the current environment are generated based on weighted summation.

[0043] Furthermore, in another embodiment, reference is made to... Figure 5 The obstacle reflectivity features and spatial distribution features of each environmental node are concatenated to form a high-dimensional vector of node features. Specifically, the obstacle reflectivity feature array and spatial distribution feature array stored in the environmental node are concatenated dimensionally to generate a fixed-dimensional high-dimensional vector of node features. The length of the obstacle reflectivity feature array is the number of voxels in the corresponding cluster, and the length of the spatial distribution feature array is the product of the dimension and the number of core coordinates of all voxels in the cluster. If the feature array lengths of different environmental nodes are inconsistent, zero-padding is used to unify the length of all feature arrays to a preset maximum length. The preset maximum length is set based on the maximum number of voxels in the cluster in historical rescue scenarios to ensure that the dimension of the concatenated high-dimensional vector of node features is fixed and that the dimension of the high-dimensional vector of node features of all environmental nodes is consistent.

[0044] Principal component analysis (PCA) is performed on the high-dimensional vectors of node features to reduce dimensionality. The first three principal components are extracted and used as the index keys for the B+ tree master index. The first step in PCA dimensionality reduction is decentralization. The mean vector of the high-dimensional vectors of node features for all environment nodes is calculated. The mean vector is then subtracted from each node's high-dimensional vector to obtain a decentralized set of feature vectors, eliminating the influence of differences in the numerical magnitude of different feature dimensions on the dimensionality reduction result. The covariance matrix is ​​then calculated based on the decentralized set of feature vectors. The formula for calculating the covariance matrix is: in, The covariance matrix of the set of high-dimensional vectors representing node features. This represents the total number of environment nodes. Let be the high-dimensional vector of node features corresponding to the m-th environment node. It is the mean vector of the high-dimensional feature vectors of all nodes.

[0045] The covariance matrix is ​​a symmetric square matrix with the same dimensions as the high-dimensional vectors of the node features. Each element in the matrix corresponds to the covariance between two feature dimensions, representing the linear correlation between the two feature dimensions. Eigenvalue decomposition is performed on the covariance matrix to obtain all eigenvalues ​​and their corresponding eigenvectors. The formula for eigenvalue decomposition is: in, Covariance matrix The i-th eigenvalue, Eigenvalues The corresponding feature vectors are sorted in descending order of feature values, and the corresponding feature vectors are sorted synchronously.

[0046] Eigenvalues ​​represent the variance of the corresponding principal component components; the larger the eigenvalue, the more original feature information the corresponding principal component carries. The eigenvalues ​​are sorted in descending order, and the eigenvectors corresponding to the three largest eigenvalues ​​are extracted. These three eigenvectors are then arranged in descending order of eigenvalue to form a dimensionality-reduced mapping matrix with a dimension of 3 times the original feature dimension. Each decentralized node's high-dimensional feature vector is multiplied by the dimensionality-reduced mapping matrix to obtain a three-dimensional dimensionality-reduced feature vector. This three-dimensional dimensionality-reduced feature vector is used as the index key of the corresponding environment node's B+ tree master index, thus achieving dimensionality reduction of the high-dimensional feature vector, reducing the dimensionality of the index key, and improving the efficiency of key-value comparison during retrieval.

[0047] Table 3. Contribution rate of principal component components in PCA dimensionality reduction of node feature high-dimensional vectors. This table summarizes the eigenvalues, variance contribution rates, and cumulative variance contribution rates of the first five principal component components after principal component analysis of the high-dimensional feature vectors of the nodes. The cumulative variance contribution rate of the first three principal component components reaches 0.9467, which can retain most of the information of the original high-dimensional feature vectors and meet the feature expression requirements of the index key values, thus verifying the rationality of selecting the first three principal component components as index key values.

[0048] The non-leaf nodes of the B+ tree primary index store the interval boundaries formed by the maximum and minimum values ​​of the index key. Specifically, each non-leaf node of the B+ tree primary index corresponds to multiple child nodes, and each child node corresponds to an index key value interval. The non-leaf nodes store the maximum and minimum values ​​of the index key value interval corresponding to each child node, as well as the storage address pointer of the corresponding child node. The index key value is a three-dimensional vector, with each dimension corresponding to an interval boundary. The interval range corresponding to the child node is a cube region in three-dimensional space. Only when the values ​​of all three dimensions of the query key value fall within the cube region is the query key value considered to fall within the interval range corresponding to that child node. The interval boundaries stored in the non-leaf nodes are sorted in ascending order of the first dimension value. If the first dimension values ​​are the same, they are sorted according to the second dimension value. If the second dimension values ​​are also the same, they are sorted according to the third dimension value, which facilitates interval matching and child node location during the query process.

[0049] In the leaf nodes of the B+ tree primary index, the node identifier of the corresponding environment node and the physical offset address of the node's high-dimensional feature vector in the disk file are stored in order of index key value. Specifically, each leaf node of the B+ tree primary index stores a fixed number of index entries, each containing three fields: index key value, environment node identifier, and physical offset address. All index entries in the leaf node are arranged in ascending order of index key value, and the sorting rule is consistent with the interval boundary sorting rule of non-leaf nodes. Adjacent leaf nodes are bidirectionally connected through predecessor and successor pointers, forming an ordered linked list structure of leaf nodes. This facilitates the traversal of index entries in consecutive intervals during range queries without having to traverse the tree structure again from the root node. The physical offset address is a 64-bit unsigned integer value, corresponding to the starting byte address of the environment node's feature data in the disk file. Through this physical offset address, the complete feature data of the corresponding environment node can be read directly by calling the file system interface without additional file parsing and address translation operations.

[0050] The current environment feature vector undergoes the same principal component analysis dimensionality reduction process as in the B+ tree main index construction phase to obtain the current query key value. Specifically, the mean vector of the high-dimensional node feature vectors calculated during the B+ tree main index construction phase is first subtracted from the current environment feature vector to complete the decentralization process. The decentralized current environment feature vector is then multiplied by the dimensionality reduction mapping matrix. The corresponding calculation formula is as follows: in, This is the three-dimensional vector corresponding to the current query key value. This is the feature vector of the current environment. The mean vector of the high-dimensional vectors of node features calculated during the B+ tree primary index construction phase. The dimension reduction mapping matrix generated during the B+ tree main index construction phase consists of the arrangement of eigenvectors corresponding to the first three largest eigenvalues.

[0051] The three-dimensional vector output by the multiplication operation is normalized. The three values ​​in the normalized three-dimensional vector are then mapped to the x-coordinate, y-coordinate, and z-coordinate of the current query key in three-dimensional space. The normalization formula is as follows: in, For the normalized d-th dimension query key value, Let be the value of the d-th dimension in the three-dimensional vector output by the multiplication operation. For the d-th dimension of all index key values ​​during the B+ tree primary index construction phase, This is the minimum value of the d-th dimension of all index key values ​​during the B+ tree primary index construction phase. The value of d is 1, 2, or 3, which correspond to the horizontal, vertical, and angular coordinates in three-dimensional space, respectively.

[0052] By normalizing the values, the three dimensions of the current query key are mapped to the range of 0 to 1, which is consistent with the range of index key values ​​stored in the B+ tree main index, thus eliminating the impact of differences in the magnitude of values ​​of different dimensions on the distance calculation results.

[0053] Starting from the root node of the B+ tree primary index, the process determines whether the current query key value falls within the range boundaries stored in a non-leaf node. If it does, the process traverses downwards along the child node pointers to the leaf node. Specifically, the query traversal process begins at the root node of the B+ tree primary index, comparing the current query key value with the range boundaries corresponding to each child node stored in the root node. It determines whether all three dimensions of the current query key value fall within the range of the corresponding child node. If the current query key value falls within the range of a child node, the process traverses downwards along the pointer of that child node to the next level of non-leaf nodes. This range comparison and traversal process is repeated until the leaf node of the B+ tree primary index is reached, completing the location of the matched leaf node. If the current query key value falls within the ranges of multiple child nodes simultaneously, the process traverses downwards along all matching child node pointers to obtain all matched leaf nodes, ensuring that the range query covers all index entries that meet the conditions.

[0054] Within the matched leaf nodes, calculate the Euclidean distance between the current query key and each index key stored within the leaf node. Extract the environment nodes corresponding to index key values ​​whose Euclidean distance is less than a set distance threshold, and combine them to generate a candidate environment node set. The formula for calculating the Euclidean distance is: in, The current query key value q and the i-th index key value in the leaf node The Euclidean distance between them This represents the value of the d-th dimension of the current query key. Let d be the value of the d-th dimension of the i-th index key value, where d takes the values ​​1, 2, or 3.

[0055] Specifically, the process iterates through all index entries stored in the matched leaf nodes. For each index entry's corresponding index key value, the Euclidean distance between it and the current query key value is calculated. If the calculated Euclidean distance is less than a set distance threshold, the environment node identifier and physical offset address corresponding to that index entry are extracted, and the complete feature data of the corresponding environment node is read from the disk file based on the physical offset address. The set distance threshold is set based on the distribution characteristics of historical environment features to control the size and matching accuracy of the candidate environment node set. If the Euclidean distance between the stored index key value and the current query key value in the adjacent leaf nodes of the matched leaf node is also less than the set distance threshold, the adjacent leaf nodes are traversed using bidirectional pointers between the leaf nodes to extract environment nodes that meet the criteria. All environment nodes that meet the criteria are combined to generate a candidate environment node set, and the environment nodes in the set are sorted in ascending order of their Euclidean distance to the current query key value.

[0056] In this embodiment, a high-dimensional feature vector of the environment node is generated by feature concatenation, and the dimensionality reduction of the high-dimensional feature vector is achieved by principal component analysis to generate a low-dimensional index key value. A B+ tree main index structure is constructed by separating the storage of interval boundaries and physical offset addresses. The current query key value is generated by the same dimensionality reduction process, and the candidate environment node set is quickly located and extracted by interval matching traversal and Euclidean distance calculation.

[0057] In yet another alternative embodiment, refer to Figure 4 For each lighting node, the update records of the multi-source collaborative brightness parameters are extracted in chronological order of timestamps, and each update record is encapsulated into a linked list node. Specifically, the multi-source collaborative brightness parameters corresponding to each lighting node undergo multiple update operations. Each update operation corresponds to a unique update timestamp and the updated brightness parameter data. The update timestamp is a millisecond-level Unix timestamp to ensure the uniqueness and accuracy of the time records. All brightness parameter update records under that lighting node are extracted in ascending order of timestamps, and each update record is encapsulated into an independent linked list node. Each linked list node corresponds to one brightness parameter update operation, and the generation order of the linked list nodes is consistent with the update order of the brightness parameters.

[0058] Each linked list node stores the updated multi-source coordinated brightness parameters, the current timestamp, and the identifier of the environment node that triggered the update. Specifically, each linked list node has fixed storage fields, storing the updated multi-source coordinated brightness parameter array, the timestamp corresponding to the update operation, the unique identifier of the environment node that triggered the brightness parameter update, and predecessor, successor, and jump pointer fields. The length of the multi-source coordinated brightness parameter array is the same as the number of lighting bulbs in the rescue drone, and each element is a 32-bit floating-point value, corresponding to the brightness duty cycle parameter of one lighting bulb; the timestamp is a 64-bit unsigned integer value, corresponding to the millisecond-level timestamp of this parameter update operation; the environment node identifier is a 64-bit unsigned integer value, corresponding to the unique identifier code of the environment node that triggered the brightness parameter update; and the pointer fields are all 64-bit address pointers, storing the physical storage address of the corresponding linked list node.

[0059] Table 4. Description of Storage Fields and Functions of Doubly Linked List Auxiliary Index Linked List Nodes This table defines the storage fields, data format, byte length, and access permissions for each linked list node in the doubly linked list auxiliary index. All fields of the linked list node are stored in a fixed byte order, with fixed-length fields stored at the beginning of the linked list node and variable-length fields stored at the end of the linked list node, ensuring the accuracy and atomicity of data read and write operations.

[0060] A doubly linked list auxiliary index is formed by connecting all linked list nodes under the same lighting node using predecessor and successor pointers. The successor pointer of the head node points to the earliest single update record with its timestamp, and the predecessor pointer of the tail node points to the latest single update record with its timestamp. Specifically, all linked list nodes under the same lighting node are arranged in ascending order of timestamps. Adjacent linked list nodes are connected by predecessor and successor pointers; the successor pointer of the preceding linked list node points to the storage address of the following linked list node, and the predecessor pointer of the following linked list node points to the storage address of the preceding linked list node. The first linked list node is the head node of the doubly linked list, with its predecessor pointer set to null and its successor pointer pointing to the linked list node with the second earliest timestamp. The last linked list node is the tail node of the doubly linked list, with its successor pointer set to null and its predecessor pointer pointing to the linked list node with the second latest timestamp. Each lighting node corresponds to a unique doubly linked list auxiliary index. The storage addresses of the head and tail nodes of the doubly linked list auxiliary index are stored in the index metadata table of the database. The index metadata table adopts a hash index structure. The head and tail nodes of the corresponding doubly linked list can be quickly retrieved through the lighting node identifier, ensuring fast location during the retrieval process.

[0061] Extract the lighting node identifier corresponding to each candidate environment node in the candidate environment node set, and locate the tail node of the corresponding doubly linked list auxiliary index based on the lighting node identifier. Specifically, for each candidate environment node in the candidate environment node set, read its stored array of associated lighting node identifiers. For each lighting node identifier in the array, perform a hash query in the index metadata table of the database to obtain the storage address of the tail node of the corresponding doubly linked list auxiliary index. Based on the tail node storage address, call the file system interface to read the complete data content of the tail node, including all storage field information of the tail node.

[0062] Read the current timestamp and multi-light source collaborative brightness parameters stored in the tail node, and determine the time difference between the current timestamp and the system timestamp of the real-time point cloud data. The formula for calculating the time difference is: in, This is the time difference. This is the system timestamp for the moment of real-time point cloud data acquisition. Update the timestamps for the parameters stored in the linked list nodes.

[0063] If the time difference is less than the preset effective duration threshold, the multi-light source coordinated brightness parameters stored in the tail node are used as the latest state. If the time difference is greater than or equal to the preset effective duration threshold, the process backtracks along the predecessor pointer of the tail node until a linked list node with a time difference less than the preset effective duration threshold is found, and its multi-light source coordinated brightness parameters are read as the latest state. Specifically, the preset effective duration threshold is a pre-set effective time length for lighting parameters, used to determine the time validity of historical lighting parameters. The preset effective duration threshold is set according to the rate of environmental change in the rescue scenario. If the calculated time difference is less than the preset effective duration threshold, it means that the lighting parameters stored in the tail node are within the effective time range and can be directly used as the latest state of the corresponding lighting node. If the time difference is greater than or equal to the preset effective duration threshold, it means that the lighting parameters stored in the tail node have exceeded the effective time range. It is necessary to traverse forward along the predecessor pointer of the tail node, read the timestamp of each predecessor linked list node in turn, calculate the corresponding time difference, until a linked list node with a time difference less than the preset effective duration threshold is found, and its multi-light source coordinated brightness parameters are read as the latest state. If a linked list node that meets the valid duration condition is not found after traversing to the head node of the doubly linked list, the multi-light source coordinated brightness parameter stored in the head node is taken as the latest state to ensure that the corresponding lighting parameter data can be obtained.

[0064] In each node of the doubly linked list auxiliary index, a jump pointer is added. The jump pointer points to the historical linked list nodes that are counted backward by a fixed step size from the current linked list node. The formula for calculating the location of the target node of the jump pointer is as follows: in, Let n be the target linked list node pointed to by the jump pointer of the nth linked list node. Let be the ns-th node in the doubly linked list, where s is a preset fixed step size value.

[0065] Specifically, the preset fixed step size is a positive integer used to define the stride length of the jump pointer. The fixed step size is set based on the average length of the doubly linked list. For each node in the doubly linked list, an index is assigned according to the timestamp from earliest to latest, with the head node having an index of 1 and the tail node having an index equal to the total number of nodes. If the index n of the current node is greater than the fixed step size s, the jump pointer of that node is set to the nth node; if the index n is less than or equal to the fixed step size s, the jump pointer is set to the head node of the doubly linked list. When a new node is added to the doubly linked list, the indexes and jump pointers of all nodes are updated synchronously to ensure that the jump pointer always points to the correct fixed step size.

[0066] When backtracking along the predecessor pointer of the tail node, the timestamp of the historical linked list node pointed to by the jump pointer of the current linked list node is read first. If the time difference between the timestamp of the historical linked list node and the system timestamp is still greater than or equal to a preset valid duration threshold, the current backtracking position is jumped to that historical linked list node, and the jump pointer of the linked list node at the current backtracking position is read again until a linked list node with a time difference less than the preset valid duration threshold is located. Specifically, at the beginning of the backtracking process, the current backtracking position is the tail node of the doubly linked list. The historical linked list node pointed to by the jump pointer of the linked list node at the current backtracking position is read first, and the time difference between the timestamp of the historical linked list node and the system timestamp is calculated. If the time difference is still greater than or equal to the preset effective duration threshold, the current backtracking position is jumped to that historical linked list node, and the above process of reading the jump pointer and judging the time difference is repeated. If the time difference is less than the preset effective duration threshold, the jump operation is stopped, and starting from the current backtracking position, the linked list nodes are traversed backward along the successor pointers to find the latest linked list node with a time difference less than the preset effective duration threshold. The multi-light source coordinated brightness parameters stored in this linked list node are read as the latest state. By using the jump pointer to jump with a larger step size, the number of linked list nodes that need to be traversed during the backtracking process can be reduced, improving the retrieval efficiency of effective lighting parameters.

[0067] In this embodiment, by encapsulating each parameter update record as a linked list node and constructing a doubly linked list auxiliary index using predecessor and successor pointers, the time-sequential storage and bidirectional traversal of lighting parameter update records are realized. The time validity of the lighting parameters is determined by calculating the time difference, ensuring that the latest retrieved state parameters are within the valid time range. By adding jump pointers to the linked list nodes, step-length jumps are implemented during the backtracking process, reducing the number of linked list node traversals and improving the retrieval efficiency of valid lighting parameters.

Claims

1. A machine learning-based adaptive lighting brightness adjustment method for rescue drones, characterized in that, The method includes: establishing a scene feature map database containing environment nodes and lighting nodes, wherein the environment nodes store obstacle reflectivity features and spatial distribution features extracted by machine learning models, and the lighting nodes store multi-light source collaborative brightness parameters corresponding to the environment nodes; In the database file system, a B+ tree primary index is constructed based on the feature dimensions of the environment node, and a doubly linked list secondary index is constructed based on the parameter change time sequence of the lighting node. Acquire real-time point cloud data from the rescue drone, and input the real-time point cloud data into a machine learning feature extraction network to generate a current environment feature vector; Based on the current environment feature vector, a range query is performed in the B+ tree main index to locate the candidate environment node set, and the latest state of the lighting node corresponding to the candidate environment node set is retrieved in the doubly linked list auxiliary index; The candidate environment node set and the lighting parameters associated with the latest state are input into a graph attention network for feature aggregation, and the independent brightness adjustment commands for multiple lighting beads of the rescue drone are output.

2. The method for adaptive adjustment of lighting brightness of a rescue drone based on machine learning according to claim 1, characterized in that, Establishing a scene feature map database that includes environmental nodes and lighting nodes includes: performing voxel rasterization processing on historical rescue point cloud data, extracting the average reflectance within each voxel as the obstacle reflectance feature, and extracting the set of spatial coordinates of each voxel in the three-dimensional coordinate system as the spatial distribution feature. Voxels whose reflectance feature differences with adjacent voxels are less than a preset difference threshold are clustered, and each cluster is mapped to an environment node. For each environmental node, the brightness duty cycle data of multiple light sources that coincide with the spatial location of the cluster are extracted from the historical lighting records as the multi-light source collaborative brightness parameter, and the multi-light source collaborative brightness parameters with timestamp adjacency are constructed as the lighting node; Establish spatial adjacency edges between the environmental nodes and data association edges between the environmental nodes and their corresponding lighting nodes.

3. The method for adaptive adjustment of lighting brightness for rescue drones based on machine learning according to claim 1, characterized in that, Constructing a B+ tree master index for the feature dimensions of the environmental nodes includes: concatenating the obstacle reflectivity features and the spatial distribution features in each environmental node into a high-dimensional vector of node features; Principal component analysis is performed on the high-dimensional vector of the node features to reduce its dimensionality, and the first three principal component components are extracted as the index key values ​​of the B+ tree main index. The non-leaf nodes of the B+ tree primary index store the interval boundaries formed by the maximum and minimum values ​​of the index key; In the leaf nodes of the B+ tree master index, the node identifier of the corresponding environment node and the physical offset address of the node feature high-dimensional vector in the disk file are stored in order of the index key value.

4. The method for adaptive adjustment of lighting brightness for rescue drones based on machine learning according to claim 1, characterized in that, The construction of a doubly linked list auxiliary index for the parameter change sequence of the lighting nodes includes: for each lighting node, extracting each update record of the multi-light source collaborative brightness parameter in chronological order of timestamps, and encapsulating each update record into a linked list node; Each linked list node stores the updated multi-source collaborative brightness parameters, the current timestamp, and the environmental node identifier that triggered the update. The doubly linked list auxiliary index is formed by connecting all linked list nodes under the same lighting node through the predecessor pointer and successor pointer, wherein the successor pointer of the head node points to the single update record with the earliest timestamp, and the predecessor pointer of the tail node points to the single update record with the latest timestamp.

5. The method for adaptive adjustment of lighting brightness for rescue drones based on machine learning according to claim 1, characterized in that, The process of locating a set of candidate environment nodes in the B+ tree main index based on the current environment feature vector includes: performing principal component analysis dimensionality reduction on the current environment feature vector in the same phase as the B+ tree main index construction stage to obtain the current query key value; Starting from the root node of the B+ tree primary index, determine whether the current query key value falls within the interval boundary stored in the non-leaf node; If it falls into the leaf node, then traverse down the child node pointers to the leaf node; In the matched leaf nodes, the Euclidean distance between the current query key value and each index key value stored in the leaf node is calculated. The environment nodes corresponding to the index key values ​​whose Euclidean distance is less than a set distance threshold are extracted and combined to generate the candidate environment node set.

6. The method for adaptive adjustment of lighting brightness of a rescue drone based on machine learning according to claim 1, characterized in that, Retrieving the latest state of the lighting node corresponding to the candidate environment node set in the doubly linked list auxiliary index includes: extracting the lighting node identifier corresponding to each candidate environment node in the candidate environment node set; Locate the tail node of the corresponding doubly linked list auxiliary index based on the lighting node identifier; Read the current timestamp and multi-light source collaborative brightness parameters stored in the tail node, and determine the time difference between the current timestamp and the system timestamp that acquires the real-time point cloud data in real time; If the time difference is less than a preset effective duration threshold, then the multi-source collaborative brightness parameters stored in the tail node are taken as the latest state. If the time difference is greater than or equal to the preset effective duration threshold, then backtrack along the predecessor pointer of the tail node until a linked list node with a time difference less than the preset effective duration threshold is found and the multi-source collaborative brightness parameter in it is read as the latest state.

7. The method for adaptive adjustment of lighting brightness for rescue drones based on machine learning according to claim 2, characterized in that, Voxel rasterization of historical rescue point cloud data includes: dividing the three-dimensional space into cubic grids with preset side lengths; For a cubic mesh containing point cloud data, extract the reflection intensity values ​​of all lidar reflection points within the mesh; The reflection intensity values ​​are weighted and summed according to the spatial distance between the reflection point and the optical axis of the drone camera to obtain the weighted sum of reflection intensity; The average reflectance is obtained by dividing the sum of the weighted reflection intensities by the total number of reflection points within the cubic grid. The convex hull of all reflection points within the cubic mesh is calculated, and the coordinates of the geometric center point of the convex hull are used as the core coordinates of the spatial distribution features.

8. A machine learning-based adaptive lighting brightness adjustment method for rescue drones according to claim 5, characterized in that, Performing principal component analysis dimensionality reduction processing on the current environment feature vector in the same way as the B+ tree main index construction stage includes: inputting the current environment feature vector into a pre-stored dimensionality reduction mapping matrix for multiplication operations. The dimensionality reduction mapping matrix is ​​generated by calculating the covariance matrix of the set of high-dimensional vectors of node features of historical environment nodes and extracting the feature vectors corresponding to the three largest eigenvalues ​​and arranging them. The three-dimensional vector output by the multiplication operation is normalized, and the three values ​​in the normalized three-dimensional vector are mapped to the horizontal, vertical and vertical coordinates of the current query key value in the three-dimensional space.

9. A machine learning-based adaptive lighting brightness adjustment method for rescue drones according to claim 6, characterized in that, Backtracking along the predecessor pointer of the tail node includes: adding a jump pointer to each linked list node of the doubly linked list auxiliary index, the jump pointer pointing to the historical linked list node that is pushed forward by a fixed step size from the current linked list node; When tracing back along the predecessor pointer of the tail node, the timestamp of the historical linked list node pointed to by the jump pointer of the current linked list node is read first. If the time difference between the timestamp of the historical linked list node and the system timestamp is still greater than or equal to the preset effective duration threshold, the current backtracking position is jumped to the historical linked list node, and the jump pointer of the linked list node at the current backtracking position is read until a linked list node with a time difference less than the preset effective duration threshold is located.

10. A machine learning-based adaptive lighting brightness adjustment method for rescue drones according to claim 2, characterized in that, Establishing spatial adjacency edges between the environment nodes includes: calculating the spatial distance between the core coordinates of any two environment nodes corresponding to their respective clusters; If the spatial distance is less than the preset adjacency distance threshold, a spatial adjacency edge is established between the two environmental nodes, and the reciprocal of the spatial distance is used as the initial edge weight of the spatial adjacency edge. The environment nodes in the candidate environment node set are used as graph nodes of the graph attention network. The spatial adjacent edges and their initial edge weights within the candidate environment node set are input into the graph attention network. The initial edge weights are updated using the attention coefficient calculation formula. The updated edge weights are weighted and summed with the lighting parameters associated with the corresponding environment nodes to generate the independent brightness adjustment command.