Method for measuring the geometry of a turnout profile

Through the point cloud data processing method based on the KDtree algorithm, the problems of low efficiency and low precision in the measurement of turnout geometric parameters are solved, efficient and accurate turnout geometric parameter measurement is achieved, the sensitivity to ambient light is reduced, and it is suitable for diverse detection objects.

CN119515953BActive Publication Date: 2025-10-10BEIJING JIAOTONG UNIV
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202411655301.8
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-11-19
Publication Date
2025-10-10
Estimated Expiration
2044-11-19

AI Technical Summary

Technical Problem

Existing technologies for measuring turnout geometric parameters have problems such as low efficiency, low accuracy, high sensitivity to ambient light, and a single detection object. In particular, traditional tools are time-consuming and affected by the external environment, while automated detection tools are expensive and cannot meet real-time monitoring needs.

Method used

A point cloud data processing method based on the KDtree algorithm is adopted, including preprocessing, sliding window establishment, frame difference calculation and classification. Through coarse-grained and fine-grained frame difference calculation, combined with threshold screening and PCL radius filtering technology, point cloud data denoising and matching are performed, key frame information is extracted, and accurate measurement of turnout geometric parameters is achieved.

Benefits of technology

It improves measurement efficiency and accuracy, reduces sensitivity to ambient light, enables monitoring of diverse detection objects, and improves monitoring accuracy.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119515953B_ABST
    Figure CN119515953B_ABST
Patent Text Reader

Abstract

The application provides a method for measuring the geometric parameters of a turnout section, belonging to the technical field of three-dimensional point cloud visual measurement, and preprocessing collected point cloud data of the left and right rail section profiles of a turnout, and establishing a sliding window based on the left and right rails; calculating coarse-grained frame differences and classifying them; if the frame difference is valid, then recalculating the frame difference in fine granularity; judging the turnout direction; if the turnout direction is reverse, then processing the waiting queue of the left / right rail, and updating the sliding window; if the frame difference is invalid, then judging the left / right rail processing identifier; if the left / right rail processing identifier is empty, then performing a point cloud queuing operation; if the left / right rail processing identifier is not empty, then judging whether it is a frog close identifier; if the left / right rail processing identifier is the frog close identifier, then performing point cloud rematching, and non-positioning key frame information extraction. The application realizes diversified detection objects, reduces the sensitivity of monitoring data to environmental light, and improves monitoring accuracy.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of three-dimensional point cloud vision measurement, and in particular to a method for measuring geometric shape and position parameters of a turnout section. Background Art

[0002] In the railway transportation system, maintaining the optimal geometry of track and turnout systems is a key element in ensuring safe and smooth railway operations. Any degradation of the turnout system's geometry can immediately impact smooth train operation, passenger comfort, and overall safety. Therefore, regular, professional inspection and maintenance are crucial.

[0003] Currently, methods for measuring turnout geometric parameters fall into two main directions: mobile measurement and in-situ measurement. Within the mobile measurement category, there are methods that employ traditional tools such as handheld track gauges, chords, rail profile gauges, steel plate rulers, and rail grinders for precise measurement. While this method is technically mature and provides intuitive results, it is time-consuming, limited by operating hours, and susceptible to interference from the external environment and human error. Furthermore, its processing efficiency is insufficient for handling massive amounts of data. Meanwhile, while automated inspection vehicles can improve efficiency, their high operating costs, similarly limited by operating hours and environmental conditions, and their inability to meet the requirements of real-time monitoring hinder their widespread adoption. In-situ measurement, a fixed, in-situ inspection technique, integrates multiple sensors and visual imaging technologies to directly perform non-contact measurement of turnout structures. For example, boundary features of key components are extracted from turnout images and geometric parameters are calculated using pixel interpolation. Three-dimensional point cloud data of turnouts is constructed using binocular structured light imaging to calculate turnout geometric parameters. Key turnout components are also labeled and their positions are identified. However, these methods often face challenges such as single detection object, high sensitivity to ambient light and low accuracy. Summary of the Invention

[0004] The object of the present invention is to provide a method for measuring the geometric shape and position parameters of a turnout section, so as to solve at least one technical problem existing in the above-mentioned background technology.

[0005] In order to achieve the above object, the present invention adopts the following technical solutions:

[0006] In a first aspect, the present invention provides a method for measuring geometric parameters of a turnout section, comprising:

[0007] Pre-process the collected point cloud data of the left and right rail profiles of the specified turnout model;

[0008] Establish a sliding window based on the left and right tracks, use the KDtree algorithm to calculate the coarse-grained frame difference, and classify the coarse-grained frame difference profile;

[0009] If the classification result is a valid frame difference, the frame difference is recalculated at a fine-grained level. Keyframe information is extracted based on the recalculated frame difference. The divergence direction is determined based on the extracted keyframe information. If the divergence is currently in the reverse direction, the waiting queues for the left / right track are processed. The sliding window is then updated to calculate the coarse-grained frame difference.

[0010] If the classification result is an invalid frame difference, the left / right track processing identifier is judged; if the left / right track processing identifier is empty, the point cloud enqueue operation is performed and the sliding window is updated; if the left / right track processing identifier is not empty, it is determined whether it is a sharp track close-fitting identifier; if the left / right track processing identifier is a sharp track close-fitting identifier, point cloud rematching is performed, non-key frame information is extracted, and the sliding window is updated.

