Patent Description:
<CIT> shows the preamble of claims <NUM> and <NUM> and discloses a method and system for controlling vehicle lateral lane positioning. A computing device is configured to identify an object in a vicinity of a vehicle on a road; estimate, based on characteristics of the vehicle and respective characteristics of the object, an interval of time during which the vehicle will be laterally adjacent to the object; estimate, based on characteristics of the vehicle, longitudinal positions of the vehicle on the road during the interval of time; determine, based on the respective characteristics of the object, a lateral distance for the vehicle to maintain between the vehicle and the object during the interval of time at the longitudinal positions of the vehicle; and provide instructions to control the vehicle based on the lateral distance; and provide instructions to control the vehicle based on the lateral distance.

<CIT> discloses a system and method of controlling a vehicle. The amount of wear on a component of the vehicle is determined, and, based on the amount of wear and information derived from the environment surrounding the vehicle (e.g., another vehicle in the path of the vehicle or a requirement to stop at a particular location), the vehicle is maneuvered to mitigate further wear on the component.

<CIT> discloses a robotic driving system that enables a vehicle to follow a traffic rule when traveling in a road network includes a database that stores data relating to at least one feature of the road network, a location detector that detects a location of the vehicle relative to the road network, a sensor that senses at least one object in a vicinity of the vehicle, and a processing system that controls the vehicle to autonomously obey at least one traffic rule, or provides a notification to a driver of the vehicle to enable the driver to obey at least one traffic rule, based on the detected location of the vehicle, data retrieved from the database relating to at least one feature of the road network, and data relating to at least one object sensed by the sensor.

Advancements in the field of automotive electronics have extended the functionality of various assistance systems and associated applications. Assistance systems, such as a driving assistance system, are rapidly evolving with respect to their utility as a practical information resource to assist in different traffic conditions.

In certain scenarios, it may be difficult for a driver of a motor vehicle to make an accurate judgment to maintain a safe distance from other vehicles, such as a bicycle. For example, when the driver of the motor vehicle overtakes the bicycle, the driver should maintain a specified, safe distance between the motor vehicle and the bicycle, and/or its rider. In some jurisdictions of the United States of America, failure to maintain the specified, safe distance is a traffic offence with an imposition of a fine. Moreover, the bicycle rider may be intimidated when the motor vehicle overtakes the bicycle at a high speed. Often, the driver has to make an approximate guess to maintain the specified, safe distance. Further, traffic rules to maintain the safe distance and/or a safe speed limit may vary even in different areas of a single country. At times, the driver's guess may not be accurate, which may result in an accident and/or a violation of the specified, safe distance requirement according to the jurisdiction. Thus, an enhanced and preemptive driving assistance may be required to ensure a safe overtake.

Further limitations and disadvantages of conventional and traditional approaches will become apparent to one of skill in the art, through comparison of described systems with some aspects of the present disclosure, as set forth in the remainder of the present application and with reference to the drawings.

A driving assistance system and a corresponding driving assistance method according to an aspect of the present disclosure are defined in the independent claims.

These and other features and advantages of the present disclosure may be appreciated from a review of the following detailed description of the present disclosure, along with the accompanying figures in which like reference numerals refer to like parts throughout.

The following described implementations may be found in the disclosed system and method to provide driving assistance to safely overtake a vehicle. Exemplary aspects of the disclosure may comprise a method that may detect a second vehicle in front of a first vehicle. A first position associated with the first vehicle and a second position associated with the detected second vehicle may be determined. Such determination may occur at a first time instance. It may be determined whether a lateral distance between the determined first position and the determined second position is below a first pre-defined threshold distance. A first alert may be generated when the determined lateral distance is below the first pre-defined threshold distance.

In accordance with an embodiment, the first alert may be generated when the determined lateral distance is below the first pre-defined threshold distance and above another pre-defined threshold distance. A crash alert may be generated when the determined lateral distance is below another pre-defined threshold distance. The first vehicle may be a motor vehicle. The detected second vehicle may be a bicycle, a motorcycle, an electric personal assistive mobility device (EPAMD), a person riding a horse, a person driving an animal drawn vehicle, a pedestrian, a vehicle propelled by human power, or other non-motorized vehicle. An image-capturing unit, a radio wave-based object detection device, a laser-based object detection device, and/or a wireless communication device, may be utilized for the detection of the second vehicle.

In accordance with an embodiment, the first time instance may correspond to a time instance when the first vehicle is predicted to pass the detected second vehicle. It may be determined whether a relative speed between the first vehicle and the detected second vehicle at the first time instance is above a pre-defined threshold speed. In accordance with an embodiment, the first pre-defined threshold distance may be dynamically updated based on a geo-location of the first vehicle. In accordance with an embodiment, the first pre-defined threshold distance may be dynamically updated based on the determined relative speed and/or the geo-location of the first vehicle.

In accordance with an embodiment, the first alert may be generated when the determined relative speed is above the pre-defined threshold speed. The generated first alert may indicate that the first vehicle cannot safely pass the detected second vehicle along the first predictive path. The first alert may be generated when the determined lateral distance is below the first pre-defined threshold distance or the determined relative speed is above the pre-defined threshold speed. The generated first alert may indicate violation of a law, an ordinance, and/or a regulation. The generated first alert may comprise visual information, haptic information, and/or audio information. In accordance with an embodiment, display of the generated first alert in the first vehicle may be controlled. The display may be controlled by use of a heads-up display (HUD), an augmented reality (AR)-HUD, a driver information console (DIC), a see-through display, or a smart-glass display.

In accordance with an embodiment, the first position may be determined along a first predictive path associated with the first vehicle. A second position may be determined along a second predictive path associated with the detected second vehicle. First sensor data may be received to determine the first predictive path. The first sensor data may correspond to the first vehicle. A second sensor data may be received for the determination of the second predictive path. The second sensor data may correspond to the detected second vehicle. In accordance with an embodiment, the second sensor data may be received from a communication device associated with the second vehicle.

In accordance with an embodiment, the first sensor data may comprise a steering angle, a yaw rate, a geographical location, and/or speed of the first vehicle. The second sensor data may comprise a relative displacement, the relative speed, and/or a detected angle between the first vehicle and the detected second vehicle. The first sensor data may be received from a sensing system used in the first vehicle. The second sensor data may be received from a communication device associated with the second vehicle or an object detection device of the sensing system.

In accordance with an embodiment, a second alert may be generated that may indicate that the first vehicle can safely pass the detected second vehicle along the first predictive path. The second alert may be generated when the determined lateral distance is above the first pre-defined threshold distance and the determined relative speed is below the pre-defined threshold speed.

In accordance with the invention, a third vehicle is detected in an adjacent lane. The adjacent lane corresponds to oncoming traffic, with respect to a direction of movement of the first vehicle. A third position associated with the detected third vehicle is determined along a third predictive path associated with the third vehicle in the adjacent lane. The third position is determined at a second time instance when the first vehicle is predicted to overtake the second vehicle and pass the third vehicle.

In accordance with an embodiment, it may be determined whether a distance between the determined third position and the determined first position is above a second pre-defined threshold distance. A third alert may be generated that may indicate that the first vehicle can safely pass the detected second vehicle along the first predictive path, within a first time period. The third alert may be generated when the determined lateral distance is above the first pre-defined threshold distance, the determined relative speed is below the pre-defined threshold speed, and the determined distance is above the second pre-defined threshold distance. The first time period is determined based on the determined distance, the determined lateral distance, the first pre-defined threshold distance, the second pre-defined threshold distance, the pre-defined threshold speed, and/or the determined relative speed.

In accordance with an embodiment, a fourth alert may be generated that indicates the first vehicle cannot safely pass the detected second vehicle along the first predictive path within the first time period. The fourth alert may be generated when the determined lateral distance is below the first pre-defined threshold distance, the determined relative speed is above the pre-defined threshold speed, or the determined distance is below the second pre-defined threshold distance.

In accordance with an embodiment, a request signal may be communicated to a communication device associated with the second vehicle. The request signal may indicate an intention to overtake the second vehicle. An acknowledgement signal may be received from the communication device associated with the second vehicle in response to the communicated request signal. The request signal and the acknowledgement signal may be communicated via a wireless communication channel or a dedicated short-range communication (DSRC) channel.

<FIG> is a block diagram that illustrates a system configuration to provide driving assistance to safely overtake a vehicle, in accordance with an embodiment of the disclosure. With reference to <FIG>, there is shown an exemplary system configuration <NUM>. The system configuration <NUM> may include an image-capturing unit <NUM>, an electronic control unit (ECU) <NUM>, and one or more vehicles, such as a first vehicle <NUM> and a second vehicle <NUM>. There is further shown a driver <NUM> of the first vehicle <NUM> and a first pre-defined threshold distance <NUM>. In accordance with an embodiment, the system configuration <NUM> may further include a communication device <NUM> and a wireless communication network <NUM>.

The image-capturing unit <NUM> may be installed at the front side of the first vehicle <NUM>. The image-capturing unit <NUM> may be operable to capture a view, such as a plurality of images, in front of the first vehicle <NUM>, and provide the captured data to the ECU <NUM> that may be used to detect the second vehicle <NUM>.

The ECU <NUM> may be provided in the first vehicle <NUM>. The ECU <NUM> may be associated with the driver <NUM> of the first vehicle <NUM>. In accordance with an embodiment, the ECU <NUM> may be communicatively coupled to the communication device <NUM>, associated with the second vehicle <NUM>, via the wireless communication network <NUM>.

The ECU <NUM> may comprise suitable logic, circuitry, interfaces, and/or code that may be configured to detect one or more vehicles, such as the second vehicle <NUM>, in front of the first vehicle <NUM>. The ECU <NUM> may be installed at the first vehicle <NUM>. The ECU <NUM> may be configured to generate one or more alerts to assist the driver <NUM> to safely overtake one or more vehicles, such as the detected second vehicle <NUM>. The ECU <NUM> may be configured to access sensor data from one or more vehicle sensors of a sensing system, and/or other vehicle data associated with the first vehicle <NUM>. The sensor data may be accessed by the ECU <NUM>, via an in-vehicle network, such as a vehicle area network (VAN) and/or in-vehicle data bus, such as a controller area network (CAN) bus. In accordance with an embodiment, the ECU <NUM> may be configured to communicate with external devices (such as the communication device <NUM>), other communication devices, and/or a cloud server (not shown), via the wireless communication network <NUM>.

The first vehicle <NUM> may comprise the ECU <NUM>, which may be configured to detect oncoming traffic with respect to a direction of travel of the first vehicle <NUM>. The first vehicle <NUM> may be a motorized vehicle. Examples of the first vehicle <NUM> may include, but are not limited to, a car, a hybrid vehicle, and/or a vehicle that uses one or more distinct renewable or non-renewable power sources. Examples of the renewable or non-renewable power sources may include fossil fuel, electric propulsion, hydrogen fuel, solar-power, and/or other forms of alternative energy.

