Patent Description:
A vehicle, such as a car, hosts a turn signal light source, such as a bulb, which is manually activated by a driver of the vehicle, such as when making a turn or switching lanes. When activated, the turn signal light source visually notifies others, such pedestrians and the drivers of other vehicles, that the vehicle may change its direction of travel by, for example, turning onto another road or switching road lanes. However, since the turn signal light source is manually activated by the driver, there are often times when the driver neglects to activate the turn signal light source before changing its direction of travel. This situation can be dangerous, especially on high speed roads, and is often a cause of vehicle accidents or instances of road rage.

Although various technologies exist in order to mitigate the failure of a driver to engage the vehicle's turn signal, these technologies are inadequate for various technical reasons, such as false positives and slow reaction time. For example, some prior attempts to ameliorate this situation have included smart turn signals that stay silent and in the background, but present a warning to the driver if the vehicle is steered outside the bounds of a lane, and turn signal assist programs that generate dashboard messages to remind a driver to use turn signals after repeated failures to do so. These existing technologies still rely on the driver of the vehicle to manually engage the turn signal light source when appropriate. <CIT> discloses a lane change aid system that is capable of performing vehicle functions such as automatically turning on a turn signal if the system detects that the vehicle is intending to make a lane change and the driver has neglected to turn on the turn signal. <CIT> describes an intelligent turn signaling system that uses trip information and GPS data to automatically active the turn lights for a vehicle. A method for indicating a change in direction of a motor vehicle is known from <CIT>, wherein a turn signal is switched on automatically when the turning angle of the wheels is greater than a specified threshold value. <CIT> discloses a method for automatic direction indication that comprises activating a turn signal based on the detection of a driver activity or of the vehicle position. <CIT> discloses a vehicle control system for controlling a vehicle to follow another vehicle in pursuit, wherein the vehicle control system comprises a radar unit for detecting a relative distance to the other vehicle in front of the vehicle. <CIT> discloses a method to automatically control turn signals in a vehicle equipped with a lane detection system, wherein the method comprises determining whether the vehicle is deviating from a detected travel path and determining whether to automatically activate the turn signal indicative of the change of the vehicle travel path.

In particular, this disclosure provides a method of automatically activating a turn signal source in a vehicle according to claim <NUM>, a storage device according to claim <NUM>, and a motor vehicle according to claim <NUM>. Examples thereof are detailed in the dependent claims. This disclosure discloses one or more inventions providing for automated signaling of actual or imminent turning or leaving of its current lane by a vehicle. The leaving can be either a crossing of a lane line into an adjacent lane, the turning of the vehicle onto a path that crosses the current lane, or otherwise veering out of a lane (e.g., turning onto an off-ramp).

Typical vehicular laws require a vehicle to signal such leaving of a lane with a light as seen in the typical flashing light turn signals found in most cars and trucks. Most vehicles have turn signal lamps at the rear of the vehicle. Some vehicles have additional turn signal lamps at a forward position of the vehicle, such as, e.g., on side view mirrors. However, with advent of vehicle-to-vehicle communications, it also becomes possible for a vehicle to provide a telemetric communication informing other vehicles when leaving a lane or making a turn.

An example includes a method of automatically activating a turn signal source in a vehicle, the method comprising: determining, via a processor, that a first vehicle is going to turn or leave a lane based on data from a first data source of the first vehicle; determining, via the processor, that a driver of the first vehicle is applying a steering action to the first vehicle based on data from a second data source of the first vehicle; determining, via the processor, an approximate location of a second vehicle relative to the first vehicle based on data from a third data source of the first vehicle and data from a fourth data source of the first vehicle; activating, via the processor, a turn signal source of the first vehicle.

In an example, the turn signal source is a turn signal lamp voltage source.

In an example, the turn signal source is a transmitter that transmits a telemetric signal informing others of the turn.

An example includes a method of automated turn signaling, the method comprising: determining, via the processor, that a vehicle will cross a lane line or turn based on a measured steering angle value that is within a value range stored in a memory, wherein the vehicle includes the processor, the memory, and the turn signal source; and activating, via the processor, the turn signal source based on the determination that a vehicle will cross a lane line or turn.

An example includes a storage device having stored therein a set of processor executable instructions which, when executed by an electronic processing system, cause the electronic processing system to: determine a path of travel of a first vehicle relative to a lane line based on a first set of data received from an image capture device of the first vehicle; determine that a second vehicle is present within a predetermined distance from the first vehicle based on a second set of data received from a reflective wave detector; activate a turn signal source of the first vehicle when (a) the first vehicle has a travel path and a steering angle such that the first vehicle will cross the lane line or effect a turn, and (b) the second vehicle is present within the predetermined distance from the first vehicle.

An example includes an apparatus for automatic turn signal source activation, the apparatus comprising: a vehicle including a processor, a camera, a steering angle sensor, and a turn signal source, wherein the processor is programmed to determine when the vehicle is going to turn or leave a lane based on data from at least one of the camera or the steering angle sensor, wherein the processor is programmed to activate the turn signal source when the processor determines that the vehicle is going to turn or leave the lane.

An example includes an apparatus for automatic turn signal source activation, the apparatus comprising: a first vehicle including a processor, a camera, a steering angle sensor, one or more ultrasonic sensors, a radar, and a turn signal source, wherein the processor is programmed to determine when the first vehicle is going to turn or leave a lane based on data from at least one of the camera or the steering angle sensor, wherein the processor is programmed to determine an approximate location of a second vehicle relative to the first vehicle based on data from at least one of the ultrasonic sensor or the radar, wherein the processor is programmed to activate the turn signal source when the processor determines that the first vehicle is going to turn or leave the lane in proximity of the second vehicle.

An example includes an apparatus for automatic turn signal activation, the apparatus comprising: a vehicle including a processor, a memory, a steering angle sensor, and a turn signal source, wherein the memory stores a value range of steering angles, wherein the steering angle sensor is configured to output a steering angle value when the vehicle is in motion, wherein the processor is programmed to determine that the vehicle will leave a lane line or effect a turn when the steering angle value is within the value range stored in memory, wherein the processor is programmed to activate the turn signal source based on the determination that the vehicle will leave a lane line or effect a turn.

These and other examples and/or aspects of the invention(s) are discussed in greater detail below with reference to the accompanying drawings.

Generally, this disclosure discloses a technology for automatically activating a turn signal source of a first vehicle when the first vehicle will imminently leave its current lane by either crossing over a lane line or effecting a turn with or without a second vehicle being in proximity of the first vehicle or with or without a bystander being in proximity of the first vehicle. For example, such proximity can be within <NUM> (<NUM> feet) of the first vehicle, within <NUM> (<NUM> feet) of the first vehicle, within <NUM> (<NUM> feet) of the first vehicle, or other distances from the first vehicle. This automatic activation may occur when the first vehicle processes a plurality of data from a plurality of devices on the first vehicle to determine a trajectory of the first vehicle and to determine whether the first vehicle will cross the lane line or effect a turn without manual signal activation. If it is computationally determined that the first vehicle is leaving a lane or making a turn, then the first vehicle will activate its turn signal source.

