This application claims the benefit of Korean Patent Nos. 10-2019-0083711, filed Jul. 11, 2019 and 10-2020-0063100, filed May 26, 2020, which are hereby incorporated by references in their entireties into this application.
The present invention relates to a method for detecting laser reflectors for mobile robot localization in the dynamic environment and an apparatus for the same.
With the recent development of self-driving technologies, mobile robots are being used in various places ranging from public places to dangerous environments, such as hospitals, nuclear power plants, factories and warehouses. However, accurate location recognition (localization) technology must be preceded to operate and apply reliably autonomous driving technology to more diverse real-life situations.
Previous academic research focused on developing localization technology with natural markets from the space where robots are used. However, there is a limit in terms of stability of the technology to apply a natural marker-based localization technology developed in academic research in the dynamic environment required by the real industrial domain. Therefore, an artificial marker-based localization technology has been developed that can meet the demand for autonomous navigation technology for the actual dynamic environment and reliably drive the robot under any circumstances.
Artificial markers for localization of mobile robots, which have recently been widely used, include barcodes or RFID tags attached to the floor or walls, specially-designed markers attached to the ceiling, and laser reflectors installed on walls or columns.
Among the artificial marker-based localization method, the method of attaching barcodes or RFID tags to the floor or walls can be recognized accurately at low cost, but it is difficult to maintain due to damage caused by physical contact with surrounding users and robots Moreover, the cost of installing barcodes or RFID tags increased significantly as die range of robot applications expands. Also, the method of specially-designed markers on die ceiling may be difficult to attach depending on the structure of the ceiling, and may require separate device to detect the special markers.
However, the method of localization using laser reflector has the advantage of being able to recognize location in an area of tens of square meters with just a few reflectors, with less risk of contact damage. In addition, the laser scanner, which is used to recognize laser reflectors, is basically equipped with a moving robot for safety purposes such as obstacle avoidance, so localization can be implemented at a relatively low cost without a separate dedicated sensor for localization.
In order to implement die positioning technology of mobile robots using laser reflectors, it is essential that the position of the reflector is correctly recognized. Usually, reflectors use very high reflectivity materials for laser beams. However, the conventional method of detecting the laser reflector, which is a method of detecting the laser reflector which having the intensity of the reflection obtained from the laser scanner is above a certain boundary value, is highly likely to detect falsely the position of the reflector depending on the material of the surrounding environment. For example, materials such as glass, steel, white walls, etc. have very high laser reflectivity, so it is difficult to accurately distinguish only laser reflectors by setting the boundary values.
Accordingly, technology is required to detect the position of the laser reflector with laser scanners only, but to recognize the correct position by reducing the probability of false detection of the position of the laser reflector, even in environments composed of various materials.
(Patent Document 1) Korean Patent No. 10-1466953. published on Nov. 24, 2014.
An object of the present invention is to provide a method for detecting the position of the laser reflectors which is attached for localization of the mobile robots and an apparatus for the same.
Another object of the present invention is to effectively utilize the information regarding the distance and the reflection values obtained from the laser scanner, and the geometry of predefined reflectors, and to provide a method and an apparatus for accurately detecting only the actual reflector from a variety of objects made up of materials similar to the laser reflector.
A method for detecting laser reflectors for mobile robot localization according to an embodiment includes collecting scan information data corresponding to positions of surrounding objects using a laser scanner mounted on a mobile robot; generating a reflector cluster based on reflection intensities of the scan information data: classifying the reflector cluster into individual reflector clusters, each of the individual reflector clusters corresponding to each of the laser reflectors; determining whether each of the individual reflector clusters is a valid individual reflector cluster corresponding to an actual individual laser reflector or not based on geometric filtering on the each of the individual reflector clusters; and calculating position of the actual individual laser reflector based on at least one of the scan information data corresponding to the valid individual reflector cluster.
Here, the scan information datum may include a distance to the surrounding object, an angle of a laser beam and a reflection intensity of the laser beam.
Here, the reflector cluster may correspond to the scan information data having the reflection intensities which are bigger than or equal to a reflection intensity threshold, and the reflection intensity threshold is determined according to a type of one of the laser reflectors.
Here, each of the individual reflector clusters may correspond to the scan information data having the distances whose difference is less than or equal to a distance threshold, and the distance threshold is any one of width, height, or diameter of one of the laser reflectors.
Here, the determining whether each of the individual reflector clusters is a valid individual reflector cluster may include calculating an angular range of the laser beams corresponding to each of the individual reflector clusters based on an average value of the distances of the scan information data corresponding to each of the individual reflector clusters; calculating an expected number of the scan information data included in each of the individual reflector clusters based on the angular range of the laser beams; and determining whether each of the individual reflector clusters is a valid individual reflector cluster based on the expected number of the scan information data.
Here, the angular range (Δ) of the laser beams may be determined by the equation
where D is a width or a diameter of the laser reflector, dm is the average value of distances.
Here, the expected number of the scan information data may be determined by dividing the angular range of the laser beam by an angle resolution of the laser beam.
Here, the determining whether each of the individual reflector clusters is a valid individual reflector cluster may further include calculating a difference between tire expected number of the scan information data and a number of the scan information data included in each of the individual reflector clusters; and determining the individual reflector cluster as the valid individual reflector cluster if the difference is within an acceptable error number threshold.
Here, the position of the actual individual laser reflector may be calculated based on the distance and the angle of the laser beam of at least one of the scan information data corresponding to the each of the valid individual reflector clusters.
Here, the position of the actual individual laser reflector may be calculated in consideration of a radius of the actual individual laser reflector, when the actual individual laser reflector is circular.
Also, an apparatus for collecting position information of laser reflectors for mobile robot localization according to an embodiment may include a processor for collecting scan information data corresponding to positions of surrounding objects using a laser scanner mounted on a mobile robot, generating a reflector cluster based on reflection intensities of the scan information data, classifying the reflector cluster into individual reflector clusters, each of the individual reflector clusters corresponding to each of the laser reflectors, determining whether each of the individual reflector clusters is a valid individual reflector cluster corresponding to an actual individual laser reflector or not based on geometric filtering on the each of the individual reflector clusters; and memory for storing at least one of the scan information datum, the reflector cluster, the individual reflector clusters and the valid individual reflector clusters.
Here, the scan information datum may include a distance of a surrounding object, an angle of a laser beam and a reflection intensity of the laser beam.
Here, the reflector cluster may correspond to the scan information data having the reflection intensities which are bigger than or equal to a reflection intensity threshold, and the reflection intensity threshold is determined according to a type of one of the laser reflectors.
Here, each of the individual reflector clusters may correspond to the scan information data having the distances whose difference is less than or equal to a distance threshold, and the distance threshold is any one of width, height, or diameter of one of the laser reflectors.
Here, the processor may calculate an angular range of the laser beams corresponding to each of the individual reflector clusters based on an average value of the distances of the scan information data corresponding to each of the individual reflector clusters, calculate an expected number of the scan information data included in each of the individual reflector clusters based on the angular range of the laser beams, and determine whether each of the individual reflector clusters is a valid individual reflector cluster based on die expected number of the scan information data.
Here, the angular range (Δ) of the laser beams may be determined by the equation
where D is a width or a diameter of the laser reflector, dm is the average value of distances.
Here, the expected number of the scan information data may be determined by dividing the angular range of the laser beam by an angle resolution of the laser beam.
Here, the processor may calculate a difference between the expected number of the scan information data and a number of the scan information data included in each of the individual reflector clusters, and determine the individual reflector cluster as the valid individual reflector cluster if the difference is within an acceptable error number threshold.
Also, an apparatus for calculating positions of laser reflectors for mobile robot localization according to an embodiment may include a processor for receiving valid individual reflector clusters corresponding to actual individual laser reflectors from a position information collection apparatus, and calculating position of the actual individual laser reflector based on at least one of the scan information data corresponding to the each of the valid individual reflector clusters; and memory for storing the positions of the actual individual laser reflectors.
Here, the position of the actual individual laser reflector may be calculated based on the distance and the angle of the laser beam of at least one of the scan information data corresponding to die each of the valid individual reflector clusters.
The above and other objects, features and advantages of the present invention will be more clearly understood from the following detailed description, taken in conjunction with the accompanying drawings, in which:
The advantages and features of the present invention and methods of achieving them will be apparent from the following exemplary embodiments to be described in more detail with reference to the accompanying drawings. However, it should be noted that the present invention is not limited to the following exemplary embodiments, and may be implemented in various forms. Accordingly, tire exemplary embodiments are provided only to disclose the present invention and to let those skilled in the art know the category of the present invention, and the present invention is to be defined based only on the claims. The same reference numerals or the same reference designators denote the same elements throughout the specification.
It will be understood that, although the terms “first,” “second,” etc. may be used herein to describe various elements, these elements are not intended to be limited by these terms. These terms are only used to distinguish one element from another element. For example, a first element discussed below could be referred to as a second element without departing from the teachings of the present invention.
The terms used herein are for the purpose of describing particular embodiments only and are not intended to limit the present invention. As used herein, the singular forms arc intended to include the plural forms as well, unless the context clearly indicates otherwise. It will be further understood that the terms “comprises,” “comprising”, “includes” and/or “including,” when used herein, specify the presence of stated features, integers, steps, operations, elements, and/or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and/or groups thereof.
Unless differently defined, all terms used here, including technical or scientific terms, have the same meanings as terms generally understood by those skilled in the art to which the present invention pertains. Terms identical to those defined in generally used dictionaries should be interpreted as having meanings identical to contextual meanings of the related art, and are not to be interpreted as having ideal or excessively formal meanings unless they are definitively defined in the present specification.
Hereinafter, a method for detecting laser reflectors for mobile robot localization and an apparatus for the same according to an embodiment will be described in detail with reference to
For the convenience of explanation.
Referring to
Conventional technology for detecting the laser reflectors is to detect the laser reflector, which reflection intensity is above a certain threshold value, using the laser scanner. Thus, if the reflectivity of the confusing object 160 is equal to or greater than that of the reflector, the confusing object is also detected as a laser reflector. After all, setting this threshold value alone makes it difficult to distinguish only laser reflectors 120,130, 140 and 150 precisely.
As illustrated in
Referring to
The position information collection apparatus 210 may collect scan information data corresponding to positions of surrounding objects using a laser scanner mounted on a mobile robot. The apparatus 210 may generate a reflector cluster based on reflection intensities of the scan information data. The apparatus 210 may classify the reflector cluster into individual reflector clusters, each of the individual reflector clusters corresponding to each of the laser reflectors. And the apparatus 210 may determine whether each of the individual reflector clusters is a valid individual reflector cluster corresponding to an actual individual laser reflector or not based on geometric filtering on the each of the individual reflector clusters.
Here, the scan information datum includes a distance to the surrounding object, an angle of a laser beam and a reflection intensity of the laser beam. The reflector cluster and tire individual reflector cluster, and the valid individual reflector are sets of scan information data respectively.
First of all, to recognize the position of the laser reflector, a laser scanner should be used to measure not only distance information but also reflection intensity (or received signal strength) information. The laser scanner shall then be able to measure the distance to the nearest (surrounding) object in the direction in which the beam is directed and also the reflection intensity information obtained at that time. Zt measured by the laser scanner at any time t consists of N scan information data, can be represented as shown in Equation (1):
Z
t
={z
i
|i=1, . . . , N}, zi=(di, θiri) (1)
In Equation (1), zi is the i-th scan information datum of die laser scanner, and the scan information datum consists of angle θi of the laser beam, distance di of the nearest object in the direction of the laser beam, and reflection intensity n of the laser beam.
Also, the position information collection apparatus 210 may generate a reflector cluster based on reflection intensities of the scan information data. The reflector cluster may correspond to the scan information data having the reflection intensities which are bigger than or equal to a reflection intensity threshold, and the reflection intensity threshold is determined according to a type of one of the laser reflectors.
Since the actual reflector is made with a good reflectance of the laser beam, the reflection intensity obtained by the reflector is higher than that of the surrounding object. So if the reflection intensity is above a threshold value, it is likely to be the scan information datum obtained from the actual reflector. Thus, in this invention, in order to obtain only scan information datum for real reflectors, only scan information datum with reflection intensity above a certain boundary value can be filtered and stored as a reflector cluster S, which can be represented as Equation (2):
S={z
i
|r
i
>r
thresh} (2)
In Equation (2), ri means a reflection intensity of the i-th scan information datum, and rthresh means a threshold value of the reflection intensity. The threshold value of rite reflection intensity can be determined by measurement analysis using the actual laser scanner and reflector used for robot localization, since the values may vary depending on the type of laser scanner and reflector used. This filtered set of scan information data is represented as reflector cluster S. And then the reflector cluster may be clustered into the individual reflector clusters corresponding to the scan information data obtained from the individual reflectors.
Also, the position information collection apparatus 210 may classify the reflector cluster into individual reflector clusters. Each of the individual reflector clusters corresponds to the scan information data having the distances whose difference is less than or equal to a distance threshold, and the distance threshold is any one of width, height, or diameter of one of the laser reflectors.
In order to cluster the scan information data of the reflector cluster into the scan information data of the individual reflector cluster, the actual size information of the used reflectors can be utilized and the individual reflector clusters may be represented as in Equation (3):
In Equation (3), mj and mj+1 mean j-th and j+1-th individual reflector cluster respectively, and mj consists of M scan information data. And dthresh is a distance threshold value.
That is, for two consecutive scan information data zi and zi+1 to be included in the same individual reflector cluster, the difference in distance between the two-scan information data must be within the distance threshold, dthresh. In addition, usually one individual reflector cluster is a collection of scan information data for a single reflector, and the distance threshold (dthresh) can be any one of width, height, or diameter of the single reflector.
As above, the mj and mj+1 obtained through clustering method are individual reflector clusters expected to have scan information data obtained from the different reflectors. And the individual reflector clusters will be performed geometric filtering to determine whether the scan information data of the individual reflector clusters satisfies the geometry information of the actual reflector.
Also, the position information collection apparatus 210 may determine whether each of the individual reflector clusters is a valid individual reflector cluster corresponding to an actual individual laser reflector or not based on geometric filtering on the each of the individual reflector clusters. To do so, the apparatus 210 may calculate an angular range of the laser beams corresponding to each of the individual reflector clusters based on an average value of the distances of the scan information data corresponding to each of the individual reflector clusters, calculate an expected number of the scan information data included in each of the individual reflector clusters based on the angular range of the laser beams, and determine whether each of the individual reflector clusters is a valid individual reflector cluster based on the expected number of the scan information data.
Here, the angular range (Δ) of the laser beams may be determined by the equation,
where D is a width or a diameter of the laser reflector, dm is the average value of distances. Also, the expected number of the scan information data may be determined by dividing the angular range of the laser beam by an angle resolution of the laser beam.
Also, in order to determine whether each of the individual reflector clusters is a valid individual reflector cluster, the position information collection apparatus 210 may calculate a difference between the expected number of the scan information data and a number of the scan information data included in each of the individual reflector clusters, and determine the individual reflector cluster as the valid individual reflector cluster if the difference is within an acceptable error number threshold.
The geometric filtering method uses the physical size information of the actual reflector to determine whether a cluster is a collection of scan information data obtained from the actual reflector. The method for performing the geometric filtering can be represented in Equation (4) and Equation (5):
In Equation (4),
The number of the scan information data included in the cluster may vary depending on the average distance
In Equation (5), Δj an angular range of the laser beam in the individual reflector cluster, δ is an angular resolution of the laser beam, {circumflex over (M)} is an expected number of the scan information data corresponding to the individual reflector cluster. Therefore, the angular range Δj of the laser beams in the individual reflector cluster is calculated based on the horizontal length D of the installed reflector and the average distance value
And then, the position calculation apparatus 220 may calculate position of the actual individual laser reflector based on at least one of the scan information data corresponding to the valid individual reflector cluster, generated in the position information collection apparatus 210.
The position calculation apparatus 220 may calculate the position of the actual individual laser reflector based on the distance and the angle of the laser beam of at least one of the scan information data corresponding to the each of the valid individual reflector clusters. Here, the position of the actual individual laser reflector may be calculated in consideration of a radius of the actual individual laser reflector, when the actual individual laser reflector is circular.
That is, an individual reflector cluster meeting the conditions of the geometric filtering method can be determined as a valid individual reflector cluster, which is a cluster of the scan information data to the actual reflector. And the scan information data of the valid individual reflector cluster can be used to calculate the position of the actual reflector. The coordinate (xj, yj) on the orthogonal coordinates of the j-th individual reflector cluster determined to be a valid individual reflector cluster can be calculated as shown in Equation (6), if the installed reflector is circular. In addition, the coordinate (xj, yj) can be calculated as shown in Equation (7), if the installed reflector is flat. The difference between the two equations is that if the reflector is circular, the radius D/2 of the circular reflector should be further taken into account when calculating the position of the actual reflector:
In Equations (6) and (7),
Referring to
The scan information datum collection unit 310 may gather scan information data corresponding to positions of surrounding objects using a laser scanner mounted on a mobile robot. The clustering unit 320 may generate a reflector cluster based on reflection intensities of the scan information data, and classify the reflector cluster into individual reflector clusters, each of the individual reflector clusters corresponding to each of the laser reflectors. The geometric filtering unit 330 may determine whether each of the individual reflector clusters is a valid individual reflector cluster corresponding to an actual individual laser reflector or not based on geometric filtering on the each of the individual reflector clusters. Here, the scan information datum may include a distance to the surrounding object, an angle of a laser beam and a reflection intensity of the laser beam.
First of all, to recognize the position of the laser reflector, a laser scanner which can measure not only distance information but also reflection intensity (or received signal strength) information is used. The laser scanner shall then be able to measure the distance to the nearest object in the direction in which the beam is directed and the reflection intensity information obtained at that time. Zt, measured by the laser scanner at any time t consists of N scan information data, can be represented as shown in Equation (1). That is, the scan information data are a total of N sets of i-th scan information datum zi of the laser scanner, which is consisting of angle θi of the laser beam, distance di of the nearest object in the direction of the laser beam, and reflection intensity n of the laser beam.
The behavior of the position information collection apparatus 210 is described in detail by an example of the environment illustrated in
The clustering unit 320 may generate a reflector cluster based on reflection intensities n of the scan information data, and the reflector cluster may correspond to the scan information data having the reflection intensities which are bigger than or equal to a reflection intensity threshold, and the distance threshold is any one of width, height, or diameter of one of the laser reflectors. That is, the threshold value of the reflection intensity can be determined by measurement analysis of the actual laser scanner and reflector used for robot localization, since the threshold value may vary depending on the type of laser scanner and reflector used.
Since the actual reflector is made with a good reflectance of the laser beam, the reflection intensity obtained by the reflector is higher than that of the surrounding object. So if the reflection intensity is above a threshold value, it is likely to be the scan information datum obtained from the actual reflector. Thus, in the example environment illustrated in FIG. I, the clustering unit 320 first may select only scan information data with reflection intensity above a certain threshold value using Equation (2) and store it as a reflector cluster S as shown in Table 2:
Also, the clustering unit 320 may store the scan information data having the distances whose difference is less than or equal to a distance threshold in one individual reflector cluster to classify the reflector cluster into individual reflector clusters corresponding to tire positions of the individual reflectors, and the distance threshold is any one of width, height, or diameter of one of the laser reflectors.
In order to classify the scan information data of the reflector cluster into the scan information data of the individual reflector cluster, the actual size information of the used reflectors can be utilized, and the individual reflector clusters can be represented in Equation (3). That is, for two consecutive scan information data zi and zi+1 to be included in the same individual reflector cluster, the difference in distance between the two scan information data must be within the distance threshold, dthresh, which can be any one of width, height, or diameter of the reflector.
The mj and mj+1 obtained through the previously described clustering method are individual reflector clusters expected to have scan information data obtained from the different reflectors. And the individual reflector clusters will be filtered geometrically to determine whether the scan information data of the individual reflector clusters satisfies the geometry information of the actual reflector. For the example environment in
In Table 3, parentheses refer to the each of the individual reflector clusters to which the scan information data belong, and there are 5 individual reflector clusters, m1, m2, m3, m4 and m5, generated in this example.
The geometric filtering unit 330 may calculate an angular range of the laser beams corresponding to each of the individual reflector clusters based on an average value of the distances of the scan information data corresponding to each of the individual reflector clusters, calculate an expected number of the scan information data included in each of the individual reflector clusters based on the angular range of the laser beams, and determine whether each of the individual reflector clusters is a valid individual reflector cluster based on the expected number of the scan information data, to determine whether each of the individual reflector clusters is a valid individual reflector cluster.
Here, the angular range (Δ) of the laser beams may be determined by the equation.
where D is a width or a diameter of the laser reflector, dm is the average value of distances. And the expected number of the scan information data may be determined by dividing the angular range of the laser beam by an angle resolution of the laser beam.
Also, the geometric filtering unit 330 may calculate a difference between the expected number of the scan information data and a number of the scan information data included in each of the individual reflector clusters, and determine the individual reflector cluster as the valid individual reflector cluster if the difference is within an acceptable error number threshold to determine whether each of the individual reflector cluster is a valid individual reflector cluster.
The geometric filtering unit 330 may use the geometric filtering method, using the physical size information of the actual reflector to determine whether a cluster is a collection of scan information data obtained from the actual reflector. The geometric filtering method can be represented in Equation (4) and Equation (5). The used laser reflector may be flat or circular. If the horizontal (or vertical) size of the flat reflector or the diameter of the circular reflector is D, the number of the scan information data included in the cluster may vary depending on the average distance
Therefore, the angular range of the laser beams in the individual reflector cluster may be calculated based on the horizontal length or the diameter D of the installed reflector and the average distance value
In Table 4, only m1, m2, m3 and m4 are selected as valid individual reflector clusters from 5 individual reflector clusters in Table 3. In Table 3, the number of the scan information data of the m1, m2, m3 and m4 is 4, while the number of the scan information data of m5 is 2. Since the angular range of the laser beam of each individual reflector cluster may be approximately π/5, the expected number of the scan information data may be 4, which dividing the angular range by the angle resolution it π/20. Thus, only m1, m2, m3 and m4 can be selected as valid individual reflector clusters, having die same number of scan information data as the expected number and m5 can be removed.
The above example shows a relatively simple calculating process with only 40 scan information data acquired at a point in time for simple explanation of the behavior of this invention. So, the number of scan information data can be varied according to the user, the laser scanner and the environment in which it is used. In particular, a cumulative collection of scan information data over the time period may be used to collect, cluster, and filter geometrically to obtain more accurate calculation of the position of the laser reflectors.
Referring to
In
Referring to
First, the scan information collection unit of the position information collection apparatus scans the walls using a laser scanner mounted on a mobile robot to collect scan information data corresponding to the positions of surrounding objects. The scan information data may include a distance to the surrounding object, an angle of a laser beam and a reflection intensity of the laser beam. The scan information collection unit may collect the positions 400 of the square wall of the surrounding object, and detect the areas 420, 430, 440, 450, 460 in which the reflection intensity of the positions exceeds the threshold.
And then, the clustering unit of the position information collection apparatus may store the scan information data as a reflector cluster corresponding to the scan information data having the reflections intensities which are bigger than or equal to a reflection intensity threshold, the threshold may be determined by the type of laser reflector. Thus, the clustering unit may store all the area 420, 430, 440, 450, 460 as a reflector cluster in which reflection intensities of the scan information data exceeds the reflection intensity threshold.
Also, the clustering unit of the position information collection apparatus may classify the reflector cluster including the area 420, 430, 440, 450, 460 into 5 different individual reflector clusters. To do so, the clustering unit may store the scan information data in the same individual reflector cluster, if the scan information data having the distances whose difference is within a distance threshold. In
After generation of the individual reflector clusters, the geometric filtering unit of the position information collection apparatus may calculate an angular range of the laser beams corresponding to each of the individual reflector clusters based on an average value of the distances of the scan information data corresponding to each of the individual reflector clusters, calculate an expected number of the scan information data included in each of the individual reflector clusters based on the angular range of the laser beams: and determine whether each of the individual reflector clusters is a valid individual reflector cluster based on the expected number of the scan information data.
In
and calculate an expected number of the scan information datum based on the calculated angular range. And we can see that the expected number would be similar to 4 in the
Finally, the valid individual reflector clusters which is clustered by the position information collection apparatus from the scan information data are m1420, m2430, m3440, m4450, which is consistent with the information of the environment illustrated in
The position calculation apparatus may calculate position of the actual individual laser reflector based on at least one of the scan information data corresponding to the valid individual reflector cluster, generated in the position information collection apparatus.
The position calculation apparatus may calculate the position of the actual individual laser reflector based on the distance and the angle of the laser beam of at least one of the scan information data corresponding to the each of the valid individual reflector clusters. The position of the actual individual laser reflector may be calculated in further consideration of a radius of the actual individual laser reflector, when the actual individual laser reflector is circular.
An individual reflector cluster meeting the conditions of the geometric filtering method can be determined as a valid individual reflector cluster, and the scan information data of the valid individual reflector cluster can be used to calculate the position of the actual reflector.
As can be seen in
Referring to
The position information collection apparatus may collect scan information data corresponding to positions of surrounding objects using a laser scanner mounted on a mobile robot. The apparatus may generate a reflector cluster based on reflection intensities of the scan information data and classify the reflector cluster into individual reflector clusters, each of the individual reflector clusters corresponding to each of the laser reflectors. And the apparatus may determine whether each of the individual reflector clusters is a valid individual reflector cluster corresponding to an actual individual laser reflector or not based on geometric filtering on the each of the individual reflector clusters. Here, the scan information datum includes a distance to tire surrounding object, an angle of a laser beam and a reflection intensity of the laser beam.
And, the position information collection apparatus determines whether the reflection intensity of one scan information datum is bigger than or equal to a reflection intensity threshold or not at step S620. If the reflection intensity of the scan information datum is bigger than or equal to the reflection intensity threshold, it stores the scan information datum in a reflector cluster at step S630. But if the reflection intensity of the scan information datum is less than the reflection intensity threshold, it goes to the step S620 and determines whether the reflection intensity of the other scan information datum is bigger than or equal to tire threshold. The position information collection apparatus can generate a reflector cluster by repeating those processes for all tire scan information data.
That is, the position information collection apparatus may store the scan information data having the reflection intensities which are bigger than or equal to a reflection intensity threshold as a reflector cluster, and the distance threshold may be determined by the type of the used reflector. It is using the fact that the reflection intensity obtained by the actual reflector is higher than that of the surrounding object, since the actual reflector is made with a good reflectance of the laser beam.
And, the position information collection apparatus determines whether difference in distances of the scan information data in the reflector cluster is less than or equal to the distance threshold at step S640. If the difference in distances is less than or equal to the distance threshold, it stores the scan information data in an individual reflector cluster at step S650. But if the difference is bigger than the distance threshold, it goes to the step S640 and determines whether the difference in distances of the other scan information data is less than or equal to the threshold. The position information collection apparatus can generate individual reflector clusters by repeating those processes for all the scan information data of the reflector cluster.
That is, the position information collection apparatus may store the scan information data having the distances whose difference is less than or equal to a distance threshold as an individual reflector cluster to classify the reflector cluster into individual reflector clusters, and the distance threshold may be any one of width, height, or diameter of one of the laser reflectors. The actual size information of the actual reflectors is used to cluster the scan information data of the reflector cluster into the scan information data of the individual reflector cluster.
And, the position information collection apparatus determines whether the difference between the expected number and the number of the scan information data of one individual reflector cluster is within an acceptable error number threshold at step S660. If th difference is less than or equal to the error number threshold, it selects the individual reflector cluster as a valid individual reflector cluster at step S670. But if the difference is bigger than the error number threshold, it goes to the step S660 and determines whether the difference between the expected number and the number of the scan information data of other individual reflector cluster is within an acceptable error number threshold. The acceptable error number threshold can be determined by the user, the environment used, and the scanning accuracy of the laser scanner. And the expected number of the scan information data may be calculated based on the angular range of the laser beam and the angle resolution of die laser beam.
That is, die position information collection apparatus may calculate an angular range of die laser beams corresponding to each of the individual reflector clusters based on an average value of the distances of the scan information data corresponding to each of the individual reflector clusters, calculate an expected number of the scan information data included in each of the individual reflector clusters based on the angular range of the laser beams, and determine whether each of die individual reflector clusters is a valid individual reflector cluster based on the expected number of the scan information data to determine whether each of the individual reflector clusters is a valid individual reflector cluster.
Here, the angular range (Δ) of the laser beams may lie determined by the equation
where D is a width or a diameter of the laser reflector, dm is the average value of distances And the expected number of the scan information data may be determined by dividing the angular range of the laser beam by an angle resolution of the laser beam.
Also, the position information collection apparatus may calculate a difference between the expected number of the scan information data and a number of the scan information data included in each of the individual reflector clusters, and determine the individual reflector cluster as the valid individual reflector cluster if the difference is within an acceptable error number threshold. The apparatus may use the geometric filtering method The method utilizes the physical size information of the actual reflector to determine whether a cluster is a collection of scan information data obtained from the actual reflector.
And, the position calculation apparatus calculates position of the actual individual laser reflector based on the scan information data corresponding to the valid individual reflector cluster at step S680.
That is, the position calculation apparatus may calculate the position of the actual individual laser reflector based on the distance and the angle of the laser beam of at least one of the scan information data corresponding to the each of the valid individual reflector clusters. The position of the actual individual laser reflector may be calculated in further consideration of a radius of the actual individual laser reflector, when the actual individual laser reflector is circular.
An individual reflector cluster meeting the conditions of the geometric filtering method can be determined as a valid individual reflector cluster, and the scan information data of the valid individual reflector cluster can be used to calculate die position of the actual reflector. The coordinate on the Cartensian coordinates of the j-th individual reflector cluster determined to be a valid individual reflector cluster can be calculated as shown in Equation (6) or Equation (7), if the reflector is circular or flat respectively. The difference between the two equations is that if the reflector is circular, the radius D/2 the circular reflector should be further taken into account when calculating the position of the actual reflector.
An apparatus for collecting position information of laser reflectors for mobile robot localization or an apparatus for calculating positions of laser reflectors for mobile robot localization according to an embodiment may be implemented in a computer system 700 including a computer-readable recording medium.
The computer system 700 may include one or more processors 710, memory 730, a user-interface input device 740, a user-interface output device 750, and storage 760, which communicate with each other via a bus 720. Also, the computer system 700 may further include a network interface 770 connected with a network 780. The processor 710 may be a central processing unit or a semiconductor device for executing a program or processing instructions stored in the memory 730 or the storage 760. The memory 730 and the storage 760 may be storage media including at least one of a volatile medium, a nonvolatile medium, a detachable medium, a non-detachable medium, a communication medium, and an information delivery medium. For example, the memory 730 may include ROM 731 or RAM 732.
According to the embodiment described above, the present invention may provide a method for detecting the position of the laser reflectors which is attached for localization of the mobile robots and an apparatus for the same.
Also, the present invention may effectively utilize the information regarding die distance and the reflection obtained from the laser scanner, and the geometry of predefined reflectors, and provide a method and an apparatus for accurately detecting only the actual reflector from a variety of objects made up of materials similar to the laser reflector.
Although the embodiments of the present invention have been described with reference to the accompanying drawings, those skilled in the art will appreciate that the present invention may be practiced in other specific forms without changing the technical spirit or essential features of the present invention. Therefore, the embodiments described above are illustrative in all aspects and should not be understood as limiting the present invention.
Number | Date | Country | Kind |
---|---|---|---|
10-2019-0083711 | Jul 2019 | KR | national |
10-2020-0063100 | May 2020 | KR | national |