The second vehicle <NUM> may be a non-motorized vehicle. The second vehicle <NUM> may be different from the first vehicle <NUM>. In accordance with an embodiment, the communication device <NUM> may be associated with the second vehicle <NUM>. Examples of second vehicle <NUM> may include, but are not limited to, a pedal cycle, such as a bicycle, an electric personal assistive mobility device (EPAMD), such as a Segway-like scooter, or a vehicle propelled by human power, and/or other non-motorized vehicle. Notwithstanding, the disclosure may not be so limited, and a pedestrian, a person riding a horse, a person driving an animal-drawn vehicle, may also be considered in place of the second vehicle <NUM>, without deviating from the scope of the disclosure.

The communication device <NUM> may comprise suitable logic, circuitry, interfaces, and/or code that may be operable to communicate with the first vehicle <NUM>. The communication device <NUM> may comprise one or more sensors, such as a geospatial position detection sensor, a movement detection sensor, and/or a speed sensor of the communication device <NUM>. The communication device <NUM> may be configured to communicate sensor data associated with the second vehicle <NUM>, to the first vehicle <NUM>. Examples of communication device <NUM> may include, but are not limited to, a mobile device, a wearable device worn by a user of the second vehicle <NUM>, such as a smart watch or a smart-glass, and/or a wireless communication device removably coupled to the second vehicle <NUM>. In instances when the communication device <NUM> is coupled to the second vehicle <NUM>, other sensor data, such as vehicle type, rate of change of speed and/or orientation of wheels, may be further communicated to the first vehicle <NUM>, via the wireless communication network <NUM>.

The wireless communication network <NUM> may include a medium through which the first vehicle <NUM> may communicate with the communication device <NUM> and/or one or more other motor vehicles, such as a third vehicle (not shown). Examples of the wireless communication network <NUM> may include, but are not limited to, a dedicated short-range communication (DSRC) network, a mobile ad-hoc network (MANET), a vehicular ad-hoc network (VANET), Intelligent vehicular ad-hoc network (InVANET), Internet based mobile ad-hoc networks (IMANET), a wireless sensor network (WSN), a wireless mesh network (WMN), the Internet, a cellular network, such as a long-term evolution (LTE) network, a cloud network, a wireless fidelity (Wi-Fi) network, and/or a wireless local area network (WLAN). Various devices in the system configuration <NUM> may be operable to connect to the wireless communication network <NUM>, in accordance with various wireless communication protocols. Examples of such wireless communication protocols may include, but are not limited to, IEEE <NUM>, <NUM>. 11p, <NUM>, <NUM>, <NUM>, Wi-MAX, wireless access in vehicular environments (WAVE), cellular communication protocols, transmission control protocol and internet Protocol (TCP/IP), user datagram protocol (UDP), hypertext transfer protocol (HTTP), long-term evolution (LTE), file transfer protocol (FTP), ZigBee, enhanced data rates for GSM evolution (EDGE), infrared (IR), and/or Bluetooth (BT) communication protocols.

In operation, the ECU <NUM> may be configured to detect the second vehicle <NUM> in front of the first vehicle <NUM>. The second vehicle <NUM> may be detected by use of the image-capturing unit <NUM>. The ECU <NUM> may be configured to receive first sensor data related to the first vehicle <NUM>. The received first sensor data may comprise at least a steering angle, a yaw rate, and/or a speed value of the first vehicle <NUM>.

In instances when the communication device <NUM> is provided or associated with the detected second vehicle <NUM>, the ECU <NUM> may be configured to communicate a request signal to the communication device <NUM>, via the wireless communication network <NUM>. The request signal may be communicated to indicate an intention to overtake the second vehicle <NUM>. The ECU <NUM> may be configured to receive an acknowledgement signal from the communication device <NUM> associated with the second vehicle <NUM>, in response to the communicated request signal. The request signal and the acknowledgement signal may be communicated via a wireless communication channel, such as the wireless communication network <NUM>. In such an instance, the ECU <NUM> may be configured to receive the second sensor data from the communication device <NUM>.

In instances when the communication device <NUM> is not provided, the ECU <NUM> may be configured to receive the second sensor data by use of one or more sensors, such as the image-capturing unit <NUM> and/or a radio wave-based object detection device. The one or more sensors may be installed at the first vehicle <NUM>. The second sensor data may be related to the detected second vehicle <NUM>. The second sensor data may be a relative displacement, a relative speed value, and/or a detected angle between the first vehicle <NUM> and the detected second vehicle <NUM>.

In accordance with an embodiment, the ECU <NUM> may be configured to determine a first position associated with the first vehicle <NUM>. The determination of the first position may occur along a first predictive path associated with the first vehicle <NUM>. The ECU <NUM> may be configured to utilize the received first sensor data for the determination of the first predictive path.

In accordance with an embodiment, the ECU <NUM> may be configured to determine a second position associated with the detected second vehicle <NUM>. The second position may correspond to the position of the detected second vehicle <NUM>. In accordance with an embodiment, the determination of the second position may occur along a second predictive path associated with the detected second vehicle <NUM>. The ECU <NUM> may be configured to utilize the received second sensor data for the determination of the second predictive path. Such determination of the first position and the second position may occur at a first time instance.

In accordance with an embodiment, the ECU <NUM> may be configured to determine whether a lateral distance between the determined first position and the determined second position is below the first pre-defined threshold distance <NUM>. In accordance with an embodiment, the ECU <NUM> may be configured to determine whether a relative speed between the first vehicle <NUM> and the detected second vehicle <NUM> at the first time instance is above a pre-defined threshold speed.

The ECU <NUM> may be configured to generate a first alert when the determined lateral distance is below the first pre-defined threshold distance <NUM>. In accordance with an embodiment, the ECU <NUM> may be configured to generate the first alert when the determined relative speed is above the pre-defined threshold speed.

In instances when the determined lateral distance is below the first pre-defined threshold distance and the determined relative speed is above the pre-defined threshold speed, the ECU <NUM> may be configured to generate the first alert. In such instances, the first alert may indicate that the first vehicle <NUM> cannot safely pass the detected second vehicle <NUM> along the first predictive path. The generated first alert may be visual information, haptic information, and/or audio information.

In accordance with an embodiment, the ECU <NUM> may be configured to generate a second alert. The second alert may indicate that the first vehicle <NUM> can safely pass the detected second vehicle <NUM> along the first predictive path. The second alert may be generated when the determined lateral distance is above the first pre-defined threshold distance <NUM> and the determined relative speed is below the pre-defined threshold speed.

In accordance with an embodiment, the ECU <NUM> may be configured to detect a third vehicle in an adjacent lane. The adjacent lane may correspond to oncoming traffic, with respect to a direction of movement of the first vehicle <NUM>. The ECU <NUM> may be configured to determine a third position associated with the detected third vehicle. Such determination may occur at a second time instance along a third predictive path associated with the third vehicle in the adjacent lane. The second time instance may correspond to a time instance when the first vehicle is predicted to pass the third vehicle.

In accordance with an embodiment, the ECU <NUM> may be configured to determine whether a distance between the determined third position and the determined first position is above a second pre-defined threshold distance. The ECU <NUM> may be configured to generate a third alert. The third alert may indicate that the first vehicle <NUM> can safely pass the detected second vehicle <NUM> along the first predictive path within a first time period. The first time period may correspond to a certain time period available with the driver <NUM> of the first vehicle <NUM> to pass the detected second vehicle <NUM> along the first predictive path. Such time period may be displayed at a display screen of the first vehicle <NUM>. The first time period may be determined based on the known lateral distance, the first pre-defined threshold distance <NUM>, the determined relative speed, the pre-defined threshold speed, the determined distance, and/or the second pre-defined threshold distance. The third alert may be generated when the determined lateral distance is above the first pre-defined threshold distance <NUM>, the determined relative speed is below the pre-defined threshold speed, and/or the determined distance is above the second pre-defined threshold distance.

In accordance with an embodiment, the ECU <NUM> may be configured to generate a fourth alert. The fourth alert may indicate that the first vehicle <NUM> cannot safely pass the detected second vehicle <NUM> along the first predictive path within the first time period. The fourth alert may be generated when the determined lateral distance is below the first pre-defined threshold distance <NUM>, the determined relative speed is above the pre-defined threshold speed, and/or the determined distance is below the second pre-defined threshold distance.

In accordance with an embodiment, the ECU <NUM> may be configured to control the display of the generated alerts, such as the first alert, the second alert, the third alert, or the fourth alert, at the first vehicle <NUM>. The generated alerts may indicate violation of a law, an ordinance, and/or a traffic regulation. The alerts may be controlled based on the type of display used, such as a head-up display (HUD) or a head-up display with an augmented reality system (AR-HUD), and/or according to type of traffic scenarios.

<FIG> is a block diagram that illustrates various exemplary components or systems of a vehicle, in accordance with an embodiment of the disclosure. <FIG> is explained in conjunction with elements from <FIG>. With reference to <FIG>, there is shown the first vehicle <NUM>. The first vehicle <NUM> may comprise the ECU <NUM> that may include a microprocessor <NUM> and a memory <NUM>. The first vehicle <NUM> may further comprise an audio interface <NUM> and a display <NUM> communicatively coupled to the ECU <NUM>. The display <NUM> may be associated with one or more user interfaces, such as a user interface (UI) 208a. The first vehicle <NUM> may further comprise a body control module <NUM>, a sensing system <NUM>, and a powertrain control system <NUM>. The sensing system <NUM> may include an object detection device 212a, a steering angle sensor 212b and the image-capturing unit <NUM> (<FIG>). The powertrain control system <NUM> may include a steering system <NUM> and a braking system <NUM>. The first vehicle <NUM> may further comprise a vehicle power system <NUM>, a battery <NUM>, a wireless communication system <NUM>, and an in-vehicle network <NUM>.

The various components or systems may be communicatively coupled via the in-vehicle network <NUM>, such as a vehicle area network (VAN), and/or an in-vehicle data bus. The microprocessor <NUM> may be communicatively coupled to the sensing system <NUM>, the wireless communication system <NUM>, the audio interface <NUM>, and the display <NUM>. The microprocessor <NUM> may also be operatively connected with the body control module <NUM>, the powertrain control system <NUM>, the steering system <NUM>, and the braking system <NUM>. The wireless communication system <NUM> may be configured to communicate with one or more external devices, such as the communication device <NUM>, via the wireless communication network <NUM> under the control of the microprocessor <NUM>. A person ordinary skilled in the art will understand that the first vehicle <NUM> may also include other suitable components or systems, in addition to the components or systems which are illustrated herein to describe and explain the function and operation of the present disclosure.

The microprocessor <NUM> may comprise suitable logic, circuitry, interfaces, and/or code that may be configured to execute a set of instructions stored in the memory <NUM>. The microprocessor <NUM> may be configured to determine a first position associated with the first vehicle <NUM> and a second position associated with the detected second vehicle <NUM>. The microprocessor <NUM> may be configured to generate one or more alerts that may indicate whether it is safe or unsafe to pass the second vehicle <NUM>. Examples of the microprocessor <NUM> may be an X86-based processor, a Reduced Instruction Set Computing (RISC) processor, an Application-Specific Integrated Circuit (ASIC) processor, a Complex Instruction Set Computing (CISC) processor, a microcontroller, a central processing unit (CPU), a graphics processing unit (GPU), a state machine, and/or other processors or circuits.

