Object detector

The object detection device enhances accuracy in identifying moving objects by calculating absolute movement speed and classifying point cloud data, addressing the reliance on learning model reliability in existing systems.

JP2025121483APending Publication Date: 2025-08-20HONDA MOTOR CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
JP2024016895
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-02-07
Publication Date
2025-08-20

AI Technical Summary

Technical Problem

Existing object detection systems using machine learning for vehicle control rely heavily on the reliability of the learning model, leading to potential inaccuracies in detecting moving objects.

Method used

An object detection device that calculates absolute movement speed from relative speed and position data, classifies point cloud data into moving and stationary objects, and identifies objects based on movement speed and direction, reducing computational load and improving accuracy.

Benefits of technology

Enables high-accuracy detection of moving objects by distinguishing between stationary and moving objects, minimizing computational load and reducing false detections.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025121483000001_ABST
    Figure 2025121483000001_ABST
Patent Text Reader

Abstract

To highly precisely detect a moving object.SOLUTION: An object detector 50 includes a calculation unit 113 that calculates an absolute moving speed of each of plural measurement points, which are represented by point group data, on the basis of a relative moving speed of a measurement point detected by a lidar 5 and an absolute moving speed of an own vehicle, a classification unit 114 that classifies the point group data into moving point group data, which represents measurement points whose absolute moving speeds take on absolute values equal to or larger than a predetermined speed, and quiescent point group data other than the moving point group data, an extraction unit 115 that extracts change point group data, which represents moving quantities over a predetermined time which are equal to or larger than a predetermined value, from the quiescent point group data, and a detection unit 116 that identifies a moving object on the basis of the change point group data. The detection unit 116 extracts a candidate moving object, which is a candidate for a moving object, from objects detected by the lidar 5 on the basis of the change point group data, and determines based on at least one of the moving speed and moving direction of the candidate moving object whether the candidate moving object is a moving object.SELECTED DRAWING: Figure 1
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present invention relates to an object detection device that detects objects around a vehicle. [Background technology]

[0002] In recent years, there has been a demand for vehicle control systems that improve traffic safety and contribute to the development of sustainable transportation systems. One such device is one that uses machine learning to detect moving objects from 3D point cloud data acquired by a lidar (see, for example, Patent Document 1). [Prior art documents] [Patent documents]

[0003] [Patent Document 1] Japanese Patent Publication No. 2023-027736 Summary of the Invention [Problem to be solved by the invention]

[0004] However, in a method using machine learning such as the device described in Patent Document 1, the detection accuracy depends on the reliability of the learning model, so there is a risk that the detection accuracy of moving objects may not be sufficiently guaranteed. [Means for solving the problem]

[0005] An object detection device according to one aspect of the present invention includes a detector mounted on a moving body, which irradiates electromagnetic waves around the moving body and detects the external environment around the moving body based on the reflected waves, a data acquisition unit which acquires point cloud data at predetermined time intervals, the point cloud data including position information of measurement points on the surface of the object from which the reflected waves are obtained detected by the detector and first velocity information indicating the relative movement velocity of the measurement points, a velocity acquisition unit which acquires second velocity information indicating the absolute movement velocity of the moving body, a calculation unit which calculates the absolute movement velocity of each of a plurality of measurement points corresponding to the point cloud data based on the first velocity information and the second velocity information, and a data acquisition unit which acquires second velocity information indicating the absolute movement velocity of each of the measurement points corresponding to the point cloud data based on the first velocity information and the second velocity information. The system includes a classification unit that classifies the point cloud data acquired by the acquisition unit into first point cloud data corresponding to measurement points on the surface of an object where the absolute value of the absolute moving speed calculated by the calculation unit is equal to or greater than a predetermined speed, and second point cloud data other than the first point cloud data, an extraction unit that calculates the movement amounts over a predetermined time of the measurement points corresponding to the second point cloud data and extracts, from the second point cloud data, predetermined point cloud data corresponding to the measurement points where the movement amounts are equal to or greater than a predetermined value, and a moving object identification unit that identifies moving objects among objects detected by the detector based on the first point cloud data and the predetermined point cloud data. The moving objects include a first moving object identified based on the first point cloud data and a second moving object identified based on the predetermined point cloud data. The moving object identification unit extracts candidate moving objects that are candidates for the second moving object from the objects detected by the detector based on the predetermined point cloud data, and determines whether the candidate moving object is the second moving object based on at least one of the movement speed and movement direction of the measurement points corresponding to the candidate moving object. [Effects of the Invention]

[0006] According to the present invention, a moving object can be detected with high accuracy. [Brief explanation of the drawings]

[0007] [Figure 1] 1 is a block diagram showing the configuration of a main part of a vehicle control device including an object detection device according to an embodiment of the present invention; [Figure 2] 1 is a diagram for explaining the relationship between the relative movement speed of a moving object measured by a lidar and the movement direction of the moving object. FIG. [Figure 3]4 is a flowchart showing an example of processing executed by a CPU of the controller of FIG. 1; [Figure 4] FIG. 1 is a diagram schematically showing an example of point cloud data acquired by a lidar. [Figure 5A] FIG. 10 is a diagram schematically illustrating an example of still point cloud data of a previous frame. [Figure 5B] FIG. 10 is a diagram schematically showing an example of still point cloud data of a current frame. [Figure 6A] FIG. 10 is a diagram schematically showing how still point cloud data of a previous frame and still point cloud data of a current frame are aligned. [Figure 6B] FIG. 10 is a diagram showing still point cloud data of a previous frame and still point cloud data of a current frame after alignment. [Figure 7] FIG. 10 is a diagram schematically showing another example of point cloud data acquired by a lidar. [Figure 8] FIG. 10 is a diagram showing how change points are extracted from still point cloud data. [Figure 9] FIG. 2 is a diagram for explaining a movement vector of a moving object. [Figure 10A] FIG. 10 is a diagram for explaining erroneous detection of a moving object. [Figure 10B] FIG. 10 is a diagram for explaining erroneous detection of a moving object. [Figure 11A] FIG. 10 is a diagram illustrating an example of a method for identifying a moving object that has been erroneously detected. [Figure 11B] FIG. 10 is a diagram showing how a moving object that has been erroneously detected is identified. [Figure 12] FIG. 10 is a diagram for explaining another example of a method for identifying a moving object that has been erroneously detected. [Figure 13A] 1 is a diagram for explaining the degree of possibility that the host vehicle will approach or collide with a moving object; [Figure 13B] 1 is a diagram for explaining the degree of possibility that the host vehicle will approach or collide with a moving object; [Figure 13C] 1 is a diagram for explaining the degree of possibility that the host vehicle will approach or collide with a moving object; DETAILED DESCRIPTION OF THE INVENTION