Alternatively, the automatic activation may occur when the first vehicle processes a plurality of data from a plurality of devices on the first vehicle to determine a trajectory of the first vehicle and to determine whether the first vehicle will cross the lane line or effect a turn without manual signal activation. Further, the first vehicle processes the data to determine if there are one or more surrounding objects/vehicles that would benefit from this automatic activation. If so, then the turn signal source will be activated.

<FIG> shows a schematic diagram of an exemplary embodiment of a vehicle according to this disclosure. A vehicle <NUM> includes (at least one of each) a chassis, a power source, a drive source, a set of wheels <NUM>, a processor <NUM>, a memory <NUM>, an ultrasonic sensor <NUM>, a radar <NUM>, a camera <NUM>, a transceiver <NUM>, a steering angle sensor <NUM>, and a turn signal source <NUM>. The vehicle <NUM> can be a land vehicle, whether manned or unmanned, whether nonautonomous, semi-autonomous, or fully autonomous, such as a car/automobile, a sports utility vehicle (SUV), a van, a minivan, a limousine, a bus, a truck, a trailer, a tank, a tractor, a motorcycle, a bicycle, a heavy equipment vehicle, or others. Note that the vehicle <NUM> can be front wheel driven, rear wheel driven, four wheel driven, or all wheel driven. Turning can be effected via the front wheels, the rear wheels, or both, for vehicles with wheels. Tracked vehicles effect turns by means of differential driving of the tracks. For example, the vehicle <NUM> can be a Tesla Corporation Model S ® (or any other Tesla Corporation model) equipped with Tesla Autopilot (enhanced Autopilot) driver assist functionality and having a Hardware <NUM> component set (November <NUM>). In some embodiments, the vehicle may be equipped with a forward looking infrared camera (FLIR), which may communicate with the processor <NUM>, as well.

The chassis securely hosts the power source, the drive source, and the set of wheels <NUM>. The power source includes a battery, which is preferably rechargeable. The drive source preferably includes an electric motor, whether brushed or brushless. However, an internal combustion engine is contemplated within the scope of the invention, in which case the power source includes a fuel tank hosted via the chassis and coupled to the internal combustion engine. The power source is coupled to the drive source such that the drive source powered thereby. The set of wheels <NUM> includes at least one wheel, which may include an inflatable tire, which may include a run-flat tire. The set of wheels <NUM> is driven via the drive source.

The processor <NUM> is a hardware processor, such as a single core or a multicore processor. For example, the processor <NUM> comprises a central processing unit (CPU), which can comprise a plurality of cores for parallel/concurrent independent processing. In some embodiments, the processor <NUM> includes a graphics processing unit (GPU). The processor <NUM> is powered via the power source and is coupled to the chassis.

The memory <NUM> is in communication with the processor <NUM>, such as in any known wired, wireless, or waveguide manner. The memory <NUM> comprises a computer-readable storage medium, which can be non-transitory. The storage medium stores a plurality of computer-readable instructions for execution via the processor <NUM>. The instructions instruct the processor <NUM> to facilitate performance of a method for automated turn signal activation, as disclosed herein. For example, the instructions can include an operating system of the vehicle or an application to run on the operating system of the vehicle. For example, the processor <NUM> and the memory <NUM> can enable various file or data input/output operations, whether synchronous or asynchronous, including any of the following: reading, writing, editing, modifying, deleting, updating, searching, selecting, merging, sorting, encrypting, de-duplicating, or others. The memory <NUM> can comprise at least one of a volatile memory unit, such as random access memory (RAM) unit, or a non-volatile memory unit, such as an electrically addressed memory unit or a mechanically addressed memory unit. For example, the electrically addressed memory comprises a flash memory unit. For example, the mechanically addressed memory unit comprises a hard disk drive. The memory <NUM> can comprise a storage medium, such as at least one of a data repository, a data mart, or a data store. For example, the storage medium can comprise a database, including distributed, such as a relational database, a non-relational database, an in-memory database, or other suitable databases, which can store data and allow access to such data via a storage controller, whether directly and/or indirectly, whether in a raw state, a formatted state, an organized stated, or any other accessible state. The memory <NUM> can comprise any type of storage, such as a primary storage, a secondary storage, a tertiary storage, an off-line storage, a volatile storage, a non-volatile storage, a semiconductor storage, a magnetic storage, an optical storage, a flash storage, a hard disk drive storage, a floppy disk drive, a magnetic tape, or other suitable data storage medium. The memory <NUM> is powered via the power source and is coupled to the chassis.

The ultrasonic sensor <NUM> is in communication with the processor <NUM>, such as in any known wired, wireless, or waveguide manner. The ultrasonic sensor <NUM> includes a transducer which converts an electrical signal to an ultrasound wave for output, such as via a transmitter or a transceiver, and which converts a reflected ultrasound wave into an electrical signal for input, such as via a receiver or a transceiver. The ultrasonic sensor <NUM> evaluates an attribute of a target via interpreting a sound echo from the sound wave reflected from the target. Such interpretation may include measuring a time interval between sending the sound wave and receiving the echo to determine a distance to the target. The ultrasonic sensor <NUM> is preferably powered via the power source and coupled to the chassis. In a preferred embodiment, there are multiple ultrasonic sensors <NUM>.

The radar <NUM> is in communication with the processor <NUM>, such as in any known wired, wireless, or waveguide manner. The radar <NUM> includes a transmitter producing an electromagnetic wave such as in a radio or microwave spectrum, a transmitting antenna, a receiving antenna, a receiver, and a processor (which may be the same as the processor <NUM>) to determine a property of a target. The same antenna may be used for transmitting and receiving as is common in the art. The transmitter antenna radiates a radio wave (pulsed or continuous) from the transmitter to reflect off the target and return to the receiver via the receiving antenna, giving information to the processor about the target's location, speed, angle, and other characteristics. The processor may be programmed to apply digital signal processing (DSP), machine learning and other relevant techniques, such as via using code stored in the memory <NUM>, that are capable of extracting useful information from various noise levels. In some embodiments, the radar <NUM> includes lidar, which employs ultraviolet, visible, or near infrared light from lasers in addition to, or as an alternative to, the radio wave. The radar <NUM> is preferably powered via the power source and coupled to the chassis.

