Identifying new category of objects in environment of vehicle

Through open set detection and analysis and machine learning models, autonomous vehicles can identify and classify unknown objects, solving the problem of identifying unknown objects in autonomous navigation and improving navigation security and efficiency.

CN120457464APending Publication Date: 2025-08-08MOTIONAL AD LLC
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202380085405.7
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Priority Date
2022-11-16
Filing Date
2023-10-12
Publication Date
2025-08-08

AI Technical Summary

Technical Problem

It is difficult for autonomous vehicles to safely navigate in an unknown object environment, and it is difficult for the existing technology to effectively identify and classify unknown objects, affecting trajectory determination.

Method used

Open set detection and analysis are adopted, and unknown objects are identified through image data using machine learning models, and open set detection and analysis is performed through remote servers or vehicle itself to automatically classify unknown objects.

Benefits of technology

Automatic classification of unknown objects is realized, the need for expert annotations is reduced, and the navigation safety and efficiency of autonomous vehicles in unknown environments is improved.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120457464A_ABST
    Figure CN120457464A_ABST
Patent Text Reader

Abstract

In some embodiments, a method may include applying a first machine learning model trained to perform open set detection by identifying at least one new category of objects based at least on image data indicative of one or more objects present in at least one environment in which one or more vehicles operate. A data set comprising a plurality of categories of objects may be updated to include the at least one new category of objects. In some cases, the data set may be further updated to include tags associated with the at least one new category of objects. A second machine learning model may be trained, or in some cases updated, based at least on the updated dataset that includes the at least one new category of objects. Related systems and computer program products are also provided.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] CROSS-REFERENCE TO RELATED APPLICATIONS

[0002] This application claims priority to U.S. Provisional Application No. 63 / 416,869, filed on October 17, 2022, entitled “IDENTIFYING NEW CLASSES OF OBJECTS IN ENVIRONMENTS OF VEHICLES,” and U.S. Application No. 17 / 988,188, filed on November 16, 2022, entitled “IDENTIFYING NEW CLASSES OF OBJECTS IN ENVIRONMENTS OF VEHICLES,” the disclosures of which are incorporated herein by reference in their entireties. Background Art

[0003] Autonomous vehicles can navigate along a sequence of trajectories with minimal or even no human input. To safely navigate the vehicle along its chosen path, the vehicle can rely on objects in the environment surrounding the vehicle. In some instances, the object's class is known, such as a car, traffic light, or pedestrian, while in other instances, the object's class is unknown. Objects of known classes can be considered when determining a trajectory, but unknown objects can make determining a safe trajectory difficult. Recognizing objects from unknown classes remains a challenging but crucial task. BRIEF DESCRIPTION OF THE DRAWINGS

[0004] Figure 1 is an example environment in which a vehicle including one or more components of an autonomous system may be implemented;

[0005] Figure 2 is a diagram of one or more systems of a vehicle including an autonomous system;

[0006] Figure 3 yes Figure 1 and Figure 2 a diagram of one or more devices and / or components of one or more systems;

[0007] Figure 4A is a diagram of some components of an autonomous system;

[0008] Figure 4B is a graph of the implementation of a neural network;

[0009] Figure 4C and Figure 4D is a diagram illustrating an example operation of a CNN;

[0010] Figure 5 is an example environment in which a vehicle including one or more components of an autonomous system may be implemented;

[0011] 6A to 6D is a flow chart illustrating an example of a process for identifying new classes of objects in a vehicle's environment; and

[0012] Figure 7 is a flow chart illustrating another example of a process for identifying new classes of objects in an environment in which a vehicle operates. DETAILED DESCRIPTION

[0013] In the following description, for purposes of explanation, numerous specific details are set forth in order to provide a thorough understanding of the present disclosure. However, it will be apparent that the embodiments described herein can be practiced without these specific details. In some instances, well-known configurations and devices are illustrated in block diagram form to avoid unnecessarily obscuring aspects of the present disclosure.

[0014] In the accompanying drawings, for ease of description, a specific arrangement or order of schematic elements (such as those representing systems, devices, modules, instruction blocks and / or data elements, etc.) is illustrated. However, those skilled in the art will understand that, unless expressly described, the specific order or arrangement of schematic elements in the accompanying drawings is not intended to require a specific processing order or sequence, or separation of processes. Furthermore, unless expressly described, the inclusion of a schematic element in a drawing is not intended to mean that such element is required in all embodiments, nor is it intended to mean that features represented by such element cannot be included in some embodiments or cannot be combined with other elements in some embodiments.

[0015] In addition, in the accompanying drawings, connecting elements (such as solid or dotted lines or arrows) are used to illustrate the connection, relationship or association between or among two or more other schematic elements, and there is no such connecting element and is not intended to mean that there can be no connection, relationship or association. In other words, some connections, relationships or associations between elements are not illustrated in the accompanying drawings, so as not to obscure the present disclosure. In addition, for ease of illustration, a single connecting element can be used to represent multiple connections, relationships or associations between elements. For example, if a connecting element represents the communication of a signal, data or instruction (for example, "software instruction"), it will be understood by those skilled in the art that this element can represent one or more signal paths (for example, bus) that may be needed to affect communication.

[0016] Although the terms "first," "second," and / or "third," etc. are used to describe various elements, these elements should not be limited by these terms. The terms "first," "second," and / or "third" are only used to distinguish one element from another. For example, a first contact may be referred to as a second contact, and similarly, a second contact may be referred to as a first contact without departing from the scope of the described embodiments. Both the first contact and the second contact are contacts, but they are not the same contact.

[0017] The terms used in the description of the various embodiments described herein are included only for the purpose of describing specific embodiments and are not intended to be limiting. As used in the description of the various embodiments described and the appended claims, the singular forms "a", "an", and "the" are also intended to include the plural forms and can be used interchangeably with "one or more than one" or "at least one" unless the context clearly indicates otherwise. It will also be understood that the term "and / or" as used herein refers to and includes any and all possible combinations of one or more than one of the associated listed items. It will also be understood that when the terms "comprises", "comprising", "having", and / or "having" are used in this specification, the presence of the stated features, integers, steps, operations, elements, and / or components is specified, but the presence or addition of one or more other features, integers, steps, operations, elements, components, and / or groups thereof is not excluded.

[0018] As used herein, the terms "communication" and "communicating" refer to at least one of receiving, receiving, transmitting, transferring, and / or providing information (or information represented by, for example, data, signals, messages, instructions, and / or commands). For a unit (e.g., a device, a system, a component of a device or system, and / or a combination thereof) to communicate with another unit, this means that the unit is able to directly or indirectly receive information from the other unit and / or send (e.g., transmit) information to the other unit. This can refer to a direct or indirect connection that is wired and / or wireless in nature. In addition, two units can communicate with each other even if the transmitted information can be modified, processed, relayed, and / or routed between the first unit and the second unit. For example, a first unit can communicate with a second unit even if the first unit passively receives information and does not actively transmit information to the second unit. As another example, a first unit can communicate with a second unit if at least one intermediary unit (e.g., a third unit located between the first unit and the second unit) processes information received from the first unit and transmits the processed information to the second unit. In some embodiments, a message may refer to a network packet (eg, a data packet, etc.) that includes data.

[0019] As used herein, the term "if" is optionally interpreted to mean "when," "at the time of," "in response to being determined to be," and / or "in response to being detected," etc., depending on the context. Similarly, the phrases "if it is determined" or "if [the stated condition or event] is detected" are optionally interpreted to mean "upon determining," "in response to being determined to be" or "upon detecting [the stated condition or event]," and / or "in response to detecting [the stated condition or event]," etc., depending on the context. Furthermore, as used herein, the terms "have," "have," or "possess," etc. are intended to be open-ended terms. Furthermore, unless expressly stated otherwise, the phrase "based on" is intended to mean "based at least in part on."

[0020] Reference will now be made in detail to the embodiments, examples of which are illustrated in the accompanying drawings. In the following detailed description, numerous specific details are set forth in order to provide a thorough understanding of the various described embodiments. However, it will be apparent to one of ordinary skill in the art that the various described embodiments may be practiced without these specific details. In other instances, well-known methods, processes, components, circuits, and networks have not been described in detail so as not to unnecessarily obscure aspects of the embodiments.

[0021] General Overview

[0022] A vehicle (such as an autonomous vehicle) can navigate along a sequence of trajectories that can each be based at least in part on objects in the environment surrounding the vehicle. In some instances, the class of the object is known, such as a car, a traffic light, or a pedestrian, while in other instances, the class of the object is unknown. Objects in known classes can be considered when determining a trajectory, but unknown objects can make determining a safe trajectory difficult, such as because it is not known whether the unknown object is a stationary object or a movable object that can move at a specific speed and / or in a specific direction. Using open set detection analysis to analyze images of the environment surrounding the vehicle can allow unknown objects to be automatically classified, thereby allowing a safer determination of the trajectory. Multiple images of the environment surrounding the vehicle can be used in the open set detection analysis, which can help classify unknown objects because more data including more objects and / or from more geographic locations can be analyzed.

[0023] Some advantages of these techniques include allowing for automatic classification of objects, for example by assigning labels, which eliminates the need for expert annotation, which can be particularly resource-intensive in autonomous vehicle applications where images from unfamiliar environments are continuously collected. Object categories may be unknown for various reasons, such as being typically found only in a specific geographic location, such as a particular city, state, or country, being relatively rare in the vehicle's surroundings, being a newly developed technology or engineering design recently introduced into the vehicle's surroundings, and / or being unknown for another reason. Automatically classifying objects can thus help keep pace with technological developments and engineering designs and / or allow for the identification of geographic trends. The complexity of a particular geographic location can thus be known before any vehicle is introduced to that location, as at least one geographic trend in that location may already be known and can therefore be considered when determining the vehicle's trajectory. Existing vehicles can be configured to generate image data using at least one sensor, so open-set detection analysis can leverage existing capabilities of the vehicle by using the generated image data that is already available and can be transmitted to a remote server where open-set detection analysis can be performed. The server can receive image data from multiple vehicles, which can make the open set detection analysis more efficient because the server can analyze more images and / or images from more locations than a single vehicle can provide to identify objects of unknown classes. In other examples, the vehicles themselves can use the image data generated by the vehicles to perform the open set detection analysis.

[0024] Now refer to Figure 1, illustrates an example environment 100 in which vehicles including autonomous systems and vehicles not including autonomous systems operate. As illustrated, the environment 100 includes vehicles 102a-102n, objects 104a-104n, routes 106a-106n, an area 108, a vehicle-to-infrastructure (V2I) device 110, a network 112, a remote autonomous vehicle (AV) system 114, a fleet management system 116, and a V2I system 118. The vehicles 102a-102n, the vehicle-to-infrastructure (V2I) device 110, the network 112, the autonomous vehicle (AV) system 114, the fleet management system 116, and the V2I system 118 are interconnected (e.g., establish connections for communication, etc.) via wired connections, wireless connections, or a combination of wired and wireless connections. In some embodiments, objects 104a-104n are interconnected with at least one of vehicles 102a-102n, vehicle-to-infrastructure (V2I) devices 110, network 112, autonomous vehicle (AV) system 114, fleet management system 116, and V2I system 118 via a wired connection, a wireless connection, or a combination of wired and wireless connections.