[0008] Hereinafter, an embodiment of the present invention will be described with reference to the drawings. An object detection device according to an embodiment of the present invention can be applied to a vehicle having an automatic driving function, i.e., an automatic driving vehicle. Note that a vehicle to which an object detection device according to the present embodiment is applied may be referred to as a host vehicle to distinguish it from other vehicles. The host vehicle may be an engine vehicle having an internal combustion engine (engine) as a driving source, an electric vehicle having a driving motor as a driving source, or a hybrid vehicle having an engine and a driving motor as driving sources. The host vehicle can be driven not only in an automatic driving mode in which no driving operation by the driver is required, but also in a manual driving mode in which the driver operates the vehicle.

[0009] When a self-driving vehicle is driving in self-driving mode (hereinafter referred to as self-driving or autonomous driving), it recognizes the external environment around the vehicle based on detection data from on-board detectors such as cameras and LiDAR (Light Detection and Ranging).Based on the recognition results, the self-driving vehicle generates a driving trajectory (target trajectory) for a predetermined time from the current time, and controls driving actuators so that the vehicle drives along the target trajectory.

[0010] 1 is a block diagram showing the configuration of a main part of a vehicle control device 100 including an object detection device. The vehicle control device 100 has a controller 10, a communication unit 1, a positioning unit 2, an internal sensor group 3, a camera 4, a LIDAR 5, and a driving actuator AC. The vehicle control device 100 also has an object detection device 50 that forms part of the vehicle control device 100. The object detection device 50 detects objects around the vehicle based on detection data from the LIDAR 5.

[0011] The communication unit 1 communicates with various servers (not shown) via networks including wireless communication networks such as the Internet and mobile phone networks, and acquires map information, driving history information, traffic information, and the like from the servers periodically or at any timing. Networks include not only public wireless communication networks but also closed communication networks established for each specific management area, such as wireless LAN, Wi-Fi (registered trademark), and Bluetooth (registered trademark). The acquired map information is output to the memory unit 12, where it is updated. The positioning unit (GNSS unit) 2 has a positioning sensor that receives positioning signals transmitted from positioning satellites. The positioning satellites are artificial satellites such as GPS satellites and quasi-zenith satellites. The positioning unit 2 measures the current position (latitude, longitude, altitude) of the vehicle using the positioning information received by the positioning sensor.

[0012] The internal sensor group 3 is a collective term for a plurality of sensors (internal sensors) that detect the driving state of the host vehicle. For example, the internal sensor group 3 includes a vehicle speed sensor that detects the vehicle speed of the host vehicle, an acceleration sensor that detects the longitudinal acceleration and the lateral acceleration (lateral acceleration) of the host vehicle, a rotation speed sensor that detects the rotation speed of the driving source, a yaw rate sensor that detects the rotation angular velocity around the vertical axis of the center of gravity of the host vehicle, etc. The internal sensor group 3 also includes sensors that detect the driving operations of the driver in manual driving mode, such as operation of the accelerator pedal, operation of the brake pedal, operation of the steering wheel, etc.

[0013] The camera 4 has an imaging element such as a CCD or CMOS and captures images of the surroundings (front, rear, and sides) of the vehicle. The LIDAR 5 emits electromagnetic waves (reflected waves) into a three-dimensional space around the vehicle and detects the external environment around the vehicle based on the reflected waves. More specifically, the electromagnetic waves (e.g., laser light) emitted by the LIDAR 5 are reflected at a point (measurement point) on the surface of an object, and the distance from the laser source to that point, the intensity of the reflected electromagnetic waves, the relative speed of the object located at that measurement point, and other information are measured. The LIDAR 5, attached to a predetermined position (front) of the vehicle, emits electromagnetic waves that scan the surroundings (front) of the vehicle in horizontal and vertical directions, detecting the position, shape, relative moving speed, and other information of objects ahead of the vehicle (moving objects such as other vehicles and stationary objects such as road surfaces and structures). In the following, the three-dimensional space is represented by an X-axis along the traveling direction of the vehicle, a Y-axis along the width direction of the vehicle, and a Z-axis along the height direction of the vehicle. Therefore, the above three-dimensional space is sometimes called an XYZ space.

[0014] Actuators AC are driving actuators for controlling the driving of the host vehicle. When the driving source is an engine, actuators AC include a throttle actuator that adjusts the opening of the engine's throttle valve (throttle opening). When the driving source is a driving motor, actuators AC include the driving motor. Actuators AC also include a brake actuator that operates the host vehicle's braking device and a steering actuator that drives the steering device.

[0015] The controller 10 is composed of an electronic control unit (ECU). More specifically, the controller 10 includes a computer having an arithmetic unit 11 such as a CPU (microprocessor), a storage unit 12 such as a ROM and a RAM, and other peripheral circuits (not shown) such as an I / O interface. Note that although multiple ECUs with different functions, such as an engine control ECU, a traction motor control ECU, and a braking device ECU, can be provided separately, for convenience, the controller 10 is shown in FIG. 1 as a collection of these ECUs.

[0016] The memory unit 12 stores highly accurate, detailed map information (referred to as high-accuracy map information). The high-accuracy map information includes road position information, road shape (curvature, etc.) information, road gradient information, intersection and branch point position information, number of lanes (driving lanes), lane width and position information for each lane (information on lane center positions and lane boundary lines), position information of landmarks (traffic lights, signs, buildings, etc.) on the map, and road surface profile information such as road surface irregularities. The memory unit 12 also stores various control programs, information such as thresholds used in the programs, and setting information for on-board detectors such as the LIDAR 5.

[0017] The calculation unit 11 has, as functional components, a data acquisition unit 111, an estimation unit 112, a speed calculation unit 113, a classification unit 114, an extraction unit 115, a detection unit 116, a determination unit 117, a vector calculation unit 118, a removal unit 119, and a driving control unit 120. As shown in FIG. 1 , the data acquisition unit 111, the estimation unit 112, the speed calculation unit 113, the classification unit 114, the extraction unit 115, the detection unit 116, the determination unit 117, the vector calculation unit 118, and the removal unit 119 are included in the object detection device 50. Details of the data acquisition unit 111, the estimation unit 112, the speed calculation unit 113, the classification unit 114, the extraction unit 115, the detection unit 116, the determination unit 117, the vector calculation unit 118, and the removal unit 119 included in the object detection device 50 will be described later.

[0018] In the autonomous driving mode, the driving control unit 120 generates a target trajectory based on the external conditions around the vehicle, including the size, position, relative movement speed, etc. of an object detected by the object detection device 50. Specifically, the driving control unit 120 generates a target trajectory based on the size, position, relative movement speed, etc. of the object detected by the object detection device 50, so as to avoid collision or contact with the object or to follow the object. The driving control unit 120 controls the actuator AC so that the host vehicle travels along the target trajectory. Specifically, the driving control unit 120 controls the actuator AC along the target trajectory to adjust the accelerator opening and drive the braking device and the steering device. Note that in the manual driving mode, the driving control unit 120 controls the actuator AC in accordance with a driving command (such as a steering operation) from the driver acquired by the internal sensor group 3.

[0019] The object detection device 50 will now be described in detail. As described above, the object detection device 50 includes a data acquisition unit 111, an estimation unit 112, a velocity calculation unit 113, a classification unit 114, an extraction unit 115, a detection unit 116, a determination unit 117, a vector calculation unit 118, and a removal unit 119. The object detection device 50 further includes a LIDAR 5.