The camera <NUM> is in communication with the processor <NUM>, such as in any known wired, wireless, or waveguide manner. The camera <NUM> includes an image capture device or optical instrument for capturing or recording images, which may be stored locally, whether temporarily or permanently, transmitted to another location, or both. The camera <NUM> may capture images to enable the processor <NUM> to perform various image processing techniques, such as compression, image and video analysis, telemetry, or others. For example, image and video analysis can comprise object recognition, object tracking, any known computer vision or machine vision analytics, or other analysis. The images may be individual still photographs or sequences of images constituting videos. The camera <NUM> can comprise an image sensor, such as a semiconductor charge-coupled device (CCD) or an active pixel sensor in a complementary metal-oxide-semiconductor (CMOS) or an N-type metal-oxide-semiconductor (NMOS), and a lens, such a rectilinear lens, a concave lens, a convex lens, a wide-angle lens, a fish-eye lens, or any other lens. The camera <NUM> can be analog or digital. The camera <NUM> can comprise any focal length, such as wide angle or standard. The camera <NUM> can comprise a flash illumination output device. The camera <NUM> can comprise an infrared illumination output device. The camera <NUM> is preferably powered via the power source and coupled to the chassis.

The transceiver <NUM> is in communication with the processor, such as in any known wired, wireless, or waveguide manner. The transceiver <NUM> includes a transmitter and a receiver configured for wireless network communication, such as over a satellite network, a vehicle-to-vehicle (V2V) network, a cellular network, or any other wireless network such as to receive an update, such as over-the-air, to the set of instructions stored in the memory <NUM>. The transceiver <NUM> is preferably powered via the power source and coupled to the chassis. The transceiver <NUM> can also enable Global Positioning System (GPS) geolocation identification (or other geolocating system). Vehicle <NUM> may contain multiple transceivers that configured for wireless communication on one the same or different networks. For example, when the vehicle <NUM> includes a plurality of transceivers <NUM>, some of the transceivers can operate on cellular networks and others on satellite networks. Further, transceiver <NUM> may communicate with a transceiver of another vehicle over a Vehicular Ad Hoc Networks (VANET).

The steering angle sensor <NUM> is in communication with the processor <NUM>, such as in any known wired, wireless, or waveguide manner. The steering angle sensor <NUM> may sense a steering wheel position angle (between a front of the vehicle <NUM> and a steered wheel <NUM> direction) and a rate of turn. The steering angle sensor <NUM> can be analog or digital. The steering angle sensor <NUM> is powered via the power source and is coupled to the chassis.

The turn signal source <NUM>, preferably is a turn signal light voltage source and is in communication with the processor <NUM>, such as in any known wired, wireless, or waveguide manner. The turn signal source <NUM>, which is also known as a direction indicator/signal or a blinker, includes a bulb in a lamp mounted near a left and right front and rear corners of the vehicle <NUM>, such as at the chassis, including on lateral sides/side mirrors/fenders/tail of the vehicle <NUM>, that is activated in order to notify others in proximity, whether pedestrians or vehicles, that the vehicle <NUM> may turn or change lanes toward that respective side. The turn signal source <NUM> can be manually activated by a driver of the vehicle or can be automatically activated, as disclosed herein. The turn signal source <NUM> preferably generates a voltage source suitable for the bulb, which can be a light emitting diode (LED) bulb, a fluorescent bulb, an incandescent bulb, a halogen bulb, or any other bulb type held in a turn signal lamp. The turn signal lamp can emit light in any color, such as red, yellow, white, orange, or green, although the turn signal lamp may be covered by a colored transparent/translucent pane, such as plastic or glass, to vary color, as needed, such as when the bulb emits white or yellow light. The turn signal light can be fixed in color/illumination intensity/repetition frequency (flashing) or vary in color/illumination intensity/repetition frequency (flashing), such as based on various factors, as known to skilled artisans. For example, the turn signal light can preferably blink on and off at a rate of from about <NUM> blinks per minute to about <NUM> blinks per minute. Note that opposing blinkers, whether on same side or opposing side of the vehicle, can blink at different rates. The turn signal source <NUM> can operate when the vehicle is moving forward or backward. The turn signal source <NUM> is powered via the power source and is coupled to the chassis. <FIG> shows a schematic diagram of an exemplary embodiment of a vehicle equipped with a plurality of devices monitoring a plurality of zones according to this disclosure. The vehicle <NUM> is equipped with one or more ultrasonic sensors <NUM>, the radar <NUM>, the transceiver <NUM>, the steering angle sensor <NUM>, the turn signal source <NUM> and a set of cameras <NUM>, including a narrow forward camera 112a, a main forward camera 112b, a wide forward camera 112c, a forward looking side camera 112d, a rearward looking side camera 112e, a rear view camera 112f, and a side repeater camera <NUM>, each of which is in communication with the processor <NUM>, powered via the power source, and operates based on the instructions stored in the memory <NUM>. These instructions instruct the processor <NUM> to interface with one or more ultrasonic sensors <NUM>, the radar <NUM>, the transceiver <NUM>, the steering angle sensor <NUM>, the turn signal source <NUM>, the narrow forward camera 112a, the main forward camera 112b, the wide forward camera 112c, the forward looking side camera 112d, the rearward looking side camera 112e, the rear view camera 112f, and the side repeater camera <NUM> in order to facilitate performance of a method for automated turn signal activation, as disclosed herein. Note that this configuration provides a <NUM> degree monitoring zone around the vehicle <NUM>. Note also that various maximum distances listed in <FIG> are illustrative and can be adjusted higher or lower, based on need, such as via using other devices, device types, or adjusting range, whether manually or automatically, including in real-time. For example, if the vehicle <NUM> is a Tesla Model S (or any other Tesla model) equipped with Tesla Autopilot (enhanced Autopilot) driver assist functionality and having Hardware <NUM> component set (November <NUM>), then such sensors are components of the Hardware <NUM> component set.

<FIG> shows a schematic diagram of an exemplary embodiment of a vehicle equipped with a plurality of forward cameras monitoring a plurality of zones and an exemplary embodiment of a forward camera module according to this disclosure. As shown in <FIG>, the narrow forward camera 112a, the main forward camera 112b, and the wide forward camera 112c capture various frontal fields of view, with the narrow forward camera 112a providing a focused, long range view of distant features, which is useful in high-speed operation. The narrow forward camera 112a, the main forward camera 112b, and the wide forward camera 112c are mounted behind a windshield of the vehicle <NUM> in order to provide broad visibility in front of the vehicle <NUM> and focused long-range detection of distant objects. In some embodiments, the narrow forward camera 112a, the main forward camera 112b, or the wide forward camera 112c are mounted in other locations, including on top of the windshield (any portion thereof) or by frontal lights or frontal fender, including bumper, or underside or on roof (any portion thereof) of the vehicle <NUM>.

The main forward camera 112b provides a field of view wider than the narrow forward camera 112a, but narrower than the wide forward camera 112c. The main forward camera 112b covers a broad spectrum of use cases for computer and machine vision when the vehicle <NUM> is standing still or moving. The wide forward camera 112c provides a field of view wider than the main forward camera 112b. The wide forward camera 112c can include a <NUM> degree fisheye lens to capture a traffic light, an obstacle cutting into a path of travel of the vehicle <NUM> or at close range, whether when the vehicle is standing still or moving. The wide forward camera 112c can be useful in urban, low speed maneuvering of the vehicle <NUM>.

