Shield tunnel inspection robot autonomous coverage detection and safety obstacle avoidance control device

By combining a mail carrier coverage algorithm based on vision and radar sensors with prior structural knowledge, the problem of insufficient positioning accuracy of shield tunnel inspection robots was solved, achieving efficient and safe tunnel inspection and obstacle avoidance control.

CN122331562BActive Publication Date: 2026-08-04INSTITUTE FOR SMART CITY OF CHONGQING UNIVERSITY IN LIYANG LIYANG +2
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
INSTITUTE FOR SMART CITY OF CHONGQING UNIVERSITY IN LIYANG LIYANG
Filing Date
2026-06-02
Publication Date
2026-08-04

AI Technical Summary

Technical Problem

Existing shield tunnel inspection robots have shortcomings in positioning accuracy and robustness, especially in environments where global navigation satellite systems deny positioning. Furthermore, existing solutions do not fully utilize prior knowledge of the shield tunnel structure, leading to decreased positioning accuracy and ambiguous feature matching.

Method used

The postman coverage algorithm, combined with structural prior knowledge, is used to acquire clean point cloud frames and image frames through visual and radar sensors. A pose graph is constructed and incrementally solved to generate a coverage walking sequence. Combined with obstacle control functions, safe obstacle avoidance is achieved, ensuring the integrity of the detection coverage and the optimality of the path.

Benefits of technology

It significantly improves the positioning accuracy and robustness of the shield tunnel inspection robot, ensuring the integrity and safety of the inspection task, avoiding the inefficiency and blind spot problems in traditional scanning strategies, and achieving efficient tunnel inspection.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122331562B_ABST
    Figure CN122331562B_ABST
Patent Text Reader

Abstract

This invention belongs to the field of automatic control technology, specifically relating to an autonomous coverage detection and obstacle avoidance control device for a shield tunnel inspection robot. It includes: an inspection sensor assembly, an odometer assembly, a computing and processing assembly, a memory, a motion control assembly, a communication assembly, and a power supply assembly. The inspection sensor assembly includes a vision sensor and a radar sensor. The computing and processing assembly is communicatively connected to the inspection sensor assembly, the odometer assembly, the motion control assembly, the communication assembly, and the power supply assembly. The memory stores instructions that can be executed by the computing and processing assembly. This invention fully utilizes prior knowledge of the shield tunnel structure to improve positioning accuracy, employs a mail carrier coverage algorithm to ensure the integrity of the detection coverage and path optimization, introduces a control obstacle function to achieve real-time obstacle avoidance under safety constraints, and ensures the continuity and reliability of the inspection task in a dynamic environment through the tight coupling of the three components.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention belongs to the field of automatic control technology, specifically relating to an autonomous coverage detection and safety obstacle avoidance control device for shield tunnel inspection robots. Background Technology

[0002] Traditional shield tunnel inspections primarily rely on a combination of manual visual inspection and portable testing instruments. Inspectors walk along the tunnel, identifying wall defects through visual observation or with the aid of flashlights and binoculars. Suspicious areas are then quantitatively measured using equipment such as crack width gauges and leakage detectors. This manual inspection method has several limitations: First, it is labor-intensive and inefficient, with complete inspections of long tunnels often taking days or even weeks. Second, the quality of inspections is affected by the inspectors' experience and condition, resulting in strong subjectivity and poor consistency. Third, the harsh environment inside the tunnel, with insufficient lighting, poor ventilation, and safety risks such as train operation, poses a threat to the physical and mental health of the inspectors. Fourth, inspection data is mostly stored in paper records or simple photographs, making digital management and long-term traceability analysis difficult.

[0003] To overcome the shortcomings of manual inspections, tunnel inspection robot technology has developed rapidly in recent years. Existing tunnel inspection robots are typically equipped with various sensors such as industrial cameras, laser scanners, and infrared thermal imagers, enabling them to automatically collect images and 3D point cloud data of the tunnel walls and automatically identify defects through image processing and machine learning algorithms. Regarding mobile platforms, various forms are used, including wheeled robots, track-mounted robots, and suspended robots. Among these, wheeled robots have become a research hotspot due to their high flexibility and low deployment cost.

[0004] However, existing tunnel inspection robots still face several technical challenges in practical applications. The first is the positioning problem. Shield tunnels are typical environments denied by global navigation satellite systems, meaning robots cannot rely on satellite signals for positioning. Existing solutions mostly employ odometry accumulation or vision- or laser-based simultaneous localization and mapping (SLAM) techniques. Odometry accumulation suffers from unavoidable drift errors, leading to a significant decrease in positioning accuracy over long distances. While vision- or laser-based SLAM techniques perform well in general environments, shield tunnels have highly repetitive geometric structures and sparse texture features, making feature matching prone to ambiguity, loop closure detection difficult, and positioning robustness insufficient. Existing technologies have not fully utilized the inherent structural prior knowledge of shield tunnels, such as constant cross-sectional shape and periodic arrangement of rings, to improve positioning accuracy and suppress accumulated drift. Summary of the Invention

[0005] Therefore, the main objective of this invention is to provide an autonomous coverage detection and safety obstacle avoidance control device for shield tunnel inspection robots. This device fully utilizes prior knowledge of the shield tunnel structure to improve positioning accuracy, employs a mailman coverage algorithm to ensure the integrity of the detection coverage and the optimality of the path, introduces a control obstacle function to achieve real-time obstacle avoidance under safety constraints, and ensures the continuity and reliability of the inspection task in a dynamic environment through the close coupling of these three elements.

[0006] The technical solution adopted in this invention is as follows: An autonomous coverage detection and safety obstacle avoidance control device for a shield tunnel inspection robot includes: an inspection sensor component, an odometer component, a computing and processing component, a memory, a motion control component, a communication component, and a power supply component. The inspection sensor component includes a vision sensor and a radar sensor. The computing and processing component is communicatively connected to the inspection sensor component, the odometer component, the motion control component, the communication component, and the power supply component. The memory stores instructions executable by the computing and processing component, which executes these instructions to enable the device to complete the following steps: time-aligning and preprocessing the output data from the inspection sensor component and the odometer component to obtain clean point cloud frames and clean image frames; obtaining the radar relative pose based on the radar odometer and the visual relative pose based on visual constraints; and extracting tunnel data from the clean point cloud frames. The system first sets prior constraints on the road structure, constructs a pose graph, and performs incremental solving to obtain the robot pose sequence. Based on the robot pose sequence, it generates a tunnel occupancy grid map and a passageway map. The passageway map is segmented into grids to obtain intra-segment grid maps. Based on the field-of-view model of the inspection sensor components, it constructs a set of necessary coverage edges. It generates a coverage walking sequence through mail carrier coverage solving, and generates a coverage path point sequence, a coverage viewpoint sequence, and a detection trigger sequence based on the coverage walking sequence. Based on real-time perception data, it generates a set of dynamic obstacle states. Based on the coverage path point sequence, it generates a set of candidate control sequences and performs CBF safety filtering to obtain a safe control sequence. The motion control component executes the safe control sequence to form an obstacle avoidance trajectory to achieve obstacle avoidance, and updates the coverage state according to the obstacle avoidance trajectory to achieve closed-loop operation.

[0007] Furthermore, the time alignment and preprocessing include: time-aligning the image frames output by the visual sensor, the point cloud frames output by the radar sensor, and the odometer frames output by the odometer component with the same time reference; removing outliers and ground approximations from the point cloud frames to form clean point cloud frames; and performing distortion correction and brightness normalization on the image frames to form clean image frames.

[0008] Furthermore, obtaining the radar relative pose based on radar odometry includes: performing point cloud registration between adjacent cleaned point cloud frames, which includes establishing a voxel mesh, statistically analyzing normal and covariance information within the voxels, performing iterative matching to update the pose increment based on normal consistency, and outputting the radar relative pose; obtaining the visual relative pose based on visual constraints includes: extracting corner and line segment features from adjacent cleaned image frames and forming a feature set, obtaining feature correspondences through feature descriptor matching, performing geometric consistency filtering on the feature correspondences to form a visual correspondence set, and calculating the visual relative pose based on the visual correspondence set.

[0009] Furthermore, extracting the tunnel structure prior constraint set from the cleaned point cloud frame includes: extracting a set of cross-sectional points perpendicular to the robot pose from the cleaned point cloud frame; performing circular arc fitting or elliptical arc fitting on the cross-sectional point set to obtain the cross-sectional center point and the cross-sectional radius or the major and minor axes of the cross-section; performing ring seam detection on the intensity distribution and geometric abrupt changes of continuous point cloud frames along the mileage direction to obtain a set of ring seams; generating the tunnel centerline segment based on the cross-sectional center point sequence; generating the ring plate periodic segment based on the set of ring seams; and generating the structural prior constraint set from the tunnel centerline segment and the ring plate periodic segment. The structural prior constraint set includes centerline continuity constraints, cross-sectional consistency constraints, and ring seam periodic consistency constraints.

[0010] Furthermore, constructing the pose graph and performing incremental solutions to obtain the robot pose sequence includes: using the robot pose at each moment as a pose graph node, forming radar constraint edges from the radar relative pose, forming visual constraint edges from the visual relative pose, forming motion constraint edges from the odometry frames, and forming structural prior constraint edges from the set of structural prior constraints; performing incremental solutions on the pose graph, which includes constructing a sparse linear equation system for the newly added constraint edges, performing sparse solutions to obtain pose update amounts, writing the pose update amounts back to the pose graph nodes and updating the covariance information, and outputting the robot pose sequence; based on the robot pose sequence, fusing the cleaned point cloud frames into a unified coordinate system to generate a tunnel occupancy grid map and a passageway map; the passageway map is formed by expanding the tunnel centerline segment outward and combining it with the passable units of the tunnel occupancy grid map.

[0011] Furthermore, the passageway map is segmented and rasterized to obtain intra-segment raster maps. The set of necessary coverage edges is constructed based on the field-of-view model of the inspection sensor components, including: segmenting the passageway map along the tunnel centerline; generating an intra-segment raster map within each segment, with the raster cells of the intra-segment raster map mapped from the tunnel-occupied raster map; generating a set of detection strips in the intra-segment raster map based on the field-of-view model of the inspection sensor components, the set of detection strips consisting of strips on both sides of the centerline segment and the arch strip; projecting the set of detection strips onto the intra-segment raster map to generate a set of necessary coverage raster edges; constructing a coverage map structure with the center of the raster cell as the node and the line connecting adjacent raster cells as the edge, and mapping the set of necessary coverage raster edges to the set of necessary coverage edges.

