A mist detection method and apparatus

By dividing the LiDAR scanning point set and using fog detection methods, the problem of fog obstructing the LiDAR field of view was solved, improving the positioning accuracy and robustness of mobile robots in foggy environments.

CN115755084BActive Publication Date: 2026-06-05ZHEJIANG HUARAY TECH CO LTD

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
ZHEJIANG HUARAY TECH CO LTD
Filing Date
2022-11-17
Publication Date
2026-06-05

AI Technical Summary

Technical Problem

In outdoor and cold storage environments, water mist or dust can obscure the LiDAR's field of view, preventing mobile robots from using LiDAR for positioning. A method is needed to detect fog and switch to other sensors for positioning.

Method used

The target area is scanned using lidar. The target scan point set is divided and filtered by set, the angle value of the scan point and the laser beam length are calculated, the ratio value is statistically analyzed, and the amount of fog is judged to determine whether lidar positioning is used.

Benefits of technology

This technology improves the robustness of lidar positioning in foggy environments, avoids unnecessary positioning errors, and reduces detection costs.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115755084B_ABST
    Figure CN115755084B_ABST
Patent Text Reader

Abstract

The application discloses a fog detection method and device, and aims to realize fog detection on a target area by using a laser radar. The fog detection method provided by the application comprises the following steps: scanning a target area by using a laser radar to obtain at least one scanning point, and performing set division on the at least one scanning point to obtain at least one scanning point set; screening a target scanning point set from the at least one scanning point set, and calculating an angle value and a laser beam length corresponding to each scanning point in the target scanning point set; and performing fog detection on the target area by using the angle value and the laser beam length corresponding to each scanning point in the target scanning point set.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of robotics, and in particular to a fog detection method and apparatus. Background Technology

[0002] Autonomous positioning technology is a key technology for the autonomy and intelligence of robots. Sensors used for autonomous positioning of robots typically include lidar, vision sensors, GPS, IMU (inertial measurement unit), wheeled odometers, etc. Due to its high ranging accuracy, lidar is widely used in the autonomous positioning technology of mobile robots in warehousing, handling, inspection, and service.

[0003] LiDAR-based mobile robots have diverse applications. However, in outdoor or cold storage environments, the presence of water mist or dust can obstruct the LiDAR's field of view, preventing the robot from using it for localization. Therefore, it's necessary to detect when there is a large amount of water mist or dust in the environment, and in such cases, use other sensors for localization instead of LiDAR. Summary of the Invention

[0004] This application provides a fog detection method and apparatus to achieve fog detection of a target area using lidar.

[0005] This application provides a fog detection method, the method comprising:

[0006] The target area is scanned by lidar to obtain at least one scan point, and the at least one scan point is divided into sets to obtain at least one set of scan points;

[0007] A target scan point set is selected from the at least one scan point set, and the angle value and laser beam length corresponding to each scan point in the target scan point set are calculated; wherein, for the angle value corresponding to the current scan point, the smaller angle value is selected from the two vertices of the triangle formed by the laser beam corresponding to the current scan point, the laser beam corresponding to the next scan point obtained after the current scan point, and the line connecting the two scan points as the angle value corresponding to the current scan point;

[0008] Fog detection is performed on the target area using the angle value and laser beam length corresponding to each scanning point in the target scanning point set.

[0009] This method involves scanning a target area with a lidar to obtain at least one scanning point, and then dividing the at least one scanning point into a set of at least one scanning point. A target scanning point set is then selected from the at least one scanning point set, and the angle value and laser beam length corresponding to each scanning point in the target scanning point set are calculated. Specifically, for the angle value corresponding to the current scanning point, the smaller angle value is selected from the two vertices of the triangle formed by the laser beam corresponding to the current scanning point, the laser beam corresponding to the next scanning point obtained after the current scanning point, and the line connecting these two scanning points. Using the angle value and laser beam length corresponding to each scanning point in the target scanning point set, fog detection is performed on the target area, thereby achieving fog detection of the target area using lidar.

[0010] In some embodiments, partitioning the at least one scan point into a set to obtain at least one scan point set includes:

[0011] According to the order in which the scan points are acquired, the distance between each scan point and the next scan point is calculated sequentially. If the distance is greater than a preset threshold, the two scan points corresponding to that distance are used as the dividing point between the two scan point sets. Furthermore, the first and last scan points acquired are also used as dividing points.

[0012] The two adjacent separator points, as well as the scan points between these two separator points, are grouped into the same set of scan points.

[0013] This method allows for the division of scan points into different sets of scan points, thereby improving the accuracy of subsequent calculations.

[0014] In some embodiments, selecting the target scan point set from the at least one scan point set includes:

[0015] For each of the aforementioned scan point sets:

[0016] Using the coordinates of the scan points in the set of scan points, calculate the average value of the coordinates of the scan points in the set of scan points;

[0017] Based on the average value, calculate the covariance matrix corresponding to the set of scan points;

[0018] Calculate the first and second eigenvalues ​​of the covariance matrix; wherein the first eigenvalue is less than the second eigenvalue.

[0019] If the ratio of the first feature value to the second feature value is greater than a preset threshold, then the set of scan points is determined to be the target set of scan points.

[0020] This method allows for the selection of the set of scanning points containing foggy scanning points from the set of scanning points, thereby eliminating the set of scanning points containing non-foggy scanning points. This improves the accuracy of subsequent index calculations and thus enhances the fog detection precision.