As shown in <FIG>, a frontal camera module of the vehicle <NUM> hosts the cameras 112a, b, c, in proximity of a frontal windshield of the vehicle <NUM>. Although the frontal camera module is shown above a frontal mirror, the frontal camera module can be positioned below or lateral to the mirror or on a frontal dashboard or external a cabin of the vehicle <NUM>, such as via being positioned on a hood or a roof or a pillar of the vehicle. Note that although the frontal camera module is depicted as an elongated and fastenable camera module, the frontal camera module can be embodied in other configurations
<FIG> show a schematic diagram of an exemplary embodiment of a vehicle equipped with a plurality of side cameras monitoring a plurality of zones and an exemplary embodiment of a side repeater camera according to this disclosure. exemplary embodiment. As shown in <FIG>, the forward looking side camera 112d can provide a redundancy/backup functionality via looking for vehicles/objects that can unexpectedly enter a lane in which the vehicle <NUM> is traveling and provide additional safety when entering an intersection with limited visibility. When the vehicle <NUM> includes a B-pillar, then the vehicle <NUM> may host the forward looking side camera 112d in the B-pillar.

As shown in <FIG>, the side repeater camera <NUM> is installed into a panel of the vehicle <NUM>, such as over a wheel well. The side repeater camera <NUM> can provide a set of image data, such as a data feed, to the processor <NUM>, where the set of image data can include a forward camera view, a lateral camera view, or a rearward camera view, which can help in object recognition, such as nearby vehicles or pedestrians. Also, <FIG>, shows the side repeater camera <NUM> prior to installation into the vehicle <NUM>. Note that although the camera <NUM> is depicted as an elongated and fastenable camera module, the camera <NUM> can be embodied in other configurations.

<FIG> show a schematic diagram of an exemplary embodiment of a vehicle equipped with a plurality of rear cameras monitoring a plurality of zones and an exemplary embodiment of a rear camera module according to this disclosureexemplary embodiment. As shown in <FIG>, the rearward looking side camera 112e can be installed near front or rear wheel wells of the vehicle <NUM> and can monitor rear blind spots on both sides of the vehicle <NUM>, which is important for safely changing lanes and merging into traffic. In some embodiments, the rearward looking side camera 112e is installed in the B-pillar of the vehicle. In some embodiments, the rear view camera 112f can aid in monitoring the rear blind spots.

As shown in <FIG>, a module hosting the camera 112f is shown as installed in a trunk of the vehicle <NUM>. However, other locations of installation are possible, such as a bumper of the vehicle <NUM> or back pillar of the vehicle <NUM> or a back windshield of the vehicle <NUM> or a roof of the vehicle <NUM>. Note that although the camera 112f is depicted as a cuboid and fastenable camera module, the camera 112f can be embodied in other configurations.

<FIG> shows a schematic diagram of an exemplary embodiment of a vehicle equipped with a radar monitoring a zone according to this disclosure. The radar <NUM> may be mounted to a front portion of the vehicle, such as on or behind a hood of the vehicle, a grill of the vehicle, the chassis, a fender of the vehicle, an underside of the vehicle or any other portion of the vehicle. The radar <NUM> preferably employs radio waves with a wavelength that passes through fog, dust, rain, snow, and under other vehicles. The radar <NUM> communicates with the processor <NUM> to aid detecting and responding to forward objects, whether pedestrians or vehicles.

<FIG> shows a schematic diagram of an exemplary embodiment of a vehicle equipped with a plurality of ultrasonic sensors monitoring a plurality of zones according to this disclosure. The ultrasonic sensors <NUM> can be mounted to any portion of the vehicle <NUM>, such as in order to provide <NUM> degree coverage. The ultrasonic sensors <NUM> can effectively double monitoring range with improved sensitivity using ultrasonic waves, which may be based on suitably coded electrical signals. The ultrasonic sensors <NUM> are useful for detecting nearby vehicles or pedestrians, especially when the vehicles or the pedestrians encroach on a lane on which the vehicle is standing or traveling. The ultrasonic sensors <NUM> can provide parking guidance to the processor <NUM>, as known to skilled artisans.

<FIG>, <FIG> show an exploded view of an exemplary embodiment of a B-pillar of a vehicle, where the B-pillar hosts a camera, an exemplary embodiment of a lateral perspective view of a B-pillar hosting a camera, and an exemplary embodiment of a camera according to this disclosureexemplary embodiment. <FIG> show a plurality of schematic diagrams of an exemplary embodiment of a B-pillar of a vehicle, where the B-pillar hosts a camera according to this disclosure.

As shown in <FIG>, the vehicle <NUM> includes a B-pillar, which is shown as 200a in exploded view and 200b in assembled back view. The B-pillar includes a camera module <NUM>, a composite carrier <NUM>, a flocking <NUM>, a sealing gasket <NUM>, a ceramic frit, a tempered glass <NUM>, a pressure sensitive adhesive (PSA) tape <NUM>, a vent patch <NUM>, a sealing foam <NUM>, a trim clip <NUM>, a noise-vibration-harshness (NVH) foam <NUM>, and a camera screw <NUM>. The flocking <NUM> is installed onto a well within the carrier <NUM>. The camera module <NUM> is secured to the carrier <NUM> via the screw <NUM> such that the camera module <NUM> captures through the flocking <NUM>. The frit <NUM> is positioned between the glass <NUM> between the glass <NUM> and the gasket <NUM>. The gasket <NUM> is positioned between the frit <NUM> and the carrier <NUM>. The gasket <NUM> seals the flocking <NUM>. The PSA tape secures the frit <NUM> to the carrier <NUM>. The patch <NUM> coupled to the carrier <NUM> in proximity of the camera module <NUM>. The foam <NUM> is coupled to the carrier <NUM>, while enclosing the camera module <NUM> and the patch <NUM>. The clip <NUM> is mounted onto the carrier <NUM>. The foam <NUM> is coupled to the carrier <NUM>, enclosing the clip <NUM>. As shown in <FIG>, the glass <NUM> extends over the camera <NUM> in the B-pillar 200b in an assembled front view 200c. Further, <FIG> shows the camera <NUM> from a frontal/lateral view 200d. Note that although the camera <NUM> is depicted as an elongated and fastenable camera module, the camera <NUM> can be embodied in other configurations. Although <FIG> schematically show various illustrative sizes, any suitable sizes can be used, as known to skilled artisans.

