Blocked Area Guidance

By using a computing device to identify and designate blocked areas, autonomous vehicles can preemptively plan new trajectories, addressing delays and enhancing safety by quickly navigating around obstacles.

JP7680452B2Active Publication Date: 2025-05-20ZOOX INC
View PDF 10 Cites 0 Cited by

Patent Information

Application Number
JP2022536678
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Priority Date
2019-12-16
Filing Date
2020-12-15
Publication Date
2025-05-20
Estimated Expiration
2040-12-15

AI Technical Summary

Technical Problem

Autonomous and semi-autonomous vehicles face delays when requesting assistance to navigate through obstructive environments, leading to impaired progress and safety risks due to the time required for remote guidance.

Method used

A computing device provides real-time guidance by identifying and designating blocked areas using sensor data, allowing vehicles to preemptively plan new trajectories, reducing the need for manual input and enhancing safety by quickly avoiding obstacles.

Benefits of technology

The solution reduces the time vehicles spend waiting for assistance, improves safety by enabling quicker navigation around blocked areas, and allows remote operators to manage multiple vehicles more efficiently.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007680452000001
    Figure 0007680452000001
  • Figure 0007680452000002
    Figure 0007680452000002
  • Figure 0007680452000003
    Figure 0007680452000003
Patent Text Reader

Abstract

Techniques for providing guidance to a vehicle operating within an environment may include determining suggested areas to block in the environment along a route of the vehicle and presenting the suggested areas to block in a user interface of a computing device. Information about the blocked areas may be transmitted to one or more vehicles in the environment. Based on the information about the blocked areas, at least one of the computing device or a vehicle computer system of the vehicle may control operation of the vehicle to avoid the blocked areas.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] The present disclosure relates to guidance of blocked areas. [Background technology]

[0002] This application claims priority to U.S. patent application Ser. No. 16 / 716,411, filed Dec. 16, 2019, entitled "BLOCKED REGION GUIDANCE," which is hereby incorporated by reference in its entirety.

[0003] Planning systems in autonomous and semi-autonomous vehicles determine the movements the vehicle should take in the operating environment. Movements for the vehicle may be determined based in part on avoiding objects present in the environment. For example, movements may be generated to avoid a double-parked vehicle, change lanes to avoid another vehicle on the road, etc. The planning system may perform any number of actions (e.g., simulations, etc.) to determine the impact of each detected object on possible movements for the vehicle. However, in some situations, the vehicle may request assistance to navigate through a portion of the environment that obstructs the vehicle's progress. [Prior art documents] [Patent documents]

[0004] [Patent Document 1] U.S. Patent Application Serial No. 16 / 457,289 [Patent Document 2] U.S. Patent Application Serial No. 16 / 457,341 [Patent Document 3] U.S. Patent Application Serial No. 16 / 184958 [Patent Document 4] U.S. Patent Application Serial No. 15 / 982694 [Patent Document 5] U.S. Patent Application Serial No. 16 / 181164 [Patent Document 6] U.S. Patent Application Serial No. 16 / 457646 [Patent Document 7] U.S. Patent Application Serial No. 16 / 457654 [Patent Document 8] U.S. Patent Application Serial No. 14 / 933665 [Brief description of the drawings]

[0005] The detailed description will now be described with reference to the accompanying drawings, in which the left-most digit of a reference number identifies the figure in which the reference number first appears. Use of the same reference number in different figures indicates similar or identical components or features.

[0006] [Figure 1] 11 is a diagram of an example user interface of a guidance component for providing guidance to a blocked region showing an example representation of a vehicle traversing an environment. [Diagram 2] 11 is a diagram of another example user interface of a guidance component for providing guidance to blocked regions showing an example representation of a vehicle traversing an example environment. [Diagram 3] 11 is a diagram of yet another exemplary user interface of a guidance component for providing guidance to blocked regions showing an exemplary representation of a vehicle traversing an exemplary environment. [Figure 4] 4 is a diagram of the example user interface of FIG. 3 for implementing the blocked region navigation techniques described herein. [Diagram 5] 4 is a diagram of the example user interface of FIG. 3 for implementing the blocked region navigation techniques described herein. [Figure 6] 4 is a diagram of the example user interface of FIG. 3 for implementing the blocked region navigation techniques described herein. [Figure 7] 1 is a diagram of an example user interface showing an example representation of a vehicle traversing an example environment including an area designated as blocked. [Figure 8] 1 is a block diagram of an example system for implementing the techniques described herein. [Figure 9] 4 is a flow diagram illustrating an example process for designating areas of an example environment to be blocked. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0007] As noted above, a vehicle may request assistance from a remote entity to navigate past an object in the environment that impedes the vehicle's progress. A delay in providing assistance to the vehicle by the remote entity may cause the vehicle to remain there until assistance is provided, which may slow the vehicle's progress, impairing the experience of the vehicle's occupants and affecting their safety.

[0008] This application describes techniques for providing guidance to a vehicle from a computing device remote from the vehicle. In some examples, a computing device at a remote operation center may receive sensor data from a vehicle traversing an environment and determine an area in the environment that includes an obstacle blocking the path of the vehicle. In various examples, the computing device may transmit an indication of the blocked area to the vehicle. A vehicle computer system of the vehicle may plan a new trajectory for the vehicle that avoids the blocked area (e.g., a blocked lane) based at least in part on receiving the indication of the blocked area from the computing device. In some examples, the computing device may transmit an indication of the blocked area to the vehicle based at least in part on receiving a request for assistance from the vehicle. However, in other examples, the computing device may transmit an indication of the blocked area to the vehicle before the vehicle encounters the blocked area (e.g., without receiving a request for assistance from the vehicle) by identifying that the vehicle is approaching the blocked area. Using the techniques for providing guidance described herein, a vehicle may receive blocked area guidance information from a computing device available to the vehicle to quickly and / or preemptively avoid blocked areas in the environment, thereby improving vehicle safety.