The memory <NUM> may comprise suitable logic, circuitry, and/or interfaces that may be configured to store a machine code and/or a set of instructions with at least one code section executable by the microprocessor <NUM>. The memory <NUM> may store one or more speech-generation algorithms, audio data that correspond to various alert sounds or buzzer sounds, and/or other data. Examples of implementation of the memory <NUM> may include, but are not limited to, Electrically Erasable Programmable Read-Only Memory (EEPROM), Random Access Memory (RAM), Read Only Memory (ROM), Hard Disk Drive (HDD), Flash memory, a Secure Digital (SD) card, Solid-State Drive (SSD), and/or CPU cache memory.

The audio interface <NUM> may be connected to a speaker, a chime, a buzzer, or other device that may be operable to generate a sound. The audio interface <NUM> may also be connected to a microphone or other device to receive a voice input from an occupant, such as the driver <NUM>, of the first vehicle <NUM>. The audio interface <NUM> may also be communicatively coupled to the microprocessor <NUM>. The audio interface <NUM> may be a part of an in-vehicle infotainment (IVI) system or head unit of the first vehicle <NUM>.

The display <NUM> may be configured to provide output to the driver <NUM>. In accordance with an embodiment, the display <NUM> may be a touch screen display that may receive an input from the driver <NUM>. Examples of the display <NUM> may include, but are not limited to, a heads-up display (HUD) or a head-up display with an augmented reality system (AR-HUD), a driver information console (DIC), a display screen of an infotainment unit or a head unit (HU), a see-through display, a projection-based display, a smart-glass display, and/or an electro-chromic display. The AR-HUD may be a combiner-based AR-HUD. The display <NUM> may be a transparent or a semi-transparent display screen. The display <NUM> may generate a two-dimensional (2D) or a three-dimensional (3D) graphical view of the generated alerts and/or the determined predictive paths, such as the first predictive path and the second predictive path. The graphical views may be generated under the control of the microprocessor <NUM>.

The UI 208a may be rendered at the display <NUM>, such as the HUD or the AR-HUD, under the control of the microprocessor <NUM>. The display of the generated alerts, such as a predictive crash alert, the first alert, the second alert, the third alert, and the fourth alert, may be controlled at the first vehicle <NUM>, via one or more user interfaces. Examples of the one or more user interfaces may be configured in accordance to the display <NUM>, such as the UI 208a, as shown in <FIG>, <FIG>, <FIG>, <FIG>, <FIG>, and <FIG>. The UI 208a may be configured for display on the AR-HUD. Similarly, another example of the UI 208a may be a UI 208b as shown in <FIG>, <FIG>, <FIG>, and <FIG>. The UI 208b may be configured for display on the HUD.

The body control module <NUM> may refer to another electronic control unit that comprises suitable logic, circuitry, interfaces, and/or code that may be configured to control various electronic components or systems of the first vehicle <NUM>. The body control module <NUM> may be configured to receive a command from the microprocessor <NUM>. The body control module <NUM> may relay the command to other suitable vehicle systems or components for access control of the first vehicle <NUM>.

The sensing system <NUM> may comprise the object detection device 212a, the steering angle sensor 212b, the image-capturing unit <NUM>, and/or one or more other vehicle sensors provided in the first vehicle <NUM>. The object detection device 212a may be a radio detection and ranging (RADAR) device or a laser-based object detection sensor, such as a light detection and ranging (LIDAR) device. The sensing system <NUM> may be operatively connected to the microprocessor <NUM> to provide input signals to the microprocessor <NUM>. For example, the sensing system <NUM> may be used to sense or detect the first sensor data, such as a direction of travel, geospatial position, steering angle, yaw rate, speed, and/or rate of change of speed of the first vehicle <NUM>. The first sensor data may be sensed or detected by use of one or more vehicle sensors of the sensing system <NUM>, such as a yaw rate sensor, a vehicle speed sensor, odometric sensors, the steering angle sensor 212b, a vehicle travel direction detection sensor, a magnetometer, and a global positioning system (GPS). The sensor data associated with the detection of the second vehicle <NUM> may be referred to as the second sensor data. In accordance with an embodiment, the object detection device 212a and/or the image-capturing unit <NUM> may be used for detection and determination of the second sensor data under the control of the microprocessor <NUM>. The second sensor data may be a relative displacement, a relative speed, and/or an angle detected between the first vehicle <NUM> and the detected second vehicle <NUM>.

The powertrain control system <NUM> may refer to an onboard computer of the first vehicle <NUM> that controls operations of an engine and a transmission system of the first vehicle <NUM>. The powertrain control system <NUM> may control ignition, fuel injection, emission systems, and/or operations of a transmission system (when provided) and the braking system <NUM>.

The steering system <NUM> may be configured to receive one or more commands from the microprocessor <NUM>. In accordance with an embodiment, the steering system <NUM> may automatically control the steering of the first vehicle <NUM>. Examples of the steering system <NUM> may include, but are not limited to, a power assisted steering system, a vacuum/hydraulic based steering system, an electro-hydraulic power assisted system (EHPAS), and/or a "steer-by-wire" system, known in the art.

The braking system <NUM> may be used to stop or slow down the first vehicle <NUM> by application of frictional forces. The braking system <NUM> may be configured to receive a command from the powertrain control system <NUM> under the control of the microprocessor <NUM>, when the first vehicle <NUM> is in an autonomous mode or a semi-autonomous mode. In accordance with an embodiment, the braking system <NUM> may be configured to receive a command from the body control module <NUM> and/or the microprocessor <NUM> when the microprocessor <NUM> preemptively detects a steep curvature, an obstacle, or other road hazards. The braking system <NUM> may be configured to receive one or more commands from the microprocessor <NUM> when the microprocessor <NUM> generates one or more alerts subsequent to detection of the second vehicle <NUM>. The braking system <NUM> may be associated with a brake pedal and/or a gas pedal.

The vehicle power system <NUM> may regulate the charging and the power output of the battery to various electric circuits and the loads of the first vehicle <NUM>, as described above. When the first vehicle <NUM> is a hybrid vehicle or an autonomous vehicle, the vehicle power system <NUM> may provide the required voltage for all of the components and enable the first vehicle <NUM> to utilize the battery <NUM> power for a sufficient amount of time. In accordance with an embodiment, the vehicle power system <NUM> may correspond to power electronics, and may include a microcontroller that may be communicatively coupled (shown by dotted lines) to the in-vehicle network <NUM>. In such an embodiment, the microcontroller may receive command from the powertrain control system <NUM> under the control of the microprocessor <NUM>.

The battery <NUM> may be source of electric power for one or more electric circuits or loads (not shown). For example, the loads may include, but are not limited to various lights, such as headlights and interior cabin lights, electrically powered adjustable components, such as vehicle seats, mirrors, windows or the like, and/or other in-vehicle infotainment system, such as radio, speakers, electronic navigation system, electrically controlled, powered and/or assisted steering, such as the steering system <NUM>. The battery <NUM> may be a rechargeable battery. The battery <NUM> may be a source of electrical power to the ECU <NUM> (shown by dashed lines), the one or more sensors of the sensing system <NUM>, and/or one or hardware units, such as the display <NUM>, of the in-vehicle infotainment system. The battery <NUM> may be a source of electrical power to start an engine of the first vehicle <NUM> by selectively providing electric power to an ignition system (not shown) of the first vehicle <NUM>.

The wireless communication system <NUM> may comprise suitable logic, circuitry, interfaces, and/or code that may be configured to communicate with one or more external devices, such as the communication device <NUM>, and one or more cloud servers, via the wireless communication network <NUM>. The wireless communication system <NUM> may include, but is not limited to, an antenna, a telematics unit, a radio frequency (RF) transceiver, one or more amplifiers, one or more oscillators, a digital signal processor, a coder-decoder (CODEC) chipset, and/or a subscriber identity module (SIM) card. The wireless communication system <NUM> may wirelessly communicate by use of the wireless communication network <NUM> (as described in <FIG>).

The in-vehicle network <NUM> may include a medium through which the various control units, components, and/or systems of the first vehicle <NUM>, such as the ECU <NUM>, body control module <NUM>, the sensing system <NUM>, the powertrain control system <NUM>, the wireless communication system <NUM>, the audio interface <NUM>, and the display <NUM>, may communicate with each other. In accordance with an embodiment, in-vehicle communication of audio/video data for multimedia components may occur by use of Media Oriented Systems Transport (MOST) multimedia network protocol of the in-vehicle network <NUM>. The MOST-based network may be a separate network from the controller area network (CAN). The MOST-based network may use a plastic optical fiber (POF). In accordance with an embodiment, the MOST-based network, the CAN, and other in-vehicle networks may co-exist in a vehicle, such as the first vehicle <NUM>. The in-vehicle network <NUM> may facilitate access control and/or communication between the microprocessor <NUM> (and the ECU <NUM>) and other ECUs, such as a telematics control unit (TCU) of the first vehicle <NUM>. Various devices or components in the first vehicle <NUM> may be configured to connect to the in-vehicle network <NUM>, in accordance with various wired and wireless communication protocols. Examples of the wired and wireless communication protocols for the in-vehicle network <NUM> may include, but are not limited to, a vehicle area network (VAN), a CAN bus, Domestic Digital Bus (D2B), Time-Triggered Protocol (TTP), FlexRay, IEEE <NUM>, Carrier Sense Multiple Access With Collision Detection (CSMA/CD) based data communication protocol, Inter-Integrated Circuit (I<NUM>C), Inter Equipment Bus (IEBus), Society of Automotive Engineers (SAE) J1708, SAE J1939, International Organization for Standardization (ISO) <NUM>, ISO <NUM>, Media Oriented Systems Transport (MOST), MOST25, MOST50, MOST150, Plastic optical fiber (POF), Power-line communication (PLC), Serial Peripheral Interface (SPI) bus, and/or Local Interconnect Network (LIN).

In operation, the microprocessor <NUM> may be configured to detect the second vehicle <NUM> which may be in front of the first vehicle <NUM>. The microprocessor <NUM> may be configured to utilize the object detection device 212a and/or the image-capturing unit <NUM> for the detection of the second vehicle <NUM>. The microprocessor <NUM> may be configured to receive sensor data, such as the first sensor data and the second sensor data, from the sensing system <NUM>.

In accordance with an embodiment, the first sensor data may correspond to the first vehicle <NUM>. The first sensor data may comprise a steering angle, a yaw rate, speed of the first vehicle <NUM>, and/or the like. The first sensor data may be received from the one or more sensors of the sensing system <NUM> of the first vehicle <NUM>, via the in-vehicle network <NUM>. For example, the microprocessor <NUM> may extract the first sensor data from the CAN bus.