[0011] Furthermore, the collected point cloud data of the left and right rail profiles of the specified model of the turnout are preprocessed, including: using the threshold screening method to eliminate invalid data in the point cloud; using the PCL radius filtering technology to denoise the noise data in the point cloud; using the point cloud data of the next frame to fill in the data missing problem in the continuous frames to ensure the integrity and continuity of the time series data; and performing precise position calibration and alignment processing on the point cloud data of the left and right rails to ensure that all subsequent related data are compared and analyzed under the same benchmark.

[0012] Furthermore, a sliding window based on the left and right tracks is established, including: setting the size m of the sliding window and constructing a left / right track sliding window of corresponding length; enqueuing m consecutive point cloud data; and dividing the point cloud data of the sliding window into two time periods, which are used for subsequent point cloud frame difference calculation.

[0013] Furthermore, a coarse-grained frame difference is calculated using the KDtree algorithm, including: setting a Euclidean distance threshold threshold1; calculating the union of the first X frames of the sliding window's point cloud data, cloudA, and constructing a KD tree based on this; calculating the union of the last mX frames of the sliding window's point cloud data, cloudB, and using the KDtree algorithm to find the nearest point in cloudA for each point in cloudB. If the Euclidean distance to the nearest point is greater than threshold1, the point is stored in the difference between cloudB and cloudA; constructing a KDtree using cloudB, and constructing the difference between cloudA and cloudB in the same manner as described above; performing a coarse contour segmentation algorithm on the two difference sets, and using the one with the larger point cloud data as the frame difference point cloud data.

[0014] Furthermore, the frame difference profile classification includes: setting 6 frame difference profile categories: point rail close frame difference, point rail repulsive frame difference, guard rail frame difference, movable center rail frame difference, fixed center rail frame difference, and invalid frame difference; and using a frame difference classification algorithm to perform profile classification.

[0015] Furthermore, the frame difference is recalculated in a fine-grained manner, including: setting the Euclidean distance threshold threshold2; using threshold2 as a benchmark, calling the KDtree algorithm again to calculate the point cloud frame difference; performing a rough contour segmentation algorithm on the two point cloud frame differences, performing secondary denoising on the point cloud frame difference, and using the point cloud data with a larger amount of data as the frame difference point cloud data.

[0016] Furthermore, the key frame information extraction includes: determining the diverging direction with the help of prior information; positioning the key frame; extracting corresponding feature points according to the silhouette type of the key frame; and calculating parameters based on the extracted feature points.

[0017] Furthermore, if the current judgment is a forward divergence, the sliding window is directly updated; if the current judgment is a reverse divergence, the point cloud data in the left / right track waiting queue needs to be subjected to corresponding feature point extraction and parameter calculation, and the sliding window is updated.

[0018] Furthermore, after determining that the point cloud frame difference is an invalid frame difference, determine whether the current left / right track processing identifier is empty; if the left / right track processing identifier is empty, the current point cloud data cannot be directly judged as the type of outline, and it will be added to the waiting queue of the left / right track; if the left / right track processing identifier is not empty, determine whether the current one is a sharp track close-fitting identifier.

[0019] Furthermore, if the left / right rail processing mark is a sharp rail close-fitting mark, the point cloud rematching algorithm is executed to extract the sharp rail profile point cloud data; if the left / right rail processing mark is not a sharp rail close-fitting mark, the information of the non-key frame in the sliding window is extracted.

[0020] The beneficial effects of the present invention are: improved efficiency and accuracy, diversified detection objects, reduced sensitivity of monitoring data to ambient light, and improved monitoring accuracy.

[0021] Additional advantages of the present invention will be more clearly given in the following description or learned through practice of the present invention. BRIEF DESCRIPTION OF THE DRAWINGS

[0022] In order to more clearly illustrate the technical solutions of the embodiments of the present invention, the following briefly introduces the drawings required for use in the description of the embodiments. Obviously, the drawings described below are only some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative work.

[0023] Figure 1 This is a flow chart of a method for measuring the geometric shape and position parameters of a turnout section according to an embodiment of the present invention.

[0024] Figure 2 This is a schematic diagram of the visualization result of part of the point cloud outline after point cloud data preprocessing according to an embodiment of the present invention.

[0025] Figure 3 This is a schematic diagram of the visualization effect of the point track repulsion frame difference according to an embodiment of the present invention.

[0026] Figure 4 This is a schematic diagram of the visualization effect of the sharp track close frame difference according to an embodiment of the present invention.

[0027] Figure 5 This is a schematic diagram of the visual effect of the guardrail frame difference according to an embodiment of the present invention.

[0028] Figure 6 This is a schematic diagram of the visualization effect of the movable center track frame difference according to an embodiment of the present invention.

[0029] Figure 7 This is a schematic diagram of the visualization effect of the fixed center track frame difference according to an embodiment of the present invention.

[0030] Figure 8 This is a schematic diagram of the feature points that need to be extracted and the parameters calculated for the switch rail repulsion described in an embodiment of the present invention.

[0031] Figure 9 This is a schematic diagram of the characteristic points that need to be extracted and the parameters calculated for the sharp rail close fitting according to an embodiment of the present invention.

[0032] Figure 10 This is a schematic diagram of the feature points that need to be extracted and the parameters calculated for the guardrail according to an embodiment of the present invention.

[0033] Figure 11 This is a schematic diagram of the feature points that need to be extracted and the parameters calculated for the center track according to an embodiment of the present invention.

[0034] Figure 12 This is a schematic diagram of the feature points that need to be extracted and the parameters calculated for the center track according to an embodiment of the present invention. DETAILED DESCRIPTION