[0020] The data acquisition unit 111 acquires four-dimensional data (hereinafter referred to as point cloud data) including position information indicating three-dimensional position coordinates of measurement points on the surface of an object from which reflected waves of the LIDAR 5 are obtained, and velocity information indicating the relative movement velocity of the measurement points, as detection data of the LIDAR 5. The point cloud data is acquired by the LIDAR 5 in frame units, specifically at predetermined time intervals (at time intervals determined by the frame rate of the LIDAR 5).

[0021] One method for detecting moving objects from data (point cloud data) detected by the LIDAR 5 is to perform a clustering process on the point cloud data and classify the point cloud data into measurement points corresponding to moving objects and other measurement points, thereby detecting moving objects. However, the point cloud data also includes information on measurement points corresponding to stationary objects. Therefore, if the point cloud data acquired from the LIDAR 5 is used directly in the clustering process, not only measurement point clouds corresponding to moving objects but also measurement point clouds corresponding to stationary objects will be classified, which may increase the calculation load in the clustering process. Therefore, in order to reduce the calculation load, a method can be considered in which the relative movement speed indicated by the speed information of each measurement point is converted into an absolute speed (hereinafter referred to as absolute movement speed), and the point cloud data is classified into stationary point cloud data corresponding to stationary objects and moving point cloud data corresponding to moving objects based on the absolute movement speed, and the clustering process is then performed on the classified moving point cloud data.

[0022] However, depending on the moving direction of a moving object, there are cases where the relative moving speed of the moving object cannot be measured by the LIDAR 5. FIG. 2 is a diagram for explaining the relationship between the relative moving speed of a moving object measured by the LIDAR 5 and the moving direction of the moving object. In FIG. 2, the outlined arrows indicate how the moving objects MO1 and MO2 move in the direction of the arrows. The solid arrows schematically indicate how the electromagnetic waves emitted by the LIDAR 5 are reflected by the surfaces of the moving objects MO1 and MO2 and returned. The dashed line CL1 is an imaginary line connecting points equidistant from the LIDAR 5 mounted on the host vehicle 101.

[0023] The LIDAR 5 cannot detect velocities in a direction perpendicular to the projection angle. Therefore, when the moving objects MO1 and MO2 move along the dashed line CL1 as shown in FIG. 2, their direction of movement is perpendicular to the projection angle of the LIDAR 5, and the relative movement velocities of the moving objects MO1 and MO2 measured by the LIDAR 5 remain unchanged at zero. As a result, the moving objects MO1 and MO2 are detected as stationary objects rather than moving objects, and the measurement points corresponding to the moving objects MO1 and MO2 are classified as stationary point cloud data. Therefore, in a method of performing clustering processing only on moving point cloud data, the moving objects MO1 and MO2, which move in a direction perpendicular to the projection angle of the LIDAR 5, may be excluded from the clustering processing. In this case, the moving objects MO1 and MO2 may be lost, making it impossible to accurately track them. Therefore, in this embodiment, the clustering processing on the point cloud data is performed as follows to enable accurate detection of moving objects while reducing the computational load.

[0024] 3 is a flowchart showing an example of processing executed by the CPU of the controller 10 in FIG. 1 in accordance with a predetermined program. The processing shown in this flowchart is repeated at a predetermined cycle while the object detection device 50 is running. More specifically, the processing is repeated every time the data acquisition unit 111 acquires detection data of the LIDAR 5, that is, at predetermined time intervals.

[0025] When detection data (point cloud data) from the lidar 5 is acquired, first, a process (step S1) is executed to classify the point cloud data into moving point cloud data and stationary point cloud data. Next, a moving object detection process (step S2) for the moving point cloud data and a moving object detection process (steps S31 to S33) for the stationary point cloud data are executed in parallel. Note that the detection process (step S2) and the detection process (steps S31 to S33) do not have to be executed in parallel, and one of them may be executed before the other. Next, a process (step S4) is executed to identify the same object between frames (between the current frame and the previous frame) for the detected moving object, and then a process (step S5) is executed to calculate the movement vector of the moving object identified as the same object. Note that the moving object detection process (steps S31 to S33) for the stationary point cloud data may result in erroneous detection of a moving object, which will be described later with reference to FIGS. 10A and 10B. Therefore, in order to further improve the accuracy of detecting moving objects, a process (S6) for removing the above-mentioned erroneous detections is finally executed.

[0026] In the moving object detection process for the moving point cloud data (step S2), a clustering process is performed on the moving point cloud data. In the moving object detection process for the stationary point cloud data (steps S31 to S33), first, in step S31, a predetermined scan matching process is performed to superimpose the stationary point cloud data of the previous frame on the stationary point cloud data of the current frame, thereby estimating the azimuth angle difference and movement vector of the host vehicle 101. The movement vector represents the movement direction of a representative point (such as the center of gravity) of the host vehicle 101 between frames and the movement speed in that movement direction. The azimuth angle difference is the angular difference between the azimuth (travel direction) of the host vehicle 101 in the previous frame and the azimuth in the current frame. Hereinafter, the axis along the traveling direction of the host vehicle 101 is defined as the X-axis, and the axes in the lateral and vertical directions relative to that traveling direction are defined as the Y-axis and Z-axis, respectively. The movement vector may be two-dimensional (X, Y) or three-dimensional (X, Y, Z). Furthermore, the azimuth angle difference may be a uniaxial angle (Z-axis rotation angle), a biaxial angle (X-axis rotation angle, Z-axis rotation angle), or a triaxial angle (X-axis rotation angle, Y-axis rotation angle, Z-axis rotation angle). Scan matching may use ICP (Iterative Closest Point) or NDT (Normal Distributions Transform), or other methods. Next, in step S32, distance difference values are calculated between corresponding measurement points in the previous frame and the current frame, detected by the overlay (overlay of still point cloud data of the previous frame and still point cloud data of the current frame) in the scan matching process in step S31. Then, measurement points whose distance difference values are equal to or greater than a predetermined threshold are extracted as change points. Finally, in step S33, clustering processing is performed on the extracted measurement point cloud (change point cloud). The azimuth angle difference and movement vector of the vehicle 101 estimated in step S31 are accumulated, and a self-position estimation process (not shown) is executed to estimate the vehicle's position (the traveling position of the vehicle 101) based on the accumulated azimuth angle difference and movement vector.

[0027] The processing in each step of FIG. 3 will be described in detail below. <Point Cloud Classification (S1)>

[0028] The estimation unit 112 estimates the absolute moving speed of the host vehicle 101 based on the point cloud data acquired by the data acquisition unit 111. Here, the estimation of the absolute moving speed of the host vehicle 101 by the estimation unit 112 will be described.