In accordance with an embodiment, the second sensor data may correspond to the detected second vehicle <NUM>. For example, the second sensor data may be received from the image-capturing unit <NUM> installed at the first vehicle <NUM>. The image-capturing unit <NUM> may provide a field-of-view (FOV) in front of the first vehicle <NUM>. The FOV may correspond to a video or a plurality of images, which may be stored in the memory of the ECU <NUM>. In accordance with an embodiment, such storage may be a temporary storage that processes an image buffer for the detection of the second vehicle <NUM>. In accordance with an embodiment, both the RADAR and the image-capturing unit <NUM> may be utilized to detect and/or determine the second sensor data associated with the second vehicle <NUM>. The second sensor data may comprise values that correspond to the relative displacement, the relative speed, and/or the angle detected between the first vehicle <NUM> and the detected second vehicle <NUM>. In accordance with an embodiment, when the communication device <NUM> is associated with the second vehicle <NUM>, the second sensor data may be received directly from the communication device <NUM>. For example, the communication device <NUM>, such as a smart watch or a smart-glass, may be worn by the rider of the second vehicle <NUM>, such as a bicycle. Thus, the position and the movement information of the communication device <NUM> may be representative of the position and speed of the bicycle. Such information that corresponds to the second sensor data may be communicated to the wireless communication system <NUM>, via the wireless communication network <NUM>.

In accordance with an embodiment, the microprocessor <NUM> may be configured to determine the first predictive path based on the received first sensor data. In accordance with an embodiment, the first predictive path may be continuously updated based on changed values of the received first sensor data. The microprocessor <NUM> may be configured to determine a first position associated with the first vehicle <NUM>. The determination of the first position may occur along the first predictive path associated with the first vehicle <NUM>.

In accordance with an embodiment, the microprocessor <NUM> may be configured to determine a second position associated with the detected second vehicle <NUM>. In accordance with an embodiment, as the second vehicle <NUM> is continuously detected until overtake occurs, the second position associated with the second vehicle <NUM> and/or the first vehicle <NUM> may be continuously updated at various time instances, such as every <NUM> milliseconds (ms). The second position may correspond to the position of the second vehicle <NUM> at various time instances, such as a first time instance. In accordance with an embodiment, the determination of the second position may occur along a second predictive path associated with the detected second vehicle <NUM>. The microprocessor <NUM> may be configured to utilize the received second sensor data for the determination of the second predictive path. The determination of the first position and the second position may occur at the first time instance. The first time instance may correspond to time when the first vehicle <NUM> is predicted to pass the detected second vehicle <NUM>.

In accordance with an embodiment, the microprocessor <NUM> may be configured to determine whether a lateral distance between the determined first position and the determined second position is below the first pre-defined threshold distance <NUM>. The first pre-defined threshold distance <NUM> may correspond to a pre-specified safe distance. The first pre-defined threshold distance <NUM> may be preset by a user, such as the driver <NUM>. Thus, the ECU <NUM> may be effectively utilized in different jurisdictions with different requirements of safe speed and safe distance to avoid traffic violation.

In accordance with an embodiment, the microprocessor <NUM> may be configured to utilize one or more pre-defined constants, for the determination of the lateral distance between the determined first position and the determined second position. The utilization of the one or more pre-defined constants may be based on one or more criteria. The one or more criteria may include a position of installation of the sensors, such as the RADAR and/or the image-capturing unit <NUM>, vehicle type, and/or size of the vehicle body of first vehicle <NUM> and/or the vehicle body (not shown) of the second vehicle <NUM>. The utilization of the one or more pre-defined constants may ensure that the determined lateral distance is a precise calculation between side edges of two vehicles, such as the first vehicle <NUM> and the second vehicle <NUM> (shown in <FIG>). For example, a first length constant associated with the first vehicle <NUM> may be "<NUM> feet" when the RADAR is installed "<NUM> feet" away from a first side edge of the vehicle body of the first vehicle <NUM>. A second length constant associated with the second vehicle <NUM> may be "<NUM> feet" when the second vehicle <NUM> is detected to be a bicycle. Accordingly, at the time of determination of the lateral distance between the determined first position and the determined second position, the first length constant and the second length constant may be utilized. Thus, the lateral distance may be determined as "<NUM> feet", which may be the effective lateral distance after the deduction of values of the first length constant and the second length constant. The determined lateral distance may correspond to the lateral distance between a first side edge of the first vehicle <NUM> and a second side edge of the second vehicle <NUM>. The first side edge and the second side edge may correspond to the edges that face each other at the time of overtake. The association between the vehicle types and the one or more pre-defined constants may be stored at the ECU <NUM>. A different constant may be utilized for a different type of vehicle, such as a pre-defined length constant, "<NUM> feet", which may be used to ascertain an outer edge of the bicycle. Similarly, another pre-defined length constant, "<NUM> feet", may be used to ascertain an outer edge of the EPAMD. In an instance when a plurality of bicycles are detected as moving together, the lateral distance may be determined with respect to the bicycle that may be the nearest to the first vehicle <NUM> at the time of overtake.

In accordance with an embodiment, the microprocessor <NUM> may be configured to dynamically update the first pre-defined threshold distance <NUM> based on geo-location of the first vehicle <NUM>. For example, the user may preset the first pre-defined threshold distance <NUM> to "<NUM> feet". In an example, the first vehicle <NUM> may often need to cross interstate borders, such as from New York to Pennsylvania. The traffic regulations in Pennsylvania may require a vehicle to maintain a safe distance of "<NUM> feet" (instead of "<NUM> feet") between the first vehicle <NUM> and the second vehicle <NUM> during overtake. It may be difficult for the user to remember different requirements in different jurisdictions. In another example, the microprocessor <NUM> may be configured to dynamically reset or update the first pre-defined threshold distance <NUM> to "<NUM> feet" from the previously set "<NUM> feet". Such auto-update may occur when the geo-location of the first vehicle <NUM> is detected to be in Pennsylvania.

In accordance with an embodiment, the microprocessor <NUM> may be configured to determine whether a relative speed between the first vehicle <NUM> and the detected second vehicle <NUM> at the first time instance is above a pre-defined threshold speed. In accordance with an embodiment, the microprocessor <NUM> may be configured to dynamically update the first pre-defined threshold distance <NUM>, based on the determined relative speed, in addition to the geo-location of the first vehicle <NUM>. For example, in certain jurisdictions, such as New Hampshire, the requirement to maintain the specified safe distance, such as "<NUM> feet", during overtakes varies based on the speed of the overtaking vehicle, such as the first vehicle <NUM>. One additional foot of clearance (above "<NUM> feet") may be required for every <NUM> miles per hour (MPH) above <NUM> MPH. The microprocessor <NUM> may be configured to dynamically update the first pre-defined threshold distance <NUM> to "<NUM> feet" from the previously set three feet. Such an update may occur when it is difficult to decelerate the first vehicle <NUM>, and the determined speed is <NUM> MPH for the detected geo-location, such as New Hampshire.

The microprocessor <NUM> may be configured to generate a first alert when the determined lateral distance is below the first pre-defined threshold distance <NUM>. In accordance with an embodiment, the microprocessor <NUM> may be configured to generate the first alert when the determined relative speed, such as <NUM> MPH, is above the pre-defined threshold speed, such as <NUM> MPH. In instances when the determined lateral distance is below the first pre-defined threshold distance <NUM> or the determined relative speed is above the pre-defined threshold speed, the microprocessor <NUM> may be configured to generate the first alert that may indicate the first vehicle <NUM> cannot safely pass the detected second vehicle <NUM> along the first predictive path. The generated first alert may comprise visual information displayed on the display <NUM> by use of the UI 208a. The generated first alert may be outputted as a haptic response, such as a vibration of the steering wheel, and/or as audio output by use of the audio interface <NUM>.

The microprocessor <NUM> may be configured to generate a crash alert when the determined lateral distance is below another pre-defined threshold distance. The other pre-defined threshold distance may be pre-configured to determine a possible crash between the first vehicle <NUM> and the second vehicle <NUM>. The other pre-defined threshold distance may be even below than the first pre-defined threshold distance <NUM>.

In accordance with an embodiment, the microprocessor <NUM> may be configured to generate a second alert. The second alert may indicate that the first vehicle <NUM> can safely pass the detected second vehicle <NUM> along the first predictive path. Such indication of the second alert may occur when the determined lateral distance is above the first pre-defined threshold distance <NUM> and the determined relative speed is below the pre-defined threshold speed.

In accordance with an embodiment, the microprocessor <NUM> may be configured to detect a third vehicle in an adjacent lane. The adjacent lane may correspond to oncoming traffic with respect to a direction of movement of the first vehicle <NUM>. The microprocessor <NUM> may be configured to determine a third position associated with the detected third vehicle. Such determination may occur at the first time instance along a third predictive path associated with the third vehicle in the adjacent lane.

In accordance with an embodiment, the microprocessor <NUM> may be configured to determine whether the distance between the determined third position and the determined first position is above a second pre-defined threshold distance. In such a case, the microprocessor <NUM> may be configured to generate a third alert. The third alert may indicate that the first vehicle <NUM> can safely pass the detected second vehicle <NUM> along the first predictive path within a first time period. The third alert may be generated when a plurality of conditions is detected to ensure a safe overtake. The plurality of conditions include a condition when the determined lateral distance is above the first pre-defined threshold distance <NUM>, the determined relative speed is below the pre-defined threshold speed, and/or the determined distance is above the second pre-defined threshold distance. The first time period may be determined based on the determined lateral distance, the first pre-defined threshold distance <NUM>, the determined relative speed, the pre-defined threshold speed, the determined distance, and/or the second pre-defined threshold distance.

In accordance with an embodiment, the microprocessor <NUM> may be configured to generate a fourth alert. The fourth alert may indicate that the first vehicle <NUM> cannot safely pass the detected second vehicle <NUM> along the first predictive path within the first time period. The fourth alert may be generated when the determined lateral distance is below the first pre-defined threshold distance <NUM>, the determined relative speed is above the pre-defined threshold speed, and/or the determined distance is below the second pre-defined threshold distance.

In accordance with an embodiment, the microprocessor <NUM> may be configured to control the display of generated alerts, such as the first alert, the second alert, the third alert, or the fourth alert, in the first vehicle <NUM>. The control of display of the generated alerts may occur via the UI 208a are rendered on the display <NUM>, such as the AR-HUD. The generated alerts, such as the first alert, may indicate violation of a law, an ordinance, and/or a traffic regulation.

In accordance with an embodiment, the microprocessor <NUM> may be configured to generate different audio data based on the generated alert types. The output of audio data may occur together with the display of the generated alerts by use of the audio interface <NUM>. For example, when it is detected that the first vehicle <NUM> can safely pass the detected second vehicle <NUM>, the output of generated audio data may occur, such as "No traffic rule violation detected, you can safely overtake the bicycle" or "Please maintain the current speed and steering angle; lateral distance of "<NUM> feet" and speed of "<NUM> MPH" estimated at the time of overtake". Further, when it is detected that the first vehicle <NUM> cannot safely pass the detected second vehicle <NUM>, the microprocessor <NUM> may generate one or more visual and/or audio recommendations, such as "Current speed is unsafe to overtake", "Time to pass the bicycle is estimated to be <NUM> seconds; please decelerate slowly from current speed of <NUM> MPH to <NUM> MPH", and "Safe lateral distance detected".

