Minimizing false collision warnings

By introducing a route learning system into the vehicle collision prevention system and replacing fake alarm geotagging with historical path data, the false alarm problem is solved and the user experience and the accuracy of the collision prevention system is improved.

CN109808684BActive Publication Date: 2025-04-11FORD GLOBAL TECH LLC
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN201811296511.7
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Priority Date
2017-11-15
Filing Date
2018-11-01
Publication Date
2025-04-11
Estimated Expiration
2038-11-01

AI Technical Summary

Technical Problem

Existing vehicle collision prevention systems are prone to false alarms when detecting potential collisions, causing drivers to be unnecessarily warned and affecting the user experience.

Method used

A route learning system is designed to respond to the matching of the current location with the historical location through an on-board computer, and retrieve false alarm geotagging including historical path data from memory, and replace the current predicted path when the current predicted path does not match the historical path to reduce false warnings.

Benefits of technology

Effectively reduce false warnings to drivers, improve user experience and customer satisfaction, and improve the accuracy of the collision prevention system by using historical path data.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN109808684B_ABST
    Figure CN109808684B_ABST
Patent Text Reader

Abstract

The present disclosure provides "minimizing false collision avoidance warnings", describes a route learning system for a vehicle and a method of using the system. The method includes: in response to determining that a current location matches a historical location, retrieving a false alarm geotag including historical path data from a memory; and based on determining that a current predicted path does not match the historical path, replacing the current predicted path with the historical path to reduce false warnings to a driver of a host vehicle.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of vehicle collisions, and more particularly to the field of collision avoidance warnings. Background Art

[0002] Modern vehicle collision avoidance systems can detect a potential vehicle collision and provide an alert to the vehicle driver. In this way, the driver can have time to respond and avoid the collision. Examples of such alerts include illuminated symbols on the vehicle dashboard, audible alarms, etc. Summary of the invention

[0003] A route learning system for a vehicle is described. According to one illustrative example, the system may include an onboard computer programmed to perform a method. The method may include: at a computer in a host vehicle: in response to determining that a current location matches a historical location, retrieving a false alarm geotag including historical path data from a memory; and based on determining that a current predicted path does not match the historical path, replacing the current predicted path with the historical path to reduce false warnings to a driver of the vehicle.

[0004] According to at least one of the above examples, the geographic marker is pre-stored in memory at the computer in response to: receiving a collision avoidance alert; and determining that the actual path of the vehicle is different from the predicted path at the time after receiving the alert.

[0005] According to at least one of the above examples, the alert is based at least in part on receiving a vehicle-to-vehicle communication from a target vehicle.

[0006] According to at least one of the above examples, the actual path is determined using multiple path points.

[0007] According to at least one of the above examples, each of the path points includes a corresponding pair of x-coordinates and y-coordinates, wherein the corresponding z-axis coordinate of each corresponding path point is ignored when determining the actual path.

[0008] According to at least one of the above examples, further comprising: storing the first waypoint, then storing the second waypoint after the first interval, and then storing the third waypoint after the second interval.

[0009] According to at least one of the above examples, determining that the current predicted path does not match the historical path further includes comparing a predicted radius or a predicted curvature of the current predicted path with a historical radius or a corresponding historical curvature of the historical path.

[0010] According to at least one of the above examples, it also includes: determining that the current predicted path does not match the historical path by comparing the predicted radius or predicted curvature of the current predicted path with the historical radius or the corresponding historical curvature of the historical path.

[0011] According to at least one of the above examples, it also includes: determining a range to the nearest starting point location from multiple false alarm geographic markers, and based on the determined range, delaying the comparison of the current location with the historical location data in the multiple ones.

[0012] According to at least one of the above examples, it also includes: replacing the current predicted path at a false alarm detection system of the computer; and sending the replaced current predicted path from the false alarm detection system to a collision avoidance system in the computer that generates an alarm.

[0013] According to another illustrative example, a route learning system includes: a computer in a host vehicle, the computer including a processor and a memory, the memory storing instructions executable by the processor, the instructions including: in response to determining that a current location matches a historical location, retrieving a false alarm geo-tag including historical path data from the memory; and based on determining that a current predicted path does not match the historical path, replacing the current predicted path with the historical path to reduce false warnings to a driver of the vehicle.

[0014] According to at least one of the above examples, the geographic marker is pre-stored in the memory in response to instructions for: receiving a collision avoidance alert; and determining that the actual path of the vehicle is different from the predicted path at that time after receiving the alert.

[0015] According to at least one example above, the alert is based at least in part on receiving a vehicle-to-vehicle communication from a target vehicle.

[0016] According to at least one of the above examples, the actual path is determined using multiple path points.

[0017] According to at least one of the above examples, each of the path points includes a corresponding pair of x-coordinates and y-coordinates, wherein the corresponding z-axis coordinate of each corresponding path point is ignored when determining the actual path.

[0018] According to at least one of the above examples, the instructions further include storing the first waypoint, then storing the second waypoint after the first interval, and then storing the third waypoint after the second interval.

[0019] According to at least one of the above examples, the instructions for determining that the current predicted path does not match the historical path also include instructions for: comparing the predicted radius or predicted curvature of the current predicted path with the historical radius of the historical path or its corresponding historical curvature.

[0020] According to at least one of the above examples, the instructions for determining that the current predicted path does not match the historical path also include instructions for: comparing the predicted center of a circle including the predicted radius or the predicted curvature with the historical center position of a circle associated with the historical radius or its corresponding historical curvature.

[0021] According to at least one of the above examples, it also includes: determining a range to the nearest starting point location from multiple false alarm geographic markers, and based on the determined range, delaying the comparison of the current location with the historical location data in the multiple ones.

[0022] According to at least one of the above examples, the instructions further include: replacing the current predicted path at a false alarm detection system of the computer; and sending the replaced current predicted path from the false alarm detection system to a collision avoidance system in the computer that generates an alarm.

