Collision avoidance based on entry

By generating a bounding box and calculating vertex ratios to quantify lane obstruction, the method addresses false positives in collision avoidance systems, improving system reliability and effectiveness.

JP2025117562APending Publication Date: 2025-08-12TOYOTA JIDOSHA KK
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
JP2025012257
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Priority Date
2024-01-30
Filing Date
2025-01-28
Publication Date
2025-08-12

AI Technical Summary

Technical Problem

Conventional collision avoidance systems experience false positives due to inaccuracy in determining the relative position of objects, leading to reduced driver confidence and ineffective warnings.

Method used

A method that generates a bounding box to capture the size and position of an object within a lane, calculates a metric based on vertex ratios to quantify lane obstruction, and triggers a collision avoidance response when the metric meets a threshold.

Benefits of technology

Reduces false positives by accurately assessing lane obstruction, enhancing the reliability and effectiveness of collision avoidance systems.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025117562000001_ABST
    Figure 2025117562000001_ABST
Patent Text Reader

Abstract

To relate to collision avoidance based on an entry.SOLUTION: A bounding box may be designed to acquire a size and position of an object within a traffic lane including a left lane line and a right lane line. A metric is calculated based on one or more apices of the bounding box which acquires an extent to which the object enters the lane. The apex may be projected on the lane line, and a distance between the apex and projection is calculated. A ratio is determined based on a distance used for acquiring positioning of the apex with respect to a lane width. The ratio is analyzed and used as a basis of the metric. The metric may be compared with at least one threshold. When the metric satisfies the threshold, a collision avoidance response may be triggered.SELECTED DRAWING: Figure 1
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] Aspects described herein relate to collision avoidance for vehicles. More particularly, aspects relate to identifying obstacles in a traffic lane and triggering countermeasures to avoid or mitigate a collision. [Background technology]

[0002] Collision avoidance systems are designed to prevent collisions between vehicles based on sensor data that monitors the vehicle's surroundings. Radar or other sensors may collect real-time data regarding the proximity of other vehicles, pedestrians, and obstacles. The collected data may be analyzed to assess potential collision risk. If a threat is identified, the collision avoidance system may intervene in various ways, for example, by triggering an alert or initiating corrective action, such as applying the vehicle brakes. Summary of the Invention

[0003] According to one aspect, a method is disclosed that includes generating a bounding box that captures the size and position of an object in a lane comprising a left lane line and a right lane line, calculating a metric that captures the extent to which the object encroaches on the lane based on one or more vertices of the bounding box, determining that the metric meets a threshold, and triggering a collision avoidance response.

[0004] According to another aspect, a method is disclosed that includes generating a bounding box that captures a size and position of an object in a lane comprising a left lane line and a right lane line; projecting each vertex of the bounding box onto the left lane line and the right lane line; determining a distance of each vertex to the left lane line and the right lane line; generating a ratio for each vertex that represents the vertex's distance relationship to the left lane line and the right lane line; identifying a first ratio associated with the vertex having the greatest distance from the left lane line and a second ratio associated with the vertex having the greatest distance from the right lane line; selecting a minimum of the first ratio and the second ratio as an intrusion ratio; determining that the intrusion ratio meets a threshold; and triggering a collision avoidance response.

[0005] Other aspects provide systems associated with the aforementioned methods, non-transitory computer-readable media comprising instructions that, when executed by a processor of the processing system, cause the processing system to perform the methods, and computer program products embodied in a computer-readable storage medium comprising code for performing the aforementioned methods and as further described herein.

[0006] The following description and the related drawings set forth in detail certain illustrative features of one or more aspects of the present disclosure. [Brief explanation of the drawings]

[0007] The embodiments set forth in the drawings are illustrative and exemplary in nature and are not intended to limit the subject matter defined by the claims. The following detailed description of illustrative embodiments can be understood when read in conjunction with the following drawings, in which like structure is designated with like reference numerals and in which:

[0008] [Figure 1] FIG. 1 depicts an example implementation of intrusion-based avoidance according to one or more embodiments shown and described herein. [Figure 2]FIG. 2 illustrates an exemplary intrusion system according to one or more embodiments shown and described herein. [Figure 3] FIG. 3 depicts an example scenario involving lane obstacles and vertex calculations according to one or more embodiments shown and described herein. [Figure 4A] FIG. 4A illustrates an exemplary lane extension according to one or more embodiments shown and described herein. [Figure 4B] FIG. 4B illustrates an exemplary lane extension according to one or more embodiments shown and described herein. [Figure 5] FIG. 5 depicts an example intrusion system operation for a lane obstruction in an intersection according to one or more embodiments shown and described herein. [Figure 6] FIG. 6 is a flow diagram of an exemplary method for collision avoidance according to one or more embodiments shown and described herein. [Figure 7] FIG. 7 is a flow diagram of an exemplary method for determining a metric that describes how an object occludes a lane. [Figure 8A] FIG. 8A illustrates an exemplary intersection with various object intrusions according to one or more embodiments shown and described herein. [Figure 8B] FIG. 8B illustrates an exemplary intersection with various object intrusions according to one or more embodiments shown and described herein. [Figure 8C] FIG. 8C illustrates an exemplary intersection with various object intrusions according to one or more embodiments shown and described herein. [Figure 8D] FIG. 8D illustrates an exemplary intersection with various object intrusions according to one or more embodiments shown and described herein. [Figure 9] FIG. 9 is a block diagram of an exemplary operating environment in which aspects of the subject disclosure may be performed, according to one or more embodiments shown and described herein. DETAILED DESCRIPTION OF THE INVENTION