[0021] In some embodiments, calculating the angle value and laser beam length corresponding to each scanning point in the target scanning point set includes:

[0022] For each scan point in the target scan point set:

[0023] Calculate the laser beam length corresponding to the scanning point based on its coordinates;

[0024] Using the laser beam length corresponding to the scanning point, calculate the angle value corresponding to the scanning point according to the following formula;

[0025]

[0026] Where θ represents the angle value corresponding to the scanning point; α represents the preset angle between the laser beam corresponding to the scanning point and the laser beam corresponding to the next scanning point; r s This indicates the length of the shorter laser beam between the laser beam corresponding to the current scanning point and the laser beam corresponding to the next scanning point; r ι This indicates the length of the longer laser beam between the laser beam corresponding to the current scanning point and the laser beam corresponding to the next scanning point.

[0027] This method enables the calculation of the angle value and laser beam length corresponding to each scanning point in the target scanning point set.

[0028] In some embodiments, the step of detecting fog in the target area using the angle value and laser beam length corresponding to each scanning point in the target scanning point set includes:

[0029] Using the angle value corresponding to each scan point in the target scan point set, a first number of scan points with angle values ​​less than a preset threshold is counted; and the first number is divided by N-1 to obtain a first ratio value; where N represents the total number of scan points obtained by scanning the target area with the lidar in this operation.

[0030] Using the laser beam length corresponding to each scanning point in the target scanning point set, a second number of scanning points with laser beam lengths less than a preset threshold is counted; and the second number is divided by N to obtain a second ratio value.

[0031] Fog detection is performed on the target area using the first and second ratio values.

[0032] This method enables the calculation of a first proportional value and a second proportional value based on the angle value of each scanning point in the target scanning point set and the laser beam length.

[0033] In some embodiments, the target area is scanned multiple times consecutively by the lidar;

[0034] Using the first and second ratio values, fog detection is performed on the target area, including:

[0035] The amount of fog present in the target area is determined to be insufficient to locate the target area using the lidar when the following conditions are met:

[0036] Condition 1: The first ratio value corresponding to each scan is greater than a preset first threshold;

[0037] Condition 2: The second ratio value corresponding to each scan is greater than the preset second threshold;

[0038] Condition 3: The state satisfying conditions 1 and 2 continues for a first preset duration, and the first preset duration is greater than a preset third threshold.

[0039] This method uses a first and a second proportional value to determine the amount of fog in the target area, which affects the accuracy of lidar positioning. In such cases, lidar positioning should be avoided.

[0040] In some embodiments, the method further includes:

[0041] The amount of fog in the target area is determined without affecting the positioning of the target area by the lidar when the following conditions are met:

[0042] Condition 4: The first ratio value corresponding to each scan is less than a preset first threshold; or, the second ratio value corresponding to each scan is less than a preset second threshold;

[0043] Condition 5: The state satisfying Condition 4 continues for a second preset duration, and the second preset duration is greater than a preset fourth threshold.

[0044] This method allows for the determination of the current fog level in the target area using a first and a second proportional value without affecting the accuracy of lidar positioning, thus enabling lidar positioning.

[0045] Another embodiment of this application provides a fog detection device, which includes a memory and a processor, wherein the memory is used to store program instructions, and the processor is used to call the program instructions stored in the memory and execute any of the methods described above according to the obtained program.

[0046] Furthermore, according to embodiments, for example, a computer program product for a computer is provided, which includes software code portions that, when the product is run on the computer, perform the steps of the methods defined above. The computer program product may include a computer-readable medium on which the software code portions are stored. Furthermore, the computer program product may be directly loaded into the computer's internal memory and / or sent via a network through at least one of an upload process, a download process, and a push process.

[0047] Another embodiment of this application provides a computer-readable storage medium storing computer-executable instructions for causing the computer to perform any of the methods described above. Attached Figure Description

[0048] To more clearly illustrate the technical solutions in the embodiments of this application, the accompanying drawings used in the description of the embodiments will be briefly introduced below. Obviously, the accompanying drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0049] Figure 1 This application provides a schematic diagram illustrating the specific process of dividing a scan point set according to an embodiment of the present application.

[0050] Figure 2 A schematic diagram of scanning points provided for an embodiment of this application;

[0051] Figure 3 A schematic diagram illustrating a specific process for filtering a set of randomly distributed scan points, provided in an embodiment of this application;

[0052] Figure 4 This is a schematic diagram of the angle value corresponding to a scanning point provided in an embodiment of this application;

[0053] Figure 5 This is a schematic flowchart illustrating a fog detection method provided in an embodiment of this application.

[0054] Figure 6 This is a schematic diagram of the overall process of a fog detection method provided in an embodiment of this application;

[0055] Figure 7 This is a schematic diagram of the structure of a fog detection device provided in an embodiment of this application. Detailed Implementation

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

[0057] This application provides a fog detection method and apparatus to achieve fog detection of a target area using lidar.

[0058] The method and apparatus are based on the same concept of the application. Since the methods and apparatus solve problems in similar ways, the implementation of the apparatus and methods can refer to each other, and the repeated parts will not be described again.