[0035] The embodiments of the present invention are described in detail below. Examples of the embodiments are shown in the accompanying drawings, wherein the same or similar reference numerals throughout represent the same or similar elements or elements having the same or similar functions. The embodiments described below with reference to the accompanying drawings are exemplary and are only used to explain the present invention and are not to be construed as limiting the present invention.

[0036] Those skilled in the art will understand that unless otherwise defined, all terms (including technical and scientific terms) used herein have the same meaning as commonly understood by those skilled in the art to which this invention belongs.

[0037] It should also be understood that terms, such as those defined in commonly used dictionaries, should be understood to have a meaning consistent with their meaning in the context of the prior art and will not be interpreted in an idealized or overly formal sense unless as defined herein.

[0038] Those skilled in the art will appreciate that, unless otherwise stated, the singular forms "a," "an," "said," and "the" used herein may also include plural forms. It should be further understood that the term "comprising" used in the specification of the present invention refers to the presence of the stated features, integers, steps, operations, elements, and / or components, but does not preclude the presence or addition of one or more other features, integers, steps, operations, elements, and / or groups thereof.

[0039] In the description of this specification, reference to the terms "one embodiment," "some embodiments," "examples," "specific examples," or "some examples" means that the specific features, structures, materials, or characteristics described in conjunction with the embodiment or example are included in at least one embodiment or example of the present invention. Moreover, the specific features, structures, materials, or characteristics described may be combined in any suitable manner in any one or more embodiments or examples. Those skilled in the art may combine and integrate different embodiments or examples described in this specification, as well as features of different embodiments or examples, unless otherwise contradictory.

[0040] To facilitate understanding of the present invention, the present invention is further explained below with reference to specific embodiments in conjunction with the accompanying drawings. However, the specific embodiments do not constitute a limitation on the embodiments of the present invention.

[0041] Those skilled in the art should understand that the drawings are merely schematic diagrams of embodiments, and the components in the drawings are not necessarily necessary for implementing the present invention.

[0042] Example 1

[0043] In this embodiment 1, a method for measuring the geometric parameters of a turnout section is provided, wherein the main method includes the following steps:

[0044] Step S1: pre-process the collected point cloud data of the left and right rail profiles of the specified model of the turnout; Step S2: establish a sliding window based on the left and right rails; Step S3: use the KDtree algorithm to calculate the coarse-grained frame difference; Step S4: classify the frame difference profiles obtained in Step S3; Step S5: if the result of Step S4 is a valid frame difference, recalculate the frame difference with fine granularity; Step S6: extract key frame information; Step S7: determine the direction of the turnout; Step S8: if the current direction is reverse, process the waiting queue of the left / right rail. Processing; Step S9: Sliding window update, and execute step S3; Step S10: If step S4 determines that the frame difference is invalid, then determine the left / right track processing identifier; Step S11: If the left / right track processing identifier is empty, execute the point cloud enqueue operation, and execute step S9; Step S12: If the left / right track processing identifier is not empty, then determine whether it is a sharp track close-fitting identifier; Step S13: If the left / right track processing identifier is a sharp track close-fitting identifier, perform point cloud rematching; Step S14: Extract non-key frame information, and execute step S9.

[0045] In step S1, invalid data in the point cloud is removed using a threshold screening method. Noisy data in the point cloud is denoised using PCL radius filtering. Missing data in consecutive frames is filled with point cloud data from the next frame to ensure the integrity and continuity of the time series data. The point cloud data for the left and right tracks is precisely calibrated and aligned to ensure that all subsequent related data is compared and analyzed on the same basis.

[0046] In step S2, the size m of the sliding window is manually set, and left / right track sliding windows of corresponding lengths are constructed; m consecutive pieces of point cloud data are queued; and the point cloud data of the sliding window are divided into two time periods, one before and one after, for subsequent point cloud frame difference calculation.

[0047] Step S3 includes the following steps: Step S3.1: manually setting a Euclidean distance threshold threshold1; Step S3.2: calculating the union of the first X frames of point cloud data in the sliding window, cloudA, and constructing a KD tree based on this union; Step S3.3: calculating the union of the last mX frames of point cloud data in the sliding window, cloudB. For each point in cloudB, the KDtree algorithm is used to quickly determine its nearest point in cloudA. If the Euclidean distance to the nearest point is greater than threshold1, the point is stored in the difference between cloudB and cloudA. Step S3.4: constructing a KDtree using cloudB, and constructing the difference between cloudA and cloudB using the method of Step S3.3. Step S3.5: performing a coarse contour segmentation algorithm on the two difference sets, and using the one with the larger point cloud data volume as the frame difference point cloud data.

[0048] In step S4, the frame difference profile categories are manually set, which are divided into 6 categories: point rail close frame difference, point rail repulsive frame difference, guard rail frame difference, movable center rail frame difference, fixed center rail frame difference, and invalid frame difference; and the frame difference classification algorithm is used to perform profile classification.

[0049] Specifically, using the frame difference classification algorithm to perform silhouette classification includes:

[0050] The point rail frame difference mainly includes the point rail close frame difference and the point rail repulsion frame difference. Therefore, the frame differences of the aligned left and right track point cloud data must meet the characteristics of close contact and repulsion to be determined as the initial frames of the point rail close contact and repulsion, and thus used for the subsequent measurement of the parameter calculation results x meters behind the point rail tip.

[0051] For the point track repulsion frame difference, such as Figure 5 As shown in the figure, the frame difference data calculated by the Kdtree algorithm is the entire outline of the tip of the rail. In order to identify the outline features of this part, the point cloud covariance matrix is ​​used to calculate the main direction of the point cloud. The change in the main direction is used to determine whether the rail repulsion feature is met. The covariance matrix describes the data distribution of the point cloud and is obtained by calculating the distance and direction relationship between each point in the point cloud and its K neighboring points. The calculation formula is as follows:

[0052]

[0053] where x ki Represents the information of the kth point in the i-th dimension in a set of point clouds, σ ij is the covariance between the i-th dimension and the j-th dimension in the point cloud group, and Σ is the 3*3 symmetric covariance matrix of the point cloud group.

[0054] By calculating the eigenvalues ​​and eigenvectors of the point cloud group covariance matrix, we can find the maximum eigenvalue λ. max The corresponding eigenvector X max And as the main direction of the point cloud, calculate X max The angle α with the horizontal positive direction L.

[0055]

[0056] The source point cloud data corresponding to the frame difference are arranged in order along the x-axis, and then a predefined distance threshold is used to identify potential contour boundaries. When the x-axis lateral distance |x2-x1| between two adjacent points P1=(x1,y1,z1) and P2=(x2,y2,z2) exceeds the distance threshold, P1 and P2 are considered to be potential cutting points of the contour boundary and constitute the contour segmentation boundary set E={{P 1x ,P 2x},{P 3x ,P4x}...{P ix ,P jx}}, where P ix Indicates P i The x-coordinate value of the point.

[0057] If there is a certain index where the proportion of 0°<α<90° on the left and the proportion of 180°>α>90° on the right are both greater than 95% and the x-axis boundary of this part of the frame difference {P ix ,P jx}∈E and #E=2, it is considered to meet the characteristics of the sharp track repelling the initial frame.

[0058] For the frame difference of the point rail close contact state, such as Figure 4 As shown, this part is the partial outline of the tip of the sharp rail. This is because the other side of the sharp rail tip is tightly fitted to the basic rail, resulting in the single-line structured light being unable to illuminate it and thus not being reconstructed in three dimensions. Therefore, the profile of the frame difference of the sharp rail closely fitting the basic rail presents a monotonically increasing or decreasing trend in the y-axis direction. That is, if the sharp rail is closely fitting on the right rail, its frame difference profile presents a monotonically increasing trend in the y-axis direction. If the sharp rail is closely fitting on the left rail, its frame difference profile presents a monotonically decreasing trend in the y-axis direction. In order to utilize this part of the feature without being affected by the noise data of the frame difference, the MK (Mann-Kendall) trend verification algorithm is used.

[0059] The MK trend check algorithm is a non-parametric test that does not require the sample to follow a certain distribution and not be disturbed by a few outliers. The algorithm mainly tests whether to reject the null hypothesis H0 and accept the alternative hypothesis H1. Among them, H0 means that there is no obvious trend in the sample data, and H1 means that there is a trend in the sample data. Sort the point cloud frame difference data in the x-axis direction, and calculate the difference function f(p iy ,p jy ), S value, S value variance and the final Z value of the MK algorithm.

[0060]

[0061] If for a given confidence level (significance level) α, Then the null hypothesis H0 is rejected, that is, at the confidence level α (significance test level), the point cloud frame difference data has an obvious upward or downward trend. MK A positive value indicates an upward trend, and a negative value indicates a downward trend.