In accordance with an embodiment, the microprocessor <NUM> may be configured to determine a marginal path associated with the second vehicle <NUM>. The marginal path may correspond to the first pre-defined threshold distance <NUM>. The microprocessor <NUM> may be configured to control display of the marginal path. The marginal path may run parallel to the direction of movement of the second vehicle <NUM>, and/or the second predictive path. The marginal path may aid in easy recognition of the specified safe distance requirement when displayed on the AR-HUD (shown in <FIG> and <FIG>).

In accordance with an embodiment, the microprocessor <NUM> may be configured to reproduce buzzer and/or chime sounds when it is detected that the first vehicle <NUM> cannot safely pass the detected second vehicle <NUM>, along the first predictive path. Such reproduction of buzzer and/or chime sounds stored in the memory may occur together with the display of the generated alerts. The microprocessor <NUM> may be configured to control the pitch of the buzzer and/or the chime sound to indicate danger according to the generated alerts type. For example, a low-pitch buzzer sound may be generated when time or distance to pass the second vehicle <NUM> is above the pre-determined threshold. A high-pitch or continuous chime may be outputted when time or distance to pass the second vehicle <NUM> is below the pre-determined threshold, such as only a minute left to overtake. In accordance with an embodiment, the microprocessor <NUM> may be configured to automatically control one or more components or systems, such as the powertrain control system <NUM>, the steering system <NUM>, the braking system <NUM>, the sensing system <NUM>, and/or the body control module <NUM> of the first vehicle <NUM>, when the first vehicle <NUM> is in an autonomous operating mode. Such auto control may be based on the generated one or more alerts, such as the crash alert, the first alert, the second alert, the third alert, or the fourth alert, to safely overtake the second vehicle <NUM>.

<FIG> illustrate a first exemplary scenario for implementation of the disclosed system and method to provide driving assistance to safely overtake a vehicle, in accordance with an embodiment of the disclosure. <FIG> are explained in conjunction with elements from <FIG> and <FIG>. With reference to <FIG>, there is shown a car <NUM>, a bicycle <NUM> with its rider, a first predictive path <NUM>, a second predictive path <NUM>, a marginal path <NUM>, a first length constant <NUM>, a second length constant <NUM>, a first position <NUM>, a second position <NUM>, a lateral distance <NUM>, the first pre-defined threshold distance <NUM>, and the ECU <NUM>. The car <NUM> may include the object detection device 212a, such as the RADAR device, and the image-capturing unit <NUM> (as shown in <FIG>).

In accordance with the first exemplary scenario, the car <NUM> and the bicycle <NUM> may travel in the same direction along the same lane of a road. The driver <NUM> of the car <NUM> may intend to overtake the bicycle <NUM>. The car <NUM> may correspond to the first vehicle <NUM> (<FIG>). The bicycle <NUM> and rider may correspond to the second vehicle <NUM> (<FIG>).

The first predictive path <NUM> may correspond to the determined first predictive path based on the received first sensor data (as described in <FIG> and <FIG>). The second predictive path <NUM> may correspond to the determined second predictive path based on the received second sensor data (as described in <FIG> and <FIG>). In accordance with the first exemplary scenario, the second sensor data may be input signals received from the object detection device 212a installed at the car <NUM>.

The marginal path <NUM> may refer to a line at a safe distance, such as the first pre-defined threshold distance <NUM>, from an outer edge of the bicycle <NUM>. The marginal path <NUM> may correspond to the determined marginal path (<FIG>). The first length constant <NUM> and the second length constant <NUM> may correspond to the one or more pre-defined constants, as described in <FIG>.

In operation, the ECU <NUM> may be configured to detect the bicycle <NUM> in front of the car <NUM>, by use of the image-capturing unit <NUM>. The ECU <NUM> may be configured to determine the first position <NUM> associated with the car <NUM>, along the determined first predictive path <NUM>. The ECU <NUM> may be configured to determine the second position <NUM> associated with detected bicycle <NUM>, by use of the object detection device 212a. The first position <NUM> and the second position <NUM> may be determined for a first time instance, such as a time when the car <NUM> is predicted to overtake the detected bicycle <NUM>.

The ECU <NUM> may be configured to determine whether the lateral distance <NUM> between the determined first position <NUM> and the determined second position <NUM> is below the first pre-defined threshold distance <NUM>. The ECU <NUM> may be configured to utilize one or more constants, such as the first length constant <NUM> and the second length constant <NUM>, to accurately determine the lateral distance <NUM>.

In accordance with an embodiment, in addition to the first predictive path <NUM> and/or the second predictive path <NUM>, the ECU <NUM> may also determine the marginal path <NUM>. The ECU <NUM> may generate a first alert when the determined lateral distance <NUM> is below the first pre-defined threshold distance <NUM> for the first time instance, as shown in <FIG> depicts the sequence of operations for the first exemplary scenario of <FIG>.

<FIG> shows a cut section of an interior portion of the car <NUM> to depict generation of the first alert. <FIG> is explained in conjunction with elements from <FIG>, <FIG>, and <FIG>. With reference to <FIG>, there is further shown a windshield <NUM>, an AR-HUD <NUM>, a first graphical icon <NUM>, a first time period <NUM>, a relative speed value <NUM>, and a speed limit <NUM> for the road. There is further shown the first predictive path <NUM>, the marginal path <NUM>, and the bicycle <NUM> (of <FIG>). The AR-HUD <NUM> may correspond to the display <NUM> (<FIG>). The first predictive path <NUM> may be displayed as two lines 306a and 306b on AR-HUD <NUM> that represents outer boundaries of the car <NUM> (hereinafter referred to as first boundary line 306a and second boundary line 306b). The display at the AR-HUD <NUM> may occur via the UI 208a that may be one of the UI 208a (<FIG>).

A view of the outside, such as the road with the detected bicycle <NUM>, may be visible through the AR-HUD <NUM> from the interior of the car <NUM>. The AR-HUD <NUM> may be integrated on the windshield <NUM> for a hands-free and unobtrusive display for the driver <NUM> and other occupant(s) of the car <NUM>. The second boundary line 306b of the car <NUM> may be closer to the detected bicycle <NUM> than the marginal path <NUM> at the first time instance. The first time instance may correspond to a time instance when the car <NUM> is predicted to pass the detected bicycle <NUM>. The ECU <NUM> may be configured to control the display of the generated first alert on the AR-HUD <NUM> of the car <NUM>. The first graphical icon <NUM> represents the first alert that indicates the car <NUM> does not have enough marginal distance to pass the detected bicycle <NUM> safely or the car <NUM> violates a regulation to pass the detected bicycle <NUM>. The driver <NUM> of the car <NUM> can easily and intuitively find a necessity to change a driving path of the car <NUM> away from the detected bicycle <NUM> by use of the second boundary line 306b, the marginal path <NUM>, and the first graphical icon <NUM>.

In an example, the color of the first boundary line 306a, the second boundary line 306b, the marginal path <NUM>, and a boundary of the detected bicycle <NUM>, may turn to red from green to indicate the generated first alert. The boundary around the detected bicycle <NUM> and its rider is shown as dotted lines. Display of the first graphical icon <NUM> may indicate that the car <NUM> cannot safely overtake the detected bicycle <NUM> along the first predictive path <NUM> (shown as the two dashed lines, the first boundary line 306a and the second boundary line 306b).

In accordance with an embodiment, a certain time period, such as the first time period <NUM>, available with the driver <NUM> of the car <NUM> to pass the detected bicycle <NUM> along the first predictive path <NUM>, may also be displayed on the AR-HUD <NUM>. The time period may be displayed in consideration of a type of lane and an existence of oncoming vehicle. For example, if the lane on which the bicycle <NUM> is detected, allows overtaking and an oncoming vehicle does not pass the car <NUM> for a predetermined time, a remaining time, such as the first time period <NUM>, to pass the detected bicycle <NUM> and an arrow are displayed (as shown). Similarly, a relative speed value, such as the relative speed value <NUM>, determined based on received first sensor data and second sensor data, may also be displayed on the AR-HUD <NUM>. The relative speed value <NUM> may represent that the determined relative speed, such as "<NUM> MPH" is above the pre-defined threshold speed, such as "<NUM> MPH". The speed limit <NUM> may be the detected speed limit value, such as "<NUM> MPH", for the road on which the car <NUM> is driven. Such operations and indications may further provide enhanced visualization and preemptive driving assistance at the car <NUM> to safely pass the detected bicycle <NUM> and without a violation of traffic rules.

<FIG> shows the generated first alert in a HUD <NUM> instead of the AR-HUD <NUM> (of <FIG>), in accordance with an embodiment. The HUD <NUM> may be a semi-transparent display. <FIG> is explained in conjunction with elements from <FIG>, <FIG>, and <FIG>. With reference to <FIG>, there is further shown a graphical bar <NUM>, a first overtake symbol <NUM>, and a graphical representation 304a of the detected bicycle <NUM> and rider on the HUD <NUM>. The display at the HUD <NUM> may occur via the UI 208b that may be one of the UI 208a (<FIG>).

The graphical bar <NUM> indicates the determined lateral distance <NUM> between the car <NUM> and the detected bicycle <NUM>. In instances when the determined lateral distance <NUM> is below another pre-defined threshold, at least a portion of the graphical bar <NUM> may turn into red color to indicate a possible crash. In instances when the determined lateral distance <NUM> is below the first pre-defined threshold distance <NUM> and above the other pre-defined threshold, a color of the graphical bar <NUM> may turn into yellow. On the other hand, when the determined distance is above the first pre-defined threshold distance <NUM>, a color of bar may turn into green. The color of "red" may indicate a possibility of a crash, "yellow" may indicate unsafe pass or violation of regulation, and the color "green" may indicate a safe pass between the car <NUM> and the detected bicycle <NUM>.

The first overtake symbol <NUM> indicates if overtaking the detected bicycle <NUM> is safe or unsafe based on an existence of oncoming vehicle. The first overtake symbol <NUM> may be displayed in red to indicate an unsafe overtake and in green to indicate a safe overtake. The graphical representation 304a may refer to a representation of the detected bicycle <NUM> and its rider on the HUD <NUM>.

The ECU <NUM> may be configured to control display of the generated first alert on the HUD <NUM>. The first overtake symbol <NUM>, a color change of the graphical bar <NUM> may indicate the generated first alert on the HUD <NUM>. For example, the first overtake symbol <NUM> may be displayed in red to indicate an unsafe pass (<FIG>). The driver <NUM> of the car <NUM> may maneuver the car <NUM> away from the bicycle <NUM> based on the generated first alert.

With reference to <FIG>, there is shown an obstacle <NUM> and a crash alert icon <NUM>, in addition to the first boundary line 306a and the second boundary line 306b of the car <NUM>, the marginal path <NUM>, the windshield <NUM>, the AR-HUD <NUM>, the first graphical icon <NUM>, the first time period <NUM>, the relative speed value <NUM>, the speed limit <NUM> for the road, and the detected bicycle <NUM>, as described <FIG>. In certain instances, the driver <NUM> may maneuver the car <NUM> towards the bicycle <NUM>. For example, when the obstacle <NUM> is detected on the road, the driver <NUM> of the car <NUM> may accordingly maneuver the car <NUM> to avoid the obstacle <NUM>.