[0012] Furthermore, the generation of the cover walk sequence through the postman cover solution includes: performing connectivity processing on the cover graph structure to form a connected must-cover subgraph; counting the set of odd-degree nodes in the connected must-cover subgraph; performing shortest path search on each pair of odd-degree nodes in the cover graph structure to obtain a set of shortest path edge sequences; performing minimum matching based on the set of shortest path edge sequences to obtain a set of odd-degree node pairs; copying the shortest path edge sequences corresponding to the odd-degree node pairs and adding them to the cover graph structure to form an Eulerian cover graph; and performing Eulerian circuit generation on the Eulerian cover graph. Eulerian circuit generation includes traversing each edge from the starting node and recording the edge visit status, inserting circuit segments at nodes with unvisited edges and merging the circuit segments, and outputting the cover walk sequence.

[0013] Furthermore, the generation of a coverage path point sequence, a coverage viewpoint sequence, and a detection trigger sequence based on the coverage walking sequence includes: converting the coverage walking sequence into a coverage path point sequence, which contains the start point, end point, and turning point of each grid edge; generating a coverage viewpoint sequence along the coverage path point sequence, where each viewpoint contains a pose and orientation, with the pose determined by the coverage path point and the orientation determined by the normal direction of the detection strip set; and generating a detection trigger sequence, which triggers the inspection sensor components one by one according to the coverage viewpoint sequence to collect detection data and output the detection result stream.

[0014] Furthermore, a dynamic obstacle state set is generated based on real-time sensing data, and a candidate control sequence set is generated based on the covered path point sequence and subjected to CBF safety filtering to obtain a safe control sequence. This includes: the inspection sensor component continuously outputs real-time point cloud frames and real-time image frames during operation; the computing and processing component performs clustering and segmentation on the real-time point cloud frames to obtain an obstacle point cluster set, and performs target detection on the real-time image frames to obtain an obstacle bounding box set; the obstacle point cluster set and the obstacle bounding box set are spatially correlated to generate a dynamic obstacle state set, which includes obstacle position, obstacle shape envelope, and obstacle velocity estimation. The obstacle velocity estimation is obtained by the difference between obstacle positions at adjacent time points; the computing and processing component generates tracking control commands based on the covered path point sequence, which includes the desired forward speed and the desired turning angular velocity; a candidate control sequence set is generated around the tracking control commands, which consists of multiple discrete control sequences, each consisting of a set of speed and turning commands; and so on. Each discrete control sequence is derived from a short-time-domain forward extrapolation based on a kinematic model, resulting in a set of predicted trajectories. A set of safety constraints is constructed based on the corridor map and the dynamic obstacle state set, including corridor boundary constraints, minimum safe interval constraints, and braking stop constraints. Safety constraint verification is performed on each predicted trajectory, including determining the overlap relationship between the predicted trajectory and the corridor boundary in the short-time domain, the minimum interval relationship with the envelope of the dynamic obstacle shape, and the stop space relationship when braking is triggered at the end of the short-time domain. When a predicted trajectory triggers any constraint condition in the safety constraint set, a safety projection is performed on the corresponding discrete control sequence to generate a safe control sequence. The safety projection involves searching the activity set to obtain a control sequence that satisfies the constraint conditions, with the goal of minimizing control change. When all predicted trajectories pass the safety constraint verification, the discrete control sequence with the smallest path deviation is selected as the safe control sequence from the verified discrete control sequences.

[0015] By employing the above technical solution, this invention achieves the following beneficial effects: This invention fully utilizes the inherent geometric features of shield tunnels, extracting prior structural information such as the cross-section center point, cross-section radius or major and minor axes, and circumferential seam lines from point cloud data. It constructs a set of prior structural constraints including centerline continuity constraints, cross-section consistency constraints, and circumferential seam period consistency constraints, and integrates this set with radar odometer, visual constraints, and motion constraints into a pose graph optimization framework. This multi-source constraint fusion positioning method effectively suppresses the cumulative drift of the odometer during long-distance travel, overcomes the feature matching ambiguity caused by the repetitive structure of shield tunnels, significantly improves positioning accuracy and robustness, and lays a reliable pose foundation for subsequent coverage path planning and obstacle avoidance control.

[0016] This invention addresses the unique morphology of the narrow, tubular space in shield tunnels. Based on the field-of-view model of the inspection sensor components, it generates a set of detection strips, transforming the wall inspection requirements into a set of edges that must be covered. Then, a postman coverage solution method is employed to generate the shortest coverage path sequence traversing all necessary edges. The postman coverage solution, through odd-degree node pairing and Eulerianization of the graph, theoretically guarantees the optimality of the coverage path, avoiding the inefficiency and blind spots of traditional reciprocating or spiral scanning strategies in tubular spaces. This allows the inspection robot to complete full coverage of all areas to be inspected with minimal travel, significantly improving inspection efficiency.

[0017] This invention introduces a safety filtering mechanism based on obstacle avoidance functions. By constructing a safety constraint set including corridor boundary constraints, minimum safe interval constraints, and braking stop constraints, candidate control sequences are verified and safely projected in real time, ensuring that the robot can safely avoid dynamic obstacles at any time. More importantly, this invention establishes a closed-loop update mechanism between obstacle avoidance control and coverage path planning. When obstacle avoidance behavior causes the original coverage path to become partially unreachable, the system can re-execute the mail carrier coverage solution starting from the current robot pose to generate an updated coverage path. This ensures that the integrity of the detection task is not affected by obstacle avoidance behavior, achieving an organic balance between safety and task performance. Attached Figure Description

[0018] Figure 1 The schematic diagram of the cross-section point set fitting principle provided in the embodiment of the present invention includes two parts: cross-section point set circular arc fitting and cross-section point set elliptical arc fitting. Figure 2 The diagram illustrates the intra-segment raster graph and overlay graph structures provided in this embodiment of the invention, including the intra-segment raster graph and the edges that must be covered, as well as the overlay graph structure and the odd-degree nodes. Figure 3 This is a schematic diagram of the postman coverage solution process provided in an embodiment of the present invention, including two parts: odd-degree node pairing and edge replication, and coverage walk sequence. Detailed Implementation

[0019] An autonomous coverage detection and safety obstacle avoidance control device for a shield tunnel inspection robot includes: an inspection sensor component, an odometer component, a computing and processing component, a memory, a motion control component, a communication component, and a power supply component. The inspection sensor component includes a vision sensor and a radar sensor. The computing and processing component is communicatively connected to the inspection sensor component, the odometer component, the motion control component, the communication component, and the power supply component. The memory stores instructions executable by the computing and processing component, which executes these instructions to enable the device to complete the following steps: time-aligning and preprocessing the output data from the inspection sensor component and the odometer component to obtain clean point cloud frames and clean image frames; obtaining the radar relative pose based on the radar odometer and the visual relative pose based on visual constraints; and extracting tunnel data from the clean point cloud frames. The system first sets prior constraints on the road structure, constructs a pose graph, and performs incremental solving to obtain the robot pose sequence. Based on the robot pose sequence, it generates a tunnel occupancy grid map and a passageway map. The passageway map is segmented into grids to obtain intra-segment grid maps. Based on the field-of-view model of the inspection sensor components, it constructs a set of necessary coverage edges. It generates a coverage walking sequence through mail carrier coverage solving, and generates a coverage path point sequence, a coverage viewpoint sequence, and a detection trigger sequence based on the coverage walking sequence. Based on real-time perception data, it generates a set of dynamic obstacle states. Based on the coverage path point sequence, it generates a set of candidate control sequences and performs CBF safety filtering to obtain a safe control sequence. The motion control component executes the safe control sequence to form an obstacle avoidance trajectory to achieve obstacle avoidance, and updates the coverage state according to the obstacle avoidance trajectory to achieve closed-loop operation.

[0020] When performing autonomous coverage inspection tasks, shield tunnel inspection robots first need to establish accurate perception and positioning capabilities of the tunnel environment, and then plan a walking path that can completely cover all areas to be inspected. This embodiment elaborates on the specific implementation process of structure-prior SLAM localization and shield tunnel map construction, as well as the technical details of the autonomous coverage inspection path generation driven by mail cover.

[0021] The inspection sensor assembly and the odometer assembly acquire data under their respective independent clocks. The vision sensor outputs image frames at a frequency of 30 frames per second, the radar sensor outputs point cloud frames at a frequency of 10 frames per second, and the odometer assembly outputs odometer frames at a frequency of 100 frames per second. Since the acquisition times of each sensor are different, direct fusion will cause drift in pose estimation. Therefore, it is necessary to unify all data to the same time reference.

[0022] Time alignment is achieved through a combination of hardware triggering and software interpolation. At the hardware level, the computing component sends synchronization pulse signals to each sensor, causing each sensor to immediately begin data acquisition upon receiving the pulse, thus aligning the start times of data acquisition across all sensors to microsecond-level precision. At the software level, for sensors with different acquisition frequencies, a linear interpolation method is used to align low-frequency data to high-frequency timestamps. Taking a radar sensor as an example, assuming at time... and time Point cloud frames were obtained respectively and point cloud frames The odometer component is at all times Output odometer frames, where Then through interpolation factor Motion compensation is applied to the point cloud frames to align the timestamps of the point cloud frames with the odometry frames.

[0023] The preprocessing of point cloud frames includes two steps: outlier removal and ground approximation point removal. Outlier removal employs a statistical filtering method. For each point in the point cloud frame, the average distance between it and its 50 nearest neighbors is calculated. If this average distance exceeds twice the standard deviation of the average distance of all points, the point is identified as an outlier and removed. The ground inside shield tunnels is typically a flat concrete road surface or track structure. These ground points do not contribute to the detection of the tunnel wall and may even interfere with the subsequent cross-section fitting process; therefore, they need to be removed. Ground approximation point removal uses a joint judgment method based on height thresholds and normal constraints. First, a set of points with a height lower than the robot chassis height plus 0.1 meters is selected. Then, local normal vectors are calculated for these points. If the angle between the normal vector and the vertical direction is less than 15 degrees, they are identified as ground approximations and removed. The point cloud frame after the above processing is called a cleaned point cloud frame.