<FIG> shows a schematic diagram of an exemplary embodiment of a first vehicle <NUM> following a second vehicle <NUM> on a road <NUM> with a lane line according to this disclosure. The first vehicle <NUM> and the second vehicle <NUM> are traveling on the road <NUM> having a solid lane line on a right side of the vehicle <NUM> and a broken line on a left side of the vehicle <NUM>. The vehicle <NUM> is in front of vehicle <NUM>. As such, the vehicle <NUM> may detect and monitor the vehicle <NUM>, such as via the processor, <NUM>, using one or more ultrasonic sensor <NUM>, the radar <NUM>, and the set of cameras <NUM>, as disclosed herein.

<FIG> shows a schematic diagram of an exemplary embodiment of a first vehicle <NUM> travelling on a road <NUM> with a plurality of second vehicles <NUM>, where the road <NUM> includes a plurality of parallel lanes and lane lines according to this disclosure. The vehicle <NUM> is traveling on the road <NUM> and is able to detect and monitor various vehicles <NUM>, whether positioned frontal to the vehicle <NUM> or rearward of the vehicle <NUM>.

<FIG> shows a flowchart of an example of a first method for automated turn signal activation according to this disclosure. The vehicle <NUM> performs a method <NUM> based on the processor <NUM> executing the set of instructions stored on the memory <NUM> and communicably interfacing, whether serially or in parallel, with the ultrasonic sensor(s) <NUM>, the radar <NUM>, the transceiver <NUM>, the steering angle sensor <NUM>, the turn signal source <NUM> and the set of cameras <NUM>, as disclosed herein. The method <NUM> includes an input block <NUM>, a plurality of decision blocks <NUM>, <NUM>, <NUM>, and an action blocks <NUM> and an inaction or action block <NUM>. For example, the method <NUM> can be performed while the driver actively drives the vehicle <NUM>.

The input block <NUM> includes a first input <NUM>, a second input <NUM>, and a set of third inputs <NUM>. The first input <NUM> receives data, such as a data feed or a data stream, from one or more of cameras 112a-f of the set of cameras <NUM> as a first data source. The second input <NUM> receives data, such as a data feed or a data stream, from the steering angle sensor <NUM> as a second data source. The third input <NUM> receives data, such as a data feed or a data stream, from one or more ultrasonic sensors <NUM> as a third data source, and data, such as a data feed or a data stream, from the radar <NUM> as a fourth data source. Each of the first input <NUM>, the second input <NUM>, and the third input <NUM>, including any sub-feeds, are managed via the processor <NUM> and can receive input data serially or in parallel with each other, whether synchronously or asynchronously with each other, whether in phase or out-of-phase.

In block <NUM>, the processor <NUM> determines whether the vehicle <NUM> is about to cross a lane line, such on the road <NUM>, based on the first input <NUM>. For example, based on the data from the set of cameras <NUM> as a first data source, the processor <NUM> can perform various algorithms, such as objection recognition/tracking/analytics, and determine if the vehicle <NUM> is on a trajectory to cross the lane line, such as based on lane lines positioning with respect to the vehicle or based on gaps (change in size, color, frequency, orientation) between the lane lines as is known in the art. If the processor <NUM> determines that the vehicle <NUM> is not about to cross the lane line, then the process <NUM> continues onto block <NUM>, where the processor <NUM> does not activate the turn signal source <NUM>. Otherwise, if the processor <NUM> determines that the vehicle <NUM> is about to cross the lane line, then the process <NUM> moves onto block <NUM>.

In block <NUM>, the processor <NUM> determines whether the driver of the vehicle <NUM> is applying a steering action, based on the second input <NUM>. For example, based on data from the steering angle sensor <NUM> as a second data source, the processor <NUM> can determine if the driver is trying to steer the vehicle <NUM> to turn or switch lanes, such as if a steering angle is within a certain predefined range of values or above/below a certain predefined threshold value stored in the memory <NUM>. If the processor <NUM> determines that the driver of the vehicle <NUM> is not applying steering action (vehicle moving forward rectilinearly), then the process <NUM> continues onto block <NUM>, where the processor <NUM> does not activate the turn signal source <NUM>. Otherwise, if the processor <NUM> determines that the driver of the vehicle <NUM> is applying a corrective action (changing a travel path from rectilinear to diagonal), then the process <NUM> moves onto block <NUM>.

In block <NUM>, the processor <NUM> determines if another vehicle, such as the vehicle <NUM> of <FIG>, is present in vicinity of the vehicle <NUM> based on the third input <NUM>, such as via being within a predetermined distance of the vehicle <NUM> or within a specific side, position, or orientation of the vehicle <NUM>. For example, such vicinity can be within <NUM> (<NUM> feet) of the first vehicle, within <NUM> (<NUM> feet) of the first vehicle, within <NUM> (<NUM> feet) feet of the first vehicle, or other distances from the first vehicle. In this case, there is an obvious safety benefit to activating the turn signal source to alert vehicle <NUM>. For example, based on the data from the set of cameras <NUM> as a first data source, the data from the radar <NUM> as a third data source, and the data from the ultrasonic sensor <NUM> as a fourth data source, the processor <NUM> can determine if the vehicle <NUM> is present in vicinity of the vehicle <NUM>, such as via image-based objection recognition/tracking/analytics and processing signals from the captured sound/radio waves bouncing off the vehicle <NUM>. This presence in vicinity of the vehicle <NUM> can be based on various parameters with respect to the vehicle <NUM>, whether statically defined or determined in real-time/on-fly. For example, some of such parameters may be based on or include a set of threshold values or a range of values stored in the memory <NUM>, where this data can reflect a predefined distance, orientation, anticipated travel path, or other movement-based characteristic of the vehicle <NUM> with respect to the vehicle <NUM> or vice versa.

If the processor <NUM> determines that the vehicle <NUM> is within vicinity of the vehicle <NUM>, such as noted above, then the processor <NUM> determines whether the turn signal source should be activated so as to improve the safety of vehicle <NUM> and vehicle <NUM>. Such determination may be based on various parameters with respect to the vehicle <NUM>, whether statically defined or determined in real-time/on-fly. For example, some of such parameters may be based on/include a set of threshold values or a range of values stored in the memory <NUM>, where this data can reflect a set of criteria being applied to a predefined distance, orientation, anticipated travel path, or other movement-based characteristic of the vehicle <NUM> with respect to the vehicle <NUM> or vice versa. As such, if the vehicle <NUM> would benefit from the turn signal source <NUM> being activated, then the process <NUM> continues onto the block <NUM>, where the processor <NUM> activates the turn signal source <NUM>. Otherwise, the processor <NUM> does not activate the turn signal source <NUM>. Note that in block <NUM>, the processor <NUM> may activate the turn signal source <NUM> immediately before the vehicle <NUM> crosses the lane line, as the vehicle <NUM> is crossing the lane line, or immediately after the vehicle <NUM> crossed the lane line. In some examples, before, during, or after the processor <NUM> determines that the turn signal source <NUM> is/will be activated or not activated, such as for turning or lane switching, then the processor <NUM> can send a signal informative of this action or inaction, such as via the transceiver <NUM>, to another vehicle, such over a V2V network, such as the vehicle <NUM>. In some examples, this signal can be sent to a mobile device, whether handheld or wearable, in proximity of the vehicle <NUM>, such as when operated by a pedestrian to warn or notify, such as visually, vibrationally, or audibly, the pedestrian of the vehicle <NUM> being in proximity thereof. This signal can be sent over a short range wireless network, such as Bluetooth. In some examples, the vehicle <NUM> can react to this signal, such as via slowing down, changing travel path, turning, forwarding the signal to others, activating a device on the vehicle <NUM>, such as a turn signal source, or other actions or inactions,.