[0029] The estimation unit 112 extracts point cloud data from the point cloud data acquired by the data acquisition unit 111, excluding information on measurement points corresponding to three-dimensional objects, i.e., point cloud data corresponding to the road surface around the vehicle 101 (hereinafter referred to as road surface point cloud data). The road surface point cloud data may be extracted using a plane approximation method or other methods. The estimation unit 112 calculates a unit vector e i indicating the direction of the relative movement speed v i based on the road surface point cloud data, i.e., position coordinates (xi, yi, zi) included in the four-dimensional data (xi, yi, zi, vi) of measurement points Pi (i = 1, 2, ..., n) corresponding to the road surface. Specifically, the estimation unit 112 calculates the unit vector e i using the following equation (i):

[0030]

number

[0031] Next, the estimation unit 112 estimates the movement speed (absolute movement speed) Vself of the host vehicle 101. Specifically, the estimation unit 112 sets a conversion equation for converting the relative movement speed vi of the measurement points Pi corresponding to the road surface into absolute movement speed as an objective function L, and solves an optimization problem to optimize the objective function L so as to approach zero. Because the measurement points Pi are measurement points on the road surface, the absolute speed of each of these measurement points should be zero. Therefore, by optimizing the objective function L so as to approach zero, it is possible to estimate a correct Vself. Vself is expressed by velocity components in the X, Y, and Z axes as shown in the following equation (ii). The objective function L is expressed by the following equation (iii). By solving the optimization problem, Vself that makes the right-hand side of equation (iii) zero is searched for. Note that Vself may be set to zero as an initial value, or Vself estimated in the previous frame may be set.

[0032]

number

number

[0033] In equation (iii), A is a matrix of unit vectors ei of n measurement points corresponding to the road surface, and is expressed by equation (iv). Also in equation (iii), V is a 1×n matrix representing the velocity components (relative movement velocities) of n measurement points Pi corresponding to the road surface, and is expressed by equation (v). The estimation unit 112 acquires Vself obtained by solving the optimization problem as an estimate of the absolute movement velocity of the host vehicle 101 in the current frame.

[0034]

number

number

[0035] The speed calculation unit 113 calculates the absolute movement speeds of all measurement points, more specifically, all measurement points including measurement points corresponding to three-dimensional objects, based on the absolute movement speed Vself of the host vehicle 101 estimated by the estimation unit 112. Here, the calculated absolute movement speed has a negative value when approaching the host vehicle, and a positive value when moving away.

[0036] The classification unit 114 classifies the point cloud data acquired by the data acquisition unit 111 into moving point cloud data corresponding to measurement points where the absolute value of the absolute movement speed calculated by the speed calculation unit 113 is equal to or greater than a predetermined speed Th_V, and still point cloud data corresponding to measurement points where the absolute value is less than the predetermined speed Th_V. <Estimation of movement vector (S31)>

[0037] 4, 5A, 5B, 6A, and 6B are diagrams for explaining the process (step S31) of estimating the movement vector and azimuth angle of the host vehicle 101 between frames by the estimation unit 112. In FIG. 4, the arrow attached to the host vehicle 101 represents the movement direction (direction of travel) of the host vehicle 101, i.e., the X-axis direction. The lateral direction (left-right direction in FIG. 4) and the vertical direction (from back to front in FIG. 4) relative to the X-axis direction represent the Y-axis direction and the Z-axis direction. The definitions of the X-axis, Y-axis, and Z-axis directions are the same in other figures, so the X-axis, Y-axis, and Z-axis are omitted in those figures. FIG. 4 shows an example of a schematic diagram of point cloud data acquired by the LIDAR 5 at a past point in time (time t1) viewed from above (Z-axis direction). Regions N1 to N6 schematically represent measurement point clouds corresponding to stationary objects, more specifically, the positions and sizes of the measurement point clouds. Stationary objects include the road surface on which the vehicle 101 is traveling, structures such as walls and median strips installed on the side of the road, and other vehicles parked on the shoulder of the road. Areas M31 and M32 schematically represent measurement point clouds corresponding to moving objects, more specifically, the positions and sizes of the measurement point clouds. Note that, hereinafter, objects detected by the lidar 5 include people as well. Therefore, moving objects include not only vehicles such as moving cars and bicycles, but also moving people (pedestrians, etc.). Arrows attached to areas M31 and M32 indicate the direction of movement of the moving objects.

[0038] Fig. 5A schematically shows the stationary point cloud data classified from the point cloud data of Fig. 4, i.e., point cloud data acquired by the LIDAR 5 at a past time point (time t1). Fig. 5B schematically shows the stationary point cloud data classified from the point cloud data acquired by the LIDAR 5 at the present time point (time t2) a predetermined time has elapsed since a predetermined time point in the past (time t1).

[0039] The estimation unit 112 first aligns the still point cloud data of the previous frame (FIG. 5A) with the still point cloud data of the current frame (FIG. 5B) to estimate the azimuth angle difference and movement vector of the host vehicle 101 over a predetermined time (between frames). FIGS. 6A and 6B schematically illustrate how the still point cloud data of the previous frame (FIG. 5A) and the still point cloud data of the current frame (FIG. 5B) are aligned. In FIG. 6A, the still point cloud data of the previous frame is indicated by a dashed line, and the still point cloud data of the current frame is indicated by a solid line. The estimation unit 112 searches for (estimates) the azimuth angle difference and movement vector of the host vehicle 101 such that the measurement point clouds N1 to N6 of the previous frame, indicated by dashed lines, overlap (match) with the measurement point clouds N1 to N6 of the current frame, indicated by solid lines. FIG. 6B illustrates the aligned still point cloud data of the previous frame and the still point cloud data of the current frame. In FIG. 6B, angle MA represents the azimuth angle difference of the host vehicle 101 between frames. The white arrow MV represents the movement vector of the host vehicle 101 between frames. The white circle in the figure schematically represents the center of gravity of the host vehicle 101. The estimation unit 112 solves an optimization problem that minimizes the deviation (error) between the positions of the measurement point group N1 to N6 in the previous frame after alignment and the positions of the measurement point group N1 to N6 in the current frame, and outputs the final search result (estimation result) of the azimuth angle difference and movement vector of the host vehicle 101. Note that, to reduce the calculation load, the above alignment may be performed after converting the three-dimensional point cloud data into two-dimensional point cloud data represented in an XY coordinate system. <Extraction of change points (S32)>