[0025] Vehicles 102a-102n (individually referred to as vehicles 102 and collectively referred to as vehicles 102) include at least one device configured to transport goods and / or people. In some embodiments, vehicles 102 are configured to communicate with V2I devices 110, remote AV systems 114, fleet management systems 116, and / or V2I systems 118 via network 112. In some embodiments, vehicles 102 include cars, buses, trucks, and / or trains. In some embodiments, vehicles 102 are similar to vehicles 200 described herein (see Figure 2 ) are the same or similar. In some embodiments, vehicles 200 in the set of vehicles 200 are associated with an autonomous queue manager. In some embodiments, as described herein, vehicles 102 travel along corresponding routes 106a-106n (individually referred to as routes 106 and collectively referred to as routes 106). In some embodiments, one or more vehicles 102 include an autonomous system (e.g., an autonomous system that is the same or similar to autonomous system 202).

[0026] Objects 104a-104n (individually referred to as object 104 and collectively referred to as objects 104) include, for example, at least one vehicle, at least one pedestrian, at least one cyclist, and / or at least one structure (e.g., a building, a sign, a fire hydrant, etc.). Each object 104 is stationary (e.g., located at a fixed location and over a period of time) or moving (e.g., having a velocity and associated with at least one trajectory). In some embodiments, objects 104 are associated with corresponding locations in area 108.

[0027] Routes 106a-106n (individually referred to as routes 106 and collectively referred to as routes 106) are each associated with (e.g., specifying) a series of actions (also referred to as trajectories) connecting states along which an AV can navigate. Each route 106 begins at an initial state (e.g., a state corresponding to a first spatiotemporal location and / or speed, etc.) and ends at a final target state (e.g., a state corresponding to a second spatiotemporal location different from the first spatiotemporal location) or a target zone (e.g., a subspace of acceptable states (e.g., terminal states)). In some embodiments, the first state includes a location where one or more individuals will board the AV, and the second state or zone includes one or more locations where the one or more individuals boarding the AV will disembark. In some embodiments, routes 106 include multiple acceptable state sequences (e.g., multiple spatiotemporal location sequences) that are associated with (e.g., define) multiple trajectories. In examples, routes 106 include only high-level actions or imprecise state locations, such as a series of connecting roads indicating a change of direction at a roadway intersection. Additionally or alternatively, the route 106 may include more precise actions or states, such as, for example, a specific target lane or precise locations within a lane zone and target speeds at those locations. In an example, the route 106 includes multiple precise state sequences along at least one high-level action with a limited look-ahead horizon to an intermediate goal, where the combination of consecutive iterations of the limited-horizon state sequences cumulatively corresponds to multiple trajectories that collectively form a high-level route terminating at a final target state or zone.

[0028] The area 108 includes a physical area (e.g., a geographic region) that the vehicle 102 can navigate. In an example, the area 108 includes at least one state (e.g., a country, a province, a separate state within a plurality of states included in a country, etc.), at least a portion of a state, at least one city, at least a portion of a city, etc. In some embodiments, the area 108 includes at least one named thoroughfare (referred to herein as a "road"), such as a highway, an interstate, a parkway, a city street, etc. Additionally or alternatively, in some examples, the area 108 includes at least one unnamed road, such as a driveway, a section of a parking lot, a section of an open space and / or undeveloped area, a dirt road, etc. In some embodiments, the road includes at least one lane (e.g., a portion of the road that the vehicle 102 can traverse). In an example, the road includes at least one lane associated with (e.g., identified based on) at least one lane marking line.

[0029] Vehicle-to-infrastructure (V2I) devices 110 (sometimes referred to as vehicle-to-infrastructure or vehicle-to-everything (V2X) devices) include at least one device configured to communicate with vehicle 102 and / or V2I system 118. In some embodiments, V2I devices 110 are configured to communicate with vehicle 102, remote AV system 114, fleet management system 116, and / or V2I system 118 via network 112. In some embodiments, V2I devices 110 include radio frequency identification (RFID) devices, signs, cameras (e.g., two-dimensional (2D) and / or three-dimensional (3D) cameras), lane markings, streetlights, parking meters, and the like. In some embodiments, V2I devices 110 are configured to communicate directly with vehicle 102. Additionally or alternatively, in some embodiments, the V2I device 110 is configured to communicate with the vehicle 102, the remote AV system 114, and / or the fleet management system 116 via the V2I system 118. In some embodiments, the V2I device 110 is configured to communicate with the V2I system 118 via the network 112.

[0030] The network 112 includes one or more wired and / or wireless networks. In an example, the network 112 includes a cellular network (e.g., a long-term evolution (LTE) network, a third-generation (3G) network, a fourth-generation (4G) network, a fifth-generation (5G) network, a code division multiple access (CDMA) network, etc.), a public land mobile network (PLMN), a local area network (LAN), a wide area network (WAN), a metropolitan area network (MAN), a telephone network (e.g., a public switched telephone network (PSTN)), a private network, an ad hoc network, an intranet, the Internet, a fiber-optic-based network, a cloud computing network, etc., and / or a combination of some or all of these networks.

[0031] Remote AV system 114 includes at least one device configured to communicate with vehicle 102, V2I device 110, network 112, fleet management system 116, and / or V2I system 118 via network 112. In an example, remote AV system 114 includes a server, a server group, and / or other similar devices. In some embodiments, remote AV system 114 is co-located with fleet management system 116. In some embodiments, remote AV system 114 participates in the installation of some or all of the vehicle's components (including autonomous systems, autonomous vehicle computing, and / or software implemented by autonomous vehicle computing). In some embodiments, remote AV system 114 maintains (e.g., updates and / or replaces) these components and / or software during the vehicle's lifetime.