[0059] The terms "first," "second," etc. (if present) in the specification, claims, and accompanying drawings of this application are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate so that the embodiments described herein can be implemented in orders other than those illustrated or described herein. Furthermore, the terms "comprising" and "having," and any variations thereof, are intended to cover a non-exclusive inclusion; for example, a process, method, system, product, or apparatus that comprises a series of steps or units is not necessarily limited to those steps or units explicitly listed, but may include other steps or units not explicitly listed or inherent to such processes, methods, products, or apparatus.

[0060] The following examples and embodiments are to be understood as illustrative only. While this specification may refer to "a," "an," or "some" examples or embodiments in several places, this does not mean that every such reference relates to the same example or embodiment, nor does it mean that the feature applies only to a single example or embodiment. Individual features of different embodiments may also be combined to provide other embodiments. Furthermore, terms such as "comprising" and "including" should be understood not to limit the described embodiments to consisting only of those features mentioned; such examples and embodiments may also include features, structures, units, modules, etc., not specifically mentioned.

[0061] The various embodiments of this application will now be described in detail with reference to the accompanying drawings. It should be noted that the order in which the embodiments are presented in this application represents only a chronological order and does not represent the superiority or inferiority of the technical solutions provided by the embodiments.

[0062] It should be noted that the technical solution provided in this application embodiment is illustrated by taking the detection of fog in the current environment of the cold storage based on the laser sensor configured on the mobile robot itself, but it is not limited thereto.

[0063] Due to its high ranging accuracy, LiDAR is widely used in the autonomous positioning technology of mobile robots in warehousing, handling, inspection, and service applications. Mobile robots based on LiDAR positioning have diverse application scenarios. However, in outdoor and cold storage environments, the presence of large amounts of water mist or dust (i.e., fog) can obstruct the LiDAR's field of view, preventing the mobile robot from using LiDAR for positioning. Therefore, without increasing equipment or costs, a solution is needed to utilize the robot's own built-in laser sensors to detect when there is a large amount of fog in the environment, thus avoiding the use of LiDAR for positioning during those periods and improving the robustness of mobile robot positioning in foggy environments.

[0064] To address the aforementioned issues, this application proposes a fog detection method that utilizes a single-line laser sensor configured on the mobile robot itself to detect fog in the target area, eliminating the need for additional detection equipment and thus reducing detection costs.

[0065] The working principle of a single-line laser is that the transmitter rotates at a constant speed inside the lidar. It emits a laser once for each small rotation angle. After rotating a certain angle, a complete frame of data is generated.

[0066] See Figure 1 The present application provides a method for partitioning a set of scan points, the specific steps of which include:

[0067] Step S201: Scan the current environment of the cold storage using the laser sensor of the mobile robot to obtain several scanning points;

[0068] Step S202: Calculate the distance between two adjacent scan points in the order in which the scan points are acquired;

[0069] For example, scan point data p t ={p1, p2, ..., p n}, scan point p i The coordinates are (x i y i ), calculate the scan point p according to the following formula. i-1 With scan point p i The distance s between i-1 :

[0070]

[0071] Step S203: Based on the distance obtained in step S202, the scan points obtained in step S201 are divided into sets to obtain several different sets of scan points;

[0072] The distance s between adjacent scan points obtained in comparison step S202 i-1Compared with the size of the preset threshold, when s i-1 When the value exceeds a preset threshold, these two adjacent scan points are considered separator points. Furthermore, for each scan, the first and last scan points acquired are also separator points. Scan points between two adjacent separator points (including these two separator points) are grouped into the same scan point set. For example... Figure 2 As shown, scan point p i-1 With scan point p i Distance between them, scan point p j With scan point p j+1 If the distance between them is greater than the preset threshold, then p i-1 p i p j and p j+1 There are 4 dividing points (represented by hollow circles), and the scanning point p is... i To scan point p j The scan points between them are grouped into the same set of scan points. That is to say, in this set of scan points, except for scan point p... i and scan point p j The distance between any two adjacent scan points is greater than a preset threshold, while the distance between any other two adjacent scan points is less than the preset threshold; the dividing point is the point that divides the boundary between the two scan point sets.

[0073] It should be noted that the above-described set division of scan points uses a distance-based clustering algorithm, but other clustering algorithms can also be used, and no restrictions are imposed here.

[0074] See Figure 3 This application provides a method for filtering a set of randomly distributed scan points, the specific steps of which include:

[0075] Step S301: Scan the current environment of the cold storage using the laser sensor of the mobile robot to obtain several scanning points;

[0076] Step S302: Calculate the distance between two adjacent scan points in the order in which the scan points are obtained, and divide the scan points obtained in step S301 into several different scan point sets based on the distance.

[0077] Step S303: Traverse each set of scan points, for example, use the PCA method to calculate the eigenvalues ​​of the two-dimensional covariance corresponding to each set of scan points;

[0078] For example, scan point p in a set of scan points i The coordinates are (x i y i ),Right now but

[0079] Based on the coordinates of the scan points in the scan point set, calculate the average value of the coordinates of the scan points in the scan point set using the following formula (2).

[0080]

[0081] Based on the above average value Calculate the covariance matrix M corresponding to the above set of scan points using the following formula:

[0082]

[0083] The eigenvalues ​​of the two-dimensional covariance matrix M above are calculated using the matrix eigenvalue solving method. The specific solution method will not be elaborated here. The two eigenvalues ​​obtained are denoted as λ1 and λ2 in ascending order.