[0040] 7 and 8 are diagrams for explaining the change point extraction process (step S32). FIG. 7 shows another example of a schematic diagram of point cloud data acquired by the LIDAR 5 at a past point in time (time t1) viewed from above (in the Z-axis direction). The point cloud data shown in FIG. 7 is similar to the point cloud data shown in FIG. 4, but the point cloud data shown in FIG. 7 includes a measurement point cloud (region M33) corresponding to a moving object moving in a direction perpendicular to the projection angle of the LIDAR 5. The shaded region in FIG. 7 represents a measurement point cloud classified as stationary point cloud data. As described above, the LIDAR 5 cannot detect the velocity in the direction perpendicular to the projection angle. Therefore, as shown in FIG. 7, the object corresponding to region M33 is erroneously detected as a stationary object rather than a moving object. Therefore, in order to detect the object corresponding to region M33 as a moving object, the extraction unit 115 calculates the amount of change (amount of movement) in the position of each measurement point of the stationary point cloud data between frames (a predetermined time), and extracts measurement points where the amount of change is equal to or greater than a predetermined threshold as change points. FIG. 8 shows how change points are extracted from still point cloud data. In FIG. 8, the still point cloud data of the previous frame (FIG. 7) is indicated by a dashed line, and the still point cloud data of the current frame is indicated by a solid line. FIG. 8 also shows a state in which the point cloud data of the previous frame is aligned with the point cloud data of the current frame using the movement vector and azimuth angle difference of the host vehicle estimated by the estimation unit 112. As shown in FIG. 8, the position of the measurement point group M33 corresponding to the moving object erroneously detected as a stationary object changes significantly between frames compared to the other measurement point groups N1 to N6. Therefore, each measurement point of the measurement point group M33 is extracted as a change point by the extraction unit 115. Hereinafter, the point cloud data corresponding to the change points (change point group) extracted by the extraction unit 115 will be referred to as change point group data. <Clustering process (S2, S33)>

[0041] In step S2, the detection unit 116 performs a clustering process on the moving point cloud data (the moving point cloud data classified from the point cloud data of the current frame in step S1). In addition, in step S33, the detection unit 116 performs a clustering process on the changing point cloud data extracted from the still point cloud data (the still point cloud data classified from the point cloud data of the current frame in step S1). As a result, bounding boxes (circumscribed areas) corresponding to each of the measurement point clouds M31 and M32 are detected from the moving point cloud data, and a bounding box corresponding to the measurement point cloud M33 is detected from the changing point cloud data. The detection unit 116 detects the position and size of the detected bounding boxes as the position and size of the moving object. In this way, the moving object included in the three-dimensional space around the host vehicle 101 is detected. The detection unit 116 outputs information (such as image information) indicating the detection result of the moving object to a display device (not shown) or the like. The clustering process performed by the detection unit 116 may use any method, such as density-based spatial clustering of applications with noise (DBSCAN) or the K-means method. <Identification of the same object (S4)>

[0042] The determination unit 117 determines whether the moving object detected in the previous frame and the moving object detected in the current frame are the same object.

[0043] Specifically, first, the determination unit 117 executes an offset rotation process to offset (translate) and rotate each bounding box detected by the clustering process by the detection unit 116 in the previous frame based on the movement vector and azimuth angle difference of the host vehicle 101 between frames estimated in step S31. In the offset rotation process, the determination unit 117 first offsets each bounding box detected in the previous frame according to the movement vector and rotates it by the azimuth angle difference. Next, the determination unit 117 further offsets each of the offset and rotated bounding boxes based on the movement vector of the corresponding moving object. Specifically, the bounding boxes of the measurement point groups M31, M32, and M33 are further offset by a movement amount obtained by multiplying the vector amount of the movement vector of the moving object corresponding to the measurement point groups M31, M32, and M33 by the frame time (predetermined time). The movement vector of the moving object will be described later.

[0044] As described above, the determination unit 117 overlays each bounding box of the previous frame, which has been subjected to offset rotation processing based on the movement vector and azimuth angle difference of the host vehicle 101 and offset processing based on the movement vector of the moving object, onto the current frame. If, as a result of the overlay, there is a bounding box in the current frame that overlaps with the bounding box of the previous frame that has been subjected to offset rotation processing and offset processing, the determination unit 117 determines that the moving objects corresponding to the overlapping bounding boxes are the same object. Note that the determination of whether the bounding boxes overlap may be made based on whether the overlap rate is equal to or greater than a predetermined threshold, or based on whether the distance between the centers of gravity of the bounding boxes is less than a predetermined length. <Calculation of movement vector (S5)>

[0045] The vector calculation unit 118 calculates the movement vector of the moving object based on the determination result of the determination unit 117. Calculation of the movement vector of the moving object will be described with reference to FIG. 9. FIG. 9 is a diagram for explaining the movement vector of the moving object. In FIG. 9, point cloud data of the previous frame is indicated by a dashed line, and point cloud data of the current frame is indicated by a solid line. FIG. 9 also shows a state in which the point cloud data of the previous frame, which has been subjected to offset rotation processing based on the movement vector and azimuth angle difference of the host vehicle 101, is superimposed on the point cloud data of the current frame. White circles G1, G2, and G3 represent the centers of gravity of the measurement point groups M31, M32, and M33, or more specifically, the centers of gravity of the bounding boxes of the measurement point groups M31, M32, and M33 detected by the clustering processing by the detection unit 116. The vector calculation unit 118 calculates the movement vector of the moving object corresponding to the measurement point groups M31, M32, and M33 based on the positional relationship between the centers of gravity G1, G2, and G3 between frames (between the previous frame and the current frame). The vector calculation unit 118 stores the calculated movement vector of the moving object in the memory unit 12 together with information (identifier) that can identify the moving object. The movement vector of the moving object stored in the memory unit 12 is used in the offset process based on the movement vector of the next moving object, i.e., the offset process in step S4 that is executed for the next frame. This makes it possible to accurately identify the same object in the next frame, and to properly track the position, movement direction, and movement speed of the moving object. <Removal of erroneously detected moving objects (S6)>

[0046] 10A and 10B are diagrams for explaining erroneous detection of a moving object in the moving object detection process for change point cloud data. Fig. 10A shows an example of a schematic diagram of the space ahead of the host vehicle 101 at a past point in time (time t1) as viewed from above (Z-axis direction). Objects OB1 to OB6 in Fig. 10A schematically represent stationary objects corresponding to the measurement point clouds N1 to N6 in Fig. 7. Object OB33 schematically represents a moving object corresponding to the measurement point cloud M33 in Fig. 7.

[0047] As shown in FIG. 10A , when objects OB2 and OB3 exist between object OB1 and the host vehicle 101, object OB1 is hidden behind objects OB2 and OB3, and the electromagnetic waves irradiated by the LIDAR 5 reach only a partial area of the object OB1. In this case, the measurement point cloud corresponding to object OB1 is not a measurement point cloud corresponding to the entire object OB1 like the measurement point cloud N1 in FIG. 7 , but rather a measurement point cloud corresponding to a portion of object OB1, specifically, a measurement point cloud corresponding to the area reached by the electromagnetic waves irradiated by the LIDAR 5. Note that, for the sake of simplicity, FIG. 10A illustrates only measurement point fp1 as the measurement point cloud corresponding to object OB1 acquired at this time. Also, for the sake of simplicity, FIG. 10A omits the depiction of measurement point clouds corresponding to objects other than object OB1.

[0048] 10B shows an example of a schematic diagram of the space ahead of the host vehicle 101 as viewed from above (in the Z-axis direction) at the present time (time t2) a predetermined time after a predetermined time in the past (time t1). As the host vehicle 101 moves between time t1 and time t2, as shown in FIG. 10B, the electromagnetic waves emitted by the lidar 5 reach the area that was hidden behind the objects OB2 and OB3 at time t1. As a result, as shown in FIG. 10B, at time t2, measurement points fp1_1 to fp1_5 are acquired as the measurement point cloud corresponding to the object OB1. Note that the measurement point fp1_1 in FIG. 10B corresponds to the measurement point fp1 in FIG. 10A.