[0023] According to at least one example, a computer programmed to perform any combination of the above examples is disclosed.

[0024] According to at least one example, a computer programmed to perform any combination of the above method examples is disclosed.

[0025] According to at least one example, a computer program product is disclosed, the computer program product comprising a computer-readable medium storing instructions executable by a computer processor, wherein the instructions include any combination of the above instruction examples.

[0026] According to at least one example, a computer program product is disclosed, the computer program product comprising a computer-readable medium storing instructions executable by a computer processor, wherein the instructions include any combination of the above method examples. BRIEF DESCRIPTION OF THE DRAWINGS

[0027] Figure 1 is a schematic diagram illustrating an exemplary target vehicle and route learning system for a host vehicle.

[0028] Figures 2 to 3 A schematic diagram illustrating exemplary scenarios that may generate false collision avoidance alerts.

[0029] Figure 4is a flow chart illustrating a process that may be performed by a host vehicle's computer to minimize false warnings to its driver.

[0030] Figure 5 A software architecture diagram of a route learning system including a collision avoidance system and a false alarm detection system is shown.

[0031] Figure 6 is a schematic diagram of the false alarm geotag.

[0032] Figure 7 is a schematic diagram of a plurality of waypoints of a host vehicle along an exemplary segment of a road. DETAILED DESCRIPTION

[0033] Turning now to the drawings, in which like elements are shown using the same or similar numbers, a route learning system 10 for a host vehicle 12 is shown. The route learning system 10 includes a computer 14, which may include a collision avoidance system 16 and a false alarm detection system 18. As will be explained in more detail below, the collision avoidance system 16 may include, among other things, a set of iteratively executed computer-implemented instructions (e.g., an algorithm) that predicts a current path (of the host vehicle 12) and thereafter may use the prediction information to determine that a collision is likely to occur, is imminent, etc. based on a number of factors. The algorithm may be configured to provide a warning to a user (e.g., a driver) of the vehicle 12 based on the probability of a collision. Additionally, in some implementations, the warning may be coupled with an autonomous vehicle operation (e.g., autonomous braking, autonomous steering, etc.), such as a computer-controlled action taken on behalf of the driver. However, in the present disclosure, the false alarm detection system 18 may determine that at least some of the warnings generated by the collision avoidance system 16 are false (e.g., false positives), and thereby refrain from providing corresponding warnings to the driver. As will be explained in more detail below, when the vehicle 12 approaches or passes (again) a location that previously generated a false alarm (at the collision avoidance system 16), the false alarm detection system 18 can use the historical data to determine whether to modify the current predicted path of the vehicle 12, for example, replacing the current predicted path data (e.g., determined by the collision avoidance system 16) with the historical path data (e.g., associated with the previously determined false alarm). In this way, the route learning system 10 may not generate another false warning to the driver at the same location and / or based on similar circumstances. As a result, fewer false warnings may be issued to the driver, thereby improving the user's experience.

[0034] Figure 1An illustrative host vehicle 12 is shown that includes the route learning system 10. The vehicle 12 is shown as a passenger car; however, the vehicle 12 may also be a truck, a sport utility vehicle (SUV), a recreational vehicle (RV), a bus, a train, an airplane, etc. that includes the route learning system 10. In at least some examples, the host vehicle 12 may be operated in one or more autonomous driver assistance modes, in which the vehicle 12 controls steering, acceleration, and braking in certain situations without human interaction; however, this is not required.

[0035] The route learning system 10 includes a computer 14 and a position determination unit 20. The computer 14 is shown as a single computing device that includes a collision avoidance system 16, a false alarm detection system 18, a processor 22, a memory 24, and a telematics device 26. According to at least one example, the computer 14 is a vehicle-to-vehicle (V2V) communication module (e.g., it uses the telematics device 26 to communicate with other vehicles); however, this is just one example. For example, the computer 14 may alternatively be a body control module (BCM), an autonomous driving mode module, etc. The components 16 to 18, 22 to 26 may include hardware, software instructions, or a combination thereof (and, for example, each component of the computer 14 will be discussed in turn). In addition, although the systems 16 to 18, the processor 22, the memory 24, and the telematics device 26 are shown as being within a single device (e.g., the computer 14), it should be understood that these components may be divided according to hardware, software, or a combination thereof in other examples.

[0036] The collision avoidance system 16 may include circuitry, software algorithms, or a combination thereof, configured to determine whether a collision event is likely (or more likely than a threshold) to occur and provide instructions to one or more other vehicle systems, a vehicle driver, etc. for helping to avoid the collision. According to at least one aspect of the collision avoidance system 16, the system 16 is programmed to calculate a current predicted path for the host vehicle 12, e.g., more specifically, a planned short-term path for the vehicle 12. In this way, the system 16 can determine whether another object is likely to intersect the current predicted path and therefore determine whether a collision event is likely to occur. As used herein, the current predicted path is the computer-determined route that the computer 14 predicts the vehicle 12 will travel in the next two (2) seconds to five (5) seconds, the next 50 meters to 300 meters, or a combination thereof. According to one example (and as Figure 5), using a set of path prediction instructions 28 that can be stored in the memory 24 and can be executed by the processor 22; however, this is only an example. The computer-determined route can be based on a variety of input criteria (e.g., to the computer 14), including but not limited to one or more of the following: vehicle speed parameters (of the host vehicle 12 and / or the target vehicle 30), vehicle heading parameters (of the host vehicle 12 and / or the target vehicle 30), vehicle steering angle parameters (of the host vehicle 12 and / or the target vehicle 30), positioning data relative to the host vehicle 12, map data from the position determination unit 20, imaging data of the target vehicle 30, imaging data of the road 32, its lane markings, and other infrastructure (e.g., signs, curbs, road shoulders, etc.), vehicle-to-infrastructure (V2I) communications, etc. As will be explained in more detail below, information about the target vehicle 30 can be obtained using one or more onboard sensors on the host vehicle 12 and / or through V2V communications.