[0084] Step S304: Based on the feature values ​​calculated in step S303, filter out all randomly distributed scan point sets from the scan point set obtained in step S302.

[0085] For each set of scan points, compare Compared with the size of the preset threshold, when If the value exceeds a preset threshold, the distribution of scan points in the scan point set is considered disordered, and the scan point set is a disordered scan point set. Here, disordered distribution means that the distribution of scan points in the scan point set does not form a straight line or a smooth curve structure, or the scan points do not form regular geometric shapes such as rectangles, circles, or curved surfaces. It should be noted that the relatively regular distribution is not the scan points of water mist or dust, while the distribution of scan points of water mist or dust is disordered.

[0086] This application provides a method for calculating the angle value corresponding to each scan point in a set of scan points, for example... Figure 4 As shown, and Given four scan points in a set of scan points, with O being the laser emission source, assume... Calculate the angle value θ for each scan point using the following formula:

[0087]

[0088] Where θ represents the angle value corresponding to the current scanning point, and the magnitude of the angle value corresponding to each scanning point can reflect the continuity and smoothness of the acquired scanning points; α represents the angle between the laser beam corresponding to the current scanning point and the laser beam corresponding to the next scanning point. It should be noted that this value is fixed for each laser sensor; r sThis represents the length of the shorter laser beam between the laser beam corresponding to the current scan point and the laser beam corresponding to the next scan point. Its length can be calculated from the coordinates of either the current or next scan point; r l This represents the length of the longer laser beam between the laser beam corresponding to the current scanning point and the laser beam corresponding to the next scanning point. Its length can be calculated based on the coordinates of the current scanning point or the next scanning point. The angle value corresponding to the current scanning point refers to the smaller angle value among the two vertices of the triangle formed by the laser beam corresponding to the current scanning point, the laser beam corresponding to the next scanning point, and the line connecting these two scanning points.

[0089] For example Figure 4 As shown, for the scan point and scan points α is the laser beam With laser beam The angle between them; For scan points The corresponding angle value, i.e. and The angle between them; Among them, (x i y i ) indicates the scan point The coordinates, (x i-1 y i-1 ) indicates the scan point The coordinates.

[0090] See Figure 5 The fog detection method provided in this application includes the following steps:

[0091] Step S401: Scan the current environment of the cold storage using the laser sensor of the mobile robot to obtain several scanning points;

[0092] Step S402: Calculate the distance between two adjacent scan points in the order in which the scan points are obtained, and divide the scan points obtained in step S401 into several different scan point sets based on the distance.

[0093] Step S403: Traverse each set of scan points and filter out all sets of scan points with disordered distribution from the set of scan points obtained in step S402.

[0094] Step S404: Calculate the angle value and laser beam length corresponding to each scanning point in the set of all randomly distributed scanning points obtained in step S403;

[0095] Step S405: Count the number of angle values ​​calculated in step S404 that are less than a preset threshold, and divide this number by the total number of angle values ​​corresponding to all scan points to obtain the first ratio value λ. θ ;

[0096] Assume the number of scan points obtained in step S401 is N. scan Since the angle value corresponding to the last scan point cannot be calculated, the number of angle values ​​corresponding to all scan points is equal to the total number of scan points minus 1, i.e., (N). scan -1) If the number of angle values ​​calculated in step S404 that are less than the preset threshold is N θs ,but

[0097] Step S406: Count the number of scanning points whose laser beam length is less than the preset threshold calculated in step S404, and divide this number by the total number of scanning points to obtain the second ratio value λ. dis ;

[0098] Assume that the number of scanning points with a laser beam length less than a preset threshold calculated in step S404 is N. ds ,but

[0099] Step S407: Compare the first proportional value λ θ With the preset first threshold E λθ Size, second proportional value λ dis With the preset second threshold The size of the fog determines whether there is a large amount of mist in the current environment of the cold storage.

[0100] Steps S401 to S406 are repeated multiple times, that is, the current environment of the cold storage is scanned by the lidar m1 times within a certain time period T1. When the following conditions are met, it is determined that there is a large amount of fog in the current environment of the cold storage:

[0101] Condition 1: Each scan corresponds to

[0102] Condition 2: Each scan corresponds to

[0103] Condition 3: The state that simultaneously satisfies conditions 1 and 2 lasts for T1, and T1 is greater than the preset third threshold T. spray ;

[0104] In other words, if the current environment of the cold storage is scanned by the LiDAR m1 times within the duration T1, and each scan result satisfies conditions one and two, and the duration T1 is greater than the preset third threshold, then it is determined that there is a large amount of fog in the current environment of the cold storage. At this time, the mobile robot needs to avoid using the LiDAR for positioning.

[0105] Alternatively, within a certain duration T2, the lidar scans the current environment of the cold storage m2 times. If the following conditions are met, it is determined that there is no significant amount of fog in the current environment of the cold storage:

[0106] Condition 4: Each scan corresponds to Or each scan corresponds to

[0107] Condition 5: The state satisfying condition 4 continues for T2, and T2 is greater than the preset fourth threshold T. n ;

[0108] In other words, if the current environment of the cold storage is scanned by the LiDAR m2 times within the duration T2, and each scan result satisfies condition four and the duration T2 is greater than the preset fourth threshold, then it is determined that there is no large amount of fog in the current environment of the cold storage, and the mobile robot can use the LiDAR for positioning.