[0062] In addition to judging the trend, the boundary of the frame difference must also be judged. tx ,P rx}, if the outline segmentation boundary set E={{P 1x ,P2x},{P 3x ,P 4x}...{P ix ,P jx There exists a set of boundaries {P ix ,P jx}, satisfying P tx =P ix And P rx <P jx At the same time, the MK trend check result is an upward trend and #E=1 or satisfies P rx =P jx And P ix <P tx At the same time, if the MK trend check result is a downward trend and #E=1, it is considered to meet the characteristics of the point rail closely following the initial frame.

[0063] The linear structure of the grooved guardrail is an important criterion for judging the profile. Figure 6 As shown, this part uses the relative angle judgment mechanism to judge the frame difference. Sort the points in the frame difference data according to the x-axis, calculate the m points on the left and right sides of each index point, and use the RANSAC algorithm to perform straight line fitting and obtain the direction vector L of the straight line. left With L right Calculate the angle α between the two direction vectors and normalize it to the interval [0°, 90°].

[0064] If the case of 0°<α<2° accounts for the largest proportion in the entire angle distribution and the x-axis boundary of the frame difference {P tx ,P rx In addition, considering the geometric characteristics of the guardrail being higher than the basic rail, if the y-value maximum point in the frame difference is also the y-value maximum point in the source point cloud, it is considered to meet the characteristics of the toe end of the grooved guardrail.

[0065] For the movable center rail frame difference, such as Figure 7 As shown. The frame difference contour judgment mechanism of this part is similar to the sharp rail close frame difference, and point cloud rematching is also required. The MK trend verification algorithm is used to judge the trend of the point cloud on the y-axis. For the x-axis boundary of the frame difference {P tx ,P rx}, if the outline segmentation boundary set E={{P 1x ,P 2x},{P 3x ,P 4x}...{P ix ,P jx There exists a set of boundaries {P ix ,P jx}, satisfying P tx =P ixAnd P rx <P jx At the same time, the MK trend check result is an upward trend and #E=2 or satisfies P rx =P jx And P ix <P tx At the same time, if the MK trend check result is a downward trend and #E=2, it is considered to meet the characteristics of the movable center rail initial frame.

[0066] For fixed center track frame difference, such as Figure 8 As shown. The frame difference profile judgment mechanism of this part is similar to the point track repulsion frame difference. The covariance matrix of the point cloud group is decomposed by eigenvalue to obtain the main direction of the point cloud and calculate the angle α with the horizontal direction of the x-axis. If the proportion of 0°<α<90° on the left side of a specific index and the proportion of 180°>α>90° on the right side are both greater than 95% and the x-axis boundary of this part of the frame difference {P ix ,P jx}∈E and #E=3, it is considered to meet the characteristics of the initial frame of the fixed center track.

[0067] Each determined frame difference needs to be checked for accuracy, that is, the current frame difference is calculated in a sliding window containing m frames of continuous point cloud data. In order to avoid the randomness of the frame difference, an accuracy check is required.

[0068] For the sliding window W={P1,P2,P3,...P n}, P i It represents the i-th point cloud in the sliding window and is also the dividing point of the data in the sliding window. That is, W1={P1,P2,P3...P i}, W2={P i+1 ,P i+2 ,P i+3 ...P n}and W=W1∪W2.

[0069] The position where the effective frame difference appears is P n or P i+1 , if the position of the frame difference is P n , then let W2={P i+1 ,P i+2 ,P i+3 ...P n-1 ,P n+1}, recalculate the difference between W1 and W2, if the frame difference classification result does not change, it is considered to have passed the accuracy check. Similarly, if the position of the frame difference is P i+1 , then let W1={P1,P2,P3...P i-1} and re-computing the difference set of W1 and W2, if the frame difference classification result does not change, it is considered to pass the accuracy check.

[0070] The above are five effective frame difference judgment methods. If the current frame difference is judged as an effective frame difference, the classification result of the frame difference is set as the processing identifier of the left / right rail, which is used for subsequent processing of other point cloud data belonging to non-positioning key frames. If the calculated frame difference does not meet the above five frame difference profiles, it is determined to be an invalid frame difference.

[0071] In step S5, a Euclidean distance threshold threshold2 is set; the KDtree algorithm is called again to calculate the point cloud frame difference based on threshold2; the profile rough segmentation algorithm is performed on the two point cloud frame differences to perform secondary denoising of the point cloud frame difference, and the point cloud data with large amount of data is taken as the point cloud frame difference data.

[0072] In step S6, the prior information is used to judge the turnout direction; the positioning of the key frame; the corresponding feature points are extracted according to the profile type of the key frame; and the parameters are calculated according to the extracted feature points.

[0073] In step S7, if the current judgment is a positive turnout, the sliding window is directly updated; if the current judgment is a reverse turnout, the point cloud data in the left / right rail waiting queue needs to be extracted and calculated according to the corresponding feature points, and the sliding window is updated.

[0074] In step S10, after judging that the point cloud frame difference is an invalid frame difference, it is judged whether the left / right rail processing identifier is empty; if the left / right rail processing identifier is empty, the current point cloud data cannot be directly judged by the profile type, and it is added to the left / right rail waiting queue; if the left / right rail processing identifier is not empty, it is judged whether the current is a sharp rail close identifier.

[0075] In step S12, if the left / right rail processing identifier is a sharp rail close identifier, the point cloud re-matching algorithm is executed to extract the sharp rail profile point cloud data; if the left / right rail processing identifier is not a sharp rail close identifier, the information extraction of the non-key frame in the sliding window is performed.

[0076] In step 14, the corresponding feature points are extracted according to the profile type of the non-positioning key frame; and the parameters are calculated according to the extracted feature points.

[0077] Example 2

[0078] As Figures 1 to 11As shown, in this embodiment 2, a method for measuring the geometric shape and position parameters of a turnout is provided, which can calculate the key geometric parameters of the turnout area more simply, safely and accurately. This method uses spatiotemporal correlation to classify point cloud frame differences, and includes the following steps: Step S1: pre-processing the collected point cloud data of the left and right rail profiles of a specified model of the turnout; Step S2: establishing a sliding window based on the left and right rails; Step S3: using the KDtree algorithm to calculate the coarse-grained frame difference; Step S4: classifying the frame difference profile obtained in Step S3; Step S5: if the result of Step S4 is a valid frame difference, recalculate the frame difference with fine granularity; Step S6: extract positioning key frame information; Step S7: determine whether it is a forward turnout; Step S8: if the current turnout is a reverse turnout , then process the waiting queue of the left / right track; step S9: update the sliding window and execute step S3; step S10: if step S4 determines that the frame difference is invalid, then determine the left / right track processing identifier; step S11: if the left / right track processing identifier is empty, execute the point cloud enqueue operation and execute step S9; step S12: if the left / right track processing identifier is not empty, then determine whether it is a sharp rail close-fitting identifier; step S13: if the left / right track processing identifier is a sharp rail close-fitting identifier, then perform point cloud re-matching; step S14: extract non-positioning key frame information and execute step S9.

[0079] In this embodiment, step S1 includes: step S1.1: using the threshold screening method to eliminate invalid data in the point cloud; step S1.2: using the PCL radius filtering technology to denoise the noise data in the point cloud; step S1.3: for the data missing problem in continuous frames, using the point cloud data of the next frame to fill the data to ensure the integrity and continuity of the time series data; step S1.4: performing precise position calibration and alignment processing on the point cloud data of the left and right tracks to ensure that all subsequent related data are compared and analyzed under the same benchmark.

[0080] In this embodiment, step S2 includes: step S2.1: manually setting the size m of the sliding window and constructing a left / right track sliding window of corresponding length; step S2.2: enqueuing m consecutive points of point cloud data; step S2.3: dividing the point cloud data of the sliding window into two parts, front and back, for subsequent point cloud frame difference calculation.

[0081] Step S3 includes: Step S3.1: manually setting a Euclidean distance threshold threshold1; Step S3.2: calculating the union of the first x frames of the sliding window's point cloud data, cloudA, and constructing a KD tree based on this union; Step S3.3: calculating the union of the last mX frames of the sliding window's point cloud data, cloudB. For each point in cloudB, the KDtree algorithm is used to quickly determine its nearest point in cloudA. If the Euclidean distance to the nearest point is greater than threshold1, the point is stored in the difference between cloudB and cloudA. Step S3.4: constructing a KDtree using cloudB, and constructing the difference between cloudA and cloudB using the same method as Step S3.3. Step S3.5: Because the obtained frame difference data may contain noise, the two difference sets are subjected to a secondary denoising algorithm using the coarse silhouette segmentation algorithm, and the point cloud with the larger data volume is used as the frame difference point cloud data. The core of the coarse silhouette segmentation algorithm lies in effectively identifying and removing noise points that may interfere with the correct classification of the frame difference silhouette, thereby improving the effectiveness of subsequent analysis. The algorithm performs detailed data processing in both the X-axis and Y-axis dimensions. First, the algorithm sorts the point cloud data according to the X-axis coordinate and then uses a predefined distance threshold to identify potential contour boundaries. When the distance between two adjacent points exceeds this threshold, these points are considered potential cutting points of the contour boundary. The algorithm then further evaluates the point cloud data within these candidate boundaries, determining which boundaries are truly valid by checking the number of point clouds and the variance of the Y values. Only when the number of points reaches a certain threshold and the variance of the Y values ​​shows sufficient difference will these boundaries be retained as part of the valid contour, and the remaining data that does not meet the conditions will be eliminated. In the Y-axis direction, the algorithm repeats a similar process of sorting, boundary identification, and data evaluation. This step aims to further clean the point cloud data and ensure that there are no noise points in the vertical direction, thereby enhancing the purity of the data and the accuracy of subsequent analysis.

[0082] The step S4 includes: step S4.1: manually setting the frame difference profile category, which is divided into 6 categories: point rail close frame difference, point rail repulsion frame difference, guard rail frame difference, movable center rail frame difference, fixed center rail frame difference, invalid frame difference. The visualization results of the first 5 types of frame differences are shown in the attached figure. Step S4.2: Use the frame difference classification algorithm to perform profile classification. The profile classification algorithm is the same as the profile classification algorithm in Example 1 and will not be repeated here. If it is currently judged to be a valid frame difference, the classification result of the frame difference is set as the processing identifier of the left / right track for subsequent processing of other point cloud data belonging to non-positioning key frames.

[0083] The step S5 includes: step S5.1: Since the width of the guardrail at the beginning and end has a significant variation trend, using fine-grained frame difference calculation and profile classification at the beginning can easily lead to misjudgment of key frames. To improve the accuracy of profile classification, step S3 uses coarse-grained frame difference calculation. To make feature point extraction after classification more accurate, this step uses fine-grained frame difference recalculation and sets the Euclidean distance threshold threshold2; step S5.2: using threshold2 as a benchmark, calling the KDtree algorithm again to calculate the point cloud frame difference; step S5.3: executing the coarse profile segmentation algorithm on the two point cloud frame differences, performing secondary denoising on the point cloud frame differences, and using the point cloud data with the larger amount as the frame difference point cloud data.

[0084] The step S6 includes: step S6.1: judging the direction of divergence with the help of prior information. For the frame difference of the point rail or the center rail, if the frame difference appears in the first x frames, it is judged as reverse divergence, otherwise it is judged as forward divergence. For the guard rail frame difference, if the frame difference appears in the first x frames and the point rail has been visited, it is judged as the end of the guard rail for forward divergence; if the point rail has not been visited, it is judged as the end of the guard rail for reverse divergence; if the frame difference appears after mx frames and the point rail has been visited, it is judged as the beginning of the guard rail for forward divergence; if the point rail has not been visited, it is the beginning of the guard rail for reverse divergence. Step S6.2: positioning of the key frame, for forward divergence, the key frame is located in the last frame of the sliding window, and for reverse divergence, the key frame is located in the xth frame of the sliding window; step S6.3: extracting corresponding feature points according to the profile type of the positioned key frame, the main feature points include the basic rail vertex, the point rail vertex, the guard rail vertex, the track gauge point, and the auxiliary point for calculating the wheel flange groove width; the visualization of some feature point extraction results is shown in the attached figure. Step S6.4: Parameters are calculated based on the extracted feature points. The main parameters include the lowering value - point rail (the height difference between the base rail vertex and the point rail vertex), the lowering value - long center rail (the height difference between the wing rail vertex and the center rail vertex), the lowering value - short center rail (the height difference between the wing rail vertex and the center rail vertex), the wheel flange groove width - point rail (the lateral distance between the gauge point and the point rail profile on the same horizontal line), the wheel flange groove width - long center rail (the lateral distance between the gauge point and the wing rail profile on the same horizontal line), the wheel flange groove width - guard rail (the lateral distance between the gauge point and the guard rail profile on the same horizontal line), and the guard rail height difference (the height difference between the guard rail vertex and the base rail vertex). The parameter calculation method is visualized in the attached figure.

[0085] The step S7 includes: step S7.1: if the current judgment is a forward divergence, directly update the sliding window; step S7.2: if the current judgment is a reverse divergence, it is necessary to perform corresponding feature point extraction and parameter calculation on the point cloud data in the left / right track waiting queue, and update the sliding window.

[0086] The step S10 includes: step S10.1: after determining that the point cloud frame difference is an invalid frame difference, determine whether the current left / right track processing identifier is empty; step S10.2: if the left / right track processing identifier is empty, the current point cloud data cannot be directly judged for the type of outline, and it is added to the waiting queue of the left / right track; step S10.3: if the left / right track processing identifier is not empty, determine whether the current one is a sharp track close-fitting identifier.

[0087] The step S12 includes: step S12.1: if the left / right rail processing mark is a sharp rail close-fitting mark, executing the point cloud rematching algorithm to extract the sharp rail profile point cloud data; step S12.2: if the left / right rail processing mark is not a sharp rail close-fitting mark, extracting the information of non-key frames in the sliding window.

[0088] The step S13 includes: in the first frame where the switch rail is closely attached, the profile of the switch rail is obtained by calculating fine-grained frame differences, while for all frames from the third frame where the switch rail is closely attached to the base rail before the switch rail is separated from the base rail, it is relatively difficult to directly extract the profile data of the switch rail from the source point cloud data. For this reason, a rematching algorithm for the switch rail is proposed: step S13.1: for the switch rail profile obtained by fine-grained frame differences, a KDtree is constructed with the switch rail, and the source point cloud data of the frame where the switch rail is located is used to calculate the difference set about the switch rail, and the point cloud data belonging to the base rail profile in the source point cloud data is obtained; step S13.2: Since the profile data of the switch section is collected at every 5mm section, the difference between two adjacent frames is weak. Therefore, the stock rail is used to approximate the base rail profile point cloud data of the second frame where the switch rail is closely attached. Construct a KDtree with the stock rail, use the source point cloud data of the second frame of the point rail to calculate the difference set about the stock rail, obtain the point rail profile data of the second frame of the point rail, and update the basic rail point cloud data stock rail.

[0089] Taking the point cloud rematching of the point rail as an example, for the point rail profile obtained through fine-grained frame difference, a KDtree is constructed based on this part, and the source point cloud data of the frame where the point rail is located is used to calculate the difference set of the point rail profile, and the point cloud data belonging to the basic rail profile in the source point cloud data is obtained. The contour of the point rail is changing with the increase of mileage, while the contour of the basic rail remains unchanged under ideal conditions. Therefore, based on the feature that the basic rail contour remains unchanged, the ICP point cloud registration algorithm is performed on the point cloud data belonging to the basic rail part of the initial frame of the point rail and the xth frame of the point rail. The objective function is as follows:

[0090]

[0091] Wherein q is the point cloud data set of the frog initial frame belonging to the basic rail part, and p is the set of the nearest neighbor points of each point in q in the frog close fitting x frame point cloud data. After multiple iterations, the rotation and translation matrix of q to the frog close fitting x frame point cloud data is obtained, and the part of the point set that is not matched in the frog close fitting x frame is considered as the frog profile, so that the corresponding feature points of the frog profile are obtained.

[0092] The step 14 includes: step S14.1: performing corresponding feature point extraction according to the profile category of the non-positioning key frame; and step S14.2: performing parameter calculation according to the extracted feature points.

[0093] In this embodiment, the proposed method is applied to the 18# single turnout cross section profile point cloud data collected by the device, and the parameter calculation results obtained are compared with the results measured by using tools such as a track gauge and a vernier caliper at specified points by manual measurement. The experimental results are shown in Tables 1, 2, 3, 4, 5 and 6.

[0094] Table 1: Frog lowering value measurement results (unit: mm)

[0095]

[0096] Table 2: Long nose rail lowering value measurement results (unit: mm)

[0097]

[0098] Table 3: Short nose rail lowering value measurement results (unit: mm)

[0099]

[0100] Table 4: Long nose rail-flangeway groove width measurement results (unit: mm)

[0101]

[0102] Table 5: Guard rail-flangeway groove width measurement results (unit: mm)

[0103]

[0104] Table 6: Guard rail height difference measurement results (unit: mm)

[0105]

[0106]

[0107] After field measurement and comparison with manual measurement results, the key frame positioning accuracy of this method reaches 99%, the average error of geometric and position parameter measurement is less than 0.3 mm, the detection speed reaches 28.9 frames / second, and the engineering requirements of real-time, high precision and high reliability are met.

[0108] It will be understood by those skilled in the art that embodiments of the present invention may be provided as methods, systems, or computer program products. Thus, the present invention may take the form of an entirely hardware embodiment, an entirely software embodiment, or an embodiment combining software and hardware. Furthermore, the present invention may take the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to magnetic disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.

[0109] The present invention is described with reference to flowcharts and / or block diagrams of methods, devices (systems), and computer program products according to embodiments of the present invention. It should be understood that each process and / or block in the flowcharts and / or block diagrams, as well as combinations of processes and / or blocks in the flowcharts and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing device to produce a machine, so that the instructions executed by the processor of the computer or other programmable data processing device generate instructions for implementing the processes in the flowcharts and / or block diagrams. Figure 1 a process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in a block or multiple blocks.

[0110] These computer program instructions may also be stored in a computer readable memory that can direct a computer or other programmable data processing device to work in a specific manner, so that the instructions stored in the computer readable memory produce an article of manufacture comprising an instruction device, which implements the process Figure 1 a process or multiple processes and / or boxes Figure 1 The function specified in one or more boxes.

[0111] These computer program instructions can also be loaded onto a computer or other programmable data processing device, and a series of operating steps are executed on the computer or other programmable device to produce a computer-implemented process, so that the instructions executed on the computer or other programmable device provide the functions for implementing the process. Figure 1 a process or multiple processes and / or boxes Figure 1 A step that specifies a function in one or more boxes.

[0112] Although the above describes the specific embodiments of the present invention in conjunction with the accompanying drawings, it is not intended to limit the scope of protection of the present invention. Those skilled in the art should understand that various modifications or variations that can be made by those skilled in the art on the basis of the technical solutions disclosed in the present invention without the need for creative work should be included in the scope of protection of the present invention.

Claims

1. A method for measuring the geometric parameters of a turnout section, characterized in that: include: Pre-process the collected point cloud data of the left and right rail profiles of the specified turnout model; Establish a sliding window based on the left and right tracks, use the KDtree algorithm to calculate the coarse-grained frame difference, and classify the coarse-grained frame difference profile; If the classification result is a valid frame difference, the frame difference is recalculated at a fine granularity; The key frame information is extracted based on the recalculated frame difference; the diverging direction is determined based on the extracted key frame information; if the diverging direction is reverse, the waiting queue of the left / right track is processed; And update the sliding window to calculate the coarse-grained frame difference; If the classification result is an invalid frame difference, the left / right track processing identifier is judged; if the left / right track processing identifier is empty, the point cloud enqueue operation is performed and the sliding window is updated; if the left / right track processing identifier is not empty, it is determined whether it is a sharp track close-fitting identifier; if the left / right track processing identifier is a sharp track close-fitting identifier, point cloud rematching is performed, non-key frame information is extracted, and the sliding window is updated.

2. The method for measuring the geometric parameters of a turnout section according to claim 1, characterized in that: The collected point cloud data of the left and right rail profiles of the specified model of turnout are preprocessed, including: using the threshold screening method to eliminate invalid data in the point cloud; using the PCL radius filtering technology to denoise the noise data in the point cloud; using the point cloud data of the next frame to fill in the data missing problem in the continuous frame to ensure the integrity and continuity of the time series data; and performing precise position calibration and alignment processing on the point cloud data of the left and right rails to ensure that all subsequent related data are compared and analyzed under the same benchmark.

3. The method for measuring the geometric parameters of a turnout section according to claim 1, characterized in that: Establishing a sliding window based on the left and right tracks includes: setting the size m of the sliding window and constructing left / right track sliding windows of corresponding lengths; enqueuing m consecutive point cloud data; and dividing the point cloud data of the sliding window into two time periods for subsequent point cloud frame difference calculation.

4. The method for measuring the geometric parameters of a turnout section according to claim 1, characterized in that: The KDtree algorithm is used to calculate coarse-grained frame differences, including: setting a Euclidean distance threshold threshold1; calculating the union of the first X frames of the sliding window's point cloud data, cloudA, and constructing a KD tree based on this; calculating the union of the last mX frames of the sliding window's point cloud data, cloudB, and using the KDtree algorithm to find the nearest point in cloudA for each point in cloudB. If the Euclidean distance to the nearest point is greater than threshold1, the point is stored in the difference between cloudB and cloudA; constructing a KDtree using cloudB, and constructing the difference between cloudA and cloudB in the same way as described above; performing a coarse contour segmentation algorithm on the two difference sets, and using the one with the larger point cloud data as the frame difference point cloud data.

5. The method for measuring the geometric parameters of a turnout section according to claim 1, characterized in that: The classification of frame difference profiles includes: setting 6 frame difference profile categories: point rail close frame difference, point rail repulsive frame difference, guard rail frame difference, movable center rail frame difference, fixed center rail frame difference and invalid frame difference; and using a frame difference classification algorithm to classify the profiles.

6. The method for measuring the geometric parameters of a turnout section according to claim 4, characterized in that: Recalculate the frame difference in fine granularity, including: setting the Euclidean distance threshold threshold2; using threshold2 as the benchmark, call the KDtree algorithm again to calculate the point cloud frame difference; perform a rough contour segmentation algorithm on the two point cloud frame differences, perform secondary denoising on the point cloud frame difference, and use the point cloud data with a larger amount of data as the frame difference point cloud data.

7. The method for measuring the geometric parameters of a turnout section according to claim 1, characterized in that: Key frame information extraction includes: judging the direction of approach with the help of prior information; positioning the key frame; extracting corresponding feature points according to the type of the key frame's outline; and calculating parameters based on the extracted feature points.

8. The method for measuring the geometric parameters of a turnout section according to claim 1, characterized in that: If the current judgment is a forward divergence, the sliding window is directly updated; if the current judgment is a reverse divergence, the point cloud data in the left / right track waiting queue needs to be subjected to corresponding feature point extraction and parameter calculation, and the sliding window is updated.

9. The method for measuring the geometric parameters of a turnout section according to claim 1, characterized in that: After determining that the point cloud frame difference is invalid, determine whether the current left / right track processing flag is empty; if the left / right track processing flag is empty, the current point cloud data cannot be directly judged as the type of silhouette, and will be added to the waiting queue of the left / right track; If the left / right track processing flag is not empty, determine whether the current flag is the sharp track close-fitting flag.

10. The method for measuring the geometric parameters of a turnout section according to claim 1, characterized in that: If the left / right track processing mark is a sharp rail close-fitting mark, the point cloud rematching algorithm is executed to extract the sharp rail profile point cloud data; if the left / right track processing mark is not a sharp rail close-fitting mark, the information of the non-key frame in the sliding window is extracted.

Citation Information

Patent Citations

  • Turnout lateral switch rail plane linetype and design method

    CN103757996A

  • Rapid point cloud registration method based on principal component analysis

    CN117237427A