WO2021217646A1 - 检测车辆可通行区域的方法及装置 - Google Patents
检测车辆可通行区域的方法及装置 Download PDFInfo
- Publication number
- WO2021217646A1 WO2021217646A1 PCT/CN2020/088473 CN2020088473W WO2021217646A1 WO 2021217646 A1 WO2021217646 A1 WO 2021217646A1 CN 2020088473 W CN2020088473 W CN 2020088473W WO 2021217646 A1 WO2021217646 A1 WO 2021217646A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- vehicle
- boundary grid
- grid unit
- boundary
- unit
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 87
- 238000001514 detection method Methods 0.000 claims abstract description 26
- 238000012545 processing Methods 0.000 claims description 46
- 230000015654 memory Effects 0.000 claims description 24
- 238000004590 computer program Methods 0.000 claims description 17
- 230000008569 process Effects 0.000 description 36
- 238000004891 communication Methods 0.000 description 24
- 238000010586 diagram Methods 0.000 description 22
- 230000006870 function Effects 0.000 description 17
- 238000013500 data storage Methods 0.000 description 10
- 230000002093 peripheral effect Effects 0.000 description 8
- 241001465754 Metazoa Species 0.000 description 6
- 230000003993 interaction Effects 0.000 description 6
- 230000005540 biological transmission Effects 0.000 description 5
- 230000008859 change Effects 0.000 description 5
- 230000008447 perception Effects 0.000 description 5
- 238000004422 calculation algorithm Methods 0.000 description 4
- 238000006243 chemical reaction Methods 0.000 description 4
- 230000007613 environmental effect Effects 0.000 description 4
- 230000001133 acceleration Effects 0.000 description 3
- 230000009471 action Effects 0.000 description 3
- 238000013528 artificial neural network Methods 0.000 description 3
- 230000010267 cellular communication Effects 0.000 description 3
- 238000010276 construction Methods 0.000 description 3
- 239000000446 fuel Substances 0.000 description 3
- 238000007726 management method Methods 0.000 description 3
- 238000005259 measurement Methods 0.000 description 3
- LFQSCWFLJHTTHZ-UHFFFAOYSA-N Ethanol Chemical compound CCO LFQSCWFLJHTTHZ-UHFFFAOYSA-N 0.000 description 2
- ATUOYWHBWRKTHZ-UHFFFAOYSA-N Propane Chemical compound CCC ATUOYWHBWRKTHZ-UHFFFAOYSA-N 0.000 description 2
- 230000006399 behavior Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000002485 combustion reaction Methods 0.000 description 2
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000001815 facial effect Effects 0.000 description 2
- 230000033001 locomotion Effects 0.000 description 2
- 238000013439 planning Methods 0.000 description 2
- 238000004088 simulation Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- HBBGRARXTFLTSG-UHFFFAOYSA-N Lithium ion Chemical compound [Li+] HBBGRARXTFLTSG-UHFFFAOYSA-N 0.000 description 1
- 239000002253 acid Substances 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 239000012634 fragment Substances 0.000 description 1
- 125000000524 functional group Chemical group 0.000 description 1
- 238000007499 fusion processing Methods 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 229910001416 lithium ion Inorganic materials 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000003208 petroleum Substances 0.000 description 1
- 239000001294 propane Substances 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000004148 unit process Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S17/00—Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
- G01S17/88—Lidar systems specially adapted for specific applications
- G01S17/93—Lidar systems specially adapted for specific applications for anti-collision purposes
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
-
- G—PHYSICS
- G08—SIGNALLING
- G08G—TRAFFIC CONTROL SYSTEMS
- G08G1/00—Traffic control systems for road vehicles
Definitions
- This application relates to the field of automatic driving, and in particular to a method and device for detecting a passable area of a vehicle.
- Mobile robots can use the data obtained by visual sensors (such as cameras) and radar sensors (such as lidar, millimeter wave radar) to detect the passable area in the surrounding environment (free space) , That is, the area where the autonomous vehicle can travel. Subsequently, the self-driving vehicle can plan its driving path according to the detected passable area, so as to realize the automatic driving of the vehicle.
- visual sensors such as cameras
- radar sensors such as lidar, millimeter wave radar
- the other is to use the data obtained by the sensor to determine the passable area, and then detect the information obtained by the sensor to determine the edge information of the road, such as the road edge and lane line, etc., and combine the location of the vehicle with high precision Map to determine the surrounding road structure where the vehicle is located. Finally, according to the detected road edge information and the surrounding road structure of the vehicle, the passable area is cut, so as to well remove the narrow passable area caused by the area outside the road and the green belt.
- the present application provides a method and device for detecting a vehicle passable area.
- a boundary grid unit is determined from a plurality of grid units, and then a target boundary grid unit is determined according to the boundary grid unit, thereby realizing the vehicle passable area Cut out the area that is actually not allowed to pass through, and obtain the boundary of the passable area of the vehicle, thereby improving the accuracy of detecting the passable area of the vehicle.
- the present application provides a method for detecting a vehicle passable area, which relates to the field of automatic driving.
- the method includes: determining at least two boundary grid units from a plurality of grid units, wherein the at least two boundary grids
- the grid unit is a grid unit where the obstacle closest to the vehicle is located on the same azimuth angle, and multiple grid units are obtained by dividing the surrounding area where the vehicle is located.
- a target boundary grid unit is determined, and the target boundary grid unit refers to a grid unit where the boundary of the vehicle's passable area is located.
- the area between the target boundary grid unit and the vehicle is determined as the vehicle's passable area.
- the present application can determine at least two boundary grid units from multiple grid units, and then determine the target boundary grid unit based on the at least two boundary grid units, so as to realize the alignment of the boundary grid units. Update to get the target boundary grid unit. And the area between the target boundary grid unit and the vehicle is determined as the vehicle passable area.
- the target boundary grid unit can be used to cut the area between the boundary grid unit and the vehicle to remove the area that is actually impassable by the vehicle. , Improve the accuracy of vehicle passable area detection.
- determining the target boundary grid unit according to the at least two boundary grid units includes: determining the target boundary grid unit according to the distance between the first boundary grid unit and the second boundary grid unit Cell.
- the first boundary grid unit is any one of at least two boundary grid units
- the distance between the second boundary grid unit and the vehicle is less than or equal to the distance between the first boundary grid unit and the vehicle, and is preset
- the second boundary grid unit is the closest to the first boundary grid unit in the direction.
- the present application can determine any one of the at least two boundary grid units as the first boundary grid unit, and for each first boundary grid unit, the unique second boundary corresponding to it can be determined Grid unit. Therefore, according to the distance between the first boundary grid unit and the second boundary grid unit to determine the target boundary grid unit, the boundary grid unit can be updated, and the boundary grid unit can be removed as much as possible. In the determined area, the actual vehicle impassable area is to improve the accuracy of the vehicle passable area detection.
- determining the target boundary grid unit according to the distance between the first boundary grid unit and the second boundary grid unit includes: connecting the first boundary grid unit with the second boundary grid unit The distance between the grid cells is compared with the preset distance threshold to determine the target boundary grid cell.
- the solution of determining the target boundary grid unit according to the preset distance threshold in this application can ensure that the vehicle is in accordance with the target boundary network as much as possible.
- the vehicle passable area determined by the grid unit can pass, which improves the accuracy of vehicle passable area detection.
- determining the target boundary grid unit by comparing the distance between the first boundary grid unit and the second boundary grid unit with a preset distance threshold includes: When the distance between the grid unit and the second boundary grid unit is less than or equal to the preset distance threshold, the first boundary grid unit and the second boundary grid unit are determined as the target boundary grid unit. Wherein, the distance between the third boundary grid unit and the vehicle is equal to the distance between the first boundary grid unit and the vehicle, and the third boundary grid unit is located between the first boundary grid unit and the second boundary grid unit in the preset direction between. When the distance between the first boundary grid unit and the second boundary grid unit is greater than the preset distance threshold, the first boundary grid unit and the second boundary grid unit are determined as the target boundary grid unit.
- the present application after determining the vehicle passable area according to the boundary grid unit, the present application also eliminates the area in the passable area whose width is less than the preset distance threshold according to the preset distance threshold, that is, the vehicle is eliminated
- the boundary grid unit is updated to the target boundary grid unit used to determine the vehicle passable area, so as to improve the accuracy of the vehicle passable area detection.
- a grid map is generated according to the passable area and the impassable area of the vehicle.
- the impassable area refers to an area where a grid unit whose distance from the vehicle is greater than a first distance is located, and the first distance refers to the distance between the target boundary grid unit and the vehicle.
- the grid map generated according to the passable area and the impassable area of the vehicle can more intuitively indicate the passable area and the impassable area of the vehicle, and it is convenient to view the passable area and the impassable area of the vehicle.
- position information of obstacles around the vehicle is determined first.
- the position information of the obstacle may include the azimuth angle of the obstacle relative to the vehicle, and the distance between the obstacle and the vehicle.
- determining the location information of the obstacles around the vehicle includes: determining the location information of the obstacles around the vehicle according to external data collected by sensors on the vehicle.
- the external data refers to the data outside the vehicle collected by the sensor.
- this application will eliminate the data collected by the sensor on the vehicle other than the vehicle, that is, external data, so as to reduce a certain point on the vehicle collected by the sensor, and determine it as the distance from the vehicle on the azimuth angle of the point.
- the occurrence of recent obstacles reduces the possibility of using a certain point on the vehicle as the boundary of the vehicle's passable area and improves the accuracy of detecting the vehicle's passable area.
- the sensor used to collect external data includes one or more of lidar, millimeter wave radar, or vision sensor.
- the detection method of the passable area of a vehicle in this application has good versatility and uses multiple sensors to collect data.
- the obtained data is used to determine the passable area of the vehicle, which can further improve the accuracy of detecting the passable area of the vehicle.
- the aforementioned preset direction is a clockwise direction or a counterclockwise direction.
- the boundary grid unit in the process of determining the target boundary grid unit, if the target boundary grid unit is at the same azimuth angle If there is a boundary grid unit whose distance from the vehicle is smaller than the target boundary grid unit, then the boundary grid unit is determined to be a boundary grid unit that does not need to be processed. That is to say, in the subsequent process of determining the boundary grid unit, the boundary grid unit can be regarded as a grid unit in the vehicle impassable area, and the boundary grid unit is no longer used as the first boundary grid unit. Determine the target boundary grid unit.
- the present application can reduce the boundary grid units that need to be processed in the process of determining the target boundary grid unit, thereby reducing the amount of calculation in the process of detecting the passable area of the vehicle, and improving the detection of the passable area of the vehicle. efficient.
- the present application provides a device for detecting a vehicle passable area, which relates to the field of automatic driving.
- the device includes: a processing unit configured to determine at least two boundary grid units from a plurality of grid units, the at least two grid units Each boundary grid unit is a grid unit where the obstacle that is closest to the vehicle at the same azimuth angle is located, and the multiple grid units are obtained by dividing the surrounding area where the vehicle is located.
- the processing unit is further configured to determine a target boundary grid unit based on the at least two boundary grid units, where the target boundary grid unit refers to a grid unit where the boundary of the passable area of the vehicle is located.
- the determining unit is used to determine the area between the target boundary grid unit and the vehicle as the passable area of the vehicle.
- the processing unit is configured to determine the target boundary grid unit based on at least two boundary grid units, including: a processing unit, configured to determine the target boundary grid unit based on the first boundary grid unit and the second boundary grid unit The distance between the cells determines the target boundary grid cell.
- the first boundary grid unit is any one of the at least two boundary grid units
- the distance between the second boundary grid unit and the vehicle is less than or equal to the distance between the first boundary grid unit and the vehicle, and is preset
- the second boundary grid unit is the closest to the first boundary grid unit in the direction.
- the processing unit is configured to determine the target boundary grid unit according to the distance between the first boundary grid unit and the second boundary grid unit, including: a processing unit, configured to pass the first boundary grid unit The distance between a boundary grid unit and the second boundary grid unit is compared with a preset distance threshold to determine the target boundary grid unit.
- the processing unit is configured to determine the target boundary grid unit by comparing the distance between the first boundary grid unit and the second boundary grid unit with a preset distance threshold, including: The processing unit is configured to determine the first boundary grid unit and the second boundary grid unit as the target when the distance between the first boundary grid unit and the second boundary grid unit is less than or equal to the preset distance threshold. Boundary grid cell. Wherein, the distance between the third boundary grid unit and the vehicle is equal to the distance between the first boundary grid unit and the vehicle, and the third boundary grid unit is located between the first boundary grid unit and the second boundary grid unit in the preset direction between. The processing unit is configured to determine the first boundary grid unit and the second boundary grid unit as the target boundary grid unit when the distance between the first boundary grid unit and the second boundary grid unit is greater than a preset distance threshold .
- the processing unit is configured to determine the target boundary grid unit based on the at least two boundary grid units
- the generating unit is configured to generate a grid based on the passable area and the impassable area of the vehicle picture.
- the impassable area refers to an area where a grid unit whose distance from the vehicle is greater than a first distance is located, and the first distance refers to the distance between the target boundary grid unit and the vehicle.
- the processing unit before the processing unit is configured to determine at least two boundary grid units from a plurality of grid units, the processing unit is configured to determine location information of obstacles around the vehicle.
- the processing unit is configured to determine the location information of obstacles around the vehicle, and includes: a processing unit, configured to determine the location information of the obstacles around the vehicle according to external data collected by sensors on the vehicle.
- the external data refers to data outside the vehicle collected by the sensor.
- the aforementioned sensor includes one or more of laser radar, millimeter wave radar, or vision sensor.
- the aforementioned preset direction is a clockwise direction or a counterclockwise direction.
- the present application provides a device for detecting a vehicle passable area, the device comprising: a processor and a memory; wherein the memory is used to store computer program instructions, and the processor runs the computer program instructions to make the detected vehicle passable area The device executes the method for detecting a vehicle passable area described in the first aspect.
- the present application provides a computer-readable storage medium, including computer instructions, when the computer instructions are executed by a processor, the device for detecting a vehicle passable area executes the detection of a vehicle passable area as described in the first aspect Methods.
- the present application provides a computer program product, characterized in that, when the computer program product runs on a processor, the device for detecting a vehicle passable area executes the detection of a vehicle passable area as described in the first aspect Methods.
- FIG. 1 is a first structural diagram of a vehicle provided by an embodiment of the application
- FIG. 2 is a second structural diagram of a vehicle provided by an embodiment of the application.
- FIG. 3 is a schematic structural diagram of a computer system provided by an embodiment of this application.
- FIG. 4 is a schematic diagram 1 of the application of a cloud-side command automatic driving vehicle provided by an embodiment of this application;
- FIG. 5 is a second schematic diagram of the application of a cloud-side command automatic driving vehicle provided by an embodiment of this application;
- FIG. 6 is a schematic structural diagram of a computer program product provided by an embodiment of the application.
- FIG. 7 is a schematic flowchart of a method for detecting a vehicle passable area provided by an embodiment of this application.
- FIG. 8 is a schematic diagram of a plurality of grid units provided by an embodiment of this application.
- FIG. 9 is a first schematic diagram of a boundary grid unit provided by an embodiment of this application.
- FIG. 10 is a second schematic diagram of a boundary grid unit provided by an embodiment of this application.
- FIG. 11 is a schematic diagram of a distance between boundary grid cells according to an embodiment of the application.
- FIG. 12 is a first schematic diagram of a grid diagram provided by an embodiment of this application.
- FIG. 13 is a second schematic diagram of a grid diagram provided by an embodiment of this application.
- FIG. 14 is a schematic diagram of a concentric circle provided by an embodiment of the application.
- FIG. 15 is a schematic diagram of a device for detecting a vehicle passable area provided by an embodiment of the application.
- the embodiments of the present application provide a method and device for detecting a vehicle passable area.
- the method is applied in a vehicle or other equipment (such as a cloud server, a mobile phone terminal, etc.) having a function of controlling a vehicle.
- the vehicle or other equipment can implement the method for detecting the passable area of the vehicle provided by the embodiment of the present application through the components (including hardware and software) contained in it, and detect the surrounding environment of the vehicle according to the data collected by the sensor to determine the vehicle’s
- the passable area allows the vehicle to plan its travel path according to the passable area.
- FIG. 1 is a functional block diagram of a vehicle 100 provided by an embodiment of the application.
- the vehicle 100 may be an autonomous driving vehicle.
- the vehicle 100 detects the passable area of the vehicle according to the data collected by the sensor, and determines the passable area of the vehicle, so that the vehicle can plan the travel path of the vehicle according to the passable area.
- the vehicle 100 may include various subsystems, such as a travel system 110, a sensor system 120, a control system 130, one or more peripheral devices 140 and a power supply 150, a computer system 160, and a user interface 170.
- the vehicle 100 may include more or fewer subsystems, and each subsystem may include multiple elements.
- each of the subsystems and elements of the vehicle 100 may be wired or wirelessly interconnected.
- the travel system 110 may include components that provide power movement for the vehicle 100.
- the travel system 110 may include an engine 111, a transmission 112, an energy source 113 and wheels 114.
- the engine 111 may be an internal combustion engine, an electric motor, an air compression engine, or a combination of other types of engines, such as a hybrid engine composed of a gasoline engine and an electric motor, or a hybrid engine composed of an internal combustion engine and an air compression engine.
- the engine 111 converts the energy source 113 into mechanical energy.
- Examples of the energy source 113 include gasoline, diesel, other petroleum-based fuels, propane, other compressed gas-based fuels, ethanol, solar panels, batteries, and other sources of electricity.
- the energy source 113 may also provide energy for other systems of the vehicle 100.
- the transmission device 112 can transmit the mechanical power from the engine 111 to the wheels 114.
- the transmission 112 may include a gearbox, a differential, and a drive shaft.
- the transmission device 112 may also include other components, such as a clutch.
- the drive shaft may include one or more shafts that may be coupled to one or more wheels 114.
- the sensor system 120 may include several sensors that sense information about the environment around the vehicle 100.
- the sensor system 120 may include a positioning system 121 (the positioning system may be a global positioning system (GPS), a Beidou system or other positioning systems), an inertial measurement unit (IMU) 122, and a radar 123, Lidar 124, and camera 125.
- the sensor system 120 may also include sensors of the internal system of the monitored vehicle 100 (for example, an in-vehicle air quality monitor, a fuel gauge, an oil temperature gauge, etc.). Sensor data from one or more of these sensors can be used to detect objects and their corresponding characteristics (position, shape, direction, speed, etc.). This detection and recognition is a key function of the safe operation of the automatic driving of the vehicle 100.
- the positioning system 121 can be used to estimate the geographic location of the vehicle 100.
- the IMU 122 is used to sense the position and orientation change of the vehicle 100 based on the inertial acceleration.
- the IMU 122 may be a combination of an accelerometer and a gyroscope.
- the radar 123 may use radio signals to sense objects in the surrounding environment of the vehicle 100. In some embodiments, in addition to sensing the object, the radar 123 may also be used to sense the speed and/or direction of the object.
- the lidar 124 can use laser light to sense objects in the environment where the vehicle 100 is located.
- the lidar 124 may include one or more laser sources, laser scanners, and one or more detectors, as well as other system components.
- the camera 125 may be used to capture multiple images of the surrounding environment of the vehicle 100 and multiple images in the cockpit of the vehicle.
- the camera 125 may be a still camera or a video camera.
- the control system 130 may control the operation of the vehicle 100 and its components.
- the control system 130 may include various components, including a steering system 131, a throttle 132, a braking unit 133, a computer vision system 134, a route control system 135, and an obstacle avoidance system 136.
- the steering system 131 is operable to adjust the forward direction of the vehicle 100.
- it may be a steering wheel system.
- the throttle 132 is used to control the operating speed of the engine 111 and thereby control the speed of the vehicle 100.
- the braking unit 133 is used to control the vehicle 100 to decelerate.
- the braking unit 133 may use friction to slow down the wheels 114.
- the braking unit 133 may convert the kinetic energy of the wheels 114 into electric current.
- the braking unit 133 may also take other forms to slow down the rotation speed of the wheels 114 to control the speed of the vehicle 100.
- the computer vision system 134 may be operable to process and analyze the images captured by the camera 125 in order to identify objects and/or features in the surrounding environment of the vehicle 100 as well as the physical and facial features of the driver in the cockpit of the vehicle.
- the objects and/or features may include traffic signals, road conditions, and obstacles, and the driver's physical and facial features include the driver's behavior, line of sight, expression, and the like.
- the computer vision system 134 may use object recognition algorithms, structure from motion (SFM) algorithms, video tracking, and other computer vision technologies.
- SFM structure from motion
- the computer vision system 134 can be used to map the environment, track objects, estimate the speed of objects, determine driver behavior, face recognition, and so on.
- the route control system 135 is used to determine the travel route of the vehicle 100.
- the route control system 135 may combine data from sensors, the positioning system 121, and one or more predetermined maps to determine a travel route for the vehicle 100.
- the obstacle avoidance system 136 is used to identify, evaluate, and avoid or otherwise surpass potential obstacles in the environment of the vehicle 100.
- control system 130 may add or alternatively include components other than those shown and described. Alternatively, a part of the components shown above may be reduced.
- the vehicle 100 interacts with external sensors, other vehicles, other computer systems, or users through the peripheral device 140.
- the peripheral device 140 may include a wireless communication system 141, an onboard computer 142, a microphone 143, and/or a speaker 144.
- the peripheral device 140 provides a means for the user of the vehicle 100 to interact with the user interface 170.
- the onboard computer 142 may provide information to the user of the vehicle 100.
- the user interface 170 can also operate the on-board computer 142 to receive user input.
- the on-board computer 142 can be operated through a touch screen.
- the peripheral device 140 may provide a means for the vehicle 100 to communicate with other devices located in the vehicle.
- the microphone 143 may receive audio (eg, voice commands or other audio input) from the user of the vehicle 100.
- the speaker 144 may output audio to the user of the vehicle 100.
- the wireless communication system 141 may wirelessly communicate with one or more devices directly or via a communication network.
- the wireless communication system 141 may use 3G cellular communication, such as CDMA, EVDO, GSM/GPRS, or 4G cellular communication, such as LTE. Or 5G cellular communication.
- the wireless communication system 141 may use WiFi to communicate with a wireless local area network (WLAN).
- WLAN wireless local area network
- the wireless communication system 141 may directly communicate with the device using an infrared link, Bluetooth, or ZigBee.
- Other wireless protocols, such as various vehicle communication systems, for example, the wireless communication system 141 may include one or more dedicated short range communications (DSRC) devices.
- DSRC dedicated short range communications
- the power supply 150 may provide power to various components of the vehicle 100.
- the power source 150 may be a rechargeable lithium ion or lead-acid battery.
- One or more battery packs of such batteries may be configured as a power source to provide power to various components of the vehicle 100.
- the power source 150 and the energy source 113 may be implemented together, such as in some all-electric vehicles.
- the computer system 160 may include at least one processor 161 that executes instructions 1621 stored in a non-transitory computer readable medium such as a data storage device 162.
- the computer system 160 may also be multiple computing devices that control individual components or subsystems of the vehicle 100 in a distributed manner.
- the processor 161 may be any conventional processor, such as a commercially available central processing unit (CPU). Alternatively, the processor may be a dedicated device such as an application specific integrated circuit (ASIC) or other hardware-based processor.
- FIG. 1 functionally illustrates the processor, the memory, and other elements in the same physical enclosure, those of ordinary skill in the art should understand that the processor, computer system, or memory may actually include Multiple processors, computer systems, or memories in a physical housing, or include multiple processors, computer systems, or memories that may not be stored in the same physical housing.
- the memory may be a hard drive, or other storage medium located in a different physical enclosure.
- a reference to a processor or computer system will be understood to include a reference to a collection of processors or computer systems or memories that may operate in parallel, or a reference to a collection of processors or computer systems or memories that may not operate in parallel.
- some components such as steering components and deceleration components may each have its own processor that only performs calculations related to component-specific functions .
- the processor may be located away from the vehicle and wirelessly communicate with the vehicle.
- some of the processes described herein are executed on a processor disposed in the vehicle and others are executed by a remote processor, including taking the necessary steps to perform a single manipulation.
- the data storage device 162 may include instructions 1621 (eg, program logic), which may be executed by the processor 161 to perform various functions of the vehicle 100, including those described above.
- the data storage device 162 may also contain additional instructions, including sending data to, receiving data from, interacting with, and/or performing data on one or more of the traveling system 110, the sensor system 120, the control system 130, and the peripheral device 140. Control instructions.
- the data storage device 162 may also store data, such as road maps, route information, the location, direction, and speed of the vehicle, and other such vehicle data, as well as other information. Such information may be used by the vehicle 100 and the computer system 160 during the operation of the vehicle 100 in autonomous, semi-autonomous, and/or manual modes.
- the data storage device 162 may obtain obstacle information in the surrounding environment obtained by the vehicle based on the sensors in the sensor system 120, such as obstacles such as other vehicles, road edges, and green belts. Information such as the location, the distance between the obstacle and the vehicle, and the distance between the obstacles.
- the data storage device 162 may also obtain environmental information from the sensor system 120 or other components of the vehicle 100. The environmental information may be, for example, whether there are green belts, lanes, pedestrians, etc. near the current environment of the vehicle, or the vehicle calculates the current location through a machine learning algorithm. Whether there are green belts, pedestrians, etc. near the environment.
- the data storage device 162 can also store the state information of the vehicle itself and the state information of other vehicles that interact with the vehicle.
- the state information of the vehicle includes but is not limited to the vehicle's position, speed, acceleration, Heading angle, etc.
- the processor 161 can obtain this information from the data storage device 162, and determine the passable area of the vehicle based on the environmental information of the environment in which the vehicle is located, the state information of the vehicle itself, the state information of other vehicles, etc., and based on the passable area
- the final driving strategy is determined to control the vehicle 100 to drive automatically.
- the user interface 170 is used to provide information to or receive information from a user of the vehicle 100.
- the user interface 170 may interact with one or more input/output devices in the set of peripheral devices 140, such as one or more of the wireless communication system 141, the onboard computer 142, the microphone 143, and the speaker 144.
- the computer system 160 may control the vehicle 100 based on information acquired from various subsystems (for example, the traveling system 110, the sensor system 120, and the control system 130) and the information received from the user interface 170. For example, the computer system 160 may control the steering system 131 to change the forward direction of the vehicle according to the information from the control system 130, so as to avoid obstacles detected by the sensor system 120 and the obstacle avoidance system 136. In some embodiments, the computer system 160 can control many aspects of the vehicle 100 and its subsystems.
- one or more of these components described above may be installed or associated with the vehicle 100 separately.
- the data storage device 162 may exist partially or completely separately from the vehicle 100.
- the above-mentioned components may be coupled together for communication in a wired and/or wireless manner.
- FIG. 1 should not be construed as a limitation to the embodiments of the present application.
- An autonomous vehicle traveling on a road can determine the current speed adjustment instruction according to other vehicles in its surrounding environment.
- the objects in the environment around the vehicle 100 may be other types of objects such as traffic control equipment or green belts.
- each object in the surrounding environment may be considered independently, and the speed adjustment instruction of the vehicle 100 may be determined based on the respective characteristics of the object, such as its current speed, acceleration, and distance from the vehicle.
- the vehicle 100 as an autonomous vehicle or the computer equipment associated with it (such as the computer system 160, the computer vision system 134, and the data storage device 162 in FIG. 1) can obtain the state of the surrounding environment based on the identified measurement data. (For example, traffic, rain, ice on the road, etc.), and determine the relative position of obstacles and vehicles in the surrounding environment at the current moment.
- the boundary of the passable area formed by each obstacle depends on each other. Therefore, all the acquired measurement data can also be used to determine the boundary of the passable area of the vehicle, removing the actual inaccessible area from the passable area. Passable area.
- the vehicle 100 can adjust its driving strategy based on the detected passable area of the vehicle.
- an autonomous vehicle can determine what stable state the vehicle needs to adjust to (for example, accelerating, decelerating, turning, or stopping, etc.) based on the detected passable area of the vehicle. In this process, other factors may also be considered to determine the speed adjustment instruction of the vehicle 100, such as the lateral position of the vehicle 100 on the traveling road, the curvature of the road, the proximity of static and dynamic objects, and so on.
- the computer device can also provide instructions to modify the steering angle of the vehicle 100 so that the self-driving car follows a given trajectory and/or maintains the self-driving car and nearby objects (such as The safe horizontal and vertical distances of cars in adjacent lanes.
- the above-mentioned vehicle 100 may be a car, truck, motorcycle, bus, boat, airplane, helicopter, lawn mower, recreational vehicle, playground vehicle, construction equipment, tram, golf cart, train, and trolley, etc.
- the application examples are not particularly limited.
- the autonomous driving vehicle may further include a hardware structure and/or software module, which implements the above-mentioned functions in the form of a hardware structure, a software module, or a hardware structure plus a software module. Whether a certain function among the above-mentioned functions is executed by a hardware structure, a software module, or a hardware structure plus a software module depends on the specific application and design constraint conditions of the technical solution.
- the vehicle may include the following modules:
- Environment perception module 201 used to obtain information about vehicles, pedestrians, and road objects in the surrounding environment of the vehicle through roadside sensors and on-board sensors.
- the roadside sensor and the vehicle-mounted sensor may be laser radar, millimeter wave radar, vision sensor, and so on.
- the environment perception module 201 obtains the video stream data originally collected by the sensor, the point cloud data of the radar, etc., and then processes these original video stream data and the point cloud data of the radar to obtain recognizable structured data of people, vehicles, and objects. Location, size and other data determine the location of these people, cars, and objects relative to the vehicle, and then determine the boundary of the vehicle's passable area and other information.
- the environmental perception module 201 can determine the boundary of the passable area of the vehicle based on the data collected by all or a certain type or a certain sensor, so as to obtain the passable area of one or more vehicles. Borders.
- the environment sensing module 201 is also used to send the determined location information of people, vehicles, and objects and the boundaries of the vehicle's passable area to the passable area detection module 202 according to the data obtained by the sensor.
- the passable area detection module 202 is used to obtain the boundaries of the passable area of one or more vehicles from the environment perception module 201, and determine the position information of people, vehicles, objects, etc., based on the obtained data The location information of people, vehicles, and objects is used to cut the boundaries of the passable area of one or more vehicles to remove the area where the vehicle is actually impassable.
- the passable area detection module 202 is also used to perform fusion processing on the borders of the passable areas of one or more vehicles, or the borders of the passable areas of one or more vehicles that have been cut, to finally obtain The passable area of the vehicle.
- the passable area detection module 202 is also used to obtain vehicle positioning information and map data, and determine the road on which the vehicle is located and the structure of the road according to the map and vehicle positioning information, so as to determine the boundary of the vehicle passable area Cut to obtain a passable area suitable for vehicles on the road where the current vehicle is located.
- the passable area detection module 202 is also used to send the finally obtained vehicle passable area to the simulation display module 204 and the planning control module 203.
- the simulation display module 204 is used to receive the information of the passable area of the vehicle sent by the passable area detection module 202, and display the passable area of the vehicle in the form of a grid diagram, etc., so as to more conveniently and intuitively view the passable area of the vehicle An impassable area with vehicles.
- the planning control module 203 is used to receive the passable area of the vehicle sent by the passable area detection module 202, and plan the travel path of the vehicle according to the received passable area of the vehicle, generate a driving strategy, and output the driving strategy. Action instructions corresponding to the strategy, and control the vehicle to perform automatic driving according to the instructions.
- This module is a traditional control module of autonomous vehicles.
- the vehicle positioning module 205 is used to determine the positioning information of the vehicle and send the positioning information of the vehicle to the passable area detection module 202. In a possible implementation manner, the vehicle positioning module 205 is also used to send the positioning information of the vehicle to the environment perception module 201.
- the vehicle-mounted communication module 206 (not shown in FIG. 2) is used for information exchange between the own vehicle and other vehicles.
- the storage component 207 (not shown in FIG. 2) is used to store the executable codes of the foregoing modules, and running these executable codes can implement part or all of the method procedures of the embodiments of the present application.
- the computer system 160 shown in FIG. 1 includes a processor 301, which is coupled to a system bus 302, and the processor 301 may be one or more Processors, each of which can include one or more processor cores.
- the video adapter 303 can drive the display 324, and the display 324 is coupled to the system bus 302.
- the system bus 302 is coupled with the input/output (I/O) bus (BUS) 305 through the bus bridge 304, the I/O interface 306 is coupled with the I/O bus 305, and the I/O interface 306 communicates with various I/O devices, For example, an input device 307 (such as a keyboard, a mouse, a touch screen, etc.), a media tray 308 (such as a CD-ROM, a multimedia interface, etc.).
- the transceiver 309 can send and/or receive radio communication signals
- the camera 310 can capture static and dynamic digital video images
- USB universal serial bus
- the interface connected to the I/O interface 306 may be a USB interface.
- the processor 301 may be any traditional processor, including a reduced instruction set computer (RISC) processor, a complex instruction set computer (CISC) processor, or a combination of the foregoing.
- the processor 301 may also be a dedicated device such as an application specific integrated circuit ASIC.
- the processor 301 may also be a neural network processor or a combination of a neural network processor and the foregoing traditional processors.
- the computer system 160 may be located far away from the autonomous driving vehicle and wirelessly communicate with the autonomous driving vehicle 100.
- some of the processes described in this application may be configured to be executed on a processor in an autonomous vehicle, and other processes may be executed by a remote processor, including taking actions required to perform a single manipulation.
- the computer system 160 can communicate with a software deployment server (deploying server) 313 through a network interface 312.
- the network interface 312 may be a hardware network interface, such as a network card.
- the network (Network) 314 may be an external network, such as the Internet, or an internal network, such as an Ethernet or a virtual private network (VPN).
- the network 314 may also be a wireless network, such as a WiFi network, a cellular network, and the like.
- the hard disk drive interface 315 and the system bus 302 are coupled.
- the hard disk drive interface 315 and the hard disk drive 316 are connected.
- the system memory 317 and the system bus 302 are coupled.
- the data running in the system memory 317 may include an operating system (OS) 318 and application programs 319 of the computer system 160.
- OS operating system
- the operating system (OS) 318 includes but is not limited to Shell 320 and kernel 321.
- Shell 320 is an interface between the user and the kernel 321 of the operating system 318.
- Shell 320 is the outermost layer of operating system 318. The shell manages the interaction between the user and the operating system 318: waiting for the user's input, interpreting the user's input to the operating system 318, and processing various output results of the operating system 318.
- the kernel 321 is composed of parts of the operating system 318 for managing memory, files, peripherals, and system resources, and directly interacts with the hardware.
- the kernel 321 of the operating system 318 generally runs processes, provides communication between processes, and provides functions such as CPU time slice management, interruption, memory management, and IO management.
- Application programs 319 include programs 323 related to autonomous driving, such as programs that manage the interaction between autonomous vehicles and road obstacles, programs that control the driving route or speed of autonomous vehicles, and control interaction between autonomous vehicles and other cars on the road/autonomous vehicles Procedures, etc.
- the application 319 also exists on the deploying server313 system. In one embodiment, when the application program 319 needs to be executed, the computer system 160 may download the application program 319 from the deploying server 313.
- the application program 319 may be an application program that controls the vehicle to determine a driving strategy according to the above-mentioned passable area of the vehicle and a traditional control module.
- the processor 301 of the computer system 160 calls the application 319 to obtain the driving strategy.
- the sensor 322 is associated with the computer system 160.
- the sensor 322 is used to detect the environment around the computer system 160.
- the sensor 322 can detect animals, cars, obstacles, and/or pedestrian crossings.
- the sensor 322 can also detect the environment around the aforementioned objects such as animals, cars, obstacles and/or pedestrian crossings.
- the environment around the animal for example, other animals that appear around the animal, weather conditions, and the brightness of the environment around the animal.
- the sensor 322 may be at least one of a camera, an infrared sensor, a chemical detector, a microphone, and other devices.
- the computer system 160 may also receive information from other computer systems or transfer information to other computer systems.
- the sensor data collected from the sensor system 120 of the vehicle 100 may be transferred to another computer, and the data can be processed by the other computer.
- data from the computer system 160 may be transmitted to the computer system 410 on the cloud side via the network for further processing.
- the network and intermediate nodes can include various configurations and protocols, including the Internet, World Wide Web, Intranet, virtual private network, wide area network, local area network, private network using one or more company’s proprietary communication protocols, Ethernet, WiFi and HTTP, And various combinations of the foregoing. This communication can be performed by any device capable of transferring data to and from other computers, such as modems and wireless interfaces.
- the computer system 410 may include a server with multiple computers, such as a load balancing server group.
- the server 420 exchanges information with different nodes of the network.
- the computer system 410 may have a configuration similar to that of the computer system 160, and has a processor 430, a memory 440, instructions 450, and data 460.
- the data 460 of the server 420 may include providing weather-related information.
- the server 420 can receive, monitor, store, update, and transmit various information related to target objects in the surrounding environment.
- the information may include, for example, target category, target shape information, and target tracking information in a report form, radar information form, forecast form, etc.
- the cloud service center may receive information (such as data collected by vehicle sensors or other information) from vehicles 513 and vehicles 512 in its operating environment 500 via a network 511 such as a wireless communication network.
- a network 511 such as a wireless communication network.
- the vehicle 513 and the vehicle 512 may be self-driving vehicles.
- the cloud service center 520 controls the vehicle 513 and the vehicle 512 by running its stored programs related to controlling the automatic driving of the automobile according to the received data.
- Programs related to controlling auto-driving cars can be: programs that manage the interaction between autonomous vehicles and road obstacles, or programs that control the route or speed of autonomous vehicles, or programs that control interaction between autonomous vehicles and other autonomous vehicles on the road.
- the cloud service center 520 may provide a part of the map to the vehicle 513 and the vehicle 512 through the network 511.
- operations can be divided between different locations.
- multiple cloud service centers can receive, confirm, combine, and/or send information reports.
- information reports and/or sensor data can also be sent between vehicles.
- Other configurations are also possible.
- the cloud service center 520 sends a suggested solution to the autonomous vehicle regarding possible driving situations in the environment (eg, inform the obstacle ahead and tell how to avoid it)). For example, the cloud service center 520 may assist the vehicle in determining how to proceed when facing a specific obstacle in the environment.
- the cloud service center 520 sends a response to the autonomous vehicle indicating how the vehicle should travel in a given scene.
- the cloud service center 520 can confirm the existence of a temporary stop sign in front of the road based on the collected sensor data. For example, based on the “lane closed” sign and the sensor data of construction vehicles, it can be determined that the lane is closed due to construction.
- the cloud service center 520 sends a suggested operation mode for the vehicle to pass through the obstacle (for example, instructing the vehicle to change lanes on another road).
- the operation steps used for the autonomous driving vehicle can be added to the driving information map.
- this information can be sent to other vehicles in the area that may encounter the same obstacle, so as to assist other vehicles not only to recognize the closed lanes but also to know how to pass.
- the disclosed methods may be implemented as computer program instructions in a machine-readable format, encoded on a computer-readable storage medium, or encoded on other non-transitory media or articles.
- Figure 6 schematically illustrates a conceptual partial view of an example computer program product arranged in accordance with at least some of the embodiments shown herein, the example computer program product including a computer program for executing a computer process on a computing device.
- the example computer program product 600 is provided using a signal bearing medium 601.
- the signal bearing medium 601 may include one or more program instructions 602, which, when run by one or more processors, may provide all or part of the functions described above with respect to FIGS. 2 to 5, or may provide descriptions in subsequent embodiments. All or part of the function.
- one or more features in S701 to S704 may be undertaken by one or more instructions associated with the signal bearing medium 601.
- the program instructions 602 in FIG. 6 also describe example instructions.
- the signal-bearing medium 601 may include a computer-readable medium 603, such as, but not limited to, a hard disk drive, compact disk (CD), digital video compact disk (DVD), digital tape, memory, read-only storage memory (Read -Only Memory, ROM) or Random Access Memory (RAM), etc.
- the signal bearing medium 601 may include a computer recordable medium 604, such as, but not limited to, memory, read/write (R/W) CD, R/W DVD, and so on.
- the signal-bearing medium 601 may include a communication medium 605, such as, but not limited to, digital and/or analog communication media (eg, fiber optic cables, waveguides, wired communication links, wireless communication links, etc.).
- the signal bearing medium 601 may be communicated by a wireless communication medium 605 (for example, a wireless communication medium that complies with the IEEE 802.11 standard or other transmission protocols).
- the one or more program instructions 602 may be, for example, computer-executable instructions or logic-implemented instructions.
- computing devices such as those described with respect to FIGS. 2 to 6 may be configured to respond to one or more of the computer readable medium 603, and/or computer recordable medium 604, and/or communication medium 605.
- a program instruction 602 communicated to the computing device provides various operations, functions, or actions. It should be understood that the arrangement described here is for illustrative purposes only.
- this application proposes a A method of detecting the area where vehicles can pass.
- the execution subject of this method can be a vehicle or other device with the function of controlling the vehicle, such as an autonomous vehicle, or a processor in the vehicle or other device with the function of controlling the vehicle, such as the processor mentioned in the above content. 161, the processor 301, the processor 430, and so on. As shown in Figure 7, the method includes steps S701-S704:
- the position of the center point (or center of mass) of the vehicle is determined as the position of the vehicle, and the direction of travel of the vehicle is determined. Then, the direction of travel of the vehicle is taken as the polar axis, that is, the direction of travel of the vehicle is taken as the 0° angle direction of the polar coordinate system, and the position of the vehicle is taken as the pole to establish a polar coordinate system. Generally, the counterclockwise direction is set as the positive direction of the polar coordinate system. Finally, the surrounding area where the vehicle is located, that is, the preset area in the above-mentioned polar coordinate system, is divided according to the preset angular interval and the preset radial distance interval to obtain a plurality of grid units.
- the polar coordinates of a certain point on each grid unit can be determined as the identifier of the grid unit.
- the surrounding area where the vehicle is located may be a circular area with the vehicle as the center and the preset radius as the radius.
- the angle in the identification of each grid unit is the azimuth angle of the grid unit relative to the vehicle.
- the preset angular interval remains unchanged, and the preset radial distance
- the distance interval remains unchanged as the value of the radial distance increases.
- the preset radial distance interval changes as the value of the radial distance increases, so that the area of each grid unit is substantially the same.
- the region in the polar coordinate system is divided to obtain multiple grid cells.
- the logo of the grid unit is (0.2m, 0.5°) or (0.4m, 0.5°) and so on.
- dividing the preset area in the polar coordinate system can obtain multiple grid units as shown in FIG. 8.
- O is the pole of the polar coordinate system, that is, the position of the vehicle, and 0°, 90°, 180° and 270° are the polar angles of the polar coordinate system.
- a circular area with a radius of 30m in the polar coordinate system is divided to obtain Multiple grid units; when the radial distance is greater than 30m and less than or equal to 60m, the preset angular interval is 0.5°, and the preset radial distance interval is 0.5m.
- the preset angular interval is 0.5°
- the preset radial distance interval is 1m.
- the area with a radius greater than 60m in the polar coordinate system is divided. Get multiple grid cells.
- the grid unit is marked as (28.8m, 0.5°) or (30m, 0.5°) or (30.5m, 0.5°) or (55.5m, 0.5°) or (60m, 0.5°) or (61m, 0.5°) °) etc.
- S702 Determine a boundary grid unit according to the data collected by the sensor.
- the senor is a sensor on the vehicle.
- the sensor may include a sensor outside the vehicle, such as a roadside sensor, or a sensor outside the vehicle, in addition to a sensor on the vehicle.
- the aforementioned sensors for collecting data are one or more of sensors such as a lidar sensor, a millimeter wave radar sensor, or a vision sensor. It should be noted that the use of data collected by multiple sensors to determine the passable area of a vehicle can make the method of detecting the passable area of a vehicle in this application very versatile, and use data collected by multiple sensors To determine the passable area of the vehicle can further improve the accuracy of detecting the passable area of the vehicle.
- the position information of the obstacles in the surrounding area of the vehicle is determined according to the data collected by the sensor, and the boundary grid unit is determined according to the position information and the multiple grid units obtained in step S701.
- lidar sensor uses a lidar sensor as an example to introduce the specific implementation process of determining the location information of obstacles based on the data collected by the sensor in this step:
- the laser line data collected by the laser radar sensor determine the coordinates of the points in the laser radar sensor's rectangular coordinate system, that is, the echo point corresponding to each laser line data is in the laser radar sensor's rectangular coordinate system coordinate of. Then, according to the position of the lidar sensor in the vehicle's rectangular coordinate system, the coordinates of the echo point corresponding to each laser line data in the lidar sensor's rectangular coordinate system are converted into the coordinates of the points in the vehicle's rectangular coordinate system. Coordinates to determine the location information of obstacles in the surrounding environment where the vehicle is located. Wherein, the position information includes the azimuth angle of the obstacle relative to the vehicle, and the distance between the obstacle and the vehicle.
- the data collected by the lidar sensor includes multiple laser line data, and each laser line data includes the vertical direction angle ⁇ of the laser emission, the horizontal direction angle ⁇ , and the scanning distance d.
- the vertical direction angle ⁇ of laser emission is the angle between the laser line and the horizontal plane of the lidar sensor, that is, the angle between the xoy plane of the rectangular coordinate system of the lidar sensor
- the horizontal direction angle ⁇ is the laser line on the lidar sensor.
- the scanning distance d is the distance between the echo point on the laser line and the laser radar sensor Straight line distance.
- the rectangular coordinate system of the lidar sensor takes the position of the lidar sensor as the origin
- the 0° angle direction of the laser line emitted by the lidar sensor is the positive direction of the y-axis of the rectangular coordinate system
- the rotation of the lidar The axis is the z axis
- the direction passing through the origin and perpendicular to the yz plane is the x axis.
- x sin( ⁇ )cos( ⁇ )d
- y cos( ⁇ )cos( ⁇ )d
- z sin( ⁇ )d
- Cart Cartesian coordinate system Take the position of the center of the vehicle as the origin, the direction of the vehicle as the positive x-axis, the direction perpendicular to the plane of the vehicle as the positive z-axis, and the straight line perpendicular to the xoz plane and passing through the origin as the y-axis.
- P ego represents the coordinates of the echo point corresponding to each laser line data in the Cartesian coordinate system of the lidar sensor
- P represents the coordinates of the echo point corresponding to each laser line data in the vehicle Cartesian coordinate system
- the xoy plane of the vehicle coordinate system is the plane where the polar coordinate system mentioned in step S701 is located.
- the height of the echo point is determined according to the coordinates of the echo point corresponding to the laser line data collected by the lidar sensor in the vehicle coordinate system. Then the echo point is projected into the polar coordinate system to obtain the polar coordinate of the echo point, that is, the position information of the echo point relative to the vehicle, and the grid unit where the echo point is located is determined. Then according to the height, slope, height difference and the distance between the echo point and the vehicle in the same azimuth angle in the polar coordinate system, determine whether the echo point on the azimuth angle is an obstacle and where the obstacle is Grid unit (or the location information of the obstacle). Alternatively, methods such as conditional random field, Markov random field or neural network can be used in combination with data collected by lidar sensors to detect whether there are obstacles at each azimuth angle of the polar coordinate system and determine the obstacles Location information.
- the location information of obstacles can be determined by using data collected by sensors, that is, the positions of obstacles in multiple grid units, and obstacles can be obtained.
- the schematic diagram of the position information of the object is shown in FIG. 9.
- black circle 1-and black circle 6 respectively represent obstacle 1-obstacle 6, and the identifier of the grid unit where obstacle 1-obstacle 6 are located, that is, the position information of obstacle 1-obstacle 6.
- the grid unit of the obstacle with the closest distance to the vehicle on the azimuth is the boundary grid unit.
- the obstacle 2 and the obstacle 3 are located at the same azimuth angle, in the azimuth angle, the obstacle closest to the vehicle is the obstacle 2, and the obstacle 5 and the obstacle 6 are located at the same azimuth.
- the grid unit where the obstacle 1, the obstacle 2, the obstacle 4, and the obstacle 5 are located is the boundary grid unit.
- the grid unit 7-grid unit 34 is the grid unit with the farthest distance from the vehicle at each azimuth angle except the azimuth angle where the obstacle 1-obstacle 6 are located.
- the grid unit of the obstacle with the closest distance to the vehicle on the azimuth is the boundary network Grid unit; if there is no obstacle at the azimuth angle, the grid unit farthest from the vehicle on the azimuth angle is determined to be the boundary grid unit.
- the boundary grid unit farthest from the vehicle is used as the boundary grid unit in the azimuth angle where there is no obstacle, then the obstacle 1, the obstacle 2, the obstacle are removed 4.
- the boundary grid unit also includes grid unit 7-grid unit 34.
- a boundary grid unit exists at each azimuth angle in the polar coordinate system, and the boundary grid unit is the grid unit where the obstacle closest to the vehicle is located in the azimuth angle, or the azimuth angle where the boundary grid unit is located.
- the grid unit farthest from the vehicle is taken as an example to describe the embodiment of the present application.
- S703 Determine the target boundary grid unit according to the at least two boundary grid units.
- the target boundary grid unit is a grid unit where the boundary of the vehicle's passable area is located.
- the target boundary grid unit is determined according to the distance between the first boundary grid unit and the second boundary grid unit.
- the first boundary grid unit is any one of the above at least two boundary grid units
- the distance between the second boundary grid unit and the vehicle is less than or equal to the distance between the first boundary grid unit and the vehicle, and is preset
- the second boundary grid unit is the boundary grid unit that is closest to the first boundary grid unit among other boundary grid units except the first boundary grid unit .
- each first boundary grid unit has a unique second boundary grid unit corresponding to it.
- the direction of the arrow shown in the figure indicates that the preset direction is counterclockwise. If the boundary grid unit where obstacle 2 is located is taken as the first boundary grid unit, it can be determined that the distance between the boundary grid unit where obstacle 1 is located and the vehicle is equal to the distance between the first boundary grid unit and the vehicle, and the obstacle The boundary grid unit where the object 1 is located is the boundary grid unit closest to the first boundary grid unit in the counterclockwise direction. Therefore, the boundary grid unit where the obstacle 1 is located is the second boundary grid unit corresponding to the first boundary grid unit. Based on the same reason as above, if the boundary grid unit where the obstacle 5 is located is taken as the first boundary grid unit, the boundary grid unit where the obstacle 4 is located can be determined as the first boundary grid unit corresponding to the first boundary grid unit. Two boundary grid cells.
- the target boundary grid unit is determined by comparing the distance between the first boundary grid unit and the second boundary grid unit with a preset distance threshold.
- the preset distance threshold is the width of the vehicle, or other values greater than the width of the vehicle determined according to the width of the vehicle, and the preset distance threshold is determined by the user or determined by the execution subject of the method.
- the preset distance threshold is determined according to the width of the vehicle, when the target boundary grid unit is determined according to the preset distance threshold, the actual impassable area of the vehicle can be eliminated as much as possible, thereby improving the accuracy of vehicle passable area detection sex.
- the first boundary grid unit and the second boundary grid unit when the distance between the first boundary grid unit and the second boundary grid unit is less than or equal to a preset distance threshold, the first boundary grid unit and the second boundary grid unit The third boundary grid unit is determined as the target boundary grid unit.
- the distance between the third boundary grid unit and the vehicle is equal to the distance between the first boundary grid unit and the vehicle, and the third boundary grid unit is located between the first boundary grid unit and the second boundary grid unit in the preset direction between.
- the first boundary grid unit and the second boundary grid unit are determined as the target boundary grid unit.
- the distance between the first boundary grid unit and the second boundary grid unit is less than or equal to the preset distance threshold, before determining the target boundary grid unit, it is necessary to first determine the target boundary grid unit according to the first boundary grid unit, And the second boundary grid unit to determine the third boundary grid unit, and then the first boundary grid unit, the second boundary grid unit, and the third boundary grid unit are determined as the target boundary grid unit.
- the boundary grid unit where the obstacle 4 is located is the first boundary grid unit
- the boundary grid unit where the obstacle 2 is located can be determined as For the second boundary grid unit corresponding to the first boundary grid unit, the distance between the first boundary grid unit and the second boundary grid unit is d.
- the distance between the grid unit 35 and the vehicle is equal to the distance between the first boundary grid unit and the vehicle, that is, the distance between the boundary grid unit where the obstacle 4 is located and the vehicle, and the grid unit 35 is in the preset direction ( (Counterclockwise) is located between the first boundary grid unit and the second boundary grid unit.
- the grid unit 35 is the third boundary grid unit
- the grid unit 36 and the grid unit 37 are both the third boundary grid unit. If d is less than or equal to the preset distance threshold, the first boundary grid unit, the second boundary grid unit, and the third boundary grid unit 35, the third boundary grid unit 36, and the third boundary grid unit in this example
- the grid cell 37 is determined as the target boundary grid cell. If d is greater than the preset distance threshold, only the first boundary grid unit and the second boundary grid unit in this example are determined as the target boundary grid unit.
- the distance between the first boundary grid unit and the second boundary grid unit may be a linear distance or an arc distance.
- the arc distance is the distance between the first boundary grid unit and the vehicle as the radius, and an arc on the circle formed with the pole as the center, and the two ends of the arc are the first boundary grid unit and the second boundary The two closest endpoints on the grid cell.
- the boundary grid unit where the obstacle 4 is located is the first boundary grid unit
- the boundary grid unit where the obstacle 2 is located is determined as the second boundary corresponding to the first boundary grid unit.
- Circle a is a circle with the distance between the first boundary grid unit and the vehicle as the radius and the pole as the center, so that the distance between the first boundary grid unit 4 and the second boundary grid unit can be determined as d or d'.
- d' is the arc distance
- d is the straight line distance
- d' is an arc on the circle a that connects the two closest end points on the first boundary grid unit and the second boundary grid unit.
- the preset distance threshold used for comparison with the straight line distance or the arc distance is different.
- the preset distance threshold for comparison with the straight-line distance is the first preset distance threshold
- the preset distance threshold for comparison with the straight-line distance is the second preset distance threshold.
- the distance between the first boundary grid unit and the second boundary grid unit is less than or equal to the preset distance threshold, it means that the vehicle is between the first boundary grid unit and the second boundary grid unit. The distance between the two is too small, and the vehicle cannot pass.
- the first boundary grid unit, the second boundary grid unit and the third boundary grid unit are determined as the target boundary grid unit, which means that the boundary grid unit is formed.
- the area of the vehicle is cut to eliminate the area that is actually impassable by the vehicle, and the accuracy of the vehicle’s passable area detection is improved.
- S704 Determine an area between the target boundary grid unit and the vehicle as a passable area of the vehicle.
- the area between the target boundary grid unit and the vehicle is determined as the vehicle's passable area, and the area where the grid unit is located at a distance greater than the first distance from the vehicle is determined as the vehicle's impassable area .
- the first distance is the distance between the target boundary grid unit and the vehicle.
- a grid map can be generated according to the passable area and the impassable area of the vehicle.
- the grid map can also be referred to as an occupancy grid map (occupancy grid map,
- the grid map can more intuitively represent the passable area and the inaccessible area of the vehicle, and it is convenient for users to view the passable area and the inaccessible area of the vehicle.
- the lower boundary of the target boundary grid unit that is, the boundary on the side close to the vehicle on the target boundary grid unit, is regarded as the boundary of the vehicle's passable area, and the area between the boundary and the vehicle is the vehicle
- the other side of the boundary that is, the side away from the vehicle, is the impassable area of the vehicle.
- the target boundary grid unit includes grid unit 1-grid unit 32, the shaded part in the figure is the vehicle impassable area, and the unshaded part That is, the area between the target grid unit and the vehicle is the vehicle passable area.
- the grid diagram used to represent the vehicle passable area and the unpassable area may also be in the form shown in FIG. 13 .
- the black area in the figure is used to indicate the impassable area of the vehicle
- point A indicates the vehicle
- the white grid area is used to indicate the passable area of the vehicle
- the white line is used to indicate the distance and relative distance between the vehicle and the vehicle according to the boundary of the vehicle’s passable area
- the boundary between the vehicle's passable area and the vehicle's impassable area in FIG. 12 is projected onto the grid shown in FIG. 13, and the boundary of the vehicle's passable area is finally obtained.
- the present application can determine at least two boundary grid units from multiple grid units, and then determine the target boundary grid unit based on the at least two boundary grid units, so as to realize the alignment of the boundary grid units. Update to get the target boundary grid unit. And the area between the target boundary grid unit and the vehicle is determined as the vehicle passable area.
- the target boundary grid unit can be used to cut the area between the boundary grid unit and the vehicle to remove the area that is actually impassable by the vehicle. , Improve the accuracy of vehicle passable area detection.
- the present application also provides a method for detecting a vehicle passable area.
- the data collected by the sensor is first filtered, and the data inside the vehicle (including the vehicle housing) collected by the sensor is removed.
- the location information of the obstacles around the vehicle is determined.
- the boundary grid unit is determined according to the location information of the obstacles around the vehicle.
- the data in the vehicle housing collected by the sensor is eliminated, and the grid unit where a certain point on the vehicle or the vehicle housing is located is avoided as the grid unit where the obstacle is located, thereby reducing the use of a certain point on the vehicle as a grid unit.
- the possibility of the boundary of the passable area of the vehicle improves the accuracy of the detection of the passable area of the vehicle.
- the boundary grid unit is determined in step S702
- the distance between the boundary grid unit and the vehicle at each azimuth angle is stored as an array element according to a preset direction.
- Dimensional boundary array is stored as an array element according to a preset direction.
- the array elements in the one-dimensional boundary array are updated according to the distance between the target boundary grid unit and the vehicle in each azimuth.
- the preset direction is counterclockwise or clockwise.
- the positive direction of the polar coordinate system that is, the order in the counterclockwise direction is selected as the order in which the array elements are stored in the one-dimensional boundary array.
- the number of array elements in the one-dimensional boundary array is the same as the number of azimuth angles obtained when the grid unit is divided according to the preset angle interval.
- the distance between the boundary grid unit and the vehicle is stored as an array element and stored in a one-dimensional boundary array.
- the subscripts of the array elements in the one-dimensional boundary array are 0-719.
- step S702 in another possible implementation manner, for the same azimuth angle, if there is an obstacle on the azimuth angle, determine the network where the obstacle on the azimuth angle is closest to the vehicle.
- the grid unit is the boundary grid unit on the azimuth angle; if there is no obstacle on the azimuth angle, it is determined that there is no boundary grid unit on the azimuth angle.
- the farthest distance that can be monitored on the azimuth can be used as an array element and stored in a one-dimensional boundary array, or infinity INF can be used as the azimuth
- the array elements are stored in a one-dimensional boundary array, or the array elements are not stored in the azimuth.
- the distance between the boundary grid unit and the vehicle is stored in a one-dimensional boundary array in a counterclockwise direction as an array element, and the subscripts of the array elements in the one-dimensional boundary array are 0-71.
- each array element can be represented by a 0 to a 71 , where the array elements a 1 and a 71 have no boundary grid cells in the azimuth angles, and a 1 and a 71 correspond to the direction angles
- the distance between the boundary grid unit and the vehicle is stored in a one-dimensional boundary array in a counterclockwise direction as an array element, and the subscripts of the array elements in the one-dimensional boundary array are 0-71.
- the two boundary grid units at the azimuth angles corresponding to a0 and a2 can be used as the first boundary grid unit and the second boundary grid unit respectively. If the first boundary grid unit If the distance from the second boundary grid unit is less than or equal to the preset distance threshold, the first boundary grid unit, the second boundary grid unit, and the third boundary grid unit are determined as the target boundary grid unit.
- the third boundary grid unit is a grid unit that is at the azimuth angle corresponding to a2 and is the same as the distance between the first boundary grid unit and the vehicle. Then, the one-dimensional boundary array updated according to the distance between the target boundary grid unit and the vehicle is shown in Table 4 below.
- the distance between the target boundary grid unit and the vehicle is stored as an array element and stored in a one-dimensional boundary array.
- the one-dimensional boundary array can simply and intuitively reflect the passable area of the vehicle at each azimuth angle. boundary.
- each boundary grid unit is used as the first boundary grid unit to determine its corresponding second boundary grid unit, and according to the first boundary grid unit and the second boundary grid unit The distance between the grid cells and the preset distance threshold are used to determine the target boundary grid cell.
- 3 can be determined according to the boundary grid unit where obstacle 1, obstacle 2, obstacle 4, obstacle 5 are located, and boundary grid unit 7-boundary grid unit 34
- the concentric circles that is, the circles formed by the solid lines shown in the figure
- the target boundary grid unit is determined. That is to say, according to the order of the radius of the concentric circles from small to large, the boundary grid cells on the concentric circle a, the concentric circle b, and the concentric circle c are analyzed in turn.
- any one of them can be determined as the first boundary grid unit.
- the second boundary grid unit corresponding to the first boundary grid unit is obstacle 4 Where the boundary grid unit is located, and the distance between the first boundary grid unit and the second boundary grid unit is greater than the preset distance threshold, then the first boundary grid unit and the second boundary grid unit are determined to be the target boundary Grid unit.
- the second boundary grid unit corresponding to the first boundary grid unit is the boundary where obstacle 2 is located.
- the distance between the first boundary grid unit and the second boundary grid unit is greater than a preset distance threshold, then it is determined that the first boundary grid unit and the second boundary grid unit are the target boundary grids unit.
- the boundary grid unit where obstacle 2 is located is the first boundary grid unit, and the preset direction is counterclockwise, then the boundary grid unit where obstacle 1 is located is the second boundary corresponding to the first boundary grid unit.
- the grid unit E is located in the preset direction of the first boundary grid unit between the first boundary grid unit and the second boundary grid unit, and the distance between the grid unit E and the vehicle is equal to the distance between the first grid unit and the vehicle, the grid unit E is the third boundary grid Grid unit, determining the first boundary grid unit, the second boundary grid unit, and the third boundary grid unit as the target boundary grid unit.
- the process of determining the target boundary grid unit based on the boundary grid unit on the concentric circle a is over, the following is the same way to determine the target boundary grid based on the boundary grid unit on the concentric circle b and concentric circle c Cell.
- the first boundary grid unit and the second boundary grid unit are determined as the target boundary grid unit.
- the boundary grid unit with the same azimuth angle as the third boundary grid unit may not be considered, or the boundary grid unit with the same azimuth angle as the third boundary grid unit may be marked as unnecessary to be processed, so as to reduce the determination target
- the workload of the boundary grid unit process improves the efficiency of determining the target boundary grid unit, thereby improving the efficiency of vehicle passable area detection.
- the boundary grid unit 9 and the third boundary grid unit E are located at the same azimuth angle, and the distance between the boundary grid unit 9 and the vehicle is greater than that of the third boundary grid.
- the boundary grid unit 9 For the distance between grid cell E and the vehicle, mark the boundary grid unit 9 as not to be processed.
- the target boundary grid unit is determined based on the boundary grid unit on the concentric circle c, the boundary grid unit is no longer 9 is processed.
- the first boundary grid unit and the second boundary grid unit are directly determined as the target boundary grid unit.
- the boundary grid unit can be directly connected to the boundary grid unit.
- a grid unit located on the same azimuth angle and whose distance from the vehicle is greater than the distance between the boundary grid unit and the vehicle, as well as the boundary grid unit, is determined as an impassable grid unit, that is, an impassable area of the vehicle. That is to say, in addition to the above-mentioned impassable grid units, the area where other grid units are located is the passable area of the vehicle. If the number of boundary grid units determined in the above step S702 is 0, and the boundary grid unit is no longer determined in the azimuth angle of the obstacle, the entire surrounding area of the vehicle, that is, the preset area, is the vehicle’s availability. Passable area.
- FIG. A schematic diagram of a possible structure of a device in a traffic area, the device includes a processing unit 1501, a determining unit 1502, and a generating unit 1503.
- the device for detecting a vehicle passable area may also include other modules, or the device for detecting a vehicle passable area may include fewer modules.
- the processing unit 1501 is configured to determine at least two boundary grid units from a plurality of grid units, where the at least two boundary grid units are grid units where the obstacle closest to the vehicle at the same azimuth angle is located, The multiple grid units are obtained by dividing the surrounding area where the vehicle is located.
- the processing unit 1501 is configured to determine at least two boundary grid units from a plurality of grid units, the processing unit 1501 is configured to determine location information of obstacles around the vehicle.
- the processing unit 1501 is used to determine the location information of obstacles around the vehicle, including: a processing unit 1501 is used to determine the location of the obstacles around the vehicle based on external data collected by sensors on the vehicle information.
- the external data refers to data outside the vehicle collected by the sensor.
- the aforementioned sensor includes one or more of laser radar, millimeter wave radar, or vision sensor.
- the processing unit 1501 is further configured to determine a target boundary grid unit based on at least two boundary grid units, where the target boundary grid unit refers to a grid unit where the boundary of the vehicle's passable area is located.
- the processing unit 1501 is configured to determine a target boundary grid unit based on at least two boundary grid units, and includes: a processing unit 1501, configured to determine a target boundary grid unit based on the difference between the first boundary grid unit and the second boundary grid unit The distance to determine the target boundary grid unit.
- the first boundary grid unit is any one of the at least two boundary grid units
- the distance between the second boundary grid unit and the vehicle is less than or equal to the distance between the first boundary grid unit and the vehicle
- the second boundary grid unit is the closest to the first boundary grid unit in the direction.
- the aforementioned preset direction is a clockwise direction or a counterclockwise direction.
- the processing unit 1501 is configured to determine the target boundary grid unit according to the distance between the first boundary grid unit and the second boundary grid unit, including: a processing unit 1501, configured to pass the first boundary grid unit The distance between the grid cell and the second boundary grid cell is compared with a preset distance threshold to determine the target boundary grid cell.
- the processing unit 1501 is configured to determine the target boundary grid unit by comparing the distance between the first boundary grid unit and the second boundary grid unit with a preset distance threshold, including : Processing unit 1501, configured to determine the first boundary grid unit and the second boundary grid unit when the distance between the first boundary grid unit and the second boundary grid unit is less than or equal to the preset distance threshold Is the target boundary grid unit.
- the distance between the third boundary grid unit and the vehicle is equal to the distance between the first boundary grid unit and the vehicle, and the third boundary grid unit is located between the first boundary grid unit and the second boundary grid unit in the preset direction between.
- the processing unit 1501 is configured to determine the first boundary grid unit and the second boundary grid unit as the target boundary grid when the distance between the first boundary grid unit and the second boundary grid unit is greater than a preset distance threshold. unit.
- the processing unit 1501 is configured to determine the target boundary grid unit according to at least two boundary grid units
- the generating unit 1503 is configured to generate Grid diagram.
- the impassable area refers to an area where a grid unit whose distance from the vehicle is greater than a first distance is located, and the first distance refers to the distance between the target boundary grid unit and the vehicle.
- the determining unit 1502 is configured to determine the area between the target boundary grid unit and the vehicle as a passable area of the vehicle.
- An embodiment of the present application provides a computer-readable storage medium storing one or more programs.
- the one or more programs include instructions that, when executed by a computer, cause the computer to perform steps S701 to S704 of the foregoing embodiment.
- the method for detecting the passable area of a vehicle is not limited to one or more programs.
- the embodiment of the present application also provides a computer program product containing instructions, which when the instructions are run on a computer, cause the computer to execute the method of detecting a vehicle passable area executed in steps S701 to S704 of the foregoing embodiment.
- An embodiment of the present application provides an apparatus for detecting a vehicle passable area, including a processor and a memory; wherein the memory is used to store computer program instructions, and the processor is used to run the computer program instructions so that the apparatus for detecting a vehicle passable area executes the foregoing
- the method of detecting a vehicle passable area is executed in step S701-step S704 in the embodiment.
- the function is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer readable storage medium.
- the technical solution of the present application essentially or the part that contributes to the existing technology or the part of the technical solution can be embodied in the form of a software product, and the computer software product is stored in a storage medium, including Several instructions are used to make a computer device (which may be a personal computer, a server, or a network device, etc.) execute all or part of the steps of the methods described in the various embodiments of the present application.
- the aforementioned storage media include: U disk, mobile hard disk, read-only memory (read-only memory, ROM), random access memory (random access memory, RAM), magnetic disks or optical disks and other media that can store program codes. .
Landscapes
- Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Aviation & Aerospace Engineering (AREA)
- Automation & Control Theory (AREA)
- Computer Networks & Wireless Communication (AREA)
- Electromagnetism (AREA)
- Traffic Control Systems (AREA)
Abstract
本申请提供一种检测车辆可通行区域的方法及装置,涉及自动驾驶领域,用于根据至少两个边界网格单元,来确定目标边界网格单元,从而实现对车辆的可通行区域的剪切,提高车辆的可通行区域检测的准确性。该方法包括:从多个网格单元中确定至少两个边界网格单元,这至少两个边界网格单元为在同一方位角上与车辆距离最近的障碍物所在的网格单元,多个网格单元是对车辆所在的周围区域进行划分得到;从至少两个边界网格单元中确定目标边界网格单元,该目标边界网格单元是指车辆的可通行区域的边界所在的网格单元;将目标边界网格单元与车辆之间的区域确定为车辆的可通行区域。
Description
本申请涉及自动驾驶领域,尤其涉及一种检测车辆可通行区域的方法及装置。
移动机器人(以自动驾驶车辆为例)可以利用视觉传感器(例如摄像头)以及雷达传感器(例如激光雷达、毫米波雷达)等传感器获取到的数据,检测到周围环境中的可通行区域(free space),即该自动驾驶车辆可以行驶的区域。随后,自动驾驶车辆可以根据检测到的可通行区域,对其行驶路径进行规划,从而实现车辆的自动驾驶。
在现有技术中,常用的用于确定车辆的可通行区域的方式可以大致分为两类。
一类是通过采集到的传感器数据对路面信息进行检测,并考虑车辆是否可以通过路面上的空闲区域,将路面上的非空闲区域以及路面上车辆不能通过的空闲区域,确定为车辆的不可通行区域,将路面上车辆可以通过的空闲区域确定为车辆的可通行区域。例如:利用激光雷达获取到的当前场景下的路面高度变化情况,将激光雷达的每条激光线返回的扫描数据分成若干个片段。然后使用迭代的直线拟合算法从这些片段中提取直线特征,并确定满足合适的直线特征等条件的片段为可通行的离散区域。若某一可通行的离散区域的宽度小于自车宽度,则丢掉这一区域,确定其他的离散区域为车辆的可通行离散区域。最后,将激光雷达的每条激光线上检测出来的可通行离散区域进行合并,得到车辆的可通行区域。但是这种方式仅适用于利用多线激光雷达来确定车辆正前方区域的可通行区域,因此该方法的通用性较差,且未能确定车辆在其侧面方向上的可通行区域。
另一类是在利用传感器所获取的数据确定可通行区域后,再对传感器获取到的信息进行检测,确定道路的边沿信息,例如路沿以及车道线等,并结合车辆所处位置以及高精度地图,确定车辆所处位置的周边道路结构。最后根据检测到的道路边沿信息以及车辆的周边道路结构,对可通行区域进行剪切,从而很好的去除道路外的区域以及绿化带等导致的细条状的可通行区域。但是在利用这类方式所检测到的车辆的可通行区域中,可能存在障碍物之间距离较小的区域,例如相邻车道上并行的车辆之间的间隙,或者前方道路中并排分布的路障(例如锥桶)之间的间隙等,自动驾驶车辆在这些区域中不能通行。因此,在现有技术中,利用传感器获取到的数据所检测到的可通行区域的准确性较低。
发明内容
本申请提供一种检测车辆可通行区域的方法及装置,从多个网格单元中确定边界网格单元,然后根据边界网格单元,确定目标边界网格单元,从而实现对车辆的可通行区域的剪切,剔除实际不允许车辆通过的区域,得到车辆可通行区域的边界,从而提高检测车辆的可通行区域的准确性。
为达到上述目的,本申请采用如下技术方案:
第一方面,本申请提供一种检测车辆可通行区域的方法,涉及自动驾驶领域,该方法包括:从多个网格单元中确定至少两个边界网格单元,其中,该至少两个边界网 格单元为在同一方位角上与车辆距离最近的障碍物所在的网格单元,多个网格单元是对所述车辆所在的周围区域进行划分得到。然后,根据该至少两个边界网格单元,确定目标边界网格单元,该目标边界网格单元是指车辆的可通行区域的边界所在的网格单元。最后,将目标边界网格单元与车辆之间的区域确定为车辆的可通行区域。
通过上述过程,本申请可以从多个网格单元中,确定至少两个边界网格单元,再根据这至少两个边界网格单元,来确定目标边界网格单元,以实现对边界网格单元的更新,得到目标边界网格单元。且将目标边界网格单元与车辆之间的区域确定为车辆可通行区域,可以利用目标边界网格单元对边界网格单元与车辆之间的区域进行剪切,去除实际上车辆不可通行的区域,提高车辆的可通行区域检测的准确性。
在一种可能的实现方式中,根据至少两个边界网格单元,确定目标边界网格单元,包括:根据第一边界网格单元与第二边界网格单元之间的距离,确定目标边界网格单元。其中,第一边界网格单元为至少两个边界网格单元中的任意一个,该第二边界网格单元与车辆的距离小于或等于第一边界网格单元与车辆的距离,且在预设方向上第二边界网格单元与第一边界网格单元距离最近。
通过上述过程,本申请可以确定至少两个边界网格单元中的任意一个作为第一边界网格单元,且对于每一第一边界网格单元来说,都可以确定唯一与其对应的第二边界网格单元。因此,根据第一边界网格单元与第二边界网格单元之间的距离来确定目标边界网格单元,可实现对边界网格单元的更新,并尽可能地剔除掉根据边界网格单元所确定的区域中的实际车辆不可通行的区域,提高车辆可通行区域检测的准确性。
在一种可能的实现方式中,根据第一边界网格单元与第二边界网格单元之间的距离,确定目标边界网格单元,包括:通过将第一边界网格单元与第二边界网格单元之间的距离和预设距离阈值进行比较,确定目标边界网格单元。
通过上述过程,由于该预设距离阈值可以根据需求设置为大于车辆宽度的数值,本申请中根据预设距离阈值来确定目标边界网格单元的方案,可以尽可能地保证车辆在根据目标边界网格单元所确定的车辆可通行区域内通行,提高车辆可通行区域检测的准确性。
在一种可能的实现方式中,通过将第一边界网格单元与第二边界网格单元之间的距离与预设距离阈值进行比较,确定目标边界网格单元,包括:在第一边界网格单元与第二边界网格单元之间的距离小于或等于预设距离阈值时,将第一边界网格单元、第二边界网格单元,确定为目标边界网格单元。其中,第三边界网格单元与车辆的距离等于第一边界网格单元与车辆的距离,且在预设方向上第三边界网格单元位于第一边界网格单元与第二边界网格单元之间。在第一边界网格单元与第二边界网格单元的距离大于预设距离阈值时,将第一边界网格单元以及第二边界网格单元,确定为目标边界网格单元。
通过上述过程,本申请在根据边界网格单元确定车辆可通行区域后,还根据预设距离阈值,对该可通行区域中的宽度小于该预设距离阈值的区域进行剔除,也就是剔除该车辆实际不可通行的区域,将边界网格单元更新为用于确定车辆可通行区域的目标边界网格单元,从而提高车辆可通行区域检测的准确性。
在一种可能的实现方式中,在根据至少两个边界网格单元,确定目标边界网格单 元之后,根据车辆的可通行区域和不可通行区域生成网格图。其中,该不可通行区域是指与车辆的距离大于第一距离的网格单元所在的区域,该第一距离是指目标边界网格单元与车辆的距离。
通过上述过程,根据车辆的可通行区域和不可通行区域生成的网格图,可较为直观的表示车辆的可通行区域和不可通行区域,方便查看车辆的可通行区域和不可通行区域。
在一种可能的实现方式中,在从多个网格单元中确定至少两个边界网格单元之前,先确定车辆周围的障碍物的位置信息。其中,障碍物的位置信息中可以包括该障碍物相对于车辆的方位角,以及该障碍物与车辆的距离。
在一种可能的实现方式中,确定车辆周围的障碍物的位置信息,包括:根据车辆上传感器采集的外部数据,确定车辆周围的障碍物的位置信息。其中,外部数据是指传感器采集到的车辆之外的数据。
通过上述过程,本申请将根据车辆上的传感器所采集到的车辆之外的数据,即外部数据剔除,以减少将传感器采集到的车辆上的某一点,确定为该点所在方位角上距离车辆最近的障碍物的情况的发生,从而降低将车辆上的某一点作为车辆的可通行区域的边界的可能性,提高检测车辆的可通行区域的准确性。
在一种可能的实现方式中,用于采集外部数据的传感器包括激光雷达、毫米波雷达或视觉传感器中的一种或多种。
通过上述过程,由于在本申请中,用于确定车辆的可通行区域的传感器的种类较多,使得本申请中车辆的可通行区域的检测方法具有很好的通用性,且利用多种传感器采集到的数据来确定车辆的可通行区域,可以进一步提高检测车辆的可通行区域的准确性。
在一种可能的实现方式中,上述预设方向为顺时针方向或逆时针方向。
在一种可能的实现方式中,根据第一边界网格单元与第二边界网格单元之间的距离,确定目标边界网格单元的过程中,若在目标边界网格单元的同一方位角上,存在与车辆的距离小于该目标边界网格单元的边界网格单元,则确定该边界网格单元为不需要处理的边界网格单元。也就是说,在后续的确定边界网格单元的过程中,该边界网格单元可视为车辆不可通行区域内的网格单元,不再以该边界网格单元作为第一边界网格单元来确定目标边界网格单元。
通过上述过程,本申请可以减少在确定目标边界网格单元的过程中需要进行处理的边界网格单元,从而减少检测车辆的可通行区域的过程中的计算量,提高检测车辆的可通行区域的效率。
第二方面,本申请提供一种检测车辆可通行区域的装置,涉及自动驾驶领域,该装置包括:处理单元,用于从多个网格单元中确定至少两个边界网格单元,该至少两个边界网格单元为与在同一方位角上与车辆距离最近的障碍物所在的网格单元,该多个网格单元是对车辆所在的周围区域进行划分得到。处理单元,还用于根据至少两个边界网格单元,确定目标边界网格单元,该目标边界网格单元是指车辆的可通行区域的边界所在的网格单元。确定单元,用于将目标边界网格单元与车辆之间的区域确定为车辆的可通行区域。
在一种可能的实现方式中,处理单元,用于根据至少两个边界网格单元,确定目标边界网格单元,包括:处理单元,用于根据第一边界网格单元与第二边界网格单元之间的距离,确定目标边界网格单元。其中,第一边界网格单元为该至少两个边界网格单元中的任意一个,第二边界网格单元与车辆的距离小于或等于第一边界网格单元与车辆的距离,且在预设方向上第二边界网格单元与第一边界网格单元距离最近。
在一种可能的实现方式中,处理单元,用于根据第一边界网格单元与第二边界网格单元之间的距离,确定目标边界网格单元,包括:处理单元,用于通过将第一边界网格单元与第二边界网格单元之间的距离和预设距离阈值进行比较,确定目标边界网格单元。
在一种可能的实现方式中,处理单元,用于通过将第一边界网格单元与第二边界网格单元之间的距离和预设距离阈值进行比较,确定目标边界网格单元,包括:处理单元,用于在第一边界网格单元与第二边界网格单元之间的距离小于或等于预设距离阈值时,将第一边界网格单元、第二边界网格单元,确定为目标边界网格单元。其中,第三边界网格单元与车辆的距离等于第一边界网格单元与车辆的距离,且在预设方向上第三边界网格单元位于第一边界网格单元与第二边界网格单元之间。处理单元,用于在第一边界网格单元与第二边界网格单元的距离大于预设距离阈值时,将第一边界网格单元以及第二边界网格单元,确定为目标边界网格单元。
在一种可能的实现方式中,在处理单元,用于根据至少两个边界网格单元,确定目标边界网格单元之后,生成单元,用于根据车辆的可通行区域和不可通行区域生成网格图。其中该不可通行区域是指与车辆的距离大于第一距离的网格单元所在的区域,该第一距离是指目标边界网格单元与车辆的距离。
在一种可能的实现方式中,在处理单元,用于从多个网格单元中确定至少两个边界网格单元之前,处理单元,用于确定车辆周围的障碍物的位置信息。
在一种可能的实现方式中,处理单元,用于确定车辆周围的障碍物的位置信息,包括:处理单元,用于根据车辆上传感器采集的外部数据,确定车辆周围的障碍物的位置信息。其中,该外部数据是指传感器采集到的车辆之外的数据。
在一种可能的实现方式中,上述传感器包括激光雷达、毫米波雷达或视觉传感器中的一种或多种。
在一种可能的实现方式中,上述预设方向为顺时针方向或逆时针方向。
第三方面,本申请提供一种检测车辆可通行区域的装置,该装置包括:处理器和存储器;其中,存储器用于存储计算机程序指令,处理器运行计算机程序指令以使该检测车辆可通行区域的装置执行第一方面所述的检测车辆可通行区域的方法。
第四方面,本申请提供一种计算机可读存储介质,包括计算机指令,当该计算机指令被处理器运行时,使得检测车辆可通行区域的装置执行如第一方面所述的检测车辆可通行区域的方法。
第五方面,本申请提供一种计算机程序产品,其特征在于,当该计算机程序产品在处理器上运行时,使得检测车辆可通行区域的装置执行如第一方面所述的检测车辆可通行区域的方法。
图1为本申请实施例提供的一种车辆的结构示意图一;
图2为本申请实施例提供的一种车辆的结构示意图二;
图3为本申请实施例提供的一种计算机***的结构示意图;
图4为本申请实施例提供的一种云侧指令自动驾驶车辆的应用示意图一;
图5为本申请实施例提供的一种云侧指令自动驾驶车辆的应用示意图二;
图6为本申请实施例提供的一种计算机程序产品的结构示意图;
图7为本申请实施例提供的一种检测车辆可通行区域的方法的流程示意图;
图8为本申请实施例提供的一种多个网格单元的示意图;
图9为本申请实施例提供的一种边界网格单元的示意图一;
图10为本申请实施例提供的一种边界网格单元的示意图二;
图11为本申请实施例提供的一种边界网格单元之间的距离的示意图;
图12为本申请实施例提供的一种网格图的示意图一;
图13为本申请实施例提供的一种网格图的示意图二;
图14为本申请实施例提供的一种同心圆的示意图;
图15为本申请实施例提供的一种的检测车辆可通行区域的装置的示意图。
本申请实施例提供一种检测车辆可通行区域的方法及装置,该方法应用在车辆中,或者应用于具有控制车辆的功能的其他设备(比如云端服务器、手机终端等)中。车辆或者其他设备可以通过其包含的组件(包括硬件和软件),实施本申请实施例提供的检测车辆可通行区域的方法,根据传感器采集到的数据,对车辆的周边环境进行检测,确定车辆的可通行区域,使得车辆可以根据该可通行区域规划其行驶路径。
图1为本申请实施例提供的车辆100的功能框图,该车辆100可以是自动驾驶车辆。在一个实施例中,车辆100根据传感器采集到的数据,对车辆的可通行区域进行检测,确定该车辆的可通行区域,以便于该车辆根据该可通行区域,对车辆的行驶路径进行规划。
车辆100可包括各种子***,例如行进***110、传感器***120、控制***130、一个或多个***设备140以及电源150、计算机***160和用户接口170。可选地,车辆100可包括更多或更少的子***,并且每个子***可包括多个元件。另外,车辆100的每个子***和元件可以通过有线或者无线互连。
行进***110可包括为车辆100提供动力运动的组件。在一个实施例中,行进***110可包括引擎111、传动装置112、能量源113和车轮114。引擎111可以是内燃引擎、电动机、空气压缩引擎或其他类型的引擎组合,例如汽油发动机和电动机组成的混动引擎,内燃引擎和空气压缩引擎组成的混动引擎。引擎111将能量源113转换成机械能量。
能量源113的示例包括汽油、柴油、其他基于石油的燃料、丙烷、其他基于压缩气体的燃料、乙醇、太阳能电池板、电池和其他电力来源。能量源113也可以为车辆100的其他***提供能量。
传动装置112可以将来自引擎111的机械动力传送到车轮114。传动装置112可包括变速箱、差速器和驱动轴。在一个实施例中,传动装置112还可以包括其他器件, 比如离合器。其中,驱动轴可包括可耦合到一个或多个车轮114的一个或多个轴。
传感器***120可包括感测关于车辆100周边的环境的信息的若干个传感器。例如,传感器***120可包括定位***121(定位***可以是全球定位***(global positioning system,GPS),也可以是北斗***或者其他定位***)、惯性测量单元(inertial measurement unit,IMU)122、雷达123、激光雷达124以及相机125。传感器***120还可包括被监视车辆100的内部***的传感器(例如,车内空气质量监测器、燃油量表、机油温度表等)。来自这些传感器中的一个或多个的传感器数据可用于检测对象及其相应特性(位置、形状、方向、速度等)。这种检测和识别是车辆100自动驾驶的安全操作的关键功能。
定位***121可用于估计车辆100的地理位置。IMU 122用于基于惯性加速度来感测车辆100的位置和朝向变化。在一个实施例中,IMU 122可以是加速度计和陀螺仪的组合。
雷达123可利用无线电信号来感测车辆100的周边环境内的物体。在一些实施例中,除了感测物体以外,雷达123还可用于感测物体的速度和/或前进方向。
激光雷达124可利用激光来感测车辆100所位于的环境中的物体。在一些实施例中,激光雷达124可包括一个或多个激光源、激光扫描器以及一个或多个检测器,以及其他***组件。
相机125可用于捕捉车辆100的周边环境的多个图像,以及车辆驾驶舱内的多个图像。相机125可以是静态相机或视频相机。
控制***130可控制车辆100及其组件的操作。控制***130可包括各种元件,其中包括转向***131、油门132、制动单元133、计算机视觉***134、路线控制***135以及障碍规避***136。
转向***131可操作来调整车辆100的前进方向。例如在一个实施例中可以为方向盘***。
油门132用于控制引擎111的操作速度并进而控制车辆100的速度。
制动单元133用于控制车辆100减速。制动单元133可使用摩擦力来减慢车轮114。在其他实施例中,制动单元133可将车轮114的动能转换为电流。制动单元133也可采取其他形式来减慢车轮114转速从而控制车辆100的速度。
计算机视觉***134可以操作来处理和分析由相机125捕捉的图像以便识别车辆100周边环境中的物体和/或特征以及车辆驾驶舱内的驾驶员的肢体特征和面部特征。所述物体和/或特征可包括交通信号、道路状况和障碍物,所述驾驶员的肢体特征和面部特征包括驾驶员的行为、视线、表情等。计算机视觉***134可使用物体识别算法、运动中恢复结构(structure from motion,SFM)算法、视频跟踪和其他计算机视觉技术。在一些实施例中,计算机视觉***134可以用于为环境绘制地图、跟踪物体、估计物体的速度、确定驾驶员行为、人脸识别等等。
路线控制***135用于确定车辆100的行驶路线。在一些实施例中,路线控制***135可结合来自传感器、定位***121和一个或多个预定地图的数据以为车辆100确定行驶路线。
障碍规避***136用于识别、评估和避免或者以其他方式越过车辆100的环境中 的潜在障碍物。
当然,在一个实例中,控制***130可以增加或替换地包括除了所示出和描述的那些以外的组件。或者也可以减少一部分上述示出的组件。
车辆100通过***设备140与外部传感器、其他车辆、其他计算机***或用户之间进行交互。***设备140可包括无线通信***141、车载电脑142、麦克风143和/或扬声器144。
在一些实施例中,***设备140提供车辆100的用户与用户接口170交互的手段。例如,车载电脑142可向车辆100的用户提供信息。用户接口170还可操作车载电脑142来接收用户的输入。车载电脑142可以通过触摸屏进行操作。在其他情况中,***设备140可提供用于车辆100与位于车内的其它设备通信的手段。例如,麦克风143可从车辆100的用户接收音频(例如,语音命令或其他音频输入)。类似地,扬声器144可向车辆100的用户输出音频。
无线通信***141可以直接地或者经由通信网络来与一个或多个设备无线通信。例如,无线通信***141可使用3G蜂窝通信,例如CDMA、EVD0、GSM/GPRS,或者4G蜂窝通信,例如LTE。或者5G蜂窝通信。无线通信***141可利用WiFi与无线局域网(wireless local area network,WLAN)通信。在一些实施例中,无线通信***141可利用红外链路、蓝牙或ZigBee与设备直接通信。其他无线协议,例如各种车辆通信***,例如,无线通信***141可包括一个或多个专用短程通信(dedicated short range communications,DSRC)设备。
电源150可向车辆100的各种组件提供电力。在一个实施例中,电源150可以为可再充电锂离子或铅酸电池。这种电池的一个或多个电池组可被配置为电源,从而为车辆100的各种组件提供电力。在一些实施例中,电源150和能量源113可一起实现,例如一些全电动车中那样。
车辆100的部分或所有功能受计算机***160控制。计算机***160可包括至少一个处理器161,处理器161执行存储在例如数据存储装置162这样的非暂态计算机可读介质中的指令1621。计算机***160还可以是采用分布式方式控制车辆100的个体组件或子***的多个计算设备。
处理器161可以是任何常规的处理器,诸如商业可获得的中央处理单元(central processing unit,CPU)。替选地,该处理器可以是诸如专用集成电路(application specific integrated circuit,ASIC)或其它基于硬件的处理器的专用设备。尽管图1功能性地图示了处理器、存储器、和在相同物理外壳中的其它元件,但是本领域的普通技术人员应该理解该处理器、计算机***、或存储器实际上可以包括可以存储在相同的物理外壳内的多个处理器、计算机***、或存储器,或者包括可以不存储在相同的物理外壳内的多个处理器、计算机***、或存储器。例如,存储器可以是硬盘驱动器,或位于不同于物理外壳内的其它存储介质。因此,对处理器或计算机***的引用将被理解为包括对可以并行操作的处理器或计算机***或存储器的集合的引用,或者可以不并行操作的处理器或计算机***或存储器的集合的引用。不同于使用单一的处理器来执行此处所描述的步骤,诸如转向组件和减速组件的一些组件每个都可以具有其自己的处理器,所述处理器只执行与特定于组件的功能相关的计算。
在此处所描述的各个方面中,处理器可以位于远离该车辆并且与该车辆进行无线通信。在其它方面中,此处所描述的过程中的一些在布置于车辆内的处理器上执行而其它则由远程处理器执行,包括采取执行单一操纵的必要步骤。
在一些实施例中,数据存储装置162可包含指令1621(例如,程序逻辑),指令1621可被处理器161执行来执行车辆100的各种功能,包括以上描述的那些功能。数据存储装置162也可包含额外的指令,包括向行进***110、传感器***120、控制***130和***设备140中的一个或多个发送数据、从其接收数据、与其交互和/或对其进行控制的指令。
除了指令1621以外,数据存储装置162还可存储数据,例如道路地图、路线信息,车辆的位置、方向、速度以及其它这样的车辆数据,以及其他信息。这种信息可在车辆100在自主、半自主和/或手动模式中操作期间被车辆100和计算机***160使用。
比如,在一种可能的实施例中,数据存储装置162可以获取车辆基于传感器***120中的传感器获取到的周围环境中的障碍物信息,例如其他车辆、道路边沿,以及绿化带等障碍物的位置,障碍物与车辆的距离以及障碍物之间的距离等信息。数据存储装置162还可以从传感器***120或车辆100的其他组件获取环境信息,环境信息例如可以为车辆当前所处环境附近是否有绿化带、车道、行人等,或者车辆通过机器学习算法计算当前所处环境附近是否存在绿化带、行人等。除上述内容外,数据存储装置162还可以存储该车辆自身的状态信息,以及与该车辆有交互的其他车辆的状态信息,其中,车辆的状态信息包括但不限于车辆的位置、速度、加速度、航向角等。如此,处理器161可从数据存储装置162获取这些信息,并基于车辆所处环境的环境信息、车辆自身的状态信息、其他车辆的状态信息等确定车辆的可通行区域,并基于该可通行区域确定最终的驾驶策略,以控制车辆100自动驾驶。
用户接口170,用于向车辆100的用户提供信息或从其接收信息。可选地,用户接口170可与***设备140的集合内的一个或多个输入/输出设备进行交互,例如无线通信***141、车载电脑142、麦克风143和扬声器144中的一个或多个。
计算机***160可基于从各种子***(例如,行进***110、传感器***120和控制***130)获取的信息以及从用户接口170接收的信息来控制车辆100。例如,计算机***160可根据来自控制***130的信息,控制转向***131更改车辆前进方向,从而规避由传感器***120和障碍规避***136检测到的障碍物。在一些实施例中,计算机***160可对车辆100及其子***的许多方面进行控制。
可选地,上述这些组件中的一个或多个可与车辆100分开安装或关联。例如,数据存储装置162可以部分或完全地与车辆100分开存在。上述组件可以通过有线和/或无线的方式耦合在一起进行通信。
可选地,上述组件只是一个示例,实际应用中,上述各个模块中的组件有可能根据实际需要增添或者删除,图1不应理解为对本申请实施例的限制。
在道路行进的自动驾驶汽车,如上面的车辆100,可以根据其周围环境内的其他车辆以确定对当前速度的调整指令。其中,车辆100周围环境内的物体可以是交通控制设备、或者绿化带等其它类型的物体。在一些示例中,可以独立地考虑周围环境内 的每个物体,并且基于物体的各自的特性,诸如它的当前速度、加速度、与车辆的间距等,来确定车辆100的速度调整指令。
可选地,作为自动驾驶汽车的车辆100或者与其相关联的计算机设备(如图1的计算机***160、计算机视觉***134、数据存储装置162)可以基于所识别的测量数据,得到周围环境的状态(例如,交通、雨、道路上的冰、等等),并确定在当前时刻周边环境中的障碍物与车辆的相对位置。可选地,每一障碍物所形成的可通行区域的边界依赖于彼此,因此,还可以将获取到的所有测量数据来一起确定车辆的可通行区域的边界,去除掉可通行区域中实际不可通行的区域。车辆100能够基于检测到的车辆的可通行区域来调整它的驾驶策略。换句话说,自动驾驶汽车能够基于所检测到的车辆的可通行区域来确定车辆需要调整到什么稳定状态(例如,加速、减速、转向或者停止等)。在这个过程中,也可以考虑其它因素来确定车辆100的速度调整指令,诸如,车辆100在行驶的道路中的横向位置、道路的曲率、静态和动态物体的接近度等等。
除了提供调整自动驾驶汽车的速度的指令之外,计算机设备还可以提供修改车辆100的转向角的指令,以使得自动驾驶汽车遵循给定的轨迹和/或维持自动驾驶汽车与附近的物体(例如相邻车道中的轿车)的安全横向和纵向距离。
上述车辆100可以为轿车、卡车、摩托车、公共汽车、船、飞机、直升飞机、割草机、娱乐车、游乐场车辆、施工设备、电车、高尔夫球车、火车、和手推车等,本申请实施例不做特别的限定。
在本申请的另一些实施例中,自动驾驶车辆还可以包括硬件结构和/或软件模块,以硬件结构、软件模块、或硬件结构加软件模块的形式来实现上述各功能。上述各功能中的某个功能以硬件结构、软件模块、还是硬件结构加软件模块的方式来执行,取决于技术方案的特定应用和设计约束条件。
参见图2,示例性的,车辆中可以包括以下模块:
环境感知模块201:用于通过路侧传感器与车载传感器获取车辆周边环境中的车辆、行人、路面物体的信息等。其中,路侧传感器和车载传感器可以是激光雷达、毫米波雷达、视觉传感器等。环境感知模块201获取传感器原始采集的视频流数据、雷达的点云数据等,然后对这些原始的视频流数据、雷达的点云数据进行处理,得到可识别的结构化的人、车、物的位置、大小等数据,确定这些人、车、物相对于车辆的位置,进而确定车辆的可通行区域的边界等信息。其中,由于传感器的种类多样,环境感知模块201可以根据所有或者某一类或者某一个传感器采集到的数据,来确定车辆的可通行区域的边界,从而可以得到一个或多个车辆的可通行区域的边界。环境感知模块201,还用于将其根据传感器获取到的数据,确定的人、车、物的位置信息以及车辆的可通行区域的边界等信息发送给可通行区域检测模块202。
可通行区域检测模块202,用于从环境感知模块201获取一个或多个车辆的可通行区域的边界,利用传感器采集到的数据确定的人、车、物的位置信息等,并根据获取到的人、车、物的位置信息,对一个或多个车辆的可通行区域的边界进行剪切,以去除掉车辆实际不可通行的区域。该可通行区域检测模块202,还用于对一个或多个车辆的可通行区域的边界,或者已进行剪切后的一个或多个车辆的可通行区域的边界, 进行融合处理,以最终得到车辆的可通行区域。该可通行区域检测模块202还用于获取车辆的定位信息以及地图等数据,根据地图和车辆的定位信息,确定车辆所处的道路,以及该道路的结构,从而对车辆的可通行区域的边界进行剪切,以得到适于当前车辆所处道路的车辆的可通行区域。该可通行区域检测模块202还用于将其最终得到的车辆可通行区域,发送给仿真显示模块204以及规划控制模块203。
仿真显示模块204,用于接收可通行区域检测模块202发送的车辆的可通行区域的信息,并以网格图等形式显示车辆的可通行区域,以更加方便直观的查看到车辆的可通行区域与车辆的不可通行区域。
规划控制模块203,用于接收可通行区域检测模块202发送的车辆的可通行区域,并根据接收到的该车辆的可通行区域,对车辆的行驶路径进行规划,生成驾驶策略,输出与该驾驶策略对应的动作指令,并根据该指令控制车辆进行自动驾驶。该模块是自动驾驶车辆所具备的传统控制模块。
车辆定位模块205,用于确定车辆的定位信息,并将车辆的定位信息发送给可通行区域检测模块202。在一种可能的实现方式中,车辆定位模块205还用于将车辆的定位信息发送给环境感知模块201。
车载通信模块206(图2中未示出),用于自车和其他车辆之间的信息交互。
存储组件207(图2未示出),用于存储上述各个模块的可执行代码,运行这些可执行代码可实现本申请实施例的部分或全部方法流程。
在本申请实施例的一种可能的实现方式中,如图3所示,图1所示的计算机***160包括处理器301,处理器301和***总线302耦合,处理器301可以是一个或者多个处理器,其中每个处理器都可以包括一个或多个处理器核。显示适配器(video adapter)303可以驱动显示器324,显示器324和***总线302耦合。***总线302通过总线桥304和输入输出(I/O)总线(BUS)305耦合,I/O接口306和I/O总线305耦合,I/O接口306和多种I/O设备进行通信,比如输入设备307(如:键盘,鼠标,触摸屏等),多媒体盘(media tray)308,(例如,CD-ROM,多媒体接口等)。收发器309(可以发送和/或接收无线电通信信号),摄像头310(可以捕捉静态和动态数字视频图像)和外部通用串行总线(universal serial bus,USB)端口311。其中,可选地,和I/O接口306相连接的接口可以是USB接口。
其中,处理器301可以是任何传统处理器,包括精简指令集计算(reduced instruction set computer,RISC)处理器、复杂指令集计算(complex instruction set computer,CISC)处理器或上述的组合。可选地,处理器301还可以是诸如专用集成电路ASIC的专用装置。可选地,处理器301还可以是神经网络处理器或者是神经网络处理器和上述传统处理器的组合。
可选地,在本申请所述的各种实施例中,计算机***160可位于远离自动驾驶车辆的地方,且与自动驾驶车辆100无线通信。在其它方面,本申请所述的一些过程可设置在自动驾驶车辆内的处理器上执行,其它一些过程由远程处理器执行,包括采取执行单个操纵所需的动作。
计算机***160可以通过网络接口312和软件部署服务器(deploying server)313通信。可选的,网络接口312可以是硬件网络接口,比如网卡。网络(Network)314 可以是外部网络,比如因特网,也可以是内部网络,比如以太网或者虚拟私人网络(VPN),可选地,network314还可以为无线网络,比如WiFi网络、蜂窝网络等。
硬盘驱动器接口315和***总线302耦合。硬盘驱动器接口315和硬盘驱动器316相连接。***内存317和***总线302耦合。运行在***内存317的数据可以包括计算机***160的操作***(OS)318和应用程序319。
操作***(OS)318包括但不限于Shell 320和内核(kernel)321。Shell 320是介于使用者和操作***318的kernel 321间的一个接口。Shell 320是操作***318最外面的一层。shell管理使用者与操作***318之间的交互:等待使用者的输入,向操作***318解释使用者的输入,并且处理各种各样的操作***318的输出结果。
内核321由操作***318中用于管理存储器、文件、外设和***资源的部分组成,直接与硬件交互。操作***318的内核321通常运行进程,并提供进程间的通信,提供CPU时间片管理、中断、内存管理、IO管理等功能。
应用程序319包括自动驾驶相关的程序323,比如,管理自动驾驶汽车和路上障碍物交互的程序,控制自动驾驶汽车的行驶路线或者速度的程序,控制自动驾驶汽车和路上其他汽车/自动驾驶汽车交互的程序等。应用程序319也存在于deploying server313的***上。在一个实施例中,在需要执行应用程序319时,计算机***160可以从deploying server 313下载应用程序319。
又比如,应用程序319可以是控制车辆根据上述车辆的可通行区域以及传统控制模块确定驾驶策略的应用程序。计算机***160的处理器301调用该应用程序319,得到驾驶策略。
传感器322和计算机***160关联。传感器322用于探测计算机***160周围的环境。举例来说,传感器322可以探测动物,汽车,障碍物和/或人行横道等。进一步传感器322还可以探测上述动物,汽车,障碍物和/或人行横道等物体周围的环境。比如:动物周围的环境,例如,动物周围出现的其他动物,天气条件,动物周围环境的光亮度等。可选地,如果计算机***160位于自动驾驶的汽车上,传感器322可以是摄像头,红外线感应器,化学检测器,麦克风等器件中的至少一项。
在本申请的另一些实施例中,计算机***160还可以从其它计算机***接收信息或转移信息到其它计算机***。或者,从车辆100的传感器***120收集的传感器数据可以被转移到另一个计算机,由另一计算机对此数据进行处理。如图4所示,来自计算机***160的数据可以经由网络被传送到云侧的计算机***410用于进一步的处理。网络以及中间节点可以包括各种配置和协议,包括因特网、万维网、内联网、虚拟专用网络、广域网、局域网、使用一个或多个公司的专有通信协议的专用网络、以太网、WiFi和HTTP、以及前述的各种组合。这种通信可以由能够传送数据到其它计算机和从其它计算机传送数据的任何设备执行,诸如调制解调器和无线接口。
在一个示例中,计算机***410可以包括具有多个计算机的服务器,例如负载均衡服务器群。为了从计算机***160接收、处理并传送数据,服务器420与网络的不同节点交换信息。该计算机***410可以具有类似于计算机***160的配置,并具有处理器430、存储器440、指令450、和数据460。
在一个示例中,服务器420的数据460可以包括提供天气相关的信息。例如,服 务器420可以接收、监视、存储、更新、以及传送与周边环境中目标对象相关的各种信息。该信息可以包括例如以报告形式、雷达信息形式、预报形式等的目标类别、目标形状信息以及目标跟踪信息。
参见图5,为自主驾驶车辆和云服务中心(云服务器)交互的示例。云服务中心可以经诸如无线通信网络的网络511,从其操作环境500内的车辆513、车辆512接收信息(诸如车辆传感器收集到数据或者其它信息)。其中,车辆513和车辆512可为自动驾驶车辆。
云服务中心520根据接收到的数据,运行其存储的控制汽车自动驾驶相关的程序对车辆513、车辆512进行控制。控制汽车自动驾驶相关的程序可以为:管理自动驾驶汽车和路上障碍物交互的程序,或者控制自动驾驶汽车路线或者速度的程序,或者控制自动驾驶汽车和路上其他自动驾驶汽车交互的程序。
示例性的,云服务中心520通过网络511可将地图的部分提供给车辆513、车辆512。在其它示例中,可以在不同位置之间划分操作。例如,多个云服务中心可以接收、证实、组合和/或发送信息报告。在一些示例中还可以在车辆之间发送信息报告和/传感器数据。其它配置也是可能的。
在一些示例中,云服务中心520向自动驾驶车辆发送关于环境内可能的驾驶情况所建议的解决方案(如,告知前方障碍物,并告知如何绕开它))。例如,云服务中心520可以辅助车辆确定当面对环境内的特定障碍时如何行进。云服务中心520向自动驾驶车辆发送指示该车辆应当在给定场景中如何行进的响应。例如,云服务中心520基于收集到的传感器数据,可以确认道路前方具有临时停车标志的存在,又比如,基于“车道封闭”标志和施工车辆的传感器数据,确定该车道由于施工而被封闭。相应地,云服务中心520发送用于车辆通过障碍的建议操作模式(例如:指示车辆变道另一条道路上)。云服务中心520观察其操作环境500内的视频流,并且已确认自动驾驶车辆能安全并成功地穿过障碍时,对该自动驾驶车辆所使用的操作步骤可以被添加到驾驶信息地图中。相应地,这一信息可以发送到该区域内可能遇到相同障碍的其它车辆,以便辅助其它车辆不仅识别出封闭的车道还知道如何通过。
在一些实施例中,所公开的方法可以实施为以机器可读格式,被编码在计算机可读存储介质上的或者被编码在其它非瞬时性介质或者制品上的计算机程序指令。图6示意性地来示出根据这里展示的至少一些实施例而布置的示例计算机程序产品的概念性局部视图,示例计算机程序产品包括用于在计算设备上执行计算机进程的计算机程序。在一个实施例中,示例计算机程序产品600是使用信号承载介质601来提供的。信号承载介质601可以包括一个或多个程序指令602,其当被一个或多个处理器运行时可以提供以上针对图2至图5描述的全部功能或者部分功能,或者可以提供后续实施例中描述的全部或部分功能。例如,参考图7中所示的实施例,S701至S704中的一个或多个特征可以由与信号承载介质601相关联的一个或多个指令来承担。此外,图6中的程序指令602也描述示例指令。
在一些示例中,信号承载介质601可以包含计算机可读介质603,诸如但不限于,硬盘驱动器、紧密盘(CD)、数字视频光盘(DVD)、数字磁带、存储器、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random Access Memory,RAM) 等等。在一些实施方式中,信号承载介质601可以包含计算机可记录介质604,诸如但不限于,存储器、读/写(R/W)CD、R/W DVD、等等。在一些实施方式中,信号承载介质601可以包含通信介质605,诸如但不限于,数字和/或模拟通信介质(例如,光纤电缆、波导、有线通信链路、无线通信链路、等等)。因此,例如,信号承载介质601可以由无线形式的通信介质605(例如,遵守IEEE 802.11标准或者其它传输协议的无线通信介质)来传达。一个或多个程序指令602可以是,例如,计算机可执行指令或者逻辑实施指令。在一些示例中,诸如针对图2至图6描述的计算设备可以被配置为,响应于通过计算机可读介质603、和/或计算机可记录介质604、和/或通信介质605中的一个或多个传达到计算设备的程序指令602,提供各种操作、功能、或者动作。应该理解,这里描述的布置仅仅是用于示例的目的。因而,本领域技术人员将理解,其它布置和其它元素(例如,机器、接口、功能、顺序、和功能组等等)能够被取而代之地使用,并且一些元素可以根据所期望的结果而一并省略。另外,所描述的元素中的许多是可以被实现为离散的或者分布式的组件的、或者以任何适当的组合和位置来结合其它组件实施的功能实体。
为了解决对现有技术中存在的车辆的可通行区域检测的准确性差,车辆的可通行区域内仍存在其实际不可通行区域的问题,提高车辆可通行区域检测的准确性,本申请提出了一种检测车辆可通行区域的方法。该方法的执行主体可以为车辆或者具有控制车辆的功能的其他设备,例如自动驾驶车辆,也可以是车辆或者具有控制车辆的功能的其他设备中的处理器,例如上述内容中提到的处理器161、处理器301以及处理器430等。如图7所示,该方法包括步骤S701-S704:
S701、对车辆所在的周围区域进行划分,得到多个网格单元。
首先,将车辆的中心点(或质心)的位置确定为车辆的位置,并确定车辆的行进方向。然后,以车辆的行进方向作为极轴,也就是说以车辆的行进方向为极坐标系的0°角方向,以车辆所在的位置为极点,建立极坐标系。一般的,将逆时针方向设置为极坐标系的正方向。最后,按照预设角度间隔和预设径向距离间隔对车辆所在的周围区域,也就是上述极坐标系中的预设区域进行划分,得到多个网格单元。可选的,可将每一网格单元上某一点的极坐标,确定为该网格单元的标识。可选的,车辆所在的周围区域可以是以车辆为圆心,以预设半径为半径的圆形区域。可选的,每一网格单元的标识中的角度也就是该网格单元相对于车辆的方位角。
在一种可能的实现方式中,在按照预设角度间隔以及预设径向距离间隔,对极坐标系中的预设区域进行划分的过程中,预设角度间隔保持不变,预设径向距离间隔随着径向距离的取值的增大保持不变。或者预设径向距离间隔随着径向距离的取值的增大而改变,以使得每一网格单元的面积基本相同。
示例性的,按照预设角度间隔为0.5°,预设径向距离0.2m,对极坐标系中的区域进行划分,得到多个网格单元。例如网格单元的标识为(0.2m,0.5°)或(0.4m,0.5°)等。
示例性的,以a为预设径向距离间隔,以θ为预设角度间隔,对极坐标系内的预设区域进行划分,可得到如图8所示的多个网格单元。其中,O为极坐标系的极点,也就是车辆所在的位置,0°、90°、180°和270°为极坐标系的极角。
示例性的,在径向距离小于等于30m时,按照预设径向角度间隔为0.5°,预设径向距离间隔为0.2m,对极坐标系中半径为30m的圆形区域进行划分,得到多个网格单元;在径向距离大于30m且小于等于60m时,按照预设角度间隔为0.5°,预设径向距离间隔为0.5m,对极坐标系中半径大于30m且小于等于60m的环形区域进行划分,得到多个网格单元;在径向距离大于60m时,按照预设角度间隔0.5°,预设径向距离间隔为1m,对极坐标系中半径大于60m的区域进行划分,得到多个网格单元。例如,网格单元的标识为(28.8m,0.5°)或(30m,0.5°)或(30.5m,0.5°)或(55.5m,0.5°)或(60m,0.5°)或(61m,0.5°)等。
S702、根据传感器采集到的数据,确定边界网格单元。
其中,该传感器为车辆上的传感器。可选的,在另一种可能的实现方式中,该传感器除包括车辆上的传感器外,还可以包括车辆外的传感器,例如路侧传感器,或者该传感器为车辆外的传感器。
在一种可能的实现方式中,上述用于采集数据的传感器为激光雷达传感器、毫米波雷达传感器或者视觉传感器等传感器中的一种或多种。需要说明的是,通过利用多种传感器采集到的数据来确定车辆的可通行区域,可以使得本申请中检测车辆可通行区域的方法具有很好的通用性,且利用多种传感器采集到的数据来确定车辆的可通行区域,可以进一步提高检测车辆的可通行区域的准确性。
可选的,根据传感器采集到的数据,确定车辆在其周围区域中的障碍物的位置信息,并根据该位置信息以及上述步骤S701中得到的多个网格单元,来确定边界网格单元。
下面以激光雷达传感器为例,来对本步骤中根据传感器采集到的数据,确定障碍物的位置信息的具体实现过程进行介绍:
首先,根据激光雷达传感器采集到的激光线数据,确定该激光雷达传感器的直角坐标系中的点的坐标,也就是每个激光线数据对应的回波点在该激光雷达传感器的直角坐标系中的坐标。然后根据激光雷达传感器在自车直角坐标系中的位置,将每个激光线数据对应的回波点在该激光雷达传感器的直角坐标系中的坐标,转化为自车直角坐标系中的点的坐标,从而确定车辆所在周围环境中的障碍物的位置信息。其中,该位置信息包括障碍物相对于车辆的方位角,以及障碍物与车辆的距离。
示例性的,激光雷达传感器所采集到的数据中包括多个激光线数据,每个激光线数据中包括激光发射的垂直方向角度β,水平方向角度α以及扫描距离d。其中,激光发射的垂直方向角度β为激光线与该激光雷达传感器所在水平面,也就是该激光雷达传感器的直角坐标系的xoy平面之间的角度,水平方向角度α为激光线在该激光雷达传感器的直角坐标系的xoy平面上的投影,与激光雷达传感器的直角坐标系中的y轴正向之间的角度,扫描距离d为该激光线上的回波点与该激光雷达传感器之间的直线距离。其中,该激光雷达传感器的直角坐标系以激光雷达传感器所在的位置为原点,以该激光雷达传感器发射激光线的0°角方向为其直角坐标系的y轴正方向,以该激光雷达的旋转轴为z轴,以过原点且垂直于yoz平面的方向为x轴。根据该激光雷达传感器检测到的每个激光线数据以及转换公式,例如x=sin(α)cos(β)d,y=cos(α)cos(β)d以及z=sin(β)d,来确定每个激光线数据对应的回波点在激光雷达传感器的直角坐标系 中的坐标。以车辆中心点所在位置为原点,以车辆的行进方向为x轴正向,以垂直于车辆所在平面的方向为z轴正向,以垂直于xoz平面且过原点的直线为y轴,建立自车直角坐标系。根据激光雷达传感器安装位置在自车传感器中的坐标,确定将激光雷达传感器的直角坐标系中的点,转化为自车直角坐标系中的点的转换关系。例如,转换关系用公式表示为P
ego=[X
ego,Y
ego,Z
ego]
T,P=[x,y,z]
T,P
ego=R*P+t。其中,P
ego表示每个激光线数据对应的回波点在激光雷达传感器的直角坐标系中的坐标,P表示每个激光线数据对应的回波点在自车直角坐标系中的坐标,P
ego=R*P+t表示P
ego与P之间的转换关系。其中,自车坐标系的xoy平面即上述步骤S701中提到的极坐标系所在的平面。
在一种可能的实现方式中,根据激光雷达传感器采集到的激光线数据对应的回波点在自车坐标系中的坐标,确定回波点的高度。然后将回波点投影到极坐标系中,得到该回波点的极坐标,即该回波点相对于车辆的位置信息,并确定该回波点所在的网格单元。然后根据位于极坐标系中的同一方位角上的回波点的高度、坡度、高度差以及回波点与车辆的距离等,确定该方位角上的回波点是否为障碍物以及障碍物所在的网格单元(或者说该障碍物的位置信息)。或者可以采用例如条件随机场、马尔科夫随机场或者神经网络等方法,结合激光雷达传感器采集到的数据,来对极坐标系的每一方位角上是否存在障碍物进行检测,并确定障碍物的位置信息。
示例性的,以如图8所示的多个网格单元为例,利用传感器采集到的数据可以确定障碍物的位置信息,也就是障碍物在多个网格单元中的位置,可得到障碍物的位置信息的示意图如图9所示。在图9中,黑色圆圈1-和黑色圆圈6分别表示障碍物1-障碍物6,障碍物1-障碍物6所在的网格单元的标识即障碍物1-障碍物6的位置信息。
可选的,对于同一方位角来说,若该方位角上存在障碍物,则确定该方位角上与车辆的距离最近的障碍物所在的网格单元为边界网格单元。
示例性的,如图9所示,障碍物2与障碍物3位于同一方位角上,在该方位角上,距离车辆最近的障碍物为障碍物2,障碍物5与障碍物6位于同一方位角上,在该方位角上,距离车辆最近的障碍物为障碍物5,且在障碍物1和障碍物4所在的方位角上,除障碍物1和障碍物4外,不存在其他障碍物。因此,可以确定上述障碍物1、障碍物2、障碍物4、障碍物5所在的网格单元为边界网格单元。其中,网格单元7-网格单元34为在除障碍物1-障碍物6所在的方位角之外的各个方位角上,与车辆的距离最远的网格单元。
在一种可能的实现方式中,对于某一方位角来说,若该方位角上不存在障碍物,则可以确定该方位角上无边界网格单元。
或者,在另一种可能的实现方式中,对于同一方位角来说,若该方位角上存在障碍物,则确定该方位角上与车辆的距离最近的障碍物所在的网格单元为边界网格单元;若该方位角上不存在障碍物,则确定该方位角上距离车辆最远的网格单元为边界网格单元。
示例性的,以图9为例,若在不存在障碍物的方位角上,将距离车辆是最远的边界网格单元作为边界网格单元,则除障碍物1、障碍物2、障碍物4、障碍物5所在的网格单元外,边界网格单元还包括网格单元7-网格单元34。
以下示例中,以极坐标系中的每一方位角上均存在边界网格单元,该边界网格单元为其所在方位角上距离车辆最近的障碍物所在的网格单元,或者其所在方位角上距离车辆最远的网格单元为例,对本申请的实施例进行说明。
S703、根据至少两个边界网格单元,确定目标边界网格单元。
其中,目标边界网格单元为车辆的可通行区域的边界所在的网格单元。
可选的,根据第一边界网格单元与第二边界网格单元之间的距离,确定目标边界网格单元。其中,第一边界网格单元为上述至少两个边界网格单元中的任意一个,第二边界网格单元与车辆的距离小于或等于第一边界网格单元与车辆的距离,且在预设方向上,即在逆时针方向或顺时针方向上,第二边界网格单元为除第一边界网格单元外的其他边界网格单元中与第一边界网格单元距离最近的边界网格单元。也就是说,每一第一边界网格单元都有唯一与其对应的第二边界网格单元。
示例性的,以图9为例,图中所示箭头方向表示预设方向为逆时针方向。若将障碍物2所在的边界网格单元作为第一边界网格单元,则可以确定障碍物1所在的边界网格单元与车辆的距离等于该第一边界网格单元与车辆的距离,且障碍物1所在的边界网格单元是在逆时针方向上与该第一边界网格单元距离最近的边界网格单元。因此,障碍物1所在的边界网格单元为该第一边界网格单元所对应的第二边界网格单元。基于上述同样的理由,若以障碍物5所在的边界网格单元作为第一边界网格单元,则可以确定障碍物4所在的边界网格单元,为该第一边界网格单元所对应的第二边界网格单元。
在一种可能的实现方式中,通过将第一边界网格单元与第二边界网格单元之间的距离和预设距离阈值进行比较,来确定目标边界网格单元。其中,预设距离阈值为车辆宽度,或者根据车辆宽度确定的其他大于车辆宽度的值,且该预设距离阈值由用户确定的或者由本方法的执行主体来确定的。
由于预设距离阈值时根据车辆宽度确定的,在根据预设距离阈值来确定目标边界网格单元时,可以尽可能的将实际车辆不可通行的区域剔除掉,从而提高车辆可通行区域检测的准确性。
在一种可能的实现方式中,在第一边界网格单元与第二边界网格单元之间的距离小于或等于预设距离阈值时,将第一边界网格单元、第二边界网格单元与第三边界网格单元,确定为目标边界网格单元。其中,第三边界网格单元与车辆的距离等于第一边界网格单元与车辆的距离,且第三边界网格单元在预设方向上位于第一边界网格单元与第二边界网格单元之间。在第一边界网格单元与第二边界网格单元之间的距离大于预设距离阈值时,将第一边界网格单元与第二边界网格单元,确定为目标边界网格单元。
也就是说,若第一边界网格单元与第二边界网格单元之间的距离小于或等于预设距离阈值,则在确定目标边界网格单元之前,需要先根据第一边界网格单元,以及第二边界网格单元来确定第三边界网格单元,然后将第一边界网格单元、第二边界网格单元以及第三边界网格单元确定为目标边界网格单元。
示例性的,以图9为例,如图10所示,若以障碍物4所在的边界网格单元为第一边界网格单元,则可以将障碍物2所在的边界网格单元,确定为与该第一边界网格 单元对应的第二边界网格单元,该第一边界网格单元与第二边界网格单元之间的距离为d。在图10中,网格单元35与车辆的距离等于第一边界网格单元与车辆的距离,即障碍物4所在的边界网格单元与车辆的距离,且网格单元35在预设方向(逆时针方向)上位于第一边界网格单元与第二边界网格单元之间。因为网格单元35为第三边界网格单元,同理,网格单元36与网格单元37均为第三边界网格单元。若d小于或等于预设距离阈值,则将本示例中的第一边界网格单元、第二边界网格单元以及第三边界网格单元35、第三边界网格单元36和第三边界网格单元37,确定为目标边界网格单元。若d大于预设距离阈值,则仅将本示例中的第一边界网格单元与第二边界网格单元确定为目标边界网格单元。
在一种可能的实现方式中,第一边界网格单元与第二边界网格单元之间的距离,可以为直线距离,也可以为弧线距离。其中,弧线距离是以第一边界网格单元与车辆的距离为半径,以极点为圆心形成的圆上的一段弧线,该弧线的两端点为第一边界网格单元和第二边界网格单元上距离最近的两个端点。
示例性的,以图10为例。如图11所示,以障碍物4所在的边界网格单元为第一边界网格单元,将障碍物2所在的边界网格单元,确定为与该第一边界网格单元对应的第二边界网格单元。圆a为以第一边界网格单元与车辆的距离为半径,以极点为圆心的圆,从而可以确定第一边界网格单元4与第二边界网格单元的距离为d或d’。其中,d’为弧线距离,d为直线距离,d’为圆a上的一段弧线,该弧线连接第一边界网格单元与第二边界网格单元上距离最近的两个端点。
其中,用于与直线距离或弧线距离相比较的预设距离阈值不同。例如,用于与直线距离相比较的预设距离阈值为第一预设距离阈值,用于与直线距离相比较的预设距离阈值为第二预设距离阈值。
需要说明的是,通过上述过程,第一边界网格单元与第二边界网格单元之间的距离小于等于预设距离阈值,则说明车辆在第一边界网格单元与第二边界网格单元之间的距离过小,车辆不能通行,将第一边界网格单元、第二边界网格单元以及第三边界网格单元确定为目标边界网格单元,也就表示对边界网格单元所形成的区域进行剪切,从而剔除掉车辆实际不可通行的区域,提高车辆的可通行区域检测的准确性。
S704、将目标边界网格单元与车辆之间的区域,确定为车辆的可通行区域。
可选的,将目标边界网格单元与车辆之间的区域,确定为车辆的可通行区域,并将于车辆的距离大于第一距离的网格单元所在的区域,确定为车辆的不可通行区域。其中,第一距离为目标边界网格单元与车辆的距离。根据车辆的可通行区域以及不可通行区域可以生成网格图,该网格图也可以称为占据网格图(occupancy grid map,
OGM),该网格图可以较为直观地表示车辆的可通行区域和车辆的不可通行区域,方便用户等查看车辆的可通行区域和车辆的不可通行区域。
一般的,将目标边界网格单元的下边界,即目标边界网格单元上靠近车辆的一侧的边界,作为车辆的可通行区域的边界,则位于该边界与车辆之间的区域即为车辆的可通行区域,该边界的另一侧即远离车辆的一侧即为车辆的不可通行区域。
示例性的,如图12所示,经历上述步骤S701-S703,确定目标边界网格单元包括网格单元1-网格单元32,图中阴影所示部分的为车辆不可通行区域,无阴影部分即目 标网格单元与车辆之间的区域为车辆可通行区域。
示例性的,以图12所示的车辆可通行区域与车辆不可通行区域的边界为例,用于表示车辆的可通行区域与不可通行区域的网格图还可以是如图13所示的形式。图中黑色区域用于表示车辆的不可通行区域,点A表示车辆,白色网格区域用于表示车辆的可通行区域,白线用于表示根据车辆的可通行区域的边界与车辆的距离和相对于车辆的方位角,将图12的车辆的可通行区域与车辆的不可通行区域的边界投射到图13所示网格中,最后得到的车辆可通行区域的边界。
通过上述过程,本申请可以从多个网格单元中,确定至少两个边界网格单元,再根据这至少两个边界网格单元,来确定目标边界网格单元,以实现对边界网格单元的更新,得到目标边界网格单元。且将目标边界网格单元与车辆之间的区域确定为车辆可通行区域,可以利用目标边界网格单元对边界网格单元与车辆之间的区域进行剪切,去除实际上车辆不可通行的区域,提高车辆的可通行区域检测的准确性。
本申请还提供一种检测车辆可通行区域的方法,在执行步骤S702的过程中,先对传感器采集到的数据进行筛选,去除传感器采集到的车辆内部(包括车辆壳体)的数据。再根据通过筛选的传感器采集到的外部数据,也就是传感器采集到的车辆自身之外的数据,来确定车辆的周围的障碍物的位置信息。最后根据车辆的周围的障碍物的位置信息,来确定边界网格单元。
通过上述过程,将传感器采集到的车辆壳体内的数据剔除,避免将车辆或车辆外壳上的某一点所在的网格单元确定为障碍物所在的网格单元,从而降低将车辆上的某一点作为车辆的可通行区域的边界的可能性,提高车辆的可通行区域检测的准确性。
可选的,在一种可能的实现方式中,在经步骤S702确定边界网格单元后,按照预设方向将每一方位角上的边界网格单元与车辆的距离作为数组元素,存入一维边界数组中。然后在经步骤S703确定目标边界网格单元后,根据每一方位角上的目标边界网格单元与车辆的距离,来对一维边界数组中的数组元素进行更新。通过该一维边界数组,用户可以更加方便地查看车辆在其每一方位角上可以通行的距离。
其中,预设方向为逆时针方向或者顺时针方向。一般的,选用与极坐标系的正方向,即逆时针方向的顺序作为向该一维边界数组存入数组元素的顺序。其中,一维边界数组中数组元素的数量,与按照预设角度间隔划分网格单元时得到的方位角的数量相同。
示例性的,若预设角度间隔为0.5°,则一维边界数组中包含360°/0.5°=720个数组元素。按照逆时针的方向将边界网格单元与车辆的距离作为数组元素,存入一维边界数组中,该一维边界数组中的数组元素的下标为0~719。如表1所示,每个数组元素可以用a
0~a
719来表示,例如a
0=5m,a
1=60m,a
2=5m,a
3=80m,……,a
719=8m。
表1
a 0 | a 1 | a 2 | a 3 | …… | a 719 |
5m | 60m | 5m | 80m | …… | 8m |
如上述步骤S702所述,在另一种可能的实现方式中,对于同一方位角来说,若该方位角上存在障碍物,则确定该方位角上与车辆的距离最近的障碍物所在的网格单元为该方位角上的边界网格单元;若该方位角上不存在障碍物,则确定该方位角上无 边界网格单元。此时,在无边界网格单元的方位角上,可以将在该方位角上可以监测到的最远距离作为数组元素,存入一维边界数组中,或者将无穷大INF作为该方位角上的数组元素,存入一维边界数组中,或者在该方位角上不存储数组元素。
示例性的,若预设角度间隔为5°,则一维边界数组中包含360°/5°=72个数组元素。按照逆时针的方向将边界网格单元与车辆的距离作为数组元素,存入一维边界数组中,该一维边界数组中的数组元素的下标为0~71。如表2所示,每个数组元素可以用a
0~a
71来表示,其中,数组元素a
1和a
71对应的方位角上无边界网格单元,且a
1和a
71对应的方向角度上所能监测到的最远距离为100m,因此,a
1和a
71的取值可以为100m,例如a
0=5m,a
1=100m,a
2=5m,a
3=80m,……,a
71=100m。
表2
a 0 | a 1 | a 2 | a 3 | …… | a 71 |
5m | 100m | 5m | 80m | …… | 100m |
示例性的,若预设角度间隔为5°,则一维边界数组中包含360°/5°=72个数组元素。按照逆时针的方向将边界网格单元与车辆的距离作为数组元素,存入一维边界数组中,该一维边界数组中的数组元素的下标为0~71。如表3所示,每个数组元素可以用a
0~a
71来表示,其中,数组元素a
1和a
71对应的方位角上无边界网格单元,因此,在一维边界数组中不存储数组元素a
1和a
71,例如a
0=5m,a
2=5m,a
3=80m,……,a
70=10m。
表3
a 0 | a 1 | a 2 | a 3 | …… | a 70 | a 71 |
5m | 5m | 80m | …… | 10m |
示例性的,以表3为例,a0与a2所对应的方位角上的两个边界网格单元可分别作为第一边界网格单元和第二边界网格单元,若第一边界网格单元与第二边界网格单元之间的距离小于或等于预设距离阈值,则将第一边界网格单元、第二边界网格单元以及第三边界网格单元,确定为目标边界网格单元。其中,第三边界网格单元即在a2所对应的方位角上,且与第一边界网格单元与车辆的距离相同的网格单元。那么,根据目标边界网格单元与车辆的距离更新后的一维边界数组如下表4所示。
表4
a 0 | a 1 | a 2 | a 3 | …… | a 70 | a 71 |
5m | 5m | 5m | 80m | …… | 10m |
通过上述过程,将目标边界网格单元与车辆的距离作为数组元素,存入一维边界数组中,可以通过该一维边界数组简单直观的反映出车辆在其各个方位角上的可通行区域的边界。
可选的,在一种可能的实现方式中,为了减少在根据至少两个边界网格单元,来确定目标边界网格单元过程中,丢失部分边界网格单元,即出现部分应当处理但实际未处理的边界网格单元的情况的发生。本申请提出一种方案,以极点为圆心,以边界网格单元与车辆的距离为半径,建立多个同心圆。按照半径的大小以及预设方向,将每一边界网格单元作为第一边界网格单元,来确定其对应的第二边界网格单元,并根据该第一边界网格单元与第二边界网格单元之间的距离,以及预设距离阈值来确定目标边界网格单元。
示例性的,以图10为例,可以根据障碍物1、障碍物2、障碍物4、障碍物5所在的边界网格单元,以及边界网格单元7-边界网格单元34,确定3个同心圆(即图中所示的实线构成的圆),分别为同心圆a、同心圆b和同心圆c,如图14所示。按照同心圆的半径的大小以及预设距离阈值,来确定目标边界网格单元。也就是说,按照同心圆的半径从小到大的顺序,依次对同心圆a、同心圆b以及同心圆c上的边界网格单元进行分析。对于同心圆a上的障碍物1、障碍物2、障碍物4所在的边界网格单元,可先确定其中任意一个为第一边界网格单元。以先确定障碍物1所在的边界网格单元为第一边界网格单元为例,预设方向为逆时针方向,则该第一边界网格单元对应的第二边界网格单元为障碍物4所在的边界网格单元,该第一边界网格单元与第二边界网格单元之间的距离大于预设距离阈值,则确定该第一边界网格单元与第二边界网格单元为目标边界网格单元。然后以障碍物4所在的边界网格单元作为第一边界网格单元,预设方向为逆时针方向,则该第一边界网格单元对应的第二边界网格单元为障碍物2所在的边界网格单元,该第一边界网格单元与第二边界网格单元之间的距离大于预设距离阈值,则确定该第一边界网格单元与该第二边界网格单元为目标边界网格单元。最后以障碍物2所在的边界网格单元为第一边界网格单元,预设方向为逆时针方向,则障碍物1所在的边界网格单元为该第一边界网格单元对应的第二边界网格单元,该第一边界网格单元与第二边界网格单元之间的距离小于或等于预设距离阈值,网格单元E在该第一边界网格单元的预设方向上,位于该第一边界网格单元与该第二边界网格单元之间,且网格单元E与车辆的距离等于该第一网格单元与车辆的距离相等,则该网格单元E为第三边界网格单元,将该第一边界网格单元、该第二边界网格单元以及该第三边界网格单元,确定为目标边界网格单元。此时,根据同心圆a上的边界网格单元,来确定目标边界网格单元的过程结束,下面以同样的方式根据同心圆b和同心圆c上的边界网格单元,来确定目标边界网格单元。
在一种可能的实现方式中,若第一边界网格单元与第二边界网格单元之间的距离小于或等于预设距离阈值,那么,将该第一边界网格单元、该第二边界网格单元,以及根据该第一边界网格单元和该第二边界网格单元确定的第三边界网格单元,确定为目标边界网格单元。而之前所确定的边界网格单元中,可能存在与第三边界网格单元的方位角相同的边界网格单元,此时,在后续的根据边界网格单元来确定目标边界网格单元时,可以不考虑与该第三边界网格单元的方位角相同的边界网格单元,或者将与该第三边界网格单元的方位角相同的边界网格单元标记为不需处理,以减少确定目标边界网格单元的过程中的工作量,提高确定目标边界网格单元的效率,进而提高车辆可通行区域检测的效率。
示例性的,在上一示例中,即在图14中,边界网格单元9与第三边界网格单元E位于同一方位角上,且边界网格单元9与车辆的距离大于第三边界网格单元E与车辆的距离,将边界网格单元9标记为不需处理,在后续根据同心圆c上的边界网格单元,来确定目标边界网格单元时,不再对该边界网格单元9进行处理。
在一种可能的实现方式中,在第一边界网格单元与第二边界网格单元之间的距离小于或等于预设距离阈值时,若第一边界网格单元与第二边界网格单元之间不存在符合条件的第三边界网格单元,则直接将第一边界网格单元和第二边界网格单元确定为 目标边界网格单元。
需要说明的是,若在上述步骤S702中所确定的边界网格单元的数量为1,且在无障碍物的方位角上不再确定边界网格单元,则可直接将与该边界网格单元位于同一方位角上,且与车辆的距离大于该边界网格单元与车辆的距离的网格单元,以及该边界网格单元,确定为不可通行的网格单元,也就是车辆的不可通行区域。也就是说,除上述不可通行的网格单元外,其他网格单元所在的区域为车辆的可通行区域。若在上述步骤S702中所确定的边界网格单元的数量为0,且在无障碍物的方位角上不再确定边界网格单元,则整个车辆的周围区域即预设区域均为车辆的可通行区域。
本申请实施例可以根据上述方法示例对检测车辆可通行区域的装置进行功能模块的划分,在采用对应各个功能划分各个功能模块的情况下,图15示出上述实施例中所涉及的检测车辆可通行区域的装置的一种可能的结构示意图,该装置包括处理单元1501、确定单元1502以及生成单元1503。当然,检测车辆可通行区域的装置还可以包括其他模块,或者检测车辆可通行区域的装置可以包括更少的模块。
处理单元1501,用于从多个网格单元中确定至少两个边界网格单元,该至少两个边界网格单元为与在同一方位角上与车辆距离最近的障碍物所在的网格单元,该多个网格单元是对车辆所在的周围区域进行划分得到。
可选的,在处理单元1501,用于从多个网格单元中确定至少两个边界网格单元之前,处理单元1501,用于确定车辆周围的障碍物的位置信息。
在一种可能的实现方式中,处理单元1501,用于确定车辆周围的障碍物的位置信息,包括:处理单元1501,用于根据车辆上传感器采集的外部数据,确定车辆周围的障碍物的位置信息。其中,该外部数据是指传感器采集到的车辆之外的数据。
在一种可能的实现方式中,上述传感器包括激光雷达、毫米波雷达或视觉传感器中的一种或多种。
处理单元1501,还用于根据至少两个边界网格单元,确定目标边界网格单元,该目标边界网格单元是指车辆的可通行区域的边界所在的网格单元。
可选的,处理单元1501,用于根据至少两个边界网格单元,确定目标边界网格单元,包括:处理单元1501,用于根据第一边界网格单元与第二边界网格单元之间的距离,确定目标边界网格单元。其中,第一边界网格单元为该至少两个边界网格单元中的任意一个,第二边界网格单元与车辆的距离小于或等于第一边界网格单元与车辆的距离,且在预设方向上第二边界网格单元与第一边界网格单元距离最近。
在一种可能的实现方式中,上述预设方向为顺时针方向或逆时针方向。
可选的,处理单元1501,用于根据第一边界网格单元与第二边界网格单元之间的距离,确定目标边界网格单元,包括:处理单元1501,用于通过将第一边界网格单元与第二边界网格单元之间的距离和预设距离阈值进行比较,确定目标边界网格单元。
在一种可能的实现方式中,处理单元1501,用于通过将第一边界网格单元与第二边界网格单元之间的距离和预设距离阈值进行比较,确定目标边界网格单元,包括:处理单元1501,用于在第一边界网格单元与第二边界网格单元之间的距离小于或等于预设距离阈值时,将第一边界网格单元、第二边界网格单元,确定为目标边界网格单元。其中,第三边界网格单元与车辆的距离等于第一边界网格单元与车辆的距离,且 在预设方向上第三边界网格单元位于第一边界网格单元与第二边界网格单元之间。处理单元1501,用于在第一边界网格单元与第二边界网格单元的距离大于预设距离阈值时,将第一边界网格单元以及第二边界网格单元,确定为目标边界网格单元。
在一种可能的实现方式中,在处理单元1501,用于根据至少两个边界网格单元,确定目标边界网格单元之后,生成单元1503,用于根据车辆的可通行区域和不可通行区域生成网格图。其中该不可通行区域是指与车辆的距离大于第一距离的网格单元所在的区域,该第一距离是指目标边界网格单元与车辆的距离。
确定单元1502,用于将目标边界网格单元与车辆之间的区域确定为车辆的可通行区域。
上述描述的服务器或装置的具体工作过程,可以参考上述方法实施例中的对应过程,在此不再赘述。
本申请实施例提供一种存储一个或多个程序的计算机可读存储介质,所述一个或多个程序包括指令,所述指令当被计算机执行时使计算机执行上述实施例的步骤S701-步骤S704所述的检测车辆可通行区域的方法。
本申请实施例还提供一种包含指令的计算机程序产品,当指令在计算机上运行时,使得计算机执行上述实施例步骤S701-步骤S704中执行的检测车辆可通行区域的方法。
本申请实施例提供一种检测车辆可通行区域的装置,包括处理器和存储器;其中,存储器用于存储计算机程序指令,处理器用于运行计算机程序指令以使该检测车辆可通行区域的装置执行上述实施例步骤S701-步骤S704中执行的检测车辆可通行区域的方法。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的***、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read-only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何在本申请揭露的技术范围内的变化或替换,都应涵盖在本申请的保护范围之内。
Claims (21)
- 一种检测车辆可通行区域的方法,其特征在于,所述方法包括:从多个网格单元中确定至少两个边界网格单元,所述至少两个边界网格单元为在同一方位角上与车辆距离最近的障碍物所在的网格单元,所述多个网格单元是对所述车辆所在的周围区域进行划分得到;根据所述至少两个边界网格单元,确定目标边界网格单元,所述目标边界网格单元是指所述车辆的可通行区域的边界所在的网格单元;将所述目标边界网格单元与所述车辆之间的区域确定为所述车辆的可通行区域。
- 根据权利要求1所述的检测车辆可通行区域的方法,其特征在于,所述根据所述至少两个边界网格单元,确定目标边界网格单元,包括:根据第一边界网格单元与第二边界网格单元之间的距离,确定目标边界网格单元;其中,所述第一边界网格单元为所述至少两个边界网格单元中的任意一个,所述第二边界网格单元与所述车辆的距离小于或等于所述第一边界网格单元与所述车辆的距离,且在预设方向上所述第二边界网格单元与所述第一边界网格单元距离最近。
- 根据权利要求2所述的检测车辆可通行区域的方法,其特征在于,所述根据第一边界网格单元与第二边界网格单元之间的距离,确定目标边界网格单元,包括:通过将所述第一边界网格单元与第二边界网格单元之间的距离和预设距离阈值进行比较,确定所述目标边界网格单元。
- 根据权利要求3所述的方法,其特征在于,所述通过将所述第一边界网格单元与第二边界网格单元之间的距离和预设距离阈值进行比较,确定所述目标边界网格单元,包括:在所述第一边界网格单元与所述第二边界网格单元之间的距离小于或等于所述预设距离阈值时,将所述第一边界网格单元、所述第二边界网格单元以及第三边界网格单元,确定为所述目标边界网格单元;所述第三边界网格单元与所述车辆的距离等于所述第一边界网格单元与所述车辆的距离,且在所述预设方向上所述第三边界网格单元位于所述第一边界网格单元与所述第二边界网格单元之间;在所述第一边界网格单元与所述第二边界网格单元的距离大于所述预设距离阈值时,将所述第一边界网格单元以及所述第二边界网格单元,确定为所述目标边界网格单元。
- 根据权利要求1-4任一项所述的检测车辆可通行区域的方法,其特征在于,在所述根据所述至少两个边界网格单元,确定目标边界网格单元之后,所述方法还包括:根据所述车辆的可通行区域和不可通行区域生成网格图;其中,所述不可通行区域是指与所述车辆的距离大于第一距离的网格单元所在的区域,所述第一距离是指所述目标边界网格单元与所述车辆的距离。
- 根据权利要求1-5任一项所述的检测车辆可通行区域的方法,其特征在于,在所述从多个网格单元中确定至少两个边界网格单元之前,所述方法还包括:确定所述车辆周围的障碍物的位置信息。
- 根据权利要求6所述的检测车辆可通行区域的方法,其特征在于,所述确定所述车辆周围的障碍物的位置信息,包括:根据所述车辆上传感器采集的外部数据确定所述车辆周围的障碍物的位置信息,其中,所述外部数据是指所述传感器采集到的所述车辆之外的数据。
- 根据权利要求7所述的检测车辆可通行区域的方法,其特征在于,所述传感器包括激光雷达、毫米波雷达或视觉传感器中的一种或多种。
- 根据权利要求2-4任一项所述的检测车辆可通行区域的方法,其特征在于,所述预设方向为顺时针方向或逆时针方向。
- 一种检测车辆可通行区域的装置,其特征在于,所述装置包括:处理单元,用于从多个网格单元中确定至少两个边界网格单元,所述至少两个边界网格单元为在同一方位角上与车辆距离最近的障碍物所在的网格单元,所述多个网格单元是对所述车辆所在的周围区域进行划分得到;处理单元,用于根据所述至少两个边界网格单元,确定目标边界网格单元,所述目标边界网格单元是指所述车辆的可通行区域的边界所在的网格单元;确定单元,用于将所述目标边界网格单元与所述车辆之间的区域确定为所述车辆的可通行区域。
- 根据权利要求10所述的检测车辆可通行区域的装置,其特征在于,所述处理单元,用于根据所述至少两个边界网格单元,确定目标边界网格单元,包括:所述处理单元,用于根据第一边界网格单元和第二边界网格单元之间的距离,确定目标边界网格单元;其中,所述第一边界网格单元为所述至少两个边界网格单元中的任意一个,所述第二边界网格单元与所述车辆的距离小于或等于所述第一边界网格单元与所述车辆的距离,且在预设方向上所述第二边界网格单元与所述第一边界网格单元距离最近。
- 根据权利要求11所述的检测车辆可通行区域的装置,其特征在于,所述处理单元,用于根据第一边界网格单元和第二边界网格单元之间的距离,确定目标边界网格单元,包括:所述处理单元,用于通过将所述第一边界网格单元与第二边界网格单元之间的距离和预设距离阈值进行比较,确定所述目标边界网格单元。
- 根据权利要求12所述的检测车辆可通行区域的装置,其特征在于,所述处理单元,用于通过将所述第一边界网格单元与第二边界网格单元之间的距离和预设距离阈值进行比较,确定所述目标边界网格单元,包括:所述处理单元,用于在所述第一边界网格单元与所述第二边界网格单元之间的距离小于或等于所述预设距离阈值时,将所述第一边界网格单元、所述第二边界网格单元以及第三边界网格单元,确定为所述目标边界网格单元;所述第三边界网格单元与所述车辆的距离等于所述第一边界网格单元与所述车辆的距离,且在所述预设方向上所述第三边界网格单元位于所述第一边界网格单元与所述第二边界网格单元之间;所述处理单元,用于在所述第一边界网格单元与所述第二边界网格单元的距离大于所述预设距离阈值时,将所述第一边界网格单元以及所述第二边界网格单元,确定为所述目标边界网格单元。
- 根据权利要求10-13任一项所述的检测车辆可通行区域的装置,其特征在于,在所述处理单元,用于根据所述至少两个边界网格单元,确定目标边界网格单元之后, 所述装置还包括:生成单元,用于根据所述车辆的可通行区域和不可通行区域生成网格图;其中,所述不可通行区域是指与所述车辆的距离大于第一距离的网格单元所在的区域,所述第一距离是指所述目标边界网格单元与所述车辆的距离。
- 根据权利要求10-14任一项所述的检测车辆可通行区域的装置,其特征在于,在所述处理单元,用于从多个网格单元中确定至少两个边界网格单元之前,所述装置还包括:处理单元,用于确定所述车辆周围的障碍物的位置信息。
- 根据权利要求15所述的检测车辆可通行区域的装置,其特征在于,所述处理单元,用于确定所述车辆周围的障碍物的位置信息,包括:所述处理单元,用于根据所述车辆上传感器采集的外部数据确定所述车辆周围的障碍物的位置信息,其中,所述外部数据是指所述传感器采集到的所述车辆之外的数据。
- 根据权利要求16所述的检测车辆可通行区域的装置,其特征在于,所述传感器包括激光雷达、毫米波雷达或视觉传感器中的一种或多种。
- 根据权利要求11-13任一项所述的检测车辆可通行区域的装置,其特征在于,所述预设方向为顺时针方向或逆时针方向。
- 一种检测车辆可通行区域的装置,其特征在于,包括:处理器和存储器;其中,存储器用于存储计算机程序指令,所述处理器运行所述计算机程序指令以使所述检测车辆可通行区域的装置执行权利要求1-9任一项所述的检测车辆可通行区域的方法。
- 一种计算机可读存储介质,其特征在于,包括计算机指令,当所述计算机指令被处理器运行时,使得检测车辆可通行区域的装置执行如权利要求1-9任一项所述的检测车辆可通行区域的方法。
- 一种计算机程序产品,其特征在于,当所述计算机程序产品在处理器上运行时,使得检测车辆可通行区域的装置执行如权利要求1-9任一项所述的检测车辆可通行区域的方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2020/088473 WO2021217646A1 (zh) | 2020-04-30 | 2020-04-30 | 检测车辆可通行区域的方法及装置 |
CN202080099748.5A CN115398272A (zh) | 2020-04-30 | 2020-04-30 | 检测车辆可通行区域的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2020/088473 WO2021217646A1 (zh) | 2020-04-30 | 2020-04-30 | 检测车辆可通行区域的方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2021217646A1 true WO2021217646A1 (zh) | 2021-11-04 |
Family
ID=78373178
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2020/088473 WO2021217646A1 (zh) | 2020-04-30 | 2020-04-30 | 检测车辆可通行区域的方法及装置 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN115398272A (zh) |
WO (1) | WO2021217646A1 (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116486377B (zh) * | 2023-04-26 | 2023-12-26 | 小米汽车科技有限公司 | 可行驶区域的生成方法及装置 |
CN116343159B (zh) * | 2023-05-24 | 2023-08-01 | 之江实验室 | 一种非结构化场景可通行区域检测方法、装置及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110006430A (zh) * | 2019-03-26 | 2019-07-12 | 智慧航海(青岛)科技有限公司 | 一种航迹规划算法的优化方法 |
CN110208819A (zh) * | 2019-05-14 | 2019-09-06 | 江苏大学 | 一种多个障碍物三维激光雷达数据的处理方法 |
CN110262518A (zh) * | 2019-07-22 | 2019-09-20 | 上海交通大学 | 基于轨迹拓扑地图和避障的车辆导航方法、***及介质 |
US20190385457A1 (en) * | 2019-08-07 | 2019-12-19 | Lg Electronics Inc. | Obstacle warning method for vehicle |
-
2020
- 2020-04-30 CN CN202080099748.5A patent/CN115398272A/zh active Pending
- 2020-04-30 WO PCT/CN2020/088473 patent/WO2021217646A1/zh active Application Filing
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110006430A (zh) * | 2019-03-26 | 2019-07-12 | 智慧航海(青岛)科技有限公司 | 一种航迹规划算法的优化方法 |
CN110208819A (zh) * | 2019-05-14 | 2019-09-06 | 江苏大学 | 一种多个障碍物三维激光雷达数据的处理方法 |
CN110262518A (zh) * | 2019-07-22 | 2019-09-20 | 上海交通大学 | 基于轨迹拓扑地图和避障的车辆导航方法、***及介质 |
US20190385457A1 (en) * | 2019-08-07 | 2019-12-19 | Lg Electronics Inc. | Obstacle warning method for vehicle |
Also Published As
Publication number | Publication date |
---|---|
CN115398272A (zh) | 2022-11-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20210262808A1 (en) | Obstacle avoidance method and apparatus | |
WO2022001773A1 (zh) | 轨迹预测方法及装置 | |
WO2021000800A1 (zh) | 道路可行驶区域推理方法及装置 | |
WO2021135371A1 (zh) | 一种自动驾驶方法、相关设备及计算机可读存储介质 | |
EP4067821A1 (en) | Path planning method for vehicle and path planning apparatus for vehicle | |
US20220289252A1 (en) | Operational Design Domain Odd Determining Method and Apparatus and Related Device | |
WO2022021910A1 (zh) | 一种车辆碰撞检测方法、装置及计算机可读存储介质 | |
US12001517B2 (en) | Positioning method and apparatus | |
EP4029750A1 (en) | Data presentation method and terminal device | |
WO2022001366A1 (zh) | 车道线的检测方法和装置 | |
WO2021110166A1 (zh) | 道路结构检测方法及装置 | |
WO2022062825A1 (zh) | 车辆的控制方法、装置及车辆 | |
WO2021217646A1 (zh) | 检测车辆可通行区域的方法及装置 | |
EP4307251A1 (en) | Mapping method, vehicle, computer readable storage medium, and chip | |
CN115330923B (zh) | 点云数据渲染方法、装置、车辆、可读存储介质及芯片 | |
EP4134769A1 (en) | Method and apparatus for vehicle to pass through boom barrier | |
WO2022052881A1 (zh) | 一种构建地图的方法及计算设备 | |
WO2022052872A1 (zh) | 自动驾驶方法及装置 | |
WO2022022284A1 (zh) | 目标物的感知方法及装置 | |
WO2021159397A1 (zh) | 车辆可行驶区域的检测方法以及检测装置 | |
WO2022033089A1 (zh) | 确定检测对象的三维信息的方法及装置 | |
CN114764980B (zh) | 一种车辆转弯路线规划方法及装置 | |
CN114576148B (zh) | 液冷***、应用在液冷***的控制方法、控制装置及车辆 | |
WO2024055252A1 (zh) | 一种数据融合方法、装置及智能驾驶设备 | |
WO2022061725A1 (zh) | 交通元素的观测方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 20933535 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 20933535 Country of ref document: EP Kind code of ref document: A1 |