[0024] Image frame preprocessing includes two steps: distortion correction and brightness normalization. The lens of the visual sensor exhibits radial and tangential distortion, which can cause straight lines in the image edge regions to appear curved, affecting the accuracy of subsequent line segment feature extraction. Distortion correction uses calibrated distortion coefficients to perform an inverse transformation on the image. A 5-parameter distortion model is used, including 3 radial distortion coefficients. , , With 2 tangential distortion coefficients , The lighting conditions inside shield tunnels are complex, with brightness differences between different sections potentially exceeding three times. Direct feature matching would lead to numerous false matches. Brightness normalization employs histogram equalization to stretch the image's grayscale distribution to the full range of 0 to 255, ensuring that images acquired under different brightness conditions have similar contrast characteristics. Image frames processed in this way are called cleaned image frames.

[0025] The core task of the radar odometry front end is to estimate the relative pose transformation between adjacent cleaned point cloud frames, i.e., the radar relative pose. Point cloud registration is a key technology to achieve this goal. This embodiment adopts a registration method based on voxelization normal distribution transformation.

[0026] First, a voxel mesh is established for the purified point cloud frame. The side length of the voxel mesh is set to 0.2 meters. This value needs to balance registration accuracy and computational efficiency: if the voxel side length is too small, the number of points in a single voxel will be too few to reliably estimate statistical characteristics; if the voxel side length is too large, geometric details will be lost, leading to a decrease in registration accuracy. For shield tunnels, which have regular geometric structures, a voxel side length of 0.2 meters can retain key geometric features such as ring joints while controlling the number of voxels in a single frame of point cloud to around 5000, meeting the requirements of real-time processing.

[0027] Statistical normal and covariance information within each voxel. Assume a voxel contains... There are points, whose coordinates are respectively Then the center of mass of the voxel is The covariance matrix is Perform eigenvalue decomposition on the covariance matrix; the eigenvector corresponding to the smallest eigenvalue is the normal vector of that voxel. The point cloud on the shield tunnel wall exhibits a flat distribution within voxels, and the smallest eigenvalue of its covariance matrix is ​​much smaller than the other two eigenvalues. This characteristic makes the estimation of the normal vector highly reliable.

[0028] Iterative matching and pose increment updates are performed based on normal consistency. Let the current frame be the source point cloud and the previous frame be the target point cloud. The initial pose increment is provided by the output of the odometry component. In each iteration, the source point cloud is first transformed to the target point cloud coordinate system according to the current pose increment. Then, for each voxel in the source point cloud, the voxel with the closest spatial position and a normal vector angle less than 30 degrees in the target point cloud voxel grid is searched as the matching voxel. The introduction of normal consistency constraints effectively eliminates incorrect matches because the normal vectors of the shield tunnel wall at different locations point to the tunnel's central axis; only voxels truly corresponding to the same wall region will have similar normal vector directions.

[0029] After establishing matching voxel pairs, a point-to-surface distance error function is constructed. Let the centroid of the source voxel after pose transformation be... The centroid of the target voxel is matched as The normal vector is Then the residual of the matched pair is , representing the signed distance from the source voxel centroid to the tangent plane of the target voxel after transformation. The sum of squared residuals of all matched pairs is used as the optimization objective, and the Gauss-Newton method is employed to solve for the pose increment update. The iterative process continues until the pose increment update is less than a set threshold or the maximum number of iterations (30) is reached. The final output pose increment is the radar relative pose, containing three translational components and three rotational components.

[0030] The core task of the visual constraint front-end is to extract stable feature correspondences from adjacent cleaned image frames and calculate the visual relative pose accordingly. The shield tunnel environment is characterized by sparse texture but rich line segments. Structures such as ring joints, bolt holes, and pipeline supports provide a large number of straight edges. Therefore, this embodiment extracts corner points and line segment features simultaneously to make full use of the geometric information of the tunnel environment.

[0031] Corner features were extracted using an accelerated segmentation test feature detection algorithm. This algorithm determines corners by comparing the grayscale values ​​of a candidate pixel with those of 16 pixels in its surrounding ring, offering high computational efficiency. A detection threshold of 20 was set, meaning a candidate pixel's grayscale difference from its surrounding pixels must exceed 20 to be considered a corner. To ensure a uniform distribution of corners in the image, it was divided into 8 rows and 12 columns, totaling 96 grids. Within each grid, a maximum of 10 corners with the strongest response values ​​were retained.

[0032] Line segment features were extracted using a line segment detection algorithm. This algorithm first calculates the gradient field of the image, then traces consecutive edge pixels along the gradient direction to form candidate line segments, and finally eliminates false line segments through statistical testing. The minimum line segment length was set to 30 pixels to exclude short line segments caused by noise. The annular joints in the shield tunnel appear as approximately horizontal long line segments in the image, while pipeline supports appear as approximately vertical line segments. These line segment features exhibit good repeatability between adjacent frames.

[0033] Descriptors are calculated for the extracted corner and line segment features to achieve feature matching. The corner descriptor uses a 256-dimensional binary robust independent basic feature descriptor. It generates a binary string by comparing the grayscale relationships of 256 predefined pairs of pixels in the corner's neighborhood. Hamming distance is used to measure the similarity between the two descriptors during matching. The line segment descriptor is constructed based on the grayscale distribution on both sides of the line segment. The line segment is divided into several sub-segments, and a rectangular region is sampled on both sides of each sub-segment, with the mean grayscale value calculated. This ultimately forms a vector describing the local appearance of the line segment.

[0034] The initial correspondences obtained from feature matching contain a certain proportion of erroneous matches, which need to be removed through geometric consistency screening. For corner point matching, a random sampling consensus algorithm is used to estimate the fundamental matrix. Matching pairs that do not meet the epipolar geometric constraints are marked as outliers and removed. The inlier proportion threshold is set to 0.5, meaning that at least 50% of the matching pairs must meet geometric consistency for the estimation result to be considered valid. For line segment matching, the projection distance between the line segment endpoints and the epipolar line is used as the consistency criterion. Matching pairs with a projection distance exceeding 3 pixels are removed. The remaining matching pairs after screening constitute the visual correspondence set.

[0035] Visual relative pose is calculated based on the visual correspondence set. If the number of corner matching pairs in the visual correspondence set exceeds 20, a five-point algorithm is used to recover the essential matrix, which is then decomposed into the rotation matrix and translation direction. Since monocular vision cannot recover the absolute scale, the magnitude of the translation vector needs to be calibrated using the output of a radar odometry or odometry component. Line segment matching pairs provide additional rotational constraints, optimizing the rotation estimation by minimizing the angular deviation of the matched line segments after transformation. The final output transformation is the visual relative pose.

[0036] In some situations, the visual constraint front-end may fail to output a valid visual relative pose. For example, when the robot traverses a section with drastic changes in lighting, the success rate of feature matching will decrease significantly; or when the robot faces a newly painted wall with extremely sparse texture, the number of extractable corner points may be insufficient to support pose estimation. In these cases, the system will continue to operate solely based on the output of the radar odometry front-end, and the visual constraint will automatically recover once environmental conditions improve.

[0037] Shield tunnels have a highly regular geometric structure, with a circular or elliptical cross-section and are longitudinally composed of multiple prefabricated rings pieced together sequentially. These structural features can be introduced as prior constraints into the pose estimation process, effectively suppressing the cumulative drift of the odometer during long-distance travel.

[0038] Extracting cross-sectional geometry information from the cleaned point cloud frame is the first step in obtaining prior structural constraints. Specifically, a thin set of points perpendicular to the current pose is extracted every 0.5 meters along the robot's travel direction, with a layer thickness of 0.1 meters. Circular or elliptical arc fitting is then performed on the cross-sectional point set to obtain the center point and the radius or major and minor axes of the cross-section. The fitting method employs algebraic distance minimization. First, the cross-sectional point set is projected onto a two-dimensional plane, and then the parameters that minimize the sum of the squares of the algebraic distances from each point to the circular or elliptical arc are solved. For a standard circular cross-section tunnel, the fitting parameters include the center coordinates. With radius For tunnels with elliptical cross-sections, the fitting parameters also include the major axis direction angle. The ratio of the major and minor axes. Points with a fitting residual exceeding 0.05 meters are considered outliers and are removed before refitting to improve fitting accuracy. The inner diameter of a typical shield tunnel is between 5.5 meters and 6.2 meters. The fitted cross-sectional radius or major and minor axes should fall within this range; otherwise, it indicates that the current cross-sectional point set is obstructed or interfered with by noise, and the fitting result is not used.

[0039] refer to Figure 1 In the section on circular arc fitting of the cross-section point set, the figure shows the cross-section point set perpendicular to the robot's pose, extracted from the cleaned point cloud frame, and its circular arc fitting results. The cross-section point set consists of several discrete points distributed on the tunnel wall, which are presented as scattered points in the figure, covering the main visible area of ​​the tunnel cross-section. Since the shield tunnel is assembled from prefabricated segments, its cross-section is designed to have a standard circular outline, so a circular arc model can be used to fit the cross-section point set. The fitted arc is drawn as a solid line, which can well fit the overall distribution trend of the cross-section point set. The center of the arc is the center point of the cross-section, which is marked with a special symbol in the figure, and its coordinates are... This represents the geometric center of the tunnel at that cross-section. The distance from the center of the circle to any point on the arc is the radius of the cross-section. The direction and length of the radius are marked by arrowed line segments in the figure. The center point and radius of the cross-section are key parameters for extracting the structural prior constraints. The sequence of center points of the cross-sections forms the tunnel centerline segment, and the cross-section radius should remain basically consistent between adjacent cross-sections. This characteristic forms the basis of the cross-section consistency constraint. In the figure, the horizontal axis represents the lateral position, and the vertical axis represents the vertical position, both in meters. The origin of the coordinate system is set near the geometric center of the cross-section to facilitate observation of the distribution of the cross-section point set relative to the fitted circular arc. It can be observed from the figure that there are slight deviations between the cross-section point set and the fitted circular arc. These deviations mainly come from measurement noise during the point cloud acquisition process and local unevenness of the tunnel wall, but the overall fitting effect is good and can accurately reflect the geometric characteristics of the tunnel cross-section.