[0009] In various examples, the user interface of the computing device presents a control to a human teleoperator or manager that allows one or more areas of the environment to be annotated as blocked areas (that the vehicle cannot pass through). The user interface may include one or more suggestions of areas to block. In some examples, an indication of a blocked area (e.g., a blocked lane on a road, a construction zone on a road, an area beyond the vehicle's line of sight, etc.) may be transmitted from the computing device to the vehicle for use in guiding the vehicle through the blocked area safely. By providing suggested areas to block and outputting a user interface that allows selection or confirmation of the suggested areas to block, the techniques described herein may reduce the amount of time required to provide guidance to a vehicle relative to traditional guidance techniques (e.g., manually specifying an obstructed area or inputting a route for a vehicle to bypass a blocked area, etc.). This improves vehicle safety by reducing the amount of time a vehicle may be waiting for assistance to circumvent a blocked area. In addition, the techniques described herein may allow a teleoperator or manager to monitor or support more vehicles than was possible with traditional guidance techniques.

[0010] In some examples, the vehicle may include an autonomous or semi-autonomous vehicle and may include a vehicle computer system configured to request assistance from a computing device based on encountering a difficult to navigate scenario (e.g., one in which a planner cannot plan a route according to a set of driving policies, or otherwise). By way of example and not limitation, an autonomous vehicle may approach a vehicle blocking a lane of a road while parallel parking. In some situations, it may not be clear from the situation whether the vehicle is parallel parking, double parking, or broken down. In that case, the autonomous vehicle may request assistance to pass the blocking vehicle and may receive an indication of the blocked lane or other area based on the request (e.g., road segment identification, lane number, lane identification, start of the blocked area, length of the blocked area, and the like). In some examples, the computing device may provide guidance by identifying areas that are not normally available to the vehicle (e.g., oncoming traffic lanes, bike lanes, shoulders, etc.) but that the vehicle can use to traverse the obstacle. However, in other examples, the computing device may provide guidance to one or more vehicles without an explicit request from any of the vehicles (e.g., without receiving a request for assistance).

[0011] In some examples, a user interface of the computing device may output a representation (model, simulation, estimated state, and the like) of the vehicle in the environment based at least in part on sensor data received from the vehicle. For example, the computing device may determine one or more proposed areas to block based at least in part on the sensor data of the vehicle and present the one or more proposed areas to block relative to the vehicle's location on the user interface. In various examples, the vehicle may determine one or more proposed areas to block based at least in part on sensor data indicating an obstacle, and communicate an indication of the one or more proposed areas to block to the computing device. In some examples, the user interface of the computing device may be configured to receive a user input confirming one of the proposed areas as an area to be blocked. By outputting one or more proposed regions to be blocked, a remote operator or other administrator may be able to quickly select or confirm regions to be blocked from among the proposed regions to be blocked and / or quickly modify the proposed regions to be blocked, thereby providing guidance to the vehicle more quickly relative to typical techniques that require a human to manually determine the regions of the environment that are blocked, especially when the indication of the vehicle is still moving in the environment (if the vehicle is still approaching an obstacle). In various examples, information regarding the blocked regions may be communicated from the computing device to the vehicle based at least in part on user input identifying the proposed regions as being blocked. In this manner, the vehicle may be quickly provided with guidance indicating the blocked regions when planning a trajectory for the vehicle to follow.Further, by implementing the guidance techniques described herein, a vehicle can receive assistance (e.g., receive an indication of a blocked area that can be used to enable a planner in the vehicle to plan a new route that takes the blocked area into account) even if the vehicle indicator changes position in the representation of the environment shown in the user interface.

[0012] In some examples, the vehicle may detect one or more objects and / or regions while navigating within the environment using one or more sensors. For example, the objects may include static objects (e.g., buildings, bridges, signs, etc.) and dynamic objects such as other vehicles (e.g., cars, trucks, motorcycles, mopeds, etc.), pedestrians, bicyclists, or the like. In various examples, the vehicle may detect regions of non-drivable surfaces (e.g., large potholes, flooded roads, construction zones, etc.). In some examples, the objects and / or regions may be detected based on sensor data from sensors of the vehicle (e.g., cameras, motion detectors, lidar sensors, radar sensors, etc.). In yet another example, the objects and / or regions may be detected based on sensor data received from remote sensors, such as, for example, sensors associated with another vehicle or sensors present in the environment configured to share data with multiple vehicles. The sensor data representing the detected objects and / or regions may be communicated to a computing device (e.g., a remote operation center for a fleet of autonomous vehicles, etc.). In various examples, the sensor data may represent an environment in which the vehicle operates, including detected objects and / or areas that may impede the vehicle's progress. Thus, the computing device may output one or more models representing the environment based at least on the sensor data.

[0013] The computing device, in some examples, may determine proposed regions to block in the environment along the vehicle's path based at least in part on the sensor data. In various examples, a user interface of the computing device may present the proposed regions to block (e.g., a lane on a road, multiple lanes on a road, a portion of a lane on a road, etc.). By way of example and not limitation, in an example when the vehicle is approaching a stopped vehicle or other object on a road, the computing device may present the proposed regions to block on the user interface and may show a model representing the environment.

[0014] In some examples, the computing device may receive a user input confirming selection of the proposed region to be blocked as a blocked region (e.g., a blocked lane). For example, a remote operator (e.g., a remote operator and / or a trained expert to remotely guide a robot, etc.) may select a control from a user interface to confirm the proposed region as a blocked region. In some examples, the remote operator may change (increase or decrease) the size of the region that will become the blocked region (e.g., adjust the width and / or length of the proposed region to be blocked). In various examples, after the proposed region to be blocked is selected by the remote operator, the visual representation on the user interface may change to reflect that the region is now blocked (e.g., change between a first representation for the proposed region to be blocked when not selected and a second representation for the blocked region after it has been selected / confirmed). In some examples, the second representation for the blocked region may be a different size (e.g., longer, shorter, wider, narrower, etc.) than the first representation for the proposed region to be blocked. For example, the starting position for the blocked region may be adjusted based at least in part on the vehicle's speed so that the blocked region appears in the user interface far enough in front of the vehicle to allow the vehicle to plan how to avoid the blocked region before being stopped by an obstacle.

[0015] In some examples, receiving user input confirming selection of the proposed region to be blocked as a blocked region may cause an indication of the blocked region to be transmitted to the vehicle without requiring movement by an operator of the computing device. In this manner, the computing device may transmit an indication of the blocked region to the vehicle without requiring further user input. In various examples, receiving user input confirming selection of the proposed region to be blocked as a blocked region may cause an indication of the blocked region to be transmitted to another vehicle in the fleet of autonomous vehicles. The blocked region may, in some examples, be stored in a map that is made available to the fleet of autonomous vehicles.

[0016] In some examples, the computing device may receive a request for assistance from a vehicle and may determine proposed areas to block in the environment based at least in part on the request for assistance from the vehicle. However, in other examples, the proposed areas to block may be determined independent of receiving a request for assistance from the vehicle. For example, the computing device may determine proposed areas to block in the environment and / or proactively transmit an indication of the blocked areas to one or more vehicles to improve safety for one or more vehicles operating in the vicinity of the blocked areas. In some examples, the indication of the blocked areas may be used by a planning component of the vehicle computer system to improve how the vehicle navigates (avoids objects and / or interacts with objects) in the environment.

[0017] In various examples, multiple regions may be blocked substantially simultaneously and / or sequentially by the user interface to provide the vehicle with multiple indications of the various blocked regions to assist the vehicle. For example, after a first region is blocked, the vehicle may navigate the environment while further suggested regions to block are reviewed by a remote operator for blocking. In this manner, the computing device may determine multiple blocked regions (multiple blocked lanes) and may send the indication to the vehicle (whether or not the vehicle sends a request for assistance to the computing device).

[0018] In some examples, the computing device may provide instructions to the vehicle to explicitly guide the vehicle through the blocked region. For example, the computing device may determine a trajectory for the vehicle and provide the trajectory to the vehicle so that the vehicle avoids the blocked region. Additionally or alternatively, the computing device may gain authority over the vehicle and control the vehicle through the computing device, and may cease control after successfully guiding the vehicle through the blocked region and / or after verifying that the guidance has been received by the vehicle. However, as also previously described in other examples, an indication of the blocked region may be transmitted to the vehicle for use by the vehicle computer system to guide the vehicle through the blocked region.

[0019] A blocked region may be excluded or unblocked in various ways. For example, a remote operator of a computing device may select a control configured to exclude one or more blocked regions. In such examples, the selection of the control may confirm unblocking the blocked region or multiple blocked regions. In other examples, a blocked region may be changed to an unblocked region based at least in part on a vehicle passing through the blocked region. In yet other examples, changing a blocked region to an unblocked region may be based on an overall map available to a fleet of autonomous vehicles that has been updated to remove the blocked region. In some examples, a vehicle in the fleet may recommend (e.g., send a request to the computing device) to exclude the blocked region, and a remote operator may confirm unblocking of the region using a control presented in a user interface of the computing device. In yet another example, a vehicle computer system of the vehicle may exclude the blocked region and communicate the change to the computing device. In various examples, a blocked region may be changed to an unblocked region based at least in part on a loss of network connectivity between the vehicle and a computing device remote from the vehicle.

[0020] The techniques discussed herein may improve the capabilities of computing devices in several ways. Traditionally, remote assistance involves determining a new route for the vehicle to avoid blocked areas (in some cases, the remote operator draws a route on a user interface). However, determining a new route for the vehicle (drawing a route) using traditional approaches takes more time than blocking areas and sharing information about the blocked areas with the vehicle. By outputting a user interface that allows for the proposed areas to be blocked, the time to assist the vehicle is reduced relative to traditional approaches where a human operator draws a route for the vehicle to get around the blocked areas. This may improve vehicle safety by reducing the amount of time the vehicle would otherwise be unable to navigate the environment due to blocked areas.

[0021] The techniques discussed herein may also enhance the capabilities of a vehicle computing system by outputting an indication of one or more blocked regions. In some examples, a computing device may enhance safety by sharing information about blocked regions with a vehicle while the vehicle is still moving through the environment. As a result, a vehicle computing system associated with the vehicle may control the operation of the vehicle by utilizing planning considerations that identify blocked regions. By implementing the guidance techniques described herein, a vehicle may receive assistance in less time than typical approaches, thereby enabling the vehicle to navigate around blocked regions.

[0022] The techniques described herein may be implemented in several ways. Exemplary implementations are provided below with reference to the accompanying figures. Although discussed in the context of an autonomous vehicle, the methods, apparatus, and systems described herein may be applied to a variety of systems (e.g., manually operated vehicles, sensor systems, or robotic platforms) and are not limited to autonomous vehicles. In another example, the techniques may be utilized in aviation or navigation, or in any system that uses machine vision (e.g., systems that use image data). The computing device may include a user interface in which one or more areas of the environment may be identified as blocked areas (e.g., areas and / or obstacles that impede the vehicle's progress).

[0023] 1 is a diagram of an example user interface 104 of a guidance component for providing guidance for blocked lanes showing an example representation of a vehicle traversing an environment. Generally, the user interface 104 provides an external view of the vehicle in an environment from which a computing device may be guided (e.g., controlled and / or provided with information) by assisting the vehicle in navigating the environment.

[0024] As shown in FIG. 1, one or more computing devices 102 include a user interface 104 and a guidance component 106. As shown in the example of FIG. 1, the user interface 104 includes controls 108(1), 108(2), 108(3), and the like (collectively referred to as "controls 108") for invoking various functions based on receipt of user input, and vehicle indicators 110(1) and 110(2) representing each vehicle traversing the environment. For example, the vehicle indicators 110(1) and 110(2) appear within the environmental representation to indicate the location and / or movement by each vehicle. In some examples, a vehicle may send a request for assistance to the computing device 102, and the vehicle indicator 110(1) or 110(2) representing the vehicle will provide an indication of the request for assistance (e.g., by changing the annotation or appearance of the vehicle indicator or an associated control). In this manner, the remote operator may, in some examples, provide guidance to the vehicle by selecting one of the controls 108 to cause the computing device 102 to begin assistance (e.g., controlling the vehicle, outputting details for the vehicle, receiving sensor data from the vehicle, etc.).

[0025] The computing device 102 may be included in a teleoperation center that may provide remote assistance to one or more autonomous vehicles in the fleet. In some examples, the teleoperation center may provide guidance to the vehicles in response to a request for assistance from the vehicles. Further details of determining when to contact a teleoperator, as well as techniques for navigating an autonomous vehicle using instructions received from a teleoperator, are described in U.S. Patent Application Publication No. 2012 / 0233634, filed June 28, 2019, entitled "Techniques for Contacting a Teleoperator," which is incorporated herein by reference. Further details of navigating an autonomous vehicle using instructions received from a teleoperator are described in U.S. Patent Application Publication No. 2012 / 0233634, filed June 28, 2019, entitled "Techniques for Navigating Vehicles using Teleoperations Instructions," which is incorporated herein by reference.

[0026] In various examples, the guidance component 106 may receive sensor data associated with one or more vehicles in the environment. In general, the guidance component 106 may be configured to determine a proposed region to be blocked and provide an indication of the blocked region based at least in part on a user input confirming a selection of the proposed region to be blocked. In some examples, the user interface 104 may be included to provide guidance regarding blocked lanes as part of the guidance component 106.

[0027] As mentioned above, the user interface 104 may include one of the controls 108 for invoking different functions based on user input. In some examples, one of the controls 108 may be associated with a vehicle in the environment and, when selected, may cause details about the vehicle to appear in the new user interface, as discussed in any of the following, including FIG. 2. In yet other examples, in response to selecting one of the vehicle indicators 110(1) or 110(2), details about the vehicle may be shown in the new user interface. In general, the controls 108 and / or the vehicle indicators 110(1) and 110(2) may provide a visual indication that a request for assistance has been received (e.g., the vehicle indicators may change color, flash, and the like). In some examples, the request for assistance may be for a vehicle approaching an obstacle (a blocked lane) and unable to proceed due to the obstacle. In various examples, sensor data from the vehicle is provided to the computing device 102 as part of the request for assistance. In various examples, sensor data from one or more vehicles may be periodically received by computing device 102 (e.g., at a remote operations center) for computing device 102 to maintain, process, and / or output data related to environmental disturbances at user interface 104.

[0028] In some examples, sensor data received by computing device 102 may indicate that a vehicle is approaching an area that creates congestion. In such examples, the associated vehicle indicator 110 may provide a visual indication that the vehicle is in need of assistance without receiving a request for assistance from the vehicle.

[0029] 2 is a diagram of another example user interface 200 of a guidance component for providing guidance for blocked regions showing an example representation of a vehicle 202 traversing an example environment. In some examples, the user interface 200 may be presented based at least in part on receiving a user input of one of the controls 108 of FIG. 1 to guide the vehicle 202.

[0030] In some examples, the user interface 200 may include a first portion 204 including one or more images based at least in part on sensor data associated with sensors of the vehicle 202, and / or a second portion 206 including a model of the environment based at least in part on sensor data associated with sensors of the vehicle 202. As shown in FIG. 2, the user interface may further include controls 208(1), 208(2), 208(3), and the like (collectively referred to as "controls 208") for planning a route for the vehicle 202, controlling the vehicle 202, and / or blocking areas of the environment, to name a few. In some examples, the user interface 200 may also provide information 210 about the vehicle 202 (e.g., speed, direction of travel, steering angle, lighting, sound, and the like), and / or an indicator 212 indicating the direction of travel relative to a lane or path. The user interface 200 is further shown as comprising a road segment 214 that represents a portion of the environment along which the vehicle 202 may travel to a destination. In some examples, the indicator 212 may represent a visual indication of the direction of travel of the vehicle 202 relative to the road segment 214 and / or the direction of travel of the lane.

[0031] In general, the first portion 204 and the second portion 206 of the user interface 200 may represent alternative models of an environment in which the vehicle 202 may navigate. In some examples, a remote operator associated with a computing device (e.g., a teleoperator and / or a trained expert trained to remotely guide a robot) may use one or more of the models of the environment to identify an upcoming obstacle in the current lane of the vehicle 202. By way of example and not limitation, the remote operator may control the operation of the vehicle 202, including providing a path, route, trajectory, and the like, to temporarily guide the vehicle 202. For example, the remote operator may control the operation of the vehicle 202 based at least in part on a request for assistance from the vehicle 202, and cease control of the vehicle 202 after guiding the vehicle 202 past a blocked area. Further details regarding granting operators authority to provide guidance to autonomous vehicles, transferring authority between operators, and tracking which operators have authority are described in U.S. Patent Application Publication No. 2018 / 0133634, filed November 8, 2018, entitled “Autonomous Vehicle Guidance Authority Framework,” which is incorporated herein by reference.

[0032] As noted above, in some examples, the first portion 204 may include one or more images based at least in part on sensor data associated with sensors of the vehicle 202. In such examples, the one or more images may represent a scene captured by a perception system of a vehicle computer system in the vehicle 202. As shown in FIG. 2, the various images may convey various scenes (front, rear, right, and left) of the surroundings of the vehicle 202, including detected objects such as vehicles, pedestrians, bicyclists, and buildings, to name a few. In general, the first portion 204 of the user interface 200 includes images (still images and / or video) of sufficient quality to allow a remote operator to understand the surroundings of the vehicle 202. As shown in the first portion 204, controls (+, -) may be provided in the user interface 200 to zoom in and / or zoom out the images at one or more of the various viewpoints in the first portion 204. In various examples, the remote operator may determine the situation with respect to the interaction between the vehicle 202 and objects in the environment, and / or the interactions between the various objects.

[0033] Additionally or alternatively, the second portion 206 of the user interface 200 may include a model showing the vehicle 202 interacting in an environment and may be associated with one or more images in the first portion 204 of the user interface 200 (e.g., representing a similar scene). In some examples, sensor data from the vehicle 202 may continuously determine the location and / or orientation of the vehicle 202 in the environment (e.g., using a vehicle orientation component) and continuously detect objects. As shown in FIG. 2, the vehicle 202 may travel along a road segment 214 (e.g., a lane of a road) from a first location to a second location without encountering an obstacle that impedes progress. The road segment 214 may be associated with map feature data that describes attributes of the road segment (e.g., such as a start point, an end point, road conditions, road segment identification, lane number, and the like). Some or all of the attributes of the road segment 214 may be transmitted to the vehicle if the road segment 214 (or a portion thereof) becomes a blocked area. The road segment 214 may be associated with a corridor associated with a safety margin in some examples. For example, a computing device may determine a drivable surface, determine a corridor, detect objects, and / or blend objects into the corridor. In such examples, a safety margin for the vehicle 202 is created during blending of detected objects into the corridor. Further details of determining corridors for autonomous vehicles are described in U.S. Patent Application Publication No. 2010 / 0133634, filed May 17, 2018, entitled “Drive Envelope Determination,” which is incorporated herein by reference. Further details of determining drivable areas for autonomous vehicles are described in U.S. Patent Application Publication No. 2010 / 0133634, filed November 5, 2018, entitled “Vehicle Trajectory Modification For Following,” which is incorporated herein by reference.

[0034] FIG. 3 is a diagram of yet another example user interface 300 of a guidance component for providing guidance to blocked regions, showing an example representation of the vehicle 202 of FIG. 2 traversing an example environment.

[0035] As shown in the first portion 204 and the second portion 206 of the user interface 300, the vehicle 202 is approaching a detected object 302 (another vehicle) that is at least partially blocking the lane in which the vehicle 202 is traveling. Figure 3 further illustrates an example focal area around the vehicle and indicates the distance of the object relative to the vehicle 202. In some examples, the user interface 300 may provide a control 304 for initiating blocking of an area within the environment.

[0036] In some examples, the remote operator may select a control (e.g., control 208(2)) that causes the remote operator to take control of the vehicle 202, rather than the vehicle 202 simply being operated by the vehicle computer system. In such examples, the vehicle 202 may be controlled by the user interface 300 before an area in the environment is blocked by the user interface 300. For example, the controls 208(3) that control steering, acceleration, braking, and the like may construct a path for the vehicle to avoid the detected object 302. In one non-limiting example, one of the controls 208 may be used to plan a route for the vehicle based on an image presented in the first portion 204 of the user interface 300 and / or based on a model of the environment in the second portion 206 of the user interface 300. Further details of remotely providing incremental guidance to a vehicle operating in a difficult environment are described in U.S. Patent Application Publication No. 2019 / 0133994, filed on June 28, 2019, entitled “Remote Vehicle Guidance,” which is incorporated herein by reference. Further details of remotely providing incremental guidance to a vehicle operating in a difficult environment are described in U.S. Patent Application Publication No. 2019 / 0133634, filed June 28, 2019, entitled “Vehicle Control and Guidance,” which is incorporated herein by reference. However, in other examples, a remote operator may provide assistance to navigate vehicle 202 around a blocked area without explicitly controlling vehicle 202, such as by having a lane designated as a blocked lane, as discussed in more detail elsewhere below.

[0037] Figure 4 is a diagram of an example user interface 400 for implementing the blocked region guidance techniques described herein. The example discussed with respect to Figure 4 may be based at least in part on a vehicle approaching an obstacle while traversing an environment, such as the blocked region example described in Figure 3. User interface 400 omits details from the first and second portions of the user interface for clarity.

[0038] As shown in Figure 4, user interface 400 includes a proposed region to be blocked 402 in front of vehicle 202 of Figure 2, as well as controls 404 and 406. While shown in Figure 4 as being in front of the vehicle, in other examples, proposed region to be blocked 402 may be at the rear and / or to either side of the vehicle. In various examples, control 404 may receive user input that identifies proposed region to be blocked 402 as a region to be blocked. Control 406 may be configured to receive user input that, in some examples, removes the blocked region (unblocks the region).

[0039] In some examples, the proposed region to be blocked 402 may be determined by a computing device based at least in part on sensor data associated with the vehicle. For example, the computing device may determine a size of the proposed region to be blocked 402 and / or a shape of the proposed region to be blocked 402 for presentation based at least in part on a map that stores features representative of the environment. A computing system associated with the user interface 400 may, in various examples, determine the proposed region to be blocked 402 and, optionally, present the proposed region to be blocked 402 in the user interface 300. In various examples, the computing device may present the proposed region to be blocked 402 in the user interface 400 in response to a selection of a control 404 indicating a request to block the region.

[0040] Additionally or alternatively, the proposed region to be blocked 402 may be determined by the vehicle based at least in part on sensor data associated with the vehicle. For example, the sensor data may indicate obstructions due to objects and / or impassable regions and may convey an indication of the proposed region to be blocked 402 to a computing device. In such an example, a teleoperator may confirm the proposed region to be blocked 402 provided by the vehicle as a region to be blocked. In yet other examples, a machine learning model of a computing device at the vehicle and / or teleoperation center may confirm the proposed region to be blocked 402 as a region to be blocked (whether determined by the vehicle or by a computing device at the teleoperation center).

[0041] In various examples, the proposed region to be blocked 402 may be determined based at least in part on a region associated with a road segment (road segment 214), a blocked lane on the road, a construction zone on the road, and / or a region beyond the line of sight of the vehicle (e.g., by the horizon). For example, the computer system may determine the proposed region to be blocked 402 as a lane extending from the current location of the vehicle 202 and / or as a road segment 214 (a segment defined by map feature data). However, in other examples, the proposed region to be blocked 402 may be determined by the computer device as a lane adjacent to the vehicle (e.g., a lane other than the lane in which the vehicle is traveling, etc.).

[0042] In some examples, a region may be presented as a proposed region to block 402 based at least in part on a region that is a suitable region for blocking. For example, a region may not be suitable for blocking based on one or more factors (e.g., the region is too short, the region is not linked to other regions, the region is not traversable, etc.). In some examples, a region that is not suitable for blocking may be presented with a visual indicator that reflects the unavailability of a proposed block (different from the region to block). In other examples, a region that is not suitable for blocking and / or an audio cue may not be presented in the user interface 400. In yet other examples, a visual indicator may be presented in the user interface 400 in response to an attempt to block a region that is not suitable for blocking. For example, the user interface 400 may receive a user input of a region that is not suitable and output a notification indicating that the region is not suitable for blocking based on the received user input.

[0043] In some examples, the proposed region to block 402 may be configured as a selectable region that, when selected (e.g., tapped) by a remote operator, identifies the proposed region to block 402 as the region to be blocked (as opposed to the control 404 above).

[0044] In some examples, the remote operator may adjust characteristics of the proposed blocked area 402 (such as start point, end point, length, width, and the like). For example, the remote operator may adjust the size of the proposed blocked area in the user interface 400 and / or the shape of the proposed blocked area. In this manner, the remote operator may identify characteristics of the proposed blocked area 402 that cannot be determined by the vehicle's vehicle computer system. By way of example and not limitation, the width of a lane of a road may be extended into a portion of another lane (adjacent and / or oncoming lane) to indicate the portion of the other lane to be blocked. In various examples, the size of the blocked area and / or the distance to the blocked area may be shortened and / or lengthened to adjust for changes in when portions of the lane are / are not available for crossing by the vehicle. For example, the proposed blocked area and / or the size of the blocked area may be shortened to be shorter than the length (specified in the data associated with the map) associated with the identification to the lane. In some examples, adjusting the characteristics of the proposed region to block 402 may be performed while the proposed region to block 402 is presented in a user interface and / or after the proposed region to block 402 has been selected as the region to be blocked.

[0045] In various examples, the remote operator of the computing device may continue to select further proposed regions to block 402 before relinquishing control over the vehicle (an example of when the computing device takes control of the vehicle) and / or before sending an indication of the blocked region to the vehicle (an example of when the computing device provides proactive assistance).

[0046] In some examples, the computing device may provide guidance by identifying areas that may not normally be available to vehicles (e.g., oncoming traffic lanes, bike lanes, shoulders, etc.) that the vehicle can use to cross an obstacle. In such examples, an indication of the available areas may be provided to the vehicle as part of an indication of a blocked area. For example, a portion of a bike lane or oncoming traffic lane may be identified by a remote operator as passable and transmitted by the computing device to the vehicle to cross the blocked area. Thus, the remote operator may override policies (which prohibit access by vehicles) associated with a road segment or lane to use an area that is not normally available to vehicles.

[0047] In some examples, user interface 400 may be configured to receive user input from control 406 to clear a blocked region (unblock a region). Additionally or alternatively, user interface 400 may be configured to receive user input from control 208(2) to cease control of the vehicle and clear one or more blocked regions determined during control by the computing device.

[0048] The user interface 400 may be configured to enable and disable the control 404 indicating a request to block an area based on the vehicle's location. For example, if the vehicle 202 is in a lane that includes a blocked area ahead, the control 404 may be disabled since the area is already blocked. However, in some examples, the control 404 may be enabled when the vehicle makes a lane change into a lane suitable for blocking. In some examples, an area (e.g., a road lane, a road segment, and the like) may be ineligible for blocking, and an attempt to block such an ineligible area may receive various visual and / or audio cues by the user interface 400.

[0049] 4, the user interface 400 presents a bird's-eye view from the rear. In other examples, the user interface 400 may present a top or other perspective view that enhances the perspective for selecting the proposed region to block 402. In some examples, the bird's-eye view from the rear or the top perspective view may be output for display on the user interface 400 in response to selection of a control 304 that initiates the presentation of the user interface 400.

[0050] 5 is a diagram of an example user interface 500 for implementing the blocked region guidance techniques described herein. The example discussed with respect to FIG. 5 generally describes blocked regions in response to selection of the suggested regions to block discussed with respect to FIG. 4 and others. User interface 500 omits details from the first and second portions of user interface 300 shown in FIG. 3 for clarity.

[0051] As shown in FIG. 5 , the user interface 500 includes a blocked region 502 in response to receiving a user input of a control 404 confirming the proposed blocked region 402 as a blocked region 502. In some examples, the blocked region 502 changes appearance to indicate a successfully blocked lane. In this manner, a remote operator can easily determine whether an area is a proposed blocked region or a blocked region. In various examples, determining the blocked region 502 by the computing device may include adjusting characteristics of the proposed blocked region 402 (e.g., start point, end point, length, width, and the like). In some examples, the length of the blocked region 502 and / or the width of the blocked region 502 may be determined based at least in part on the speed of the vehicle. For example, the start of the blocked region 502 may be automatically adjusted to reflect the current speed of the vehicle 202 approaching the blocked region 502. In some examples, the speed of the vehicle 202 may serve as a criterion for determining a predefined distance to begin the blocked region 502 (e.g., a blocked lane) relative to the vehicle. Thus, the beginning of the blocked region 502 shown in Figure 5 is closer to the vehicle 202 than the beginning of the proposed blocked region 402 shown in Figure 4. Additionally or alternatively, the length of the blocked region 502 and / or the width of the blocked region 502 may be determined based at least in part on map feature data associated with the blocked region 502.

[0052] In some examples, a machine learning model may be implemented by a vehicle computer system and / or a computing device (e.g., at a remote operation center) to identify the proposed area to block 402 as a blocked area. For example, one or more machine learning models may be used to identify an area to block independent of a human operator. In examples where the vehicle determines the proposed area to block, the vehicle computer system of the vehicle may implement a machine learning model to identify the proposed area to block as a blocked area.

[0053] In some examples, the blocked area 502 may apply only to vehicles requesting assistance and / or to vehicles identified by a remote operator as seeking assistance. In such examples, an indication of the blocked area 502 may be communicated to the vehicle, which may cause the blocked area 502 to be displayed on a display device of the vehicle's vehicle computer system. However, in other examples, the blocked area 502 may apply to a fleet of vehicles, in which case an indication of the blocked area 502 may be communicated to the fleet of vehicles, which may cause the blocked area 502 to be displayed on each display device associated with each vehicle computer system of each vehicle. Further details of the interaction between the remote operation center and the fleet of vehicles are described in U.S. Patent Application No. 6,233,363, filed Nov. 5, 2015, entitled "Software Application and Logic to Modify Configuration of an Autonomous Vehicle," which is incorporated herein by reference.

[0054] The indication of the blocked region 502 sent by the computing device to the vehicle may include information about the blocked region (e.g., road segment identification, lane identification, start of the blocked region, length of the blocked region, and the like). In some examples, the information about the blocked region 502 may be used by one or more components of the vehicle computer system (perception components, planning components, and the like) to cause the vehicle to determine a trajectory that safely avoids the blocked region 502. For example, road segment and / or lane identification data associated with the blocked region 502 may be processed by the vehicle computer system when planning operations for the vehicle 202.

[0055] In some examples, information regarding the blocked region 502 may conflict with sensor data captured by the vehicle (e.g., the sensor data indicates that the blocked region is away). In such examples, the vehicle computer system may use the indication of the blocked region in planning considerations by giving more weight to the information regarding the blocked region received from the computing device than to the sensor data regarding the blocked region. In this manner, the blocked region may take precedence in planning considerations over the sensor data indicating that the blocked region is away. FIG. 6 is a diagram of an example user interface 600 for implementing the blocked region guidance techniques described herein. The example discussed with respect to FIG. 6 generally describes presenting a proposed region to block 602 after blocking a region as discussed in FIG. 5 and elsewhere. FIG. 6 omits details from the first and second portions of the user interface shown in FIG. 3 for clarity.

[0056] 6, the computing device may determine a proposed region to be blocked 602 based at least in part on the vehicle 202 changing into an open lane. In some examples, a control 404 for indicating a request to block the region may be made available for selection based at least in part on the vehicle 202 changing into an open lane and / or on the vehicle 202 changing into an open lane. In some examples, a remote operator of the user interface 600 may continue to select further proposed regions to be blocked before relinquishing control over the vehicle (in examples where the computing device has control of the vehicle) and / or before sending an indication of the blocked region to the vehicle.

[0057] In some examples, a blocked area may be unblocked using a control 406 in user interface 600 that unblocks a particular blocked area and / or unblocks a set of blocked areas. In some examples, one or more blocked lanes may be unblocked using a control that corresponds to each blocked area (not shown) individually and / or by selecting the blocked area.

[0058] In various examples in which a computing device has control over at least some operation of the vehicle, unblocking the region may occur automatically when the computing device ceases control of the vehicle. When a blocked region is unblocked, in some examples, the corresponding indication of the blocked region (and information associated therewith) sent to the vehicle may be removed from planning considerations determined by the vehicle computer system of the vehicle.

[0059] In some examples, the blocked region may be changed to an unblocked region based at least in part on the vehicle passing through the blocked region. In yet other examples, changing the blocked region to an unblocked region may be based on an overall map available to the fleet of autonomous vehicles that has been updated to remove the blocked region. In some examples, a vehicle in the fleet may make a recommendation (e.g., send a request to the computing device) to remove the blocked region, and the teleoperator may confirm the unblocking of the region using a control presented in a user interface of the computing device. In yet another example, a vehicle computer system of the vehicle may remove the blocked region and communicate the change to the computing device.

[0060] 7 is a diagram of an example user interface 700 showing an example representation of a vehicle traversing an example environment that includes an area designated as blocked (blocked area 502). The example discussed with respect to FIG. 7 generally describes presenting a control for a planning tool (control 208(3)), a control for controlling the vehicle (control 208(2)), and a control for blocking one or more areas (control 404). User interface 700 omits details from the first and second portions of interface 300 shown in FIG. 3 for clarity.

[0061] As shown in FIG. 7, the computing device presents a user interface 700 showing a top perspective view of the vehicle 202 traversing an environment including a blocked region 502. This may represent a continuation of the example in FIG. 6 after the vehicle 202 has changed lanes. In some examples, the vehicle 202 may change lanes under the control of a remote operator who may continue to navigate the vehicle 202 within the environment using planning controls available in the user interface 700. In such examples, control 208(3) indicates that a vehicle planning tool is active in the user interface 700, while control 304 indicates that a region blocking tool is active (shown hatched in FIG. 7). In some examples, the blocked region 502 may persist until a specified end point (identification of a lane change) and / or until the blocked region is removed (unblocked).

[0062] Although described as separate systems, in some examples, the guidance techniques described herein with respect to Figures 1-7 may be implemented by other vehicle systems, components, and / or computing devices. For example, and as described in further detail with respect to Figure 8, the guidance techniques described herein with respect to Figures 1-7 may be implemented at least in part by or in association with the perception, planning, and / or guidance components of Figure 8. Additionally, the examples discussed with respect to Figures 1-7 may be based at least in part on receiving a request for assistance from the vehicle, or in other examples, may be based at least in part on the computing device (or a remote operator thereof) initiating assistance to the vehicle without receiving an explicit request for assistance from the vehicle.

[0063] 8 is a block diagram of an example system 800 for implementing the techniques described herein. In at least one example, the system 800 may include a vehicle, such as a vehicle 802.

[0064] Vehicle 802 may include a vehicle computer system 804, one or more sensor systems 806, one or more emitters 808, one or more communication connections 810, at least one direct connection 812, and one or more drive modules 814.

[0065] The vehicle computer system 804 may include one or more processors 816 and a memory 818 communicatively coupled to the one or more processors 816. In the illustrated example, the vehicle 802 is an autonomous vehicle; however, the vehicle 802 may be any other type of vehicle, such as a semi-autonomous vehicle, or any other system having at least an image capture device (e.g., a camera-enabled smartphone, etc.). In some examples, the autonomous vehicle 802 may be an autonomous vehicle configured to operate according to a Level 5 classification issued by the US National Highway Traffic Safety Administration, which describes a vehicle capable of performing all safety-critical functions for the entire trip, and in which the driver (or passenger) is not expected to control the vehicle at any time. However, in other examples, the autonomous vehicle 802 may be a fully or partially autonomous vehicle having any other level or classification.

[0066] In various examples, vehicle computer system 804 may store sensor data associated with the actual location of the object at the end of the estimated set of states (at the end of the time period) and may use this data as training data to train one or more models. In some examples, vehicle computer system 804 may provide the data to a remote computing device (i.e., a computing device separate from the vehicle computer system, such as computing device 830) for data analysis. In such examples, the computing device may analyze the sensor data to make a decision.

[0067] In the depicted example, memory 818 of vehicle computer system 804 stores localization component 820, perception component 822, planning component 824, one or more system controllers 826, and one or more maps 828. While shown in FIG. 8 as residing in memory 818 for illustrative purposes, it is contemplated that localization component 820, perception component 822, planning component 824, one or more system controllers 826, and / or one or more maps 828 may additionally or alternatively be accessible to vehicle 802 (e.g., stored in memory remote from vehicle 802, such as memory 836 of computing device 830, or otherwise accessible by vehicle 802).

[0068] In at least one example, the localization component 820 may include functionality to receive data from the sensor system 806 to determine a position and / or orientation of the vehicle 802 (e.g., one or more of an x, y, z position, roll, pitch, or yaw, etc.). For example, the localization component 820 may include and / or request / receive a map of the environment, such as from the map 828 and / or the map component 838, and may continuously determine the location and / or orientation of the autonomous vehicle within the map. In some examples, the localization component 820 may receive image data, lidar data, radar data, IMU data, GPS data, wheel encoder data, and the like, utilizing SLAM (simultaneous localization and mapping), CLAMS (simultaneous calibration, localization, and mapping), relative SLAM, bundle adjustment, nonlinear least squares optimization, or the like, to precisely determine the location of the autonomous vehicle. In some examples, the localization component 820 may provide data to various components of the vehicle 802 and may determine an initial position of the autonomous vehicle to determine the relevance of objects to the vehicle 802, as discussed herein.

[0069] In some examples, the perception component 822 may include functionality to perform object detection, segmentation, and / or classification. In some examples, the perception component 822 may provide processed sensor data indicative of the presence of an object (e.g., an entity) in the vicinity of the vehicle 802 and / or the classification of the object as an object type (e.g., a car, a pedestrian, a bicyclist, an animal, a building, a tree, a road surface, a curb, a sidewalk, an unknown, etc.). In some examples, the perception component 822 may provide processed sensor data indicative of the presence of a stationary entity in the vicinity of the vehicle 802 and / or the classification of the stationary entity as a type (e.g., a building, a tree, a road surface, a curb, a sidewalk, an unknown, etc.). In further or alternative examples, the perception component 822 may provide processed sensor data indicative of one or more features associated with a detected object (e.g., a tracked object) and / or the environment in which the object is located. In some examples, object-related features may include, but are not limited to, x-position (global and / or local location), y-position (global and / or local location), z-position (global and / or local location), orientation (e.g., roll, pitch, yaw), object type (e.g., classification), object velocity, object acceleration, object extent (size), etc. Environment-related features may include, but are not limited to, the presence of other objects in the environment, the state of other objects in the environment, time of day, day of the week, season, weather conditions, darkness / light indications, etc.

[0070] In general, the planning component 824 may determine a path for the vehicle 802 to follow to traverse an environment. For example, the planning component 824 may determine various routes and trajectories, as well as various levels of detail. For example, the planning component 824 may determine a route for traveling from a first location (e.g., a current location) to a second location (e.g., a target location). For the purposes of this discussion, the route may include a sequence of waypoints for traveling between the two locations. As non-limiting examples, the waypoints include streets, intersections, Global Positioning System (GPS) coordinates, and the like. Additionally, the planning component 824 may generate instructions for guiding the autonomous vehicle along at least a portion of the route from the first location to the second location. In at least one example, the planning component 824 may determine how to guide the autonomous vehicle from a first waypoint in the sequence of waypoints to a second waypoint in the sequence of waypoints. In some examples, the instructions may be a trajectory, or a portion of a trajectory. In some examples, multiple trajectories may be generated substantially simultaneously (e.g., within technical tolerances) according to a receding horizon control technique, in which case one of the multiple trajectories is selected for the vehicle 802 to navigate.

[0071] In some examples, the planning component 824 may include a prediction component that generates predicted trajectories for objects (e.g., objects) in the environment and / or generates predicted candidate trajectories for the vehicle 802. For example, the prediction component may generate one or more predicted trajectories for objects that fall within a threshold distance from the vehicle 802. In some examples, the prediction component may measure the tracking of the objects to generate trajectories for the objects based on observed and predicted behavior.

[0072] In at least one example, vehicle computer system 804 can include one or more system controllers 826, which can be configured to control steering, propulsion, braking, safety, emitter, communication, and other systems of vehicle 802. System controller 826 can communicate with and / or control corresponding systems of drive module 814 and / or other components of vehicle 802.

[0073] The memory 818 may further include one or more maps 828 that may be used by the vehicle 802 to navigate within the environment. For the purposes of this discussion, a map may be any number of structures modeled in two, three, or N dimensions that can provide information about the environment, such as, but not limited to, topology (such as intersections), streets, mountain ranges, roads, terrain, and the environment as a whole. In some examples, the map may include, but is not limited to, texture information (e.g., color information (RGB color information, Lab color information, HAV / HSL color information), and the like), intensity information (e.g., lidar information, radar information, and the like), spatial information (e.g., image data projected onto a mesh, individual “surfels” (e.g., polygons associated with individual colors and / or intensities), reflectance information (e.g., specularity information, retroreflectance information, BRDF information, BSSRDF information, and the like). In one example, the map may include a three-dimensional mesh of the environment. In some examples, the vehicle 802 may be controlled based at least in part on the map 828. That is, the map 828 may be used in conjunction with the orientation component 820, the perception component 822, and / or the planning component 824 to determine a location of the vehicle 802, detect objects and / or areas within the environment, generate routes, and determine movements and / or trajectories to navigate within the environment.

[0074] In some examples, one or more maps 828 may be stored on a remote computing device (such as computing device 830) accessible via network 844. In some examples, multiple maps 828 may be stored, for example, based on a characteristic (e.g., type of entity, time of day, day of the week, season, etc.). Storing multiple maps 828 may have similar memory requirements but increases the speed at which the map data may be accessed.

[0075] 8, the computer system 830 may include a guidance component 842. In various examples, the guidance component 842 may receive sensor data associated with the detected objects and / or regions from the perception component 822 and / or from the sensor system 806. In some examples, the guidance component 842 may receive environmental characteristics (e.g., environmental factors, etc.) and / or weather characteristics (e.g., weather factors such as snow, rain, ice, etc., etc.) from the perception component 822 and / or the sensor system 806. The guidance component 842 may be configured to determine a proposed region to be blocked, such as the proposed region to be blocked of FIG. 5. Although shown separately in FIG. 8, the guidance component 842 may be part of the planning component 824 of the vehicle 802, or a separate component.

[0076] In various examples, the guidance component 842 may be configured to receive user input confirming selection of a proposed region to be blocked as a blocked region, such as blocked region 502 of FIG. 5. The guidance component 842 may determine information related to the blocked region and transmit the information to the vehicle 802 via the network 844. In various examples, the information may include an indication of the blocked region that can be used by the planning component 824 to generate one or more predicted trajectories (e.g., direction of travel, speed, etc.) for the vehicle 802. In some examples, the guidance component 842 may be configured to determine one or more available trajectories for the vehicle 802 to follow that avoid the blocked region. Additionally or alternatively, the guidance component 842 may be configured to transmit the one or more available trajectories to the vehicle 802 for the vehicle to consider in its planning considerations. In some examples, the guidance component 842 may be configured to determine a trajectory that is applicable to the environment, such as based on environmental characteristics, weather characteristics, and the like.

[0077] The guidance component 842 may be configured to control operation of the vehicle 802, such as by receiving input from a remote operator via a user interface. For example, the remote operator may select a control in the user interface that implements a planning tool, and a plan for the vehicle may be implemented automatically by the planning tool and / or manually by the remote operator.

[0078] In some examples, the guidance component 842 may be configured to receive an input to unblock one or more blocked regions. In some examples, the blocked lanes may be unblocked using a control in the user interface that unblocks a particular blocked region and / or unblocks a set of blocked regions. In some examples, one or more blocked lanes may be unblocked individually using a control in the user interface that corresponds to each blocked region and / or by selecting the blocked region.

[0079] In various examples in which the computing device 830 has control over at least some operation of the vehicle, unblocking the region may occur automatically when the computing device ceases control of the vehicle. When a blocked region is unblocked, in some examples, the corresponding indication of the blocked region (and information associated therewith) sent to the vehicle may be removed from planning considerations determined by the vehicle computer system.

[0080] As will be appreciated, the components discussed herein (e.g., the localization component 820, the perception component 822, the planning component 824, the one or more system controllers 826, the one or more maps 828, the guidance component 842) are described separately for purposes of illustration, however, operations performed by the various components may be combined with or performed by any other components.

[0081] In some examples, some or all aspects of the components discussed herein may include any models, techniques, and / or machine learning techniques. For example, in some examples, the components in memory 818 (and memory 836 discussed below) may be implemented as neural networks.

[0082] As described herein, an exemplary neural network is a biologically inspired technology that passes input data through a series of connected layers to create an output. Each layer of a neural network may also include another neural network, or may include any number of layers (whether convolutional or not). As understood in the context of this disclosure, a neural network may utilize machine learning, which may refer to a broad class of technologies in which an output is generated based on learned parameters.

[0083] Although discussed in the context of neural networks, any type of machine learning not inconsistent with this disclosure may be used. For example, machine learning techniques include, but are not limited to, regression techniques (e.g., ordinary least squares regression (OLSR), linear regression, logistic regression, stepwise regression, multivariate adaptive regression splines (MARS), locally estimated scatterplot smoothing (LOESS)), instance-based techniques (e.g., ridge regression, least absolute shrinkage and selection operator (LASSO), elastic net, least angle regression (LARS)), decision tree techniques (e.g., classification and regression trees (CART), iterative partitioners (ID3), etc.), and may be used to train machine learning techniques. dichotomiser3), chi-squared automated interaction detection (CHAID), decision strains, conditional decision trees), Bayesian techniques (e.g., naive Bayes, Gaussian naive Bayes, multinomial naive Bayes, average-one-dependence estimator (AODE), Bayesian belief network (BNN), Bayesian network), clustering techniques (e.g., k-means, k-median, expectation maximization (EM), hierarchical clustering), association rule learning techniques (e.g., perceptron, backpropagation, Hopfield network, radial basis function network (RBFN)), deep learning techniques (e.g., deep Boltzmann machine (DBM), deep belief network (DBN), convolutional neural network) (CNN), stacked autoencoders), dimensionality reduction techniques (e.g., principal component analysis (PCA), principal component regression (PCR), partial least squares regression (PLSR), Sammon's mapping, multidimensional scaling (MDS), projection pursuit, linear discriminant analysis (LDA), mixed discriminant analysis (MDA), quadratic discriminant analysis (QDA), flexible discriminant analysis (FDA)), ensemble techniques (e.g., boosting, bootstrap aggregation (bagging), AdaBoost, stacked generalization (blending), gradient boosting machine (GBM), gradient boosted regression tree (GBRT), random forest), SVM (support vector machine), supervised learning, unsupervised learning, semi-supervised learning, etc. Further examples of architectures include ResNet70, ResNet101, VGG, DenseNet, PointNet, and the like.

[0084] In at least one example, the sensor system 806 may include lidar sensors, radar sensors, ultrasonic transducers, sonar sensors, location sensors (e.g., GPS, compass, etc.), inertial sensors (e.g., inertial measurement units (IMUs), accelerometers, magnetometers, gyroscopes, etc.), cameras (e.g., RGB, IR, intensity, depth, time of flight (TOF), etc.), microphones, wheel encoders, environmental sensors (e.g., temperature sensors, humidity sensors, light sensors, pressure sensors, etc.), and the like. The sensor system 806 may include multiple instances of each of these or other types of sensors. For example, the lidar sensors may include individual lidar sensors located at the corners, front, rear, sides, and / or top of the vehicle 802. As another example, the camera sensors may include multiple cameras positioned at various locations near the exterior and / or interior of the vehicle 802. The sensor system 806 may provide input to the vehicle computer system 804. Additionally or alternatively, the sensor system 806 may send sensor data over one or more networks 844 at a particular frequency, after a predetermined period of time, in near real-time, etc., to one or more computing devices 830.

[0085] The vehicle 802 may also include one or more emitters 808 for emitting light and / or sound. The emitters 808 may include interior audio and visual emitters for communicating with occupants of the vehicle 802. By way of example and not limitation, the interior emitters may include speakers, lights, signs, display screens, touch screens, haptic emitters (e.g., vibration and / or force feedback), mechanical actuators (e.g., seat belt tensioners, seat locators, head rest locators, etc.), and the like. The emitters 808 may also include exterior emitters. By way of example and not limitation, the exterior emitters may include lights or other indicators of vehicle movement (e.g., indicator lights, signs, light arrays, etc.) to indicate direction of travel, and one or more audio emitters (e.g., speakers, speaker arrays, horns, etc.) for audibly informing pedestrians or other nearby vehicles, one or more of which may include acoustic beam steering technology.

[0086] Vehicle 802 may also include one or more communication connections 810 capable of communicating between vehicle 802 and one or more other local or remote computing devices. For example, communication connection 810 may facilitate communication with other local computing devices of vehicle 802 and / or drive module 814. Additionally, communication connection 810 may provide for the vehicle to communicate with other nearby computing devices (e.g., computing device 830, other nearby vehicles, etc.) and / or with one or more remote sensor systems 846 to receive sensor data. Communication connection 810 may also enable vehicle 802 to communicate with remote teleoperation computing devices or other remote services.

[0087] The communications connection 810 may include physical and / or logical interfaces for connecting the vehicle computer system 804 to another computing device or network, such as network 844. For example, the communications connection 810 may enable WiFi-based communications, such as over frequencies defined by the IEEE 802.11 standard, short-range wireless frequencies such as Bluetooth, cellular communications (e.g., 2G, 3G, 4G, 4G LTE, 5G, etc.), or any suitable wired or wireless communications protocol that enables each computing device to interface with other computing devices.

[0088] In at least one example, the vehicle 802 may include one or more drive modules 814. In some examples, the vehicle 802 may have a single drive module 814. In at least one example, if the vehicle 802 has multiple drive modules 814, the individual drive modules 814 may be located at both ends of the vehicle 802 (e.g., the front and the rear, etc.). In at least one example, the drive module 814 may include one or more sensor systems for detecting conditions surrounding the drive module 814 and / or the vehicle 802. By way of example and not limitation, the sensor systems may include one or more wheel encoders (e.g., rotational encoders) for sensing the rotation of the wheels of the drive module, inertial sensors (e.g., inertial measurement units, accelerometers, gyroscopes, magnetometers, etc.) for measuring the orientation and acceleration of the drive module, cameras or other image sensors, ultrasonic sensors for acoustically detecting objects in the surroundings of the drive module, lidar sensors, radar sensors, etc. Some sensors, such as the wheel encoders, may be unique to the drive module 814. In some cases, the sensor systems in the drive module 814 may overlap or complement corresponding systems in the vehicle 802 (e.g., sensor system 806).

[0089] The drive module 814 may include many of the vehicle systems, including a high voltage battery, a motor to propel the vehicle, an inverter to convert direct current from the battery to alternating current for use by other vehicle systems, a steering system including a steering motor and a steering rack (which may be electric), a braking system including hydraulic or electric actuators, a suspension system including liquid and / or air components, a stability control system to distribute braking forces to reduce friction losses and maintain control, an HVAC system, lighting (e.g., lighting such as headlights / taillights to illuminate the exterior surroundings of the vehicle), and one or more other systems (e.g., cooling systems, safety systems, on-board charging systems, other electrical components such as DC / DC converters, high voltage junctions, high voltage cables, charging systems, charging ports, etc.). In addition, the drive module 814 may include a drive module controller that may receive and pre-process data from the sensor systems and control the operation of the various vehicle systems. In some examples, the drive module controller may include one or more processors and a memory communicatively coupled to the one or more processors. The memory may store one or more modules for implementing various functions of the drive module 814. Additionally, the drive modules 814 may also include one or more communication connections that enable each drive module to communicate with one or more other local or remote computing devices.

[0090] In at least one example, the direct connection 812 may provide a physical interface for coupling one or more drive modules 814 with the body of the vehicle 802. For example, the direct connection 812 may provide for the transfer of energy, fluid, air, data, etc. between the drive module 814 and the vehicle. In some examples, the direct connection 812 may further releasably secure the drive module 814 to the body of the vehicle 802.

[0091] In at least one example, the localization component 820, the perception component 822, the planning component 824, the one or more system controllers 826, and the one or more maps 828 may process the sensor data as described above and send their respective outputs to the computing device 830 via one or more networks 844. In at least one example, the localization component 820, the perception component 822, the planning component 824, the one or more system controllers 826, and the one or more maps 828 may send their respective outputs to the computing device 830 at a particular frequency, after a predetermined period of time, in near real-time, etc.

[0092] In some examples, the vehicle 802 may send sensor data to the computing device 830 over the network 844. In some examples, the vehicle 802 may receive sensor data from the computing device 830 and / or from a remote sensor system 846 over the network 844. The sensor data may include raw sensor data and / or processed sensor data and / or representations of the sensor data. In some examples, the sensor data (raw or processed) may be sent and / or received as one or more log files.

[0093] The computing device 830 may include a processor 832, a user interface 834, and a memory 836 that stores a map component 838, a sensor data processing component 840, and a guidance component 842. In some examples, the map component 838 may include functionality for generating maps of various resolutions. In such examples, the map component 838 may send one or more maps to the vehicle computer system 804 for navigation. In various examples, the sensor data processing component 840 may be configured to receive data from one or more remote sensors, such as the sensor system 806 and / or the remote sensor system 846. In some examples, the sensor data processing component 840 may be configured to process the data and send the processed sensor data to the vehicle computer system 804, such as for use by the planning component 824. In some examples, the sensor data processing component 840 may be configured to send raw sensor data to the vehicle computer system 804.

[0094] The processor 816 of the vehicle 802 and the processor 832 of the computing device 830 may be any suitable processor capable of executing instructions, processing data, and performing the operations described herein. By way of example and not limitation, the processors 816 and 832 may include one or more central processing units (CPUs), graphics processing units (GPUs), or any other device or portion of a device that processes electronic data and converts the electronic data into other electronic data that may be stored in registers and / or memory. In some examples, integrated circuits (e.g., ASICs, etc.), gate arrays (e.g., FPGAs, etc.), and other hardware devices may also be considered to be processors so long as they are configured to execute encoded instructions.

[0095] Memory 818 and memory 836 are examples of non-transitory computer-readable media. Memory 818 and memory 836 may store an operating system and one or more software applications, instructions, programs, and / or data for implementing the methods and functions belonging to the various systems described herein. In various implementations, memory may be implemented using any suitable memory technology, such as static random access memory (SRAM), synchronous dynamic RAM (SDRAM), non-volatile / flash type memory, or any type of memory capable of storing information. The architectures, systems, and individual elements described herein may include many other logical, programmatic, and physical components, of which those shown in the accompanying figures are merely examples relevant to the discussion herein.

[0096] In some examples, memory 818 and memory 836 may include at least working memory and storage memory. For example, working memory may be a limited capacity high-speed memory (e.g., cache memory) used to store data operated on by processors 816 and 832. In some examples, memory 818 and memory 836 may include storage memory, which may be a relatively large capacity slower memory used for long-term storage of data. In some cases, processors 816 and 832 may not be able to operate directly on data stored in storage memory, and data may need to be loaded into working memory to perform operations based on the data, as discussed herein.

[0097] 8 is shown as a distributed system, it should be noted that in alternative examples, components of vehicle 802 may be associated with computing device 830 and / or components of computing device 830 may be associated with vehicle 802. That is, vehicle 802 may perform one or more of the functions associated with computing device 830, and vice versa.

[0098] FIG. 9 illustrates exemplary processes according to an embodiment of the present disclosure. These processes are illustrated as logical flow graphs, each operation of which represents a sequence of operations that may be implemented in hardware, software, or a combination thereof. In the context of software, instructions represent computer-executable instructions stored on one or more computer-readable storage media that, when executed by one or more processors, perform the described operations. Generally, computer-executable instructions include routines, programs, objects, components, data structures, and the like that perform particular functions or implement particular abstract data types. The order in which the operations are described is not intended to be construed as limiting, and any number of the described operations may be combined to perform a process in any order and / or in parallel.

[0099] 9 is a flow diagram illustrating an example process 900 for designating areas of an example environment to be blocked. Some or all of the process 900 may be performed by one or more components in FIG. 8 described herein. For example, some or all of the process 900 may be performed by computer system 830.

[0100] In operation 902, the process may include receiving sensor data from a sensor of the vehicle. For example, a computer system of a remote operation center may be configured to receive sensor data representative of the vehicle relative to one or more objects in an environment. The sensor data may be received from one or more sensors on the vehicle and / or from one or more remote sensors. In some examples, a vehicle computer system of the vehicle may be configured to detect dynamic objects, static objects, and / or areas. In some examples, the sensor data may be combined with map data representative of fixed features of the environment, including, but not limited to, crosswalks, traffic signals, school zones, bicycle lanes, and the like. In various examples, the objects may be detected utilizing machine learning techniques. In such examples, one or more machine learning algorithms may be trained to detect the objects based on the sensor data.

[0101] In operation 904, the process may include determining a proposed blocked area in the environment along the vehicle's path based at least in part on the sensor data. For example, the computing device may determine the proposed blocked area 402 based at least in part on the sensor data and the map data. For example, the computing device 830 may determine a size of the proposed blocked area 402 and / or a shape of the proposed blocked area 402 to present based at least in part on a map that stores features representative of the environment. In various examples, the proposed blocked area may be determined at least in part based on an area associated with a road segment (road segment 214), a blocked lane on a road, a construction zone on a road, and / or an area beyond the vehicle's line of sight (e.g., due to the horizon). For example, the computing system may determine that the proposed blocked area 402 represents a lane on a road, multiple lanes on a road, a portion of a lane on a road, etc. In various examples, the vehicle may communicate the proposed blocked area 502 to the computing device to be processed by the computing device and / or presented on a user interface.

[0102] At operation 906, the process may include causing the proposed region to be blocked to be presented on a user interface of the computing device. For example, the computing device 830 may, in various examples, determine the proposed region to be blocked 402 and present the proposed region to be blocked 402 on the user interface 400. In various examples, the computing device 830 may present the proposed region to be blocked 402 on the user interface 400 based at least in part on receiving a request for assistance from a vehicle. In various examples, the computing device 830 may receive user input via the user interface to adjust characteristics of the proposed region to be blocked (start point, end point, length, width, etc.).

[0103] At operation 908, the process may include receiving user input via a user interface confirming selection of the proposed area to be blocked as a blocked area. In various examples, the user interface 400 may receive user input of a control (control 404) to confirm the proposed area to be blocked 402 as a blocked area 502. In examples where no user input is received (indicated by "No"), the process may include receiving additional sensor data from the vehicle. In such examples, the new sensor data may cause another proposed area to be blocked to be presented. In some examples, the teleoperator may modify the proposed area to be blocked 402 and / or the blocked area 502. For example, the computing device may receive user input via a user interface to adjust at least one of the size of the proposed area 402, the shape of the proposed area 402, the size of the blocked area 502, or the shape of the blocked area 502.

[0104] In instances when user input is received (indicated by "YES"), the process may include transmitting an indication of the blocked region to the vehicle without further user input at operation 910. In various examples, the computing device 830 may transmit information regarding the blocked region 502 to the vehicle (and in some examples, to additional vehicles that may also be affected by the blocked region 502) based at least in part on the user input received at the control 404 of the user interface 400. That information (e.g., road segment identification, lane identification, start of the blocked region, length of the blocked region, etc.) may be processed by the vehicle computer system to navigate the vehicle through the blocked region.

[0105] The methods described herein represent sequences of operations that may be implemented in hardware, software, or a combination thereof. In the context of software, the blocks represent computer-executable instructions stored on one or more computer-readable storage media that, when executed by one or more processors, perform the described operations. Generally, computer-executable instructions include routines, programs, objects, components, data structures, and the like that perform particular functions or implement particular abstract data types. The order in which the operations are described is not intended to be construed as limiting, and any number of the aforementioned operations may be combined in any order and / or in parallel to implement a process. In some embodiments, one or more operations of the methods may be omitted entirely. By way of example and not limitation, operations 604 and 608 may be implemented without operations 610, 612, and / or 614. Additionally, the methods described herein may be combined in whole or in part with each other or in other ways.

[0106] Various techniques described herein may be implemented in the context of software, such as computer-executable instructions, or program modules, that are stored in a computer-readable storage device and executed by processors of one or more computing devices, such as those illustrated in the figures. Generally, program modules include routines, programs, objects, components, data structures, etc., that define operational logic for performing particular tasks or implement particular abstract data types.

[0107] Other architectures can be used to implement the described functions and are intended to be within the scope of this disclosure. Further, for purposes of discussion, although a distribution of specific responsibilities has been defined above, various functions and responsibilities may be distributed and divided in various manners depending on the environment.

[0108] Similarly, software can be stored and distributed in a variety of ways and using different means, and the storage and execution configuration of the particular software described above can be varied in many different ways. Thus, software implementing the techniques described above is not limited to the forms of memory specifically described, but can be distributed across various types of computer readable media.

[0109] (Example section) Any of the example clauses in this section may be used with any other example clauses and / or any other example or embodiment discussed herein.

[0110] A: A system including one or more processors; and a non-transitory computer-readable medium having instructions stored thereon that, when executed by the one or more processors, cause the system to perform operations including receiving sensor data from sensors associated with a vehicle traversing an environment; determining proposed areas to be blocked in the environment along a path of the vehicle based at least in part on the sensor data; causing the proposed areas to be blocked in a user interface; receiving user input via the user interface confirming selection of the proposed areas to be blocked as areas to be blocked; and transmitting an indication of the blocked areas to the vehicle.

[0111] B: The system of paragraph A, wherein the proposed areas to be blocked include lanes of roads within the environment.

[0112] C: The system of paragraphs A or B, wherein determining the proposed areas to block within the environment is further based at least in part on a map that stores characteristics of the environment.

[0113] D: The system of paragraphs A to C, wherein the vehicle is an individual vehicle of a group of vehicles, and the action further includes transmitting an indication of the blocked area to additional vehicles in the group of vehicles.

[0114] E: The system of paragraphs A through D, wherein the operation further includes receiving an indication by the user interface that the vehicle may be driven within an area previously designated as not operable.

[0115] F: A method, comprising: receiving sensor data from a sensor associated with a vehicle traversing an environment; determining proposed areas of the environment through which the vehicle may be prevented from traveling based at least in part on the sensor data; causing a user interface to present the proposed areas; receiving user input confirming selection of the proposed areas to be blocked as blocked areas; and transmitting an indication of the blocked areas.

[0116] G: The method of the method described in paragraph F, wherein the proposed areas to be blocked include lanes of roads in the environment.

[0117] H: The method of paragraph F or G, further comprising storing the blocked area in a map.

[0118] I: The method of paragraphs F through H, further comprising receiving user input via a user interface confirming a selection to unblock the blocked region.

[0119] J: The method described in paragraphs F to I, further including receiving a request from the vehicle to unblock the blocked area, wherein receiving user input via the user interface confirming a selection to unblock the blocked area is based at least in part on the request.

[0120] K: The method of paragraphs F to J, further comprising receiving user input via a user interface to adjust at least one of the size of the proposed region or the shape of the proposed region.

[0121] L: The method of paragraphs F through K, wherein transmitting an indication of the blocked area includes transmitting an indication of the blocked area to other vehicles in the group of vehicles.

[0122] M: The method of paragraphs F to L, wherein the suggested areas are based at least in part on map data.

[0123] N: The method of paragraphs F through M, further comprising causing the vehicle to navigate the environment based at least in part on the indication of the blocked region.

[0124] O: A non-transitory computer-readable storage medium having instructions stored thereon that, when executed, cause one or more processors to perform operations including receiving sensor data from sensors associated with a vehicle traversing an environment; determining proposed areas of the environment in which the vehicle is to be prevented from traveling based at least in part on the sensor data; causing a user interface to present the proposed areas; receiving user input confirming selection of the proposed areas to be blocked as blocked areas; and transmitting an indication of the blocked areas.

[0125] P: The non-transitory computer-readable storage medium of paragraph O, wherein the proposed area to be blocked includes lanes of a road in the environment.

[0126] Q: A non-transitory computer-readable storage medium as described in paragraph O or P, wherein determining the proposed areas to block within the environment is further based at least in part on a map that stores characteristics of the environment.

[0127] R: The non-transitory computer-readable storage medium of paragraphs O to Q, wherein the vehicle is an individual vehicle of a group of vehicles, and the operation further includes transmitting an indication of the blocked area to further vehicles of the group of vehicles.

[0128] S: The non-transitory computer-readable storage medium of paragraphs O through R, wherein the operation further includes receiving an indication by a user interface that the vehicle can be driven within an area previously designated as not driveable based at least in part on the map data.

[0129] T: The non-transitory computer-readable storage medium of paragraphs O to Q, wherein transmitting the indication of the blocked area includes transmitting the indication of the blocked area to another vehicle of the group of vehicles.

[0130] Although the example sections set forth above are described with respect to one particular implementation, it should be understood that in the context of this document, the contents of the example sections may also be implemented by methods, devices, systems, computer-readable media, and / or other implementations.

[0131] One or more examples of the technology described herein have been described, and various modifications, additions, permutations, and equivalents thereof fall within the scope of the technology described herein.

[0132] In describing the examples, reference is made to the accompanying drawings which form a part of this specification and which show, by way of illustration, specific examples of the claimed subject matter. It is understood that other examples may be used and that changes or modifications, such as structural changes, may be made. Such examples, changes, or modifications do not necessarily depart from the intended scope of the claimed subject matter. Although steps may be shown in a certain order in this specification, in some cases, the ordering may be changed such that some inputs are provided at different times or in different orders without changing the functionality of the described systems and methods. The procedures disclosed may also be performed in different orders. Furthermore, the various calculations in this specification need not be performed in the order disclosed, and other examples using alternative calculation orders may be readily implemented. In addition to being reordered, calculations may also be decomposed into sub-calculations which achieve the same results.

Claims

1. 1. A system comprising: one or more processors; A non-transitory computer-readable storage medium that, when executed by the one or more processors, receiving sensor data from sensors associated with a vehicle passing through an environment; determining a suggested blocking region within the environment along a path of the vehicle based at least in part on the sensor data; causing a presentation of the recommended block region in a user interface; and receiving, by the user interface, user input confirming selection of the proposed blocked region as a blocked region; transmitting an indication of the blocked region to the vehicle for use by a vehicle computing system to guide the vehicle through the blocked region; A non-transitory computer-readable storage medium storing instructions for causing the system to perform operations including: A system comprising:

2. The system of claim 1 , wherein the suggested block regions include lanes of roads within the environment.

3. The system of claim 1 or 2, wherein determining the suggested block regions within the environment is further based at least in part on a map that stores characteristics of the environment.

4. 4. The system of claim 1, wherein the vehicle is an individual vehicle of a fleet of vehicles, and the actions further comprise transmitting an indication of the blocked area to additional vehicles of the fleet.

5. 5. The system of claim 1, wherein the operation further comprises receiving, by the user interface, an indication based at least in part on map data, that the vehicle may be driven in an area previously designated as non-driveable.

6. 1. A method comprising: receiving sensor data from sensors associated with a vehicle passing through an environment; determining a suggested blocking area within the environment in which the vehicle may be prevented from traveling based at least in part on the sensor data; causing a presentation of the suggested block regions in a user interface; receiving user input confirming selection of the proposed blocked region as a blocked region; transmitting an indication of the blocked region for use by a vehicle computing system to guide the vehicle through the blocked region; A method comprising:

7. The method of claim 6 , wherein the suggested block regions include lanes of roads within the environment.

8. The method of claim 6 or 7, further comprising the step of storing the blocked regions in a map.

9. 9. The method of claim 6, further comprising the step of receiving a user input via a user interface confirming a selection to unblock the blocked region.

10. 10. The method of claim 9, further comprising receiving a request from the vehicle to unblock the blocked area, and wherein receiving user input via the user interface confirming a selection to unblock the blocked area is based at least in part on the request.

11. 11. The method of claim 6, further comprising receiving user input via the user interface for adjusting at least one of a size of the recommended block region or a shape of the recommended block region.

12. 12. A method according to any one of claims 6 to 11, wherein transmitting the indication of the blocked area comprises transmitting the indication of the blocked area to another vehicle in a fleet of vehicles.

13. The method of claim 6 , wherein the suggested block regions are based at least in part on map data.

14. 14. The method of claim 6, further comprising causing the vehicle to navigate the environment based at least in part on the indication of the blocked region.

15. A computer program storing coded instructions which, when executed on a computer, implements a method according to any one of claims 6 to 14.

Citation Information

Patent Citations

  • Vehicle route management method, vehicle route management device, and vehicle route management system

    JP2020166665A

  • Software application and logic to modify configuration of an autonomous vehicle

    US10334050B2

  • Drive envelope determination

    US10614717B2

  • Remote vehicle guidance

    US11768493B2

  • Vehicle trajectory modification for following

    US20200139967A1