A method, device and robot for repositioning based on inherent characteristics of a playing field without a map
By employing a graph-free relocalization method based on the inherent features of the tennis court, and utilizing a two-step localization algorithm based on the net and court markings, the problems of high cost, blind start-up, and poor robustness in tennis court robot localization are solved, achieving low-cost, efficient global relocalization and a high success rate in localization.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- SHANGHAI FUTURE MIND CO LTD
- Filing Date
- 2026-05-08
- Publication Date
- 2026-06-05
AI Technical Summary
Existing technologies for robot positioning in tennis courts suffer from high deployment costs, inability to start blindly, poor robustness, and insufficient versatility, especially in large venues and when switching between multiple sports.
A map-free relocalization method based on the inherent features of the court is adopted. A two-step coupled localization algorithm is designed using the net and court markings of a standardized tennis court. Combined with dedicated point cloud preprocessing, the robot’s global relocalization is achieved without the need for pre-built maps. It is applicable to standardized courts of different sizes, such as tennis and pickle courts.
Significantly reduces deployment costs, supports blind start repositioning, improves positioning robustness and accuracy, achieves a success rate of over 99%, and is compatible with standardized courts for multiple sports.
Smart Images

Figure CN122156312A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of robot positioning technology, and in particular to a map-free relocalization method, device, and robot based on the inherent features of a sports field. Background Technology
[0002] Tennis ball-retrieving robots, automated training robots, and other equipment are becoming increasingly common. These robots need to achieve high-precision autonomous navigation within the tennis court, and global relocalization is the core prerequisite for navigation—only by obtaining the robot's accurate pose in the court coordinate system can the robot complete subsequent tasks such as path planning and motion control.
[0003] Current related technologies mainly focus on two aspects of research:
[0004] (1) Robot's own positioning
[0005] The current mainstream robot localization is based on LiDAR SLAM technology, which is relatively mature in general indoor and outdoor scenarios. However, for the specific scenario of standardized tennis courts, traditional solutions have serious adaptability problems and cannot meet the needs of industrial implementation.
[0006] Its core process is as follows:
[0007] ① Pre-map construction stage: Operators control robots to traverse the entire field, collect point cloud data, and build and save a global point cloud map;
[0008] ② Relocalization stage: When the robot loses its localization, the currently acquired real-time point cloud is matched with the pre-built point cloud map (such as ICP Iterative Closest Point Algorithm or NDT Normal Distribution Transformation Algorithm) to solve the pose transformation between the current frame point cloud and the map, thereby obtaining the robot's global pose.
[0009] (2) Detection of targets on the field
[0010] ① Tennis ball detection: Identifying tennis balls on the court using LiDAR or visual sensors for target grasping by ball-collecting robots; this technology only focuses on the position of the tennis ball and does not involve the robot's own global pose calculation;
[0011] ② Electronic line judge: This technology uses a high-speed vision sensor to detect the ball's landing point and determine whether the ball is out of bounds, which is used for game rulings; this technology also does not involve the robot's positioning.
[0012] Disadvantages of existing technology:
[0013] (1) Deployment cost is too high: Traditional relocation schemes require manual mapping of each court in advance. For large venues with dozens or hundreds of courts, the manpower and time costs of mapping are extremely high, and once the layout of the court changes, the mapping needs to be rebuilt.
[0014] (2) Cannot start blindly: Traditional matching algorithms rely on the initial pose as input. When the robot completely loses its localization (such as when it is powered on), it cannot complete the matching in the global range and must be manually assisted to give the initial position.
[0015] (3) Poor robustness: Dynamic interference from walls, columns, and pedestrian flow within the venue can lead to mismatches during point cloud matching, resulting in a low positioning success rate. This is especially true during peak operating hours when positioning is prone to failure.
[0016] (4) Poor versatility: Traditional solutions are based on maps of a single venue and cannot be compatible with standardized courts of different sizes such as tennis and pickle. When switching sports, the algorithm needs to be redeployed. Summary of the Invention
[0017] To address the aforementioned shortcomings, this disclosure provides a map-free relocalization method based on the inherent features of a sports field. This method eliminates the need for pre-constructing an environmental map, utilizing only the standardized features of the sports field to achieve global relocalization of the robot. It is ready to use out of the box, requires no prior deployment on any standard sports field, and is compatible with multiple sports types. This significantly reduces the deployment cost of intelligent sports robots and improves the robustness and accuracy of localization. This method is used in the initial stage of a ball-picking and serving robot's operation, specifically to obtain the robot's global position on the sports field.
[0018] The core idea of this method is to utilize the two inherent geometric features of a standardized tennis court—the net and the court markings—to design a two-step coupled positioning algorithm of "coarse positioning-fine positioning." Combined with dedicated point cloud preprocessing for the court environment, the global pose of the robot in the standard court coordinate system can be calculated in real time without the need for pre-built maps.
[0019] The graph-free relocation method based on the inherent features of the court provided in this disclosure mainly includes the following steps:
[0020] S1, the robot collects continuous multi-frame point cloud data using lidar and performs spatiotemporal fusion;
[0021] S2, adaptive preprocessing of the acquired point cloud, including: removing irrelevant point clouds outside the range according to the size of the court; and voxel height filtering of the point cloud to eliminate interference from court obstacles;
[0022] S3, extract the ball net from the point cloud, and obtain the robot's initial coarse localization pose based on the ball net;
[0023] S4. Based on the coarse positioning position and the size parameters of the standard court, the robot automatically navigates to the fine positioning position.
[0024] S5. After the robot reaches the target location, it re-collects the local point cloud and extracts the refined features of the stadium.
[0025] S6. Based on the refined features, perform the final pose calculation.
[0026] Furthermore, in step S2, the specific method for removing irrelevant point clouds outside the range based on the size of the court includes:
[0027] Irrelevant point clouds outside the defined area are removed through box-type filtering; where:
[0028] For a tennis court, the point cloud filtering range is set as follows:
[0029]
[0030]
[0031] The net length filtering threshold is 9.0m, and the height filtering threshold is 1.5m;
[0032] For the Peak Ball court, the point cloud filtering range is set as follows:
[0033]
[0034]
[0035] The net length filtering threshold is 5.5m, and the height filtering threshold is 1.1m.
[0036] Furthermore, in step S2, the voxel height filtering of the point cloud to eliminate interference from obstacles on the court specifically includes:
[0037] For the input fused point cloud Divide along the XY plane into dimensions of voxel grid;
[0038] For each voxel Calculate the difference between the maximum and minimum heights of all points within the voxel. ;
[0039] like If the voxel is identified as a high-obstacle region, all points within that voxel are removed, resulting in a filtered point cloud. .
[0040] Furthermore, in step S3, the position and orientation of the net are selected as coarse features of the court for coarse positioning by the robot.
[0041] Step S3 specifically includes:
[0042] S31. Based on the filtered point cloud, Euclidean clustering is performed to segment the point cloud into different connected regions. Then, the net clusters are selected according to the size characteristics of the net.
[0043] For each cluster, calculate the dimensions of its oriented bounding box in three dimensions, and sort them from largest to smallest. Based on the size characteristics of the ball net, clusters that meet the criteria are selected. Finally, the longest cluster that meets the criteria is selected, which is the point cloud cluster corresponding to the ball net. Therefore, this cluster is determined to be the ball net point cloud. ;
[0044] S32. After obtaining the point cloud of the ball net, set the Z-axis coordinate of the point cloud of the ball net to 0, compress it into a two-dimensional point cloud, and perform line fitting on the two-dimensional point cloud to obtain the line where the ball net is located and the direction vector of the line.
[0045] S33, based on the position and orientation of the net, obtains the robot's initial coarse positioning pose through coordinate transformation.
[0046] Furthermore, in step S32, the RANSAC algorithm is used to fit a straight line to the two-dimensional point cloud. The specific method includes:
[0047] Two points are randomly selected from the point cloud of the ball net, and an initial straight line model is obtained by fitting the model.
[0048] For all remaining points: calculate the distance from each point to the line. ,like If so, then mark that point as an interior point;
[0049] Count the number of inliers. If the number of inliers exceeds the current optimal model, update the optimal model.
[0050] Repeat the above process iteratively multiple times, selecting the line with the most interior points as the optimal line, and obtain the direction vector of the net line.
[0051]
[0052] and the center point of the net line
[0053] .
[0054] Furthermore, the specific method of step S4 includes:
[0055] After successful coarse positioning, the position of the intersection of the center line and the service line is calculated based on the net position obtained from the coarse positioning and the dimensions of a standard court:
[0056] The center line is the central axis of the court in the Y direction, and the service line is a horizontal court line at a fixed distance from the net.
[0057] Using the position of the net as a reference and combining the dimensions of a standard court, the coordinates of the intersection point in the radar coordinate system are calculated.
[0058] The intersection point is the fine positioning position that the robot needs to reach after coarse positioning.
[0059] Furthermore, in step S5, the service line is used as a refined feature of the court.
[0060] The specific method of step S5 includes:
[0061] S51, after the robot reaches the target position, it re-collects the local point cloud and performs preprocessing based on the service line features, including: removing irrelevant point clouds outside this range based on local box filtering; and removing small obstacles in the local area based on voxel height filtering.
[0062] S52, Court Line Point Cloud Filtering:
[0063] First, extract all intensity values from the local point cloud and calculate the mean intensity. with standard deviation :
[0064]
[0065]
[0066] Then calculate the intensity threshold:
[0067]
[0068] All points with intensity values greater than or equal to the intensity threshold are selected as the high reflectivity point cloud of the court line.
[0069] S53, Straight-line fitting of the serve line:
[0070] The selected court line point cloud is then fitted with a two-dimensional line using the RANSAC algorithm to obtain the line containing the service line and its direction vector.
[0071]
[0072] And the center point of the straight line of the service line:
[0073] .
[0074] Furthermore, step S6 specifically includes:
[0075] S61, Intersection Calculation:
[0076] After obtaining the geometric parameters of the net line and the service line, solve for the intersection of these two lines and use it as the origin of the court coordinate system.
[0077] S62, Attitude calculation:
[0078] Plane fitting is performed on the ground point cloud to obtain the plane normal vector of the ground. The robot's roll angle is calculated based on this normal vector. With pitch angle Correcting the robot's posture:
[0079]
[0080]
[0081] Then, based on the direction vector of the net line, calculate the robot's yaw angle. :
[0082]
[0083] Based on these three angles, a rotation matrix is constructed to obtain the robot radar's pose in the map coordinate system:
[0084]
[0085] in , , These are the rotation matrices about the X, Y, and Z axes, respectively:
[0086]
[0087]
[0088] ;
[0089] S63, Coordinate System Transformation:
[0090] Based on the robot's pose transformation matrix in the court coordinate system, the robot's complete six-degree-of-freedom pose in the court coordinate system is obtained, and relocalization is completed.
[0091] A map-free relocation device based on the inherent features of a sports field, applying the above method, mainly includes:
[0092] The lidar module is used to acquire the point cloud of the stadium.
[0093] The preprocessing module is used to preprocess the acquired point cloud.
[0094] The coarse localization module is used to extract the ball net features of the court from the point cloud and obtain the robot's initial coarse localization pose based on the ball net features.
[0095] The automatic navigation module is used to automatically navigate the robot to the fine positioning position based on the coarse positioning position and the size parameters of the standard court.
[0096] The fine positioning module is used to extract refined features of the field based on the local point cloud re-collected after the robot reaches the target position; and to perform the final robot pose calculation based on the refined features.
[0097] A robot that applies the above method has an executable program stored on it. When the executable program is invoked, the above-described graph-free relocalization method based on the inherent features of the court is executed.
[0098] Compared with the prior art, the beneficial effects of this disclosure are: ① The deployment cost is greatly reduced: no mapping is required in advance, any standard stadium can be used immediately after startup, the venue deployment cost is reduced by more than 90%, and the deployment problem of multiple stadiums in large venues is solved;
[0099] ②Supports blind start relocalization: No initial pose input is required. The robot can complete global relocalization as soon as it is powered on, which solves the problem that traditional algorithms cannot recover the localization loss.
[0100] ③ Significantly improved positioning robustness: The dedicated preprocessing algorithm effectively eliminates interference from walls and crowds within the venue, increasing the relocation success rate to over 99%, and ensuring stable operation even during operating hours;
[0101] ④ High versatility: One algorithm is compatible with various standardized courts such as tennis and pickle, without the need to develop new algorithms for different sports. Attached Figure Description
[0102] The above and other objects, features and advantages of this disclosure will become more apparent from the more detailed description of exemplary embodiments of this disclosure taken in conjunction with the accompanying drawings, in which the same reference numerals generally represent the same components.
[0103] Figure 1 Here is a flowchart of the graph-free relocation method according to this disclosure;
[0104] Figure 2 A detailed flowchart of one exemplary embodiment;
[0105] Figure 3 This is an example of a stadium layout diagram. Detailed Implementation
[0106] Preferred embodiments of the present disclosure will now be described in more detail with reference to the accompanying drawings. While preferred embodiments of the present disclosure are shown in the drawings, it should be understood that the present disclosure may be implemented in various forms and should not be limited to the embodiments set forth herein. Rather, these embodiments are provided so that the present disclosure will be thorough and complete, and will fully convey the scope of the present disclosure to those skilled in the art.
[0107] This disclosure provides a graph-free relocalization method, device, and robot based on the inherent features of a tennis court, aiming to solve the global relocalization problem of intelligent motion robots (such as tennis ball-retrieval robots and training robots) in standardized tennis courts, specifically including:
[0108] Traditional laser relocation technology requires manually constructing point cloud maps for each stadium in advance, and repeated map construction is necessary when switching between multiple stadiums, resulting in extremely high deployment costs. Traditional positioning algorithms are sensitive to initial pose and cannot achieve "blind start" global relocation after positioning loss. Interference from stadium walls, pillars, and dynamic crowd flow can lead to feature extraction failures and poor positioning robustness, etc.
[0109] This enables a single algorithm to be compatible with standardized courts of different sizes, such as tennis balls and pickles, thus solving the problem of algorithm adaptation in multiple sports scenarios.
[0110] The overall process is as follows: Figure 1 As shown, by utilizing the inherent geometric features of a standardized tennis court, a two-step coupled localization algorithm of "coarse localization - fine localization" was designed. Combined with dedicated point cloud preprocessing for the court environment, the global pose of the robot in the standard court coordinate system can be calculated in real time without the need for pre-built maps.
[0111] In one exemplary manner:
[0112] The detailed process of the graph-free relocation method based on the inherent features of the court is attached. Figure 2 As shown, an exemplary court layout is attached. Figure 3 As shown. Detailed steps are as follows:
[0113] 1. Step 1: Multi-frame point cloud fusion preprocessing
[0114] First, the robot collects continuous multi-frame point cloud data using LiDAR, and then performs spatiotemporal fusion of the multi-frame point clouds to obtain a high-density fused point cloud, which improves the stability of subsequent feature extraction.
[0115] in For the first Original point cloud frame The number of frames to be merged is set to a default value in this invention. It can adaptively adjust according to the radar frame rate.
[0116] To prevent older point clouds with large time differences from being mistakenly merged, this invention adds a timeout cleanup mechanism: when the time difference between the latest point cloud and the earliest point cloud in the queue exceeds a certain threshold... When the time comes, the point cloud queue is automatically cleared to ensure that the merged point clouds are all recent and valid data.
[0117] 2. Step 2: Adaptive Point Cloud Preprocessing
[0118] At the same time, the system automatically loads the corresponding parameter configuration based on the current sport type (tennis / picker). The parameters for different sport types are shown below:
[0119] For a tennis court, the point cloud filtering range is set as follows:
[0120]
[0121]
[0122] The net length filtering threshold is 9.0m, and the height filtering threshold is 1.5m;
[0123] For the Peak Ball court, the point cloud filtering range is set as follows:
[0124]
[0125]
[0126] The net length filtering threshold is 5.5m, and the height filtering threshold is 1.1m.
[0127] Irrelevant point clouds outside the range are removed through box filtering.
[0128] 3. Step 3: Dedicated point cloud filtering for the stadium environment
[0129] To eliminate interference from interior walls, columns, and other elements, this invention designs a voxel height filtering algorithm, the specific process of which is as follows:
[0130] For the input fused point cloud First, the XY plane is divided into sections with dimensions of... The voxel grid has the following index for each voxel:
[0131] For each voxel Calculate the difference between the maximum and minimum heights of all points within the voxel:
[0132] like If the voxel is identified as a high-obstacle region (such as a wall or pillar, whose height difference within the XY range is much greater than that of the ground region or the net region), all points within that voxel are removed, resulting in the filtered point cloud. .
[0133] 4. Step 4: Coarse localization: Net feature extraction and initial alignment
[0134] Based on the filtered point cloud, Euclidean clustering is performed to segment the point cloud into different connected regions. Then, the net clusters are selected according to the size characteristics of the net.
[0135] For each cluster, calculate the dimensions of its oriented bounding box (OBB) in three dimensions, sorting them from largest to smallest. Based on the size characteristics of the ball net (length greater than a threshold, width and height less than 1.5m), clusters meeting the criteria are selected. Finally, the longest cluster that meets the criteria is chosen as the point cloud cluster corresponding to the ball net. This cluster is then determined to be the ball net point cloud. .
[0136] After obtaining the point cloud of the ball and net, set the Z-axis coordinate of the point cloud of the ball and net to 0, compress it into a two-dimensional point cloud, and use the RANSAC algorithm to perform line fitting on the two-dimensional point cloud to obtain the line where the ball and net are located, as well as the direction vector of the line.
[0137] The iterative process of the RANSAC algorithm is as follows:
[0138] ① Randomly select two points from the point cloud of the ball net and fit them to obtain an initial straight line model;
[0139] ② For all remaining points, calculate the distance from each point to the line:
[0140] like (If the default value is 0.1m), then mark this point as an interior point;
[0141] ③ Count the number of interior points. If the number of interior points exceeds the current optimal model, then update the optimal model.
[0142] ④ Repeat the above process iteratively multiple times, selecting the line with the most interior points as the optimal line, and obtain the direction vector of the net line.
[0143]
[0144] and the center point of the net line
[0145]
[0146] The robot's initial coarse positioning pose can be obtained by determining the position and orientation of the net.
[0147] By identifying the net, the center of the set of interior points when fitting a straight line to the net's point cloud is taken as the center point of the net. The direction of the straight line is considered the x-direction, the y-direction is perpendicular to the x-direction and forward, and the z-direction is perpendicular to the xy-plane and upward. This coordinate system is the global coordinate system. Figure 3 As shown; at this point, the position and orientation of the map coordinate system under the lidar coordinate system can be obtained. The inverse can be used to obtain the position and orientation of the lidar coordinate system under the map coordinate system. Then, through the installation relationship of the lidar, the position and orientation of the lidar coordinate system under the robot coordinate system can be obtained. map->base_laser * base_laser->base_link = position and orientation of the robot coordinate system under the map coordinate system, which is the coarse localization pose.
[0148] 5. Step 5: Automatically navigate to the precise location.
[0149] After successful coarse positioning, the position of the intersection of the center line and the service line is calculated based on the net position obtained from the coarse positioning and the dimensions of a standard court:
[0150] The center line is the central axis of the court in the Y direction, and the service line is a horizontal court line at a fixed distance from the net;
[0151] Using the position of the net as a reference and combining the dimensions of a standard court, the coordinates of the intersection point in the radar coordinate system are calculated.
[0152] The intersection point is the origin of the map coordinate system, which is the center point of the court. This is the fine positioning point that the robot needs to reach after coarse positioning.
[0153] Using the ROS2 navigation module, the robot can reach the target point by sending a target point, such as (0.0, -6.0), through global path planning, local traversal planning, and laser odometry positioning.
[0154] 6. Step 6: Precise localization: Extraction of site line features
[0155] The goal of the fine positioning stage is to extract the service line features to further improve the positioning accuracy and obtain the final high-precision pose.
[0156] 6.1 Local Point Cloud Preprocessing
[0157] After the robot reaches the target location, it re-collects the local point cloud and preprocesses it based on the features of the service line:
[0158] Localized box filtering: Based on the current location, filter out the point cloud of a local area in front. For a tennis court, the filtering range is:
[0159]
[0160]
[0161] For a peakball court, the filtering range is:
[0162]
[0163]
[0164] Remove irrelevant point clouds outside this range.
[0165] Voxel height filtering: Using a smaller voxel size (0.2m) and a smaller height threshold (0.05m), small local obstacles, such as tennis balls, are removed, and only the point cloud of the ground is retained.
[0166] 6.2 Point Cloud Filtering for Court Lines
[0167] Because the paint on the court lines has a higher laser reflectivity than the ground, the intensity value of the point cloud will be higher. The point cloud of the court lines is selected based on this feature:
[0168] First, extract all intensity values from the local point cloud and calculate the mean intensity. with standard deviation :
[0169]
[0170]
[0171] Then calculate the intensity threshold:
[0172]
[0173] All points with intensity values greater than or equal to the threshold are selected as high-reflectivity court line point clouds. If the selection results are empty, a fallback strategy is adopted, taking the top 3% of points by intensity to ensure the robustness of the selection.
[0174] 6.3 Straight-line fitting of the service line
[0175] The selected court line point cloud is then fitted with a two-dimensional line using the RANSAC algorithm to obtain the line containing the service line and its direction vector.
[0176]
[0177] And the center point of the straight line of the service line:
[0178]
[0179] 7. Step 7: Precise Positioning: Origin Calculation
[0180] After obtaining the straight lines of the net and the service line, the final pose calculation is performed:
[0181] 7.1 Intersection Calculation
[0182] After obtaining the geometric parameters of the net line and the service line, the origin of the court coordinate system is determined by solving the intersection point of the two-dimensional lines. The specific mathematical derivation is as follows:
[0183] - Net line: Known reference point , direction vector (Obtained by fitting and normalizing a straight line), then any point on the straight line... satisfy:
[0184]
[0185] Expanded to:
[0186]
[0187] Recorded as:
[0188]
[0189] - Service line straight line: known reference point , direction vector Similarly, the equation of the line can be obtained:
[0190]
[0191] Expanded to:
[0192]
[0193] Recorded as:
[0194]
[0195] The equations of the two lines can be rearranged into a system of two linear equations in two variables:
[0196]
[0197] a. Calculate the determinant of the coefficient matrix:
[0198]
[0199] like If the two lines are parallel and do not intersect, the calculation will terminate and an alarm will be issued; if Continue to solve.
[0200] b. Replacement Determinant of a column :
[0201]
[0202] c. Replacement Determinant of a column :
[0203]
[0204] d. Intersection coordinates (origin of the stadium coordinate system) ):
[0205]
[0206] This intersection point is the reference origin of the stadium coordinate system (map).
[0207] 7.2 Attitude Calculation
[0208] Plane fitting is performed on the ground point cloud to obtain the plane normal vector of the ground. The robot's roll angle is calculated based on this normal vector. With pitch angle Correcting the robot's posture:
[0209]
[0210]
[0211] Then, based on the direction vector of the net line, calculate the robot's yaw angle. :
[0212]
[0213] Based on these three angles, a rotation matrix is constructed to obtain the robot radar's pose in the map coordinate system:
[0214]
[0215] in , , These are the rotation matrices about the X, Y, and Z axes, respectively:
[0216]
[0217]
[0218]
[0219] 7.3 Coordinate System Transformation (Derivation of the transformation matrix from map to base_link)
[0220] a. Basic Definitions
[0221] - Court coordinate system (map): The origin is the intersection of the net and the service line. The X-axis points to the right along the straight line of the net, the Z-axis points vertically upwards, and the Y-axis is determined by the right-hand rule. ).
[0222] - The laser radar coordinate system (base_laser) has a fixed rigid body transformation with the robot base coordinate system (base_link).
[0223] - Objective: Solve for the transformation matrix from map to base_link. .
[0224] b. Steps for deriving the transformation matrix
[0225] b.1. base_laser → map transformation matrix
[0226] The matrix includes rotations. Peaceful relocation Translation vector (i.e., the coordinates of the intersection point), therefore:
[0227] b.2. Laser → Link Transformation Matrix
[0228] Obtained from the installation structure (including translation) and rotation quaternions Convert to a homogeneous matrix:
[0229]
[0230] in It is the rotation matrix corresponding to the quaternion.
[0231] b.3. Map → Link Transformation Matrix
[0232] The transformation relationship satisfies:
[0233]
[0234]
[0235] because:
[0236]
[0237] Substitute and expand:
[0238]
[0239] After matrix multiplication expansion:
[0240]
[0241] Final map→link homogeneous transformation matrix:
[0242]
[0243] This matrix is based on the robot's pose transformation matrix in the coordinate system, thus obtaining the robot's complete six-degree-of-freedom pose in the court coordinate system and completing the relocalization.
[0244] In this embodiment, a relocation paradigm for a sports field without pre-built maps is provided. That is, global relocation can be achieved by utilizing the inherent features of the net and court lines of the sports field without the need to build an environmental point cloud map in advance.
[0245] A two-step coarse-fine coupled positioning algorithm with dual features was constructed, which is a two-step positioning process that first completes coarse positioning and initial alignment through the ball net features, and then completes fine positioning and origin calculation through the court line features.
[0246] It can adapt parameters to multiple sports types, that is, it has an adaptive mechanism that automatically switches point cloud filtering range, clustering threshold and feature selection parameters according to different sports types such as tennis and pickle.
[0247] A dedicated point cloud preprocessing algorithm was implemented for the stadium environment: namely, a dedicated preprocessing algorithm for voxel height filtering to remove wall interference and adaptive intensity threshold extraction of paving point clouds.
[0248] When applying the method of this embodiment for robot localization, the following two points should be noted:
[0249] ① Algorithm replacement for fitting: The least squares method can be used to replace the RANSAC algorithm for line fitting. In scenarios with low point cloud noise, the line parameters can still be solved.
[0250] ② Feature expansion: In addition to the net and court lines, other court features such as the baseline and service line can be added to further improve the accuracy and robustness of positioning.
[0251] The above technical solutions are merely exemplary embodiments of the present invention. For those skilled in the art, based on the application methods and principles disclosed in the present invention, it is easy to make various types of improvements or modifications, and not limited to the methods described in the specific embodiments of the present invention. Therefore, the methods described above are merely preferred and not restrictive.
Claims
1. A graph-free relocation method based on the inherent features of a sports field, characterized in that, Includes the following steps: S1, the robot collects continuous multi-frame point cloud data using lidar and performs spatiotemporal fusion; S2, adaptive preprocessing of the acquired point cloud, including: removing irrelevant point clouds outside the range according to the size of the court; and voxel height filtering of the point cloud to eliminate interference from court obstacles; S3, extract the ball net from the point cloud, and obtain the robot's initial coarse localization pose based on the ball net; S4. Based on the coarse positioning position and the size parameters of the standard court, the robot automatically navigates to the fine positioning position. S5. After the robot reaches the target location, it re-collects the local point cloud and extracts the refined features of the stadium. S6. Based on the refined features, perform the final pose calculation.
2. The method according to claim 1, characterized in that, In step S2, the specific method for removing irrelevant point clouds outside the range based on the size of the court includes: Irrelevant point clouds outside the defined area are removed through box-type filtering; where: For a tennis court, the point cloud filtering range is set as follows: The net length filtering threshold is 9.0m, and the height filtering threshold is 1.5m; For the Peak Ball court, the point cloud filtering range is set as follows: The net length filtering threshold is 5.5m, and the height filtering threshold is 1.1m.
3. The method according to claim 1, characterized in that, In step S2, performing voxel height filtering on the point cloud to eliminate interference from obstacles on the court specifically includes: For the input fused point cloud Divide along the XY plane into dimensions of voxel grid; For each voxel Calculate the difference between the maximum and minimum heights of all points within the voxel. ; like If the voxel is identified as a high-obstacle region, all points within that voxel are removed, resulting in a filtered point cloud. .
4. The method according to claim 1, characterized in that, In step S3, the position and orientation of the net are selected as coarse features of the court for robot coarse positioning. Step S3 specifically includes: S31. Based on the filtered point cloud, Euclidean clustering is performed to segment the point cloud into different connected regions. Then, the net clusters are selected according to the size characteristics of the net. For each cluster, calculate the dimensions of its oriented bounding box in three dimensions, and sort them from largest to smallest. Based on the size characteristics of the ball net, clusters that meet the criteria are selected. Finally, the longest cluster that meets the criteria is selected, which is the point cloud cluster corresponding to the ball net. Therefore, this cluster is determined to be the ball net point cloud. ; S32. After obtaining the point cloud of the ball net, set the Z-axis coordinate of the point cloud of the ball net to 0, compress it into a two-dimensional point cloud, and perform line fitting on the two-dimensional point cloud to obtain the line where the ball net is located and the direction vector of the line. S33, based on the position and orientation of the net, obtains the robot's initial coarse positioning pose through coordinate transformation.
5. The method according to claim 4, characterized in that, In step S32, the RANSAC algorithm is used to fit a straight line to the two-dimensional point cloud. The specific method includes: Two points are randomly selected from the point cloud of the ball net, and an initial straight line model is obtained by fitting the model. For all remaining points: calculate the distance from each point to the line. ,like If so, then mark that point as an interior point; Count the number of inliers. If the number of inliers exceeds the current optimal model, update the optimal model. Repeat the above process iteratively multiple times, selecting the line with the most interior points as the optimal line, and obtain the direction vector of the net line. and the center point of the net line 。 6. The method according to claim 1, characterized in that, The specific method of step S4 includes: After successful coarse positioning, the position of the intersection of the center line and the service line is calculated based on the net position obtained from the coarse positioning and the dimensions of a standard court: The center line is the central axis of the court in the Y direction, and the service line is a horizontal court line at a fixed distance from the net. Using the position of the net as a reference and combining the dimensions of a standard court, the coordinates of the intersection point in the radar coordinate system are calculated. The intersection point is the fine positioning position that the robot needs to reach after coarse positioning.
7. The method according to claim 6, characterized in that, In step S5, the service line is used as a refined feature of the court. The specific method of step S5 includes: S51, after the robot reaches the target position, it re-collects the local point cloud and performs preprocessing based on the service line features, including: removing irrelevant point clouds outside this range based on local box filtering; and removing small obstacles in the local area based on voxel height filtering. S52, Court Line Point Cloud Filtering: First, extract all intensity values from the local point cloud and calculate the mean intensity. with standard deviation : Then calculate the intensity threshold: All points with intensity values greater than or equal to the intensity threshold are selected as the high reflectivity point cloud of the court line. S53, Straight-line fitting of the serve line: The selected court line point cloud is then fitted with a two-dimensional line using the RANSAC algorithm to obtain the line containing the service line and its direction vector. And the center point of the straight line of the service line: 。 8. The method according to claim 7, characterized in that, Step S6 specifically includes: S61, Intersection Calculation: After obtaining the geometric parameters of the net line and the service line, solve for the intersection of these two lines and use it as the origin of the court coordinate system. S62, Attitude calculation: Plane fitting is performed on the ground point cloud to obtain the plane normal vector of the ground. The robot's roll angle is calculated based on this normal vector. With pitch angle Correcting the robot's posture: Then, based on the direction vector of the net line, calculate the robot's yaw angle. : Based on these three angles, a rotation matrix is constructed to obtain the robot radar's pose in the map coordinate system: in , , These are the rotation matrices about the X, Y, and Z axes, respectively: ; S63, Coordinate System Transformation: Based on the robot's pose transformation matrix in the court coordinate system, the robot's complete six-degree-of-freedom pose in the court coordinate system is obtained, and relocalization is completed.
9. A mapless repositioning device based on the inherent features of a sports field, applying the method of any one of claims 1-8, characterized in that, include: The lidar module is used to acquire the point cloud of the stadium. The preprocessing module is used to preprocess the acquired point cloud. The coarse localization module is used to extract the ball net features of the court from the point cloud and obtain the robot's initial coarse localization pose based on the ball net features; The automatic navigation module is used to automatically navigate the robot to the fine positioning position based on the coarse positioning position and the size parameters of the standard court. The fine positioning module is used to extract refined features of the field based on the local point cloud re-collected after the robot reaches the target position; and to perform the final robot pose calculation based on the refined features.
10. A robot, characterized in that, It stores an executable program, which, when invoked, executes the graph-free relocation method based on the inherent features of the court, as described in any one of claims 1-8.