The crash alert icon <NUM> represents a crash alert for a possible crash between the car <NUM> and the detected bicycle <NUM> along the first predictive path <NUM> at the time of overtake. The first predictive path <NUM> may be displayed as the first boundary line 306a and the second boundary line 306b as a predictive driving path of the car <NUM>. Such crash alert may be generated when the determined lateral distance <NUM> is below the other pre-defined threshold distance. The other pre-defined threshold distance may be pre-configured to determine a possible crash between the car <NUM> and the bicycle <NUM>. The other pre-defined threshold distance may be even below the first pre-defined threshold distance <NUM>. The driver <NUM> of the car <NUM> can easily and intuitively find a necessity to change a driving path of the car <NUM> away from the detected bicycle <NUM> by use of the second boundary line 306b that indicates a possible crash (as shown in <FIG>), the marginal path <NUM>, and the crash alert icon <NUM>. One or more recommendations may also be generated to advise the driver <NUM> to reduce the speed of the car <NUM> to avoid both the obstacle <NUM> and the possibility of the crash.

<FIG> shows the generated crash alert in the HUD <NUM> instead of the AR-HUD <NUM> (as shown in <FIG>), in accordance with an embodiment. <FIG> is explained in conjunction with elements from <FIG>, <FIG>, <FIG>, <FIG>, <FIG>, and <FIG>. With reference to <FIG>, a portion of the graphical bar <NUM> may turn into red color to indicate a possible crash. The determined lateral distance <NUM> between the car <NUM> and the detected bicycle <NUM> that is below the other pre-defined threshold distance is displayed in a distance scale of the graphical bar <NUM> (In <FIG>, the determined lateral distance <NUM> is shown as a dark shaded portion in the graphical bar <NUM> and indicated by an arrow mark). A reduction in length of the dark shaded portion (shown by an arrow mark) in the distance scale of the graphical bar <NUM> from previous length of the dark shaded portion in the distance scale may also indicate a potential danger of a crash (the crash alert).

<FIG> depicts generation of the first alert in an alternative manner as shown in <FIG>. <FIG> is explained in conjunction with elements from <FIG>, <FIG>, <FIG> and <FIG>. With reference to <FIG>, there is further shown a first speed information <NUM> related to the car <NUM> and a second speed information <NUM> related to the detected bicycle <NUM> at the AR-HUD <NUM>, in addition to the elements shown in <FIG>. The first speed information <NUM> depicts the current speed of the car <NUM> and a calculated target speed of the car <NUM>. The second speed information <NUM> depicts current speed of the bicycle <NUM>.

In instances when the determined relative speed, such as "<NUM> MPH", is above the pre-defined threshold speed, such as "<NUM> MPH". Current speed of the car <NUM> and a target speed to make the relative speed lower than the pre-defined threshold speed may be displayed as a speed alert. The speed alert may be displayed together with the first graphical icon <NUM> that may collectively represent the first alert. In this case, current speed of the car <NUM> may be "<NUM> MPH", speed of the bicycle <NUM> may be "<NUM> MPH" and the relative speed may be "<NUM> MPH" (shown as the relative speed value <NUM>). As the pre-defined threshold speed (the threshold relative speed) is preset as "<NUM> MPH", the target speed is calculated as "<NUM> MPH". The displayed target speed may help the driver <NUM> to maintain a safe speed preemptively to avoid a violation of traffic regulation at the time of overtake.

<FIG> shows display of the generated first alert in the HUD <NUM> instead of the AR-HUD <NUM> (as shown in <FIG>), in accordance with an embodiment. <FIG> is explained in conjunction with elements from <FIG>, <FIG>, <FIG>, <FIG>, <FIG>, and <FIG>. With reference to <FIG>, there is further shown an area <NUM> that may display the current speed and the calculated target speed of the car <NUM>, and the detected speed of the bicycle <NUM> as described in <FIG>.

The ECU <NUM> may generate a recommendation to reduce the speed of the car to the pre-defined threshold speed, such as "<NUM> MPH". A change in the first sensor data, such as a change in the steering angle of the car <NUM>, may be detected when the driver <NUM> of the car <NUM> maneuvers the car <NUM> away from the bicycle <NUM>. A change in the speed of the car <NUM> may be detected. The ECU <NUM> may then generate the second alert (as shown in <FIG>) when the determined lateral distance <NUM> is above the first pre-defined threshold distance <NUM> and the determined relative speed is below the pre-defined threshold speed (such as "<NUM> MPH" as shown in <FIG>).

<FIG> shows an example of the generated second alert in the AR-HUD <NUM>. <FIG> is explained in conjunction with elements from <FIG>, <FIG>, <FIG>, <FIG>. With reference to <FIG>, there is further shown a second graphical icon <NUM>, a second time period <NUM>, a relative speed value <NUM>, and the first predictive path <NUM> that may be updated and shown as the first boundary line 306a and the second boundary line 306b of the car <NUM>. The second time period <NUM> may refer to a time period available with the driver <NUM> of the car <NUM> to pass the detected bicycle <NUM> along the updated first predictive path <NUM>. The second time period <NUM> may be an updated when the car <NUM> is maneuvered away from the bicycle <NUM>, and when the change in the speed of the car <NUM> is detected (as described in <FIG>). Similarly, the relative speed value <NUM> may refer to an updated relative speed between the car <NUM> and the detected bicycle <NUM>, based on the detected change in the speed of the car <NUM>.

The first predictive path <NUM> may accordingly be updated based on the change detected in the steering angle. The ECU <NUM> may be configured to control display of the generated second alert, such as the second graphical icon <NUM> in green color, on the AR-HUD <NUM>. The color of the first boundary line 306a and the second boundary line (shown as a dashed lines), the marginal path <NUM> (also shown as a thick dashed line), and the boundary of the detected bicycle <NUM> (shown as a dotted line), may turn green from previously red to indicate the generated second alert. The second graphical icon <NUM> and a changed color of the first boundary line 306a, the second boundary line 306b, the marginal path <NUM>, and the boundary of the detected bicycle <NUM> collectively, may represent the generated second alert. The generated second alert may indicate that the car <NUM> can safely pass the bicycle <NUM> along the updated first predictive path <NUM>.

<FIG> shows an example of a different representation of the generated second alert in the HUD <NUM>. <FIG> is explained in conjunction with elements from <FIG>, <FIG>, <FIG>, <FIG>, <FIG>, <FIG>, and <FIG>. With reference to <FIG>, there is further shown an updated graphical bar 336a, an updated first overtake symbol 338a, the second time period <NUM>, and the relative speed value <NUM>. The updated graphical bar 336a and updated first overtake symbol 338a may be representative of a change in color, such as from red to green, to indicate a safe overtake. The second time period <NUM> and the relative speed value <NUM> correspond to updated values as described above for <FIG>. The generated second alert at the HUD <NUM>, such as the green color of the updated first overtake symbol 338a, the updated graphical bar 336a, and the relative speed value <NUM>, may indicate that the car <NUM> can safely pass the bicycle <NUM> along the updated first predictive path <NUM>.

<FIG>, and <FIG> illustrate a second exemplary scenario for implementation of the disclosed system and method to provide driving assistance to safely overtake a vehicle, in accordance with an embodiment of the disclosure. <FIG> is explained in conjunction with elements from <FIG>, <FIG>, <FIG>, <FIG>, <FIG>, <FIG>, and <FIG>. With reference to <FIG>, there is further shown a truck <NUM>, a third predictive path <NUM>, a third position <NUM>, a distance <NUM>, a third graphical icon <NUM>, and a second overtake symbol <NUM>.

In accordance with the second exemplary scenario, in addition to the detected bicycle <NUM>, the truck <NUM> may also be present in an adjacent lane. The truck <NUM> may be an oncoming traffic along the adjacent lane with respect to a direction of movement of the car <NUM>. The truck <NUM> may correspond to the third vehicle (as described in <FIG> and <FIG>).

In operation, the current driving condition in the second exemplary scenario corresponds to an oncoming third vehicle, such as the truck <NUM>. The truck <NUM> in the adjacent lane may be detected by the ECU <NUM>. The first predictive path <NUM> is displayed as the two lines 306a and 306b. The first position <NUM> may be determined along the first predictive path <NUM>, such as one of the boundary lines, such as the first boundary line 306a, that is closer to the detected third vehicle, such as the truck <NUM>. Thus, the ECU <NUM> may determine the distance <NUM> between the third position <NUM> along the third predictive path <NUM> of the truck <NUM> and the determined first position <NUM> along the first boundary line 306a.

In certain instances, there may not be an oncoming vehicle in the adjacent lane, or there may be an oncoming vehicle but the determined lateral distance <NUM> between the car <NUM> and the bicycle <NUM> may be less than the first pre-defined threshold distance <NUM>. The determination of the lateral distance <NUM> in such instances may occur when the first vehicle <NUM>, such as the car <NUM>, passes the second vehicle <NUM>, such as the bicycle <NUM>, at a distance above the other pre-defined threshold distance but less than the first pre-defined threshold distance <NUM>. In such instances, the first position <NUM> (as shown by an arrow in <FIG> that points to a position along the second boundary line 306b) may be determined along the second boundary line 306b that is closer to the detected bicycle <NUM>. Further, in such instances, the second position <NUM> may be the position of the detected bicycle <NUM> or a position along the second predictive path <NUM> of the detected bicycle <NUM> (not shown).

The ECU <NUM> may be further configured to determine whether the distance <NUM> between the third position <NUM> and the determined first position <NUM> is above the second pre-defined threshold distance. The third graphical icon <NUM> for the oncoming vehicle, such as the truck <NUM>, represents that the first vehicle <NUM>, such as the car <NUM>, is at a safe distance, such as the second pre-defined threshold distance, with respect to the oncoming vehicle. The third graphical icon <NUM> may be displayed when the determined distance <NUM> is above the second pre-defined threshold distance.

The second overtake symbol <NUM> represents that the first vehicle <NUM>, such as the car <NUM>, is at a safe distance, such as the second pre-defined threshold distance, with respect to the detected oncoming vehicle and also at a safe distance, such as the first pre-defined threshold distance <NUM>, with respect to the detected second vehicle <NUM>, such as the bicycle <NUM>. The third graphical icon <NUM> and the second overtake symbol <NUM> may be collectively referred to as the third alert. In presence of the oncoming vehicle, the first time period <NUM> may indicate a predicted duration to overtake the farthest detected vehicle with respect to the car <NUM>. For example, the vertical distance of the truck <NUM> may be more than the detected bicycle <NUM>. Thus, in this case, the first time period <NUM> may correspond to time to overtake the truck <NUM> along the first predictive path <NUM>.