[0037] By way of illustration, and not intended to be limiting, the collision avoidance system 16 may use current vehicle speed, current vehicle heading, map data received from the unit 20, V2V data (speed, heading, position) from a target vehicle 30 (indicating that the vehicle 30 is in the blind spot of the vehicle 12), lack of indication of a turn signal at the host vehicle 12, etc., to determine that, for example, the current predicted path of the vehicle 12 is straight and within a pair of currently occupied lane markings on a straight section of the road 32. The collision avoidance system 16 may use some of the same parameters, data, etc. to determine the current predicted path of the host vehicle 12 when the vehicle is on a curved or angled section of the road 32. For example, one way to determine the current predicted path data on a curved road is described below.

[0038] When the collision avoidance system 16 determines a collision event, and before the system 16 issues a warning to the driver, the system 16 may provide a collision avoidance alert as an output to the false alarm detection system 18 so that the system 18 can verify the alert. As used herein, a collision avoidance warning is any suitable notification to the driver of the host vehicle 12 that instructs the driver to take certain actions to avoid a collision, and in at least some examples, the collision avoidance warning includes any suitable computer-controlled vehicle action (e.g., braking, steering, etc.) that at least temporarily assists the driver in avoiding the collision. Non-limiting examples of collision avoidance warnings include visual notifications, auditory notifications, tactile notifications, computer-controlled vehicle actions, or combinations thereof. As used herein, a false warning is a type of collision avoidance warning that is generated based on inaccurately sensed data (e.g., by vehicle sensors) or based on inaccurately interpreted data at the computer 14 (e.g., the received data may be inaccurately quantized and / or authenticated).

[0039] The false alarm detection system 18 may include circuitry, software algorithms, or a combination thereof configured to determine whether a collision avoidance alarm is true or false, and to generate and store a false alarm geotag when the alarm is determined to be false. Similar to the collision avoidance system 16, the false alarm detection system 18 (in at least one example) may include a set of computer-implemented instructions (e.g., stored in the memory 24) that are executable by the processor 22. As used herein, a false alarm geotag is an electronically stored data structure that includes a stored geographic location (of a previous false alarm) and corresponding actual path data (of the host vehicle 12), wherein the actual path data includes data related to the route that the host vehicle 12 is currently traveling (which may be different from the current predicted route). Moreover, as used herein, the actual path (previously driven by the host vehicle 12) has a duration of less than or equal to five (5) seconds, less than or equal to 300 meters, or a combination thereof.

[0040] Figure 6 , where the illustrated geo-tag 40 may include a unique identifier 42, a historical false alarm location 44 (e.g., a stored geographic location of a previous false alarm), a historical center location 46 of a circle defining a portion of the actual path (discussed below), a historical radius 48 of the circle (also discussed below), a historical predicted path at the time of the previous false alarm 49 (as used herein, a historical predicted path is the current predicted path at that time (e.g., as described below in Figure 4 4 (discussed in block 415 of ), which in one example is defined by a sequence of a number of points spaced apart from one another) and / or optional historical curvature data 50 (corresponding to radius 48 and also discussed below). As used herein, a historical false alarm location (or simply a historical location) is a geographic identifier of a location where a false alarm was previously determined. Also, as used herein, historical path data includes data identifying an actual path taken by the vehicle 12, wherein the actual path is associated with the same false alarm.

[0041] Thus, by sending a collision avoidance alert to the false alarm detection system 18 via the collision avoidance system 16, the system 18 may generate a new false alarm geotag and store it in the memory 24. Then, when the vehicle 12 is approaching a geographic location associated with a previously generated geotag, the false alarm detection system 18 may identify that the collision avoidance alert matches one of the plurality of false alarm geotags (e.g., by matching the current host vehicle location to the historical false alarm locations 44). As will be explained below, the false alarm detection system 18 may overwrite the current predicted path (at the collision avoidance system 16) with the historical path data stored in the corresponding geotag, e.g., so that the collision avoidance system 16 does not generate a false warning to the driver of the vehicle 12.

[0042] Processor 22 may be any type of device capable of processing electronic instructions, non-limiting examples of which include a microprocessor, a microcontroller or controller, an application specific integrated circuit (ASIC), etc., to name a few. In general, computer 14 may be programmed to execute digitally stored instructions, which may be stored in memory 24, that enable computer 14 to, among other things: retrieve from memory a false alarm geotag including historical path data of the vehicle extending from the historical location in response to determining that the vehicle's current location and / or path matches its historical location and / or path; and, among other things (as discussed below), replace the current predicted path with the historical path to reduce false warnings to the driver of the vehicle based on determining that the vehicle's current predicted path does not match the historical path. These are just a few examples of instructions; other instructions exist.

[0043] Memory 24 may include any non-transitory computer-usable or readable medium, which may include one or more storage devices or articles. Exemplary non-transitory computer-usable storage devices include conventional hard disks, solid-state memory, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), and any other volatile or non-volatile media. Non-volatile media include, for example, optical or magnetic disks and other permanent memory, and volatile media may also include, for example, dynamic random access memory (DRAM). These storage devices are non-limiting examples; for example, there are other forms of computer-readable media, and they include magnetic media, compact disk ROM (CD-ROM), digital video disk (DVD), other optical media, any suitable memory chip or box, or any other medium that can be read by a computer. As discussed above, memory 24 may store one or more computer program products, which may be embodied as software, firmware, or other programming instructions that can be executed by processor 22.

[0044] The telematics device 26 may be any suitable telematics computing device configured to wirelessly communicate with other electronic devices including the target vehicle 30. For example, the device 26 may include a wireless chipset, an antenna, and other electronic components (all not shown) to facilitate dedicated short-range communications (DSRC), for example, for vehicle-to-vehicle (V2V) communications. Of course, this is just one example; other examples exist. For example, the telematics device 26 may communicate via one or more of DSRC, long-range wireless communications (e.g., cellular links using LTE, GSM, CDMA, etc.), short-range wireless communications (e.g., Bluetooth, Wi-Fi, Wi-Fi Direct, etc.). In addition, the telematics device 26 may communicate via any suitable wireless infrastructure 60 (e.g., supporting vehicle-to-infrastructure (V2I) communications, etc.). According to at least one example, the host vehicle 12 receives speed parameters, heading parameters, steering angle parameters, etc. from the target vehicle 30 via the telematics device 26; and the collision avoidance system 16 uses the target vehicle information when determining whether to generate a collision avoidance alert.

