Mode of execution
Embodiments of the present disclosure will be described in more detail below with reference to the accompanying drawings. While certain embodiments of the present disclosure are shown in the drawings, it is to be understood that the present disclosure may be embodied in various forms and should not be construed as being limited to the embodiments set forth herein. Rather, these embodiments are provided for the thorough and complete understanding of the present disclosure. It should be understood that the drawings and examples of the present disclosure are for illustrative purposes only and are not intended to limit the scope of the present disclosure.
It should also be noted that, for ease of description, only parts related to the relevant invention are shown in the drawings. In the case of no conflict, the embodiments in the present disclosure and the features in the embodiments may be combined with each other.
It is to be noted that '1st' is referred to in the present disclosure. The concept of '2nd' is only used to distinguish different devices, modules, or units, and is not intended to limit the order of functions performed by these devices, modules or units or dependency relationship to each other.
It is to be noted that the modifications of 'one', 'a plurality' mentioned in this disclosure are schematic and non-limiting, and it will be understood by those skilled in the art that 'one or more' should be understood unless the context clearly dictates otherwise.
The names of messages or information that are interacted among the multiple devices in the embodiment of the present disclosure are for illustrative purposes only and are not intended to limit the scope of such messages or information.
The present disclosure will be described in detail below with reference to the accompanying drawings and in conjunction with embodiments.
1 Is a schematic diagram of an application scenario of an obstacle detection method according to some embodiments of the present disclosure.
In the application scenario of FIG. 1, first, the computing device 101 may acquire the environmental point cloud data set 102, wherein the environmental point cloud data includes a coordinate value, a vertical coordinate value, a vertical coordinate value, and a radar echo power value. Second, the invention will be described. The computing device 101 may perform a cropping process on the set 102 of environmental points cloud data to generate a set 103 of cropped environmental points. The computing device 101 may then perform downsampling processing on the clipped environmental point cloud data set 103 to generate a reduced sampled environmental point cloud data set 104. Further, the computing device 101 may input the downsampled environmental point cloud data set 104 to the obstacle detection model 105 to generate an obstacle information set 106. Next, the computing device 101 may filter the obstacle information in the obstacle information set 106 described above to generate a set 107 of filtered obstacle information. Finally. The computing device 101 may send the filtered obstacle information set 108 to the control planning terminal 107 through the onboard communication module 109.
It should be noted that the computing device 101 may be hardware or software. When the computing device is hardware, a distributed cluster consisting of multiple servers or terminal devices may be implemented, or a single server or a single terminal device may also be implemented. When the computing device is embodied as software, it may be installed in the hardware devices listed above. It may be implemented, for example, as a plurality of software or software modules for providing distributed services, or may be implemented as a single software or software module. This is not specifically defined herein.
It should be understood that the number of computing devices in FIG. 1 is merely illustrative. There may be any number of computing devices depending on the implementation requirements.
With continued reference to FIG. 2, a flow 200 of some embodiments of an obstacle detection method according to the present disclosure is shown. The obstacle detection method includes the following steps.
Step 201: obtaining an environmental point cloud data set.
In some embodiments, the execution subject of the obstacle detection method (the computing device 1 described above in FIG. 101) may acquire the set of environmental point cloud data by a wired connection or a wireless connection. The target vehicle coordinate system may include a coordinate value, a vertical coordinate value, a vertical coordinate value, a radar echo power value, and a coordinate value included in a target vehicle coordinate system.
In step 202, the set of environmental point cloud data is tailored to generate the cropped environmental point cloud data set.
In some embodiments, the execution subject may perform a cropping process on the set of environmental point cloud data in various ways to generate the cropped environmental point cloud data set.
In an alternative implementation of some embodiments, the execution subject performs a trimming process on the set of environmental point cloud data to generate the cropped environmental point cloud data set, and may include the following steps.
The first Steps to acquire a lateral sensing distance and a sensing radius of the laser radar. The lateral sensing distance may be a maximum sensing distance on the left side or the right side of the target vehicle. The sensing radius of the laser radar may be a maximum sensing distance of the laser radar.
The second The non-cropping area is determined based on the lateral sensing distance and the sensing radius.
Alternatively, the above-described execution body may determine the non-cropping area (shaded part as shown in 3) by the following formula based on the lateral sensing distance and the sensing radius.
Herein TR represents the lateral sensing distance described above. X represents abscissas included in the cloud data of the environmental point in the set of environmental point cloud data. Y represents ordinates included in the cloud data of the environmental point in the set of environmental point cloud data. R represents the above perceived radius. CH denotes a vehicle body length of the target vehicle.
The third The environmental point cloud data falling into the non-cutting area is selected as the cropped environmental point cloud data from the environment point cloud data set, and the cropped environment point cloud data set is obtained.
As an example, the cropped environment point cloud data set may be obtained from the environment point cloud data included in the cloud data set of the environment point and the environmental point cloud data which fall into the non-cutting area as the cropped environmental point cloud data.
Step 203: downsampling the cropped ambient point cloud data set to generate a set of downsampled environmental point cloud data.
In some embodiments, the execution subject performs down-sampling processing on the cropped ambient point cloud data set to generate a reduced-sampled environmental point cloud data set, which may include the following steps.
The first Steps to obtain ground information in a high-precision map.
The second Next, a fitting plane is constructed based on the above ground information.
The third The environmental point cloud data falling into the fitting plane in the set of environmental point cloud data is removed to generate a reduced sampled environmental point cloud data set.
In some alternative implementations of some embodiments, the execution subject performs down-sampling processing on the cropped ambient point cloud data set to generate a reduced-sampled environmental point cloud data set, which may include the following steps.
The first An octree is constructed based on the clipped environment point cloud data set and a preset maximum recursion depth.
The second The environmental point cloud data contained in the octree is determined as the downsampled environmental point cloud data, and the sampled environmental point cloud data set is obtained.
In step 204, the downsampled environmental point cloud data set is input to an obstacle detection model to generate an obstacle information set.
In some embodiments, the execution subject may input a set of downsampled environmental point cloud data to an obstacle detection model to generate an obstacle information set. The obstacle detection model may include a roll-up layer, a pooling layer, and a full-connection layer. The volume layer is used for feature extraction, and the pooling layer is used for feature compression. The above all-connecting layer is used for classifying based on the features.
In some alternative implementations of some embodiments, the execution subject inputs a reduced set of environmental point cloud data to an obstacle detection model to generate an obstacle information set, wherein the obstacle detection model may include first feature extraction layers, voxel segmentation and feature splicing layers, second feature extraction layers, unit feature smoothing layers, third feature extraction layers, and barrier property regression layers.
1st: Sparse convolution of the set of environmental point cloud data first is performed by 401 feature extraction layer (s) in the obstacle detection model to generate first features. Wherein, the set of environmental point cloud data is a vector group n×4. The first feature is a vector group n×m.
2nd: Voxel segmentation and feature stitching layer 402 in the obstacle detection model performs voxel division and feature stitching on first features to generate second features.
The third Next, second features are extracted by 403 feature extraction layer second in the obstacle detection model to generate third features. The third feature is a vector group n×s.
The fourth 404 Features are tiled into the corresponding voxel grid by the unit feature tiling layer third in the obstacle detection model to generate fourth features.
5th: A feature extraction layer third of 405 features in the obstacle detection model performs two-dimensional convolution feature extraction on fourth features to generate fifth features.
6th: Based on fifth features, an obstacle attribute regression layer 406 in the obstacle detection model performs regression processing on the obstacle attributes to generate an obstacle information set.
Step 205: filtering the obstacle information in the obstacle information set to generate a set of filtered obstacle information.
In some embodiments, the execution subject may filter out obstacle information corresponding to a confidence value that is not within a preset range from the set of obstacle information to generate a set of filtered obstacle information. Here, the preset range may be [0, 0.2].
In step 206, the filtered obstacle information set is transmitted to the control planning terminal through the vehicle-mounted communication module.
In some embodiments, the execution main body may transmit the filtered obstacle information collection to the control planning terminal through the vehicle-mounted communication module in a wired connection or a wireless connection manner.
The above-described various embodiments of the present disclosure have the following advantageous effects. To the obstacle detection method, the accuracy of the obstacle detection result is improved, more accurate data is provided for the avoidance of the obstacle of the automatic driving vehicle, and the risk degree of the automatic driving vehicle in the driving process is reduced. In particular, the inventor found that the result of the obstacle detection is not exactly the reason that the cloud data of the environment point is not pre-processed, so that the clustering structure is not accurate enough, that is, the generated obstacle information is not accurate enough. Based on this, the obstacle detection method according to some embodiments of the present disclosure performs clipping processing on the cloud data of the environment point. A downsampling process and a filtering process of the generated obstacle information are performed. , Finally generated obstacle information is more accurate. Besides, since the cloud data of the environmental point has a relatively sparse characteristic, the obstacle detection model generated based on the characteristic of the cloud data of the environmental point is used for generating obstacle information. , The accuracy of the generated obstacle information is improved.
Further to FIG. 5, as an implementation of the method shown in each of the figures, the present disclosure provides some embodiments of an obstacle detection device that corresponds to those of the method embodiment shown 2, which may specifically be applied to various electronic devices.
As shown 5, the obstacle detection apparatus 500 of some embodiments includes an acquisition unit unit 501, a cropping processing unit 502, a downsampling processing unit 503, an input unit 504, a filter processing unit 505, and a transmission unit 506. The target vehicle coordinate system 501 includes a coordinate value, a vertical coordinate value, a vertical coordinate value, and a radar echo power value, and the target vehicle coordinate system includes a coordinate value, a vertical coordinate value, a vertical coordinate value, and a radar echo power value. The processing unit 502 is cropped. The set of environmental point cloud data is tailored to generate the cropped environmental point cloud data set. The downsampling processing unit 503 is configured to perform down-sampling processing on the clipped environmental point cloud data set to generate a downsampled environmental point cloud data set. The input unit 504 is configured to input the downsampled environmental point cloud data set to an obstacle detection model to generate an obstacle information set. The filter processing unit 505 is configured to filter the obstacle information in the above-described obstacle information set to generate a set of filtered obstacle information. The transmission unit 506. The filtering obstacle information set is sent to a control planning terminal through a vehicle-mounted communication module.
It will be appreciated that the units described in the apparatus 500 correspond to the respective steps in the method described with reference to FIG. 2. Thus, the operations, features and the beneficial effects described above for the method apply equally to the device 500 and the elements contained therein, which will not be described again herein.
Now to FIG. 6, a schematic diagram of a structure of an electronic device (e.g. computing device 1 in 101) suitable for implementing some embodiments of 600 the present disclosure is shown. The electronic device illustrated in FIG. 6 is merely an example, and is not intended to limit the functions and the scope of use of the embodiments of the present disclosure.
As shown 6, the electronic device 600 may include a processing device (e.g. a central processing unit, a graphics processor, etc.) 601 that may perform various appropriate actions and processes according to programs stored in read-only memory (ROM) 602 or programs loaded from storage device 608 (RAM) 603. In RAM 6603, various programs and data necessary for the operation of the electronic device 600 are also stored. The processing apparatus 601, ROM 666666602, and RAM603 are connected to each other via a bus 604. An input/output (I/O) interface 605 is also connected to the bus 604.
, The following devices may be connected to I/O interface 605: an input device 606 including, for example, a touch screen, a touchpad, a keyboard, a mouse, a camera, a microphone, an accelerometer, a gyroscope, and the like. Output devices such as liquid crystal displays (LCD), speakers, vibrators 607, and the like are included. A storage device 608 such as a magnetic tape, a hard disk, or the like is included. And communication device 609. The communication device 609 may allow the electronic device 600 to communicate wirelessly or wirelessly with other devices to exchange data. While FIG. 6 illustrates an electronic device 600 having various devices, it is to be understood that not all illustrated devices are required to be implemented or provided. Or fewer devices may alternatively be implemented or provided. Each block shown in FIG. 6 may represent a device or may represent a plurality of devices as desired.
In particular, according to some embodiments of the present disclosure, the processes described above with reference to the flowcharts may be implemented as computer software programs. For example, some embodiments of the present disclosure include a computer program product comprising a computer program carried on a computer readable medium containing program code for executing the method shown in the flowchart. In such embodiments, the computer program may be downloaded and installed from the network through the communication device 609, or installed from the storage device 608, or installed from ROM 6602. When the computer program is executed by the processing apparatus 601, the above-described functions defined in the method of some embodiments of the present disclosure are performed.
It should be noted that the computer readable medium of some embodiments of the present disclosure may be a computer readable signal medium or a computer readable storage medium or any combination of the foregoing. The computer readable storage medium may, for example, be, but is not limited to, electricity. A magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination of the foregoing. More specific examples of computer readable storage media may include, but are not limited to, electrical connections, portable computer disks, hard disks, random access memory (RAM), read only memory (ROM), erasable and programmable read only memory (EPROM or flash memory), optical fibers, portable compact disk read only memory (CD-ROM), optical storage devices, magnetic memory devices, or any suitable combination of the foregoing. In some embodiments of the present disclosure, a computer readable storage medium may be any tangible medium that includes or stores a program that may be used by or in connection with an instruction execution system, apparatus, or device. While in some embodiments of the present disclosure, a computer readable signal medium may include a propagated data signal with computer readable program code embodied therein, for example, in baseband or as part of a carrier wave. Such a propagated data signal may take a variety of forms, including, but not limited to, an electromagnetic signal, an optical signal, or any suitable combination of the foregoing. The computer readable signal medium may also be any computer readable medium that is not a computer readable storage medium, and the computer readable signal medium may transmit, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device. Program code embodied on a computer readable medium may be transmitted using any suitable medium, including but not limited to wire, optical cable, RF (radio frequency), etc, or any suitable combination of the foregoing.
In some embodiments, the client, the server may communicate using any currently known or future developed network protocol, such as HTTP (Hyper Text Transfer Protocol), and may be interconnected with any form or medium of digital data communication (e.g. a communication network). Examples of communication networks include local area networks ('LAN'), wide area networks ('WAN'), Internet (e.g. Internet) and end-to-end networks (e.g. ad hoc end-to-end networks), and any currently known or future developed network.
The above-described computer-readable medium may be contained in the above-described apparatus. It may also be separately present without being fitted into the electronic device. When the one or more programs are executed by the electronic device, the environment point cloud data is obtained by scanning a surrounding environment through a laser radar mounted on a target vehicle. In the target vehicle coordinate system, the target vehicle coordinate value is a coordinate value in a target vehicle coordinate system, and the target vehicle coordinate system uses a line parallel to a rear axle of the target vehicle as a vertical axis and a line perpendicular to the ground as a vertical axis. The set of environmental point cloud data is tailored to generate the cropped environmental point cloud data set. The cropped ambient point cloud data set is subjected to downsampling processing to generate a reduced sampled environmental point cloud data set. The downsampled environmental point cloud data set is input to an obstacle detection model to generate an obstacle information set. The obstacle information in the above-described obstacle information set is filtered to generate a set of filtered obstacle information. The filtering obstacle information set is sent to a control planning terminal through a vehicle-mounted communication module.
Computer program code for performing operations of some embodiments of the present disclosure may be written in one or more program design languages, including program design languages facing an object, such as Java, Smallallen, C + and also including conventional over-program design languages such as' C ' language or similar program design language. The program code may be executed entirely on the user computer, partly on the user computer, as an independent software package, partly on the user's computer, partly on the remote computer, or entirely on the remote computer or server. In the case of a remote computer, the remote computer may be connected to the user computer via any kind of network, including a local area network (LAN) or a wide area network (WAN), or may be connected to an external computer (e.g. connected over the Internet using an Internet service provider).
The flowchart and block diagrams in the Figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products in accordance with various embodiments of the present disclosure. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of code, the module, program segment, or portion of code containing one or more executable instructions for implementing the specified logical function. It should also be noted that, in some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or they may sometimes be executed in the reverse order, depending upon the functionality involved. It should also be noted that each block in the block diagrams and/or flow diagrams, and combinations of blocks in the block diagrams and/or flow diagrams, may be implemented with dedicated hardware-based systems that perform the specified functions or operations, or may be implemented in a combination of dedicated hardware and computer instructions.
The elements described in some embodiments of the present disclosure may be implemented in software, or may be implemented in hardware. The described units may also be provided in a processor, for example, may be described as: a processor including an acquisition unit, a cropping processing unit, a downsampling processing unit, an input unit, a filtering processing unit, and a transmitting unit. Here, the names of the units do not constitute restrictions on the unit itself in some cases, for example, the acquisition unit may also be described as a unit for acquiring an environmental point cloud data set.
The functionality described herein may be performed at least in part by one or more hardware logic components. For example, non-limiting, exemplary types of hardware logic that may be used include field-programmable gate arrays (FPGA), application-specific integrated circuits (ASIC), application-specific standard products (ASSP), system-on-chip (SOC), complex programmable logic devices (CPLD), and the like.
The above description is merely a few of the preferred embodiments of the present disclosure and descriptions of the applied technical principles. It should be understood by those skilled in the art that the scope of the invention referred to in the embodiments of the present disclosure is not limited to the specific combinations of the above-described technical features, and it is also intended to cover other technical solutions formed by any combination of the above technical features or equivalent features without departing from the inventive concept. For example, the features described above and the technical features disclosed in the embodiments of the present disclosure (but not limited to) having similar functions are replaced with each other.