[0040] In the section on elliptical arc fitting of cross-section point sets, the figure illustrates the elliptical arc fitting method for tunnels with non-standard circular cross-sections. Some shield tunnels, due to design requirements or construction deformation, have elliptical cross-sections instead of standard circles. In such cases, an elliptical arc model is needed for fitting to obtain more accurate geometric parameters. The distribution of the cross-section point set in the figure exhibits a clear elliptical shape, with identifiable differences in dimensions along the major and minor axes. The fitted elliptical arc is also drawn as a solid line, and its geometric parameters include the coordinates of the ellipse center and the semi-length of the major axis. , minor axis half length And the direction angle of the major axis. The diagram shows the direction and length of the major and minor axes, with the major axis... Extending along the longest direction of the ellipse, the minor axis The cross-section is perpendicular to its major axis and passes through the center of the ellipse. The center point of the ellipse is also marked with a special symbol, representing the geometric center of the tunnel at that cross-section location. Compared to circular arc fitting, elliptical arc fitting requires estimating more parameters but can more accurately describe the geometric characteristics of non-circular cross-sections. The ratio of the major and minor axes of the cross-section reflects the ellipticity of the tunnel cross-section, and the consistency of this parameter between adjacent cross-sections can also serve as a basis for prior structural constraints. The coordinate axis settings in the figure are consistent with those in the circular arc fitting section, with the horizontal axis representing the lateral position and the vertical axis representing the vertical position, in meters, facilitating comparative analysis of the two fitting methods.

[0041] Circumferential seam detection is used to determine the location of seams between adjacent ring pieces. Due to the presence of minute misalignments and sealing strips at the seams, the intensity distribution and geometric characteristics of the point cloud at these seams differ significantly from those of the ring body itself. Analysis of the intensity distribution of consecutive point cloud frames along the mileage direction is performed; locations showing significant jumps in intensity values ​​are marked as potential seam locations. Simultaneously, analysis of geometric abrupt changes in the point cloud is performed; locations where the fitting residuals of adjacent sections suddenly increase are also marked as potential seam locations. The locations where both intensity and geometric abrupt changes occur simultaneously are identified as seam lines, thus obtaining a set of seam lines. The spacing between adjacent seam lines is the ring width; standard ring widths are typically 1.2 meters or 1.5 meters, which can be used to verify the detection results.

[0042] The tunnel centerline segment is generated based on the sequence of cross-sectional center points. Continuous cross-sectional center points are fitted as piecewise straight lines or piecewise circular arcs, using an adaptive segmentation strategy: when the linear fitting residual of several consecutive cross-sectional center points is less than 0.02 meters, a straight line segment is used; otherwise, a circular arc segment is used to adapt to the tunnel's curvature variations. Ring-plate periodic segments are generated based on the set of ring seam lines, with each ring-plate periodic segment corresponding to a complete ring-plate within the tunnel.

[0043] The set of prior structural constraints is generated from the tunnel centerline segment and the periodic segments of the ring plate, including the following three types of constraints. The centerline continuity constraint requires that the robot pose at adjacent time points should maintain a continuous increase when projected onto the tunnel centerline segment, without jumps or regressions. The physical meaning of this constraint is that the robot's mileage should monotonically increase as it travels along the tunnel. Mathematically, let time... The projected coordinates of the robot's position on the center line segment are: The constraint condition is: and ,in This is the robot's maximum travel speed. For time intervals.

[0044] The cross-section consistency constraint requires that the cross-section fitting parameters corresponding to the robot pose at adjacent time points should remain consistent. Since the geometric dimensions of the tunnel cross-section are essentially constant over a long section, significant differences in the estimated cross-section radius or major and minor axes at adjacent time points indicate an error in pose estimation. Mathematically, let time point... With time The cross-sectional radii are respectively and The constraint condition is: ,in This is the tolerance for the cross-sectional radius, typically taken as 0.03 meters.

[0045] The circumferential seam periodicity constraint requires that the robot detects exactly one circumferential seam line every time it traverses a distance equal to the width of a standard circumferential sheet. This constraint utilizes the periodicity of the circumferential sheet splicing to effectively correct for scale drift in the mileage direction. Mathematically, let the robot mileage corresponding to two adjacent circumferential seam lines be denoted as follows: and The constraint condition is: ,in For standard ring width, The tolerance for the ring width is typically 0.05 meters.

[0046] A pose graph is a compact graph structure for representing robot trajectories and observation constraints. The robot's pose at each moment is used as a node in the pose graph. The state vector of each node contains three translational components and three rotational components. Rotation is represented using quaternions to avoid gimbal lock-up. Radar-relative poses are used to form radar constraint edges, connecting nodes at adjacent moments. The measurement value of each edge is the pose increment output by the radar odometry front end, and the edge's information matrix reflects the confidence level of the measurement. Similarly, visual-relative poses are used to form visual constraint edges, odometry frames are used to form motion constraint edges, and the set of structural prior constraints is used to form structural prior constraint edges.

[0047] The information matrix settings for different types of constraint edges reflect prior judgments on the reliability of each data source. For radar constraint edges, the diagonal elements of the information matrix are set to 100 in the translation direction and 200 in the rotation direction, reflecting the millimeter-level accuracy of radar odometers in translation estimation and the 0.1-degree-level accuracy in rotation estimation. The information matrix for visual constraint edges is comparable to that of radar constraint edges under good lighting conditions, but automatically decreases under poor lighting conditions to reduce its impact on the optimization results. The information matrix for motion constraint edges is set according to the odometer type; the information matrix for wheeled odometers is lower than that for inertial measurement units. The information matrix for structural prior constraint edges is dynamically adjusted based on the cross-section fitting residual and the detection confidence of the circumferential seam; the information matrix increases when the fitting residual is small and the detection confidence is high, and decreases otherwise.

[0048] Incremental solving is performed on the pose graph to update the robot's pose sequence in real time. Unlike batch solving, incremental solving only re-optimizes the affected local region when a new constraint edge is added, thus keeping the computational cost of a single optimization within an acceptable range. Specifically, incremental smoothing and graph-building algorithms are employed, with a Bayesian tree as the core data structure. When a new constraint edge is added, the set of variables affected by the edge is first determined, and then local relinearization and back-substitution are performed on the corresponding branch in the Bayesian tree.

[0049] The specific steps for incremental solution are as follows: Construct a sparse linear system of equations for the newly added constraint edges. ,in For information matrix, Let be the pose update value to be solved. Information vector. Information matrix. The pose update is obtained by summing the Jacobian matrix and information matrix of each constraint edge, exhibiting a sparse structure because each constraint edge involves only two adjacent nodes. Performing a sparse solution yields the pose update. The solution method employs sparse Cholsky decomposition based on variable elimination order optimization. The pose update is written back to the pose graph nodes, i.e., the state vector of each node is processed. ,in This represents addition operations on the manifold; quaternion multiplication is required for rotational components. Simultaneously, the covariance information of each node is updated; the covariance matrix is ​​given by the corresponding block of the inverse of the information matrix. The final output is the robot pose sequence, containing the optimized poses of all nodes from the initial time step to the current time step.

[0050] Based on the robot's pose sequence, the cleanup point cloud frames are fused into a unified coordinate system to generate a tunnel occupancy grid map and a passageway map. The tunnel occupancy grid map is a 3D voxel map that records the occupancy state of each voxel in the tunnel space. The passageway map is a 2D map that records the areas accessible to the robot.

[0051] The process of generating the tunnel occupancy grid map is as follows. First, a unified coordinate system is defined, with the origin set to the robot's starting position. The axis points in the direction of tunnel travel. The axis points vertically upwards. A unified coordinate system is divided into a voxel grid with sides of 0.1 meters. For each frame of the cleaned point cloud, the point cloud is transformed to the unified coordinate system based on the robot's pose at the corresponding moment, and then the voxel containing each point is marked as occupied. To handle observation noise and dynamic objects, a log-odds update strategy is adopted: each time a point is observed within a voxel, its occupancy log-odds are increased; each time a voxel is observed to be on the sensor's line-of-sight path, its occupancy log-odds are decreased. The final occupancy state of a voxel is determined by whether the log-odds exceed a threshold.

[0052] The corridor map is generated using the tunnel centerline as its framework. First, the three-dimensional space is projected onto a two-dimensional plane along the tunnel centerline. One axis of the projection plane is the tangent to the tunnel centerline, and the other axis is the horizontal axis. A grid map with a resolution of 0.05 meters is created on the projection plane. For each grid cell, it is determined whether it is located above the tunnel surface and unobstructed below; if these conditions are met, it is marked as passable. The corridor map is formed by expanding outward from the tunnel centerline and combining it with the passable cells of the tunnel-occupied grid map. The expansion width is determined based on the robot's physical dimensions and safety margin, typically 1.5 times the robot's width. The boundary of the corridor map is determined by the projected outlines of fixed obstacles such as tunnel walls, pipeline supports, and maintenance equipment.

[0053] In an optional implementation, the passageway map may also include height information, forming a 2.5D map. For each passable grid cell, its ground height and clearance height are recorded. The ground height is determined by the height of the top surface of the highest occupying voxel below the grid cell, and the clearance height is determined by the height of the bottom surface of the lowest occupying voxel above the grid cell. The robot can use this information to avoid areas with insufficient clearance height when planning its path.

[0054] The first step in generating autonomous coverage detection paths is to segment and rasterize the passageway map to obtain intra-segment raster maps. The purpose of segmentation is to divide long tunnels into multiple segments that are easy to process independently. The length of each segment is set to 50 to 100 meters, and the specific value is determined based on the memory capacity and real-time requirements of the computing processing component.

[0055] The passageway map is segmented along the tunnel centerline, with segment boundaries preferably selected at the circumferential joint line to ensure consistency with the tunnel's physical segmentation. After segmentation, an intra-segment raster map is generated within each segment, represented using a local coordinate system with the origin set at a point on the tunnel centerline at the segment's starting point. The raster cells of the intra-segment raster map are mapped from the tunnel-occupied raster map, maintaining a consistent raster resolution during the mapping process. Each raster cell records its passability status and covered markers; initially, all raster cells show an uncovered status for their covered markers.

[0056] The process of constructing a field-of-view model based on the inspection sensor assembly, which must cover the edge set, is as follows. Both the visual sensor and the radar sensor have specific field-of-view ranges and effective detection distances. Assume the visual sensor has a horizontal field-of-view angle of 90 degrees and an effective detection distance of 3 meters; the radar sensor has a horizontal field-of-view angle of 180 degrees and an effective detection distance of 10 meters. The comprehensive field-of-view model of the inspection sensor assembly is the union of these two sets.

[0057] A set of detection strips is generated in the segment grid map based on the field-of-view model of the inspection sensor components. A detection strip refers to the projected strip-shaped area on the ground representing the wall region that the robot can effectively detect at a certain location. The set of detection strips consists of strips on both sides of the center line segment and a roof strip. The strips on both sides of the center line segment correspond to the detection coverage area of ​​the left and right walls of the tunnel, and their width is determined by the effective detection distance of the sensor and the tilt angle of the wall; for a circular cross-section tunnel with an inner diameter of 6 meters, the width of the strips on both sides of the center line segment is approximately 2.5 meters. The roof strip corresponds to the detection coverage area of ​​the top wall of the tunnel; the robot needs to travel to the central area of ​​the tunnel and adopt an upward tilting posture to complete the detection.