[0045] Turning now to the position determination unit 20, the unit may include any suitable means for determining the position or position data of the host vehicle 12 relative to a reference frame. Non-limiting examples of the unit 20 include a global positioning system (GPS), a global navigation satellite system (GLONASS), and the like. In at least one example, the position determination unit 20 provides GPS coordinate data. It should be understood that the position data from the unit 20 is described below as Cartesian coordinate data; however, this is only one example. Other examples exist.

[0046] Figure 1 Also shown is a network connection 70 in the host vehicle 12 that facilitates, among other things, wired or wireless communications between the computer 14, the position determination unit 20, and / or other onboard electronic devices. In at least one example, the connection 70 can enable communication between the collision avoidance system 16 and the false alarm detection system 18 (e.g., particularly where these systems are partitioned into hardware). According to at least one example, the connection 70 includes one or more of the following: a controller area network (CAN) bus, an Ethernet local interconnect network (LIN), a fiber optic connection, etc. Other examples also exist. For example, alternatively or in combination with, for example, a CAN bus, the connection 70 can include one or more discrete wired or wireless connections.

[0047] As discussed above, Figure 1A communication network 60 is also shown, which may include any suitable wired or wireless communication infrastructure (e.g., including wired cable and telephone infrastructure, vehicle-to-infrastructure (V2I), short-range wireless communication infrastructure, medium-range and / or long-range wireless infrastructure, etc.). The network 60 may include a terrestrial communication network that may enable connection to a public switched telephone network (PSTN), such as for providing hardwired telephones, packet-switched data communications, Internet infrastructure, etc. Moreover, the network 60 may include any suitable wireless communication network, which may include a satellite communication architecture and / or may include cellular telephone communications over a wide geographic area. Therefore, in at least one example, the network 60 includes any suitable cellular infrastructure that may include eNodeBs, service gateways, base station transceivers, etc. In addition, the network 60 may use any suitable existing or future cellular technology (e.g., including LTE, CDMA, GSM, etc.). V2I, terrestrial communication networks, and wireless communication networks are generally known in the art and are not further described herein. In some examples, via the network 60, the vehicles 12, 30 may communicate with each other, and the host vehicle 12 may receive other relevant information that may be used by the collision avoidance system 16 to determine whether to issue a collision avoidance alarm.

[0048] Now turn to Figures 2 to 3 , these diagrams show exemplary scenarios in which the route learning system 10 may generate a collision avoidance alert. Figure 2 In the embodiment of the present invention, the collision avoidance system 16 of the host vehicle 12 may generate a false collision avoidance alert regarding the target vehicle 30 based on multiple criteria indicating that the target vehicle 30 may collide with the vehicle 12. For example, the host vehicle 12 may be passing under a ramp 72 below a bridge 74 (which the target vehicle 30 is about to pass). As the vehicle 30 approaches the bridge 74 and before the vehicle 12 travels down the ramp 72, the collision avoidance system 16 may determine a potential interference and collision based on, among other things: the position, speed, and heading data of the host vehicle 12; V2V data from the target vehicle 30 (e.g., the position, speed, heading, etc. of the vehicle 30); imaging data (e.g., line of sight (LOS) data) from onboard sensors of the vehicle 12; map data (e.g., which may not indicate that one road passes under another road); combinations thereof; and the like.

[0049] According to another example, Figure 3As shown, the system 16 may generate a collision avoidance alert based on similar or similar conditions at an intersection, which may also be determined to be false (by the false alert detection system 18). For example, the host vehicle 12 may be traveling along the road 32 to the driver's daily workplace, and the target vehicle 30 may be traveling on the intersecting road 76. Using similar or identical data (received and / or determined at the vehicle 12), the collision avoidance system 16 may determine a potential collision with the vehicle 30 (e.g., at the intersection 78). However, before reaching the intersection 78, the vehicle 12 may turn onto the road 80, which is no longer in a potential collision with the vehicle 30.

[0050] Figures 2 to 3 Several possible scenarios are shown in which a false alarm may be generated by the collision avoidance system 16. Other scenarios exist. In addition, in some cases (e.g., such as Figure 3 ), may need to occur repeatedly (e.g., over the course of days, weeks, etc., as the driver repeatedly turns onto road 80 to go to work) before computer 14 inhibits false warnings to the driver.

[0051] Now turn to Figure 4 , the flowchart illustrates a process 400 for minimizing false warnings to the driver of the host vehicle 12. More specifically, the process 400 illustrates two processes that may be performed simultaneously in some cases, namely a first process 400A including boxes 405 to 435 and a second process 400B including boxes 405, 435, and 450 to 470.

[0052] Process 400A begins at box 405 (labeled "Start"). In box 405, the host vehicle ignition is on. In at least one example, the host vehicle 12 moves along a road 32. This road implementation is just one example; non-road and other path implementations also exist.

[0053] In block 410, following block 405, the processor 22 of the computer 14 determines whether a collision avoidance alert has been generated. As discussed above, in some examples, the collision avoidance system 16 may repeatedly determine whether the current predicted path is likely to cause a collision with the target vehicle 30 (e.g., based on the current or future position of the target vehicle 30). Alternatively, in other cases, there may be a trigger or other circumstance that causes the collision avoidance system 16 to determine the current predicted path. Regardless, when the processor 22 determines that a collision avoidance alert has been generated, the process 400 proceeds to block 415, and when an alert has not been generated, the process loops back and repeats block 405.