[0009] Aspects described herein provide apparatus, methods, processing systems, and computer-readable media related to collision avoidance based on measurements of lane intrusion.

[0010] Conventional collision avoidance systems utilize sensors such as radar to determine a vehicle's proximity to another vehicle, pedestrian, or obstacle. However, radar can be inaccurate in determining relative position, especially in dense, complex traffic scenarios. This inaccuracy can result in false positives, which refer to situations where a potential collision threat is identified but not present. In other words, the collision avoidance system may unnecessarily generate warnings or trigger evasive action. False positives can have several adverse effects, including loss of confidence in the system's reliability, leading operators to ignore or turn off the system, and driver inattention, impairing the driver's ability to focus on the road and other important tasks. Furthermore, if false positives occur frequently, the driver may become desensitized to warnings and not respond appropriately to true warnings to avoid a collision, thereby reducing the effectiveness of the collision avoidance system.

[0011] Aspects described herein provide a technical solution to the aforementioned technical problem associated with false positives in collision avoidance systems. The collision avoidance system may determine the extent to which an object obstructs the lane in which a vehicle is traveling. For example, the object may partially or completely obstruct the lane. Furthermore, a small object may obstruct only a portion of the lane, but may be located in the center and obstruct a significant portion of the lane. A metric may be calculated that quantifies how much of the lane is occupied or unoccupied by an object, such as another vehicle or a pedestrian. A check may be performed as to whether the object occupies the lane, and if so, a metric may be calculated. The value of the metric may be compared to a threshold, and the collision avoidance system may be triggered to intervene with a warning, corrective action, or both when the metric meets the threshold. Furthermore, the metric may be one of several factors considered by the collision avoidance system to appropriately trigger intervention.

[0012] Therefore, the aspects described herein provide numerous beneficial technical effects over the prior art and provide technical solutions to the aforementioned technical problems in the art.

[0013] These systems and methods will now be described in more detail below with reference to the drawings, in which like numerals refer to like structure.

[0014] Exemplary Implementations of Intrusion-Based Collision Avoidance 1 depicts a high-level overview of an example implementation 100 of aspects associated with collision avoidance or mitigation. The example implementation 100 includes a vehicle 110, a computing device 112, a sensor 114, a lane 120, a bounding box 122, an intrusion system 140, a map 142, and a collision avoidance system 150.

[0015] Vehicle 110 is a machine designed to transport people or goods from one place to another. An internal combustion engine or an electric motor may power vehicle 110. Types of vehicles include cars, trucks, and motorcycles, among others. In an exemplary embodiment, the vehicle may be, but is not limited to, an autonomous vehicle capable of operating with little or no human input. Vehicle 110 may include a computing device 112 and one or more sensors 114.

[0016] The computing device 112 includes one or more processors configured to execute one or more instructions stored in memory to perform various functions. According to one embodiment, the computing device 112 may correspond to a dedicated electronic control unit (ECU) or engine control module (ECM) for managing and controlling various functions of vehicle operation, such as engine control, transmission control, anti-lock brakes, airbags, stability control, climate control, and driver assistance systems. While a single device is depicted, it should be understood that the vehicle 110 may include multiple electronic control units dedicated to various subsystems. The computing device 112 may receive and utilize input from one or more sensors 114 to affect vehicle performance and overall function. Further details regarding the computing device 112 are presented later herein with reference to FIG. 9 .

[0017] The sensors 114 collect data about the vehicle's surroundings or internal components and provide the data to the computing device 112. Exemplary vehicle sensors 114 include proximity sensors, cameras, radar sensors, LiDAR sensors, ultrasonic sensors, accelerometers, wheel spin sensors, temperature sensors, and a global positioning system (GPS). Collectively, the sensors 114 help enable responses to various conditions to provide an improved driving experience.

[0018] In operation, vehicle 110 may travel on the roadway in lane 120. Lane 120 refers to a marked or designated path on the roadway intended for vehicle movement within a defined space. Lane 120 is often marked by painted or lane markings (e.g., solid, dashed, double, or different colored) on the pavement to help organize and regulate traffic flow. Various types of lanes exist, including transit lanes, turning lanes, and bus lanes. According to one embodiment, lane 120 may correspond to traffic lanes on a road used to control the general flow of traffic by predictably guiding drivers.

[0019] Collision avoidance system 150 is technology designed to help prevent or mitigate a collision between a vehicle and an object, such as another vehicle or a pedestrian. Collision avoidance system 150 may be embodied as software, hardware, or a combination of software and hardware and executed by computing device 112. According to one embodiment, collision avoidance system 150 may be executed by a dedicated electronic control unit and, optionally, may be integrated into or part of an advanced driver assistance system. Collision avoidance system 150 may detect an object, provide a visual or audio warning to alert the driver, and automatically apply vehicle brakes. For example, collision avoidance system 150 may detect the presence of an object in lane 120 and automatically apply the brakes to avoid or limit a severe collision. However, conventional collision avoidance systems lack precision or accuracy and may experience significant false positives.

[0020] Intrusion system 140 is configured to quantify the degree to which an object does or does not occupy lane 120. Stated differently, intrusion system 140 may determine how much of lane 120 is obstructed by an object or is available unobstructed. As shown, intrusion system 140 may be a subsystem or component of collision avoidance system 150. Alternatively, intrusion system 140 may be a separate system or component that may interact with collision avoidance system 150.