[0109] Regarding step S407 above, in some embodiments, it can also involve scanning the current environment of the cold storage with the lidar n1 times consecutively, and determining that there is a large amount of fog in the current environment of the cold storage when the following conditions are met:

[0110] Condition 6: Each scan corresponds to

[0111] Condition 7: Each scan corresponds to

[0112] Condition 8: Conditions 6 and 7 are satisfied simultaneously, and n1 is greater than the preset fifth threshold.

[0113] In other words, if the current environment of the cold storage is scanned by the LiDAR n1 times in a row, and each scan result satisfies conditions six and seven, and n1 is greater than the preset fifth threshold, then it is determined that there is a large amount of fog in the current environment of the cold storage. At this time, the mobile robot needs to avoid using the LiDAR for positioning.

[0114] Alternatively, by scanning the cold storage environment with the lidar n² times consecutively, it can be determined that there is no significant amount of fog in the current environment of the cold storage when the following conditions are met:

[0115] Condition 9: Each scan corresponds to Or each scan corresponds to

[0116] Condition 10: Condition 9 is satisfied, and n2 is greater than the preset sixth threshold.

[0117] In other words, if the current environment of the cold storage is scanned by the LiDAR n2 times consecutively, and the result of each of these n2 scans satisfies condition nine and n2 is greater than the preset sixth threshold, then it is determined that there is no large amount of fog in the current environment of the cold storage, and the mobile robot can use the LiDAR for positioning.

[0118] In summary, see Figure 6 This application provides a fog detection method, comprising:

[0119] Step S101: Scan the target area with a lidar to obtain at least one scan point, and divide the at least one scan point into a set to obtain at least one set of scan points;

[0120] The target area is, for example, a cold storage facility;

[0121] Step S102: Select a target scan point set from the at least one scan point set, and calculate the angle value and laser beam length corresponding to each scan point in the target scan point set; wherein, for the angle value corresponding to the current scan point, the smaller angle value is selected from the two vertices of the triangle formed by the laser beam corresponding to the current scan point, the laser beam corresponding to the next scan point obtained after the current scan point, and the line connecting the two scan points as the angle value corresponding to the current scan point;

[0122] The target scan point set, for example, is the randomly distributed scan point set mentioned above;

[0123] Step S103: Detect fog in the target area using the angle value and laser beam length corresponding to each scanning point in the target scanning point set;

[0124] The fog, for example, is water mist or dust.

[0125] Step S103 enables fog detection of the target area by utilizing the angle value and laser beam length corresponding to each scanning point in the randomly distributed set of scanning points.

[0126] To improve the accuracy of subsequent calculations, in some embodiments, the step of partitioning the at least one scan point into a set to obtain at least one set of scan points includes:

[0127] According to the order in which the scan points are acquired, the distance between each scan point and the next scan point is calculated sequentially (for example, using Formula 1 above). If the distance is greater than a preset threshold, the two scan points corresponding to that distance are used as the dividing point to divide the two scan point sets. Furthermore, the first and last scan points acquired are also used as dividing points.

[0128] The two adjacent separator points, as well as the scan points between these two separator points, are grouped into the same set of scan points;

[0129] Wherein, the distance, for example, s mentioned above i-1 The dividing point, for example, p mentioned above. i-1 p i p j and p j+1 .

[0130] To improve detection accuracy, in some embodiments, the step of selecting the target scan point set from the at least one scan point set includes:

[0131] For each set of scan points:

[0132] Using the coordinates of the scan points in the scan point set, calculate the average value of the coordinates of the scan points in the scan point set (for example, using Formula 2 above);

[0133] Based on the average value, calculate the covariance matrix corresponding to the set of scan points (for example, using Formula 3 above);

[0134] Calculate the first and second eigenvalues ​​of the covariance matrix; wherein the first eigenvalue is less than the second eigenvalue.

[0135] If the ratio of the first feature value to the second feature value is greater than a preset threshold, then the set of scan points is determined to be the target set of scan points;

[0136] Wherein, the first feature value is, for example, λ1 as described above; and the second feature value is, for example, λ2 as described above.

[0137] To facilitate the calculation of subsequent indicators, in some embodiments, the calculation of the angle value and laser beam length corresponding to each scanning point in the target scanning point set includes:

[0138] For each scan point in the target scan point set:

[0139] Calculate the laser beam length corresponding to the scanning point based on its coordinates;

[0140] Using the laser beam length corresponding to the scanning point, calculate the angle value corresponding to the scanning point according to the following formula;

[0141]

[0142] Where θ represents the angle value corresponding to the scanning point; α represents the preset angle between the laser beam corresponding to the scanning point and the laser beam corresponding to the next scanning point; r s This indicates the length of the shorter laser beam between the laser beam corresponding to the current scanning point and the laser beam corresponding to the next scanning point; r ι This indicates the length of the longer laser beam between the laser beam corresponding to the current scanning point and the laser beam corresponding to the next scanning point.

[0143] In some embodiments, the step of detecting fog in the target area using the angle value and laser beam length corresponding to each scanning point in the target scanning point set includes:

[0144] Using the angle value corresponding to each scan point in the target scan point set, a first number of scan points with angle values ​​less than a preset threshold is counted; and the first number is divided by N-1 to obtain a first ratio value; where N represents the total number of scan points obtained by scanning the target area with the lidar in this operation.

[0145] Using the laser beam length corresponding to each scanning point in the target scanning point set, a second number of scanning points with laser beam lengths less than a preset threshold is counted; and the second number is divided by N to obtain a second ratio value.

[0146] Fog detection is performed on the target area using the first and second ratio values;

[0147] Wherein, the first quantity, for example, N mentioned above, is... θs The first ratio value, for example, λ as mentioned above. θ The second quantity, such as N mentioned above. ds The second proportional value, for example, λ as mentioned above. dis .

[0148] To improve the accuracy of positioning using lidar, in some embodiments, the target area is scanned multiple times consecutively by the lidar;

[0149] Using the first and second ratio values, fog detection is performed on the target area, including:

[0150] The amount of fog present in the target area is determined to be insufficient to locate the target area using the lidar when the following conditions are met:

[0151] Condition 1: The first ratio value corresponding to each scan is greater than a preset first threshold;

[0152] Condition 2: The second ratio value corresponding to each scan is greater than the preset second threshold;

[0153] Condition 3: The state satisfying conditions 1 and 2 continues for a first preset duration, and the first preset duration is greater than a preset third threshold.

[0154] Wherein, the preset first threshold is, for example, the one described above. The preset second threshold, for example, as described above. The first preset duration, such as T1 as described above; the preset third threshold, such as T as described above. spray .

[0155] To improve the accuracy of positioning using lidar, in some embodiments, the method further includes:

[0156] The amount of fog in the target area is determined without affecting the positioning of the target area by the lidar when the following conditions are met:

[0157] Condition 4: The first ratio value corresponding to each scan is less than a preset first threshold; or, the second ratio value corresponding to each scan is less than a preset second threshold;

[0158] Condition 5: The state satisfying condition 4 continues for a second preset duration, and the second preset duration is greater than a preset fourth threshold.

[0159] Wherein, the second preset duration is, for example, T2 as described above; the preset fourth threshold is, for example, T as described above. n .

[0160] The following describes the device or apparatus provided in the embodiments of this application, and the explanations or examples of the same or corresponding technical features as those described in the above methods will not be repeated hereafter.

[0161] See Figure 7 This application provides a fog detection device, which may be, for example, a module installed in a mobile robot for performing the above-described method, or a standalone device for performing the above-described method. The device includes:

[0162] Processor 600 is used to read the program from memory 620 and execute the following procedures:

[0163] The target area is scanned by lidar to obtain at least one scan point, and the at least one scan point is divided into sets to obtain at least one set of scan points;

[0164] A target scan point set is selected from the at least one scan point set, and the angle value and laser beam length corresponding to each scan point in the target scan point set are calculated; wherein, for the angle value corresponding to the current scan point, the smaller angle value is selected from the two vertices of the triangle formed by the laser beam corresponding to the current scan point, the laser beam corresponding to the next scan point obtained after the current scan point, and the line connecting the two scan points as the angle value corresponding to the current scan point;

[0165] Fog detection is performed on the target area using the angle value and laser beam length corresponding to each scanning point in the target scanning point set.

[0166] In some embodiments, partitioning the at least one scan point into a set to obtain at least one scan point set includes:

[0167] According to the order in which the scan points are acquired, the distance between each scan point and the next scan point is calculated sequentially. If the distance is greater than a preset threshold, the two scan points corresponding to that distance are used as the dividing point between the two scan point sets. Furthermore, the first and last scan points acquired are also used as dividing points.

[0168] The two adjacent separator points, as well as the scan points between these two separator points, are grouped into the same set of scan points.

[0169] In some embodiments, selecting the target scan point set from the at least one scan point set includes:

[0170] For each of the aforementioned scan point sets:

[0171] Using the coordinates of the scan points in the set of scan points, calculate the average value of the coordinates of the scan points in the set of scan points;

[0172] Based on the average value, calculate the covariance matrix corresponding to the set of scan points;

[0173] Calculate the first and second eigenvalues ​​of the covariance matrix; wherein the first eigenvalue is less than the second eigenvalue.

[0174] If the ratio of the first feature value to the second feature value is greater than a preset threshold, then the set of scan points is determined to be the target set of scan points.

[0175] In some embodiments, calculating the angle value and laser beam length corresponding to each scanning point in the target scanning point set includes:

[0176] For each scan point in the target scan point set:

[0177] Calculate the laser beam length corresponding to the scanning point based on its coordinates;

[0178] Using the laser beam length corresponding to the scanning point, calculate the angle value corresponding to the scanning point according to the following formula;

[0179]

[0180] Where θ represents the angle value corresponding to the scanning point; α represents the preset angle between the laser beam corresponding to the scanning point and the laser beam corresponding to the next scanning point; r s This indicates the length of the shorter laser beam between the laser beam corresponding to the current scanning point and the laser beam corresponding to the next scanning point; r ι This indicates the length of the longer laser beam between the laser beam corresponding to the current scanning point and the laser beam corresponding to the next scanning point.

[0181] In some embodiments, the step of detecting fog in the target area using the angle value and laser beam length corresponding to each scanning point in the target scanning point set includes:

[0182] Using the angle value corresponding to each scan point in the target scan point set, a first number of scan points with angle values ​​less than a preset threshold is counted; and the first number is divided by N-1 to obtain a first ratio value; where N represents the total number of scan points obtained by scanning the target area with the lidar in this operation.

[0183] Using the laser beam length corresponding to each scanning point in the target scanning point set, a second number of scanning points with laser beam lengths less than a preset threshold is counted; and the second number is divided by N to obtain a second ratio value.

[0184] Fog detection is performed on the target area using the first and second ratio values.

[0185] In some embodiments, the target area is scanned multiple times consecutively by the lidar;

[0186] Using the first and second ratio values, fog detection is performed on the target area, including:

[0187] The amount of fog present in the target area is determined to be insufficient to locate the target area using the lidar when the following conditions are met:

[0188] Condition 1: The first ratio value corresponding to each scan is greater than a preset first threshold;

[0189] Condition 2: The second ratio value corresponding to each scan is greater than the preset second threshold;

[0190] Condition 3: The state satisfying conditions 1 and 2 continues for a first preset duration, and the first preset duration is greater than a preset third threshold.

[0191] In some embodiments, the processor 600 is further configured to read a program from the memory 620 and execute it:

[0192] The amount of fog in the target area is determined without affecting the positioning of the target area by the lidar when the following conditions are met:

[0193] Condition 4: The first ratio value corresponding to each scan is less than a preset first threshold; or, the second ratio value corresponding to each scan is less than a preset second threshold;

[0194] Condition 5: The state satisfying Condition 4 continues for a second preset duration, and the second preset duration is greater than a preset fourth threshold.

[0195] In some embodiments, the fog detection device provided in this application further includes a transceiver 610 for receiving and sending data under the control of a processor 600.

[0196] Among them, Figure 7 In this context, the bus architecture can include any number of interconnected buses and bridges, specifically linking various circuits together, represented by one or more processors (processor 600) and memory (memory 620). The bus architecture can also link together various other circuits such as peripheral devices, voltage regulators, and power management circuits, which are well known in the art and therefore will not be described further herein. The bus interface provides an interface. The transceiver 610 can be multiple elements, including a transmitter and a receiver, providing a unit for communicating with various other devices over a transmission medium.

[0197] In some embodiments, the fog detection device provided in this application further includes a user interface 630. The user interface 630 may be an interface that can connect to external or internal devices, including but not limited to keypads, displays, speakers, microphones, joysticks, etc.

[0198] The processor 600 is responsible for managing the bus architecture and general processing, while the memory 620 can store the data used by the processor 600 when performing operations.

[0199] In some embodiments, the processor 600 may be a CPU (Central Processing Unit), an ASIC (Application Specific Integrated Circuit), an FPGA (Field-Programmable Gate Array), or a CPLD (Complex Programmable Logic Device).

[0200] This application provides a computing device, which may specifically be a desktop computer, portable computer, smartphone, tablet computer, personal digital assistant (PDA), etc. The computing device may include a central processing unit (CPU), memory, input / output devices, etc. Input devices may include a keyboard, mouse, touchscreen, etc., and output devices may include display devices, such as a liquid crystal display (LCD) or a cathode ray tube (CRT).

[0201] The memory may include read-only memory (ROM) and random access memory (RAM), and provides the processor with program instructions and data stored in the memory. In the embodiments of this application, the memory may be used to store the program of any of the methods provided in the embodiments of this application.

[0202] The processor executes any of the methods described in the embodiments of this application according to the program instructions stored in the memory.

[0203] This application also provides a computer program product or computer program that includes computer instructions stored in a computer-readable storage medium. A processor of a computer device reads the computer instructions from the computer-readable storage medium and executes the computer instructions, causing the computer device to perform any of the methods described in the above embodiments. The program product may employ any combination of one or more readable media. The readable medium may be a readable signal medium or a readable storage medium. A readable storage medium may be, for example,—but not limited to—an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination thereof. More specific examples of readable storage media (a non-exhaustive list) include: an electrical connection having one or more wires, a portable disk, a hard disk, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage device, magnetic storage device, or any suitable combination thereof.

[0204] This application provides a computer-readable storage medium for storing computer program instructions used in the apparatus provided in the above-described embodiments, including a program for performing any of the methods provided in the above-described embodiments. The computer-readable storage medium may be a non-transitory computer-readable medium.

[0205] The computer-readable storage medium can be any available medium or data storage device that a computer can access, including but not limited to magnetic storage (e.g., floppy disks, hard disks, magnetic tapes, magneto-optical disks (MOs), etc.), optical storage (e.g., CDs, DVDs, BDs, HVDs, etc.), and semiconductor storage (e.g., ROMs, EPROMs, EEPROMs, non-volatile memory (NAND flash), solid-state drives (SSDs)).

[0206] Those skilled in the art will understand that embodiments of this application can be provided as methods, systems, or computer program products. Therefore, this application can take the form of a completely hardware embodiment, a completely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, this application can take the form of a computer program product embodied on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.

[0207] This application is described with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to this application. It should be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations 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, special-purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, generate instructions for implementing the flowchart illustrations. Figure 1 One or more processes and / or boxes Figure 1 A device that provides the functions specified in one or more boxes.