[0058] The detection strip set is projected onto the intra-segment grid graph to generate a set of grid edges that must be covered. Specifically, for each grid cell within the detection strip, the line connecting it to its adjacent grid cells is marked as a grid edge that must be covered. A coverage graph structure is constructed using the grid cell center as a node and the lines connecting adjacent grid cells as edges. The coverage graph structure is an undirected graph where each node corresponds to a passable grid cell, and each edge corresponds to a passage between adjacent grid cells. The set of grid edges that must be covered is mapped to a set of edges that must be covered. This set of edges is a subset of all edges in the coverage graph structure, representing the edges that the robot must traverse when performing its inspection task.

[0059] The postman cover problem is a classic problem in combinatorial optimization, aiming to find the shortest cycle that passes through all edges that must be covered at least once. This embodiment uses a graph-based Eulerianization method to solve the postman cover problem. The core idea is to transform the original graph into a graph with an Eulerian cycle by adding repeated edges, and then search for the Eulerian cycle on the Eulerianized graph.

[0060] refer to Figure 3In the section on odd-degree node pairing and edge copying, the diagram illustrates the odd-degree node pairing results obtained after performing minimum matching on the set of odd-degree nodes, and the process of copying the shortest path sequence between paired nodes into the covering graph structure. The diagram retains the basic framework of the covering graph structure, including nodes, mandatory edges, and optional edges. The goal of odd-degree node pairing is to pair all odd-degree nodes to minimize the sum of the shortest path lengths between paired nodes. The diagram shows the shortest path sequence between paired nodes in dashed form; these dashed lines represent edges that need to be copied into the covering graph structure. Each pair of paired odd-degree nodes has one or more connecting paths; the shortest path sequence is the set of edges traversed by the shortest path among these paths. Pairing numbers are labeled in the diagram to identify different pairing relationships; for example, pairing 1 connects the two odd-degree nodes on the left side of the diagram, pairing 2 connects the two odd-degree nodes on the right side of the diagram, and pairing 3 connects the two odd-degree nodes at the top of the diagram. In graph theory, the operation of copying the shortest path sequence into a covering graph is called edge duplication or edge doubling. Its effect is to transform nodes with odd degree into nodes with even degree. Specifically, if an odd-degree node was originally connected to three mandatory covering edges, after copying and adding one edge, its degree becomes 4, making it an even-degree node. When all odd-degree nodes have been transformed into even-degree nodes through pairing and edge copying, the covering graph structure satisfies the condition for the existence of an Eulerian circuit; this graph structure is called an Eulerian covering graph. The copied edges in the graph are drawn with a different line type than the original edges to easily distinguish between the original mandatory covering edges and the newly added copied edges.

[0061] In the covering walk sequence section, the figure shows the covering walk sequence obtained after performing the Eulerian circuit generation algorithm on the Eulerian covering graph. The covering walk sequence is a closed path starting from the starting node, traversing all edges that must be covered at least once, and finally returning to the starting node. The figure depicts the complete trajectory of the covering walk sequence with gradient colors, the color changes reflecting the order of movement, showing a gradient effect from light to dark or dark to light from the starting point to the ending point. The starting node is represented by a special triangle marker, and the ending node is also represented by a triangle marker but in the opposite direction. Since the covering walk sequence is a closed loop, the starting node and the ending node are actually the same node. The covering walk sequence traverses every edge in the set of edges that must be covered, with some edges being traversed twice due to copying operations. These repeatedly traversed edges correspond to the sections that the robot needs to travel back and forth during actual task execution. The figure also retains the nodes of the covering graph structure as background references, with the nodes represented by small circles. The covering walk sequence is generated using the Hilholzer algorithm. This algorithm starts from the initial node, traverses each edge and records the edge visit status, inserts a loop segment at the node with an unvisited edge, and merges the loop segments to finally output a complete Eulerian circuit. The trajectory of the covering walk sequence in the figure clearly shows the execution result of the algorithm. The path transitions smoothly between nodes and covers all areas where the edges that must be covered are located.

[0062] First, connectivity processing is performed on the covering graph structure to form a connected must-cover subgraph. A connected must-cover subgraph is a subgraph that contains only the edges that must be covered and their endpoints. If a connected must-cover subgraph is not connected, connecting edges need to be added to make it connected. The added connecting edges are selected from the edges on the shortest path connecting different connected components in the original graph.

[0063] Statistical connectivity requires covering the set of odd-degree nodes in the subgraph. The degree of a node is defined as the number of edges connected to it, and an odd-degree node is one with an odd degree. According to the fundamental theorem of graph theory, a necessary and sufficient condition for a graph to have an Eulerian circuit is that all nodes have an even degree. Therefore, the existence of odd-degree nodes is the fundamental reason preventing the existence of an Eulerian circuit, and it is necessary to transform odd-degree nodes into even-degree nodes by adding repeating edges.

[0064] On the covered graph structure, a shortest path search is performed pairwise on each pair of odd-degree nodes to obtain the set of shortest path edge sequences. The shortest path search uses Dijkstra's algorithm, with the edge weights set to the Euclidean distance between grid cells. For each pair of odd-degree nodes, the shortest path connecting them is calculated, resulting in the edge sequence traversed by that path, called the shortest path edge sequence. The set of shortest path edge sequences contains the shortest path edge sequences between all pairs of odd-degree nodes.

[0065] Minimum matching is performed on the set of shortest path sequences to obtain a set of pairs of odd-degree nodes. The goal of the minimum matching problem is to pair odd-degree nodes pairwise such that the sum of the lengths of the shortest path sequences of all pairs is minimized. Since the number of odd-degree nodes is even (a fundamental property of graph theory), a perfect matching must exist. The minimum matching problem is solved using a weighted bipartite graph matching algorithm, whose time complexity is the cube of the number of odd-degree nodes.

[0066] refer to Figure 2 The diagram shows the intra-segment grid map obtained after segmenting and rasterizing the passageway map, as well as the set of mandatory coverage edges constructed based on the field-of-view model of the inspection sensor components. The intra-segment grid map consists of regularly arranged grid cells, each corresponding to a local area in the passageway map. Different visual effects are used to distinguish between passable and impassable areas. Impassable areas are represented by filled color blocks and are mainly distributed at the edges of the grid map, corresponding to the space occupied by the tunnel walls and their ancillary structures. The grid cells within the passable area constitute the space where the robot can move. The tunnel centerline segment is used as a reference point and is drawn as a dashed line, running through the central area of ​​the intra-segment grid map. The set of mandatory coverage edges is marked with thick solid lines and is distributed in the areas that need to be detected by the inspection sensor components. According to the definition of the detection strip set, the set of mandatory coverage edges consists of the grid edges corresponding to the strips on both sides of the centerline segment and the arch strip. The strips on either side of the center line segment correspond to the detection areas on the left and right walls of the tunnel, represented in the figure as several parallel line segments distributed longitudinally; the arch strip corresponds to the detection area on the top wall of the tunnel, represented in the figure as line segments distributed laterally. The horizontal axis represents the lateral position, and the vertical axis represents the longitudinal position, with units in raster units, reflecting the discrete characteristics of rasterization processing. The legend section explains graphic elements such as the mandatory coverage edges, the tunnel center line segment, and impassable areas to facilitate understanding of the meaning of each element.

[0067] In the section on cover graph structure and odd-degree nodes, the diagram illustrates the cover graph structure built with the center of each grid cell as a node and the lines connecting adjacent grid cells as edges, as well as the distribution of odd-degree nodes within the cover graph structure. The cover graph structure is an undirected graph, where each node is represented by a circle, corresponding to the center of a passable grid cell. The lines connecting adjacent nodes represent pathways between grid cells, allowing the robot to move from one grid cell to an adjacent one. Must-cover edges are highlighted with thick solid lines, representing edges that the robot must traverse during inspection tasks; optional edges are drawn with thin solid lines, representing edges that the robot can traverse but is not required to traverse. Odd-degree nodes are a key concept in mail cover solving, referring to nodes with an odd degree, where degree is defined as the number of must-cover edges connected to that node. In the diagram, odd-degree nodes are distinguished from ordinary nodes by square markers and are labeled with an odd-degree number for identification. According to the fundamental theorem of graph theory, a necessary and sufficient condition for a connected graph to have an Eulerian circuit is that the degree of all nodes is even. Therefore, the existence of odd-degree nodes is an object that needs to be handled by edge copying.

[0068] The shortest path sequence corresponding to the pairing set of odd-degree nodes is copied and added to the covering graph structure to form an Eulerian covering graph. Copying and adding means that for each edge in the shortest path sequence, a parallel repeating edge is added to the covering graph structure. After adding the repeating edge, the original odd-degree nodes become even-degree nodes. Therefore, the degree of all nodes in the Eulerian covering graph is even, satisfying the condition for the existence of an Eulerian circuit.

[0069] Perform Eulerian circuit generation on the Eulerian covering graph. The Eulerian circuit generation algorithm adopts the Hilholzer algorithm, the basic idea of ​​which is to start from any node, traverse along the edges until returning to the starting node to form a circuit, and then continue traversing at nodes with unvisited edges in the circuit to form new circuit segments. Finally, all circuit segments are merged into a complete Eulerian circuit.

[0070] The specific steps are as follows: Starting from the starting node, select any unvisited edge and traverse it, marking the edge as visited. Then, continue traversing unvisited edges from the other end of the edge, repeating this process until returning to the starting node. This forms a loop segment. Check if there are any nodes in the loop segment with unvisited edges. If so, generate a new loop segment from that node in the same way and insert the new loop segment into the original loop segment at the position of that node. Repeat this process until all edges have been visited. The final output edge sequence is the covering traversal sequence, which records the complete traversal path of the robot to cover all necessary edges.

[0071] Converting the covered walk sequence into a covered pathpoint sequence is the final stage of path generation. The covered pathpoint sequence contains the start point, end point, and turning point of each grid edge. For each edge in the covered walk sequence, the center coordinates of the corresponding grid cells at its two endpoints are the pathpoints. When the directions of two adjacent edges change, turning points need to be inserted at the intersection to ensure path smoothness. Turning points are generated using a circular arc transition strategy, with the arc radius determined based on the robot's minimum turning radius, typically 0.5 meters.