The ECU <NUM> may be configured to generate the third alert that may indicate that the car <NUM> can safely pass the detected bicycle <NUM> and the oncoming truck <NUM> along the current driving path, such as the two lines 306a and 306b that are representative of the first predictive path <NUM>. The third alert may also indicate that the car <NUM> can safely pass the detected bicycle <NUM> and the oncoming truck <NUM> along the current driving path within the first time period <NUM> with a safe speed, such as the relative speed value <NUM> of "<NUM> MPH". In accordance with an embodiment, the third alert may be an audio output, such as "Your current driving path is safe" and/or "The oncoming truck <NUM> is detected at a safe distance when you overtake the bicycle <NUM> along the displayed driving path (the first predictive path <NUM>)".

<FIG> illustrates display of the generated fourth alert on the AR-HUD <NUM> in an example. <FIG> is explained in conjunction with elements from <FIG>, <FIG>, <FIG>, <FIG>, <FIG>, <FIG>, <FIG>, and <FIG>. With reference to <FIG>, there is further shown an updated third position 406a, an updated distance 408a, an fourth graphical icon <NUM>, and an third overtake symbol <NUM>. In accordance with an embodiment, the ECU <NUM> may be configured to display the generated fourth alert.

The fourth graphical icon <NUM> for an oncoming vehicle represents that the car <NUM> may not be at a safe distance with respect to the oncoming vehicle, such as the truck <NUM>. The fourth graphical icon <NUM> for the oncoming vehicle may be displayed when the updated distance 408a is below the second pre-defined threshold distance.

The third overtake symbol <NUM> represents that it may not be suitable for the car <NUM> to overtake the bicycle <NUM> along the current driving path of the car <NUM> when the updated distance 408a is below the second pre-defined threshold distance. In accordance with an embodiment, the alert message <NUM>, such as "NO OVERTAKE", may also be displayed at the AR-HUD <NUM>, via the UI 208a. The fourth graphical icon <NUM>, the third overtake symbol <NUM>, and the alert message <NUM> may collectively be referred to as the fourth alert.

In accordance with an embodiment, the fourth alert may be generated when the updated distance 408a is below the second pre-defined threshold distance. The fourth alert may be generated for a time instance that corresponds to predicted duration to overtake the bicycle <NUM> in presence of the oncoming vehicle, such as the truck <NUM>. The updated distance 408a may be determined between the first position <NUM> (shown in the UI 208a as a point along the first boundary line 306a) and the updated third position 406a. The updated distance 408a may be determined based on the movement of the oncoming vehicle, such as the truck <NUM>, towards the first vehicle <NUM>, such as the car <NUM>, or movement of the car <NUM> towards the truck <NUM>.

<FIG> illustrates display of the generated first alert, the crash alert, and fourth alert on the AR-HUD <NUM> in an example. <FIG> is explained in conjunction with elements from <FIG>, <FIG>, <FIG>, <FIG>, <FIG>, <FIG>, <FIG>, <FIG>. With reference to <FIG>, there is shown the first graphical icon <NUM>, the crash alert icon <NUM>, the first speed information <NUM>, the fourth graphical icon <NUM>, the third overtake symbol <NUM>, the alert message <NUM>, and the relative speed value <NUM>.

In an example, the first graphical icon <NUM>, the first speed information <NUM>, the relative speed value <NUM> and may indicate the first alert. Further, a change in color of the boundary around the detected bicycle <NUM> and its rider (shown as dotted lines), the first boundary line 306a, the second boundary line 306b, the marginal path <NUM>, from previously green to yellow may also indicate the first alert. The crash alert icon <NUM> may indicate the crash alert. Further, an intersection of the second boundary line 306b with the boundary around the detected bicycle <NUM> and its rider (shown as dotted lines) may also indicate the crash alert. Further, a change in color of the boundary around the detected bicycle <NUM> and its rider, the first boundary line 306a, the second boundary line 306b, the marginal path <NUM>, from previously green to red may also indicate the crash alert. Alternatively, a continuous blinking of the crash alert icon <NUM>, the second boundary line 306b, and the boundary around the detected bicycle <NUM>, and a buzzer sound may also indicate the crash alert. The third overtake symbol <NUM> and/or the alert message <NUM>, such as "NO OVERTAKE", may indicate the fourth alert. The color of the third overtake symbol <NUM> may turn yellow from previously green or red to indicate the fourth alert. The first alert, the crash alert, and the fourth alert may correspond to potential danger alerts, whereas the second alert and the third alert correspond to safety alerts. The second alert and the third alert are collectively shown and described in <FIG>.

As the alerts are generated and displayed much before the actual overtake occurs, the driver <NUM> can preemptively adjust the speed and suitably maneuver the car <NUM>. The displayed predictive paths, such as the first predictive path <NUM> (represented by the first boundary line 306a and the second boundary line 306b by use of the UI 208a), the second predictive path <NUM>, the marginal path <NUM>, and/or the third predictive path <NUM>, may make it easier for the driver <NUM> to overtake the second vehicle <NUM>, such as the bicycle <NUM> both in presence or absence of the oncoming vehicle, such as the truck <NUM>. Thus, an enhanced assistance may be provided to ensure a safe overtake in different traffic conditions and avoidance of a traffic rule violation.

<FIG> and <FIG> collectively depict a flow chart <NUM> that illustrates an exemplary method to provide driving assistance to safely overtake a vehicle, in accordance with an embodiment of the disclosure. The flow chart <NUM> is described in conjunction with <FIG>, <FIG>, <FIG>, and <FIG>. The method starts at step <NUM> and proceeds to step <NUM>.

At step <NUM>, the second vehicle <NUM> (such as the bicycle <NUM>) may be detected in front of the first vehicle <NUM> (such as the car <NUM>). At step <NUM>, the first sensor data that corresponds to the first vehicle <NUM> may be received. At step <NUM>, the second sensor data that corresponds to detected second vehicle <NUM> may be received. At step <NUM>, the first predictive path <NUM> may be determined based on received first sensor data (as shown in <FIG>). In accordance with an embodiment, the determined first predictive path <NUM> may be also represented as two boundary lines, such as the first boundary line 306a and the second boundary line 306b on the AR-HUD <NUM> (as shown and described in <FIG>, <FIG>, <FIG>, <FIG>, <FIG>, and <FIG>). The second predictive path <NUM> may be determined based on the received second sensor data (as shown in <FIG>).

At step <NUM>, the first position <NUM> associated with first vehicle <NUM> may be determined. The second position <NUM> associated with the detected second vehicle <NUM> may be further determined. The first position <NUM> may be determined along the first predictive path <NUM> (as shown in <FIG>). The second position <NUM> may be determined along the second predictive path <NUM> (as shown in <FIG>). In accordance with an embodiment, the second position <NUM> may correspond to the position of the detected second vehicle <NUM>. In such an embodiment, the second predictive path <NUM> may not be determined. At step <NUM>, the lateral distance <NUM> between the determined first position <NUM> and the determined second position <NUM>, may be determined (as shown in <FIG>).

At step <NUM>, a relative speed (such as the relative speed value <NUM>) between the first vehicle <NUM> and the detected second vehicle <NUM> for the first time instance, may be determined. At step <NUM>, whether a third vehicle, such as the truck <NUM>, is present in an adjacent lane, may be detected. The adjacent lane may correspond to oncoming traffic with respect to a direction of movement of the first vehicle <NUM>. In instances when the second vehicle <NUM> is detected and the third vehicle is not detected, the control may pass to the step <NUM>. In instances when the third vehicle is detected in addition to the detected second vehicle <NUM>, the control may pass to the step <NUM>.

At step <NUM>, whether the determined lateral distance <NUM> is below the first pre-defined threshold distance <NUM> and/or the determined relative speed is above the pre-defined threshold speed, may be determined. In instances when the determined lateral distance <NUM> is below the first pre-defined threshold distance <NUM>, such as the safe distance (such as <NUM> or <NUM> feet) and/or determined relative speed is above the pre-defined threshold speed, such as "<NUM> MPH", the control may pass to the step <NUM>. In instances when the determined lateral distance <NUM> is above the first pre-defined threshold distance <NUM>, and the determined relative speed is below the pre-defined threshold speed, the control may pass to the step <NUM>.

At step <NUM>, a first alert may be generated. The first alert may indicate that the first vehicle <NUM> cannot safely pass the detected second vehicle <NUM> along the first predictive path <NUM>. An example of the first alert is shown in <FIG>, <FIG>. The control may then pass to the step <NUM>. At step <NUM>, a second alert may be generated. The second alert may indicate that the first vehicle <NUM> can safely pass the detected second vehicle <NUM> along the first predictive path <NUM>. An example of the second alert is shown in <FIG>. The control may then pass to the step <NUM>.

In accordance with an embodiment, instead of the determination of the relative speed between first vehicle <NUM> and detected second vehicle <NUM> as described in the steps <NUM>, <NUM>, <NUM>, and <NUM> in <FIG>, an absolute speed of the first vehicle <NUM> may be used to determine if the first vehicle can safely pass the second vehicle <NUM>. In this case, the absolute speed of the first vehicle <NUM> is compared with another pre-defined threshold speed and the first alert is issued if the absolute speed of the first vehicle <NUM> is above the other pre-defined threshold speed. On the other hand, if the absolute speed of the first vehicle <NUM> is less than the other pre-defined threshold speed and determined lateral distance, such as the lateral distance <NUM>, is above the first pre-defined threshold distance <NUM>, the second alert is issued.

As described above, the first alert may indicate that the first vehicle <NUM> cannot safely pass the detected second vehicle <NUM> along the first predictive path <NUM>, because a predictive distance, such as the lateral distance <NUM>, between the first vehicle <NUM> and second vehicle <NUM> when the first vehicle <NUM> passes the second vehicle <NUM> is shorter than the first pre-defined threshold distance <NUM>, such as a distance regulated by a law. Further as described above, the first alert may indicate that the first vehicle <NUM> cannot safely pass the detected second vehicle <NUM> along the first predictive path <NUM>, because the speed (the absolute speed or the relative speed) of the first vehicle <NUM> when the first vehicle <NUM> passes the second vehicle <NUM> is high, such as above a speed threshold regulated by a law. The second alert may indicate that the first vehicle <NUM> can safely pass the detected second vehicle <NUM> along the first predictive path <NUM>, because a predictive distance, such as the lateral distance <NUM>, between the first vehicle <NUM> and second vehicle <NUM> when the first vehicle <NUM> passes the second vehicle <NUM> is more than a pre-defined distance, such as a distance regulated by a law and a speed of the first vehicle when the first vehicle <NUM> passes the second vehicle <NUM> is low enough for safety for the second vehicle <NUM>.

At step <NUM>, a third position, such as the third position <NUM>, associated with detected third vehicle may be determined. In accordance with an embodiment, the third position <NUM> may be determined along the third predictive path <NUM>, associated with the third vehicle in the adjacent lane. At step <NUM>, whether the distance between determined third position <NUM>, and determined first position <NUM>, are above the second pre-defined threshold distance, may be determined.

In instances when the distance is above the second pre-defined threshold distance, the control passes to step <NUM>. In instances when the distance <NUM> is below the second pre-defined threshold distance, the control passes to step <NUM>. At step <NUM>, a third alert may be generated. The generated third alert may indicate that the first vehicle <NUM> can safely pass the detected second vehicle <NUM> and the third vehicle along the first predictive path <NUM> within the first time period. An example of the third alert is shown in <FIG>. The control may then pass to the step <NUM>.

