Information processing device, control method, program, and storage medium
The information processing device addresses noise in lidar systems by grouping measurement points based on distance and intensity variations, effectively distinguishing valid points from noise, thereby improving measurement accuracy.
Patent Information
- Application Number
- JP2024022710
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2024-02-19
- Publication Date
- 2025-01-14
- Estimated Expiration
- 2039-09-13
AI Technical Summary
Distance data from lidar systems contain noise that incorrectly indicates distance even when there is no target, leading to inaccurate measurements, particularly when reflected light intensity is low, affecting the removal of valid data points.
An information processing device that identifies and removes noise points by grouping measurement points based on distance differences and reflected light intensity variations, using flags to determine valid points within predetermined ranges, and generating noise-removed point cloud information.
Accurately distinguishes between valid measurement points and noise, enhancing the reliability of lidar systems by removing erroneous data and improving the precision of distance measurements.
Smart Images

Figure 0007612908000001 
Figure 0007612908000002 
Figure 0007612908000003
Abstract
Description
[Technical field]
[0001] The present invention relates to a technique for removing noise from measured data. [Background technology]
[0002] A distance measuring device is known that irradiates a measurement object with light, detects reflected light from the measurement object, and calculates the distance to the measurement object based on the time difference between the timing of irradiating the measurement object with light and the timing of detecting reflected light from the measurement object. Patent Document 1 also discloses a driving assistance system that identifies and removes noise points from multiple target distance measuring points based on at least one of the degree of proximity between multiple target distance measuring points in the angular direction and the degree of proximity between multiple target distance measuring points in the distance direction. [Prior art documents] [Patent documents]
[0003] [Patent Document 1] JP 2016-161340 A Summary of the Invention [Problem to be solved by the invention]
[0004] In general, distance data output from a laser-based distance measuring device such as a lidar contains noise that erroneously indicates the distance even when the target does not exist. In this case, a method is generally used to remove the noise when the reflected light intensity of the laser light is lower than a predetermined value, but when the laser light is irradiated on a distant object or a black object, the reflected light intensity is also low, so the above method has the problem of removing these distance data as well.
[0005] The above is an example of a problem to be solved by the present invention. The main object of the present invention is to provide an information processing device, a control method, a program, and a storage medium storing the program, which are capable of appropriately determining the presence of noise at a measurement point where a distance is measured. [Means for solving the problem]
[0006] The invention described in the claims is an information processing device that has an assignment unit that assigns a flag to a plurality of measurement points acquired for each frame, each of which indicates a distance from a reference point, excluding at least measurement points indicating distances within a predetermined range, for which there are other measurement points with a first distance difference; a grouping unit that groups the measurement points to which the flag has been assigned into groups of measurement points whose distance difference between the measurement points is within a second distance difference; and a determination unit that determines for each group whether the measurement points to which the flag has been assigned are noise or not, based on the number of measurement points in each group.
[0007] The invention described in the claims is a control method executed by an information processing device, and includes an assignment step of assigning a flag to a plurality of measurement points acquired for each frame, each of which indicates a distance from a reference point, excluding at least measurement points indicating distances within a predetermined range, for which there are other measurement points with a first distance difference; a grouping step of grouping the measurement points with the flag assigned into measurement point groups in which the distance difference between the measurement points is within a second distance difference; and a determination step of determining for each group whether the measurement points with the flag assigned are noise or not, based on the number of measurement points in each group.
[0008] The invention described in the claims is a program that causes a computer to function as an assignment unit that assigns a flag to a plurality of measurement points acquired for each frame, each of which indicates a distance from a reference point, excluding at least measurement points that indicate distances within a predetermined range, for which there are other measurement points that are within a first distance difference; a grouping unit that groups the measurement points to which the flag has been assigned into groups of measurement points whose distance difference between the measurement points is within a second distance difference; and a determination unit that determines for each group whether the measurement points to which the flag has been assigned are noise or not, based on the number of measurement points in each group. [Brief description of the drawings]
[0009] [Figure 1] 1 shows a schematic configuration of a lidar according to an embodiment. [Diagram 2] 2 shows the data structures of a first parameter group and a second parameter group. [Diagram 3] 13 is an example of a flowchart illustrating a procedure for a temporally stable point detection process. [Figure 4] This is a diagram showing measurement points measured during each measurement period for three frames as viewed from the lidar. [Diagram 5] 11 is a graph showing the change over time in reflected light intensity detected by a receiving unit at a certain measurement point at a predetermined time after emission of irradiation light. [Figure 6] 13 is an example of a flowchart illustrating a procedure of a first process related to detection of a spatially stable point. [Figure 7] This is a distribution map of measurement points that clearly shows the surrounding points for the target measurement point when each measurement point is viewed from above by a lidar. [Figure 8] 13 is an example of a flowchart illustrating a procedure of a second process related to detection of a spatially stable point. [Figure 9] 1 shows a planar distribution map of measurement points clearly indicating the time-stable points and second candidate points. [Figure 10] 13 is an example of a flowchart illustrating a procedure of a third process related to spatially stable point detection. [Figure 11]10 shows an example of setting of a second valid point flag based on a third process in the distribution of measurement points shown in FIG. [Figure 12] This is a bird's-eye view from a lidar of measurement points measured during each measurement period for three frames when a moving object is moving. [Figure 13] FIG. 11 shows a configuration diagram of a lidar and a noise removal device according to a second modified example. [Figure 14] The reflected light intensity (maximum value) measured at different measurement points at each time is shown. [Figure 15] A schematic diagram of a lidar system in a fourth modified example is shown. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0010] In a preferred embodiment of the present invention, the information processing device includes an assignment unit that assigns a flag to a measurement point that has another measurement point within a first distance difference for a plurality of measurement points acquired for each frame, each of which indicates a distance from a reference point, a grouping unit that performs grouping of the measurement points to which the flag is assigned into groups of measurement points whose distance difference between the measurement points is within a second distance difference, and a determination unit that performs, for each group, determination as to whether the measurement point to which the flag is assigned is noise or not, based on the number of measurement points in each group. The "reference point" may be the position of the information processing device, or, if a device that measures distance and the information processing device are separate entities, may be the position of the device that measures distance, or may be the position of a moving body that carries the information processing device.
[0011] Generally, since an object has a spatial spread, the measurement points on the object form a cluster (a measurement point cloud) that indicates similar distances. In the case of measurement points generated by noise, even if the above-mentioned cluster is formed, the number of clusters formed is small. Taking the above into consideration, the information processing device groups measurement points having other measurement points within a first distance difference into measurement point clouds in which the distance difference between the measurement points is within a second distance difference, and performs noise judgment for each group of the measurement points based on the number of measurement points in each group. This allows the information processing device to accurately judge which measurement points are noise.
[0012] In one aspect of the information processing device, the assigning unit assigns the flag to a measurement point among the plurality of measurement points, the measurement point having a distance difference from a distance indicated by any one of the measurement points having a measurement direction from the reference point that is close to the first distance or less. With this aspect, the information processing device can assign a flag to a measurement point that is not an isolated point, and appropriately determine the measurement point as a target for grouping.
[0013] In another aspect of the information processing device, the information processing device further includes a time-stable point detection unit that detects, as a time-stable point, a measurement point where at least one of the distance from the reference point or the reflected light intensity is measured, where the variance of the distance between multiple frames or the reflected light intensity is less than a predetermined value, and the grouping unit performs grouping for the measurement points to which the flag is assigned and the time-stable points, for each measurement point group where the distance difference between the measurement points is within the second distance difference. The time-stable points, which are measurement points measured stably in time, are estimated to be measurement points that indicate the distance of an actual object. Therefore, the information processing device performs grouping including such time-stable points, and performs noise judgment for each group of the measurement points based on the number of measurement points in each group, thereby more accurately determining which measurement points are noise.
[0014] In another aspect of the information processing device, the assigning unit assigns the flag to a measurement point where there is another measurement point within the first distance, for a plurality of measurement points, excluding the time-stable point and the measurement point showing a distance within a predetermined range, among the measurement points whose distance from the reference point is measured. The above-mentioned "predetermined range" refers to, for example, a range of distances where accurate measurement is not possible and a range of distances where noise does not occur. By assigning a flag to measurement points excluding the time-stable point and the measurement point showing a distance within a predetermined range, the information processing device can exclude measurement points whose whether or not they are noise has already been determined from the judgment of whether or not they are noise.
[0015] In another aspect of the information processing device, the time-stable point detection unit specifies the correspondence between the measurement points for each frame based on the speed of the moving object on which the information processing device is mounted, and calculates the variance of at least one of the distance and the reflected light intensity for each corresponding measurement point. With this aspect, the information processing device can accurately detect the time-stable point even when performing measurements while moving.
[0016] In another aspect of the information processing device, the grouping unit executes a process for classifying, into the same group, combinations of measurement points whose measurement directions from the reference point are similar and whose distance difference is within the second distance difference, for each of the measurement points to which the flag is assigned. With this aspect, the information processing device can accurately group each of the measurement point groups whose distance difference between the measurement points is within the second distance difference.
[0017] In another aspect of the information processing device, the information processing device further includes a point cloud information generating unit that generates point cloud information in which the distance from the reference point, which is calculated based on the timing at which the reflected light intensity detected after each emission of the pulsed light while changing the angle, is associated with the emission direction of the pulsed light, and an output unit that outputs noise-removed point cloud information obtained by removing, from the point cloud information, information on the distance in the emission direction corresponding to the measurement point determined by the determination unit to be the noise. With this aspect, the information processing device can suitably remove information on the distance measured due to noise from the point cloud information indicating the distance for each measurement point.
[0018] In another aspect of the information processing device, the grouping unit performs the grouping for a plurality of measurement points measured by a plurality of measurement devices, based on information on the positions and orientations of the measurement devices, by grouping the measurement points that are determined to be adjacent to each other at the boundary of the measurement ranges of the measurement devices into the same group. With this aspect, the information processing device can preferably prevent the measurement points of an object from being determined to be noise even when an object exists at the boundary of the measurement ranges of the plurality of measurement devices.
[0019] In another preferred embodiment of the present invention, a control method executed by an information processing device includes a flag assignment step for a plurality of measurement points acquired for each frame, each of which indicates a distance from a reference point, for which there exists another measurement point within a first distance difference, a grouping step for grouping the flagged measurement points into groups of measurement points whose distance difference between the measurement points is within a second distance difference, and a determination step for each group of whether the flagged measurement points are noise or not, based on the number of measurement points in each group. By executing this control method, the information processing device can accurately determine which measurement points are noise.
[0020] In another preferred embodiment of the present invention, the program causes the computer to function as an assigning unit that assigns a flag to a measurement point where there is another measurement point within a first distance difference for a plurality of measurement points acquired for each frame, each of which indicates a distance from a reference point; a grouping unit that performs grouping of the measurement points to which the flag is assigned into groups of measurement points whose distance difference between the measurement points is within a second distance difference; and a determining unit that determines whether the measurement points to which the flag is assigned are noise or not for each group based on the number of measurement points in each group. By executing this program, the computer can accurately determine which measurement points are noise. Preferably, the program is stored in a storage medium. EXAMPLES
[0021] Hereinafter, preferred embodiments of the present invention will be described with reference to the drawings.
[0022] [Device configuration] FIG. 1 shows a schematic configuration of a lidar 100 according to this embodiment. The lidar 100 is mounted on a vehicle that performs driving assistance such as autonomous driving. The lidar 100 irradiates a laser beam (also called "irradiated beam") in a predetermined angular range in the horizontal and vertical directions, and receives light (also called "reflected beam") that is reflected by an object and returns, thereby discretely measuring the distance from the lidar 100 to the object and generating point cloud information indicating the three-dimensional position of the object. Furthermore, the lidar 100 generates and outputs point cloud information (also called "noise-removed point cloud information") in which data generated by erroneously detecting an object in the point cloud information (so-called false alarm data) is suitably removed.
[0023] As shown in FIG. 1, the lidar 100 mainly includes a transmitter 1, a receiver 2, a beam splitter 3, a scanner 5, a piezoelectric sensor 6, a controller 7, and a memory 8.
[0024] The transmitter 1 is a light source that emits pulsed irradiation light toward the beam splitter 3. The transmitter 1 includes, for example, an infrared laser light emitting element. The transmitter 1 is driven based on a drive signal “S1” supplied from the controller 7.
[0025] The receiver 2 is, for example, an avalanche photodiode, generates a detection signal “S2” corresponding to the amount of received light, and supplies the generated detection signal S2 to the controller 7.
[0026] The beam splitter 3 transmits the pulsed irradiation light emitted from the transmission unit 1. In addition, the beam splitter 3 reflects the light reflected by the scanner 5 towards the reception unit 2.
[0027] The scanner 5 is, for example, an electrostatically driven mirror (MEMS mirror), and the inclination (i.e., the angle of the optical scanning) changes within a predetermined range based on the drive signal "S3" supplied from the control unit 7. The scanner 5 reflects the irradiated light transmitted through the beam splitter 3 toward the outside of the LIDAR 100, and also reflects the reflected light incident from the outside of the LIDAR 100 toward the beam splitter 3. A point within the measurement range of the LIDAR 100 where the irradiated light is irradiated is also called a "measurement point". Furthermore, a measurement point corresponding to data generated by erroneously detecting an object is also called a "noise generation point", and a measurement point corresponding to data generated by detecting an actual object is also called a "valid point".
[0028] The scanner 5 is also provided with a piezoelectric sensor 6. The piezoelectric sensor 6 detects distortion caused by stress of a torsion bar that supports the mirror portion of the scanner 5. The piezoelectric sensor 6 supplies the generated detection signal "S4" to the control unit 7. The detection signal S4 is used to detect the orientation of the scanner 5.
[0029] The memory 8 is composed of various types of memory such as a RAM (Random Access Memory), a ROM (Read Only Memory), and a flash memory. The memory 8 stores a program required for the control unit 7 to execute a predetermined process. The memory 8 also stores a first parameter group 81 and a second parameter group 82 referenced by the control unit 7. The first parameter group 81 and the second parameter group 82 will be described in detail later. The memory 8 also stores point cloud information for a predetermined number of latest frames that have been generated. The point cloud information is referenced when noise removal processing is performed on the point cloud information being processed.
[0030] The control unit 7 includes a processor such as a CPU (Central Processing Unit) and a GPU (Graphics Processing Unit). The control unit 7 executes a predetermined process by executing a program stored in the memory 8. The control unit 7 is an example of a computer that executes a program.
[0031] The control unit 7 functionally includes a transmission driving block 70 , a scanner driving block 71 , a point cloud information generation block 72 , a temporally stable point detection block 73 , a spatially stable point detection block 74 , and an output block 75 .
[0032] The transmission drive block 70 outputs a drive signal S1 that drives the transmission unit 1. The drive signal S1 includes information for controlling the emission time of a laser light-emitting element included in the transmission unit 1 and the emission intensity of the laser light-emitting element. The transmission drive block 70 controls the emission intensity of the laser light-emitting element included in the transmission unit 1 based on the drive signal S1.
[0033] The scanner driving block 71 outputs a driving signal S3 for driving the scanner 5. This driving signal S3 includes a horizontal driving signal corresponding to the resonance frequency of the scanner 5 and a vertical driving signal for vertical scanning. The scanner driving block 71 also detects the scanning angle of the scanner 5 (i.e., the emission direction of the irradiation light) by monitoring the detection signal S4 output from the piezoelectric sensor 6. The emission direction of the irradiation light is an example of the "measurement direction from the reference point" in the present invention.
[0034] Based on the detection signal S2 supplied from the receiving unit 2, the point cloud information generation block 72 generates point cloud information indicating the distance and direction to the object irradiated with the irradiation light for each measurement point, with the lidar 100 as the reference point. In this case, the point cloud information generation block 72 calculates the time from when the irradiation light is emitted until the receiving unit 2 detects the reflected light as the time of flight of light. Then, the point cloud information generation block 72 generates point cloud information indicating the distance according to the calculated time of flight and the irradiation direction of the irradiation light corresponding to the reflected light received by the receiving unit 2 for each measurement point, and supplies the generated point cloud information to the time-stable point detection block 73. Hereinafter, the point cloud information obtained by one scan of all the measurement points is regarded as point cloud information for one frame. In addition, the point cloud information generation block 72 stores the generated point cloud information for the latest predetermined number of frames in the memory 8. The point cloud information generation block 72 is an example of the "point cloud information generation unit" in the present invention.
[0035] The point cloud information can be regarded as an image in which the measurement points are pixels and the distances indicated by the measurement points are pixel values. In this case, the measurement points are arranged vertically with different irradiation directions of the illumination light at different elevation and depression angles, and are arranged horizontally with different irradiation directions of the illumination light at different horizontal angles.
[0036] The time-stable point detection block 73 detects measurement points (also called "time-stable points Pt") at which distances with little variation in time series are measured based on the point cloud information supplied from the point cloud information generation block 72. The time-stable point detection block 73 then supplies point cloud information in which a flag (also called "first valid point flag F1") indicating a determination result regarding the time-stable point Pt is associated with each measurement point to the spatially stable point detection block 74. The time-stable point Pt is different from a noise generation point that occurs with temporal variation, and is a measurement point at which the distance can be measured stably in time series. Therefore, the control unit 7 regards the time-stable point Pt as a valid point at which an object is actually measured. The time-stable point detection block 73 is an example of the "time-stable point detection unit" in the present invention.
[0037] The spatially stable point detection block 74 detects measurement points (also called "spatially stable points Ps") whose distances are measured in a spatially stable manner based on the point cloud information for one frame to which the first valid point flag F1 is added, which is supplied from the temporally stable point detection block 73. The spatially stable points Ps are measurement points that constitute a measurement point cloud in which the distance difference between the measurement points is small. The spatially stable point detection block 74 then supplies the output block 75 with point cloud information in which a flag (also called "second valid point flag F2") indicating the determination result regarding the spatially stable points Ps is associated with the first valid point flag F1 for each measurement point. The spatially stable points Ps are measurement points where an object can be measured in a spatially stable manner, unlike noise generation points that occur with spatial variation. Therefore, the control unit 7 regards the spatially stable points Ps as valid points that actually measure an object. The spatially stable point detection block 74 is an example of the "assignment unit", "grouping unit", and "determination unit" in the present invention.
[0038] The output block 75 determines the noise occurrence point based on the point cloud information in which the first valid point flag F1 and the second valid point flag F2 are associated with each measurement point, which is supplied from the spatially stable point detection block 74. Then, the output block 75 generates point cloud information from which data corresponding to the noise occurrence point has been removed as noise-removed point cloud information "S5". Then, the output block 75 outputs the generated noise-removed point cloud information S5 to a device (also called a "driving assistance device") that controls driving assistance such as automatic driving of a vehicle. In this case, the driving assistance device may be, for example, an ECU (Electronic Control Unit) of the vehicle, or an in-vehicle device such as a car navigation device electrically connected to the vehicle. The output block 75 is an example of an "output unit" in the present invention.
[0039] 2(A) shows an example of the data structure of a first parameter group 81 stored in the memory 8. FIG. 2(B) shows an example of the data structure of a second parameter group 82 stored in the memory 8. The first parameter group 81 is a parameter group referenced by the temporal stable point detection block 73, and includes a minimum ranging distance "Dth1", a stable ranging distance "Dth2", a calculation frame number "Nf", and an effective variance threshold "Vth". The second parameter group 82 is a parameter group referenced by the spatial stable point detection block 74, and includes a candidate determination threshold "dDth1", a chunk determination distance threshold "dDth2", and a chunk determination score threshold "Ngth".
[0040] The minimum distance Dth1 is a threshold value indicating the minimum distance to be measured. The time-stable point detection block 73 determines that a measurement point indicating a distance less than the minimum distance Dth1 cannot be accurately measured, and determines that the measurement point is a noise generation point that does not correspond to either the time-stable point Pt or the spatially stable point Ps.
[0041] The stable measurement distance Dth2 is a threshold value indicating the upper limit of the distance at which stable measurement is possible without generating noise. The time-stable point detection block 73 considers, for example, a measurement point indicating a distance between the minimum measurement distance Dth1 and the stable measurement distance Dth2 as a valid point. Note that the first parameter group 81 may include a parameter indicating the lower limit of the distance at which stable measurement is possible without generating noise, in addition to the stable measurement distance Dth2. The distance range outside the measurement range specified by the minimum measurement distance Dth1 and the distance range at which stable measurement is possible without generating noise, specified by the stable measurement distance Dth2, are examples of the "predetermined range" in the present invention.
[0042] The number of calculation frames Nf indicates the number of frames that the time-stable point detection block 73 refers to when calculating a variance value (also called "distance variance V") indicating the temporal variation of distance for each measurement point. The use of the number of calculation frames Nf will be described in detail later.
[0043] The effective variance threshold Vth is a threshold for judging whether the target measurement point corresponds to a time stable point Pt based on the distance variance V. The time stable point detection block 73 judges that the target measurement point is a time stable point Pt when the distance variance V is less than the effective variance threshold Vth. On the other hand, the time stable point detection block 73 considers that the measurement point whose distance variance V is equal to or greater than the effective variance threshold Vth is not a time stable point Pt. The measurement point that is not considered to be a time stable point Pt based on the distance variance V is a measurement point that is a candidate for the spatial stable point Ps (also called a "first candidate point"), and the spatial stable point detection block 74 judges whether it is a spatial stable point Ps. The effective variance threshold Vth is an example of a "predetermined value" in the present invention.
[0044] The candidate determination threshold dDth1 is a threshold for determining whether the first candidate point is an isolated point that is isolated in distance from surrounding measurement points (also called "peripheral points"). In other words, the candidate determination threshold dDth1 is a threshold for the spatially stable point detection block 74 to determine whether the distance between the first candidate point and the peripheral points is similar. Here, the peripheral points refer to measurement points whose measurement direction from the lidar 100 is similar to that of the target measurement point. In other words, the peripheral points refer to measurement points that are adjacent to the target measurement point when the measurement points are projected onto a virtual plane onto which the illumination light is irradiated. In further other words, the peripheral points refer to measurement points that correspond to pixels that are adjacent (for example, within a predetermined number of pixels) vertically and horizontally to the pixels corresponding to the target measurement point when the point cloud information is regarded as an image and the measurement points are regarded as pixels in the image.
[0045] Then, the first candidate point (also called the "second candidate point") that is not considered to be an isolated point is further judged as to whether it is a spatially stable point Ps or not using a chunk judgment distance threshold dDth2 and a chunk judgment score threshold Ngth, which will be described later. The candidate judgment threshold dDth1 is an example of the "first distance difference" in the present invention.
[0046] The clump determination distance threshold dDth2 is a threshold for determining whether or not the same clump (cluster) is formed based on the distance difference between measurement points whose measurement directions from the lidar 100 are similar. The clump determination distance threshold dDth2 is an example of the "second distance difference" in the present invention. The clump determination point number threshold Ngth is a threshold for determining whether or not a second candidate point is a noise generation point for each group based on the number of measurement points grouped into clumps (also called "group measurement point number Ng").
[0047] [Temporal stable point detection process] First, the process of detecting the stable point in time Pt by the stable point in time detection block 73 will be described.
[0048] Fig. 3 is an example of a flowchart showing the procedure of the detection process of the temporal stable point Pt. The temporal stable point detection block 73 repeatedly executes the process shown in Fig. 3. Here, as an example, the temporal stable point detection block 73 performs a process of assigning a first valid point flag F1 of "1" to a measurement point that is a temporal stable point Pt, assigning a first valid point flag F1 of "2" to a measurement point that is a first candidate point of the spatial stable point Ps, and assigning a first valid point flag F1 of "0" to the other measurement points.
[0049] First, the time-stable point detection block 73 sets the initial value of the first valid point flag F1 of the measurement point to be processed to "0" indicating that it is invalid (step S11). Then, the time-stable point detection block 73 judges whether the distance corresponding to the target measurement point is equal to or greater than the minimum distance Dth1 (step S12). Then, if the distance corresponding to the target measurement point is less than the minimum distance Dth1 (step S12; No), the time-stable point detection block 73 leaves the first valid point flag F1 of the target measurement point at "0" (step S13). That is, in this case, the time-stable point detection block 73 considers that the target measurement point is not a valid point, and leaves the first valid point flag F1 at "0" indicating that it is invalid.
[0050] On the other hand, if the distance corresponding to the target measurement point is equal to or greater than the minimum distance Dth1 (step S12; Yes), the time-stable point detection block 73 determines whether the distance corresponding to the measurement point to be processed exceeds the stable measurement distance Dth2 (step S14). If the distance corresponding to the measurement point to be processed is equal to or less than the stable measurement distance Dth2 (step S14; No), the time-stable point detection block 73 sets the first valid point flag F1 of the target measurement point to "1" indicating validity (step S15). That is, in this case, since a distance that allows stable distance measurement without noise has been measured, the time-stable point detection block 73 considers the target measurement point to be a valid point and sets the first valid point flag F1 indicating validity for the target measurement point.
[0051] On the other hand, if the distance corresponding to the target measurement point exceeds the stable measurement distance Dth2 (step S14; Yes), the temporally stable point detection block 73 performs detailed determination processing from step S16 onwards as to whether the target measurement point is a temporally stable point Pt, since the distance indicated by the target measurement point is outside the range of distances in which stable measurement is possible without generating noise.
[0052] In this case, first, the time-stable point detection block 73 refers to the number of calculation frames Nf included in the first parameter group 81 for the target measurement point, and calculates the distance variance V based on the distance for the number of calculation frames Nf (step S16). In this case, the time-stable point detection block 73 calculates the distance variance V by extracting the distance for the latest number of calculation frames Nf of the target measurement point based on the past point cloud information (i.e., "Nf-1" pieces of point cloud information) stored in the memory 8 and the current point cloud information. Details of the process of step S16 will be described later.
[0053] Then, the time-stable point detection block 73 judges whether the calculated distance variance V is equal to or greater than the effective variance threshold Vth (step S17). If the distance variance V is less than the effective variance threshold Vth (step S17; No), the time-stable point detection block 73 sets the first effective point flag F1 of the target measurement point to "1" indicating that it is effective (step S18). That is, in this case, the time-stable point detection block 73 considers the target measurement point to be a time-stable point Pt (i.e., a valid point) because a distance with little temporal variation was stably measured at the target measurement point.
[0054] On the other hand, if the distance variance V is equal to or greater than the effective variance threshold Vth (step S17; Yes), the time stable point detection block 73 sets the first valid point flag F1 of the target measurement point to "2" (step S19). That is, in this case, the time stable point detection block 73 determines that the target measurement point is at least not a time stable point Pt because a distance with temporal variation was measured at the target measurement point. Then, the time stable point detection block 73 sets the first valid point flag F1 of the target measurement point to "2" indicating that the target measurement point is the first candidate point for the spatial stable point Ps. In this case, the spatial stable point detection block 74 determines whether the target measurement point is a spatial stable point Ps or not.
[0055] Then, the temporal stable point detection block 73 judges whether or not the processing of steps S11 to S19 has been performed for all the measurement points (step S20). If the processing of steps S11 to S19 has not been performed for all the measurement points (step S20; No), the temporal stable point detection block 73 selects one unprocessed measurement point as the measurement point to be processed next, and returns the processing to step S11. On the other hand, if the temporal stable point detection block 73 has performed the processing of steps S11 to S19 for all the measurement points (step S20; Yes), it ends the processing of the flowchart. Thereafter, when point cloud information of the next frame is again supplied from the point cloud information generation block 72, the temporal stable point detection block 73 executes the processing of the flowchart of FIG. 3 for the point cloud information.
[0056] Here, a supplementary explanation will be given of the calculation process of distance variance V in step S16.
[0057] The time-stable point detection block 73 calculates a distance variance V indicating the temporal variation in distance for each measurement point based on the point cloud information generated by the point cloud information generation block 72. At this time, the time-stable point detection block 73 refers to the number of calculation frames Nf included in the first parameter set 81, and calculates the distance variance V for each measurement point based on the point cloud information for the number of calculation frames Nf.
[0058] Here, a specific example of calculation of distance variance V will be described with reference to Fig. 4. Fig. 4(A) to (C) are diagrams showing measurement points measured in each measurement period for three frames as viewed from the lidar 100. Here, the number of calculation frames Nf is set to "3", and the measurement point for which distance variance V is to be calculated is "Ptag".
[0059] In this case, the temporally stable point detection block 73 acquires point cloud information of the current frame (i.e., acquired by the most recent scan) from the point cloud information generation block 72, and also refers to the point cloud information of the previous frame and the point cloud information of the frame before previous from the memory 8. Then, the temporally stable point detection block 73 acquires distances (here, "x1", "x2", and "x3") based on this point cloud information for each measurement point Ptag for which distance variance V is to be calculated. Then, the temporally stable point detection block 73 calculates distance variance V from these distances x1, x2, and x3.
[0060] Next, a supplementary explanation will be given of the point cloud information generated by the point cloud information generation block 72.
[0061] The point cloud information generation block 72 measures the time of flight from the emission of the irradiated light to the detection of the reflected light by the receiving unit 2 for each measurement point, and calculates the distance based on the flight time. Fig. 4 is a graph showing the change over time in the reflected light intensity indicated by the detection signal S2 output by the receiving unit 2 at a predetermined time after the emission of the irradiated light for a certain measurement point. As shown in Fig. 4, the point cloud information generation block 72 acquires the time waveform of the reflected light intensity for each measurement point based on the detection signal S2 supplied from the receiving unit 2. In this case, the point cloud information generation block 72 regards the time length from the emission of the irradiated light to the timing when the reflected light intensity is maximized as the flight time of light ("t1" in Fig. 4), and calculates the distance to the target measurement point.
[0062] In this way, the point cloud information generation block 72 calculates the distance for each measurement point based on the timing when the reflected light intensity is at its maximum. Here, as shown in Fig. 4, the reflected light intensity transitions to a value greater than 0 even at times other than when the receiver 2 receives the reflected light due to background light, noise, etc. Therefore, even if the irradiated object does not exist within the range of the measurable distance and no reflected light is generated, the distance is calculated at each measurement point. The measurement point showing the distance calculated when no reflected light is generated is the noise generation point.
[0063] [Spatial stable point detection process] Next, the process of detecting the spatially stable point Ps by the spatially stable point detection block 74 will be described.
[0064] The spatially stable point detection block 74 performs three main processes (first process to third process) as a process for detecting the spatially stable point Ps. As the first process, the spatially stable point detection block 74 judges whether or not the measurement point for which the first valid point flag F1 is "2" (first candidate point) is an isolated point far from the surrounding points, and determines the measurement point that is not an isolated point as the second candidate point. As the second process, the spatially stable point detection block 74 groups the second candidate point and the temporally stable point Pt by attaching the same label (also called "cluster label") to the surrounding points with a small distance difference. As the third process, the spatially stable point detection block 74 calculates the number of group measurement points Ng based on the cluster label, and judges for each group whether or not the second candidate point is a spatially stable point Ps based on the number of group measurement points Ng.
[0065] 6 is a flowchart showing an example of a procedure of a first process for detecting a spatially stable point Ps. The spatially stable point detection block 74 repeatedly executes the process shown in FIG.
[0066] First, the spatially stable point detection block 74 determines a measurement point to be processed, and sets the initial value of the second valid point flag F2 of the measurement point to "0" indicating invalidity (step S21). Next, the spatially stable point detection block 74 determines whether the first valid point flag F1 of the target measurement point indicates "2" (i.e., the first candidate point) (step S22). If the first valid point flag F1 of the target measurement point indicates "2" (step S22; Yes), the spatially stable point detection block 74 advances the process to step S23. On the other hand, if the first valid point flag F1 of the target measurement point is other than "2" (step S22; No), the spatially stable point detection block 74 advances the process to step S25. In this case, since the target measurement point is not the first candidate point of the spatially stable point Ps, the spatially stable point detection block 74 leaves the second valid point flag F2 at "0" indicating invalidity.
[0067] Next, the spatially stable point detection block 74 judges whether or not there is a surrounding point whose distance difference is equal to or smaller than the candidate determination threshold value dDth1 for the measurement point whose first valid point flag F1 is "2" (step S23). A specific example of the judgment in step S23 will be described later with reference to FIG. 7.
[0068] If there is a surrounding point with a distance difference of less than or equal to the candidate determination threshold dDth1 for the target measurement point (step S23; Yes), the spatially stable point detection block 74 sets the second valid point flag F2 of the target measurement point to "1" indicating validity (step S24). In this case, the spatially stable point detection block 74 determines that the target measurement point is not an isolated point but a second candidate point for the spatially stable point Ps, and sets the second valid point flag F2 of the target measurement point to "1" indicating validity. The second valid point flag F2 indicating "1" is an example of a "flag" in the present invention.
[0069] On the other hand, if there is no surrounding point with a distance difference of less than or equal to the candidate determination threshold dDth1 for the target measurement point (step S23; No), the spatially stable point detection block 74 proceeds to step S25. In this case, since the target measurement point is an isolated point and not a spatially stable point Ps, the spatially stable point detection block 74 leaves the second valid point flag F2 at "0" indicating invalidity.
[0070] Next, the spatially stable point detection block 74 judges whether or not the processes of steps S21 to S24 have been performed for all the measurement points (step S25). If the processes of steps S21 to S24 have not been performed for all the measurement points (step S25; No), the spatially stable point detection block 74 selects one unprocessed measurement point as the measurement point to be processed, and returns the process to step S21. On the other hand, if the spatially stable point detection block 74 has performed the processes of steps S21 to S24 for all the measurement points (step S25; Yes), it ends the process of the flowchart. After that, when point cloud information of the next frame is supplied from the temporally stable point detection block 73, the spatially stable point detection block 74 executes the process of the flowchart of FIG. 6 for the point cloud information.
[0071] Here, the process of step S23 will be further explained with reference to FIG.
[0072] Fig. 7 is a distribution diagram of measurement points clearly showing surrounding points for the measurement point Ptag when each measurement point is viewed from the lidar 100. In Fig. 7, the surrounding points for the measurement point Ptag are hatched.
[0073] In the example of Fig. 7, the spatially stable point detection block 74 determines two measurement points vertically and horizontally among the measurement points that have been measured at the time when the measurement point Ptag is measured, as surrounding points of the target measurement point Ptag. That is, when the point cloud information is regarded as an image, the spatially stable point detection block 74 determines the measured measurement points corresponding to pixels within two pixels above, below, left and right from the pixel position of the measurement point Ptag as surrounding points. Note that, when the distances to all measurement points of the current frame have already been measured, the spatially stable point detection block 74 may also determine measurement points located below the measurement point Ptag (i.e., measurement points excluded from the surrounding points as unmeasured measurement points) as surrounding points.
[0074] Then, the spatially stable point detection block 74 calculates the distance difference between the distance indicated by each surrounding point and the distance indicated by the measurement point Ptag, and if there is a surrounding point whose distance difference is equal to or less than the candidate determination threshold dDth1, it considers the measurement point Ptag to be the second candidate point. In this case, the spatially stable point detection block 74 sets the second valid point flag F2 of the measurement point Ptag to "1" indicating that it is valid. By performing this process for all measurement points, the spatially stable point detection block 74 can preferably identify the first candidate point that is not an isolated point as the second candidate point.
[0075] 8 is an example of a flowchart showing a procedure of a second process for detecting a spatially stable point Ps. The spatially stable point detection block 74 executes the process shown in FIG. 8 after executing the first process shown in FIG.
[0076] First, the spatially stable point detection block 74 resets the cluster label assigned to each measurement point (step S31). For example, the spatially stable point detection block 74 sets the cluster label assigned to each measurement point to a predetermined initial value indicating that grouping has not been processed.
[0077] Next, the spatial stable point detection block 74 determines a measurement point to be processed and judges whether the first valid point flag F1 or the second valid point flag F2 of the measurement point is "1" indicating that the measurement point is valid (step S32). That is, in this case, the spatial stable point detection block 74 judges whether the target measurement point is a time stable point Pt or corresponds to any of the second candidate points. Then, if the first valid point flag F1 or the second valid point flag F2 of the target measurement point is "1" (step S32; Yes), the spatial stable point detection block 74 advances the process to step S33. On the other hand, if neither the first valid point flag F1 nor the second valid point flag F2 of the target measurement point is "1" (i.e., not valid) (step S32; No), the spatial stable point detection block 74 considers that the target measurement point is neither a time stable point Pt nor a second candidate point. In this case, the spatial stable point detection block 74 leaves the cluster label of the target measurement point at its initial value. In this case, the target measurement point is excluded from grouping based on the cluster label.
[0078] Next, the spatially stable point detection block 74 judges whether or not there is a surrounding point whose first valid point flag F1 or second valid point flag F2 is "1" and whose distance difference with the target measurement point is less than the clump determination distance threshold dDth2 for the target measurement point whose first valid point flag F1 or second valid point flag F2 is "1" (step S33). A specific example of the process of step S33 will be described later with reference to FIG. 9.
[0079] Then, when the first valid point flag F1 or the second valid point flag F2 becomes "1" and there is a surrounding point whose distance difference from the target measurement point is less than the clump determination distance threshold dDth2 (step S33; Yes), the spatially stable point detection block 74 assigns the same cluster label to the combination of the target measurement point and the corresponding surrounding point (step S34). In this way, the spatially stable point detection block 74 can assign the same cluster label to a combination of a temporally stable point Pt and / or a second candidate point whose measurement direction from the lidar 100 is similar and whose distance difference is small, thereby assigning the same cluster label to a group of measurement points indicating distances to the same object.
[0080] On the other hand, if there are no surrounding points whose first valid point flag F1 or second valid point flag F2 is "1", or if the distance difference between such surrounding points and the target measurement point is equal to or greater than the clump determination distance threshold dDth2 (step S33; No), the spatially stable point detection block 74 assigns a new cluster label to the target measurement point (step S35). In this case, the spatially stable point detection block 74 assigns a cluster label indicating a value that has not yet been used to the target measurement point.
[0081] Then, the spatially stable point detection block 74 judges whether or not the processes of steps S32 to S35 have been performed for all the measurement points (step S36). If the processes of steps S32 to S35 have not been performed for all the measurement points (step S36; No), the spatially stable point detection block 74 determines one of the unprocessed measurement points as the measurement point to be processed, and returns the process to step S32. On the other hand, if the spatially stable point detection block 74 has performed the processes of steps S31 to S35 for all the measurement points (step S36; Yes), it ends the process of the flowchart. After that, if the spatially stable point detection block 74 has performed the first process shown in FIG. 6 again, it executes the process of the flowchart shown in FIG. 8.
[0082] Here, a specific example of the second process will be described with reference to FIG.
[0083] 9A and 9B show planar distribution diagrams of measurement points clearly indicating the temporally stable points Pt and the second candidate points. FIG. 9A clearly indicates the temporally stable points Pt, the second candidate points, and other measurement points in a distinguishable manner.
[0084] In this case, the spatially stable point detection block 74 performs the second process on all the measurement points, thereby attaching the cluster label "L1" to the time-stable point Pt and the second candidate point in the dashed frame 20, and attaching the cluster label "L2" to the second candidate point in the dashed frame 21. In this case, the difference between the distances indicated by the time-stable point Pt and the second candidate point in the dashed frame 20 and the distances indicated by the surrounding points in the dashed frame 20 is less than the clump determination distance threshold dDth2. Similarly, the difference between the distances indicated by the time-stable point Pt and the second candidate point in the dashed frame 21 and the distances indicated by the surrounding points in the dashed frame 21 is less than the clump determination distance threshold dDth2. Therefore, it is estimated that the measurement points in the dashed frame 20 are measurement points at which the distances to the same object are measured. Similarly, it is estimated that the measurement points in the dashed frame 21 are measurement points at which the distances to the same object are measured. Therefore, according to the second process, the spatially stable point detection block 74 can suitably assign the same cluster label to the cluster of temporally stable points Pt and second candidate points for which the distances to the same object have been measured.
[0085] 10 is an example of a flowchart showing a procedure of the third process related to the detection of the spatially stable point Ps. The spatially stable point detection block 74 executes the process shown in FIG. 10 after executing the second process shown in FIG.
[0086] First, the spatially stable point detection block 74 calculates the number of group measurement points Ng for each group divided by the cluster label (step 41).
[0087] Then, the spatially stable point detection block 74 judges whether the group measurement point number Ng for the target group is less than the clump determination point number threshold Ngth (step S42). If the group measurement point number Ng is less than the clump determination point number threshold Ngth (step S42; Yes), the spatially stable point detection block 74 sets the second valid point flag F2 of the measurement point belonging to the target group to "0" indicating invalidity (step S43). In this case, the spatially stable point detection block 74 considers that the number of measurement points belonging to the target group is small, and the measurement points belonging to the target group are not spatially stable points Ps (i.e., are noise generation points).
[0088] On the other hand, when the group measurement point number Ng is equal to or greater than the clump determination point number threshold Ngth (step S42; No), the spatially stable point detection block 74 does not change the second valid point flag F2 of the measurement point belonging to the target group. In this case, when the target measurement point is the second candidate point, the second valid point flag F2 remains at "1", and when the target measurement point is the time-stable point Pt, the second valid point flag F2 remains at "0". Therefore, in this case, the spatially stable point detection block 74 can assign the second valid point flag F2 to "1", which indicates validity, to the second candidate point belonging to the group in which the group measurement point number Ng is equal to or greater than the clump determination point number threshold Ngth.
[0089] Then, the spatial stable point detection block 74 judges whether the judgment process of step S42 has been executed for all groups (step S44). If the judgment process of step S42 has been executed for all groups (step S44; Yes), the spatial stable point detection block 74 ends the processing of the flowchart. On the other hand, if there is a group for which the judgment process of step S42 has not been executed (step S44; No), the spatial stable point detection block 74 executes the processing of step S42 again for the group for which the judgment process has not been executed.
[0090] After the execution of the third process, the spatially stable point detection block 74 supplies the point cloud information to which the first valid point flag F1 and the second valid point flag F2 are added to the output block 75. In this case, the output block 75 regards a measurement point where neither the first valid point flag F1 nor the second valid point flag F2 is "1" as a noise generation point, and generates noise-removed point cloud information S5 by removing the measurement data indicating the distance and direction of the measurement point from the point cloud information. In this case, the noise-removed point cloud information S5 includes measurement data corresponding to any of the time-stable point Pt, the spatially stable point Ps, or the measurement point indicating a distance between the minimum distance Dth1 and the stable distance Dth2. Then, the output block 75 supplies the noise-removed point cloud information S5 to the driving support device.
[0091] Fig. 11 shows an example of setting the second valid point flag F2 based on the third process in the distribution of measurement points shown in Fig. 9. In the example of Fig. 11, it is assumed that the clump determination score threshold Ngth is set to "8".
[0092] In this case, the output block 75 recognizes that the group measurement point number Ng of the group to which the cluster label L1 is assigned is "14", and the group measurement point number Ng of the group to which the cluster label L2 is assigned is "6". Then, the output block 75 leaves the second valid point flag F2 of the second candidate points P1 to P4 to which the cluster label L1 is assigned as "1" because the group measurement point number Ng of the group to which the cluster label L1 is assigned is equal to or greater than the clump determination point threshold Ngth (14>8). In this case, the second candidate points P1 to P4 are regarded as spatially stable points Ps (i.e. valid points) by the output block 75, and the measurement data of the second candidate points P1 to P4 are not removed from the point cloud information.
[0093] On the other hand, since the group measurement point count Ng of the group to which the cluster label L2 is assigned is less than the clump determination point count threshold Ngth (6<8), the output block 75 sets the second valid point flag F2 of the second candidate points P5 to P10 to which the cluster label L1 is assigned to “0.” In this case, the second candidate points P5 to P10 are regarded as noise occurrence points by the output block 75, and the measurement data of the second candidate points P5 to P10 are removed from the point cloud information.
[0094] As described above, the spatially stable point detection block 74 of the control unit 7 of the lidar 100 according to this embodiment assigns the second valid point flag F2 indicating validity to a measurement point where there is another measurement point within the candidate determination threshold dDth1 for a plurality of measurement points acquired for each frame, each of which indicates a distance from a reference point. Then, the spatially stable point detection block 74 groups the measurement points to which the second valid point flag F2 indicating validity is assigned into measurement point groups in which the distance between the measurement points is within the cluster determination distance threshold dDth2. Then, the spatially stable point detection block 74 judges for each group whether the measurement point to which the second valid point flag F2 is assigned is a noise generation point or not, based on the group measurement point number Ng, which is the number of measurement points for each group. This allows the spatially stable point detection block 74 to accurately judge whether the measurement point is a spatially stable point Ps or a noise generation point.
[0095] [Variations] Preferred modifications of the above-described embodiment will be described below. The following modifications may be applied to the above-described embodiment in any combination.
[0096] (Variation 1) When the lidar 100 is mounted on a moving object such as a vehicle, the time-stable point detection block 73 may determine the correspondence between the measurement points for each frame taking into account the speed of the moving object, and calculate the distance variance V for each corresponding measurement point.
[0097] 12A to 12C are diagrams showing measurement points measured in each measurement period of three frames as viewed from the lidar 100 when the moving body carrying the lidar 100 is moving. Here, the number of calculation frames Nf is set to "3", and the measurement point for which the distance variance V is to be calculated is "Ptag1".
[0098] In this case, the time-stable point detection block 73 acquires point cloud information of the current frame (i.e., obtained by the latest scan) from the point cloud information generation block 72, and also refers to the point cloud information of the previous frame and the point cloud information of the frame before the previous frame from the memory 8. When the time-stable point detection block 73 identifies the measurement points Ptag2 and Ptag3 corresponding to the measurement point Ptag1 in the current frame between the previous frame and the frame before the previous frame, it identifies them based on the speed of the moving body and the frame difference from the current frame. For example, when the moving body is within a predetermined speed range, the time-stable point detection block 73 shifts the measurement points Ptag2 and Ptag3 corresponding to the measurement point Ptag1 by one to the right or left (here, right) for each frame shift. In this case, the memory 8 stores map information that associates the speed (and moving direction) of the moving body with the number and direction of shifting the measurement points for each frame difference. The time-stable point detection block 73 then refers to this map information and identifies the measurement points Ptag2 and Ptag3 of the past frames that correspond to the measurement point Ptag1 of the current frame from the information on the speed of the moving object output by the sensor attached to the moving object.The time-stable point detection block 73 then calculates the distance variance V from the distances "y1", "y2", and "y3" indicated by these measurement points Ptag1, Ptag2, and Ptag3, respectively.
[0099] In another example, the temporally stable point detection block 73 converts each measurement point indicated by the point cloud information into an absolute coordinate system used in maps, etc., based on information such as the position and orientation of the moving body and the installation position and orientation of the LIDAR 100 on the moving body. Then, the temporally stable point detection block 73 regards the measurement point of the current frame indicating a point that is stably measured in the absolute coordinate system in each frame of the calculation frame count Nf as the temporally stable point Pt.
[0100] In this way, according to the first modification, even when the rider 100 moves, the temporally stable point Pt can be suitably detected.
[0101] (Variation 2) The configuration of the LIDAR 100 is not limited to the configuration shown in Fig. 1. For example, functions corresponding to the time stable point detection block 73 and the spatial stable point detection block 74 of the control unit 7 may be provided in a device separate from the LIDAR 100.
[0102] 13 shows a configuration diagram of a LIDAR 100X and a noise removal device 200 according to Modification 2. In this case, the LIDAR 100X supplies the point cloud information generated by the point cloud information generation block 72 to the noise removal device 200.
[0103] The noise removal device 200 includes a control unit 7A and a memory 8A. The memory 8A stores a first parameter group 81 and a second parameter group 82. The control unit 7A functionally includes a time stable point detection block 73, a spatial stable point detection block 74, and an output block 75. The time stable point detection block 73 receives point cloud information generated by the point cloud information generation block 72 of the lidar 100X, and executes a time stable point detection process on the received point cloud information by referring to the first parameter group 81. The spatial stable point detection block 74 executes a spatial stable point detection process on the point cloud information to which the time stable point detection block 73 has added the first valid point flag F1 by referring to the second parameter group 82. The output block 75 generates noise-removed point cloud information S5 based on the point cloud information to which the first valid point flag F1 and the second valid point flag F2 have been added, supplied from the spatial stable point detection block 74, and outputs the noise-removed point cloud information S5.
[0104] The noise removal device 200 may be realized by a driving assistance device. The first parameter group 81 and the second parameter group 82 may be stored in another device having a memory that can be referenced by the noise removal device 200. In the second modification, the noise removal device 200 is an example of the "information processing device" of the present invention.
[0105] (Variation 3) In addition to or instead of determining whether each measurement point is a time-stable point Pt based on the distance variance V, the time-stable point detection block 73 may determine whether each measurement point is a time-stable point Pt based on the reflected light intensity for the number of calculation frames Nf.
[0106] For example, the temporal stable point detection block 73 acquires the maximum reflected light intensity (reflected light intensity at time t1 in the case of FIG. 5) among the reflected light intensity waveforms (see FIG. 5) for the target measurement point for each frame of the latest calculation frame number Nf. Then, if the variance of the reflected light intensity (also called "intensity variance") for the calculation frame number Nf is less than a predetermined threshold, the temporal stable point detection block 73 determines that the target measurement point is a temporal stable point Pt. On the other hand, if the intensity variance is equal to or greater than the predetermined threshold, the temporal stable point detection block 73 determines that the target measurement point is not a temporal stable point Pt.
[0107] For example, consider an example in which the number of calculation frames Nf is "6" and the intensity distribution is calculated based on the reflected light intensity acquired at times "T1" to "T6" for each frame. Figures 14(A) and (B) show the reflected light intensity (maximum value) measured at times T1 to T6 at different measurement points. For the measurement points where the reflected light intensity shown in Figure 14(A) is measured, the temporally stable point detection block 73 determines that the intensity variance is less than a predetermined threshold value because the variation in the reflected light intensity at times T1 to T6 is small. In this case, the temporally stable point detection block 73 considers the measurement points where the reflected light intensity shown in Figure 14(A) is measured to be the temporally stable points Pt.
[0108] On the other hand, for the measurement point where the reflected light intensity shown in Fig. 14(B) was measured, the variation in the reflected light intensity at times T1 to T6 is large, and the joint variance is equal to or greater than a predetermined threshold value. In this case, the temporally stable point detection block 73 considers the measurement point where the reflected light intensity shown in Fig. 14(A) was measured not to be a temporally stable point Pt.
[0109] The time stable point detection block 73 may consider the target measurement point to be a time stable point Pt when the distance variance V is less than the effective variance threshold Vth and the intensity variance is less than a predetermined threshold. In another example, the time stable point detection block 73 may consider the target measurement point to be a time stable point Pt when the distance variance V is less than the effective variance threshold Vth or the intensity variance is less than a predetermined threshold. For a measurement point that is not considered to be a time stable point Pt, the first effective point flag F1 is set to "2" (first candidate point), and a determination is made as to whether or not the measurement point is a spatial stable point Ps.
[0110] According to this modification, the lidar 100 can more accurately determine whether or not each measurement point is a noise generation point.
[0111] (Variation 4) When multiple lidars are used, noise determination may be performed taking into account the boundary areas of the measurement ranges of each lidar.
[0112] FIG. 15 shows a schematic diagram of a lidar system in Modification 4. The lidar system includes a first lidar 100Xa and a second lidar Xb corresponding to the lidar 100X described in Modification 2 shown in FIG. 13, and a noise removal device 200a corresponding to the noise removal device 200 described in Modification 2. In this configuration, the noise removal device 200a receives point cloud information from the first lidar 100Xa and the second lidar 100Xb, respectively. Hereinafter, the point cloud information generated by the first lidar 100Xa is also referred to as "first point cloud information," and the point cloud information generated by the second lidar Xb is also referred to as "second point cloud information."
[0113] When detecting a spatially stable point, the noise removal device 200a keeps the second valid point flag at 1 (i.e., considers it to be a spatially stable point Ps) if the total number of group measurement points Ng of the measurement point clouds determined to be measurement points for the same object is equal to or greater than the clump determination point threshold Ngth even if the group measurement point number Ng of the measurement point clouds measured by a single lidar (the first lidar 100Xa or the second lidar 100Xb) is less than the clump determination point threshold Ngth. In other words, the noise removal device 200a groups, as the same group, the measurement points determined to be adjacent to each other at the boundary of the measurement range of each lidar based on the information on the position and attitude of each lidar for the multiple measurement points measured by each lidar.
[0114] Specifically, first, the noise removal device 200a assigns cluster labels to the measurement points by executing the first process shown in Fig. 6 and the second process shown in Fig. 8 on the first point cloud information and the second point cloud information, respectively. In the example of Fig. 15, the same cluster label is assigned to the measurement point group P21-P25 belonging to the first point cloud information, and the same cluster label is assigned to the measurement point group P26-P29 belonging to the second point cloud information. In this case, the group measurement point numbers Ng for each measurement point group are "5" and "4", respectively, which are less than the clump determination score threshold Ngth (here, 8).
[0115] Here, the noise removal device 200a determines that the measurement point group P21-P25 belonging to the first point cloud information and the measurement point group P26-P29 belonging to the second point cloud information are close to each other based on the information on the positions and attitudes of the vehicles of the first rider 100Xa and the second rider 100Xb. The information on the positions and attitudes of the vehicles of the first rider 100Xa and the second rider 100Xb is stored in advance in the memory 8A or the like. In this case, since the sum (9) of these group measurement points Ng (5 and 4) is equal to or greater than the cluster determination point threshold Ngth (set to 8 here), the noise removal device 200Aa regards the measurement point group P21-P25 belonging to the first point cloud information and the measurement point group P26-P29 belonging to the second point cloud information as spatially stable points Ps.
[0116] In addition, if the noise removal device 200a determines that the measurement ranges of the first rider 100Xa and the second rider 100Xb overlap or are adjacent based on the position and attitude information installed on the vehicles of the first rider 100Xa and the second rider 100Xb, the noise removal device 200a may integrate the first point cloud information and the second point cloud information into a single point cloud information, and then perform the first to third processes on the integrated point cloud information.
[0117] In this way, according to this modified example, when there are multiple lidars with overlapping or adjacent measurement ranges, it is possible to preferably prevent the measurement point of an object from being erroneously determined to be a noise generation point, even if the object is located on the boundary of the measurement ranges of these lidars. [Explanation of symbols]
[0118] 1. Transmitter 2. Receiving section 3 Beam splitter 5. Scanner 6 Piezo Sensor 7, 7A control section 8, 8A memory 100, 100X Lidar 200 Noise Elimination Device
Claims
1. an assigning unit that assigns a flag to a measurement point that has another measurement point within a first distance difference from a plurality of measurement points that are acquired for each frame and indicate a distance from a reference point, excluding at least the measurement points that indicate a distance within a predetermined range; a grouping unit that groups the flagged measurement points into groups of measurement points each having a distance difference between the measurement points that is within a second distance difference; a determination unit that determines, for each group, whether the measurement points to which the flag is assigned are noise or not, based on the number of measurement points for each group; An information processing device having the above configuration.
2. 2 . The information processing device according to claim 1 , wherein the assignment unit assigns the flag to a measurement point among the plurality of measurement points, the measurement point having a distance difference within the first distance difference from a distance indicated by any one of the measurement points having a measurement direction from the reference point that is similar to the measurement direction.
3. a time-stable point detection unit that detects, as a time-stable point, a measurement point at which a variance of at least one of a distance or a reflected light intensity between a plurality of frames is less than a predetermined value, among the measurement points at which a distance from the reference point is measured; The information processing apparatus according to claim 1 , wherein the grouping unit performs grouping for each of the measurement points to which the flag is assigned and the temporally stable points, the measurement points each having a distance difference within the second distance difference.
4. 4. The information processing device according to claim 3, wherein the assignment unit assigns the flag to a measurement point where there is another measurement point that is within the first distance difference, for a plurality of measurement points, excluding the temporally stable point and a measurement point that indicates a distance within the predetermined range, among the measurement points at which the distance from the reference point is measured.
5. 5. The information processing device according to claim 3, wherein the time-stable point detection unit identifies a correspondence between the measurement points for each frame based on a speed of a moving body on which the information processing device is mounted, and calculates a variance of at least one of the distance or the reflected light intensity for each corresponding measurement point.
6. 5. The information processing device according to claim 3, wherein the grouping unit performs a process for classifying, into the same group, combinations of measurement points whose measurement directions from the reference point are similar and whose distance difference is within the second distance difference, for each measurement point to which the flag is assigned.
7. a point cloud information generating unit that generates point cloud information in which a distance from the reference point calculated based on a timing at which a reflected light intensity detected after each emission of the pulsed light while changing an angle is maximized is associated with an emission direction of the pulsed light; an output unit that outputs noise-removed point cloud information obtained by removing, from the point cloud information, information on distances in the emission direction corresponding to the measurement points that the determination unit has determined to be noise; 7. The information processing device according to claim 1, further comprising:
8. The information processing device according to any one of claims 1 to 7, wherein the grouping unit performs the grouping of a plurality of measurement points measured by a plurality of measuring devices, into the same group, the measurement points being determined to be adjacent to each other on a boundary of the measurement ranges of each of the measuring devices based on information on the position and orientation of each of the measuring devices.
9. A control method executed by an information processing device, comprising: a flag assignment step for assigning a flag to a measurement point for which there exists another measurement point within a first distance difference, the measurement points being acquired for each frame and each of which indicates a distance from a reference point, and at least measurement points indicating distances within a predetermined range being excluded; a grouping step of grouping the flagged measurement points into groups of measurement points each having a distance difference between the measurement points that is within a second distance difference; a determination step of determining, for each group, whether or not the measurement points to which the flag is assigned are noise based on the number of measurement points for each group; The control method includes:
10. an assigning unit that assigns a flag to a measurement point that has another measurement point within a first distance difference from a plurality of measurement points that are acquired for each frame and indicate a distance from a reference point, excluding at least the measurement points that indicate a distance within a predetermined range; a grouping unit that groups the flagged measurement points into groups of measurement points each having a distance difference between the measurement points that is within a second distance difference; a determination unit that determines, for each group, whether the measurement points to which the flag is assigned are noise or not, based on the number of measurement points for each group; A program that makes a computer function as a
Citation Information
Patent Citations
Object detecting device
JP2003057339A
Object detection method
JP2014173869A
Object detection device for vehicle
JP2014202709A
Noise reduction method and object recognition device
JP2016161340A
Distance measurement device, distance measurement method and program
JP2017181291A