[0021] In one example, intrusion system 140 may generate a bounding box 122 capturing the size and position of an object detected in lane 120 based on sensor data from sensors 114 on vehicle 110, other vehicles, a third party (e.g., a traffic camera), or a combination thereof. The object may be another vehicle, a pedestrian, or other obstacle detected by at least one sensor 114, such as a camera or radar sensor. Lane 120 may be determined based on reference to map 142, data obtained from one or more sensors 114, or both. For example, the vehicle's location may be determined by a global positioning system (GPS), and map 142 may be referenced to determine the lane 120 in which vehicle 110 is traveling. Additionally, camera data may be analyzed to confirm or further identify a lane among multiple lanes in which the vehicle is traveling. According to one embodiment, a collision avoidance system may determine the lane or generate bounding box 122, and intrusion system 140 may receive such information from collision avoidance system 150.

[0022] After the bounding box 122 is determined, the bounding box 122 may be used to calculate the degree to which an object or obstacle occupies the lane 120. Each vertex of the bounding box 122 may be analyzed to determine its distance from the left and right of the lane 120. More specifically, the vertices may be projected onto the left lane line and the right lane line. In one example, a ratio may be determined that captures the extent to which the vertex encroaches into the lane from the left, right, or both. The vertex ratio may then be used to calculate a metric, such as an intrusion metric, that quantifies the extent to which the lane is occupied or unoccupied by the object.

[0023] Alone or in combination with collision avoidance system 150, intrusion system 140 may use the calculated metric as the basis for intervention alone or in combination with other factors. For example, the metric may be compared to a threshold and used to trigger a visual or audible alert, or intervention to apply brakes or perform intrusive steering. In one example, the metric may be used as an additional factor considered by collision avoidance system 150 to improve the performance of collision avoidance system 150 by at least reducing false positives.

[0024] Exemplary Implementations of the Intrusion System 2 shows a block diagram of an exemplary implementation of intrusion system 140 briefly described in FIG. 1. In the depicted example, intrusion system 140 includes bounding component 210, vertex component 220, metric component 230, operational threshold component 240, and lane boundary extension component 250. Bounding component 210, vertex component 220, metric component 230, operational threshold component 240, and lane boundary extension component 250 may be implemented by at least one processor connected to at least one memory that stores instructions that, when executed by the at least one processor, cause the processor to perform the functions of each component when executed. As a result, a computing device may be configured to be a dedicated device or appliance that implements the functions of intrusion system 140. Furthermore, all or part of intrusion system 140 may be distributed across computing devices or made accessible through a network service.

[0025] The bounding component 210 is configured to generate a bounding box 122 that encapsulates an object or obstacle, such as a vehicle or a pedestrian. The bounding box 122 may be generated based on analysis of local vehicle sensor data, external sensor data, or both, including camera images or video. For example, the shape, size, and orientation of an object may be determined through image processing of images provided by a vehicle-mounted camera and a traffic camera or other sensor. In one example, object detection may be employed by the bounding component 210, which employs computer vision and image processing techniques to detect instances of particular objects, such as vehicles or humans, in digital images and video. Once an object is detected, the bounding component 210 may determine the size and orientation of a box that encompasses the object. For example, one or more imaging depth cameras capable of capturing depth measurements may be employed. While the term “box” is used herein for clarity, any polygon (e.g., a geometric object with any number of sides and vertices) may be employed to generate the bounding polygon.

[0026] The vertex component 220 is configured to analyze the vertices of the bounding box or polygon. More specifically, the vertex component 220 is configured to calculate the distance from the left and right sides of the lane for each vertex of the bounding box 122. The vertices may be projected onto the lane lines in a straight line that is perpendicular or substantially perpendicular to the lane lines. The difference between the original vertex and the projected vertex may be a distance determined based on, for example, a Euclidean distance calculation between the points. According to one embodiment, the vertex component 220 may generate a ratio for each vertex, for example, a right-to-left ratio, a left-to-right ratio, or both.

[0027] 3 , an exemplary scenario 300 is depicted for clarity and ease of understanding. As shown, the exemplary scenario 300 includes a vehicle 110 traveling upward within a lane 120. Additionally, the exemplary scenario 300 depicts an object or obstacle within the roadway encapsulated by a bounding box 122. For example, the bounding box 122 may represent another vehicle entering or exiting a driveway. The bounding box 122 has four vertices: an upper left "A," a lower left "B," an upper right "C," and a lower right "D." The upper left vertex "A" and the lower left vertex "B" lie within the lane, while the upper right vertex "C" and the lower right vertex "D" lie outside of the lane 120. First, the vertex component 220 may process vertex A by projecting the vertex onto a point on the left lane line and onto a point on the right lane line and determining, based on a distance calculation, that the left-to-right ratio is 0.7 or 70% and the right-to-left ratio is 0.3 or 30%. Next, vertex "B" may be projected onto the left and right lines. The vertex component 220 may also determine, based on a distance calculation, that the left-to-right ratio is 0.6 or 60% and the right-to-left ratio is 0.4 or 40%. Because vertices "C" and "D" are outside of lane 120, the projection may be relative to the right lane line. As a result, for both vertices "C" and "D," the left-to-right ratio may be 1.0 or 100%, and the right-to-left ratio may be 0.0 or 0%.