At step <NUM>, a fourth alert may be generated. The fourth alert may indicate that the first vehicle <NUM> cannot safely pass the detected second vehicle <NUM> and the third vehicle along the first predictive path <NUM> within the first period of time. An example of the fourth alert is shown in <FIG>. At step <NUM>, the display of the generated alerts, such as the first alert, the second alert, the third alert or the fourth alert, may be controlled at the first vehicle <NUM>. The display of the generated alerts may be controlled via the UI 208a (<FIG>). Example of the display of the generated alerts on the AR-HUD <NUM> via the UI 208a (one of the UI 208a) is shown and described in <FIG>, <FIG>, <FIG>, <FIG>, <FIG>, and <FIG>). Similarly, example of the display of the generated alerts on the HUD <NUM>, via the UI 208b (another UI of the UI 208a) is shown and described in <FIG>, <FIG>, <FIG>, and <FIG>). Control passes to end step <NUM>.

<FIG> and <FIG> collectively depict a second flow chart <NUM> that illustrates another exemplary method to provide driving assistance to safely overtake a vehicle, in accordance with an embodiment of the disclosure. The flow chart <NUM> is described in conjunction with <FIG>, <FIG>, <FIG>, <FIG>, <FIG> and <FIG>. The method starts at step <NUM> and proceeds to step <NUM>.

At step <NUM>, the second vehicle <NUM> (such as an EPAMD or the bicycle <NUM>) may be detected in front of the first vehicle <NUM> (such as the car <NUM>). At step <NUM>, it may be determined whether the first vehicle <NUM> and the second vehicle <NUM> are in a same lane. In instances when the first vehicle <NUM> and the second vehicle <NUM> are in the same lane of a road, the control passes to step <NUM>. In instances when the first vehicle <NUM> and the second vehicle <NUM> are not in the same lane, the control passes to the end step <NUM>.

At step <NUM>, the first sensor data that corresponds to the first vehicle <NUM> and the second sensor data that corresponds to the second vehicle <NUM> may be received. In accordance with an embodiment, the first sensor data and the second sensor data may be received at intermittent time intervals, such as every <NUM> milliseconds. At step <NUM>, the first predictive path <NUM> and/or second predictive path may be determined. The first predictive path <NUM> may be determined based on received first sensor data. The second predictive path may be determined based on the received second sensor data.

At step <NUM>, the first position <NUM> associated with the first vehicle <NUM> may be determined. The second position <NUM> associated with the detected second vehicle <NUM> may be further determined. The first position <NUM> may be determined along the first predictive path <NUM> (as shown in <FIG>). The second position <NUM> may correspond to the position of the second vehicle <NUM> that may be detected continuously or intermittently, such as every <NUM> milliseconds. In accordance with an embodiment, the second position <NUM> may be determined along the second predictive path <NUM> (as shown in <FIG>). In accordance with an embodiment, the first position <NUM> and the second position <NUM> may be determined simultaneously.

Steps <NUM> and <NUM> may be similar to the steps <NUM> and <NUM> (<FIG>), respectively. At step <NUM>, the lateral distance <NUM> between the determined first position <NUM> and the determined second position <NUM>, may be determined (as shown in <FIG>). At step <NUM>, a relative speed (such as the relative speed value <NUM>) between the first vehicle <NUM> and the detected second vehicle <NUM> for the first time instance, may be determined.

At step <NUM>, it may be determined whether the lateral distance <NUM> is below the first pre-defined threshold distance <NUM> and/or the determined relative speed is above the pre-defined threshold speed. In instances when the determined lateral distance <NUM> is below the first pre-defined threshold distance <NUM> and/or the determined relative speed is above the pre-defined threshold speed, the control passes to step <NUM>. In instances when the determined lateral distance <NUM> is above the first pre-defined threshold distance <NUM> and/or the determined relative speed is below the pre-defined threshold speed, the control passes to step <NUM>.

At step <NUM>, it may be determined whether the lateral distance <NUM> is below another pre-defined threshold distance. In instances when the determined lateral distance <NUM> is below the other pre-defined threshold distance, the control passes to step <NUM>. In instances when the determined lateral distance <NUM> is below first pre-defined threshold distance <NUM>, but above other pre-defined threshold distance and/or the determined relative speed is above pre-defined threshold speed, the control passes to step <NUM>.

At step <NUM>, a crash alert for a predictive crash between the first vehicle <NUM> and the second vehicle <NUM> may be generated. An example of the crash alert is shown in <FIG>. The control may then pass to the step <NUM>. At step <NUM>, the first alert may be generated, as described previously in the step <NUM>. The first alert may indicate that the first vehicle <NUM> cannot safely pass the detected second vehicle <NUM> along the first predictive path <NUM>. An example of the first alert is shown in <FIG>, <FIG>. The control may then pass to the step <NUM>.

At step <NUM>, the second alert may be generated. The second alert, as described previously in the step <NUM>, may indicate that the first vehicle <NUM> can safely pass the detected second vehicle <NUM> along the first predictive path <NUM>. An example of the second alert is shown in <FIG>. The control may then pass to the step <NUM>.

At step <NUM>, the display of the generated alerts, such as the crash alert, the first alert and the second alert, may be controlled at the first vehicle <NUM>. The display of the generated alerts, may be similar to that as described in the step <NUM> (<FIG>). The control passes to end step <NUM>.

In accordance with an embodiment of the disclosure, a system to provide driving assistance to safely overtake a vehicle is disclosed. The system (such as the ECU <NUM> (<FIG>) may comprise one or more circuits (hereinafter referred to as the microprocessor <NUM> (<FIG>)). The microprocessor <NUM> may be configured to detect the second vehicle <NUM> in front of the first vehicle <NUM> (<FIG>). The microprocessor <NUM> may be configured to determine a first position associated with the first vehicle <NUM>, and a second position associated with the detected second vehicle <NUM>. Such determination may occur at a first time instance. The microprocessor <NUM> may be configured to determine whether a lateral distance between the determined first position and the determined second position are below the first pre-defined threshold distance <NUM>. The microprocessor <NUM> may be configured to generate the first alert when the determined lateral distance is below the first pre-defined threshold distance <NUM> (<FIG>).

In accordance with an embodiment of the disclosure, a vehicle (such as the first vehicle <NUM> (<FIG> and <FIG>) to provide driving assistance to safely overtake another vehicle (such as the second vehicle <NUM> (<FIG>)) is disclosed. The vehicle may comprise the battery <NUM> and the display <NUM>. The vehicle may further comprise one or more vehicle sensors (such as the sensing system <NUM> (<FIG>)), configured to detect the other vehicle in front of the vehicle. The vehicle may further comprise an electronic control unit (such as the ECU <NUM> (<FIG> and <FIG>)) that comprises one or more circuits (hereinafter referred to as the microprocessor <NUM> (<FIG>) configured to determine a first position associated with the vehicle and a second position associated with the detected other vehicle for a first time instance. The microprocessor <NUM> may be configured to determine whether a lateral distance between the determined first position and the determined second position is below a first pre-defined threshold distance. The microprocessor <NUM> may be configured to generate a first alert when the determined lateral distance is below the first pre-defined threshold distance. The generated first alert may be displayed on the display which is powered by the battery <NUM>.

Various embodiments of the disclosure may provide a non-transitory computer readable medium and/or storage medium having stored thereon, a set of computer-executable instructions to cause a machine and/or a computer to provide driving assistance to safely overtake a vehicle. The set of computer-executable instructions in an ECU may cause the machine and/or computer to perform the steps that comprise detection of the second vehicle <NUM> in front of the first vehicle <NUM>. A first position associated with the first vehicle <NUM> and a second position associated with the detected second vehicle <NUM>, may be determined. Such determination may occur at a first time instance. It may be determined whether a lateral distance between the determined first position and the determined second position is below a first pre-defined threshold distance <NUM>. A first alert may be generated when the determined lateral distance is below the first pre-defined threshold distance <NUM>.

The present disclosure may be realized in hardware, or a combination of hardware and software. The present disclosure may be realized in a centralized fashion, in at least one computer system, or in a distributed fashion, where different elements may be spread across several interconnected computer systems. A computer system or other apparatus adapted for carrying out the methods described herein may be suited. A combination of hardware and software may be a general-purpose computer system with a computer program that, when loaded and executed, may control the computer system such that it carries out the methods described herein. The present disclosure may be realized in hardware that comprises a portion of an integrated circuit that also performs other functions. It may be understood that, depending on the embodiment, some of the steps described above may be eliminated, while other additional steps may be added, and the sequence of steps may be changed.

The present disclosure may also be embedded in a computer program product, which comprises all the features that enable the implementation of the methods described herein, and which when loaded in a computer system is able to carry out these methods. Computer program, in the present context, means any expression, in any language, code or notation, of a set of instructions intended to cause a system with an information processing capability to perform a particular function either directly, or after either or both of the following: a) conversion to another language, code or notation; b) reproduction in a different material form.

Claim 1:
A driving assistance system, comprising: at least one circuit (<NUM>) in an electronic control unit (<NUM>) of a first vehicle (<NUM>), wherein said at least one circuit (<NUM>) is configured to:
determine a first position (<NUM>) associated with said first vehicle (<NUM>) and a second position (<NUM>) associated with a second vehicle (<NUM>) in front of said first vehicle (<NUM>) for a first time instance, wherein said first time instance corresponds to a time instance at which said first vehicle (<NUM>) is predicted to pass said second vehicle (<NUM>); and
determine whether a lateral distance (<NUM>) between said determined first position (<NUM>) and said determined second position (<NUM>) is below a first threshold distance (<NUM>);
wherein said at least one circuit (<NUM>) is configured to control at least one component of said first vehicle (<NUM>) based on said determination that said lateral distance (<NUM>) is below said first threshold distance (<NUM>); and
wherein said at least one circuit (<NUM>) is further configured to determine whether a relative speed between said first vehicle (<NUM>) and said second vehicle (<NUM>) at said first time instance is above a threshold speed;
characterized in that
said first threshold distance (<NUM>) is based on a rule in a jurisdiction of geo-location of said first vehicle (<NUM>),
said geo-location of said first vehicle (<NUM>) is detected in said jurisdiction,
said at least one circuit (<NUM>) is further configured to determine said first position (<NUM>) along a first predictive path (<NUM>) associated with said first vehicle (<NUM>), and said second position (<NUM>) along a second predictive path (<NUM>) associated with said detected second vehicle (<NUM>), and
said at least one circuit (<NUM>) is further configured to determine a third position (<NUM>) that is associated with a third vehicle (<NUM>), which is an oncoming vehicle in an adjacent lane that is present in addition to the second vehicle (<NUM>) that is to be overtaken, at a second time instance along a third predictive path (<NUM>) associated with said third vehicle (<NUM>), wherein said at least one circuit (<NUM>) is further configured to determine whether a distance (<NUM>) between said third position (<NUM>) and said determined first position (<NUM>) is above a second threshold distance.