[0049] In the scan matching process executed in step S31, measurement point fp1 in Fig. 10A should be associated with measurement point fp1_1 in Fig. 10B. However, as shown in Fig. 10B, if measurement points fp1_2 to fp1_5 that were not acquired at time t1 are newly acquired due to movement of the host vehicle 101, measurement point fp1 may be associated with one of measurement points fp1_2 to fp1_5 rather than measurement point fp1_1. In this case, it is erroneously determined that the position of measurement point fp1 has changed between frames (a predetermined time). Furthermore, if the amount of change (amount of movement) is equal to or greater than a predetermined threshold, one of measurement points fp1_2 to fp1_5 is erroneously detected as a change point in step S32. In this way, if the measurement points (measurement points fp1_2 to fp1_5 in the example of Figure 10B) corresponding to an area that has newly been included in the field of view (FOV) of the rider 5 due to the movement of the vehicle 101 are erroneously extracted as change points, then in step S33, the object OB1, which is a stationary object, is erroneously detected as a moving object corresponding to the group of change points.

[0050] Therefore, the removal unit 119 identifies the moving object that was erroneously detected as described above from among the moving objects detected in step S33 (hereinafter referred to as candidate moving objects) as follows. Then, the removal unit 119 removes the erroneously detected moving object. Specifically, the removal unit 119 deletes information about the erroneously detected moving object (the identifier and movement vector of the moving object stored in the storage unit 12 in step S5) from the storage unit 12.

[0051] 11A and 11B are diagrams illustrating an example of a method for identifying a moving object that has been erroneously detected. The removal unit 119 determines whether the angle formed between the movement vector of the moving object corresponding to the change point cloud, calculated in the movement vector calculation (S5), and a line segment connecting the LIDAR 5 and a representative point (e.g., center of gravity) of the moving object, is within the angle range AR. As shown in FIG. 11A, the angle range AR is a range of angles d1 to d2 with respect to the line segment L connecting the LIDAR 5 and a representative point of the object OB to be determined. The angle d1 is, for example, 60°, and the angle d2 is, for example, 120°. Note that the angles d1 and d2 may be other values. When the angle formed between the movement vector of the object OB and the line segment L is within the angle range AR, the removal unit 119 determines that the object OB has moved in a direction perpendicular to the light projection angle of the LIDAR 5, and therefore the measurement point cloud corresponding to the object OB has been extracted as a change point cloud in step S32. In this case, the removal unit 119 determines that the object OB is a true moving object. On the other hand, if the angle is outside the angle range AR, it is determined that the measurement point cloud corresponding to object OB was erroneously extracted as a change point cloud in step S32 due to the movement of the host vehicle 101, and object OB is determined to be a falsely detected moving object. More specifically, if the angle is outside the angle range AR, if the object is actually moving, the relative movement speed of the object should be equal to or greater than a threshold in step S1, and the measurement point cloud corresponding to the object should be classified as moving point cloud data. Therefore, an object that was determined to be stationary point cloud data in step S1 but whose angle is outside the angle range AR can be determined to be a falsely detected moving object. In the example shown in FIG. 11B, the angle formed by the line segment connecting the host vehicle 101 (rider 5) and objects OB11 and OB12 and the movement vectors of objects OB11 and OB12 is within the angle range AR, so both objects OB11 and OB12 are determined to be true moving objects. On the other hand, since the angle formed by the line segment connecting the host vehicle 101 (lidar 5) and the object OB13 and the movement vector of the object OB13 is outside the angle range AR, the object OB13 is determined to be a moving object that has been erroneously detected. In this way, the moving object that has been erroneously detected is identified from among the candidate moving objects. Note that the dashed lines in the figure are virtual lines connecting points that are equidistant from the lidar 5 mounted on the host vehicle 101.Moreover, the white arrows in the figure schematically represent the movement vectors of each object.

[0052] 12 is a diagram illustrating another example of a method for identifying a moving object that has been erroneously detected. The removal unit 119 may determine whether or not the object OB is a moving object that has been erroneously detected, based on a component Vcosθ of the magnitude (velocity) V of the movement vector of the object OB to be determined, on the line segment L. The angle θ is the angle between the line segment L and the movement vector. When the absolute value of Vcosθ is equal to or greater than a predetermined velocity Th_V, the removal unit 119 determines that the object OB is a moving object that has been erroneously detected, because the measurement point cloud corresponding to the object OB should have already been classified as moving point cloud data in step S1.

[0053] In step S6, the removal unit 119 may remove not only moving objects that are erroneously detected, but also moving objects that are unlikely to approach or collide with the host vehicle 101. Specifically, the removal unit 119 determines the possibility of approaching or colliding between the moving object (candidate moving object) detected in step S33 and the host vehicle 101 based on the moving direction and position of the moving object. When the possibility of approach or collision is less than a predetermined level, the removal unit 119 may remove the moving object from the candidate moving objects. Specifically, information about the moving object (the identifier and movement vector of the moving object stored in the storage unit 12 in step S5) may be deleted from the storage unit 12. FIGS. 13A, 13B, and 13C are diagrams for explaining the degree of possibility of the host vehicle 101 approaching or colliding with a moving object.

[0054] The dashed lines BL and BR shown in FIG. 13A are straight lines aligned along the vehicle length direction of the host vehicle 101, and are a pair of left and right straight lines with a width equal to the road width (lane width) or a preset width. The dashed lines DL and DR are boundary lines for determining whether a moving object is to be removed. The removal unit 119 determines whether the degree of possibility of approaching or colliding with the host vehicle 101 is equal to or greater than a predetermined level based on the boundary lines DL and DR, and selects a moving object whose degree of possibility is less than the predetermined level as a moving object to be removed. Specifically, the removal unit 119 determines a moving object that exists outside the boundary lines DL and DR and whose movement vector does not point toward the inside of the boundary lines DL and DR, i.e., a moving object that does not enter the area between the boundary lines DL and DR when moving in the direction of its movement vector, as a moving object whose degree of possibility of approaching or colliding with the host vehicle 101 is less than the predetermined level, and selects the moving object as a moving object to be removed. The outline arrows in the figure schematically represent the movement vector of each object. When the host vehicle 101 is traveling straight, the boundary lines DL, DR are set with a margin of a predetermined angle FA from the dashed lines BL, BR in the traveling direction of the host vehicle 101, as shown in Fig. 13A. In the example shown in Fig. 13A, of the moving objects MO71 to MO76 that are candidate moving objects, the moving objects MO71 and MO75 are selected as objects to be removed and are removed from the candidate moving objects. The square frames in the figure schematically show how the moving objects MO71 and MO75 are selected as objects to be removed.