[0028] 2 , metric component 230 is configured to determine a metric, such as an intrusion metric, based on input from vertex component 220. In one embodiment, the metric may correspond to how much an object or obstacle intrudes into the lane as a percentage of the total lane width. In this example, metric component 230 may analyze ratios associated with vertices to generate an intrusion ratio as the metric. For example, the intrusion ratio of an object may be the minimum of the intrusion from the left lane line to the rightmost point and the intrusion from the right lane line to the leftmost point. The intrusion from the left lane line to the rightmost point may correspond to the maximum left-to-right ratio. The intrusion from the right lane line to the leftmost point may correspond to the right-to-left ratio. In one example, the determination may ignore vertices that are outside the lane.

[0029] In the example scenario 300 of FIG. 3 , intrusion from the left lane line to the rightmost point corresponds to 0.7, and intrusion from the right lane line to the leftmost point corresponds to 0.4. The metric component 230 may select a minimum value of 0.4, or 40% as a percentage, as the metric. In this example, the metric captures how much the object encroaches into the lane 120 relative to the total lane width. Alternatively, the metric may correspond to how much available space remains given the object's encroachment within the lane. In this example, the minimum value of 0.4 may be subtracted from 1.0 to return 0.6 or 60% as the metric. In other words, the object encroaches 40% of the lane width, while 60% of the lane width remains open or unoccupied.

[0030] The action threshold component 240 is configured to initiate or trigger an action in response to the metric and one or more predetermined thresholds corresponding to the one or more actions. Exemplary actions include a driver alert or warning, or intervention to apply brakes or perform invasive steering. For example, if the metric indicates that less than 90 percent of the lane width is available due to an obstacle, a warning may be generated and presented. Additionally or alternatively, if the metric indicates that half or less than half of the lane is available, automatic braking may be activated. As another example, if the metric indicates that more than 90% of the lane width is available, invasive steering may be performed to maneuver around an obstacle in the lane.

[0031] The lane boundary extension component 250 is configured to extend the length of lane lines that are considered in various situations. Some situations include road intersections that include lanes traveling through the intersection. In one example, the extended length can be a predetermined value.

[0032] Turning attention to FIGS. 4A-4B, two intersection scenarios are depicted. In FIG. 4A, an intersection lane 410 is shown with a bounding box 122 representing an object or obstacle in its lower right portion. In this situation, the lower left vertex may be projected to the lower right of the intersection lane 410 when processed by the vertex component 220 of FIG. 2. The projection may be inaccurate and adversely affect generated metrics such as the intrusion ratio. To address this issue, the lane boundary extension component 250 may extend the lane lines a predetermined distance beyond the intersection. FIG. 4B shows the extended lane lines. As depicted, the projection of the lower left vertex of the bounding box 122 may be relative to the extended lane line and perpendicular to the lane line. In this way, errors in metric calculations may be avoided.

[0033] 5 illustrates an example operation of the intrusion system 140 for an object in an intersection. At numeral 1, an intersection lane 410 is depicted with a bounding box 122 and a vehicle 110 traveling upward toward the intersection. At numeral 2, a lane boundary extension component 250 extends the lane lines. At numeral 3, a vertex component 220 processes the vertices of the bounding box 122 by projecting the vertices onto the lane lines and calculating one or more ratios associated with each vertex. At numeral 4, a metric component 230 generates a metric based on the output of the vertex component 220. As shown, intrusion from the left to the rightmost point is identified as approximately 80%, and intrusion from the right to the leftmost point is approximately 40%. The minimum of the two values may be selected as 40% and returned as a metric representing how much the object is intruding into or occupying the lane width. Alternatively, the 40% minimum value can be subtracted from 100% to return 60% as the metric representing the available lane width space not occupied by objects.

[0034] Exemplary Methods for Intrusion-Based Collision Avoidance 6, an illustrative flow diagram depicts an exemplary method for collision avoidance or mitigation 600. Method 600 may be performed by collision avoidance system 150 of FIG.

[0035] Method 600 begins at block 610 by identifying an object or obstacle in a lane. The object may be identified based on data from one or more sensors. The sensors may correspond to a camera, a light detection and ranging (LiDAR) system, radar, or a combination thereof. Additionally, machine learning and computer vision techniques may be utilized to analyze the data collected by the sensors to identify objects such as other vehicles, pedestrians, and bicyclists.

[0036] Method 600 continues at block 620 by determining a metric that describes how an object occludes a lane. An object may partially or completely occlude a lane. Furthermore, an object may be small and occlude only a portion of the lane, but may be centrally located and occlude a significant portion of the lane. According to one embodiment, the metric may capture available space in terms of lane width, taking into account the presence, size, and position of objects within the lane. In this manner, the metric may quantify how an object occludes a lane. Further details regarding metric determination are provided in the following flow diagram of FIG. 7.

[0037] Next, method 600 proceeds to block 630 with a determination as to whether the metric meets one or more thresholds. The one or more thresholds may be predetermined. The metric value may be compared to one or more thresholds to determine whether the threshold is met or not. For example, the threshold may quantify that the object occupies more than 90% of the lane. The metric value may be compared to the threshold to determine whether the threshold is met. If the threshold is met, method 600 may continue to block 640. If the threshold is not met, method 600 may end.