[0208] These computer program instructions may also be stored in a computer-readable storage medium that can direct a computer or other programmable data processing device to function in a particular manner, such that the instructions stored in the computer-readable storage medium produce an article of manufacture including instruction means, which are implemented in a process Figure 1 One or more processes and / or boxes Figure 1 The function specified in one or more boxes.

[0209] These computer program instructions may also be loaded onto a computer or other programmable data processing equipment to cause a series of operational steps to be performed on the computer or other programmable equipment to produce a computer-implemented process, thereby providing instructions that execute on the computer or other programmable equipment for implementing the process. Figure 1 One or more processes and / or boxes Figure 1 The steps of the function specified in one or more boxes.

[0210] Obviously, those skilled in the art can make various modifications and variations to this application without departing from the spirit and scope of this application. Therefore, if such modifications and variations fall within the scope of the claims of this application and their equivalents, this application also intends to include such modifications and variations.

Claims

1. A method for detecting fog, characterized in that, The method includes: The target area is scanned by lidar to obtain at least one scan point, and the at least one scan point is divided into sets to obtain at least one set of scan points; A target scan point set is selected from the at least one scan point set, and the angle value and laser beam length corresponding to each scan point in the target scan point set are calculated; wherein, for the angle value corresponding to the current scan point, the smaller angle value is selected from the two vertices of the triangle formed by the laser beam corresponding to the current scan point, the laser beam corresponding to the next scan point obtained after the current scan point, and the line connecting the two scan points as the angle value corresponding to the current scan point; Fog detection is performed on the target area using the angle value and laser beam length corresponding to each scanning point in the target scanning point set; The step of detecting fog in the target area using the angle value and laser beam length corresponding to each scanning point in the target scanning point set includes: Using the angle value corresponding to each scan point in the target scan point set, a first number of scan points with angle values ​​less than a preset threshold is counted; and the first number is divided by N-1 to obtain a first ratio value; where N represents the total number of scan points obtained by scanning the target area with the lidar in this operation. Using the laser beam length corresponding to each scanning point in the target scanning point set, a second number of scanning points with laser beam lengths less than a preset threshold is counted; and the second number is divided by N to obtain a second ratio value. Fog detection is performed on the target area using the first and second ratio values.

2. The method according to claim 1, characterized in that, The step of partitioning the at least one scan point into a set to obtain at least one scan point set includes: According to the order in which the scan points are acquired, the distance between each scan point and the next scan point is calculated sequentially. If the distance is greater than a preset threshold, the two scan points corresponding to that distance are used as the dividing point between the two scan point sets. Furthermore, the first and last scan points acquired are also used as dividing points. The two adjacent separator points, as well as the scan points between these two separator points, are grouped into the same set of scan points.

3. The method according to claim 1, characterized in that, The step of selecting the target scan point set from the at least one scan point set includes: For each of the aforementioned scan point sets: Using the coordinates of the scan points in the set of scan points, calculate the average value of the coordinates of the scan points in the set of scan points; Based on the average value, calculate the covariance matrix corresponding to the set of scan points; Calculate the first and second eigenvalues ​​of the covariance matrix; wherein the first eigenvalue is less than the second eigenvalue. If the ratio of the first feature value to the second feature value is greater than a preset threshold, then the set of scan points is determined to be the target set of scan points.

4. The method according to claim 1, characterized in that, The calculation of the angle value and laser beam length corresponding to each scanning point in the target scanning point set includes: For each scan point in the target scan point set: Calculate the laser beam length corresponding to the scanning point based on its coordinates; Using the laser beam length corresponding to the scanning point, calculate the angle value corresponding to the scanning point according to the following formula; Where θ represents the angle value corresponding to the scanning point; α represents the preset angle between the laser beam corresponding to the scanning point and the laser beam corresponding to the next scanning point; This indicates the length of the shorter laser beam between the laser beam corresponding to the current scanning point and the laser beam corresponding to the next scanning point; The length of the longer laser beam between the laser beam at the current scanning point and the laser beam at the next scanning point.

5. The method according to claim 1, characterized in that, The target area is scanned multiple times consecutively by the lidar. Using the first and second ratio values, fog detection is performed on the target area, including: The amount of fog present in the target area is determined to be insufficient to locate the target area using the lidar when the following conditions are met: Condition 1: The first ratio value corresponding to each scan is greater than a preset first threshold; Condition 2: The second ratio value corresponding to each scan is greater than the preset second threshold; Condition 3: The state satisfying conditions 1 and 2 continues for a first preset duration, and the first preset duration is greater than a preset third threshold.

6. The method according to claim 5, characterized in that, The method further includes: The amount of fog in the target area is determined without affecting the positioning of the target area by the lidar when the following conditions are met: Condition 4: The first ratio value corresponding to each scan is less than a preset first threshold; or, the second ratio value corresponding to each scan is less than a preset second threshold; Condition 5: The state satisfying Condition 4 continues for a second preset duration, and the second preset duration is greater than a preset fourth threshold.

7. A fog detection device, characterized in that, include: Memory, used to store program instructions; A processor is configured to invoke program instructions stored in the memory and execute the method according to any one of claims 1 to 6.

8. A computer program product for use in a computer, characterized in that, Includes a software code portion that, when the product is run on the computer, is used to perform the method according to any one of claims 1 to 6.

9. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores computer-executable instructions for causing the computer to perform the method according to any one of claims 1 to 6.