[0072] A coverage viewpoint sequence is generated along the coverage path point sequence. Each viewpoint in the coverage viewpoint sequence contains two elements: pose and orientation. The pose is determined by the coverage path points, including three-dimensional coordinates and heading angle. The orientation is determined by the normal direction of the detection strip set, representing the direction in which the inspection sensor components should point. For the strips on both sides of the centerline segment, the normal direction points towards the tunnel wall, i.e., the horizontal direction perpendicular to the tunnel centerline segment; for the arch strip, the normal direction points towards the tunnel top, i.e., vertically upward or diagonally upward.

[0073] Generating a coverage viewpoint sequence requires considering the sensor's coverage area and overlap requirements. The spacing between adjacent viewpoints should ensure a certain proportion of overlap in the sensor's field of view to avoid detection blind spots. Assuming the sensor's detection width at a distance of 3 meters is 4 meters, and the spacing between adjacent viewpoints is set to 3 meters, the overlap ratio is approximately 25%, which meets the coverage requirements of most detection tasks. In sections of tunnel with significant curvature, the viewpoint spacing needs to be appropriately reduced to maintain a sufficient overlap ratio.

[0074] A detection trigger sequence is generated as the control basis for inspection data acquisition. The detection trigger sequence triggers the inspection sensor components one by one according to the coverage viewpoint sequence to acquire detection data and output the detection result stream. Each trigger item in the detection trigger sequence includes three elements: trigger timing, sensor selection, and acquisition parameters. The trigger timing is determined when the robot reaches the corresponding viewpoint position, based on the distance between the current pose and the target viewpoint pose being less than 0.1 meters and the heading angle deviation being less than 5 degrees. Sensor selection is determined according to the detection strip type corresponding to the current viewpoint; wall detection mainly uses the lateral partitions of vision sensors and radar sensors, while arch detection mainly uses the upward partitions of vision sensors and radar sensors. Acquisition parameters include exposure time, gain, point cloud density level, etc., which are dynamically adjusted according to the ambient lighting conditions and detection accuracy requirements of the current location.

[0075] The detection result stream is a data stream output by the inspection sensor components after acquiring data according to the detection trigger sequence and undergoing preliminary processing. Each frame of the detection result stream contains raw sensor data, an acquisition timestamp, a corresponding viewpoint index, and preliminary analysis results. The preliminary analysis results include annotations of potential defect areas in the image and geometric anomaly markers in the point cloud, which are provided for further processing by a specialized analysis system. The detection result stream is transmitted in real time to a remote monitoring center via communication components or stored in local memory for offline analysis.

[0076] In an optional implementation, the generation of the viewpoint sequence can employ an adaptive strategy. When preliminary analysis results indicate a suspected defect in a certain area, additional viewpoints are automatically inserted around that area for finer inspection, with the viewpoint density set according to the severity of the defect. This adaptive strategy can improve the defect detection rate while ensuring detection efficiency.

[0077] The working environment inside a shield tunnel is dynamic, with inspection personnel, maintenance vehicles, and temporarily stored materials all potentially appearing on the robot's path. To ensure that the inspection robot can safely avoid these dynamic obstacles while performing coverage inspection tasks, and to maintain tracking of the predetermined coverage path as much as possible, this embodiment details the specific implementation process of dynamic obstacle avoidance control and coverage closed-loop update using CBF safety filtering coupling.

[0078] The inspection sensor components operate continuously during robot operation, acquiring real-time perception data of the surrounding environment. The vision sensor outputs real-time image frames at a frequency of 30 frames per second, and the radar sensor outputs real-time point cloud frames at a frequency of 10 frames per second. Unlike the map building phase, dynamic obstacle avoidance control places greater emphasis on real-time processing of perception data, requiring the transformation from raw data to obstacle status to be completed within tens of milliseconds.

[0079] The computational processing component performs clustering segmentation on real-time point cloud frames to identify potential obstacles. The first step in clustering segmentation is to filter out point clouds belonging to the static structure of the tunnel, including tunnel walls, ground, and known fixed structures. This filtering process utilizes the tunnel occupancy raster generated during the map building phase to remove points in the real-time point cloud frame that fall into known occupancy voxels. The remaining points are the point clouds generated by potential dynamic obstacles.

[0080] Density-based spatial clustering is performed on the filtered point cloud. The core parameters of the clustering algorithm include the neighborhood radius. With minimum number of points Neighborhood radius Setting it to 0.3 meters means that two points are considered to belong to the same neighborhood if the Euclidean distance between them is less than 0.3 meters; minimum number of points. Setting it to 10 means that a cluster must contain at least 10 points to be considered a valid obstacle; clusters with too few points are considered noise and ignored. The clustering algorithm starts from any unvisited point and recursively adds its neighbors to the same cluster until no more unvisited points remain in the neighborhood. The final output is a set of obstacle point clusters, with each cluster corresponding to a potential dynamic obstacle.

[0081] The computational processing component performs object detection on real-time image frames to obtain semantic information about obstacles. Object detection employs a pre-trained deep neural network model capable of recognizing common obstacle categories such as people, vehicles, and equipment. Detection results are output as bounding boxes, each containing the top-left corner coordinates, width, height, category label, and confidence score. Detection results with a confidence score below 0.5 are filtered to reduce the false alarm rate. The final output is a set of obstacle boxes, each corresponding to one detected obstacle in the image.

[0082] Spatial association between obstacle point clusters and obstacle bounding boxes aims to fuse 3D geometric and 2D semantic information to form a more complete obstacle description. The specific method for spatial association is as follows: for each obstacle point cluster, all its points are projected onto the image plane, and the minimum bounding rectangle of the projected point set is calculated. Then, the intersection-union ratio (IUR) between this minimum bounding rectangle and each obstacle bounding box is calculated. Obstacle bounding boxes with an IUR exceeding 0.3 are associated with that obstacle point cluster. The IUR is defined as the ratio of the intersection area to the union area of ​​two rectangles, and is a commonly used indicator to measure the degree of overlap between two regions.

[0083] After spatial correlation, a dynamic obstacle state set is generated. Each element in the dynamic obstacle state set describes the complete state of a dynamic obstacle, including three elements: obstacle location, obstacle shape envelope, and obstacle velocity estimate.

[0084] The location of an obstacle is determined by the centroid coordinates of an obstacle cluster. Suppose a certain obstacle cluster contains... There are points, and the coordinates of each point are... The location of the obstacle is ,in The three-dimensional coordinate vector representing the center of the obstacle material.

[0085] The obstacle's shape envelope is represented using either an axis-aligned bounding box or a directional bounding box. The axis-aligned bounding box is simple to calculate, determined by the maximum and minimum values ​​of the obstacle point cluster along the three coordinate axes. The directional bounding box can more tightly enclose the obstacle, reducing redundancy in the envelope volume. Its calculation method involves first performing principal component analysis on the obstacle point cluster to determine the principal axis directions, and then calculating the axis-aligned bounding box in the principal axis coordinate system. For slender obstacles such as pedestrians, the volume of the directional bounding box can be reduced by more than 40% compared to the axis-aligned bounding box, thus providing more passable space for the robot. To improve safety margins, the obstacle's shape envelope is extended outwards by 0.2 meters in each direction as a safety buffer zone.

[0086] The obstacle velocity is estimated by the difference in obstacle position between adjacent time steps. Let time step be... With time The obstacle locations are respectively and ,in Given the time interval between two adjacent frames, the obstacle velocity is estimated as follows: ,in This represents the velocity vector of the obstacle. For a radar sensor's output frequency of 10 frames per second, Seconds. To suppress the impact of position measurement noise on velocity estimation, a sliding window averaging filter is used, with the window length set to 5 frames, meaning the velocity estimation is the average of the difference results from the most recent 5 frames.

[0087] Obstacle tracking and data association are crucial for maintaining the temporal consistency of dynamic obstacle state sets. When a new frame of sensing data arrives, it is necessary to determine whether the detected obstacle is a continuation of an existing obstacle or a newly appearing obstacle. Data association employs a nearest neighbor method based on Mahalanobis distance. Mahalanobis distance comprehensively considers position deviation and velocity prediction, enabling more accurate handling of obstacle motion. Let the predicted position of an existing obstacle at the current moment be... The newly detected obstacle location is Then the Mahalanobis distance is ,in This is the covariance matrix for location prediction, reflecting the magnitude of prediction uncertainty. Detection results with a Mahalanobis distance less than 3 are associated with existing obstacles, while detection results exceeding this threshold are considered newly appearing obstacles. Existing obstacles that fail to be successfully associated for 5 consecutive frames are removed from the dynamic obstacle state set, indicating that the obstacle has left the perception range.

[0088] The computational processing component generates tracking control commands based on the sequence of covered path points. The goal of these commands is to enable the robot to travel along the sequence of covered path points and complete the detection task at each viewpoint. The tracking control commands include two components: the desired forward velocity and the desired turning angular velocity.

[0089] Determining the desired forward speed requires comprehensive consideration of path curvature, distance to the target point, and the requirements of the detection task. On straight sections, the desired forward speed is set to the robot's rated cruising speed, typically 0.5 meters per second; on curved sections, the desired forward speed decreases according to the radius of curvature. With expected forward speed The relationship between them is ,in For the maximum permissible speed, The maximum permissible lateral acceleration is typically taken as 0.3 m / s². This represents the radius of curvature of the current road segment. As the robot approaches a detection location within the covered viewpoint sequence, its forward speed is expected to gradually decrease until it stops, allowing the sensors to acquire high-quality detection data.

[0090] The desired steering angular velocity is calculated based on the deviation between the robot's current pose and the target path point. A pure tracking control algorithm is employed, which selects a path point at a certain distance ahead as the tracking target point and calculates the circular arc trajectory from the current position to the tracking target point. The curvature of the arc determines the steering angular velocity. Let the forward look-ahead distance be... The lateral deviation of the tracking target point relative to the robot is The desired steering angular velocity is ,in To achieve the desired forward speed, The desired steering angular velocity. Forward sight distance. The selection of the forward sight distance affects the stability and response speed of the control. The typical value is 1.0 meter to 2.0 meters. When the speed is high, a larger forward sight distance is selected to ensure stable control.

[0091] A set of candidate control sequences is generated around the tracking control command. Directly executing the tracking control command may result in collisions with obstacles; therefore, multiple alternative control sequences need to be sampled and generated around the tracking control command. The optimal control sequence that can both avoid obstacles and track the path as much as possible is then selected. The set of candidate control sequences consists of multiple discrete control sequences, each consisting of a set of speed and steering commands.