[0038] Method 600 may proceed to block 640 when the threshold is met. At block 640, method 600 triggers an intervention. The intervention may be in the form of a driver warning or alert, or corrective action such as applying the vehicle brakes or performing invasive steering, among other things. Different thresholds may be specified for different forms of intervention or combinations. For example, thresholds may be specified associated with driver warning, automatic application of the vehicle brakes, or both, while a different threshold may be associated with invasive steering.

[0039] It should be noted that FIG. 6 is merely one example of a method, and that other methods including fewer, additional, or alternative steps are possible consistent with this disclosure.

[0040] 7 depicts an illustrative flow diagram of an example method 700 for determining a metric that describes how an object occludes a lane. The method 600 may be performed by the intrusion system 140 of FIGS. 1 and 2, which includes the bounding component 210, the vertex component 220, the metric component 230, and the lane boundary extension component 250.

[0041] Method 700 begins at block 710 with identifying the traffic lane in which the vehicle is currently traveling. According to one embodiment, a global positioning system associated with the vehicle may be employed to receive coordinates that provide a precise geographic location. The coordinates may be analyzed to identify the traffic lane, particularly with reference to a digital map that identifies traffic lanes and intersections. Additionally or alternatively, sensor data, such as images or video, may be analyzed to determine a particular traffic lane among many of the roadways, for example, based on an analysis of lane lines painted on the roadway.

[0042] The method 700 continues at block 720 with extending the lane boundary lines. When a vehicle is entering an intersection, the lane portion through the intersection alone may not provide enough data for accurate further processing. Therefore, the lane lines considered may be extended before and after the intersection. For example, the lane lines considered may be 10 meters before and after the intersection.

[0043] The method 700 may proceed to block 730 with determining a bounding box for the object detected to be in the lane in which the vehicle is traveling. The bounding box may be a rectangle, square, or any other polygon that encompasses the object. The bounding box may capture the object's size, shape, and location relative to the lane. The bounding box may be generated by a machine learning model trained to detect objects in images or video. Additional sensor data, for example, from radar, LiDAR, or an imaging depth camera, may also be utilized to refine the bounding box. The bounding box may be specified relative to the center of the object and at least the length and width of the object.

[0044] Method 700 continues at block 740 with determining a ratio for each vertex of the bounding box. Each vertex may be projected onto the left lane line and the right lane line substantially perpendicular thereto. A Euclidean distance calculation may then be performed to determine the distance between two points: between the vertex and the left lane line projection and between the vertex and the right lane line projection. Ratios may be determined based on the distances to quantify the extent to which the object encroaches on the lane as a percentage of the total lane width. More specifically, a left-to-right ratio representing the distance between the left lane line and the vertex may be determined. In one example, bounding box vertices that lie outside the lane need not be considered, or may be assigned a left-to-right ratio of 1.0 and a right-to-left ratio of 0.0 for vertices that lie beyond the right lane line, and vice versa. Additionally, a right-to-left ratio representing the relative distance between the right lane line and the vertex may be determined. According to one embodiment, one of the left-to-right ratio or the right-to-left ratio can be determined, and the other ratio can be determined by subtracting that ratio from 1.0, or from 100 if the ratio is expressed as a percentage. For example, if the left-to-right ratio is 0.6 (or 60%), then the right-to-left ratio is "1.0-0.6", or 0.4 (or 40%).

[0045] The method 700 continues at block 750 with identifying the ratio associated with the right-most vertex. The ratio may be identified by identifying the largest left-to-right ratio among the vertices of the bounding box.

[0046] The method 700 then proceeds to block 760 with identifying the ratio associated with the left-most vertex. The ratio may be determined by identifying the largest right-to-left ratio among the vertices of the bounding box.

[0047] Method 700 continues at block 770 with selecting the minimum of the rightmost ratio and the leftmost ratio as the intrusion ratio. For example, consider an object that is completely contained within the lane (e.g., no portion outside the lane) with a rightmost point ratio of 60% and a leftmost point ratio of 90%. In this scenario, the intrusion ratio is 60%, meaning the object occupies 40% of the lane width and 60% of the lane is available. Method 700 may then end.

[0048] It should be noted that FIG. 7 is merely one example of a method, and that other methods including fewer, additional, or alternative steps are possible consistent with this disclosure.

[0049] Exemplary Penetration Ratio Determination 8A-8D illustrate an example intersection with object intrusion to aid in clarity and understanding of the determination of intrusion ratios. Each figure depicts an intersection 410 with extended lane lines and a particular bounding box 122. FIG. 8A depicts the bounding box 122 for an object that extends beyond the intersection lane lines on both sides. In this scenario, the percentage intrusion ratio is 100%. FIG. 8B shows the bounding box 122 half inside the intersection's right lane line and half outside the intersection's right lane line. Here, the intrusion ratio, as a percentage of the lane width, is 50%. FIG. 8C depicts a bounding box that is smaller than those in FIGS. 8A and 8B but is centered in the middle of the intersection lane lines. The percentage intrusion ratio for this small, centered bounding box 122 is also 50%. 8D depicts a bounding box 122 positioned to the left of the intersection lane lines, extending approximately halfway between the left and right lane lines. The percentage intrusion ratio in this situation is also 50%.

[0050] For simplicity and clarity, bounding boxes are often depicted and described for a single object or obstacle moving from right to left. It should be understood that the metric is independent of the direction of intrusion. Furthermore, the metric may be a composite metric that takes into account multiple objects or obstacles within a lane or intersection.