In one implementation of the process <NUM>, in response to determining, via the processor <NUM>, based on the data from the first data source (e.g., camera), that the vehicle <NUM> is about to cross the lane line on road <NUM>: the processor <NUM> determines, based on data from the second data source (e.g., steering angle sensor), that the driver of the vehicle <NUM> is applying a corrective steering action to the vehicle <NUM>. Likewise, in response to determining, via the processor <NUM>, based on data from the first data source (e.g., camera), the data from the third data source (e.g., radar), and the data from the fourth data source (e.g., ultrasonic sensor(s)), that the vehicle <NUM> in vicinity of the vehicle <NUM> would benefit from the turn signal source <NUM> being activated: the processor <NUM> activates the turn signal source <NUM> as the vehicle <NUM> crosses the lane line in vicinity of the vehicle <NUM>. Note that if the processor <NUM> identifies a conflict between the information derived from first data source (at least one camera <NUM>) and the information derived from at least one of the second data source (steering angle sensor <NUM>), the third data source (radar <NUM>), or the fourth data source (ultrasonic sensor(s) <NUM>), then the processor <NUM> may prioritize the first data source over the at least one of the second data source, the third data source, or the fourth data source. Likewise, if the processor <NUM> identifies a conflict between the third data source (radar <NUM>) and at least one of the first data source (at least one camera <NUM>), the second data source (steering angle sensor <NUM>), or the fourth data source (ultrasonic sensor(s) <NUM>), then the processor <NUM> may prioritize the third data source over the at least one of the first data source, the second data source, or the fourth data source.

While <FIG> and the accompanying description show the analysis of the first, second, third and fourth data sources in a particular order, it should be noted that these data sources can be analyzed in any order and one or more data sources could be analyzed concurrently. Further, in the case that the processor identifies a conflict between the information derived from any of the different data sources, the information derived from any of the data sources may be prioritized over the information derived from any other data source to resolve that conflict.

<FIG> shows a flowchart of an exemplary embodiment of a second method for automated turn signal activation according to this disclosure. The vehicle <NUM> performs a method <NUM> based on the processor <NUM> executing the set of instructions stored on the memory <NUM> and communicably interfacing, whether serially or in parallel, with the ultrasonic sensor <NUM>, the radar <NUM>, the transceiver <NUM>, the steering angle sensor <NUM>, the turn signal source <NUM>, and the set of cameras <NUM>, as disclosed herein. The method <NUM> includes an input block <NUM>, a plurality of decision blocks <NUM>, <NUM>, <NUM>, and a plurality of action blocks <NUM>, <NUM>, and a plurality of inaction or action blocks <NUM>, <NUM>. For example, the method <NUM> can be performed while the driver at least semi-actively or passively drives the vehicle <NUM>.

The input block <NUM> includes a first input <NUM>, a second input <NUM>, and a set of third inputs <NUM>. The first input <NUM> receives data, such as a data feed or a data stream, from a first data source, such as one or more of the set of cameras 112a-f. The second input <NUM> receives data, such as a data feed or a data stream, from a second data source, such as the steering angle sensor <NUM>. The third input <NUM> receives the data, such as a data feed or a data stream, from a third data source, such as the ultrasonic sensor(s) <NUM>, and data, such as a data feed or a data stream, from a fourth data source, such as the radar <NUM>. Each of the first input <NUM>, the second input <NUM>, and the third input <NUM>, including any sub-feeds, are managed via the processor <NUM> and can receive input data serially or in parallel with each other, whether synchronously or asynchronously with each other, whether in phase or out-of-phase.

In block <NUM>, the processor <NUM> determines whether the vehicle <NUM> is about to cross a lane line, such on the road <NUM>, based on the first input <NUM>. For example, based on data from the first data source including one or more of the set of cameras <NUM>, the processor <NUM> can perform various algorithms, such as object recognition/tracking/analytics, and determine if the vehicle <NUM> is on a trajectory to cross the lane line, such as based on lane lines positioning with respect to the vehicle or based on gaps (change in size, color, frequency, orientation) between the lane lines as is known in the art. If the processor <NUM> determines that the vehicle <NUM> is about to cross the lane line, then the process <NUM> continues onto block <NUM>, where the processor <NUM> activates the turn signal source <NUM>. Otherwise, if the processor <NUM> determines that the vehicle <NUM> is not about to cross the lane line, then the process <NUM> moves onto block <NUM>.

In block <NUM>, the processor <NUM> determines whether a steering angle value, as received from the second input <NUM>, such as from the steering angle sensor <NUM>, satisfies a first threshold value, such as via being equal to or greater than the first threshold value stored in the memory <NUM>. This would indicate that the vehicle <NUM> or the driver of the vehicle <NUM> intends to cross a lane line of the road <NUM>. If the processor <NUM> determines that the first threshold value is not satisfied, such as via the steering angle value being less than the first threshold value (not greater than the first threshold value), then the process <NUM> continues onto block <NUM>, where the processor <NUM> does not activate the turn signal source <NUM>. Otherwise, the process <NUM> continues onto block <NUM>.