[0092] Candidate control sequences are generated using a velocity space sampling method. The two dimensions of the velocity space are defined as forward velocity and forward speed. With steering angular velocity The sampling range for forward velocity is... ,in The maximum forward speed of the robot is typically 0.8 meters per second; the sampling range for the turning angular velocity is... ,in The maximum turning angular velocity of the robot is typically 0.5 radians per second. Velocity space is sampled using a uniform grid, with 9 points sampled in the forward velocity direction and 11 points sampled in the turning angular velocity direction, generating a total of 99 candidate velocity combinations. Each candidate velocity combination constitutes a discrete control sequence, assuming a constant velocity in the short time domain.

[0093] For each discrete control sequence, a short-time-domain forward extrapolation is performed based on the kinematic model to obtain the corresponding predicted trajectory. The robot employs a differential-driven kinematic model, with state variables including position coordinates. With heading angle The kinematic equations are: ; ; ;in and These represent the robot in direction and The velocity component in the direction, Indicates the rate of change of the heading angle. For forward speed, For the steering angular velocity, This is the current heading angle.

[0094] The short-time-domain forward extrapolation employs a numerical integration method with an integration step size of 0.05 seconds and an extrapolation duration of 2 seconds, generating a total of 40 predicted state points. Connecting these predicted state points forms the predicted trajectory corresponding to the discrete control sequence. The predicted trajectories of all discrete control sequences constitute the predicted trajectory set.

[0095] In an optional implementation, the candidate control sequence can employ a variable-speed design, where the speed changes according to a preset pattern within a short time domain, such as accelerating first and then decelerating, or decelerating first and then accelerating. This design can expand the reachable state space, providing more obstacle avoidance options in narrow passages. The variable-speed candidate control sequence is generated by linear interpolation between the initial and final speeds to produce a smooth speed change curve.

[0096] A safety constraint set is constructed based on the corridor map and the dynamic obstacle state set. This safety constraint set is a core element of CBF (Cyclic Block Filtering) safety filtering, defining the safety conditions the robot must meet. The safety constraint set includes three categories: corridor boundary constraints, minimum safe interval constraints, and braking-stopping constraints.

[0097] The corridor boundary constraint requires the robot to remain within the traversable area defined by the corridor map at all times. The boundary of the corridor map is determined by the contours of fixed obstacles such as tunnel walls, pipeline supports, and maintenance equipment. The robot crossing the boundary signifies a collision with these fixed obstacles. The corridor boundary constraint is mathematically expressed using a signed distance function. Let the robot's position be... The boundary curve of the passageway is Then the signed distance function is ,in This represents the shortest distance from a point to the curve, taking a positive value when the point is within the passable area and a negative value when it is outside the passable area. Corridor boundary constraints require... ,in For safety margin, a typical value of 0.3 meters is taken after considering the robot's physical size and positioning error.

[0098] The minimum safe distance constraint requires the robot to maintain a sufficient distance from any dynamic obstacle. Unlike stationary obstacles, the position of dynamic obstacles changes over time, therefore the minimum safe distance constraint needs to consider the movement trend of the obstacle. Let the robot's position be... , No. The location of each dynamic obstacle is The speed is The relative position of the robot to the obstacle is then... The relative speed is ,in Let be the robot's velocity vector. The mathematical expression for the minimum safety margin constraint is: ,in The Euclidean norm of relative position vectors represents the distance between them. For the first The equivalent radius of an obstacle is determined by the envelope of its shape. Let be the robot's equivalent radius. The typical safety margin is 0.5 meters. Constraint requirements... .

[0099] The braking-stop constraint requires the robot to have the ability to come to a complete stop before a collision occurs at any time. This constraint reflects the concept of defensive driving: even if other obstacles suddenly stop or change direction, the robot can avoid a collision through emergency braking. The mathematical derivation of the braking-stop constraint is based on kinematic relationships, assuming the robot's current velocity is... The maximum braking deceleration is The braking distance required to bring the vehicle to a complete stop is... ,in A typical value is 1.5 m / s². The braking stop constraint requires that the distance between the robot and any obstacle be greater than the braking distance plus a safety margin, i.e. ,in The typical buffer distance is 0.3 meters. The above three types of constraints together constitute the set of safety constraints, denoted as... ,in Let be the number of obstacles in the dynamic obstacle state set. Each constraint function in the safety constraint set is a scalar function with respect to the robot's state; a non-negative function value indicates that the constraint is satisfied, and a negative function value indicates that the constraint is violated.

[0100] Performing safety constraint checks on each predicted trajectory set is the first stage of CBF safety filtering. The purpose of safety constraint checks is to determine whether each candidate control sequence will lead to a violation of safety constraints. Safety constraint checks include three levels of judgment. The first level judges the overlap relationship between the predicted trajectory and the corridor boundary in the short time domain. Specifically, this is done by checking whether each state point on the predicted trajectory satisfies the corridor boundary constraints. ,in For the first The predicted trajectory is determined by the coordinates of each state point. If any state point violates the corridor boundary constraints, the predicted trajectory fails the safety constraint check.

[0101] The second level determines the minimum interval relationship between the predicted trajectory and the envelope of the dynamic obstacle's shape. Since the dynamic obstacle is also moving within the prediction time domain, it is necessary to extrapolate the obstacle's position. Let the obstacle's position at the current moment be... The speed is Then at the prediction time extrapolation of position Check whether the distance between each state point on the predicted trajectory and the corresponding extrapolated obstacle position at that time satisfies the minimum safety margin constraint. If any state point violates the minimum safety interval constraint with any obstacle, the predicted trajectory fails the safety constraint check.

[0102] The third level assesses the stopable space relationship when braking is triggered at the end of the short time domain. Even if the predicted trajectory itself does not collide with obstacles, if the robot's speed is too high at the end of the prediction time domain and the space in front is insufficient to complete braking, a safety risk is still considered to exist. The specific method is to calculate the braking distance at the end of the predicted trajectory and check whether there are obstacles or corridor boundaries within that braking distance.

[0103] When the predicted trajectory triggers any constraint in the set of safety constraints, a safety projection is performed on the corresponding discrete control sequence to generate a safety control sequence. Safety projection is the core computational step of CBF safety filtering, and its goal is to find the corrected control command with the smallest deviation from the original control command while satisfying the safety constraints. The mathematical expression of safety projection is a constraint optimization problem: ; ;in Let be the control input vector to be solved, which includes the forward velocity. With steering angular velocity ; The original tracking control command; Denotes the Euclidean norm; For the first in the set of security constraints One constraint function; The time derivative of the constraint function along the system trajectory is called the Lie derivative; A positive design parameter is called class gain, which controls the speed at which the constraint function converges to the safe region; This represents the robot's current state.