[0051] Exemplary Processing System for Intrusion-Based Collision Avoidance FIG. 9 depicts an exemplary processing system configured to perform various aspects described herein, including, for example, methods such as those described above with respect to FIGS.

[0052] To provide a context for the presently disclosed subject matter, Figure 9 and the following discussion are intended to provide a brief, general description of a suitable environment in which various aspects of the presently disclosed subject matter may be implemented. The suitable environment is merely an example and is not intended to suggest any limitation as to the scope of use or functionality.

[0053] 9, an exemplary computing device 112 is shown. The computing device 112 includes one or more processors 910, a memory 920, a bus 930, a storage device 940, an input device 950, an output device 960, and a network interface 970. The bus 930 communicatively connects at least the above system components. However, in its simplest form, the computing device 112 may include one or more processors 910 connected to at least one memory 920, which execute various computer-executable operations, instructions, and / or components stored in the memory 920 and retrieved from the storage device 940.

[0054] Bus 930 may be formed of any medium capable of transmitting signals, such as conductive wires, conductive traces, optical waveguides, connectors, or the like. In one embodiment, bus 930 comprises a combination of conductive traces, conductive wires, and connectors that cooperate to enable transmission of electrical data signals to components such as processor 910, memory 920, storage device 940, input devices 950, output devices 960, and network interface 970.

[0055] The processor 910 may be implemented using a general-purpose processor, a microprocessor, a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA) or other programmable logic device, discrete gate or transistor logic, discrete hardware components, or any combination thereof designed to perform the functions described herein. A general-purpose processor may be a microprocessor, but alternatively, the processor may be any processor, controller, microcontroller, or state machine. The processor 910 may also be implemented as a combination of computing devices, such as a combination of a DSP and a microprocessor, multiple microprocessors, a multi-core processor, one or more microprocessors in association with a DSP core, or any other such configuration. In one embodiment, the processor 910 may be a graphics processor unit (GPU) that performs calculations related to digital image processing and computer graphics.

[0056] The computing device 112 may include or otherwise interact with various computer-readable media to facilitate control of the computing device 112 to implement one or more aspects of the subject matter of this disclosure. Computer-readable media may be any available media accessible to the computing device 112, including volatile and nonvolatile media, and removable and non-removable media. Computer-readable media may comprise two separate and mutually exclusive types: storage media and communication media.

[0057] Storage media include volatile and nonvolatile, removable and non-removable media implemented in any method or technology to store information such as computer-readable instructions, data structures, program modules, or other data. Storage media include memory devices (e.g., random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM)), magnetic storage devices (e.g., hard disks, floppy disks, cassettes, tapes), optical disks (e.g., compact disks (CDs), digital versatile disks (DVDs)), and solid-state devices (e.g., solid-state drives (SSDs), flash memory drives (e.g., cards, sticks, key drives)), or any other similar medium that stores desired information accessible by the computing device 112, as opposed to transmitting or communicating. Thus, storage media excludes modulated data signals and those discussed with respect to communication media.

[0058] Communication media embodies computer-readable instructions, data structures, program modules, or other data in a modulated data signal such as a carrier wave or other transmission mechanism and includes any information delivery media. The term "modulated data signal" means a signal that has one or more of its characteristics set or changed in such a manner as to encode information in the signal. By way of example, and not limitation, communication media includes wired media such as a wired network or direct-wired connection, and wireless media such as acoustic, radio frequency (RF), infrared and other wireless media.

[0059] Memory 920 and storage devices 940 are examples of computer-readable storage media. Depending on the configuration and type of computing device, memory 920 may be volatile (e.g., random access memory (RAM)), non-volatile (e.g., read-only memory (ROM), flash memory, ...), or some combination of the two. By way of illustration, a basic input / output system (BIOS), containing the basic routines to transfer information between elements within computing device 112, such as during start-up, may be stored in non-volatile memory. In contrast, volatile memory may act as external cache memory to, among other things, facilitate processing by processor 910.

[0060] Storage device 940 includes removable / non-removable, volatile / non-volatile storage media that stores vast amounts of data for memory 920. For example, storage device 940 may include one or more devices such as, but not limited to, a magnetic or optical disk drive, a floppy disk drive, a flash memory, a solid state drive, or a memory stick.

[0061] The memory 920 and storage devices 940 may include or have stored therein an operating system 980, one or more applications 986, one or more program modules 984, and data 982. The operating system 980 may control and allocate resources of the computing device 112. The applications 986 may include one or both of system and application software and may leverage the management of resources by the operating system 980 through the program modules 984 and data 982 stored in the memory 920 and / or storage devices 940 to perform one or more operations. Thus, the applications 986, according to the logic provided, may transform a general-purpose computer into a special-purpose machine.

[0062] All or a portion of the subject matter of the present disclosure may be implemented using standard programming and / or engineering techniques to generate software, firmware, hardware, or any combination thereof, to control computing device 112 to implement the functions of the present disclosure. By way of example, and not limitation, all or a portion of intrusion system 140 of Figures 1 and 2 may be or form part of application 986 and may include one or more modules 984 and data 982 stored in memory and / or storage device 940, the functionality of which may be realized when executed by one or more processors 910.

[0063] According to one particular embodiment, processor 910 may correspond to a system-on-chip (SOC) or similar architecture that includes or otherwise incorporates both hardware and software on a single integrated circuit substrate. Here, processor 910 may include, among other things, one or more processors and memories similar to processor 910 and memory 920. Traditional processors include minimal hardware and software and rely heavily on external hardware and software. In contrast, SOC implementations of processors are more effective because they incorporate hardware and software that enable certain functions with minimal or no reliance on external hardware and software. For example, intrusion system 140 or functions associated therewith may be incorporated within the hardware in a SOC architecture.