In block <NUM>, the processor <NUM> determines whether the steering angle value satisfies a second threshold value, such as being equal to or less than the second threshold value stored in the memory <NUM>, and whether another vehicle, such as the vehicle <NUM> of <FIG>, in vicinity of the vehicle <NUM>, based on the first input <NUM>, would benefit from the turn signal source <NUM> being activated. For example, based on the data from the set of cameras <NUM> as the first data source, the data from the radar <NUM> as the third data source, and the data from the ultrasonic sensor <NUM> as the fourth data source, the processor <NUM> can determine if the vehicle <NUM> is present in vicinity of the vehicle <NUM>, such as via image-based objection recognition/tracking/analytics and processing signals from the captured sound/radio waves bouncing off the vehicle <NUM>, such as via being within a predetermined distance of the vehicle <NUM> or within a specific side, position, or orientation of the vehicle <NUM>. This presence in vicinity of the vehicle <NUM> can be based on various parameters with respect to the vehicle <NUM>, whether statically defined or determined in real-time/on-fly. For example, some of such parameters may be based on or include a set of threshold values or a range of values stored in the memory <NUM>, where this data can reflect a predefined distance, orientation, anticipated travel path, or other movement-based characteristic of the vehicle <NUM> with respect to the vehicle <NUM> or vice versa. For example, such vicinity can be within <NUM> (<NUM> feet) of the first vehicle, within <NUM> (<NUM> feet) of the first vehicle, within <NUM> (<NUM> feet) feet of the first vehicle, or other distances from the first vehicle. If the processor <NUM> determines that the vehicle <NUM> is within vicinity of the vehicle <NUM>, such as noted above, then the processor <NUM> determines whether the turn signal source should be activated so as to improve the safety of vehicle <NUM> and vehicle <NUM>. Such determination may be based on various parameters with respect to the vehicle <NUM>, whether statically defined or determined in real-time/on-fly. For example, some of such parameters may be based on or include a set of threshold values or a range of values stored in the memory <NUM>, where this data can reflect a set of criteria being applied to a predefined distance, orientation, anticipated travel path, or other movement-based characteristic of the vehicle <NUM> with respect to the vehicle <NUM> or vice versa. As such, if the vehicle <NUM> would not benefit from the turn signal source <NUM> being activated, then the process <NUM> continues onto the block <NUM>, where the processor <NUM> does not activate the turn signal source <NUM>. Otherwise, the process <NUM> continues onto the block <NUM>, where the processor <NUM> activates the turn signal source <NUM>. Note that in any or all blocks <NUM>, <NUM>, the processor <NUM> may activate the turn signal source <NUM> immediately before the vehicle <NUM> crosses the lane line, as the vehicle <NUM> is crossing the lane line, or immediately after the vehicle <NUM> crossed the lane line.

In one implementation of the process <NUM>, in response to determining, via the processor <NUM>, that the steering angle value is within a value range (inclusively between the first threshold value and the second threshold value) stored in the memory <NUM>: the processor <NUM> determines that the vehicle <NUM> will cross a lane line on the road <NUM> and that the vehicle <NUM> in vicinity of the vehicle <NUM> would benefit from the turn signal source <NUM> being activated, the processor <NUM> activates the turn signal source <NUM> as the vehicle <NUM> crosses the lane line in vicinity of the vehicle <NUM>. Note that determining whether the vehicle <NUM> is in vicinity of the vehicle <NUM> and would benefit from the turn signal source <NUM> being activated via the processor <NUM> is based on receiving data from one or more of camera 112a-f as a first data source, the data from the radar <NUM> as a third data source, and the data from the ultrasonic sensor <NUM> as a fourth data source. Note that if the processor <NUM> identifies a conflict between the data from the first data source (camera <NUM>) and at least one of the data from the third data source (radar <NUM>) or the fourth data source (ultrasonic sensor(s) <NUM>), then the processor <NUM> prioritizes the data from the first data source over the at least one of the data from the second data source or the data from the fourth data source. Likewise, if the processor <NUM> identifies a conflict between the data from the third data source (radar <NUM>) and at least one of the data from the first data source (camera <NUM>) or the fourth data source (ultrasonic sensor(s) <NUM>), then the processor <NUM> prioritizes the third data source over the at least one of the first data source or the fourth data source.

In some examples, a storage device, such as the memory <NUM>, having stored therein a set of processor executable instructions which, when executed by an electronic processing system, such as the processor <NUM>, cause the electronic processing system to: determine a path of travel of the first vehicle <NUM> relative to a lane line based on a first set of data, such as the data from the first data source, received from an image capture device, such as the cameras 112a-f, of the vehicle <NUM>; determine that the vehicle <NUM> is present within a predetermined distance from the vehicle <NUM> based on a second set of data, such as the second data source or the third data source, received from a reflective wave detector, such as the radar <NUM> or the ultrasonic sensor(s) <NUM>; and activate a turn signal source, such as the turn signal source <NUM>, of the vehicle <NUM> when (a) the vehicle <NUM> has a travel path and a steering angle such that the vehicle <NUM> will cross the lane line or turn, and (b) the vehicle <NUM> is present within the predetermined distance from the vehicle <NUM>.

In some embodiments, the vehicle <NUM> can be configured for automatically activating the turn signal source <NUM> when the vehicle <NUM> is leaving its current lane, about to make a turn onto another roadway/street/lot, during such turn, or immediately after such turn. For example, this functionality can be enabled via the processor <NUM> determining a geolocation of the vehicle <NUM>, such as via the transceiver <NUM> communicating with a GPS satellite, and determining if the vehicle <NUM> is approaching or about to turn onto another roadway/street/lot or being automatically guided to make such turn. If the processor <NUM> determines that such action is safe, such as via the cameras <NUM>, the radar <NUM>, and the ultrasonic sensor <NUM> ensuring no vehicles/pedestrians in turning path of the vehicle <NUM>, or if the processor <NUM> determines that the steering sensor angle value satisfies a threshold indicative of such action about to be made, then the processor <NUM> can activate the turn signal source <NUM>. This functionality can be augmented via the processor <NUM> communicating with a street light, such as via the transceiver <NUM>, and activating the turn signal source <NUM> upon the street light showing green or as the steering angle value satisfies a threshold indicative of such action about to be made in vicinity of the street light. Note that the processor <NUM> can distinguish between lane switches and turns based on the steering angle value, such as the steering angle value being within different value ranges for the lane switches and for the turns.

As mentioned above, leaving a lane can also include using an off-ramp or lane when exiting an highway, or a merging lane or on-ramp when entering a highway.

Algorithms for detecting lane changes and turning and the like are well known and incorporated in various driver-assisted and/or autonomous-driving vehicle systems, such as those used in the Tesla Corporation Model S ® (or any other Tesla Corporation model) that incorporates the Tesla Autopilot (enhanced Autopilot) driver assist functionality and has a Hardware <NUM> component set (November <NUM>). For example, a lane change can be detected via a machine vision algorithm, performed via the processor <NUM>, which analyzes, in real-time, a set of imagery, from the cameras 112a-c, depicting a set of road markings or a road border of a road on which the vehicle <NUM> is traveling. Key enhancements in accordance with this disclosure include the autopilot cameras, and perhaps other information, such as, GPS information, to determine vehicle trajectory and whether it will cross lane line without manual signal activation as well as use of the steering angle sensor inputs as well as autopilot proximity sensors such as the ultrasonic sensors and radar feedback to detect the presence or absence of other vehicles that might benefit from receipt of a turn indication in accordance and the algorithms disclosed herein.