[0054] In block 415 , the false alarm detection system 18 determines the current predicted path of the host vehicle 12 . Figure 5, the collision avoidance system 16 may provide an indication of the current predicted path to the false alarm detection system 18. In other examples, the current predicted path may be determined within the system 18 or alternatively elsewhere.

[0055] According to one example, block 415 includes determining a starting point (SP) of the current predicted path. 预测 ), the predicted radius of the current predicted path (R 预测 ) and the center point of the current predicted path (C 预测 ), where the radius (R 预测 ) and the center point (C 预测 ) defines a circle, and the current predicted path includes a curved portion of the circle, and wherein the starting point (SP 预测 ) defines the location on the circle where the current predicted path begins. In some cases, the starting point (SP 预测 ) may be the current location of the vehicle 12 (GPS coordinate data received from the position determination unit 20 via the network connection 70).

[0056] In subsequent block 420 , the computer 14 may determine the actual path of the host vehicle (eg, immediately following the alert), for example, so that the actual path may be compared to the current predicted path (determined in block 415 ). Figure 7 An exemplary technique for determining an actual path is shown. According to at least one example, the actual path data and the current predicted path data include vector quantities (eg, determining the path in blocks 415 and 420 also includes determining an indication of direction).

[0057] Figure 7 Several waypoints P1(x1, y1), P2(x2, y2), P3(x3, y3) are shown along the road 32 through which the host vehicle 12 passes (in box 420) (for clarity, the vehicles 12 and / or 30 are hidden in this view). As discussed below, three such points P1-P3 may be used to calculate the center C and radius R1 (e.g., and / or the curvature (R1) of the road 32). -1 )). According to one example, the path points P1, P2, P3 are Cartesian coordinates (e.g., derived at the computer 14 from GPS data received at the position determination unit 20). According to one example, the actual path is defined by the path point P1 (actual starting point), the radius R1, and the center point C. In other examples, alternatively or in addition to those cited above, the actual path may include other criteria, such as the curvature of the actual path, the linear length, and / or formulas defining different shapes of the actual path. Therefore, although in the following examples, the actual path is defined by two points (P1, C) and a radius (R1), there are other examples for defining the actual path.

[0058] According to one example, waypoints P1, P2, P3 are determined at predetermined intervals. For example, point P2 is determined after a first time interval after determining point P1 (e.g., after one (1) second), and point P3 is determined after a second time interval after determining point P2 (e.g., after one (1) second). The duration of 1 second is exemplary only; other durations are possible (e.g., including durations between 0.5 seconds and 3 seconds); additionally, in other examples, the durations of the first interval and the second interval may vary.

[0059] Therefore, according to the example shown, the radius R1 and the center point C can be calculated using the path points P1, P2, P3 and the following equations 1 to 6. Note: The chord a (at Figure 7 ) is defined by path points P1 and P2, and the chord b ( Figure 7 ) is defined by waypoints P2 and P3.

[0060] Equation 1

[0061] y a =m a (x–x1)+y1, where m a is line y a The slope of

[0062] Equation 2

[0063] y b =m b (x–x2)+y2, where m b is the slope of the y line b ,in

[0064] Equations 3 and 4 are derived from a geometric theorem that states that if a radius is perpendicular to the chord, then it bisects the chord and its arc (eg, here, arc P1-P2-P3 is the actual path of the host vehicle 12). Thus, Figure 7 As shown, the midpoint MP 1,2 Bisects the chord a, and the midpoint MP 2,3 Bisect chord b. Furthermore, equations 3 and 4 are based in part on a proof showing that when two lines intersect at a perpendicular angle, the slope of one line is the negative reciprocal of the other line.

[0065] Equation 3

[0066] The line y a 'Define the perpendicular bisector of the chord a (at the midpoint MP 1,2 ) and a line passing through a center point C of a circle 90 defined by radius R1, where the center point C can be defined by (X, Y).

[0067] Equation 4

[0068] The line y b 'Define the perpendicular bisector chord b (at the midpoint MP 2,3 ) and a line passing through the center point C of circle 90.

[0069] Since equations 3 and 4 intersect at the center point C, they can be set equal to each other and solved for X and Y. For example, equation 5 shows the formula for calculating X.

[0070] Equation 5

[0071]

[0072] The value of Y can be determined by substituting the value of X into either Equation 3 or 4 (e.g., and solving for y a ' or y b The radius R1 can be determined by using the distance formula (Equation 6) to determine the distance between any path point P1, P2, P3 and the center point C.

[0073] Equation 6 (eg, using waypoint P1 and center point C).

[0074]

[0075] The curvature K1 can be calculated using Equation 7 if desired (eg, where the curvature is defined as the inverse of the radius R1 ).

[0076] Equation 7

[0077]

[0078] It should be understood that the above equations are based on two-dimensional calculations (X, Y). In other examples, they can be based on three-dimensional calculations (X, Y, Z). In at least one example, the vertical axis (Z) coordinate is considered to be negligible; for example, because the actual path measured is less than or equal to 5 seconds (s) of driving, less than 300 meters (m) in length, etc. (for example, assuming that the altitude change is negligible within 5s or within 300m). Therefore, by basing the calculation on a two-dimensional reference system, the calculation time is improved, and the computing resources of the processor 22 are reserved for other tasks and calculations.

[0079] Thus, according to at least one example, the actual path includes the starting path point P1, the radius R1, and the center point C. After determining the actual path traveled by the host vehicle 12, process 400 ( Figure 4 ) can proceed to box 425.

[0080] In block 425, processor 22 may determine whether the actual path (block 420) matches the current predicted path (block 415). According to at least one example, the determination may be based on the current predicted path data (starting point SP). 预测 , radius R 预测 and the center point C 预测 ) matches the corresponding actual path data (P1, radius R1, and center point C). As used herein, data matching includes exact matching, as well as one data amount being within a threshold amount of another data amount. For example, a match may include a percentage difference less than a threshold value (e.g., The threshold THR RAD is a predetermined threshold), SP 预测 The GPS coordinates of P1 are within a predetermined proximity, and / or the GPS coordinates R 预测 and R1 are within a predetermined proximity.