[0064] The input devices 950 and the output devices 960 may be communicatively connected to the computing device 112. By way of example, the input devices 950 may include pointing devices (e.g., mouse, trackball, stylus, pen, touchpad), keyboards, joysticks, microphones, voice user interface systems, cameras, sensors, and global positioning satellite (GPS) receivers and transmitters, among others. By way of example, the output devices 960 may correspond to display devices (e.g., liquid crystal displays (LCD), light emitting diodes (LED), plasma, organic light emitting diode displays (OLED),...), speakers, voice user interface systems, printers, and vibration motors, among others. The input devices 950 and the output devices 960 may be connected to the computing device 112 via wired connections (e.g., buses), wireless connections (e.g., Wi-Fi, Bluetooth), or a combination thereof.

[0065] The computing device 112 may also include a network interface 970 to enable communication with at least a second computing device 902 using a network 990. The network interface 970 may include wired or wireless communication mechanisms to support network communication. The network 990 may correspond to a personal area network (PAN), a local area network (LAN), or a wide area network (WAN), such as the Internet. In one example, the computing device 112 may correspond to a first computing device executing an intrusion system 140 associated with the collision avoidance system 150. The second computing device 902 may correspond to a server that provides maps or external sensor data used by the intrusion system 140.

[0066] According to one particular embodiment, the computing device 112 may correspond to an electronic controller, such as an electronic control unit (ECU), associated with a vehicle, including an autonomous vehicle. The ECU may be specially designed for dedicated real-time control of vehicle functions under extreme conditions (e.g., temperature changes, vibration, electromagnetic interference). In one example, the ECU implements advanced driver assistance systems, including a collision avoidance system 150 and an intrusion system 140. In this example, the ECU may include one or more processors 910 that execute machine-executable code stored in memory 920 to perform the logic described with respect to the intrusion system 140. Additionally, the one or more processors 910 may be communicatively coupled to one or more input devices, such as one or more cameras, via a bus 930.

[0067] The camera may be any device having an array of sensing devices (e.g., pixels) capable of detecting radiation in ultraviolet, visible, or infrared wavelength bands. For example, the camera may be an omnidirectional camera or a panoramic camera. In some embodiments, the camera may be an imaging depth camera such as RGB-D (e.g., an Intel® RealSense™ depth camera) or another device capable of capturing depth measurements in an environment or capable of capturing image data that can be analyzed to determine depth in an environment based on the image data. In some embodiments, one or more optical components, such as a mirror, a fisheye lens, or any other lens type, may be optically coupled to each camera.

[0068] The functional blocks and / or flowchart elements described herein may be converted into machine-readable instructions. By way of non-limiting example, the machine-readable instructions may be written using any programming protocol, such as (i) parsed descriptive text (e.g., Hypertext Markup Language or Extensible Markup Language), (ii) assembly language, (iii) object code generated from source code by a compiler, (iv) source code written using syntax from any suitable programming language for execution by an interpreter, or (v) source code compiled and executed by a runtime compiler. Alternatively, the machine-readable instructions may be written in a hardware description language (HDL), such as logic implemented via a field-programmable gate array (FPGA) configuration or an application-specific integrated circuit (ASIC), or their equivalents. Accordingly, the functions described herein may be implemented in any conventional computer programming language, as pre-programmed hardware elements, or as a combination of hardware and software components.

[0069] Further considerations The foregoing description is provided to enable any person skilled in the art to practice the various embodiments described herein. The examples described herein do not limit the scope, applicability, or embodiments described in the claims. Various modifications to the embodiments will be readily apparent to those skilled in the art, and the general principles defined herein may be applied to other embodiments. For example, changes may be made in the function and arrangement of elements described without departing from the scope of the disclosure. Various examples may omit, substitute, or add various procedures or components as appropriate. For example, described methods may be performed in an order different from that described, and various steps may be added, omitted, or combined. Also, features described with respect to some examples may be combined in some other examples. For example, an apparatus may be implemented or a method may be practiced using any number of the aspects described herein. Additionally, the scope of the disclosure is intended to encompass such apparatuses or methods implemented using other structure, functionality, or structure and functionality in addition to or other than the various aspects of the disclosure described herein. It should be understood that any aspect of the disclosure disclosed herein may be embodied by one or more elements of a claim.

[0070] As used herein, a phrase referring to "at least one of" a list of items refers to any combination of those items, including single elements. As an example, "at least one of a, b, or c" is intended to encompass a, b, c, ab, ac, bc, and abc, as well as any combination of multiple of the same elements (e.g., aa, aaa, aab, aac, abb, acc, bb, bbb, bbc, cc, and ccc, or any other ordering of a, b, and c).

[0071] As used herein, the term "determining" encompasses a wide variety of actions. For example, "determining" can include calculating, computing, processing, deriving, investigating, looking up (e.g., looking up in a table, database, or another data structure), ascertaining, and the like. Also, "determining" can include receiving (e.g., receiving information), accessing (e.g., accessing data in memory), and the like. Also, "determining" can include resolving, selecting, choosing, establishing, and the like.