<FIG> shows a flowchart of an example of a third method for automated turn signal activation according to this disclosure. The vehicle <NUM> performs a method <NUM> based on the processor <NUM> executing the set of instructions stored on the memory <NUM> and communicably interfacing, whether serially or in parallel, with the ultrasonic sensor(s) <NUM>, the radar <NUM>, the transceiver <NUM>, the steering angle sensor <NUM>, the turn signal source <NUM>, and the set of cameras <NUM>, as disclosed herein. The method <NUM> includes an input block <NUM>, a decision block <NUM>, an action block <NUM>, and an inaction block <NUM>. For example, the method <NUM> can be performed while the driver at least semi-actively or passively drives the vehicle <NUM>.

The input block <NUM> includes an input from one or more data sources, whether local to or remote from the vehicle <NUM>. The data sources can include any data source disclosed herein, such as a camera, a steering angle sensor, a radar, an ultrasonic sensor, a FLIR camera, or others.

In block <NUM>, the processor <NUM> determines whether the vehicle <NUM> is about to cross a lane line or effect a turn. This determination can occur via any methodologies disclosed herein. For example, the processor <NUM> can determine whether the vehicle <NUM> is about to cross a lane line or effect a turn based on a set of data received from the cameras 112a-c, where the processor <NUM> performs various algorithms, such as object recognition/tracking/analytics, and determines if the vehicle <NUM> is on a trajectory to cross the lane line or turn, such as based on lane lines positioning with respect to the vehicle <NUM> or based on gaps (change in size, color, frequency, orientation) between the lane lines as is known in the art. Likewise, for example, the processor <NUM> can determine whether the vehicle <NUM> is about to cross a lane line or effect a turn based on a set of data received from the steering angle sensor <NUM>, where the processor <NUM> determines whether a steering angle value, as received from the steering angle sensor <NUM>, satisfies a threshold value or is within a predetermined value range, as stored via the memory <NUM>. As such, if the processor <NUM> determines that the vehicle <NUM> is about to cross a lane line or effect a turn, then the processor <NUM> activates the turn signal source <NUM>, as per block <NUM>. Otherwise, the processor <NUM> does not activate the turn signal source <NUM>, as per block <NUM>.

Computer readable program instructions for carrying out operations of this disclosure may be assembler instructions, instruction-set-architecture (ISA) instructions, machine instructions, machine dependent instructions, microcode, firmware instructions, statesetting data, or either source code or object code written in any combination of one or more programming languages, including an object oriented programming language such as Smalltalk, C++ or the like, and conventional procedural programming languages, such as the "C" programming language or similar programming languages. A code segment or machineexecutable instructions may represent a procedure, a function, a subprogram, a program, a routine, a subroutine, a module, a software package, a class, or any combination of instructions, data structures, or program statements. A code segment may be coupled to another code segment or a hardware circuit by passing and/or receiving information, data, arguments, parameters, or memory contents. Information, arguments, parameters, data, etc. may be passed, forwarded, or transmitted via any suitable means including memory sharing, message passing, token passing, network transmission, among others. In some embodiments, electronic circuitry including, for example, programmable logic circuitry, field-programmable gate arrays (FPGA), or programmable logic arrays (PLA) may execute the computer readable program instructions by utilizing state information of the computer readable program instructions to personalize the electronic circuitry, in order to perform aspects of this disclosure.

Aspects of this disclosure are described herein with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the disclosure. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of this disclosure.

The flowchart and block diagrams in the Figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of this disclosure.

Words such as "then," "next," etc. are not intended to limit the order of the steps; these words are simply used to guide the reader through the description of the methods. Although process flow diagrams may describe the operations as a sequential process, many of the operations can be performed in parallel or concurrently. A process may correspond to a method, a function, a procedure, a subroutine, a subprogram, etc. When a process corresponds to a function, its termination may correspond to a return of the function to the calling function or the main function.

Features or functionality described with respect to certain exemplary embodiments may be combined and sub-combined in and/or with various other exemplary embodiments. Also, different aspects and/or elements of exemplary embodiments, as disclosed herein, may be combined and sub-combined in a similar manner as well. Further, some exemplary embodiments, whether individually and/or collectively, may be components of a larger system, wherein other procedures may take precedence over and/or otherwise modify their application. Additionally, a number of steps may be required before, after, and/or concurrently with exemplary embodiments, as disclosed herein. Note that any and/or all methods and/or processes, at least as disclosed herein, can be at least partially performed via at least one entity or actor in any manner.

The terminology used herein can imply direct or indirect, full or partial, temporary or permanent, action or inaction. For example, when an element is referred to as being "on," "connected" or "coupled" to another element, then the element can be directly on, connected or coupled to the other element and/or intervening elements can be present, including indirect and/or direct variants.

Although the terms first, second, etc. can be used herein to describe various elements, components, regions, layers and/or sections, these elements, components, regions, layers and/or sections should not necessarily be limited by such terms. Thus, a first element, component, region, layer, or section discussed below could be termed a second element, component, region, layer, or section.

Also, as used herein, the term "a" and/or "an" shall mean "one or more," even though the phrase "one or more" is also used herein. The terms "comprises," "includes" and/or "comprising," "including" when used in this specification, specify the presence of stated features, integers, steps, operations, elements, and/or components, but do not preclude the presence and/or addition of one or more other features, integers, steps, operations, elements, components, and/or groups thereof. Furthermore, when this disclosure states herein that something is "based on" something else, then such statement refers to a basis which may be based on one or more other things as well. In other words, unless expressly indicated otherwise, as used herein "based on" inclusively means "based at least in part on" or "based at least partially on.

As used herein, the term "or" is intended to mean an inclusive "or" rather than an exclusive "or.

Claim 1:
A method (<NUM>) of automatically activating a turn signal source (<NUM>) in a first vehicle (<NUM>), the method (<NUM>) comprising:
determining, via a processor (<NUM>), whether the first vehicle (<NUM>) is going to turn or leave a lane based on data from a first data source of the first vehicle (<NUM>), wherein the first data source includes an image capture device (<NUM>);
in response to determining that the first vehicle (<NUM>) is not going to turn or leave the lane, determining, via the processor (<NUM>), whether a steering angle value received from a second data source of the first vehicle (<NUM>) is equal to or greater than a first threshold value;
in response to determining that the steering angle value is equal to or greater than the first threshold value, determining, via the processor (<NUM>), an approximate location of a second vehicle (<NUM>) relative to the first vehicle (<NUM>) based on at least one of data from a third data source of the first vehicle (<NUM>) and data from a fourth data source of the first vehicle (<NUM>) and determining, via the processor (<NUM>), whether the second vehicle (<NUM>) is within a predetermined distance of the first vehicle (<NUM>) and determining, via the processor (<NUM>), whether the steering angle value is equal to or less than a second threshold value; and
in response to determining that the second vehicle (<NUM>) is within the predetermined distance of the first vehicle (<NUM>) and that the steering angle value is equal to or less than the second threshold value or in response to determining that the first vehicle (<NUM>) is going to turn or leave the lane, activating, via the processor (<NUM>), the turn signal source (<NUM>) of the first vehicle (<NUM>).