[0081] According to at least one example of block 425, the computer may be programmed to determine the curvature difference based on the curvature difference being less than a predetermined threshold value (THR CURV ) to determine the match, as shown in Equation 8.

[0082] Equation 8

[0083] |k1–k 预测 | <THR CURV , where k 预测 is defined as the corresponding curvature of the current predicted path.

[0084] When the actual path of the host vehicle 12 does not match its current predicted path, the process 400A proceeds to block 430. When it does match, the process 400A may loop back and repeat block 405. For example, in the event that the actual predicted path and the current predicted path are the same and a collision avoidance alert is generated, the driver should be warned.

[0085] In block 430, in the event that the actual predicted path and the current predicted path are different, the warning issued to the driver may be a false notification (e.g., because the warning may be based on a predicted path that the vehicle 12 is not following). In block 430, the processor 22 of the computer 14 may store the false alarm data in the memory 24 in the form of a false alarm geotag. As discussed above (with respect to Figure 6), the geo-tag may include actual path data (e.g., the path actually followed by the vehicle 12), such as: an identifier 42, a historical false alarm location 44 (e.g., a starting point P1), a historical center point 46 (e.g., C), a historical radius 48 (e.g., R1), and a historical predicted path 49 (e.g., a number of points, such as points P1, P2, P3 in order (e.g., thereby defining a direction)). In this way, as discussed below, when the vehicle 12 approaches the historical false alarm location 44 in the future, the processor 22 can verify that the vehicle 12 is traveling along the same direction and path (as it did historically), and the processor 22 can then call back and utilize the geo-tag 40 to determine whether to avoid providing a false warning to the driver. At block 430 (at Figure 4 After the process 400A is completed (block 435, labeled "END"), it may loop back to block 405 and repeat one or more of the above blocks.

[0086] Process 400B also starts at block 405. Since block 405 has been previously discussed, it will not be re-described here. Process 400B may proceed from block 405 to block 450.

[0087] In block 450 , the computer 14 determines the current location of the host vehicle. As discussed above, in at least one example, the computer 14 receives GPS coordinate data from the location determination unit 20 (eg, via the network connection 70 ); likewise, other examples exist.

[0088] In subsequent block 455, the processor 22 determines whether the current location data matches any of the stored historical false alarm locations 44 of the false alarm geotags 40. When the current location data of the host vehicle 12 matches one of the historical false alarm locations 44, the process 400B proceeds to block 460. When it does not match, the process predicts that the path may loop back and repeat block 405. (Again, the match here may be within a threshold, as discussed above.)

[0089] In block 460 , the processor 22 may again determine the current predicted path of the host vehicle 12 . According to one example, this block may be the same as block 415 ; therefore, it will not be discussed again here. After block 460 , the process 400B proceeds to block 463 .

[0090] In block 463, the processor 22 may determine whether the current predicted path (block 460) matches the corresponding historical predicted path 49 (of the responsive geo-tag 40). This block may be used to determine that the vehicle 12 is not merely at the same (or relatively close) geo-tag location, but that the vehicle 12 is also traveling in the same direction (as when the geo-tag was generated). When the current predicted path matches the historical predicted path, the process 400B proceeds to block 465. Also, when the current predicted path does not match the historical predicted path (e.g., when the vehicle 12 is traveling in a direction different from the direction associated with the geo-tag 40), the process 400B proceeds to block 405.

[0091] In block 465, processor 22 determines whether the historical path (identified in block 455) stored within the identified geographic marker 40 matches the current predicted path (of block 460). Continuing with the above example, computer 14 may determine whether the historical center location 46 and the historical radius 48 (each of which corresponds to a corresponding historical false alarm location 44) match the center point C of the current predicted path (of block 460). 预测 and radius R 预测 to determine this situation. When they match, process 400B can loop back to box 405 because any alarm generated by the collision avoidance system 16 may not be false. Therefore, any alarm generated may result in a true collision avoidance warning to the driver, which is desired. However, when the current predicted path does not match the historical path associated with the historical false alarm location data 44, process 400B can proceed to box 470.

[0092] In block 470, the current predicted path (determined in block 460) may be replaced within the collision avoidance system 16 with the historical path of the corresponding geographic marker 40. For example, continuing again with the above example, the false alarm detection system 18 may replace the center point C of the current predicted path with the historical locations 46 and historical radii 48 (e.g., each of which corresponds to the historical false alarm locations 44 (determined in block 455) of the corresponding geographic marker 40). 预测 and radius R 预测 In this way, based on the updated current predicted path, the collision avoidance system 16 can generate a warning to the driver without generating a false alarm. Figure 2 , using process 400, the computer 14 may not incorrectly estimate the collision avoidance data and thereby determine that the host vehicle 12 (on the ramp 72) will collide with the target vehicle 30 (on the bridge 74). Figure 3, using process 400, the computer 14 may not incorrectly estimate the collision avoidance data and thereby determine that the host vehicle 12 will collide with the target vehicle 30 at the intersection 78. Therefore, at the false alarm detection system 18, by replacing the current predicted path data (with the historical path data from the geo-tag 40) and returning it to the collision avoidance system 16, the driver may experience fewer false warnings. This improves the user experience and increases customer satisfaction. After box 470, process 400B can end (435) or loop back to box 405 and repeat one or more of the above boxes.

[0093] There are other examples of process 400. For example, according to one implementation, the processor 22 does not resolve the geographic tag 40 (of memory 24) in box 455 unless the vehicle 12 is within a predetermined range of the historical starting point location (or historical center location). For example, the computer 14 may determine that the nearest starting point location is 100 miles away, and based on this determination, process 400B may not be performed for a period of time (e.g., assuming an average vehicle speed of 60 miles per hour, process 400B may not be performed for at least 1 hour because at an average of 60 miles per hour, the vehicle 12 cannot reach the starting point location faster than 1.67 hours). In this way, computing resources can be saved. Of course, the nearest starting point location of 100 miles is just an example. Other predetermined ranges may be used instead.

[0094] Thus, a route learning system for a vehicle has been described. The system includes a computer that determines false alarms and stores false alarm geotags based on the determination. Thereafter, the computer can determine (using the geotag determination) that the vehicle is passing through the same geographic location, and in response to the determination, the computer can reduce the activation of false warnings to the driver of the vehicle when the computer's current predicted path does not match the geotag's historical path data.

[0095] In general, the computing systems and / or devices described may employ any of a variety of computer operating systems, including but not limited to versions and / or types of: Ford Applications, AppLink / Smart Device Link middleware, Automotive operating system, Microsoft operating system, Unix operating system (e.g., distributed by Oracle Corporation of Redwood Shores, California operating system), AIX UNIX operating system distributed by International Business Machines of Armonk, New York, Linux operating system, Mac OSX and iOS operating systems distributed by Apple Inc. of Cupertino, California, BlackBerry OS distributed by Blackberry, Ltd. of Waterloo, Canada, and Android operating system developed by Google, Inc. and Open Handset Alliance, or provided by QNX Software Systems CAR Infotainment Platform. Examples of computing devices include, but are not limited to, an in-vehicle computer, a computer workstation, a server, a desktop, notebook, laptop or handheld computer, or some other computing system and / or device.

[0096] Computing devices generally include computer-executable instructions, where the instructions can be executed by one or more computing devices (such as those listed above). Computer-executable instructions can be compiled or interpreted from a computer program created using a variety of programming languages ​​and / or technologies, including but not limited to, and individually or in combination: Java TM , C, C++, Visual Basic, Java Script, Perl, etc. Some of these applications can be compiled and executed on a virtual machine (such as a Java virtual machine, a Dalvik virtual machine, etc.). In general, a processor (e.g., a microprocessor) receives instructions, such as from a memory, a computer-readable medium, etc., and executes these instructions to perform one or more processes, including one or more processes described herein. Various computer-readable media can be used to store and transmit such instructions and other data.

[0097] Computer-readable media (also referred to as processor-readable media) include any non-transient (e.g., tangible) media that participate in providing data (e.g., instructions) that can be read by a computer (e.g., by a processor of a computer). Such media can take many forms, including but not limited to non-volatile media and volatile media. Non-volatile media can include, for example, optical or magnetic disks and other permanent memories. Volatile media can include, for example, dynamic random access memory (DRAM), which typically constitutes main memory. Such instructions can be transmitted by one or more transmission media (including coaxial cables, copper wires, and optical fibers, including wiring wiring, including system buses coupled to processors of computers). Common forms of computer-readable media include, for example, floppy disks, flexible disks, hard disks, magnetic tapes, any other magnetic media, CD-ROMs, DVDs, any other optical media, punch cards, paper tapes, any other physical media with hole patterns, RAMs, PROMs, EPROMs, FLASH-EEPROMs, any other memory chips or cassettes, or any other media that can be read by a computer.

[0098] The databases, data repositories, or other data stores described herein may include various mechanisms for storing, accessing, and retrieving various data, including hierarchical databases, collections of files in a file system, application databases in proprietary formats, relational database management systems (RDBMS), and the like. Each such data store is generally included in a computing device that employs a computer operating system, such as one of those described above, and is accessed via a network in any one or more of a variety of ways. The file system may be accessed from the computer operating system and may include files stored in a variety of formats. In addition to languages ​​for creating, storing, editing, and executing stored programs, such as the PL / SQL language mentioned above, RDBMSs generally use structured query language (SQL).

[0099] In some examples, system elements may be implemented as computer-readable instructions (e.g., software) on one or more computing devices (e.g., servers, personal computers, etc.), stored on computer-readable media associated therewith (e.g., disks, memories, etc.). A computer program product may include such instructions stored on a computer-readable medium for performing the functions described herein.

[0100] The processor is implemented via a circuit, chip or other electronic component, and may include one or more microcontrollers, one or more field programmable gate arrays (FPGAs), one or more application specific circuits (ASICs), one or more digital signal processors (DSPs), one or more customer integrated circuits, etc. The processor may be programmed to process sensor data. Processing data may include processing a video feed or other data stream captured by the sensor to determine the road lane of the host vehicle and the presence of any target vehicles. As described below, the processor instructs vehicle components to actuate based on the sensor data. The processor may be incorporated into a controller (e.g., an autonomous mode controller).

[0101] The memory (or data storage device) is implemented via circuits, chips or other electronic components, and may include one or more of the following: read-only memory (ROM), random access memory (RAM), flash memory, electrically programmable memory (EPROM), electrically programmable and erasable memory (EEPROM), embedded multimedia card (eMMC), hard disk drive or any volatile or non-volatile medium, etc. The memory can store data collected from the sensor.

[0102] The present disclosure has been described in an illustrative manner, and it will be understood that the terminology that has been used is intended to have the nature of words of description rather than limitation. In view of the above teachings, many modifications and variations of the present disclosure are possible, and the present disclosure can be practiced in ways other than those specifically described.

[0103] According to the present invention, a method includes: in response to determining that a current location matches a historical location, retrieving a false alarm geo-tag including historical path data from a memory; and based on determining that a current predicted path does not match the historical path, replacing the current predicted path with the historical path to reduce false warnings to a driver of a host vehicle.

[0104] According to one embodiment, the geo-tag is pre-stored in memory in response to: receiving a collision avoidance alert; and determining, after receiving the alert, that the vehicle's actual path is different from the then-predicted path.

[0105] According to one embodiment, the alert is based at least in part on receiving a vehicle-to-vehicle communication from a target vehicle.

[0106] According to one embodiment, the actual path is determined using a plurality of waypoints.

[0107] According to one embodiment, each of the waypoints comprises a corresponding pair of x-coordinates and y-coordinates, wherein the corresponding z-axis coordinate of each corresponding waypoint is ignored when determining the actual path.

[0108] According to one embodiment, the above invention is further characterized by storing a first waypoint, followed by storing a second waypoint after the first interval, and then storing a third waypoint after the second interval.

[0109] According to one embodiment, determining that the current predicted path does not match the historical path further comprises comparing a predicted radius or a predicted curvature of the current predicted path with a historical radius or a corresponding historical curvature of the historical path.

[0110] According to one embodiment, determining that the current predicted path does not match the historical path further comprises comparing a predicted radius or a predicted curvature of the current predicted path with a historical radius or a corresponding historical curvature of the historical path.

[0111] According to one embodiment, the above invention is further characterized by determining a range to the nearest starting point location from a plurality of false alarm geo-tags, and delaying comparison of the current location with historical location data from the plurality based on the determined range.

[0112] According to one embodiment, the above invention is further characterized by replacing the current predicted path at the false alarm detection system; and sending the replaced current predicted path from the false alarm detection system to the collision avoidance system that generates the alarm.

[0113] According to the present invention, a system is provided, the system having: a processor; and a memory storing instructions executable by the processor, the instructions comprising: in response to determining that a current location matches a historical location, retrieving a false alarm geo-tag including historical path data from the memory; and based on determining that a current predicted path does not match the historical path, replacing the current predicted path with the historical path to reduce false warnings to a driver of a host vehicle.

[0114] According to one embodiment, the geo-tag is pre-stored in memory in response to instructions for: receiving a collision avoidance alert; and determining, after receiving the alert, that the vehicle's actual path differs from a then-predicted path.

[0115] According to one embodiment, the alert is based at least in part on receiving a vehicle-to-vehicle communication from a target vehicle.

[0116] According to one embodiment, the actual path is determined using a plurality of waypoints.

[0117] According to one embodiment, each of the waypoints comprises a corresponding pair of x-coordinates and y-coordinates, wherein the corresponding z-axis coordinate of each corresponding waypoint is ignored when determining the actual path.

[0118] According to one embodiment, the instructions further include storing the first waypoint, followed by storing the second waypoint after the first interval, and then storing the third waypoint after the second interval.

[0119] According to one embodiment, the instructions for determining that the current predicted path does not match the historical path further include instructions for comparing a predicted radius or a predicted curvature of the current predicted path with a historical radius or a corresponding historical curvature of the historical path.

[0120] According to one embodiment, the instructions for determining that the current predicted path does not match the historical path also include instructions for: comparing the predicted center of a circle including the predicted radius or the predicted curvature with the historical center position of a circle associated with the historical radius or its corresponding historical curvature.

[0121] According to one embodiment, the above invention is further characterized by determining a range to the nearest starting point location from a plurality of false alarm geo-tags, and delaying comparison of the current location with historical location data from the plurality based on the determined range.

[0122] According to one embodiment, the instructions further include: replacing the current predicted path at a false alarm detection system; and sending the replaced current predicted path from the false alarm detection system to a collision avoidance system that generates an alarm.

Claims

1. A method for a vehicle, the method comprising: in response to determining that the current location matches the historical location, retrieving from memory a false alarm geotag including historical path data; as well as Based on determining that a current predicted path does not match the historical path, the current predicted path is replaced with the historical path to reduce false warnings to a driver of the host vehicle.

2. The method of claim 1, wherein the geographic tag is pre-stored in a memory in response to: receiving a collision avoidance alert; and After receiving the alert, it is determined that the vehicle's actual path is different from the then-predicted path.

3. The method of claim 2, wherein the alert is based at least in part on receiving a vehicle-to-vehicle communication from a target vehicle. The method of claim 2 , wherein the actual path is determined using a plurality of path points.

5. The method of claim 4, wherein each of the waypoints comprises a corresponding pair of x-coordinates and y-coordinates, wherein a corresponding z-axis coordinate of each corresponding waypoint is ignored when determining the actual path.

6. The method of claim 2, further comprising: A first waypoint is stored, followed by a second waypoint after the first interval, and then a third waypoint after the second interval.

7. The method of claim 1, wherein determining that the current predicted path does not match the historical path further comprises comparing a predicted radius or a predicted curvature of the current predicted path with a historical radius or a corresponding historical curvature of the historical path.

8. The method of claim 7, wherein determining that the current predicted path does not match the historical path further comprises comparing a predicted radius or a predicted curvature of the current predicted path with a historical radius or a corresponding historical curvature of the historical path.

9. The method of claim 1, further comprising: A range to a nearest origin location is determined from a plurality of false alarm geo-tags, and based on the determined range, a current location is delayed in comparison with historical location data in the plurality of false alarm geo-tags.

10. The method of claim 1, further comprising: replacing the current predicted path at a false alarm detection system; and sending the replaced current predicted path from the false alarm detection system to the collision avoidance system that generated the alarm.

11. A computer programmed to perform the method of any one of claims 1 to 10.

12. A computer program product comprising a computer readable medium storing instructions executable by a computer processor to perform the method of any one of claims 1 to 10.

13. A system for a vehicle, the system comprising: processor; as well as A memory storing instructions executable by the processor, the instructions comprising: in response to determining that the current location matches the historical location, retrieving from memory a false alarm geotag including historical path data; as well as Based on determining that a current predicted path does not match the historical path, the current predicted path is replaced with the historical path to reduce false warnings to a driver of the host vehicle.

14. The system of claim 13, wherein the geographic marker is pre-stored in memory in response to instructions for: receiving a collision avoidance alert; and After receiving the alert, it is determined that the vehicle's actual path is different from the then-predicted path.

15. The system of claim 13, wherein the instructions for determining that the current predicted path does not match the historical path further include instructions for comparing a predicted radius or a predicted curvature of the current predicted path with a historical radius or a corresponding historical curvature of the historical path.

Citation Information

Patent Citations

  • Method for reducing repeat false alarm indications in vehicle impact detection systems

    US20040153244A1