Reachability verification method and device and vehicle
By projecting the starting point and candidate target points onto the generalized Vino boundary and performing graph search, the problems of high computation time and inaccurate results in the prior art are solved, achieving fast and accurate accessibility verification and meeting the real-time requirements of autonomous vehicles.
Patent Information
- Application Number
- CN202411095306.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-08-09
- Publication Date
- 2026-02-10
AI Technical Summary
Existing reachability verification methods are computationally time-consuming or prone to errors, making it difficult to meet the real-time requirements of autonomous vehicles.
Project the starting point and candidate target points onto the generalized Vino boundary, and use a graph search algorithm to search for target paths on the generalized Vino boundary. Verification is successful when the number of target paths is greater than or equal to one.
It achieves fast and accurate accessibility verification, combining completeness and low computational time, meeting the real-time requirements of autonomous vehicles.
Smart Images

Figure CN121503596A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of vehicle driving technology, and more particularly to an accessibility verification method, apparatus, and vehicle. Background Technology
[0002] Path planning is one of the core modules in autonomous driving systems. Given a starting point and a target point, path planning aims to construct a path connecting the two. During operation, the autonomous vehicle continuously updates the path planning module at a certain frequency based on perceived environmental information (such as obstacles and traffic lights). In each path update, the starting point is the real-time location of the autonomous vehicle. The selection of the target point is more complex. On one hand, the target point should be as close as possible to the navigation path (a road-level navigation path provided in advance by the autonomous vehicle's navigation module, without specific environmental information). On the other hand, the target point needs to be reachable; that is, considering real-time obstacle information, there must be at least one path that allows the autonomous vehicle to reach the target point from the starting point without colliding with any obstacles. Otherwise, the selected target point will make the path planning problem unsolvable, causing the path planning module to report an error. Furthermore, many other considerations exist for target point selection, such as traffic regulations and prohibited areas.
[0003] Therefore, many autonomous driving systems have dedicated modules for selecting target points. The general process involves: given a starting point, the module proposes a candidate target point based on navigation and other information, then verifies its reachability. If successful, the target point is output to the path planning module; otherwise, a new candidate target point is proposed, and reachability verification is performed again. This process is repeated until a target point that satisfies reachability is found.
[0004] There are three main existing reachability verification methods: the first is to directly run a complete path planning algorithm; the second is to rasterize the space and perform path planning on the raster using a simple Astar algorithm or breadth-first search algorithm; the third is to use the probabilistic roadmap algorithm, first constructing a roadmap and then performing path planning on the roadmap. If a path connecting the starting point and the candidate destination point can be successfully found, the reachability is passed; otherwise, the reachability is failed.
[0005] However, the first and second methods require full-space path planning for each candidate target point. When verifying a large number of candidate target points, the computation time becomes very high, making it difficult to meet the real-time requirements of autonomous vehicles. Since the probabilistic roadmap algorithm is a probabilistic method, it only possesses probabilistic completeness, not completeness. Therefore, the third method may give incorrect reachability results; that is, the candidate target point may actually be reachable, but the third method has a certain probability of giving an incorrect result indicating inaccessibility. Summary of the Invention
[0006] In view of this, embodiments of the present invention provide an accessibility verification method, apparatus, and vehicle to solve the technical problems of high computation time or the possibility of errors in accessibility results.
[0007] To achieve the above objectives, according to one aspect of the present invention, an reachability verification method is provided, comprising:
[0008] The starting point and candidate target points are projected onto the generalized Vino boundary, respectively, to obtain the projection starting point and projection candidate target points;
[0009] Starting from the projection start point and ending at the projection candidate target point, a target path is searched on the generalized Vino boundary.
[0010] If the number of target paths is greater than or equal to one, the reachability verification of the candidate target point is successful; if the number of target paths is zero, the reachability verification of the candidate target point fails.
[0011] Optionally, searching for a target path on the generalized Vino boundary, starting from the projection start point and ending at the projection candidate target point, includes:
[0012] Starting from the projection start point and ending at the projection candidate target point, a graph search algorithm is used to search for the target path on the generalized Vino boundary.
[0013] Optionally, the graph search algorithm is a breadth-first search algorithm or an Astar search algorithm.
[0014] Optionally, before projecting the starting point and candidate target points onto the generalized Vino boundary to obtain the projection starting point and projection candidate target points, the method further includes:
[0015] Obtain the outline information of each obstacle;
[0016] The outline information of the obstacle is taken as a polygon, and a generalized Vino boundary is constructed based on each polygon; wherein the generalized Vino boundary is composed of multiple boundary line segments.
[0017] Optionally, after constructing the generalized Vino boundary based on each polygon, the method further includes:
[0018] If there exists a boundary point where the sum of the distances to the nearest obstacle is less than the width of the vehicle, then the boundary segment containing that boundary point is deleted from the generalized Vino boundary.
[0019] Optionally, the starting point and candidate target points are projected onto the generalized Vino boundary, respectively, to obtain the projection starting point and projection candidate target points, including:
[0020] Find the starting boundary segment closest to the starting point from the generalized Vino boundary, and project the starting point onto the starting boundary segment along a direction perpendicular to the starting boundary segment to obtain the projection starting point;
[0021] Find the target boundary segment closest to the candidate target point from the generalized Vino boundary, and project the candidate target point onto the target boundary segment along a direction perpendicular to the target boundary segment to obtain the projected candidate target point.
[0022] In addition, according to another aspect of the present invention, an accessibility verification device is also provided, comprising:
[0023] The projection module is used to project the starting point and candidate target points onto the generalized Vino boundary, thereby obtaining the projection starting point and projection candidate target points;
[0024] The search module is used to search for the target path on the generalized Vino boundary, starting from the projection start point and ending at the projection candidate target point.
[0025] The verification module is configured to verify the reachability of the candidate target point successfully when the number of target paths is greater than or equal to one, and to verify the reachability of the candidate target point unsuccessfully when the number of target paths is zero.
[0026] Optionally, the search module is further configured to:
[0027] Starting from the projection start point and ending at the projection candidate target point, a graph search algorithm is used to search for the target path on the generalized Vino boundary.
[0028] Optionally, the graph search algorithm is a breadth-first search algorithm or an Astar search algorithm.
[0029] Optionally, the device further includes a construction module for:
[0030] Obtain the outline information of each obstacle;
[0031] The outline information of the obstacle is taken as a polygon, and a generalized Vino boundary is constructed based on each polygon; wherein the generalized Vino boundary is composed of multiple boundary line segments.
[0032] Optionally, the building module is further configured to:
[0033] After constructing the generalized Vino boundary based on each polygon, if there is a boundary point whose sum of distances to the nearest obstacle is less than the width of the vehicle, then the boundary segment containing that boundary point is deleted from the generalized Vino boundary.
[0034] Optionally, the projection module is further configured to:
[0035] Find the starting boundary segment closest to the starting point from the generalized Vino boundary, and project the starting point onto the starting boundary segment along a direction perpendicular to the starting boundary segment to obtain the projection starting point;
[0036] Find the target boundary segment closest to the candidate target point from the generalized Vino boundary, and project the candidate target point onto the target boundary segment along a direction perpendicular to the target boundary segment to obtain the projected candidate target point.
[0037] In addition, according to another aspect of the present invention, a vehicle is also provided, including the accessibility verification device described in any of the above embodiments.
[0038] In addition, according to another aspect of the present invention, an electronic device is also provided, comprising:
[0039] One or more processors;
[0040] Storage device for storing one or more programs.
[0041] When the one or more programs are executed by the one or more processors, the one or more processors implement the method described in any of the above embodiments.
[0042] According to another aspect of the present invention, a computer-readable medium is also provided, on which a computer program is stored, which, when executed by a processor, implements the methods described in any of the above embodiments.
[0043] One embodiment of the above invention has the following advantages or beneficial effects: Because it employs a technique of first projecting the starting point and candidate target points onto the generalized Vino boundary to obtain the projection starting point and projection candidate target points, and then searching for target paths on the generalized Vino boundary using the projection starting point as the starting point and the projection candidate target points as the ending points, the reachability verification of the candidate target points is successful when the number of target paths is greater than or equal to one. Therefore, it overcomes the technical problems of high computation time or the possibility of errors in reachability results in the prior art. The embodiment of this invention performs reachability verification of candidate target points in path planning based on the generalized Vino boundary, which not only has low computation time but also provides complete verification results. It can overcome the shortcomings of the prior art.
[0044] The further effects of the aforementioned unconventional alternative methods will be explained below in conjunction with specific implementation methods. Attached Figure Description
[0045] To more clearly illustrate the technical solutions in the embodiments of the present invention or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort. Wherein:
[0046] Figure 1 This is a flowchart of an reachability verification method according to an embodiment of the present invention;
[0047] Figure 2 This is a schematic diagram of the generalized Vino boundary according to an embodiment of the present invention;
[0048] Figure 3 This is a flowchart of an reachability verification method according to a possible embodiment of the present invention;
[0049] Figure 4a and Figure 4b This is a schematic diagram before and after the generalized Vino boundary treatment according to an embodiment of the present invention;
[0050] Figure 5 This is a schematic diagram of an reachability verification device according to an embodiment of the present invention;
[0051] Figure 6 This is an exemplary vehicle system architecture diagram to which embodiments of the present invention can be applied;
[0052] Figure 7 This is a schematic diagram of the structure of a computer system suitable for implementing terminal devices or servers of the present invention. Detailed Implementation
[0053] The following description, in conjunction with the accompanying drawings, illustrates exemplary embodiments of the present invention, including various details to aid understanding. These details should be considered merely exemplary. Therefore, those skilled in the art will recognize that various changes and modifications can be made to the embodiments described herein without departing from the scope and spirit of the invention. Similarly, for clarity and brevity, descriptions of well-known functions and structures are omitted in the following description.
[0054] It should be noted that the collection, gathering, updating, analysis, processing, use, transmission, and storage of user personal information involved in this disclosed technical solution all comply with relevant laws and regulations, are used for legitimate purposes, and do not violate public order and good morals. Necessary measures are taken to prevent unauthorized access to user personal information data and to safeguard user personal information security, network security, and national security.
[0055] Figure 1 This is a flowchart of an reachability verification method according to an embodiment of the present invention. As one embodiment of the present invention, such as... Figure 1 As shown, the reachability verification method may include:
[0056] Step 101: Project the starting point and candidate target points onto the generalized Vino boundary, thereby obtaining the projection starting point and projection candidate target points.
[0057] Given a starting point and candidate target points, project the starting point and candidate target points onto the generalized Vino boundary, thus achieving the projection starting point and projection candidate target points on the generalized Vino boundary, such as... Figure 2 As shown.
[0058] It should be noted that the starting point and candidate target point are provided by the upstream module (such as the path planning module). In this embodiment of the invention, the reachability of the given starting point and candidate target point is verified, and the verification result is used by the downstream module for decision-making.
[0059] Optionally, before step 101, the method further includes: acquiring the contour information of each obstacle; treating the contour information of the obstacle as a polygon, thereby constructing a generalized Vino boundary based on each polygon; wherein the generalized Vino boundary is composed of multiple boundary line segments. Before step 101, it is necessary to construct a generalized Vino boundary for the contour information of each obstacle. The contour information of each obstacle between the starting point and the candidate target point is acquired, and then the contour information of each obstacle is treated as a polygon, such as... Figure 2As shown, each shaded polygon represents a polygon (site), which is a static obstacle in the autonomous vehicle's path planning. Then, a generalized Vino boundary is constructed based on each polygon. The dashed line represents the generalized Vino boundary, which is composed of multiple boundary segments.
[0060] Given A point, line segment, or polygon on a two-dimensional plane is denoted as . This is called a site. For any point on a two-dimensional plane... ,function Representative point Go to site The Euclidean distance. Define site Compared to site The dominance region is a collection
[0061]
[0062] Then site The Voronoi region is defined as a set
[0063]
[0064] That is, the distance to the site on a two-dimensional plane The set of nearest points. These Vino regions divide the two-dimensional plane. This is known as the generalized Voronoi diagram. (Voronoi region) The boundary of a site is called a generalized Voronoi boundary, which represents the set of points that are closest to two or more sites at the same time.
[0065] like Figure 2 As shown, the generalized Vino boundary, indicated by the dashed line, represents the set of points that are simultaneously closest to two or more obstacles (shaded polygons).
[0066] Optionally, step 101 may include: finding the starting boundary segment closest to the starting point from the generalized Vino boundary, and projecting the starting point onto the starting boundary segment along a direction perpendicular to the starting boundary segment, thereby obtaining a projection starting point; finding the target boundary segment closest to the candidate target point from the generalized Vino boundary, and projecting the candidate target point onto the target boundary segment along a direction perpendicular to the target boundary segment, thereby obtaining a projection candidate target point. Figure 2 As shown, first find the starting boundary segment closest to the starting point from the generalized Vino boundary, and then project the starting point along the direction perpendicular to the starting boundary segment. Figure 2 From the shaded pentagram in the middle to the starting boundary line segment, the projection starting point ( Figure 2 The shaded triangle); Similarly, first find the target boundary segment closest to the candidate target point from the generalized Vino boundary, and then along the direction perpendicular to the target boundary segment, place the candidate target point ( Figure 2 The shaded pentagram is projected onto the target boundary line segment, thus obtaining the projection candidate target point ( Figure 2 (The shaded triangle in the middle). That is to say, the projection starting point is the point on the generalized Vino boundary that is closest to the starting point, and the projection candidate target point is the point on the generalized Vino boundary that is closest to the candidate target point.
[0067] Step 102: Using the projection starting point as the starting point and the projection candidate target point as the ending point, search for the target path on the generalized Vino boundary.
[0068] After projecting the starting point and candidate target points onto the generalized Vino boundary, a target path is searched on the generalized Vino boundary, starting from the projection starting point and ending at the projection candidate target points. Optionally, step 102 may include: using the projection starting point as the starting point and the projection candidate target points as the ending points, and employing a graph search algorithm to search for the target path on the generalized Vino boundary. Optionally, the graph search algorithm is a breadth-first search algorithm or an Astar search algorithm. If the generalized Vino boundary is considered as a graph, then the nodes of the graph are the projection starting point, the projection candidate target points, and the starting and ending points of the boundary segments constituting the generalized Vino boundary, and the boundaries of the graph are the boundary segments constituting the generalized Vino boundary. Therefore, a graph search algorithm can be used to search for the target path from the projection starting point to the projection candidate target points on the generalized Vino boundary. The breadth-first search algorithm can find the shortest target path between the projection starting point and the projection candidate target points on the generalized Vino boundary. Similarly, the Astar search algorithm can also find the shortest target path between the projection starting point and the projection candidate target point on the generalized Vino boundary.
[0069] Step 103: If the number of target paths is greater than or equal to one, the reachability verification of the candidate target point is successful; if the number of target paths is zero, the reachability verification of the candidate target point fails.
[0070] If one or more paths can be successfully found, the reachability verification is successful; otherwise, the reachability verification fails. Figure 2 The thick solid line in the diagram illustrates a successfully searched target path. This path starts at the projection starting point, passes through six boundary segments, and reaches the projection candidate target point. Therefore, the reachability verification of this candidate target point is successful. Thanks to the sparsity and connectivity of the generalized Vino boundary, this reachability verification combines the advantages of completeness and low computational cost.
[0071] Based on the various embodiments described above, it can be seen that the embodiments of the present invention first project the starting point and candidate target points onto the generalized Vino boundary, thereby obtaining the projection starting point and projection candidate target points. Then, using the projection starting point as the starting point and the projection candidate target points as the ending points, a target path is searched on the generalized Vino boundary. The reachability verification of the candidate target points is successful when the number of target paths is greater than or equal to one. This technical means solves the technical problems of high computation time or the possibility of errors in reachability results in the prior art. The embodiments of the present invention perform reachability verification of candidate target points in path planning based on the generalized Vino boundary, which not only has low computation time but also provides complete verification results. It can overcome the shortcomings of the prior art.
[0072] Figure 3 This is a flowchart of an reachability verification method according to a possible embodiment of the present invention. As another embodiment of the present invention, such as... Figure 3 As shown, the reachability verification method may include:
[0073] Step 301: Obtain the outline information of each obstacle.
[0074] Step 302: The outline information of the obstacle is taken as a polygon, and a generalized Vino boundary is constructed based on each polygon.
[0075] First, the contour information of each static obstacle between the starting point and the candidate target point is obtained. Then, the contour information of each obstacle is treated as a polygon, and a generalized Vino boundary is constructed based on each polygon. The generalized Vino boundary consists of multiple boundary line segments. The generalized Vino boundary represents the set of points that are simultaneously closest to two or more static obstacles.
[0076] Step 303: Determine whether there is a boundary point in the generalized Vino boundary where the sum of the distances to the nearest obstacle is less than the width of the vehicle; if yes, proceed to step 304; if no, proceed to step 305.
[0077] Step 304: Delete the boundary segment containing the boundary point from the generalized Vino boundary.
[0078] Determine whether there exists a boundary point among the multiple boundary segments constituting the generalized Vino boundary where the sum of the distances to the nearest obstacles (two or more) is less than the width of the vehicle. If so, delete the boundary segment containing that boundary point from the generalized Vino boundary.
[0079] like Figure 4aAs shown, the slashed rectangle represents the body of the autonomous vehicle. Since there are boundary points where the sum of the distances to the nearest obstacle is less than the width of the vehicle (meaning the boundary segment containing that boundary point is insufficient to accommodate the vehicle body), the boundary segment containing that boundary point is deleted from the generalized Vino boundary. Figure 4b As shown, this ensures that the remaining boundary segments are sufficiently far from the nearest obstacle for autonomous vehicles to pass.
[0080] Step 305: Find the starting boundary segment closest to the starting point from the generalized Vino boundary, and project the starting point onto the starting boundary segment along a direction perpendicular to the starting boundary segment to obtain the projection starting point; find the target boundary segment closest to the candidate target point from the generalized Vino boundary, and project the candidate target point onto the target boundary segment along a direction perpendicular to the target boundary segment to obtain the projection candidate target point.
[0081] Step 306: Starting from the projection start point and ending at the projection candidate target point, a graph search algorithm is used to search for the target path on the generalized Vino boundary.
[0082] If we consider the generalized Vino boundary as a graph, then the nodes of the graph are the projection start point, the projection candidate target point, and the start and end points of the boundary line segments constituting the generalized Vino boundary. The boundaries of the graph are the boundary line segments constituting the generalized Vino boundary. Therefore, a graph search algorithm can be used to search for the target path from the projection start point to the projection candidate target point on the generalized Vino boundary.
[0083] Step 307: Determine whether the number of target paths is greater than or equal to one; if yes, proceed to step 308; if no, proceed to step 309.
[0084] Step 308: The reachability verification of the candidate target point is successful.
[0085] Step 309: The reachability verification of the candidate target point failed.
[0086] If one or more paths can be successfully found, the reachability verification is successful; otherwise, the reachability verification fails.
[0087] Thanks to the sparsity and connectivity of the generalized Vino boundary, the reachability verification method provided in this embodiment of the invention has the advantages of both completeness and low computational time.
[0088] Furthermore, the specific implementation details of the reachability verification method in one of the reference embodiments of the present invention have been described in detail in the above-described reachability verification method, so the details will not be repeated here.
[0089] Figure 5Figure 4 is a schematic diagram of an accessibility verification device according to an embodiment of the present invention. As shown in Figure 4, the accessibility verification device 500 includes a projection module 501, a search module 502, and a verification module 503; wherein, the projection module 501 is used to project a starting point and a candidate target point onto the generalized Vino boundary, thereby obtaining a projection starting point and a projection candidate target point; the search module 502 is used to search for a target path on the generalized Vino boundary with the projection starting point as the starting point and the projection candidate target point as the ending point; the verification module 503 is used to verify the accessibility of the candidate target point successfully when the number of target paths is greater than or equal to one, and to verify the accessibility of the candidate target point fail when the number of target paths is zero.
[0090] Optionally, the search module 502 is further configured to:
[0091] Starting from the projection start point and ending at the projection candidate target point, a graph search algorithm is used to search for the target path on the generalized Vino boundary.
[0092] Optionally, the graph search algorithm is a breadth-first search algorithm or an Astar search algorithm.
[0093] Optionally, the device further includes a construction module for:
[0094] Obtain the outline information of each obstacle;
[0095] The outline information of the obstacle is taken as a polygon, and a generalized Vino boundary is constructed based on each polygon; wherein the generalized Vino boundary is composed of multiple boundary line segments.
[0096] Optionally, the building module is further configured to:
[0097] After constructing the generalized Vino boundary based on each polygon, if there is a boundary point whose sum of distances to the nearest obstacle is less than the width of the vehicle, then the boundary segment containing that boundary point is deleted from the generalized Vino boundary.
[0098] Optionally, the projection module 501 is further configured to:
[0099] Find the starting boundary segment closest to the starting point from the generalized Vino boundary, and project the starting point onto the starting boundary segment along a direction perpendicular to the starting boundary segment to obtain the projection starting point;
[0100] Find the target boundary segment closest to the candidate target point from the generalized Vino boundary, and project the candidate target point onto the target boundary segment along a direction perpendicular to the target boundary segment to obtain the projected candidate target point.
[0101] It should be noted that the specific implementation details of the accessibility verification device described in this invention have been described in detail in the accessibility verification method described above, so the details will not be repeated here.
[0102] This invention provides a vehicle that may include the accessibility verification device provided in the above embodiments.
[0103] Figure 6 An exemplary vehicle system architecture 600 to which vehicle driving methods or vehicle driving devices according to embodiments of the present invention can be applied is shown.
[0104] like Figure 6 As shown, the vehicle system architecture 600 may include various systems, such as an autonomous driving system 601, a powertrain system 602, a sensor system 603, a control system 604, one or more peripheral devices 605, a power supply 606, a computer system 607, and a user interface 608. Optionally, the vehicle system architecture 600 may include more or fewer systems, and each system may include multiple components. Furthermore, each system and component of the vehicle system architecture 600 may be interconnected via wired or wireless means.
[0105] The vehicle system architecture 600 includes an autonomous driving system 601, which can be in a fully or partially autonomous driving mode. For example, the autonomous driving system 601 can automatically control the vehicle's movement without human interaction; the autonomous driving system 601 can also control the vehicle's autonomous driving while interacting with a human to adjust its autonomous driving behavior. Specifically, the autonomous driving system 601 can project a starting point and candidate target points onto a generalized Vino boundary, thereby obtaining a projection starting point and projection candidate target points; using the projection starting point as the starting point and the projection candidate target points as the ending point, a target path is searched on the generalized Vino boundary; in response to the number of target paths being greater than or equal to one, the reachability verification of the candidate target point is successful; in response to the number of target paths being zero, the reachability verification of the candidate target point fails.
[0106] The powertrain 602 may include components that provide power to the vehicle. For example, the powertrain 602 may include an engine, an energy source, a transmission, wheels, tires, etc. The engine may be an internal combustion engine, an electric motor, an air-compressed engine, or other combinations of engines, such as a hybrid engine consisting of a gasoline engine and an electric motor, or a hybrid engine consisting of an internal combustion engine and an air-compressed engine. The engine converts the energy source into mechanical energy to supply the transmission. Examples of energy sources may include gasoline, diesel, other petroleum-based fuels, propane, other compressed gas-based fuels, ethanol, solar panels, batteries, and other electrical sources. The energy source may also provide energy to other systems in the vehicle. Furthermore, the transmission may include a gearbox, a differential, a drive shaft, and a clutch, etc.
[0107] Sensor system 603 may include sensors for sensing the vehicle's surrounding environment. Examples include a positioning system (which may be a Global Positioning System (GPS), BeiDou Navigation Satellite System, or other positioning systems), radar, a laser rangefinder, an inertial measurement unit (IMU), and a camera. The positioning system can be used to determine the vehicle's geographical location. The IMU is used to sense changes in the vehicle's position and orientation based on inertial acceleration. In one embodiment, the IMU may be a combination of an accelerometer and a gyroscope. The radar can use radio signals to sense objects in the vehicle's surrounding environment. In some embodiments, in addition to sensing objects, the radar can also be used to sense the speed and / or direction of travel of objects.
[0108] To detect environmental information and objects located in front of, behind, or to the sides of the vehicle, radar, cameras, and other devices can be configured at appropriate locations on the exterior of the vehicle. For example, to acquire an image of the front of the vehicle, a camera can be configured inside the vehicle and close to the windshield. Alternatively, the camera can be configured around the front bumper or radiator grille. Similarly, to acquire an image of the rear of the vehicle, a camera can be configured inside the vehicle and close to the rear window. Alternatively, the camera can be configured around the rear bumper, trunk, or tailgate. To acquire images of the sides of the vehicle, a camera can be configured inside the vehicle and close to at least one of the side windows. Alternatively, the camera can be configured around the side mirrors, fenders, or doors.
[0109] Laser rangefinders use lasers to sense objects in the environment in which a vehicle is located.
[0110] A camera can be used to capture multiple images of the vehicle's surroundings. The camera can be a still camera or a video camera.
[0111] The control system 604 includes software systems for implementing autonomous driving, such as a route planning system, an obstacle avoidance system, and a vision system for image analysis. The control system 604 may also include hardware systems such as an accelerator and steering wheel system. Furthermore, the control system 604 may add or replace components other than those shown and described. Alternatively, some of the components shown above may be omitted.
[0112] The control system 604 interacts with external sensors, other accessibility verification devices, other computer systems, or users via peripheral devices 605. Peripheral devices 605 may include wireless communication systems, on-board computers, microphones, and / or speakers.
[0113] In some embodiments, peripheral device 605 provides a means for a user of control system 604 to interact with user interface 608. For example, an on-board computer may provide information to a user of the vehicle. The user interface may also operate the on-board computer to receive user input. The on-board computer may be operated via a touchscreen. In other cases, peripheral device may provide a means for communicating with other devices located within the vehicle. For example, a microphone may receive audio (e.g., voice commands or other audio input) from a user of control system 604. Similarly, a speaker may output audio to a user of control system 604.
[0114] Wireless communication systems can communicate wirelessly with one or more devices, either directly or via a communication network. For example, wireless communication systems can use networks such as cellular networks, WiFi, and wireless local area networks (WLANs), or they can use infrared links, Bluetooth, or ZigBee to communicate directly with devices. Other wireless protocols include those used in various autonomous driving communication systems.
[0115] The power source 606 can provide power to various components of the vehicle. The power source 606 can be a rechargeable lithium-ion or lead-acid battery.
[0116] The computer system 607 controls some or all of the functions enabling autonomous driving. The computer system 607 may include at least one processor that executes instructions stored in a non-transitory computer-readable medium such as memory. The computer system 607 provides the execution code for the aforementioned autonomous driving system to implement autonomous driving.
[0117] The processor can be any conventional processor, such as a commercially available central processing unit (CPU). Alternatively, the processor can be a special-purpose device such as an application-specific integrated circuit (ASIC) or other hardware-based processor. Those skilled in the art will understand that the processor, computer, or memory can actually include multiple processors, computers, or memories that may or may not be stored in the same physical housing. For example, memory can be a hard disk drive or other storage media located in a housing different from that of a computer. Therefore, references to processors or computers will be understood to include references to a collection of processors or computers or memories that may or may not operate in parallel. Unlike using a single processor to perform the steps described herein, some components, such as steering and deceleration components, may each have their own processor that performs calculations only related to the component's specific function.
[0118] User interface 608 is used to provide information to or receive information from users of the vehicle. Optionally, user interface 608 may include one or more input / output devices within a set of peripheral devices 605, such as wireless communication systems, on-board computers, microphones, and speakers.
[0119] It should be understood that the components described above are merely an example. In actual applications, components in the various modules or systems mentioned above may be added or removed as needed. Figure 7 This should not be construed as a limitation on the embodiments of this application.
[0120] The following is for reference. Figure 7 It shows a schematic diagram of the structure of a computer system 700 suitable for implementing a terminal device of the present invention. Figure 7 The terminal device shown is merely an example and should not impose any limitations on the functionality and scope of use of the embodiments of the present invention.
[0121] like Figure 7 As shown, the computer system 700 includes a central processing unit (CPU) 701, which can perform various appropriate actions and processes based on programs stored in read-only memory (ROM) 702 or programs loaded from storage section 708 into random access memory (RAM) 703. The RAM 703 also stores various programs and data required for the operation of the system 700. The CPU 701, ROM 702, and RAM 703 are interconnected via a bus 704. An input / output (I / O) interface 705 is also connected to the bus 704.
[0122] The following components are connected to the I / O interface 705: an input section 706 including a keyboard, mouse, etc.; an output section 707 including a cathode ray tube (CRT), liquid crystal display (LCD), etc., and speakers, etc.; a storage section 708 including a hard disk, etc.; and a communication section 709 including a network interface card such as a LAN card, modem, etc. The communication section 709 performs communication processing via a network such as the Internet. A drive 710 is also connected to the I / O interface 705 as needed. A removable medium 711, such as a disk, optical disk, magneto-optical disk, semiconductor memory, etc., is installed on the drive 710 as needed so that computer programs read from it can be installed into the storage section 708 as needed.
[0123] In particular, according to the embodiments disclosed in this invention, the processes described above with reference to the flowcharts can be implemented as computer software programs. For example, embodiments disclosed in this invention include a computer program carried on a computer-readable medium, the computer program containing program code for performing the methods shown in the flowcharts. In such embodiments, the computer program can be downloaded and installed from a network via communication section 709, and / or installed from removable medium 711. When the computer program is executed by central processing unit (CPU) 701, it performs the functions defined above in the system of this invention.
[0124] It should be noted that the computer-readable medium shown in this invention can be a computer-readable signal medium or a computer-readable storage medium, or any combination thereof. A computer-readable storage medium can be, for example,—but not limited to—an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination thereof. More specific examples of a computer-readable storage medium may include, but are not limited to: an electrical connection having one or more wires, a portable computer disk, a hard disk, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage device, magnetic storage device, or any suitable combination thereof. In this invention, a computer-readable storage medium can be any tangible medium containing or storing a program that can be used by or in conjunction with an instruction execution system, apparatus, or device. In this invention, a computer-readable signal medium can include a data signal propagated in baseband or as part of a carrier wave, carrying computer-readable program code. Such propagated data signals can take various forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination thereof. Computer-readable signal media can also be any computer-readable medium other than computer-readable storage media, which can send, propagate, or transmit a program for use by or in connection with an instruction execution system, apparatus, or device. The program code contained on the computer-readable medium can be transmitted using any suitable medium, including but not limited to: wireless, wire, optical fiber, RF, etc., or any suitable combination thereof.
[0125] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer programs according to various embodiments of the present invention. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of code containing one or more executable instructions for implementing the specified logical function. It should also be noted that in some alternative implementations, the functions indicated in the blocks may occur in a different order than those indicated in the drawings. For example, two consecutively indicated blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in a block diagram or flowchart, and combinations of blocks in a block diagram or flowchart, may be implemented using a dedicated hardware-based system that performs the specified function or operation, or using a combination of dedicated hardware and computer instructions.
[0126] The modules described in the embodiments of the present invention can be implemented in software or hardware. The described modules can also be housed in a processor; for example, a processor can be described as including a projection module, a search module, and a verification module, wherein the names of these modules do not necessarily limit the module itself.
[0127] In another aspect, the present invention also provides a computer-readable medium, which may be included in the device described in the above embodiments; or it may exist independently and not assembled into the device. The computer-readable medium carries one or more programs, which, when executed by the device, implement the following method: projecting a starting point and candidate target points onto a generalized Vino boundary, thereby obtaining a projection starting point and projection candidate target points; searching for target paths on the generalized Vino boundary with the projection starting point as the starting point and the projection candidate target points as the ending point; in response to the number of target paths being greater than or equal to one, the reachability verification of the candidate target point is successful; in response to the number of target paths being zero, the reachability verification of the candidate target point fails.
[0128] According to the technical solution of this invention, by first projecting the starting point and candidate target points onto the generalized Vino boundary to obtain the projection starting point and projection candidate target points, and then searching for target paths on the generalized Vino boundary with the projection starting point as the starting point and the projection candidate target points as the ending points, the reachability verification of the candidate target points is successful when the number of target paths is greater than or equal to one. Therefore, this overcomes the technical problems of high computation time or the possibility of errors in reachability results in the prior art. This invention's reachability verification of candidate target points in path planning based on the generalized Vino boundary not only has low computation time but also provides complete verification results. It overcomes the shortcomings of the prior art.
[0129] The specific embodiments described above do not constitute a limitation on the scope of protection of this invention. Those skilled in the art should understand that various modifications, combinations, sub-combinations, and substitutions can occur depending on design requirements and other factors. Any modifications, equivalent substitutions, and improvements made within the spirit and principles of this invention should be included within the scope of protection of this invention.
Claims
1. A reachability verification method, characterized in that, include: The starting point and candidate target points are projected onto the generalized Vino boundary, respectively, to obtain the projection starting point and projection candidate target points; Starting from the projection start point and ending at the projection candidate target point, a target path is searched on the generalized Vino boundary. If the number of target paths is greater than or equal to one, the reachability verification of the candidate target point is successful; if the number of target paths is zero, the reachability verification of the candidate target point fails.
2. The method according to claim 1, characterized in that, Starting from the projection start point and ending at the projection candidate target point, the target path is searched on the generalized Vino boundary, including: Starting from the projection start point and ending at the projection candidate target point, a graph search algorithm is used to search for the target path on the generalized Vino boundary.
3. The method according to claim 2, characterized in that, The graph search algorithm is either a breadth-first search algorithm or an Astar search algorithm.
4. The method according to claim 1, characterized in that, Before projecting the starting point and candidate target points onto the generalized Vino boundary to obtain the projection starting point and projection candidate target points, the method further includes: Obtain the outline information of each obstacle; The outline information of the obstacle is taken as a polygon, and a generalized Vino boundary is constructed based on each polygon; wherein the generalized Vino boundary is composed of multiple boundary line segments.
5. The method according to claim 4, characterized in that, After constructing the generalized Vino boundary based on each polygon, the method further includes: If there exists a boundary point where the sum of the distances to the nearest obstacle is less than the width of the vehicle, then the boundary segment containing that boundary point is deleted from the generalized Vino boundary.
6. The method according to claim 1, characterized in that, The starting point and candidate target points are projected onto the generalized Vino boundary, respectively, to obtain the projection starting point and projection candidate target points, including: Find the starting boundary segment closest to the starting point from the generalized Vino boundary, and project the starting point onto the starting boundary segment along a direction perpendicular to the starting boundary segment to obtain the projection starting point; Find the target boundary segment closest to the candidate target point from the generalized Vino boundary, and project the candidate target point onto the target boundary segment along a direction perpendicular to the target boundary segment to obtain the projected candidate target point.
7. An accessibility verification device, characterized in that, include: The projection module is used to project the starting point and candidate target points onto the generalized Vino boundary, thereby obtaining the projection starting point and projection candidate target points; The search module is used to search for the target path on the generalized Vino boundary, starting from the projection start point and ending at the projection candidate target point. The verification module is configured to verify the reachability of the candidate target point successfully when the number of target paths is greater than or equal to one, and to verify the reachability of the candidate target point unsuccessfully when the number of target paths is zero.
8. A vehicle, characterized in that, Includes the accessibility verification device as described in claim 7.
9. An electronic device, characterized in that, include: One or more processors; Storage device for storing one or more programs. When the one or more programs are executed by the one or more processors, the one or more processors implement the method as described in any one of claims 1-6.
10. A computer-readable medium having a computer program stored thereon, characterized in that, When the program is executed by the processor, it implements the method as described in any one of claims 1-6.