[0072] The terms "substantially" and "about" may be used herein to express the degree of inherent uncertainty that may result from any quantitative comparison, value, measurement, or other expression. These terms are also used herein to express the degree to which a quantitative expression may vary from the stated standard without resulting in a change in the basic functionality of the subject matter at issue.

[0073] The methods disclosed herein comprise one or more steps or actions that achieve the method. Method steps or actions may be interchanged with one another without departing from the scope of the claims. In other words, unless a specific order of steps or actions is specified, the order or use of specific steps or actions may be modified without departing from the scope of the claims. Furthermore, various actions of the methods described above may be performed by any suitable means capable of performing the corresponding functions. Such means may include various hardware or software components or modules, including, but not limited to, circuits, application-specific integrated circuits (ASICs), or processors. Generally, when actions are illustrated in figures, such actions may have corresponding counterpart means-plus-function components with similar numbering.

[0074] The following claims are not intended to be limited to the embodiments set forth herein, but are to be accorded the full scope consistent with the claim language. Within the claims, reference to an element in the singular is not intended to mean "one and only one," but rather "one or more" unless specifically so stated. The term "a part" refers to one or more unless specifically stated otherwise. Claim elements are not to be construed under the provisions of 35 U.S.C. § 112(f) unless the element is expressly recited using the phrase "means for," or, in the case of a method claim, unless the element is recited using the phrase "step for." All structural and functional equivalents to the elements of the various aspects described throughout this disclosure that are or later become known to those skilled in the art are expressly incorporated herein by reference and are intended to be encompassed by the claims. Furthermore, nothing disclosed herein is intended to be made available to the public, regardless of whether such disclosure is expressly recited in the claims.

Claims

1. generating a bounding box that captures the size and position of the object within the lane comprising the left lane line and the right lane line; calculating a metric that captures the degree to which the object encroaches on the lane based on one or more vertices of the bounding box; determining that the intrusion metric meets a threshold; triggering a collision avoidance response; A method comprising:

2. Calculating the intrusion metric comprises: projecting each vertex of the one or more vertices of the bounding box onto the left lane line and the right lane line; determining the distance of each vertex to the left lane line and the right lane line; generating a ratio for each vertex representing the distance relationship of the vertex to the left lane line and the right lane line; The method of claim 1 further comprising:

3. identifying a first ratio associated with a vertex having a greatest distance from the left lane line; identifying a second ratio associated with the vertex having the greatest distance from the right lane line; selecting the minimum of the first ratio and the second ratio as the intrusion metric; The method of claim 2 further comprising:

4. The method of claim 1 , wherein the bounding box generation captures the object in the lane at an intersection.

5. The method of claim 4 further comprising extending the right lane line and the left lane line a predetermined distance before and after the intersection.

6. The method of claim 1 , further comprising detecting the object within the lane before generating the bounding box.

7. The method of claim 1 , wherein calculating the intrusion metric comprises calculating the intrusion metric that captures available space in the lane.

8. The method of claim 1 , wherein the collision avoidance response includes automatic braking.

9. 1. A system comprising: at least one processor; at least one memory coupled to said at least one processor containing instructions; the instructions, when executed by the at least one processor, cause the system to: generating a bounding box that captures the size and position of the object within the lane comprising the left lane line and the right lane line; calculating a metric capturing the degree to which the object encroaches on the lane based on one or more vertices of the bounding box; determining that the intrusion metric satisfies a threshold; The system triggers a collision avoidance response.

10. The instructions may further direct the system to: projecting each vertex of the one or more vertices of the bounding box onto the left lane line and the right lane line; determining the distance of each vertex to the left lane line and the right lane line; The system of claim 9 , further comprising generating a ratio for each vertex representing the vertex's distance relationship to the left lane line and the right lane line.

11. The instructions may further direct the system to: identifying a first ratio associated with a vertex having a greatest distance from the left lane line; identifying a second ratio associated with the vertex having the greatest distance from the right lane line; The system of claim 10 , further comprising selecting a minimum of the first ratio and the second ratio as the intrusion metric.

12. The system of claim 9 , wherein the bounding box captures the object in the lane at an intersection.

13. The system of claim 12 , wherein the instructions further cause the processor to extend lane lines a predetermined distance before and after the intersection.

14. The system of claim 9 , wherein the instructions further cause the processor to detect the object within the lane before generating the bounding box.

15. The system of claim 9 , wherein the system calculates an intrusion metric, the intrusion metric capturing available space within the lane.

16. The system of claim 9 , wherein the collision avoidance response includes automatic braking.

17. generating a bounding box that captures the size and position of the object within the lane comprising the left lane line and the right lane line; projecting each vertex of the bounding box onto the left lane line and the right lane line; determining the distance of each vertex to the left lane line and the right lane line; generating a ratio for each vertex representing the distance relationship of the vertex to the left lane line and the right lane line; identifying a first ratio associated with a vertex having a greatest distance from the left lane line and a second ratio associated with a vertex having a greatest distance from the right lane line; selecting a minimum of the first ratio and the second ratio as a penetration ratio; determining that the penetration ratio satisfies a threshold; and triggering a collision avoidance response; A method comprising:

18. The method of claim 17 , wherein generating the bounding box further comprises capturing the object in the lane at an intersection.

19. 20. The method of claim 18, further comprising extending lane lines a predetermined distance before and after the intersection.

20. 20. The method of claim 17, wherein triggering a collision avoidance response includes at least one of generating a driver alert, automatic braking, or evasive steering.