Information processing device, control method, program, and storage medium
The information processing device corrects misclassified lidar data to identify distant curbs as obstacles, improving drivable area determination for autonomous vehicles by using point cloud information and movement data correction processes.
Patent Information
- Application Number
- JP2023579953
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2022-02-10
- Publication Date
- 2025-08-08
- Estimated Expiration
- 2042-02-10
AI Technical Summary
Existing systems struggle to accurately distinguish distant curbs from obstacles using lidar data due to the limited number of data points, often misclassifying curbs as ground points.
An information processing device and method that utilizes point cloud information to detect obstacle and ground points, corrects misclassified ground points as obstacles, and determines drivable areas by considering past travelable areas and movement information, employing noise removal, classification, and correction processes to accurately identify distant curbs as obstacles.
Accurately identifies distant curbs as obstacles, enhancing the precision of drivable area determination for vehicles, particularly in autonomous driving systems.
Smart Images

Figure 0007720931000001 
Figure 0007720931000002 
Figure 0007720931000003
Abstract
Description
[Technical Field]
[0001] The present disclosure relates to a technique for processing measured data. [Background technology]
[0002] A distance measuring device has been known that irradiates a measurement object with light, detects the light reflected from the measurement object, and calculates the distance to the measurement object based on the time difference between the time when the light is irradiated to the measurement object and the time when the light reflected from the measurement object is detected. Patent Document 1 also discloses a forward vehicle recognition device that changes a lighting pattern for projecting a light projection pattern depending on the detection state of the light projection pattern, and detects the distance and inclination to a forward vehicle. [Prior art documents] [Patent documents]
[0003] [Patent Document 1] Japanese Patent Application Laid-Open No. 2008-082750 Summary of the Invention [Problem to be solved by the invention]
[0004] When performing a process to determine whether the object being measured is the ground or an obstacle based on measurement data output by a measuring device such as a lidar, it has generally been difficult to determine whether the data corresponding to a distant curb is an obstacle due to the small number of data points that can be obtained.
[0005] The above is one example of a problem to be solved by the present invention. The main object of the present disclosure is to provide an information processing device, a control method, a program, and a storage medium storing the program that can suitably detect curbs as obstacles based on measurement data output by a measurement device. [Means for solving the problem]
[0006] The claimed invention is an acquisition means for acquiring point cloud information, which is a set of data representing points measured by the measurement device for each measurement direction, and acquiring measurement data output by the measurement device; an obstacle detection means for detecting obstacle points, which are data representing measured positions of obstacles, from the measurement data; a ground detection means for detecting ground points, which are data representing measured positions on the ground, from the measurement data; Based on the travelable area of the moving object determined at the processing time immediately before the current processing time, Among the detected ground points, Corresponds to curb The data the ground point was incorrectly detected as curb stone determination means for determining that the point is an obstacle; a travelable area determination means for determining the travelable area at the current processing time based on the obstacle points and the ground points; The information processing device is provided with:
[0007] The claimed invention also includes: The computer Acquire the measurement data output by the measurement device, Detecting obstacle points, which are data representing measured positions of obstacles, from the measurement data; detecting ground points, which are data representing measured positions on the ground, from the measurement data; Based on the travelable area of the moving object determined at the processing time immediately before the current processing time, Among the detected ground points, Corresponds to curb The data the ground point was incorrectly detected as The point is determined to be an obstacle point, determining the drivable area at the current processing time based on the obstacle points and the ground points; It is a control method.
[0008] The claimed invention also includes: Acquire the measurement data output by the measurement device, Detecting obstacle points, which are data representing measured positions of obstacles, from the measurement data; detecting ground points, which are data representing measured positions on the ground, from the measurement data; Based on the travelable area of the moving object determined at the processing time immediately before the current processing time, Among the detected ground points, Corresponds to curb The data the ground point was incorrectly detected as The point is determined to be an obstacle point, The program causes a computer to execute a process for determining the drivable area at the current processing time based on the obstacle points and the ground points. [Brief explanation of the drawings]
[0009] [Figure 1] 1 shows a schematic configuration of a lidar according to an embodiment. [Figure 2] 10 is a flowchart illustrating an example of an overall process according to an embodiment. [Figure 3] 10 is an example of a flowchart illustrating a procedure for a distant curb point determination process. [Figure 4] 10 is an example of a flowchart illustrating a procedure for a travelable area determination process. [Figure 5] The method for determining the drivable area is outlined below. [Figure 6] 10 is an example of a flowchart of a second process for determining a distant curb point. [Figure 7] FIG. 10 shows a configuration diagram of a lidar system according to a modified example. DETAILED DESCRIPTION OF THE INVENTION
[0010] In a preferred embodiment of the present invention, an information processing device includes: an acquisition means for acquiring measurement data output by a measurement device; an obstacle detection means for detecting, from the measurement data, obstacle points that are data representing measured positions of obstacles; a ground detection means for detecting, from the measurement data, ground points that are data representing measured positions on the ground; a curb determination means for determining, based on the drivable area of the mobile object determined at the processing time immediately preceding the current processing time, that the ground points corresponding to curbs are the obstacle points; and a drivable area determination means for determining the drivable area at the current processing time based on the obstacle points and the ground points. This aspect enables the information processing device to accurately determine, as obstacle points, ground points corresponding to curbs that have been erroneously detected as ground points.
[0011] In one aspect of the information processing device, the curb determination means sets a tentative drivable area at the current processing time based on the drivable area at the immediately preceding processing time, and determines that the ground point corresponding to the curb is the obstacle point based on the tentative drivable area. This aspect allows the information processing device to accurately determine the ground point corresponding to the curb based on the drivable area at the immediately preceding processing time.
[0012] In another aspect of the information processing device, the curb determination means corrects the ground point that exists near a boundary position of the provisional travelable area to the obstacle point. This aspect allows the information processing device to accurately determine the ground point that corresponds to the curb.
[0013] In another aspect of the information processing device, the curb determination means sets the provisional drivable area based on the drivable area at the immediately preceding processing time and movement information of the measurement device. This aspect allows the information processing device to accurately set the provisional drivable area at the current processing time.
[0014] In another aspect of the information processing device, the information processing device further includes a ground point correction means for correcting the obstacle points present in the tentative travelable area to the ground points. This aspect makes it possible to preferably correct the erroneously determined obstacle points to the ground points.
[0015] In another aspect of the information processing device, the curb determination means determines that the ground point corresponding to the curb is the obstacle point based on the continuity in the direction in which the road extends. With this aspect, the information processing device can preferably correct the ground point corresponding to the curb to an obstacle point.
[0016] In another aspect of the information processing device, the drivable area determination means determines the entire drivable area at the current processing time by extending the drivable area within a predetermined distance at the current processing time determined based on the obstacle points and the ground points. This aspect allows the information processing device to accurately determine the entire drivable area at the current processing time. In a preferred example, the obstacle is an object present near a road boundary. In an even more preferred example, the object is at least one of a curb, vegetation, a roadside object, and a fallen object near a road boundary.
[0017] In another preferred embodiment of the present invention, there is provided a control method executed by an information processing device, which includes the steps of: acquiring measurement data output by a measurement device; detecting obstacle points from the measurement data, which are data representing measured positions of obstacles; detecting ground points from the measurement data, which are data representing measured positions on the ground; determining, based on a drivable area of a moving object determined at the processing time immediately preceding a current processing time, that the ground points corresponding to curbs are the obstacle points; and determining the drivable area at the current processing time based on the obstacle points and the ground points. By executing this control method, the information processing device can accurately determine, as obstacle points, ground points corresponding to curbs that have been erroneously detected as ground points.
[0018] In another preferred embodiment of the present invention, a program causes a computer to execute the following process: acquire measurement data output by a measurement device, detect obstacle points from the measurement data, which are data representing measured positions of obstacles, detect ground points from the measurement data, which are data representing measured positions on the ground, determine the ground points corresponding to curbs as the obstacle points based on the drivable area of the mobile object determined at the processing time immediately before the current processing time, and determine the drivable area at the current processing time based on the obstacle points and the ground points. By executing this program, the computer can accurately determine that ground points corresponding to curbs that have been erroneously detected as ground points are obstacle points. Preferably, the program is stored in a storage medium. [Example]
[0019] Preferred embodiments of the present invention will now be described with reference to the drawings.
[0020] (1) 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 provides driving assistance such as autonomous driving, for example. The LIDAR 100 emits laser light over a predetermined angular range in the horizontal and vertical directions and receives light that is reflected by an object and returns (also referred to as "reflected light"), 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. The LIDAR 100 is installed so that the ground, such as the road surface, is included in its measurement range.
[0021] 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.
[0022] The transmitter 1 is a light source that emits pulsed laser 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 “Sg1” supplied from the controller 7.
[0023] The receiver 2 is, for example, an avalanche photodiode, generates a detection signal “Sg2” corresponding to the amount of received light, and supplies the generated detection signal Sg2 to the controller 7.
[0024] The beam splitter 3 transmits the pulsed laser light emitted from the transmitter 1. The beam splitter 3 also reflects the light reflected by the scanner 5 towards the receiver 2.
[0025] The scanner 5 is, for example, an electrostatically driven mirror (MEMS mirror), and its tilt (i.e., the angle of optical scanning) changes within a predetermined range based on the drive signal "Sg3" supplied from the control unit 7. The scanner 5 reflects the laser light that has passed through the beam splitter 3 toward the outside of the LIDAR 100, and also reflects reflected light that enters from the outside of the LIDAR 100 toward the beam splitter 3. In addition, a point measured by irradiating the laser light within the measurement range of the LIDAR 100, or the measurement data thereof, is also referred to as a "measured point."
[0026] 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 "Sg4" to the control unit 7. The detection signal Sg4 is used to detect the orientation of the scanner 5.
[0027] The memory 8 is composed of various types of volatile and non-volatile memories such as RAM (Random Access Memory), ROM (Read Only Memory), and flash memory. The memory 8 stores programs required for the control unit 7 to execute predetermined processes. The memory 8 also stores various parameters referenced by the control unit 7. The memory 8 also stores point cloud information for the latest predetermined number of frames generated by the control unit 7.
[0028] The control unit 7 includes various processors, such as a CPU (Central Processing Unit) and a GPU (Graphics Processing Unit). The control unit 7 executes a program stored in the memory 8 to perform predetermined processing. The control unit 7 is an example of a computer that executes a program. The control unit 7 is not limited to being realized by software according to a program, but may be realized by any combination of hardware, firmware, and software. The control unit 7 may also be a user-programmable integrated circuit, such as an FPGA (Field-Programmable Gate Array) or a microcontroller, or may be an ASSP (Application Specific Standard Produce), ASIC (Application Specific Integrated Circuit), or the like.
[0029] The control unit 7 functionally includes a transmission driving block 70, a scanner driving block 71, a point cloud information generation block 72, and a point cloud information processing block 73.
[0030] The transmission drive block 70 outputs a drive signal Sg1 that drives the transmission unit 1. The drive signal Sg1 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 Sg1.
[0031] The scanner driving block 71 outputs a driving signal Sg3 for driving the scanner 5. This driving signal Sg3 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 monitors a detection signal Sg4 output from the piezo sensor 6 to detect the scanning angle of the scanner 5 (i.e., the emission direction of the laser light).
[0032] Based on the detection signal Sg2 supplied from the receiving unit 2, the point cloud information generation block 72 generates point cloud information indicating the distance (measurement distance) to an object irradiated with laser light for each measurement direction (i.e., the emission direction of the laser light) with the lidar 100 as the reference point. In this case, the point cloud information generation block 72 calculates the time from when the laser 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 a set of points corresponding to the combination of the measurement distance according to the calculated time of flight and the emission direction of the laser light corresponding to the reflected light received by the receiving unit 2, and supplies the generated point cloud information to the point cloud information processing block 73. Hereinafter, the point cloud information obtained by one scan of all measured points will be referred to as point cloud information for one frame.
[0033] Here, the point cloud information can be regarded as an image in which each measurement direction is a pixel and the measurement distance in each measurement direction is a pixel value. In this case, the emission direction of the laser light varies depending on the elevation and depression angles in the vertical arrangement of pixels, and the emission direction of the laser light varies depending on the horizontal angle in the horizontal arrangement of pixels. Then, for each pixel, a coordinate value in a three-dimensional coordinate system based on the LIDAR 100 is calculated based on the corresponding pair of emission direction and measurement distance. Hereinafter, the above-mentioned three-dimensional coordinate system will also be referred to as a "reference coordinate system." The reference coordinate system is a three-dimensional coordinate system in which the horizontal plane (i.e., a plane parallel to the ground) is defined as the X and Y axes, and the height direction perpendicular to the horizontal plane is defined as the Z axis. Furthermore, the X axis is defined as parallel to the front direction of the vehicle (i.e., the direction in which the road extends). Note that the origin of the reference coordinate system is set, for example, to the position of the LIDAR 100. Furthermore, a frame of point cloud information obtained at the current processing time will be referred to as a "current frame," and a frame of point cloud information obtained in the past will be referred to as a "past frame."
[0034] The point cloud information processing block 73 performs predetermined processing on the point cloud information generated by the point cloud information generation block 72. For example, the point cloud information processing block 73 performs processing to remove data generated by erroneously detecting an object in the point cloud information (also referred to as "noise data" or "false alarm data") from the point cloud information. In this case, the point cloud information processing block 73 further adds flag information to the point cloud information, indicating whether or not each measured point is noise data. Hereinafter, measured points corresponding to data generated by detecting an actual object will be referred to as "valid points," and measured points other than valid points (i.e., measured points corresponding to noise data) will be referred to as "invalid points."
[0035] The point cloud information processing block 73 also classifies the measurement points represented by the point cloud information supplied from the point cloud information generation block 72 and adds classification information representing the classification results to the point cloud information. Specifically, the point cloud information processing block 73 detects measurement points (also referred to as "ground points") representing the ground (including road surface paint such as white lines) and measurement points (also referred to as "obstacle points") representing obstacles (including preceding vehicles and features) present on or around the road (including near road boundaries), and generates classification information representing the classification of each measurement point based on the detection results. The point cloud information processing block 73 also identifies measurement points (also referred to as "false obstacle judgment points") that have been erroneously judged (classified) as obstacle points due to the beam width of the laser light (so-called footprint size), and corrects the classification of the false obstacle judgment points to ground points.
[0036] Furthermore, in view of the fact that distant curbs are unlikely to be determined as obstacle points (i.e., they are determined as ground points), the point cloud information processing block 73 executes distant curb point determination processing, which is processing to correct the classification of measured points representing distant curbs (also called "distant curb points") to obstacle points. Furthermore, the point cloud information processing block 73 executes drivable area determination processing, which is processing to divide the current frame regarded as an image into grids and determine whether each grid represents an area in which the vehicle can drive (also called "drivable area").
[0037] Furthermore, the point cloud information processing block 73 stores the point cloud information for each frame and information relating to the drivable area (also referred to as "drivable area information") in the memory 8 in association with time information indicating the processing time for each frame. Details of the processing by the point cloud information processing block 73 will be described later. The point cloud information processing block 73 is an example of an "acquisition means," "obstacle detection means," "ground surface detection means," "ground surface point correction means," "curb determination means," and "drivable area determination means." Furthermore, the lidar 100 excluding the point cloud information processing block 73 is an example of a "measurement device."
[0038] The point cloud information and drivable area information generated by the point cloud information processing block 73 may be output to, for example, a device (also referred to as a "driving assistance device") that controls driving assistance such as automatic driving of a vehicle. In this case, for example, the vehicle is controlled so as to at least avoid obstacle points based on the point cloud information. The driving assistance device may be, for example, an ECU (Electronic Control Unit) of the vehicle, or an on-board device such as a car navigation device electrically connected to the vehicle. Furthermore, the lidar 100 is not limited to a scan-type lidar that scans a field of view with laser light, but may also be a flash-type lidar that generates three-dimensional data by irradiating a diffused laser light within the field of view of a two-dimensional array sensor.
[0039] (2) Processing Overview 2 is an example of a flowchart showing the procedure for processing point cloud information. The point cloud information processing block 73 repeatedly executes the process shown in FIG. 2 for each cycle of generating point cloud information for one frame.
[0040] First, the point cloud information generation block 72 generates point cloud information based on the detection signal Sg2 (step S01). In this case, the point cloud information generation block 72 generates point cloud information of the current frame corresponding to the current processing time based on the detection signal Sg2 generated by one scan of the scanning target range of the LIDAR 100.
[0041] Next, the point cloud information processing block 73 executes a noise removal process (step S02) to remove noise data from the point cloud information generated in step S01. In this case, the point cloud information processing block 73 may execute any noise removal process. For example, the point cloud information processing block 73 regards data of a measurement point where the intensity of reflected light received by the receiving unit 2 is less than a predetermined threshold as noise data, and regards measurement points representing data other than noise data as valid points.
[0042] Next, the point cloud information processing block 73 executes a process of classifying each valid point of the point cloud information after the noise removal process (step S03). In this case, the point cloud information processing block 73 estimates a plane representing the ground based on the valid points represented by the point cloud information after the noise removal process, and determines valid points that exist at a position higher than the plane by a predetermined threshold or more as obstacle points, and determines other valid points as ground points. In this case, for example, the point cloud information processing block 73 estimates the plane representing the ground by using point cloud data of the valid points to find a plane equation in the reference coordinate system by the least squares method.
[0043] Next, the point cloud information processing block 73 performs a process of estimating the ground height based on the ground points determined in step S03 (also referred to as a "ground height estimation process") (step S04). In this case, for example, the point cloud information processing block 73 estimates the ground height based on a plane equation calculated from the ground points.
[0044] Then, the point cloud information processing block 73 executes a false obstacle determination point correction process (step S05). In this case, as a first correction process, the point cloud information processing block 73 corrects the classification of measurement points that were classified as obstacle points due to reflections from road paint such as white lines to ground points, taking into account height and depth deviations according to the footprint size. Specifically, in the first correction process, among the obstacle points, points whose height difference from surrounding ground points is equal to or less than a first threshold are extracted as candidates for false obstacle determination points, and the above candidates whose depth distance difference from surrounding ground points is greater than a second threshold are corrected to ground points. Hereinafter, measurement points corrected to ground points will also be referred to as "corrected ground points." Furthermore, as a second correction process, the point cloud information processing block 73 detects false obstacle determination points that could not be corrected to corrected ground points in the first correction process based on the size of the clusters formed by the obstacle points, and corrects them to corrected ground points. Furthermore, in the third correction process, the point cloud information processing block 73 resets the points that were erroneously determined to be corrected ground points in the first correction process and the second correction process as obstacle points. In the third correction process, the point cloud information processing block 73 corrects the corrected ground points located above and below an obstacle point to obstacle points, corrects a cluster of a predetermined number (e.g., three) or more consecutive corrected ground points in the vertical direction (i.e., in a direction with different emitted elevation / depression angles) to obstacle points, and corrects the corrected ground points to obstacle points based on past frames.
[0045] Next, the point cloud information processing block 73 executes a distant curb point determination process (step S06). In this case, the point cloud information processing block 73 sets a provisional drivable area (also called a "provisional drivable area") for the current frame based on the drivable area information of the past frame one processing time before, and determines distant curb points classified as ground points based on the provisional drivable area. Then, the point cloud information processing block 73 corrects the classification of the distant curb points to obstacle points.
[0046] Next, the point cloud information processing block 73 executes a drivable area determination process (step S07). In this case, the point cloud information processing block 73 divides the current frame regarded as an image into grids and performs a process of determining whether each grid is a drivable area.
[0047] (3) Distant curb point determination processing Next, a detailed description will be given of the distant curb point determination process executed in step S06 in Fig. 2. Fig. 3 is an example of a flowchart showing the procedure of the distant curb point determination process.
[0048] First, the point cloud information processing block 73 sets a tentative driveable area for the current frame based on the driveable area information of the past frame corresponding to the processing time immediately before the current processing time (step S11).
[0049] In this case, preferably, the point cloud information processing block 73 sets the tentative drivable area based on information relating to the movement of the lidar 100 (also referred to as "lidar movement information"). Here, the point cloud information processing block 73 generates lidar movement information indicating the movement speed and directional changes of the lidar 100 based on, for example, vehicle speed pulse information received from the vehicle on which the lidar 100 is mounted via a predetermined communication protocol such as CAN, angular velocity information in the yaw direction of the vehicle, etc. In another example, the point cloud information processing block 73 generates the lidar movement information based on detection signals output by various sensors such as an acceleration sensor provided in the lidar 100.
[0050] Then, if the point cloud information processing block 73 determines based on the rider movement information that the rider 100 has not moved between the previous frame and the current frame, it assumes that there is no significant change in the drivable area between consecutive frames, and sets the drivable area of the previous frame as the provisional drivable area.
[0051] On the other hand, when the point cloud information processing block 73 determines based on the rider movement information that the rider 100 has moved between the previous frame and the current frame, it calculates the amount of movement of the rider 100 from the previous frame to the current frame based on the rider movement information.The point cloud information processing block 73 then sets a provisional driveable area that reflects the calculated amount of movement in the driveable area of the previous frame.This allows the point cloud information processing block 73 to set a provisional driveable area that takes the movement of the rider 100 into consideration.
[0052] Next, the point cloud information processing block 73 regards ground points that exist near the boundary of the tentative drivable area as distant curb points and corrects them to obstacle points (step S12). In this case, for example, the point cloud information processing block 73 recognizes the boundary where the tentative drivable area meets other areas in the current frame, and corrects the classification of measured points that correspond to pixels corresponding to the boundary and neighboring pixels within a predetermined number of pixels from the pixel that correspond to the pixel, which are classified as ground points, to obstacle points. This allows the point cloud information processing block 73 to determine that distant curb points, which have a small number of points, are obstacle points.
[0053] Next, the point cloud information processing block 73 corrects the obstacle points in the tentative travelable area to ground points (step S13). In this case, the point cloud information processing block 73 corrects the obstacle points present in the tentative travelable area (excluding those corrected to obstacle points in step S12) to ground points.
[0054] (4) Driving area determination process Next, a detailed description will be given of the travelable area determination process executed in step S07 of Fig. 2. Fig. 4 is an example of a flowchart showing the procedure of the travelable area determination process.
[0055] First, the point cloud information processing block 73 sets a grid for the current frame (step S21). In this case, the point cloud information processing block 73 regards the current frame as an image and sets grids by dividing it vertically and horizontally into a predetermined number of pixels. Each grid is then a rectangular area with the predetermined number of pixels in both the vertical and horizontal directions.
[0056] Next, the point cloud information processing block 73 classifies each grid into a grid where an obstacle point exists as "1" and a grid where no obstacle point exists as "0" (step S22). In this case, the point cloud information processing block 73 classifies the grids as described above by referring to the classification result indicating whether the measured points corresponding to each pixel constituting the grid are ground points or obstacle points.
[0057] Then, the point cloud information processing block 73 determines the drivable area corresponding to the current frame based on the classification results of each grid (step S23). In this case, the point cloud information processing block 73 regards the continuous row of "0" grids including the center of each horizontal line as the drivable area.
[0058] Fig. 5 shows an overview of the method for determining the drivable area in step S23. Fig. 5 shows the classification results of the grid in the portion of the current frame that is close to the rider 100, and the drivable area that is set based on the classification results. Here, the "reference line" is the line that represents the horizontal center of the image.
[0059] In this case, the point cloud information processing block 73 searches for a grid that is 0 to the left of the reference line, starting from the horizontal line of the nearest grid, and sets the drivable area up to the grid just before the grid that is 1. Similarly, the point cloud information processing block 73 searches for a grid that is 0 to the right of the reference line, and sets the drivable area up to the grid just before the grid that is 1. Thereafter, the point cloud information processing block 73 shifts the horizontal line being searched up by one and performs the same process.
[0060] Preferably, the point cloud information processing block 73 determines a portion of the drivable area (i.e., the drivable area within a predetermined distance from the rider 100) by performing the above-described processing on an area within a predetermined distance from the rider 100 or up to a horizontal line of a grid within a predetermined number of grid points from the bottom end. The point cloud information processing block 73 then determines the remaining drivable area by extending the determined portion of the drivable area in the depth direction. In this case, the point cloud information processing block 73 calculates, for example, straight lines in a reference coordinate system that represent the left and right boundary lines of the determined portion of the drivable area based on a regression analysis such as the least squares method, and sets the area between these calculated straight lines as the remaining drivable area. This allows the point cloud information processing block 73 to preferably set the entire drivable area in the current frame.
[0061] (5) Variations Next, preferred modifications of the above-described embodiment will be described. The following modifications may be applied to the above-described embodiment in combination.
[0062] (Variation 1) As a distant curb point determination process, the point cloud information processing block 73 may perform a process of determining distant curb points based on the continuity of distant curb points in the direction in which the road extends (also referred to as a "second distant curb point determination process") in addition to a process of determining distant curb points based on the drivable area. In this case, the point cloud information processing block 73 determines distant curb points based on the premise that distant curb points exist continuously (extending) in the X-axis direction.
[0063] 6 is an example of a flowchart of the second distant curb point determination process. In step S06 of FIG. 2, the point cloud information processing block 73 executes the process of this flowchart together with the flowchart of the distant curb point determination process shown in FIG.
[0064] First, the point cloud information processing block 73 searches for corrected ground points in the current frame that have been corrected from obstacle points to ground points by false obstacle determination point correction processing or the like (step S31). Generally, when the footprint size is large, it becomes difficult to determine distant curb points as obstacle points, and the distant curb points are corrected from obstacle points to ground points in the false obstacle determination point correction processing. Instead of step S31, the point cloud information processing block 73 may search for ground points (including corrected ground points) that exist near the boundary of the road by any method, and perform the processing in the following steps on the searched points.
[0065] Next, the point cloud information processing block 73 counts, for each of the searched corrected ground points, the number of surrounding points that are in a positional relationship that matches the continuity of the curbstones (step S32). Specifically, for each corrected ground point, the point cloud information processing block 73 counts the number of surrounding points whose distance on the YZ plane is within a threshold and that correspond to obstacle points, corrected ground points, or corrected obstacle points (or only obstacle points). In this case, the surrounding points are measured points in the current frame that correspond to pixels whose vertical deviation is within a predetermined number of lines (e.g., 30 lines) and whose horizontal deviation is less than a predetermined pixel difference (e.g., 3 pixel difference).
[0066] Then, the point cloud information processing block 73 regards the corrected ground points whose count number in step S32 is equal to or greater than a predetermined number as distant curb points, and corrects them to obstacle points (step S33). Note that instead of executing the processing of this flowchart separately from the processing of the flowchart in Fig. 3, the point cloud information processing block 73 may take into account the continuity of distant curb points in the processing of step S12 in Fig. 3. In this case, in step S12, the point cloud information processing block 73 corrects, as obstacle points, ground points that are near the boundary of the provisional driveable area and that satisfy the above-mentioned conditions regarding continuity.
[0067] According to this modification, the distant curb points can be determined with higher accuracy by utilizing the property that the distant curb points are continuous in the X-axis direction.
[0068] (Variation 2) The configuration of the LIDAR 100 is not limited to the configuration shown in Fig. 1. For example, the point cloud information processing block 73 of the control unit 7 and a function corresponding to the point cloud information processing block 73 may be provided in a device separate from the LIDAR 100.
[0069] 7 is a configuration diagram of a LIDAR system according to a modified example. The LIDAR system includes a LIDAR 100X and an information processing device 200. In this case, the LIDAR 100X supplies point cloud information generated by a point cloud information generation block 72 to the information processing device 200.
[0070] The information processing device 200 has a control unit 7A and a memory 8. The memory 8 stores information necessary for the control unit 7A to execute processing. The control unit 7A functionally has a point cloud information acquisition block 72A and a point cloud information processing block 73. The point cloud information acquisition block 72A receives point cloud information generated by the point cloud information generation block 72 of the LIDAR 100X and supplies the received point cloud information to the point cloud information processing block 73. The point cloud information processing block 73 performs the same processing on the point cloud information supplied from the point cloud information acquisition block 72A as the point cloud information processing block 73 of the above-described embodiment.
[0071] The information processing device 200 may be realized by a driving assistance device. Furthermore, information on parameters necessary for processing may be stored in another device having a memory that can be referenced by the information processing device 200. According to the configuration of this modification, the information processing device 200 can generate accurate classification information for each measured point of the point cloud information generated by the lidar 100X.
[0072] As described above, the control unit 7 of the lidar 100 according to the embodiment functions as an information processing device of the present invention and functionally includes an acquisition means, an obstacle detection means, a ground detection means, a curb determination means, and a drivable area determination means. The acquisition means acquires point cloud data. The obstacle detection means detects obstacle points, which are data representing measured points of an obstacle, from the point cloud data. The ground detection means detects ground points, which are data representing measured points on the ground, from the point cloud data. The curb determination means determines ground points corresponding to curbs as obstacle points based on the drivable area of the vehicle determined at the processing time immediately before the current processing time. The drivable area determination means determines the drivable area at the current processing time based on the obstacle points and the ground points. This enables the lidar 100 to accurately determine curbs, which are easily determined to be ground points, as obstacle points.
[0073] In the above-described embodiments, the program can be stored using various types of non-transitory computer-readable media and supplied to a controller or the like that is a computer. Non-transitory computer-readable media include various types of tangible storage media. Examples of non-transitory computer-readable media include magnetic storage media (e.g., flexible disks, magnetic tapes, hard disk drives), magneto-optical storage media (e.g., magneto-optical disks), CD-ROMs (Read Only Memory), CD-Rs, CD-R / Ws, and semiconductor memories (e.g., mask ROMs, PROMs (Programmable ROMs), EPROMs (Erasable PROMs), flash ROMs, and RAMs (Random Access Memory)).
[0074] Although the present invention has been described above with reference to the embodiments, the present invention is not limited to the above embodiments. Various modifications within the scope of the present invention that would be understood by those skilled in the art can be made to the configuration and details of the present invention. In other words, the present invention naturally includes various modifications and alterations that would be possible for those skilled in the art based on the entire disclosure, including the claims, and the technical ideas. Furthermore, the disclosures of the above-cited patent documents and other documents are incorporated herein by reference. [Explanation of symbols]
[0075] 1. Transmitter 2. Receiving section 3 Beam splitter 5. Scanner 6 Piezo Sensors 7, 7A control section 8. Memory 100, 100X Lidar 200 Information processing device
Claims
1. an acquisition means for acquiring measurement data output by the measurement device; an obstacle detection means for detecting obstacle points, which are data representing measured positions of obstacles, from the measurement data; a ground detection means for detecting ground points, which are data representing measured positions on the ground, from the measurement data; curbstone determination means for determining, based on a travelable area of the moving body determined at a processing time immediately before the current processing time, that the data corresponding to a curbstone among the detected ground points is the obstacle point erroneously detected as the ground point; a travelable area determination means for determining the travelable area at the current processing time based on the obstacle points and the ground points; An information processing device comprising:
2. 2. The information processing device according to claim 1, wherein the curb determination means sets a provisional drivable area at the current processing time based on the drivable area at the immediately preceding processing time, and determines, based on the provisional drivable area, that the data corresponding to the curb among the detected ground points is the obstacle point that has been erroneously detected as the ground point.
3. 3. The information processing device according to claim 2, wherein the curb determination means determines that the data present near a boundary position of the provisional drivable area among the detected ground points is the obstacle point erroneously detected as the ground point, and corrects it to the obstacle point.
4. The information processing device according to claim 2 or 3, wherein the curb determination means sets the tentative drivable area based on the drivable area at the immediately preceding processing time and movement information of the measuring device.
5. An information processing device as described in any one of claims 1 to 4, wherein the curb determination means determines that the data corresponding to the curb among the detected ground points is the obstacle point that has been mistakenly detected as the ground point based on continuity in the direction in which the road extends.
6. 5. The information processing apparatus according to claim 2, further comprising a ground point correcting means for correcting the obstacle points present in the provisional travelable area to the ground points as corrected ground points.
7. The curb determination means For each of the corrected ground points, count the number of surrounding points that are the obstacle points or the corrected ground points and exist within a predetermined distance from each of the corrected ground points; When the number of the surrounding points is equal to or greater than a predetermined number, The information processing apparatus according to claim 6 , wherein the corrected ground point obtained by counting the surrounding points is determined to be the obstacle point erroneously detected as the ground point, and is corrected to the obstacle point.
8. The information processing device described in any one of claims 1 to 7, wherein the drivable area determination means determines the entire drivable area at the current processing time by extending the drivable area within a predetermined distance at the current processing time determined based on the obstacle points and the ground points.
9. The information processing device according to any one of claims 1 to 8, wherein the obstacle is an object present near a road boundary.
10. The information processing device according to claim 9 , wherein the object is at least one of a curb, vegetation, an object on a roadside, and an object that has fallen near a road boundary.
11. A control method executed by an information processing device, Acquire the measurement data output by the measurement device, Detecting obstacle points, which are data representing measured positions of obstacles, from the measurement data; detecting ground points, which are data representing measured positions on the ground, from the measurement data; determine, based on the travelable area of the moving body determined at the processing time immediately before the current processing time, the data corresponding to a curb among the detected ground points to be the obstacle point erroneously detected as the ground point; determining the drivable area at the current processing time based on the obstacle points and the ground points; Control method.
12. Acquire the measurement data output by the measurement device, Detecting obstacle points, which are data representing measured positions of obstacles, from the measurement data; detecting ground points, which are data representing measured positions on the ground, from the measurement data; determine, based on the travelable area of the moving body determined at the processing time immediately before the current processing time, the data corresponding to a curb among the detected ground points to be the obstacle point erroneously detected as the ground point; A program that causes a computer to execute a process of determining the drivable area at the current processing time based on the obstacle points and the ground points.
13. A storage medium storing the program according to claim 12.
Citation Information
Patent Citations
Detection method and detection device for road fence
CN109254289A
Front vehicle recognizing device
JP2008082750A
Road shape recognition device
JP2011028659A
Driving support system
JP2016045507A
Target determination device
JP2019027973A