[0055] FIG. 13B shows a state in which the host vehicle 101 is traveling while turning left. As shown in FIG. 13B, when the host vehicle 101 turns left, the removal unit 119 changes the left boundary line DL. Specifically, the removal unit 119 sets the boundary line DL as shown in FIG. 13B according to the curve curvature of the host vehicle 101. The curve curvature may be calculated based on a target trajectory of the host vehicle 101, or may be calculated based on sensor values of the internal sensor group 3 (such as a yaw rate sensor, a vehicle speed sensor, and a steering angle sensor). The removal unit 119 selects, as a removal target, a moving object that exists outside the boundary line DL and whose movement vector is not pointing inside the boundary lines DL, DR. In the example shown in FIG. 13B, among the moving objects MO81 to MO85 that are candidate moving objects, the moving object MO81 is determined to have a degree of possibility of approaching or colliding with the host vehicle 101 that is less than a predetermined degree, and is selected as a removal target.

[0056] Fig. 13C shows how the host vehicle 101 travels while turning right. When the host vehicle 101 turns right, the removal unit 119 changes the right boundary line DR as shown in Fig. 13C. As with the left boundary line DL, the removal unit 119 sets the right boundary line DR in accordance with the curvature of the curve of the host vehicle 101. In the example shown in Fig. 13C, of the moving objects MO91 to MO95 that are candidate moving objects, the moving object MO95 is determined to have a degree of possibility of approaching or colliding with the host vehicle 101 that is less than a predetermined degree, and is selected as a target for removal.

[0057] According to the embodiment described above, the following advantageous effects are achieved. (1) The object detection device 50 is mounted on a host vehicle 101 as a moving body, and includes a lidar 5 as a detector that irradiates electromagnetic waves around the host vehicle 101 and detects the external environment around the host vehicle 101 based on the reflected waves; a data acquisition unit 111 that acquires point cloud data at predetermined time intervals, including position information of measurement points on the surface of the object from which the reflected waves are obtained and first speed information indicating the relative movement speed of the measurement points detected by the lidar 5; an estimation unit 112 as a speed acquisition unit that acquires second speed information indicating the absolute movement speed of the host vehicle 101; a speed calculation unit 113 that calculates the absolute movement speed of each of the multiple measurement points corresponding to the point cloud data based on the first speed information and the second speed information; and The system includes a classification unit 114 that classifies the point cloud data acquired by 111 into moving point cloud data as first point cloud data corresponding to measurement points on the surface of an object where the absolute value of the absolute moving speed calculated by the speed calculation unit 113 is equal to or greater than a predetermined speed, and still point cloud data as second point cloud data other than the first point cloud data, an extraction unit 115 that calculates the amount of movement of the measurement points corresponding to the still point cloud data in a predetermined time and extracts, from the still point cloud data, change point cloud data as predetermined point cloud data corresponding to the measurement points where the amount of movement is equal to or greater than a predetermined value, and a detection unit 116 that identifies moving objects among the objects detected by the LIDAR 5 based on the moving point cloud data and the change point cloud data. The moving objects include a first moving object identified based on the moving point cloud data (e.g., a moving object corresponding to the measurement point cloud M31, M32 in FIG. 7) and a second moving object identified based on the change point cloud data (e.g., a moving object corresponding to the measurement point cloud M33 in FIG. 7). The detection unit 116 extracts candidate moving objects that are candidates for the second moving object from among the objects detected by the LIDAR 5 based on the change point cloud data, and determines whether the candidate moving object is the second moving object based on at least one of the moving speed and moving direction of the measurement point corresponding to the candidate moving object. This makes it possible to prevent a stationary object from being erroneously detected as a moving object due to a change in the FOV of the LIDAR 5. It also makes it possible to prevent a moving object that moves in a direction perpendicular to the projection angle of the LIDAR 5 from being erroneously detected as a stationary object. As a result, moving objects can be detected with high accuracy.

[0058] (2) When the angle between the movement direction of the candidate moving object extracted from the change point cloud data and the line segment connecting the candidate moving object and the LIDAR 5 is within a predetermined angle range AR, the detection unit 116 determines that the candidate moving object is a second moving object. This allows the moving object to be identified with high accuracy even when the FOV of the LIDAR 5 changes.

[0059] (3) The detection unit 116 determines the possibility of an object detected as a candidate moving object based on the specified point cloud data being close to or colliding with the vehicle 101 based on the direction of movement and position of the object, and removes from the candidate moving objects any object for which the possibility is less than a specified level. This reduces the number of candidate moving objects, thereby reducing the processing load for determining whether a moving object has been detected incorrectly.

[0060] (4) The estimation unit 112 estimates the absolute moving speed of the host vehicle 101 based on the position information and speed information of the representative measurement point extracted from the point cloud data acquired by the data acquisition unit 111, and acquires the estimated result as speed information. The representative measurement point is selected from the remaining measurement points after excluding measurement points corresponding to three-dimensional objects from the multiple measurement points. This allows the absolute moving speed of the host vehicle 101 to be estimated based on the measurement point corresponding to the road surface. As a result, the absolute moving speed of the host vehicle 101 can be estimated with high accuracy. Furthermore, since the absolute moving speed of the host vehicle (moving body) 101 is estimated and acquired without relying on sensor values such as a vehicle speed sensor, the present invention can also be applied to self-propelled robots that do not have a vehicle speed sensor, etc.

[0061] The above-described embodiment can be modified into various forms. Modifications will be described below. In the above-described embodiment, a LIDAR 5 as a detector is mounted on a vehicle, and irradiates electromagnetic waves into a three-dimensional space around the vehicle and detects the external environment around the vehicle based on the reflected waves. However, the detector may be a device other than a LIDAR, such as a radar. Furthermore, the moving body on which the detector is mounted may be a device other than a vehicle, such as a self-propelled robot.

[0062] In the above embodiment, the estimation unit 112 as a speed acquisition unit selects a measurement point Pi as a representative measurement point from the remaining measurement points excluding measurement points corresponding to three-dimensional objects from the multiple measurement points, and estimates the absolute movement speed of the host vehicle 101 based on the position information and speed information of the representative measurement point extracted from the point cloud data acquired by the data acquisition unit 111, and acquires the estimation result as the second speed information. However, the speed acquisition unit may acquire, as the second speed information, a measurement result of the absolute movement speed of the host vehicle 101 acquired by a measuring instrument included in the internal sensor group 3. In this case, the object detection device 50 includes at least a vehicle speed sensor among the internal sensor group 3 as a measuring instrument. In addition, the speed acquisition unit may calculate and acquire the absolute movement speed of the host vehicle 101 based on the current position of the host vehicle 101 measured by the positioning unit 2. In this case, the object detection device 50 includes the positioning unit 2.