[0032] The queue management system 116 includes at least one device configured to communicate with the vehicles 102, the V2I devices 110, the remote AV system 114, and / or the V2I system 118. In an example, the queue management system 116 includes a server, a server group, and / or other similar devices. In some embodiments, the queue management system 116 is associated with a ride-sharing company (e.g., an organization that controls the operation of multiple vehicles (e.g., vehicles that include autonomous systems and / or vehicles that do not include autonomous systems).

[0033] In some embodiments, the V2I system 118 includes at least one device configured to communicate with the vehicle 102, the V2I device 110, the remote AV system 114, and / or the fleet management system 116 via the network 112. In some examples, the V2I system 118 is configured to communicate with the V2I device 110 via a connection other than the network 112. In some embodiments, the V2I system 118 includes a server, a server group, and / or other similar devices. In some embodiments, the V2I system 118 is associated with a municipality or a private entity (e.g., a private entity that maintains the V2I device 110).

[0034] supply Figure 1 The number and arrangement of elements illustrated are examples. Figure 1 There may be additional elements, fewer elements, different elements, and / or differently arranged elements than those illustrated. Additionally or alternatively, at least one element of the environment 100 may be described as being Figure 1 Additionally or alternatively, at least one set of elements of environment 100 may perform one or more functions described as being performed by at least one different set of elements of environment 100.

[0035] Now refer to Figure 2 , vehicle 200 (which can be Figure 1 102) includes or is associated with autonomous system 202, powertrain control system 204, steering control system 206, and braking system 208. In some embodiments, vehicle 200 is similar to vehicle 102 (see Figure 1 ) are the same or similar. In some embodiments, the autonomous system 202 is configured to give the vehicle 200 autonomous driving capabilities (e.g., implementing at least one driving automatic or maneuver-based function, feature and / or device, etc., which enables the vehicle 200 to operate partially or completely without human intervention, including but not limited to fully autonomous vehicles (e.g., vehicles that abandon reliance on human intervention, such as Level 5 ADS operating vehicles, etc.), highly autonomous vehicles (e.g., vehicles that abandon reliance on human intervention in certain situations, such as Level 4 ADS operating vehicles, etc.), and / or conditionally autonomous vehicles (e.g., vehicles that abandon reliance on human intervention in limited situations, such as Level 3 ADS operating vehicles, etc.). In one embodiment, the autonomous system 202 includes the operational or tactical functionality required to enable the vehicle 200 to operate in traffic on the road and continuously perform part or all of a dynamic driving task (DDT). In another embodiment, the autonomous system 202 includes an advanced driver assistance system (ADAS) that includes driver support features. The autonomous system 202 supports various levels of driving automation ranging from no driving automation (e.g., Level 0) to full driving automation (e.g., Level 5). For a detailed description of fully autonomous vehicles and highly autonomous vehicles, reference can be made to SAE International's standard J3016: Taxonomy and Definitions for Terms Related to On-Road Motor Vehicle Automated Driving Systems, the entire contents of which are incorporated by reference. In some embodiments, the vehicle 200 is associated with an autonomous queue manager and / or a ridesharing company.

[0036] Autonomous system 202 includes a sensor suite comprising one or more devices, such as a camera 202a, a LiDAR sensor 202b, a Radar sensor 202c, and a microphone 202d. In some embodiments, autonomous system 202 may include more, fewer, and / or different devices (e.g., ultrasonic sensors, inertial sensors, a GPS receiver (discussed below), and / or an odometer sensor for generating data associated with an indication of the distance traveled by vehicle 200). In some embodiments, autonomous system 202 uses one or more devices included in autonomous system 202 to generate data associated with environment 100, as described herein. The data generated by one or more devices of autonomous system 202 may be used by one or more systems described herein to observe the environment in which vehicle 200 is located (e.g., environment 100). In some embodiments, autonomous system 202 includes a communication device 202e, autonomous vehicle computing 202f, a drive-by-wire (DBW) system 202h, and a safety controller 202g.

[0037] The camera 202a includes a camera configured to communicate with the communication device 202e, the autonomous vehicle computer 202f, and / or the safety controller 202g via a bus (e.g., Figure 3 The camera 202a includes at least one device for communicating with the bus 302 (the same or similar bus as the bus 302). The camera 202a includes at least one camera (e.g., a digital camera using a light sensor such as a charge coupled device (CCD), a thermal camera, an infrared (IR) camera, and / or an event camera, etc.) to capture images including physical objects (e.g., cars, buses, curbs and / or people, etc.). In some embodiments, the camera 202a generates camera data as output. In some examples, the camera 202a generates camera data including image data associated with the image. In this example, the image data may specify at least one parameter corresponding to the image (e.g., image characteristics such as exposure, brightness, and / or image timestamp, etc.). In such an example, the image may be in a format (e.g., RAW, JPEG, and / or PNG, etc.). In some embodiments, the camera 202a includes a plurality of independent cameras configured (e.g., positioned) on the vehicle to capture images for the purpose of stereoscopic imaging (stereo vision). In some examples, the camera 202a includes a computer system that generates image data and transmits the image data to the autonomous vehicle computing 202f and / or a fleet management system (e.g., with Figure 1The autonomous vehicle computing system 202f may be configured to include multiple cameras (e.g., a fleet management system similar to or similar to the fleet management system 116 of the plurality of cameras). In such an example, the autonomous vehicle computing system 202f determines a depth to one or more objects in the field of view of at least two of the plurality of cameras based on image data from the at least two cameras. In some embodiments, the camera 202a is configured to capture images of objects within a distance relative to the camera 202a (e.g., up to 100 meters and / or up to 1 kilometer, etc.). Accordingly, the camera 202a includes features, such as a sensor and a lens, that are optimized for sensing objects at one or more distances relative to the camera 202a.

[0038] In embodiments, camera 202a includes at least one camera configured to capture one or more images associated with one or more traffic lights, street signs, and / or other physical objects that provide visual navigation information. In some embodiments, camera 202a generates traffic light data associated with the one or more images. In some examples, camera 202a generates TLD (traffic light detection) data associated with the one or more images in a format such as RAW, JPEG, and / or PNG. In some embodiments, camera 202a that generates TLD data differs from other systems incorporating cameras described herein in that camera 202a may include one or more cameras with a wide field of view (e.g., a wide-angle lens, a fisheye lens, and / or a lens with a viewing angle of approximately 120 degrees or greater) to generate images associated with as many physical objects as possible.

[0039] The light detection and ranging (LiDAR) sensor 202b includes a sensor configured to communicate with the communication device 202e, the autonomous vehicle computing 202f and / or the safety controller 202g via a bus (e.g., Figure 3The LiDAR sensor 202b includes at least one device that communicates with a bus (the same or similar bus as the bus 302) that is connected to the LiDAR sensor 202b. The LiDAR sensor 202b includes a system configured to emit light from a light emitter (e.g., a laser emitter). The light emitted by the LiDAR sensor 202b includes light outside the visible spectrum (e.g., infrared light, etc.). In some embodiments, during operation, the light emitted by the LiDAR sensor 202b encounters a physical object (e.g., a vehicle) and is reflected back to the LiDAR sensor 202b. In some embodiments, the light emitted by the LiDAR sensor 202b does not penetrate the physical object encountered by the light. The LiDAR sensor 202b also includes at least one light detector that detects the light emitted from the light emitter after it encounters the physical object. In some embodiments, at least one data processing system associated with the LiDAR sensor 202b generates an image (e.g., a point cloud and / or a combined point cloud, etc.) representing objects included in the field of view of the LiDAR sensor 202b. In some examples, at least one data processing system associated with LiDAR sensor 202b generates an image representing the boundaries of a physical object and / or the surface of the physical object (e.g., the topology of the surface), etc. In such examples, the image is used to determine the boundaries of the physical object in the field of view of LiDAR sensor 202b.

[0040] The radio detection and ranging (Radar) sensor 202c includes a sensor configured to communicate with the communication device 202e, the autonomous vehicle computing 202f and / or the safety controller 202g via a bus (e.g., Figure 3 The radar sensor 202c includes at least one device that communicates with a bus (same or similar to the bus 302) that is connected to the radar sensor 202c. The radar sensor 202c includes a system configured to transmit (pulsed or continuous) radio waves. The radio waves transmitted by the radar sensor 202c include radio waves within a predetermined frequency spectrum. In some embodiments, during operation, the radio waves transmitted by the radar sensor 202c encounter physical objects and are reflected back to the radar sensor 202c. In some embodiments, the radio waves transmitted by the radar sensor 202c are not reflected by some objects. In some embodiments, at least one data processing system associated with the radar sensor 202c generates a signal representing an object included in the field of view of the radar sensor 202c. For example, the at least one data processing system associated with the radar sensor 202c generates an image representing the boundaries of the physical object and / or the surface of the physical object (e.g., the topology of the surface). In some examples, the image is used to determine the boundaries of the physical object in the field of view of the radar sensor 202c.

[0041] The microphone 202d includes a microphone configured to communicate with the communication device 202e, the autonomous vehicle computing device 202f, and / or the safety controller 202g via a bus (e.g., Figure 3 At least one device that communicates with the vehicle 200 (e.g., a bus similar to or similar to bus 302). Microphone 202d includes one or more microphones (e.g., an array microphone and / or an external microphone, etc.) that capture audio signals and generate data associated with (e.g., representing) the audio signals. In some examples, microphone 202d includes a transducer device and / or the like. In some embodiments, one or more systems described herein can receive the data generated by microphone 202d and determine the location (e.g., distance, etc.) of an object relative to the vehicle 200 based on the audio signal associated with the data.

[0042] The communication device 202e includes at least one device configured to communicate with the camera 202a, the LiDAR sensor 202b, the Radar sensor 202c, the microphone 202d, the autonomous vehicle computing 202f, the safety controller 202g, and / or the DBW (drive-by-wire) system 202h. For example, the communication device 202e may include at least one device configured to communicate with the camera 202a, the LiDAR sensor 202b, the Radar sensor 202c, the microphone 202d, the autonomous vehicle computing 202f, the safety controller 202g, and / or the DBW (drive-by-wire) system 202h. Figure 3 In some embodiments, the communication device 202e includes a vehicle-to-vehicle (V2V) communication device (eg, a device for enabling wireless communication of data between vehicles).

[0043] Autonomous vehicle computing 202f includes at least one device configured to communicate with camera 202a, LiDAR sensor 202b, Radar sensor 202c, microphone 202d, communication device 202e, safety controller 202g, and / or DBW system 202h. In some examples, autonomous vehicle computing 202f includes devices such as client devices, mobile devices (e.g., cellular phones and / or tablet computers, etc.), and / or servers (e.g., computing devices including one or more central processing units and / or graphics processing units, etc.). In some embodiments, autonomous vehicle computing 202f is the same as or similar to autonomous vehicle computing 400 described herein. Additionally or alternatively, in some embodiments, autonomous vehicle computing 202f is configured to communicate with an autonomous vehicle system (e.g., with Figure 1 Remote AV system 114 of the same or similar autonomous vehicle system), a queue management system (e.g., Figure 1 The same or similar queue management system as the queue management system 116 of FIG), V2I devices (e.g., Figure 1 V2I device 110 that is the same as or similar to the V2I device 110) and / or a V2I system (e.g., Figure 1The V2I system 118 may communicate with the same or similar V2I system.

[0044] Safety controller 202g includes at least one device configured to communicate with camera 202a, LiDAR sensor 202b, Radar sensor 202c, microphone 202d, communication device 202e, autonomous vehicle computing 202f, and / or DBW system 202h. In some examples, safety controller 202g includes one or more controllers (electrical controllers and / or electromechanical controllers, etc.) configured to generate and / or transmit control signals to operate one or more devices of vehicle 200 (e.g., powertrain control system 204, steering control system 206, and / or braking system 208, etc.). In some embodiments, safety controller 202g is configured to generate control signals that take precedence over (e.g., override) control signals generated and / or transmitted by autonomous vehicle computing 202f.

[0045] The DBW system 202h includes at least one device configured to communicate with the communication device 202e and / or the autonomous vehicle computing device 202f. In some examples, the DBW system 202h includes one or more controllers (e.g., electrical controllers and / or electromechanical controllers, etc.) configured to generate and / or transmit control signals to operate one or more devices of the vehicle 200 (e.g., the powertrain control system 204, the steering control system 206, and / or the braking system 208, etc.). Additionally or alternatively, the one or more controllers of the DBW system 202h are configured to generate and / or transmit control signals to operate at least one different device of the vehicle 200 (e.g., turn signals, headlights, door locks, and / or windshield wipers, etc.).

[0046] The powertrain control system 204 includes at least one device configured to communicate with the DBW system 202h. In some examples, the powertrain control system 204 includes at least one controller and / or actuator. In some embodiments, the powertrain control system 204 receives control signals from the DBW system 202h and causes the vehicle 200 to perform longitudinal vehicle motion (such as starting forward movement, stopping forward movement, starting rearward movement, stopping rearward movement, accelerating in a certain direction, decelerating in a certain direction, etc.) or perform lateral vehicle motion (such as performing a left turn and / or performing a right turn, etc.). In examples, the powertrain control system 204 increases, maintains the same, or decreases the energy (e.g., fuel and / or electricity, etc.) provided to the vehicle's motor, thereby causing at least one wheel of the vehicle 200 to rotate or not rotate.

[0047] Steering control system 206 includes at least one device configured to rotate one or more wheels of vehicle 200. In some examples, steering control system 206 includes at least one controller and / or actuator, etc. In some embodiments, steering control system 206 rotates the two front wheels and / or the two rear wheels of vehicle 200 to the left or right to turn vehicle 200 left or right. In other words, steering control system 206 causes the movement required to regulate the y-axis component of the vehicle's motion.

[0048] Braking system 208 includes at least one device configured to actuate one or more brakes to slow down and / or hold vehicle 200 stationary. In some examples, braking system 208 includes at least one controller and / or actuator configured to cause one or more calipers associated with one or more wheels of vehicle 200 to close on the corresponding rotors of vehicle 200. Additionally or alternatively, in some examples, braking system 208 includes an automatic emergency braking (AEB) system and / or a regenerative braking system, among other things.

[0049] In some embodiments, vehicle 200 includes at least one platform sensor (not explicitly illustrated) for measuring or inferring a property of a state or condition of vehicle 200. In some examples, vehicle 200 includes platform sensors such as a global positioning system (GPS) receiver, an inertial measurement unit (IMU), wheel rate sensors, wheel brake pressure sensors, wheel torque sensors, engine torque sensors, and / or steering angle sensors. Although brake system 208 is illustrated as being located Figure 2 The braking system 208 is located on the proximal side of the vehicle 200 , but the braking system 208 can be located anywhere in the vehicle 200 .

[0050] Now refer to Figure 3, which illustrates a schematic diagram of an apparatus 300. As illustrated, the apparatus 300 includes a processor 304, a memory 306, a storage component 308, an input interface 310, an output interface 312, a communication interface 314, and a bus 302. In some embodiments, device 300 corresponds to: at least one device of vehicle 102 (e.g., at least one device of a system of vehicle 102); at least one device of V2I device 110 (e.g., at least one device of a system of V2I device 110); at least one device of AV system 114 (e.g., at least one device of a system of AV system 114); at least one device of queue management system 116 (e.g., at least one device of a system of queue management system 116); at least one device of V2I system 118 (e.g., at least one device of a system of V2I system 118); at least one device of camera 202a (e.g., at least one device of a system of camera 202a); at least one device of LiDAR sensor 202b (e.g., at least one device of a system of LiDAR sensor 202b); at least one device of Radar sensor 202c (e.g., at least one device of a system of Radar sensor 202c); at least one device of microphone 202d (e.g., at least one device of a system of microphone 202d). at least one device of the communication device 202e (e.g., at least one device of the system of the communication device 202e); at least one device of the autonomous vehicle computing 202f (e.g., at least one device of the system of the autonomous vehicle computing 202f); at least one device of the safety controller 202g (e.g., at least one device of the system of the safety controller 202g); at least one device of the DBW system 202h (e.g., at least one device of the system of the DBW system 202h); at least one device of the powertrain control system 204 (e.g., at least one device of the system of the powertrain control system 204); at least one device of the steering control system 206 (e.g., at least one device of the system of the steering control system 206); at least one device of the braking system 208 (e.g., at least one device of the system of the braking system 208); at least one device of the platform sensor (e.g., at least one device of the system of the platform sensor); one or more devices of the network 112 (e.g., one or more devices of the system of the network 112).In some embodiments, one or more devices of the vehicle 102 (e.g., one or more devices of the system of the vehicle 102), one or more devices of the V2I device 110 (e.g., one or more devices of the system of the V2I device 110), one or more devices of the AV system 114 (e.g., one or more devices of the system of the AV system 114), one or more devices of the queue management system 116 (e.g., one or more devices of the system of the queue management system 116), one or more devices of the V2I system 118 (e.g., one or more devices of the system of the V2I system 118), ), one or more devices of the camera 202a (e.g., one or more devices of the system of the camera 202a), one or more devices of the LiDAR sensor 202b (e.g., one or more devices of the system of the LiDAR sensor 202b), one or more devices of the Radar sensor 202c (e.g., one or more devices of the system of the Radar sensor 202c), one or more devices of the microphone 202d (e.g., one or more devices of the system of the microphone 202d), one or more devices of the communication device 202e (e.g., one or more devices of the system of the communication device 202e), one or more devices of the communication device 202e (e.g., one or more devices of the system of the communication device 202e), one or more devices of the camera 202a (e.g., one or more devices of the system of the camera 202a), one or more devices of the LiDAR sensor 202b (e.g., one or more devices of the system of the LiDAR sensor 202b), one or more devices of the Radar sensor 202c (e.g., one or more devices of the system of the Radar sensor 202c), one or more devices of the microphone 202d (e.g., one or more devices of the system of the communication device 202e), one or more devices of the communication device 202e ... one or more devices of the autonomous vehicle computing 202f (e.g., one or more devices of the system of the autonomous vehicle computing 202f), one or more devices of the safety controller 202g (e.g., one or more devices of the system of the safety controller 202g), one or more devices of the DBW system 202h (e.g., one or more devices of the system of the DBW system 202h), one or more devices of the powertrain control system 204 (e.g., one or more devices of the powertrain control system 204). 04), one or more devices of the steering control system 206 (e.g., one or more devices of the system of the steering control system 206), one or more devices of the braking system 208 (e.g., one or more devices of the system of the braking system 208), one or more devices of the platform sensor (e.g., one or more devices of the system of the platform sensor), and / or one or more devices of the network 112 (e.g., one or more devices of the system of the network 112) include at least one device 300 and / or at least one component of the device 300. For example, Figure 3 As shown, apparatus 300 includes a bus 302 , a processor 304 , a memory 306 , a storage component 308 , an input interface 310 , an output interface 312 , and a communication interface 314 .

[0051] Bus 302 includes components that enable communication between components of device 300. In some embodiments, processor 304 is implemented in hardware, software, or a combination of hardware and software. In some examples, processor 304 includes a processor (e.g., a central processing unit (CPU), a graphics processing unit (GPU), and / or an accelerated processing unit (APU), etc.), a microphone, a digital signal processor (DSP), and / or any processing component that can be programmed to perform at least one function (e.g., a field programmable gate array (FPGA) and / or an application-specific integrated circuit (ASIC), etc.). Memory 306 includes random access memory (RAM), read-only memory (ROM), and / or another type of dynamic and / or static storage device (e.g., flash memory, magnetic memory, and / or optical memory, etc.) that stores data and / or instructions for use by processor 304.

[0052] The storage component 308 stores data and / or software related to the operation and use of the device 300. In some examples, the storage component 308 includes a hard disk (e.g., a magnetic disk, an optical disk, a magneto-optical disk, and / or a solid-state disk, etc.), a compact disk (CD), a digital versatile disk (DVD), a floppy disk, a cassette, a magnetic tape, a CD-ROM, a RAM, a PROM, an EPROM, a FLASH-EPROM, an NV-RAM, and / or another type of computer-readable medium, and a corresponding drive.

[0053] The input interface 310 includes components that permit the device 300 to receive information, such as via user input (e.g., a touch screen display, a keyboard, a keypad, a mouse, buttons, switches, a microphone, and / or a camera, etc.). Additionally or alternatively, in some embodiments, the input interface 310 includes a sensor for sensing information (e.g., a global positioning system (GPS) receiver, an accelerometer, a gyroscope, and / or an actuator, etc.). The output interface 312 includes components for providing output information from the device 300 (e.g., a display, a speaker, and / or one or more light emitting diodes (LEDs), etc.).

[0054] In some embodiments, the communication interface 314 includes a transceiver-like component (e.g., a transceiver and / or a separate receiver and transmitter, etc.) that allows the device 300 to communicate with other devices via a wired connection, a wireless connection, or a combination of a wired connection and a wireless connection. In some examples, the communication interface 314 allows the device 300 to receive information from another device and / or provide information to another device. In some examples, the communication interface 314 includes an Ethernet interface, an optical interface, a coaxial interface, an infrared interface, a radio frequency (RF) interface, a universal serial bus (USB) interface, interface and / or cellular network interface, etc.

[0055] In some embodiments, the device 300 performs one or more processes described herein. The device 300 performs these processes based on the processor 304 executing software instructions stored by a computer-readable medium such as a memory 306 and / or a storage component 308. A computer-readable medium (e.g., a non-transitory computer-readable medium) is defined herein as a non-transitory memory device. A non-transitory memory device includes a storage space located within a single physical storage device or a storage space distributed across multiple physical storage devices.

[0056] In some embodiments, software instructions are read into memory 306 and / or storage component 308 from another computer-readable medium or from another device via communication interface 314. When executed, the software instructions stored in memory 306 and / or storage component 308 cause processor 304 to perform one or more of the processes described herein. Additionally or alternatively, hardwired circuitry may be used in place of or in combination with the software instructions to perform one or more of the processes described herein. Therefore, unless expressly stated otherwise, the embodiments described herein are not limited to any specific combination of hardware circuitry and software.

[0057] Memory 306 and / or storage component 308 include a data store or at least one data structure (e.g., a database, etc.). Device 300 can receive information from, store information in, communicate information to, or search for information stored in the data store or at least one data structure in memory 306 or storage component 308. In some examples, the information includes network data, input data, output data, or any combination thereof.

[0058] In some embodiments, device 300 is configured to execute software instructions stored in memory 306 and / or a memory of another device (e.g., another device that is the same as or similar to device 300). As used herein, the term "module" refers to at least one instruction stored in memory 306 and / or a memory of another device that, when executed by processor 304 and / or a processor of another device (e.g., another device that is the same as or similar to device 300), causes device 300 (e.g., at least one component of device 300) to perform one or more processes described herein. In some embodiments, a module is implemented in software, firmware, and / or hardware.

[0059] supply Figure 3 The number and arrangement of components illustrated are examples. In some embodiments, Figure 3The apparatus 300 may include additional components, fewer components, different components, or components arranged differently than those illustrated. Additionally or alternatively, a collection of components (e.g., one or more components) of the apparatus 300 may perform one or more functions described as being performed by another component or collection of components of the apparatus 300.

[0060] Now refer to Figure 4A , illustrates an example block diagram of an autonomous vehicle computing system 400 (sometimes referred to as an "AV stack"). As illustrated, autonomous vehicle computing system 400 includes a perception system 402 (sometimes referred to as a perception module), a planning system 404 (sometimes referred to as a planning module), a positioning system 406 (sometimes referred to as a positioning module), a control system 408 (sometimes referred to as a control module), and a database 410. In some embodiments, perception system 402, planning system 404, positioning system 406, control system 408, and database 410 are included in and / or implemented within an autonomous navigation system of a vehicle (e.g., autonomous vehicle computing system 202f of vehicle 200). Additionally or alternatively, in some embodiments, perception system 402, planning system 404, positioning system 406, control system 408, and database 410 are included in one or more independent systems (e.g., one or more systems that are the same as or similar to autonomous vehicle computing system 400, etc.). In some examples, perception system 402, planning system 404, positioning system 406, control system 408, and database 410 are included in one or more independent systems located in the vehicle and / or at least one remote system as described herein. In some embodiments, any and / or all of the systems included in autonomous vehicle computing 400 are implemented in software (e.g., software instructions stored in a memory), computer hardware (e.g., via a microprocessor, microcontroller, application specific integrated circuit (ASIC) and / or field programmable gate array (FPGA)), or a combination of computer software and computer hardware. It will also be understood that in some embodiments, autonomous vehicle computing 400 is configured to communicate with a remote system (e.g., an autonomous vehicle system that is the same as or similar to remote AV system 114, a fleet management system 116 that is the same as or similar to fleet management system 116, and / or a V2I system that is the same as or similar to V2I system 118, etc.).

[0061] In some embodiments, perception system 402 receives data associated with at least one physical object in an environment (e.g., data used by perception system 402 to detect at least one physical object) and classifies the at least one physical object. In some examples, perception system 402 receives image data captured by at least one camera (e.g., camera 202a), the image being associated with (e.g., representing) one or more physical objects within the field of view of the at least one camera. In such examples, perception system 402 classifies at least one physical object based on one or more groups of physical objects (e.g., bicycles, vehicles, traffic signs, and / or pedestrians, etc.). In some embodiments, based on perception system 402 classifying the physical object, perception system 402 transmits data associated with the classification of the physical object to planning system 404.

[0062] In some embodiments, planning system 404 receives data associated with a destination and generates data associated with at least one route (e.g., route 106) along which a vehicle (e.g., vehicle 102) can travel toward the destination. In some embodiments, planning system 404 periodically or continuously receives data (e.g., the data associated with the classification of physical objects described above) from perception system 402, and planning system 404 updates at least one trajectory or generates at least one different trajectory based on the data generated by perception system 402. In other words, planning system 404 can perform tasks related to the tactical functions required to operate vehicle 102 in traffic on the road. Tactical efforts involve maneuvering the vehicle in traffic during the journey, including, but not limited to, deciding whether and when to overtake another vehicle, change lanes, or select an appropriate speed, acceleration, deceleration, etc. In some embodiments, planning system 404 receives data associated with the updated position of the vehicle (e.g., vehicle 102) from positioning system 406, and planning system 404 updates at least one trajectory or generates at least one different trajectory based on the data generated by positioning system 406.

[0063] In some embodiments, positioning system 406 receives data associated with (e.g., representing) a location of a vehicle (e.g., vehicle 102) in an area. In some examples, positioning system 406 receives LiDAR data associated with at least one point cloud generated by at least one LiDAR sensor (e.g., LiDAR sensor 202b). In some examples, positioning system 406 receives data associated with at least one point cloud from multiple LiDAR sensors, and positioning system 406 generates a combined point cloud based on the individual point clouds. In these examples, positioning system 406 compares the at least one point cloud or the combined point cloud with a two-dimensional (2D) and / or three-dimensional (3D) map of the area stored in database 410. Then, based on positioning system 406 comparing the at least one point cloud or the combined point cloud with the map, positioning system 406 determines the position of the vehicle in the area. In some embodiments, the map includes a combined point cloud of the area generated prior to navigation of the vehicle. In some embodiments, the map includes, but is not limited to, a high-precision map of roadway geometry, a map describing road network connectivity, a map describing roadway physical properties (such as traffic speed, traffic volume, number of vehicle and bicycle lanes, lane width, lane traffic direction, or type and location of lane markings, or a combination thereof), and a map describing the spatial location of road features (such as crosswalks, traffic signs, or various other types of driving signals). In some embodiments, the map is generated in real time based on data received by the perception system.

[0064] In another example, positioning system 406 receives global navigation satellite system (GNSS) data generated by a global positioning system (GPS) receiver. In some examples, positioning system 406 receives GNSS data associated with the location of the vehicle in the area, and positioning system 406 determines the latitude and longitude of the vehicle in the area. In such an example, positioning system 406 determines the position of the vehicle in the area based on the latitude and longitude of the vehicle. In some embodiments, positioning system 406 generates data associated with the position of the vehicle. In some examples, based on positioning system 406 determining the position of the vehicle, positioning system 406 generates data associated with the position of the vehicle. In such an example, the data associated with the position of the vehicle include data associated with one or more semantic properties corresponding to the position of the vehicle.

[0065] In some embodiments, the control system 408 receives data associated with at least one trajectory from the planning system 404, and the control system 408 controls the operation of the vehicle. In some examples, the control system 408 receives data associated with at least one trajectory from the planning system 404, and the control system 408 controls the operation of the vehicle by generating and transmitting control signals to operate the powertrain control system (e.g., the DBW system 202h and / or the powertrain control system 204), the steering control system (e.g., the steering control system 206), and / or the braking system (e.g., the braking system 208). For example, the control system 408 is configured to perform operational functions such as lateral vehicle motion control or longitudinal vehicle motion control. Lateral vehicle motion control causes the necessary actions to regulate the y-axis component of the vehicle's motion. Longitudinal vehicle motion control causes the necessary actions to regulate the x-axis component of the vehicle's motion. In an example, if the trajectory includes a left turn, the control system 408 transmits a control signal to cause the steering control system 206 to adjust the steering angle of the vehicle 200, thereby causing the vehicle 200 to turn left. Additionally or alternatively, the control system 408 generates and transmits control signals to cause other devices of the vehicle 200 (eg, headlights, turn signals, door locks, and / or windshield wipers, etc.) to change states.

[0066] In some embodiments, the perception system 402, planning system 404, positioning system 406, and / or control system 408 implement at least one machine learning model (e.g., at least one multilayer perceptron (MLP), at least one convolutional neural network (CNN), at least one recurrent neural network (RNN), at least one autoencoder, and / or at least one transformer, etc.). In some examples, the perception system 402, planning system 404, positioning system 406, and / or control system 408, alone or in combination with one or more of the above systems, implement at least one machine learning model. In some examples, the perception system 402, planning system 404, positioning system 406, and / or control system 408 implement at least one machine learning model as part of a pipeline (e.g., a pipeline for identifying one or more objects located in an environment, etc.). Figures 4B to 4D Includes examples of implementations of machine learning models.

[0067] Database 410 stores data transmitted to, received from, and / or updated by perception system 402, planning system 404, positioning system 406, and / or control system 408. In some examples, database 410 includes a storage component for storing data and / or software related to operations and using at least one system of autonomous vehicle computing 400 (e.g., Figure 3In some embodiments, database 410 stores data associated with a 2D and / or 3D map of at least one area. In some examples, database 410 stores data associated with a 2D and / or 3D map of a portion of a city, portions of multiple cities, multiple cities, a county, a state, and / or a country. In such an example, a vehicle (e.g., a vehicle that is the same as or similar to vehicle 102 and / or vehicle 200) may be driven along one or more drivable areas (e.g., a single-lane road, a multi-lane road, a highway, a back road, and / or an off-road road, etc.) and cause at least one LiDAR sensor (e.g., a LiDAR sensor that is the same as or similar to LiDAR sensor 202b) to generate data associated with an image representing objects included in the field of view of the at least one LiDAR sensor.

[0068] In some embodiments, database 410 can be implemented across multiple devices. In some examples, database 410 includes a vehicle (e.g., a vehicle that is the same as or similar to vehicle 102 and / or vehicle 200), an autonomous vehicle system (e.g., an autonomous vehicle system that is the same as or similar to remote AV system 114), a fleet management system (e.g., a vehicle ... Figure 1 The same or similar queue management system as the queue management system 116 of FIG) and / or the V2I system (e.g., Figure 1 The V2I system 118 is the same or similar V2I system) and the like.

[0069] Now refer to Figure 4B , a diagram illustrating an implementation of a machine learning model. More specifically, a diagram illustrating an implementation of a convolutional neural network (CNN) 420. For purposes of illustration, the following description of CNN 420 will be with respect to implementing CNN 420 via perception system 402. However, it will be understood that in some examples, CNN 420 (e.g., one or more components of CNN 420) is implemented by other systems other than or in addition to perception system 402 (such as planning system 404, positioning system 406, and / or control system 408). Although CNN 420 includes certain features as described herein, these features are provided for purposes of illustration and are not intended to limit the present disclosure.

[0070] CNN 420 includes a plurality of convolutional layers including a first convolutional layer 422, a second convolutional layer 424, and a convolutional layer 426. In some embodiments, CNN 420 includes a subsampling layer 428 (sometimes referred to as a pooling layer). In some embodiments, subsampling layer 428 and / or other subsampling layers have a dimension that is smaller than the dimension of the upstream system (i.e., the number of nodes). By means of subsampling layer 428 having a dimension that is smaller than the dimension of the upstream layer, CNN 420 merges the amount of data associated with the initial input and / or output of the upstream layer, thereby reducing the amount of computation required for CNN 420 to perform downstream convolution operations. Additionally or alternatively, by means of subsampling layer 428 being associated with (e.g., configured to perform) at least one subsampling function (as described below with respect to Figure 4C and Figure 4D As described above, CNN 420 incorporates the amount of data associated with the initial input.

[0071] The perception system 402 performs a convolution operation based on the perception system 402 providing respective inputs and / or outputs associated with each of the first convolution layer 422, the second convolution layer 424, and the convolution layer 426 to generate respective outputs. In some examples, the perception system 402 implements the CNN 420 based on the perception system 402 providing data as input to the first convolution layer 422, the second convolution layer 424, and the convolution layer 426. In such examples, the perception system 402 provides data as input to the first convolution layer 422, the second convolution layer 424, and the convolution layer 426 based on receiving data from one or more different systems (e.g., one or more systems of vehicles that are the same as or similar to the vehicle 102, a remote AV system that is the same as or similar to the remote AV system 114, a queue management system that is the same as or similar to the queue management system 116, and / or a V2I system that is the same as or similar to the V2I system 118, etc.). Figure 4C Includes a detailed description of the convolution operation.

[0072] In some embodiments, perception system 402 provides data associated with input (referred to as initial input) to first convolutional layer 422, and perception system 402 uses first convolutional layer 422 to generate data associated with output. In some embodiments, perception system 402 provides the output generated by a convolutional layer as input to a different convolutional layer. For example, perception system 402 provides the output of first convolutional layer 422 as input to subsampling layer 428, second convolutional layer 424, and / or convolutional layer 426. In such an example, first convolutional layer 422 is referred to as an upstream layer, and subsampling layer 428, second convolutional layer 424, and / or convolutional layer 426 are referred to as downstream layers. Similarly, in some embodiments, perception system 402 provides the output of subsampling layer 428 to second convolutional layer 424 and / or convolutional layer 426, and in this example, subsampling layer 428 will be referred to as an upstream layer, and second convolutional layer 424 and / or convolutional layer 426 will be referred to as downstream layers.

[0073] In some embodiments, before the perception system 402 provides input to the CNN 420, the perception system 402 processes the data associated with the input provided to the CNN 420. For example, the perception system 402 processes the data associated with the input provided to the CNN 420 based on the perception system 402 normalizing the sensor data (e.g., image data, LiDAR data, and / or Radar data, etc.).

[0074] In some embodiments, CNN 420 generates an output based on the convolution operations associated with each convolution layer performed by perception system 402. In some examples, CNN 420 generates an output based on the convolution operations associated with each convolution layer and the initial input performed by perception system 402. In some embodiments, perception system 402 generates an output and provides the output to fully connected layer 430. In some examples, perception system 402 provides the output of convolution layer 426 to fully connected layer 430, where fully connected layer 430 includes data associated with multiple feature values referred to as F1, F2, ..., FN. In this example, the output of convolution layer 426 includes data associated with multiple output feature values representing a prediction.

[0075] In some embodiments, perception system 402 identifies a prediction from the plurality of predictions based on perception system 402 identifying the feature value associated with the highest likelihood of being the correct prediction among the plurality of predictions. For example, if fully connected layer 430 includes feature values F1, F2, ..., FN and F1 is the largest feature value, perception system 402 identifies the prediction associated with F1 as the correct prediction among the plurality of predictions. In some embodiments, perception system 402 trains CNN 420 to generate the prediction. In some examples, perception system 402 trains CNN 420 to generate the prediction based on perception system 402 providing training data associated with the prediction to CNN 420.

[0076] Now refer to Figure 4C and Figure 4D , a diagram illustrating an example operation of CNN 440 utilizing perception system 402. In some embodiments, CNN 440 (e.g., one or more components of CNN 440) is coupled to CNN 420 (e.g., one or more components of CNN 420) (see Figure 4B ) are the same or similar.

[0077] At step 450, perception system 402 provides data associated with the image as input to CNN 440 (step 450). For example, as illustrated, perception system 402 provides data associated with the image to CNN 440, where the image is a grayscale image represented as values stored in a two-dimensional (2D) array. In some embodiments, the data associated with the image may include data associated with a color image represented as values stored in a three-dimensional (3D) array. Additionally or alternatively, the data associated with the image may include data associated with an infrared image and / or a radar image, etc.

[0078] At step 455, CNN 440 performs a first convolution function. For example, CNN 440 performs the first convolution function based on CNN 440 providing a value representing an image as input to one or more neurons (not explicitly shown) included in first convolution layer 442. In this example, the value representing the image can correspond to the value of a region representing the image (sometimes referred to as a receptive field). In some embodiments, each neuron is associated with a filter (not explicitly shown). The filter (sometimes referred to as a kernel) can be represented as an array of values corresponding in size to the value provided as input to the neuron. In one example, the filter can be configured to recognize edges (e.g., horizontal lines, vertical lines, and / or straight lines, etc.). In successive convolution layers, the filters associated with the neurons can be configured to successively recognize more complex patterns (e.g., arcs and / or objects, etc.).

[0079] In some embodiments, CNN 440 performs a first convolution function based on CNN 440 multiplying the value of each neuron provided as input to one or more neurons included in first convolutional layer 442 by the value of the filter corresponding to each neuron in the same or more neurons. For example, CNN 440 may multiply the value of each neuron provided as input to one or more neurons included in first convolutional layer 442 by the value of the filter corresponding to each neuron in the one or more neurons to generate a single value or an array of values as output. In some embodiments, the collective output of the neurons of first convolutional layer 442 is referred to as a convolution output. In some embodiments, when each neuron has the same filter, the convolution output is referred to as a feature map.

[0080] In some embodiments, CNN 440 provides the output of each neuron of the first convolutional layer 442 to the neurons of the downstream layer. For clarity, an upstream layer may be a layer that transmits data to a different layer (referred to as a downstream layer). For example, CNN 440 may provide the output of each neuron of the first convolutional layer 442 to the corresponding neurons of the subsampling layer. In an example, CNN 440 provides the output of each neuron of the first convolutional layer 442 to the corresponding neurons of the first subsampling layer 444. In some embodiments, CNN 440 adds a bias value to the aggregate set of all values provided to the neurons of the downstream layer. For example, CNN 440 adds a bias value to the aggregate set of all values provided to the neurons of the first subsampling layer 444. In such an example, CNN 440 determines the final value to be provided to each neuron of the first subsampling layer 444 based on the aggregate set of all values provided to each neuron and the activation function associated with each neuron of the first subsampling layer 444.

[0081] At step 460, CNN 440 performs a first subsampling function. For example, CNN 440 may perform the first subsampling function based on CNN 440 providing the values output by first convolutional layer 442 to corresponding neurons of first subsampling layer 444. In some embodiments, CNN 440 performs the first subsampling function based on an aggregation function. In an example, CNN 440 performs the first subsampling function based on CNN 440 determining the maximum input among the values provided to a given neuron (referred to as a max pooling function). In another example, CNN 440 performs the first subsampling function based on CNN 440 determining the average input among the values provided to a given neuron (referred to as an average pooling function). In some embodiments, CNN 440 generates an output based on CNN 440 providing values to each neuron of first subsampling layer 444, which is sometimes referred to as a subsampled convolution output.

[0082] At step 465, CNN 440 performs a second convolution function. In some embodiments, CNN 440 performs the second convolution function in a manner similar to how CNN 440 performs the first convolution function described above. In some embodiments, CNN 440 performs the second convolution function based on CNN 440 providing the values output by first subsampling layer 444 as input to one or more neurons (not explicitly illustrated) included in second convolution layer 446. In some embodiments, as described above, each neuron of second convolution layer 446 is associated with a filter. As described above, the filter(s) associated with second convolution layer 446 can be configured to recognize more complex patterns than the filters associated with first convolution layer 442.

[0083] In some embodiments, CNN 440 performs a second convolution function based on CNN 440 multiplying the value of each of the one or more neurons included in second convolution layer 446 provided as input by the value of the filter corresponding to each of the one or more neurons. For example, CNN 440 may multiply the value of each of the one or more neurons included in second convolution layer 446 provided as input by the value of the filter corresponding to each of the one or more neurons to generate a single value or an array of values as output.

[0084] In some embodiments, CNN 440 provides the output of each neuron of second convolutional layer 446 to neurons of a downstream layer. For example, CNN 440 may provide the output of each neuron of first convolutional layer 442 to a corresponding neuron of a subsampling layer. In an example, CNN 440 provides the output of each neuron of first convolutional layer 442 to a corresponding neuron of a second subsampling layer 448. In some embodiments, CNN 440 adds a bias value to the aggregate set of all values provided to each neuron of a downstream layer. For example, CNN 440 adds a bias value to the aggregate set of all values provided to each neuron of second subsampling layer 448. In such an example, CNN 440 determines the final value provided to each neuron of second subsampling layer 448 based on the aggregate set of all values provided to each neuron and the activation function associated with each neuron of second subsampling layer 448.

[0085] At step 470, CNN 440 performs a second subsampling function. For example, CNN 440 may perform the second subsampling function based on CNN 440 providing the values output by second convolutional layer 446 to corresponding neurons of second subsampling layer 448. In some embodiments, CNN 440 performs the second subsampling function based on CNN 440 using an aggregation function. In examples, as described above, CNN 440 performs the first subsampling function based on CNN 440 determining the maximum input or average input among the values provided to a given neuron. In some embodiments, CNN 440 generates an output based on CNN 440 providing values to each neuron of second subsampling layer 448.

[0086] At step 475, CNN 440 provides the output of each neuron of second subsampling layer 448 to fully connected layer 449. For example, CNN 440 provides the output of each neuron of second subsampling layer 448 to fully connected layer 449, so that fully connected layer 449 generates an output. In some embodiments, fully connected layer 449 is configured to generate an output associated with a prediction (sometimes referred to as a classification). The prediction may include an indication of the objects included in the image provided as input to CNN 440, including objects and / or sets of objects. In some embodiments, perception system 402 performs one or more operations and / or provides data associated with the prediction to various systems described herein.

[0087] Now refer to Figure 5 , illustrates an example environment 500 in which vehicles including autonomous systems and vehicles not including autonomous systems operate. As illustrated, environment 500 includes vehicle 502, objects 504a-504n, routes 506a, 506b, area 508, computing system 510, network 512, autonomous vehicle (AV) computing 514, queue management system 516, and V2I system 518. Vehicle 502, computing system 510, network 512, autonomous vehicle (AV) computing 514, queue management system 516, and V2I system 518 are interconnected (e.g., establish connections for communication, etc.) via wired connections, wireless connections, or a combination of wired and wireless connections. In some embodiments, objects 504a-504n are interconnected with a vehicle 502, a computing system 510, a network 512, an autonomous vehicle (AV) computing 514, a fleet management system 516, and a vehicle-to-infrastructure (V2I) system 518 via a wired connection, a wireless connection, or a combination of wired and wireless connections.

[0088] Vehicle 502 may include a device (autonomous vehicle) configured to transport goods and / or people on route 506a within area 508. In some embodiments, vehicle 502 is associated with a reference vehicle. Figure 1 The vehicles 102a, ... 102n described and referenced Figure 2 The vehicle 502 may be the same or similar to the vehicle 200 described above. The vehicle 502 may include one or more sensors 503a, 503b (e.g., referring to Figure 2 508 and generates (3D image) data of the area 508. The vehicle 502 may be configured to communicate with a computing system 510 via a network 512 to send the (3D image) data of the area 508 generated by the sensors 503a, 503b to the computing system 510. In some implementations, the vehicle 502 collects the data of the area 508 offline (storing the data in a storage component of the vehicle, such as a hard drive), and after the vehicle completes the data collection session, the vehicle 502 may send the data to the computing system 510. The vehicle 502 may also be configured to communicate with an AV computing system 514, a fleet management system 516, and / or a V2I system 518 via the network 512.

[0089] Objects 504a-504n (individually referred to as object 504 and collectively referred to as objects 504) include, for example, at least one vehicle, at least one pedestrian, at least one cyclist, and / or at least one structure (e.g., a building, a sign, a fire hydrant, etc.). Objects 504a-504n can include known objects (previously identified and classified objects) and unknown objects that do not match any previously identified objects. Each object 504 is stationary (e.g., located at a fixed location over a period of time) or moves (e.g., has a speed and is associated with at least one trajectory). In some embodiments, objects 504 are associated with corresponding locations in area 508.

[0090] Routes 506a, 506b (individually referred to as routes 506 and collectively referred to as routes 506) are each associated with (e.g., specify a series of actions (also referred to as a trajectory) that connects states along which the AV can navigate. Route 506a can be an initial (current) route, and route 506b can be an updated route (e.g., a route modified to avoid object 504a). Each route 506 includes an initial state (e.g., a state corresponding to a first spatiotemporal location and / or speed, etc.), a current state, and ends at a final target state (e.g., a state corresponding to a second spatiotemporal location different from the first spatiotemporal location) or a target zone (e.g., a subspace of acceptable states (e.g., terminal states)). In some embodiments, the current state includes the location of the vehicle 502 at the current time. In some embodiments, routes 506a, 506b include multiple acceptable state sequences (e.g., multiple spatiotemporal location sequences), the multiple state sequences being associated with multiple trajectories (e.g., defining multiple trajectories), which can be updated in real time to avoid objects 504a-504n and successfully reach a final target state or area (e.g., without colliding with any of objects 504a-504n that may be present and / or moving within area 508).

[0091] Area 508 comprises a physical area (e.g., a geographic region) within which vehicle 502 can navigate. In an example, area 508 includes at least one state (e.g., a country, a province, a single state within a plurality of states within a country, etc.), at least a portion of a state, at least one city, at least a portion of a city, etc. In some embodiments, area 508 includes at least one named thoroughfare (referred to herein as a "road"), such as a highway, an interstate, a parkway, a city street, etc. Additionally or alternatively, in some examples, area 508 includes at least one unnamed road, such as a driveway, a section of a parking lot, a section of vacant land and / or undeveloped area, a dirt road, etc. In some embodiments, a road includes at least one lane (e.g., a portion of the road that vehicle 502 can traverse). In an example, the road includes at least one lane associated with (e.g., identified based on) at least one lane marking. Area 508 can be defined to include the area surrounding initial route 506a and potential alternative routes 506b, or can include an area that sensors 503a and 503b of vehicle 502 can detect at any time.

[0092] The computing system 510 is configured to communicate with the vehicle 502 and / or the V2I infrastructure system 518. The computing system 510 includes at least one or more processors 511 configured to process (3D image) data 520 received from the vehicle 502. The processor 511 may be configured to execute (as described in reference to Figures 6A to 6CThe detections (described) are processed 522 to generate an updated dataset 524 including predicted object attributes (location, dimensions, ...) 526a, 526b. The processor 511 can be configured to distinguish known objects from unknown objects and generate embeddings (feature vectors) 528 for detected unknown objects. The processor 511 can generate a classification of objects 530 that includes new categories of objects 532a, 532b corresponding to unknown objects with similar embeddings. The detections can be stored and accumulated to a new dataset along with the respective embeddings. The computing system 510 can communicate the classification of the objects 530 to the network 512 (e.g., reference Figure 1 112) is sent to AV computing 514, queue management system 516 and / or V2I system 518.

[0093] AV computing 514 includes at least one device configured to communicate with vehicle 502, computing system 510, network 512, fleet management system 516, and / or V2I system 518 via network 512. AV computing 514 (see Figure 4A AV computing 514 receives data including a classification of objects 530 in area 508 and data associated with a destination. AV computing 514 generates data associated with an updated route (e.g., route 106) to enable vehicle 502 to safely travel along the route toward the destination and prevent a collision between vehicle 502 and object 504a. In some embodiments, AV computing 514 periodically or continuously receives data (e.g., the data associated with the classification of physical objects described above) from computing system 510, and AV computing 514 updates at least one trajectory or generates at least one different trajectory based on the data generated by AV computing 514. AV computing 514 can share updated route 506b with queue management system 516. Queue management system 516 includes at least one device configured to communicate with vehicle 502 and one or more additional vehicles to synchronize updated route 506 for vehicle 502 with additional planned routes for other vehicles in the vicinity of vehicle 502.

[0094] In some embodiments, V2I system 518 includes at least one device configured to communicate with vehicle 502, V2I device 510, remote AV system 514, and / or fleet management system 516 via network 512. In some examples, V2I system 518 is configured to communicate with V2I device 510 via a connection other than network 512. In some embodiments, V2I system 518 includes a server, a server group, and / or other similar devices. In some embodiments, V2I system 518 is associated with a municipality or a private entity (e.g., a private entity that maintains V2I device 510, etc.).

[0095] supply Figure 5 The number and arrangement of elements illustrated are examples. Figure 5 There may be additional elements, fewer elements, different elements, and / or differently arranged elements than those illustrated. Additionally or alternatively, at least one element of environment 500 may be described as being Figure 5 Additionally or alternatively, at least one set of elements of environment 500 may perform one or more functions described as being performed by at least one different set of elements of environment 500.

[0096] Now refer to 6A to 6D , a flowchart illustrating an example of a process for identifying a new class of objects in the environment of a vehicle. In some embodiments, one or more operations described with respect to processes 600, 620, 640, 660 are performed by (as in reference to Figures 1 to 5 For example, one or more operations described with respect to any of processes 600, 620, 640, 660 are performed by a vehicle (e.g., a vehicle with a vehicle as described). Figure 1 The vehicles 102a, 102b, 102n described or referenced Figure 2 200 ). Additionally or alternatively, in some embodiments, one or more operations described with respect to processes 600 , 620 , 640 , 660 are performed by another device or group of devices (e.g., completely, partially, sequentially, and / or non-sequentially, etc.) separate from or including the autonomous vehicle computing 400.

[0097] Now refer to Figure 6A In the illustrated process 600, at 602, image data is received at a given time from one or more sensors attached to at least one vehicle (e.g., an autonomous vehicle following a set trajectory) within a three-dimensional (3D) physical environment at a geographic location. The image data includes at least one of image data generated by at least one device (e.g., a camera, a 3D sensor, etc.) of the at least one vehicle, RGB (red, green, blue) image data, 3D (LIDAR, RADAR) data, and map data. The physical environment includes a plurality of objects at a set distance from the vehicle at a set time. The vehicle can be configured to generate image data at a set frequency.

[0098] At 604, the received image data is stored to enable processing of the image data at any point in time, including in real time. In some implementations, the data is stored by a storage component included in the vehicle, or may be sent to a remote server that may store and process the data remotely from the vehicle.

[0099] At 606, the image data is used by a detector (a processor of the vehicle or a processor of a remote computing system) to perform open set detection. The detector can perform open set detection analysis to classify objects within the environment, which can be used to update the trajectory of the vehicle. The detector can be trained on a dataset of three-dimensional scans of labels of obstacles or objects with known categories (e.g., known categories such as cars, pedestrians, bicycles, etc.). Training can be performed using a dataset stored by the vehicle, or if detection is performed by a remote computing system (during an offline session), training can correlate multiple detections from different dates and locations. The detector can be configured to predict object attributes including object location, object dimensions, object type, and other object characteristics. In some implementations, after completing open set detection, processing 600 returns to receiving new image data, repeating the collection and processing of image data until a set threshold (e.g., image data of a specific specific volume) is met.

[0100] In some implementations, detection includes continuous (re)training using at least one machine learning model (e.g., at least one multi-layer perceptron (MLP), at least one convolutional neural network (CNN), at least one recurrent neural network (RNN), at least one autoencoder and / or at least one transformer, etc.). In some examples, the detector is trained alone or with a reference Figures 1 to 5 One or more of the above described systems (e.g., reference Figure 5 The computing system 510 described in reference Figures 4A to 4D The perception system 402, planning system 404, positioning system 406, and / or control system 408 described herein may implement at least one machine learning model in combination. In some implementations, the detection implements the at least one machine learning model as part of a pipeline (e.g., a pipeline for identifying one or more objects located in an environment, etc.).

[0101] At 608, the dataset is updated with references to any identified objects of new categories (e.g., previously unknown categories such as tricycles, carts, etc.). At 610, a portion of the updated dataset can be sent to at least one vehicle to adjust (e.g., modify) the trajectory of the vehicle based on the objects identified within the image data, and possibly adjust the speed of the vehicle, to prevent collisions with the identified objects. For example, a list of detected objects in the scene can be sent to at least one vehicle to adjust the trajectory of the vehicle relative to the detected objects, and possibly adjust the speed of the vehicle relative to the detected objects.

[0102] Now refer to Figure 6B In the illustrated process 620 , at 622 , the image data is analyzed to detect known and unknown objects. The number of new classes and unknown obstacles discovered can be good indicators of the complexity of a new scene or city, which can be determined before actually deploying an autonomous vehicle through a new environment. For example, an environment (e.g., a city, town, village, highway) containing a variety and many unknown obstacles may differ from the environment from which the reference dataset was acquired, with respect to what was initially present in the reference dataset. Using open set detection analysis to analyze images of the environment surrounding one or more sensors or cameras (which may be attached to the vehicle) can allow for automatic classification of unknown objects, thereby allowing for safer trajectory determination. Object classes may be unknown for various reasons. For example, some object classes may only be found in specific geographic locations (such as a particular city, state, or country), or unknown object classes may appear relatively infrequently in the environment surrounding the vehicle. Object classes may also be unknown due to the emergence of newly developed technologies or new engineering designs, recent introduction to the environment surrounding the vehicle, and / or due to another reason.

[0103] At 624, embeddings (e.g., embedding vectors or vectors of object features or attributes) are extracted for the unknown objects. Each embedding vector represents various aspects of the corresponding content object at various locations within the area surrounding the vehicle. The embedding may include a semantic description of the identified features (attributes) of the object that may be added to the image data to form a multimodal representation of the image. An embedding may be predicted for each point in the image data. Points in the image data that do not correspond to instances of a known class are designated as unknown objects (potential obstacles). Detected unknown objects (potential obstacles) may be represented by an embedding vector. The embedding vectors for the detected unknown objects may be obtained from geometric analysis, the open set detector itself, or an additional auxiliary neural network.

[0104] At 626, the consistent embeddings of the unknown objects are clustered. The different embeddings can be clustered into consistent clusters based on an algorithm that does not assume the number of clusters, such as density-based spatial clustering of applications with noise (DBSCAN) or by using a Bayesian Gaussian mixture model. Clustering the different embeddings of all detected unknown objects into consistent clusters can be used to infer missing class labels in the training set used to train the open set detector.

[0105] At 628, the cluster of consistent embeddings of the unknown object is saved for future use. At 630, it is determined whether a set threshold number of embeddings in the cluster is met. The set threshold number of embeddings can be selected to ensure processing efficiency and a quality level of the new class identification.

[0106] At 632, new categories are automatically identified based on the embeddings included in the clusters. In some implementations, the newly discovered categories are used to retrain the closed set detector based on existing labels and on the automatically discovered categories. The retraining process allows for the extraction of higher-level semantic information for previously unknown obstacles. Higher-level semantic information is extracted by adding the new obstacles discovered by the system to a reference dataset along with corresponding automatic labels, training the detector based on the new categories, automatically adding the new categories to the reference dataset, and labeling the new categories in the reference dataset. In some implementations, automatic annotation of new categories of objects eliminates the need for expert annotation, which can be particularly resource-intensive in autonomous vehicle applications that continuously collect new images from unfamiliar environments. In some implementations, identifying new categories includes annotating the newly classified objects to assign text labels (e.g., umbrella, cart, building, artwork, etc.) to the newly discovered categories. The classified objects can be automatically annotated with text identifiers, thereby eliminating the typical expert annotation required to determine the labels of the classified objects. In some implementations, automatically classifying objects can include training a neural network to classify objects on a large dataset of objects.

[0107] Automatically classifying objects can help maintain consistency with technological developments, variable engineering designs, and / or can allow for the identification of geographic trends. Thus, the complexity of a particular geographic location can be known before any vehicle is introduced to that location, as at least one geographic trend for that location may already be known and thus be used to account for when determining the vehicle's trajectory.

[0108] Now refer to Figure 6CThe illustrated process 640 generates image data at 642. The image data is sent to the system via the network at 644. For example, image data can be sent by multiple vehicles to a server, which can be configured to perform open set detection analysis more efficiently because the server can analyze more images and / or images from more locations than a single vehicle can provide to identify objects of unknown classes.

[0109] At 646, an updated dataset is received from the system via the network. From 646, process 640 may return to 642 to generate a new image. At 648, an object in the environment is detected. In some implementations, the physical object is detected by a perception system configured to process (image) data associated with at least one object included in the environment.

[0110] At 650, the object is classified using the reference data set. At 652, the trajectory is updated or generated using data associated with the classified object. For example, a trajectory of a vehicle within a physical space can be determined based on the aligned target point cloud. For example, a vehicle (e.g., Figure 1 The vehicle 102 shown in Figure 2 , etc.) can travel to navigate within a physical space (e.g., a city block where street intersections, traffic lights, stop signs, pedestrians, and multiple buildings may be located) such that the vehicle accurately travels from one or more source locations to one or more destination locations while, for example, avoiding collisions with other vehicles, pedestrians, and / or buildings. From 652, process 640 can return to 642 to generate a new image or generate a signal to trigger acquisition of a new image.

[0111] Now refer to Figure 6D The illustrated process 660 generates image data at 662. For example, the image data may be generated by a vehicle configured to perform open set detection analysis using the vehicle-generated image data.

[0112] At 664, the generated image data is stored. At 666, as shown in FIG. Figure 6C As described, open set detection is performed using image data. At 668, as described in reference Figure 6A As described, the reference dataset is updated with any identified new categories of objects. At 670, as described with reference to Figure 6C As described, the trajectory is updated or generated using the updated dataset. From 670, the process 660 may return to 662 to generate a new image.

[0113] Figure 7A flow chart illustrating an example of a process 700 for identifying a new class of objects present in an environment in which a vehicle operates is depicted. Figures 1 to 5 As described, one or more operations described with respect to process 700 may be performed in part or in whole by an autonomous system or device or group of devices. For example, one or more operations described with respect to process 700 may be performed by a vehicle (e.g., a vehicle with a reference to FIG. Figure 1 The vehicles 102a, 102b, 102n described or referenced Figure 2 200) may be performed by perception system 402, planning system 404, and / or control system 408 (e.g., completely, partially, sequentially, and / or non-sequentially, etc.) of autonomous vehicle computing 400 of the vehicle 200 described herein. Additionally or alternatively, in some embodiments, one or more operations described with respect to process 700 may be performed by another device or group of devices (e.g., completely, partially, sequentially, and / or non-sequentially, etc.) separate from or including autonomous vehicle computing 400.

[0114] At 702, a first machine learning model trained to perform open set detection can be applied to identify at least one new class of objects. In some example embodiments, the first machine learning model can be an open set detector implemented using one or more of a multilayer perceptron (MLP), a convolutional neural network (CNN), a recurrent neural network (RNN), an autoencoder, and / or a transformer. The first machine learning model can identify the at least one new class of objects based at least on image data indicating one or more objects present in at least one environment in which one or more vehicles operate. For example, in some cases, the first machine learning model can detect the at least one unknown object in the image data before extracting an embedding for each of the at least one unknown object. The embeddings can then be clustered to form one or more clusters, each cluster having a threshold number of embeddings identified as corresponding to objects of the new class. In some cases, the one or more clusters can be generated by applying a clustering algorithm that does not assume a specific number of clusters, such as, for example, density-based spatial clustering of applications with noise (DBSCAN) and / or a Bayesian Gaussian mixture model.

[0115] At 704, a label can be assigned to the at least one new class of objects. In some example embodiments, the at least one new class of objects identified by the first machine learning model performing open set detection can be annotated with a label identifying the at least one new class of objects. In some cases, the label assigned to the at least one new class of objects can be automatically identified, for example, by applying a separate machine learning model. Alternatively and / or additionally, the label assigned to the at least one new class of objects can be specified by one or more user inputs.

[0116] At 706, a dataset comprising a plurality of objects may be updated to include objects of at least one new category. In some example embodiments, the dataset may be a training set and / or validation set comprising annotated images of objects of previously known categories. Thus, upon identifying at least one new category of object, the dataset may be updated to include image data associated with the at least one new category of object. In some cases, the dataset may be updated to include image data and annotations identifying at least one new category of object depicted in the image data. Where the first machine learning model is trained to predict object attributes based on one or more of the location and / or dimensions of the object, the dataset may be further updated to include at least one object attribute of the at least one new category of object.

[0117] At 708, a second machine learning model can be trained based on at least the updated dataset. In some example embodiments, the second machine learning model can be a closed set detector implemented using one or more of a multilayer perceptron (MLP), a convolutional neural network (CNN), a recurrent neural network (RNN), an autoencoder, and / or a transformer. In some cases, the second machine learning model may have been trained on a dataset that did not include objects of the at least one new category before being updated (or retrained) based on the dataset updated to include objects of the at least one new category. Doing so can improve the performance of the machine learning model, particularly its ability to correctly classify objects of the at least one new category when the vehicle encounters such objects in its environment. In some cases, once trained, the second machine learning model can be applied to identify one or more objects present in the environment in which the vehicle is operating based on at least one or more images of the environment in which the vehicle is operating. Alternatively and / or additionally, the trained second machine learning model can be applied to determine a trajectory for the vehicle based on at least one or more images of the environment in which the vehicle is operating.

[0118] In some cases, the second machine learning model is at least partially deployed at a vehicle (e.g., an autonomous vehicle such as vehicle 102 and / or vehicle 200). For example, the second machine learning model can implement at least a portion of perception system 402 of autonomous vehicle computing 400, in which case the second machine learning model can be trained to recognize objects present in the environment in which the vehicle (e.g., an autonomous vehicle such as vehicle 102 and / or vehicle 200) is operating. Alternatively and / or additionally, the second machine learning model can implement at least a portion of planning system 404 of autonomous vehicle computing 400, in which case the second machine learning model can be trained to determine a trajectory for the vehicle (e.g., an autonomous vehicle such as vehicle 102 and / or vehicle 200). As described above, a trajectory for a vehicle can include a sequence of actions connecting states (e.g., various spatiotemporal locations) along which the vehicle can navigate. In some cases, it will be appreciated that the trajectory of the vehicle may be determined based at least on objects identified as being present in the environment and, in the case of mobile objects, the predicted trajectory of the objects. Additionally, in some cases, the trajectory of the vehicle may also be determined based at least on map data (e.g., one or more two-dimensional and three-dimensional maps) of the environment in which the vehicle is operating.

[0119] In some example embodiments, instead of being deployed at the vehicle (e.g., as part of perception system 402 and / or planning system 404) and / or in addition to being deployed at the vehicle, the second machine learning model can also be deployed at a server (e.g., remote AV system 114) that communicates with the vehicle using a network (e.g., network 112). In those cases, objects identified by the second machine learning model and / or trajectories determined by the second machine learning model can be sent to the vehicle via the network (e.g., network 112).

[0120] According to some non-limiting embodiments or examples, a method is provided, comprising: utilizing at least one processor to perform open set detection using image data indicating images of at least one environment in which at least one vehicle operates, so as to identify at least one new category of object; and utilizing the at least one processor to update a data set comprising multiple categories of objects with the identified at least one new category of object, so that the updated data set can be used to determine a trajectory of the at least one vehicle.

[0121] According to some non-limiting embodiments or examples, a system is provided, comprising: at least one processor and at least one non-transitory storage medium storing instructions, wherein the instructions, when executed by the at least one processor, cause the at least one processor to perform operations comprising: performing open set detection using image data indicating images of at least one environment in which at least one vehicle operates, such that at least one new category of object is identified; and updating a data set comprising multiple categories of objects using the identified at least one new category of object, such that the updated data set can be used to determine the trajectory of the at least one vehicle, such that the at least one new category of object is identified, using the at least one processor.

[0122] According to some non-limiting embodiments or examples, at least one non-transitory computer-readable medium is provided, comprising one or more instructions that, when executed by at least one processor, cause the at least one processor to perform operations comprising: performing open set detection using image data indicating an image of at least one environment in which at least one vehicle operates, using the at least one processor, so as to identify at least one new category of object; and updating a data set comprising multiple categories of objects using the identified at least one new category of object, using the at least one processor, so as to enable the updated data set to be used to determine a trajectory of the at least one vehicle.

[0123] Further non-limiting aspects or embodiments are set forth in the following numbered clauses:

[0124] Item 1: A method comprising: applying, using at least one processor, a first machine learning model trained to: perform open set detection by identifying at least one new category of objects based at least on image data indicating one or more objects present in at least one environment in which one or more vehicles operate; updating, using the at least one processor, a dataset comprising multiple categories of objects to include the at least one new category of objects; and training, using the at least one processor and based at least on the updated dataset, a second machine learning model to determine a trajectory for the vehicle.

[0125] Item 2: The method of Item 1, wherein the first machine learning model further performs the open set detection by at least the following steps: detecting at least one unknown object in the image data using the at least one processor, extracting embeddings of each unknown object in the at least one unknown object using the at least one processor, clustering the embeddings with at least one other embedding consistent with the embeddings in a cluster using the at least one processor, and identifying the cluster as a new category of objects if there is a threshold number of embeddings in the cluster using the at least one processor.

[0126] Clause 3: The method of any of clauses 1 to 2, further comprising: annotating, using the at least one processor, the at least one new category of objects by at least assigning a label to the at least one new category of objects.

[0127] Clause 4: The method of clause 3, wherein the label is determined automatically and / or based on one or more user inputs.

[0128] Clause 5: The method according to any one of clauses 1 to 4 further includes: using the at least one processor to train the second machine learning model based on the data set without the at least one new category of objects; and using the at least one processor to update the trained second machine learning model based on the data set including the at least one new category of objects.

[0129] Clause 6: The method of any one of clauses 1 to 5, wherein the first machine learning model is trained to predict object properties based on one or more of location and dimension.

[0130] Clause 7: The method of clause 6, wherein the dataset is updated to include objects having at least one attribute associated with objects of the at least one new category.

[0131] Clause 8: A method according to any one of clauses 1 to 7, wherein the first machine learning model is an open set detector, and wherein the second machine learning model is a closed set detector.

[0132] Clause 9: A method according to any one of clauses 1 to 8, wherein at least one of the first machine learning model and the second machine learning model is a multilayer perceptron, a convolutional neural network, a recurrent neural network, a transformer and / or an autoencoder.

[0133] Clause 10: A method according to any one of clauses 1 to 9, wherein the second machine learning model is deployed at a server that communicates with the vehicle via a network, and wherein the trajectory for the vehicle is sent to the vehicle via the network.

[0134] Clause 11: The method of any one of clauses 1 to 10, wherein the second machine learning model is deployed at the vehicle to determine a trajectory of the vehicle at the vehicle.

[0135] Clause 12: The method of any one of clauses 1 to 11, further comprising: applying a trained second machine learning model to determine a trajectory for the vehicle based at least on one or more images of the environment in which the vehicle is operating.

[0136] Clause 13: The method of clause 12, wherein the one or more images are generated using at least one of a camera and a microphone at the vehicle.

[0137] Clause 14: The method of any one of clauses 12 to 13, wherein the second machine learning model is further trained to determine the trajectory of the vehicle based on map data associated with the environment in which the vehicle is operating.

[0138] Clause 15: The method of any one of clauses 1 to 14, wherein the plurality of categories of objects included in the dataset include one or more stationary objects and moving objects.

[0139] Clause 16: The method of any one of clauses 1 to 15, wherein the trajectory comprises a sequence of actions navigated by the vehicle to travel from a first space-time location to a second space-time location.

[0140] Clause 17: A system comprising: at least one computer-readable medium storing computer-executable instructions; and at least one processor configured to execute the computer-executable instructions, the execution implementing the method of any one of clauses 1 to 16.

[0141] Clause 18: A non-transitory computer-readable storage medium storing instructions that, when executed by at least one data processor, result in operations comprising the method according to any one of clauses 1 to 16.

[0142] In the previous description, aspects and embodiments of the present disclosure have been described with reference to many specific details, which may vary from implementation to implementation. Therefore, the description and drawings should be regarded as illustrative, not restrictive. The sole and exclusive indication of the scope of the invention, and what the applicants intend to be the scope of the invention, is the literal and equivalent scope of the claims from the present application in the specific form of the claims in the grant announcement, including any subsequent amendments. Any definitions of terms expressly set forth herein for inclusion in such claims should be based on the meaning of such terms as used in the claims. In addition, when the term "also includes" is used in the previous description or the appended claims, the phrase may be followed by additional steps or entities, or sub-steps / sub-entities of the previously described steps or entities.

Claims

1. A method comprising: applying, using at least one processor, a first machine learning model trained to: perform open set detection by at least recognizing at least one new class of objects based at least on image data indicative of one or more objects present in at least one environment in which one or more vehicles operate; updating, using the at least one processor, a data set comprising objects of a plurality of categories to include objects of the at least one new category; as well as A second machine learning model is trained using the at least one processor and based on at least the updated data set to determine a trajectory for the vehicle.

2. The method according to claim 1, wherein The first machine learning model also performs the open set detection by at least: detecting at least one unknown object in the image data using the at least one processor, extracting, using the at least one processor, an embedding for each of the at least one unknown object, clustering the embedding with at least one other embedding consistent with the embedding in a cluster using the at least one processor, and Using the at least one processor, the cluster is identified as a new class of objects if a threshold number of embeddings are present in the cluster.

3. The method according to any one of claims 1 to 2, further comprising: The at least one new category of objects is annotated using the at least one processor at least by assigning a label to the at least one new category of objects.

4. The method according to claim 3, wherein: The label is determined automatically and / or based on one or more user inputs.

5. The method according to any one of claims 1 to 4, further comprising: training, using the at least one processor, the second machine learning model based on a dataset without objects of the at least one new category; as well as The trained second machine learning model is updated using the at least one processor based on a dataset including objects of the at least one new category.

6. The method according to any one of claims 1 to 5, wherein The first machine learning model is trained to predict object attributes based on one or more of location and dimension.

7. The method according to claim 6, wherein: The data set is updated to include at least one object having attributes associated with objects of the at least one new category.

8. The method according to any one of claims 1 to 7, wherein The first machine learning model is an open set detector, and wherein the second machine learning model is a closed set detector.

9. The method according to any one of claims 1 to 8, wherein At least one of the first machine learning model and the second machine learning model is a multilayer perceptron, a convolutional neural network, a recurrent neural network, a transformer and / or an autoencoder.

10. The method according to any one of claims 1 to 9, wherein The second machine learning model is deployed at a server in communication with the vehicle via a network, and wherein the trajectory for the vehicle is sent to the vehicle via the network.

11. The method according to any one of claims 1 to 10, wherein The second machine learning model is deployed at the vehicle to determine a trajectory of the vehicle at the vehicle.

12. The method according to any one of claims 1 to 11, further comprising: The trained second machine learning model is applied to determine a trajectory for the vehicle based at least on one or more images of the environment in which the vehicle is operating.

13. The method according to claim 12, wherein: The one or more images are generated using at least one of a camera and a microphone at the vehicle.

14. The method according to any one of claims 12 to 13, wherein The second machine learning model is also trained to determine a trajectory of the vehicle based on map data associated with the environment in which the vehicle is operating.

15. The method according to any one of claims 1 to 14, wherein The plurality of categories of objects comprising the dataset include one or more stationary objects and moving objects.

16. The method according to any one of claims 1 to 15, wherein The trajectory includes a sequence of actions by which the vehicle is navigated to travel from a first space-time location to a second space-time location.

17. A system comprising: at least one processor; as well as at least one memory storing instructions that, when executed by the at least one processor, result in operations comprising: applying a first machine learning model trained to: perform open set detection by at least recognizing at least one new class of objects based at least on image data indicating one or more objects present in at least one environment in which one or more vehicles operate; updating a data set comprising objects of a plurality of categories to include objects of the at least one new category; as well as A second machine learning model is trained based on at least the updated dataset to determine a trajectory for the vehicle.

18. The system according to claim 17, wherein: The first machine learning model also performs the open set detection by at least: detecting at least one unknown object in the image data, extracting an embedding of each unknown object in the at least one unknown object, clustering the embedding with at least one other embedding consistent with the embedding in a cluster, and A cluster is identified as an object of a new class if a threshold number of embeddings are present in the cluster.

19. The system according to any one of claims 17 to 18, wherein: The operations further include: The at least one new category of objects is annotated at least by assigning a label to the at least one new category of objects.

20. The system of claim 19, wherein: The label is determined automatically and / or based on one or more user inputs.

21. The system according to any one of claims 17 to 20, wherein: The operations further include: training, using the at least one processor, the second machine learning model based on a dataset without objects of the at least one new category; and The trained second machine learning model is updated using the at least one processor based on a dataset including objects of the at least one new category.

22. A system according to any one of claims 17 to 21, wherein The first machine learning model is trained to predict object attributes based on one or more of location and dimension.

23. The system of claim 22, wherein: The data set is updated to include at least one object having attributes associated with objects of the at least one new category.

24. A system according to any one of claims 17 to 23, wherein: The first machine learning model is an open set detector, and wherein the second machine learning model is a closed set detector.

25. The system according to any one of claims 17 to 24, wherein: At least one of the first machine learning model and the second machine learning model is a multilayer perceptron, a convolutional neural network, a recurrent neural network, a transformer and / or an autoencoder.

26. A system according to any one of claims 17 to 25, wherein: The second machine learning model is deployed at a server in communication with the vehicle via a network, and wherein the trajectory for the vehicle is sent to the vehicle via the network.

27. The system according to any one of claims 17 to 26, wherein: The second machine learning model is deployed at the vehicle to determine a trajectory of the vehicle at the vehicle.

28. The system of any one of claims 17 to 27, wherein: The operations further include: The trained second machine learning model is applied to determine a trajectory for the vehicle based at least on one or more images of the environment in which the vehicle is operating.

29. The system of claim 28, wherein: The second machine learning model is also trained to determine a trajectory of the vehicle based on map data associated with the environment in which the vehicle is operating.

30. A non-transitory computer-readable medium storing instructions that, when executed by at least one data processor, result in operations comprising: applying a first machine learning model trained to: perform open set detection by at least recognizing at least one new class of objects based at least on image data indicating one or more objects present in at least one environment in which one or more vehicles operate; updating a data set comprising objects of a plurality of categories to include objects of the at least one new category; as well as A second machine learning model is trained based on at least the updated dataset to determine a trajectory for the vehicle.