[0104] Constraints This is the core inequality of the control barrier function, and its physical meaning is: if the current state satisfies the safety constraints (i.e. If the constraint function's derivative is such that the system evolves into an unsafe region too quickly, then the control input must ensure that the derivative of the constraint function does not cause the system to evolve into an unsafe region too rapidly. When When approaching zero (i.e., approaching the safety boundary), the constraints require... This means the constraint function cannot continue to decrease, thus preventing the system from entering the unsafe region. (Class Gain) The typical value range is 1 to 5, with larger class gains corresponding to more conservative safety behavior.

[0105] The control sequence satisfying the constraints is obtained through activity set search. The activity set method is a classic algorithm for solving quadratic programming problems with inequality constraints, particularly suitable for situations with a small number of constraints. The basic idea of ​​the algorithm is to divide the inequality constraints into active constraints (equality signs) and inactive constraints (strict inequality signs). The active constraints are treated as equality constraints for solution. Then, the solution is checked to see if it satisfies the Lagrange multiplier conditions of both active and inactive constraints. If not, the activity set is adjusted and the solution is solved again.

[0106] The specific steps of the activity set search are as follows: During initialization, all constraints are set to inactive, and the initial solution is obtained by solving the unconstrained optimization problem. Check if the initial solution satisfies all constraints. If it does, the algorithm terminates and outputs the result. This indicates that the original control command itself is safe. If there are violated constraints, the constraint with the greatest degree of violation is added to the activity set, and then the optimization problem with the constraints in the activity set as equality constraints is solved. This process is repeated until a solution is found that satisfies all constraints and the Lagrange multipliers of the activity constraints are all non-negative.

[0107] When all predicted trajectories pass the safety constraint verification, it indicates that there are multiple safe and feasible control options in the candidate control sequence set. At this point, the optimal one needs to be selected. The selection criterion is the minimum path deviation, i.e., selecting the control sequence that brings the robot closest to the predetermined coverage path. Path deviation is defined as the shortest distance from the end state of the predicted trajectory to the covered path point sequence. The discrete control sequence with the minimum path deviation from the verified discrete control sequences is selected as the safe control sequence and output to the motion control component for execution.

[0108] In some extreme cases, the candidate control sequence set may not contain any control options that satisfy all safety constraints, such as when the robot is surrounded by multiple dynamic obstacles. In this case, the safety projection algorithm will output a compromise solution that satisfies the constraints as much as possible, and trigger an emergency braking mode to make the robot decelerate at maximum speed until it comes to a complete stop, waiting for the obstacles to move away before resuming movement.

[0109] The motion control component executes a safety control sequence to form an obstacle avoidance trajectory and continuously tracks the sequence of covered path points. The motion control component receives speed and steering commands from the safety control sequence and controls the rotational speed of the left and right wheels through the underlying motor drivers, thus realizing the robot's movement. The motor drivers operate in a closed-loop speed control mode with a sampling frequency of 1000 Hz, enabling precise tracking of speed commands issued from the upper layer. The actual trajectory of the robot is the obstacle avoidance trajectory. This trajectory may deviate from the predetermined sequence of covered path points; the degree of deviation depends on the distribution and movement of dynamic obstacles.

[0110] The computational processing component updates the covered markers of the grid map within a segment based on the obstacle avoidance trajectory and the detection result stream. The covered markers record whether each grid cell has been effectively detected by the inspection sensor component. The covered marker status is updated based on the triggering of the covered viewpoint sequence. Specifically, when the robot reaches a viewpoint position in the covered viewpoint sequence, and the detection triggering sequence successfully triggers the sensor to acquire and output a valid detection result stream, the grid cells covered by the detection strip corresponding to that viewpoint are marked as covered. The criteria for determining whether the detection result stream is valid include: the image frame's sharpness score exceeding a threshold, the point cloud frame's point density exceeding a threshold, and the sensor calibration parameters not drifting.

[0111] When an obstacle avoidance trajectory leads to a locally unreachable event in the covered path point sequence, a closed-loop update of the coverage detection path is required. A locally unreachable event occurs when the robot deviates from the predetermined path due to obstacle avoidance behavior, causing some path points in the covered path point sequence to be unreachable as originally planned. Criteria for triggering a locally unreachable event include: the straight-line distance between the robot's current position and the next target path point exceeds 5 meters; the deviation of the robot's heading angle from the target path direction exceeds 90 degrees; and the robot fails to approach the target path point within 3 consecutive seconds.

[0112] Once a locally unreachable event is detected, the computational processing component re-executes the messenger coverage solution on the grid map within the current segment, starting from the current robot pose. During the re-solution, grid edges already marked as covered are removed from the set of edges that must be covered, and coverage paths are planned only for uncovered grid edges. This mechanism ensures that areas that have already been inspected are not covered repeatedly, improving inspection efficiency.

[0113] After the mail carrier coverage is solved, an updated coverage walking sequence is generated. Based on the updated coverage walking sequence, an updated coverage pathpoint sequence and an updated coverage viewpoint sequence are generated. The generation method is the same as the initial path generation stage, including steps such as pathpoint extraction, turning point insertion, viewpoint pose calculation, and orientation determination. The updated coverage pathpoint sequence and the updated coverage viewpoint sequence are then input into the candidate control sequence set for generation and CBF safety filtering, replacing the original coverage pathpoint sequence and coverage viewpoint sequence as the target for path tracking. This closed-loop update mechanism enables the robot to dynamically adjust the inspection path according to the actual operating conditions, ultimately achieving coverage of all areas to be inspected while ensuring safety.

[0114] While specific embodiments of the present invention have been described above, those skilled in the art should understand that these specific embodiments are merely illustrative. Those skilled in the art can omit, substitute, and modify the details of the above methods and systems in various ways without departing from the principles and essence of the present invention. For example, combining the above method steps to perform substantially the same function and achieve substantially the same result according to substantially the same method falls within the scope of the present invention. Therefore, the scope of the present invention is defined only by the appended claims.

Claims

1. An autonomous coverage detection and safety obstacle avoidance control device for a shield tunnel inspection robot, characterized in that, include: Inspect sensor components, odometer components, computing and processing components, memory, motion control components, communication components, and power supply components; The inspection sensor assembly includes a vision sensor and a radar sensor; the computing and processing assembly is communicatively connected to the inspection sensor assembly, the odometer assembly, the motion control assembly, the communication assembly, and the power supply assembly; the memory stores instructions that can be executed by the computing and processing assembly, which executes the instructions to enable the device to complete the following steps: time-aligning and preprocessing the output data of the inspection sensor assembly and the odometer assembly to obtain clean point cloud frames and clean image frames; obtaining radar relative pose based on radar odometer and visual relative pose based on visual constraints; extracting the tunnel structure prior constraint set from the clean point cloud frames; constructing a pose graph and performing incremental solution to obtain the robot pose sequence; and based on... The robot's pose sequence generates a tunnel occupancy grid map and a passageway map. The passageway map is segmented and rasterized to obtain intra-segment grid maps. A set of necessary coverage edges is constructed based on the field-of-view model of the inspection sensor components. A coverage walking sequence is generated through mail carrier coverage solution. Based on the coverage walking sequence, a coverage path point sequence, a coverage viewpoint sequence, and a detection trigger sequence are generated. A dynamic obstacle state set is generated based on real-time perception data. A candidate control sequence set is generated based on the coverage path point sequence and CBF safety filtering is performed to obtain a safe control sequence. The motion control component executes the safe control sequence to form an obstacle avoidance trajectory to achieve obstacle avoidance. The coverage state is updated according to the obstacle avoidance trajectory to achieve closed-loop operation.

2. The apparatus according to claim 1, characterized in that, The time alignment and preprocessing include: time alignment of the image frames output by the visual sensor, the point cloud frames output by the radar sensor, and the odometer frames output by the odometer component with the same time reference; removal of outliers and ground approximations from the point cloud frames to form clean point cloud frames; and distortion correction and brightness normalization of the image frames to form clean image frames.

3. The apparatus according to claim 2, characterized in that, The radar relative pose acquisition based on radar odometry includes: performing point cloud registration between adjacent cleaned point cloud frames, which includes establishing a voxel mesh, statistically analyzing normal and covariance information within the voxels, performing iterative matching to update the pose increment based on normal consistency, and outputting the radar relative pose; the visual relative pose acquisition based on visual constraints includes: extracting corner and line segment features from adjacent cleaned image frames and forming a feature set, obtaining feature correspondences through feature descriptor matching, performing geometric consistency filtering on the feature correspondences to form a visual correspondence set, and calculating the visual relative pose based on the visual correspondence set.

4. The apparatus according to claim 3, characterized in that, Extracting the tunnel structure prior constraint set from the cleaned point cloud frame includes: extracting a set of cross-sectional points perpendicular to the robot pose from the cleaned point cloud frame; performing circular arc fitting or elliptical arc fitting on the cross-sectional point set to obtain the cross-sectional center point and the cross-sectional radius or the major and minor axes of the cross-section; performing ring seam detection on the intensity distribution and geometric abrupt changes of continuous point cloud frames along the mileage direction to obtain a set of ring seams; generating the tunnel centerline segment based on the cross-sectional center point sequence; generating the ring plate periodic segment based on the set of ring seams; and generating the structural prior constraint set from the tunnel centerline segment and the ring plate periodic segment. The structural prior constraint set includes centerline continuity constraints, cross-sectional consistency constraints, and ring seam periodic consistency constraints.

5. The apparatus according to claim 4, characterized in that, The process of constructing a pose graph and performing incremental solutions to obtain the robot pose sequence includes: using the robot pose at each moment as a pose graph node, forming radar constraint edges from the radar relative pose, visual constraint edges from the visual relative pose, motion constraint edges from the odometry frames, and structural prior constraint edges from the set of structural prior constraints; performing incremental solutions on the pose graph, which includes constructing a sparse linear equation system for the newly added constraint edges, performing sparse solutions to obtain pose update values, writing the pose update values ​​back to the pose graph nodes and updating the covariance information, and outputting the robot pose sequence; and fusing the cleaned point cloud frames into a unified coordinate system based on the robot pose sequence to generate a tunnel occupancy grid map and a passageway map; the passageway map is formed by expanding the tunnel centerline segment and combining it with the passable units of the tunnel occupancy grid map.

6. The apparatus according to claim 5, characterized in that, The passageway map is segmented and rasterized to obtain intra-segment raster maps. The necessary coverage edge set is constructed based on the field-of-view model of the inspection sensor components. This process includes: segmenting the passageway map along the tunnel centerline; generating an intra-segment raster map within each segment, where the raster cells are mapped from the tunnel-occupied raster map; generating a detection strip set within the intra-segment raster map based on the field-of-view model of the inspection sensor components, consisting of strips on both sides of the centerline segment and the arch strip; projecting the detection strip set onto the intra-segment raster map to generate a necessary coverage raster edge set; constructing a coverage map structure with the center of each raster cell as a node and the lines connecting adjacent raster cells as edges, and mapping the necessary coverage raster edge set to the necessary coverage edge set.

7. The apparatus according to claim 6, characterized in that, The process of generating a cover walk sequence by solving the postman cover problem includes: performing connectivity processing on the cover graph structure to form a connected subgraph that must cover; counting the set of odd-degree nodes in the connected subgraph that must cover; performing shortest path search on each pair of odd-degree nodes in the cover graph structure to obtain a set of shortest path edge sequences; performing minimum matching on the set of shortest path edge sequences to obtain a set of odd-degree node pairs; copying the shortest path edge sequences corresponding to the odd-degree node pairs and adding them to the cover graph structure to form an Eulerian cover graph; and performing Eulerian circuit generation on the Eulerian cover graph. Eulerian circuit generation includes traversing each edge from the starting node and recording the edge visit status, inserting circuit segments at nodes with unvisited edges and merging the circuit segments, and outputting the cover walk sequence.

8. The apparatus according to claim 7, characterized in that, The generation of a coverage path point sequence, a coverage viewpoint sequence, and a detection trigger sequence based on the coverage walking sequence includes: converting the coverage walking sequence into a coverage path point sequence, which contains the start point, end point, and turning point of each grid edge; generating a coverage viewpoint sequence along the coverage path point sequence, where each viewpoint contains a pose and orientation, with the pose determined by the coverage path point and the orientation determined by the normal direction of the detection strip set; and generating a detection trigger sequence, which triggers the inspection sensor components one by one according to the coverage viewpoint sequence to collect detection data and output the detection result stream.

9. The apparatus according to claim 8, characterized in that, A dynamic obstacle state set is generated based on real-time sensing data. A candidate control sequence set is generated based on the covered path point sequence and CBF safety filtering is performed to obtain a safe control sequence. This includes: the inspection sensor component continuously outputs real-time point cloud frames and real-time image frames during operation; the computational processing component performs clustering and segmentation on the real-time point cloud frames to obtain an obstacle point cluster set, and performs target detection on the real-time image frames to obtain an obstacle bounding box set; the obstacle point cluster set and the obstacle bounding box set are spatially correlated to generate a dynamic obstacle state set, which includes obstacle position, obstacle shape envelope, and obstacle velocity estimation. The obstacle velocity estimation is obtained from the difference in obstacle position between adjacent time moments; the computational processing component generates tracking control commands based on the covered path point sequence, which include the desired forward speed and desired steering angular velocity; a candidate control sequence set is generated around the tracking control commands, which consists of multiple discrete control sequences, each consisting of a set of speed and steering commands; for each... Discrete control sequences are derived from short-time forward extrapolation based on kinematic models to obtain a set of predicted trajectories. A set of safety constraints is constructed based on the corridor map and dynamic obstacle state set, including corridor boundary constraints, minimum safe interval constraints, and braking stop constraints. Safety constraint verification is performed on each predicted trajectory, including determining the overlap relationship between the predicted trajectory and the corridor boundary in the short-time domain, the minimum interval relationship with the envelope of the dynamic obstacle shape, and the stop space relationship when braking is triggered at the end of the short-time domain. When a predicted trajectory triggers any constraint condition in the safety constraint set, a safety projection is performed on the corresponding discrete control sequence to generate a safe control sequence. The safety projection involves searching the activity set to obtain a control sequence that satisfies the constraints, with the goal of minimizing control variation. When all predicted trajectories pass the safety constraint verification, the discrete control sequence with the smallest path deviation is selected as the safe control sequence from the verified discrete control sequences.