[0063] In the above embodiment, the detection unit 116 performs a predetermined clustering process on the three-dimensional point cloud data (movement point cloud data and change point cloud data) to detect moving objects from the three-dimensional point cloud data. However, the detection unit may generate velocity-added data (XYV data) by adding the absolute movement speed of each measurement point calculated by the speed calculation unit 113 to two-dimensional point cloud data obtained by projecting each measurement point corresponding to the three-dimensional point cloud data onto the XY plane, and perform a predetermined clustering process on the velocity-added data. This allows the clustering process to be performed taking into account the position and movement speed of the moving object. As a result, it is possible to prevent multiple moving objects that are close to each other, such as two moving objects passing each other, from being detected as a single moving object, thereby further improving the detection accuracy of moving objects. In addition, when precision in the cluster size in three-dimensional space (XYZ space) is required, the detection unit may generate velocity-added data (XYZV data) by adding the absolute movement velocity of each measurement point calculated by the velocity calculation unit 113 to the three-dimensional point cloud data, and perform a predetermined clustering process on the velocity-added data.

[0064] In the above embodiment, the detection unit 116, which serves as a moving object identification unit, is configured to remove from the candidate moving objects those objects detected as candidate moving objects based on the specified point cloud data that have a lower than predetermined likelihood of approaching or colliding with the vehicle 101. However, the moving object identification unit may also remove from the candidate moving objects those objects detected as candidate moving objects based on the specified point cloud data whose width and height do not satisfy predetermined criteria. The moving object identification unit determines that the width and height of an object do not satisfy the predetermined criteria when the width of the object is less than a first reference value and the height of the object is equal to or greater than a second reference value. The first and second reference values are set in advance so that moving objects that cannot actually exist on or around the road are removed from the candidate moving objects. The first and second reference values are, for example, 1.5 meters, and the second reference value is, for example, 2.5 meters. Note that the first and second reference values are not limited to these. This further reduces the number of candidate moving objects, thereby further reducing the processing load for determining whether a moving object has been detected erroneously.

[0065] In the above embodiment, the estimation unit 112 performs alignment between the still point cloud data of the previous frame ( FIG. 5A ) and the still point cloud data of the current frame ( FIG. 5B ) to estimate the azimuth angle difference and movement vector of the host vehicle 101 at a predetermined time (between frames). However, the estimation unit may perform the alignment after converting the three-dimensional still point cloud data into two-dimensional still point cloud data represented in an XY coordinate system. Furthermore, the estimation unit may perform the alignment using not only the still point cloud data of a past time point (time t1) but also still point cloud data of multiple past time points, i.e., not only the still point cloud data of the previous frame but also still point cloud data of multiple past frames. In this way, by using the still point cloud data of multiple past frames, the alignment can be performed well even when a stationary object ahead of the host vehicle 101 is temporarily occluded by another vehicle or the like, thereby improving robustness.

[0066] In the above embodiment, the driving control unit 120 controls the driving of the host vehicle 101 so as to avoid a collision with or contact with an object detected by the detection unit 116. However, the driving control unit 120 may function as a notification unit and predict the possibility of a collision with or contact with a moving object based on the size, position, and moving speed of the moving object detected by the detection unit 116. When the possibility of a collision with or contact with a moving object is equal to or greater than a predetermined level, the driving control unit 120 may notify the occupants of the host vehicle 101 of warning information (video information or audio information) regarding the collision with or contact with the moving object detected by the detection unit 116 via a display or speaker (not shown) provided in the vehicle control device 100.

[0067] Furthermore, in the above embodiment, the object detection device 50 is applied to an autonomous vehicle, but the object detection device 50 can also be applied to vehicles other than autonomous vehicles. For example, the object detection device 50 can also be applied to a manually driven vehicle equipped with an ADAS (Advanced Driver-Assistance Systems). The above description is merely an example, and the present invention is not limited to the above-described embodiment and modifications, as long as the features of the present invention are not impaired. One or more of the above-described embodiment and modifications can be arbitrarily combined, and modifications can also be combined with each other. [Explanation of symbols]

[0068] 1 communication unit, 2 positioning unit, 3 internal sensor group, 4 camera, 5 lidar, 10 controller, 11 calculation unit, 12 memory unit, 111 data acquisition unit, 112 estimation unit, 113 speed calculation unit, 114 classification unit, 115 extraction unit, 116 detection unit, 117 determination unit, 118 vector calculation unit, 119 removal unit, 120 driving control unit, 50 object detection device, 100 vehicle control device, AC actuator

Claims

1. a detector mounted on the moving body, which irradiates electromagnetic waves around the moving body and detects an external environment around the moving body based on reflected waves; a data acquisition unit that acquires point cloud data at predetermined time intervals, the point cloud data including position information of measurement points on the surface of the object from which the reflected waves are obtained, detected by the detector, and first speed information indicating relative movement speeds of the measurement points; a speed acquisition unit that acquires second speed information indicating an absolute moving speed of the moving object; a calculation unit that calculates an absolute movement speed of each of the plurality of measurement points corresponding to the point cloud data based on the first speed information and the second speed information; a classification unit that classifies the point cloud data acquired by the data acquisition unit into first point cloud data corresponding to the measurement points on the surface of the object where the absolute value of the absolute movement speed calculated by the calculation unit is equal to or greater than a predetermined speed, and second point cloud data other than the first point cloud data; an extracting unit that calculates the amount of movement of the measurement points corresponding to the second point cloud data during the predetermined time, and extracts, from the second point cloud data, predetermined point cloud data corresponding to the measurement points whose amount of movement is equal to or greater than a predetermined value; a moving object identifying unit that identifies a moving object among the objects detected by the detector based on the first point cloud data and the predetermined point cloud data, the moving objects include a first moving object identified based on the first point cloud data and a second moving object identified based on the predetermined point cloud data; The object detection device is characterized in that the moving object identification unit extracts a candidate moving object that is a candidate for the second moving object from among the objects detected by the detector based on the specified point cloud data, and determines whether the candidate moving object is the second moving object based on at least one of the movement speed and movement direction of the measurement point corresponding to the candidate moving object.

2. 2. The object detection device according to claim 1, The object detection device is characterized in that the moving object identification unit determines that the candidate moving object is the second moving object when the angle between the movement direction of the candidate moving object extracted from the specified point cloud data and the line segment connecting the candidate moving object and the detector is within a specified angle range.

3. 2. The object detection device according to claim 1, The object detection device is characterized in that the moving object identification unit determines the possibility of approaching or colliding between the object extracted as the candidate moving object based on the specified point cloud data and the moving body based on the movement direction and position of the object, and removes from the candidate moving objects any object for which the possibility is less than a specified level.

4. 2. The object detection device according to claim 1, The object detection device is characterized in that the moving object identification unit removes from the candidate moving objects, among the objects detected by the detector, objects whose width and height do not satisfy predetermined standards.

5. 2. The object detection device according to claim 1, the speed acquisition unit estimates an absolute moving speed of the moving object based on the position information of the representative measurement point and the first speed information extracted from the point cloud data acquired by the data acquisition unit, and acquires the estimation result as the second speed information; The object detection device is characterized in that the representative measurement point is selected from the remaining measurement points excluding the measurement point corresponding to the three-dimensional object from the plurality of measurement points.

6. The object detection device according to any one of claims 1 to 5, An object detection device, characterized in that the detector is a lidar.

Citation Information

Patent Citations

  • 3D multi-object detecting apparatus and method for autonomous driving

    JP2023027736A