Connected Vehicle Road Safety Infrastructure Insights
By analyzing vehicle sensor data to generate infrastructure recommendations, the problem of difficulty in optimizing road safety in existing technologies is solved, and customized recommendations are implemented for pedestrians, cyclists, and vehicles, improving road safety and user experience.
Patent Information
- Application Number
- CN202211255564.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Priority Date
- 2021-10-26
- Filing Date
- 2022-10-13
- Publication Date
- 2025-09-16
- Estimated Expiration
- 2042-10-13
AI Technical Summary
Existing technologies struggle to effectively leverage vehicle data to generate infrastructure recommendations to improve road safety, particularly for different types of road users such as pedestrians, cyclists, and vehicles.
By receiving and analyzing vehicle sensor data, geo-indexed detected vehicle event data is generated, and infrastructure recommendations are generated based on the data, including cyclist infrastructure recommendations, vehicle infrastructure recommendations, and pedestrian infrastructure recommendations.
It provides customized infrastructure recommendations for different road users, improves road safety and user experience, and helps municipal authorities optimize traffic facilities.
Smart Images

Figure CN116030619B_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to determining infrastructure insights based on vehicle data received from a plurality of vehicles. Background Art
[0002] Vehicles collect data while in operation using sensors, including radar, lidar, vision systems, infrared systems, and ultrasonic transducers. Other sensors may also include wheel speed sensors, inertial measurement unit sensors, electronic power steering sensors, or steering wheel angle sensors. The vehicle can activate these sensors to collect data while traveling along a road. Based on this data, parameters associated with the vehicle can be determined. For example, the sensor data can indicate objects associated with the vehicle. Summary of the Invention
[0003] A system includes a computer including a processor and a memory. The memory includes instructions that program the processor to: receive geo-indexed detected vehicle event data from at least one vehicle that occurred within a predetermined time period; normalize the geo-indexed detected vehicle event data based on global positioning system (GPS) data corresponding to a geo-indexed map; and generate infrastructure recommendations based on the normalized and aggregated geo-indexed detected vehicle event data.
[0004] In other features, the processor is further programmed to: compare a density of detected vehicle events within a predetermined time period to a predetermined density threshold; and based on the comparison, generate infrastructure recommendations based on the normalized and aggregated geo-indexed detected vehicle event data and the density of detected vehicle events.
[0005] In other features, the processor is further programmed to generate infrastructure recommendations based on the normalized and aggregated geo-indexed detected vehicle event data and the density of detected vehicle events when the density of detected vehicle events is greater than a predetermined density threshold.
[0006] In other features, the processor is further programmed to send the infrastructure recommendation to one or more entities.
[0007] In other features, at least one of the one or more entities includes a municipality.
[0008] In other features, the processor is further programmed to cluster the geographically indexed detected vehicle event data based on type categories of the geographically indexed detected vehicle event data.
[0009] Among other features, the type category includes at least one of a pedestrian category, a motorcyclist category, or a bicyclist category.
[0010] Among other features, the geo-indexed detected vehicle event data includes vehicle event data detected by an advanced driver assistance system (ADAS) of a vehicle.
[0011] In other features, the geo-indexed detected vehicle event data includes vehicle event data detected by an active safety system of the vehicle.
[0012] In other features, the infrastructure suggestions include at least one of bicyclist infrastructure suggestions, vehicle infrastructure suggestions, or pedestrian infrastructure suggestions.
[0013] A method includes: receiving, via a processor, geo-indexed detected vehicle event data from at least one vehicle that occurred within a predetermined time period; normalizing the geo-indexed detected vehicle event data based on global positioning system (GPS) data corresponding to a geo-indexed map; and generating infrastructure recommendations based on the normalized and aggregated geo-indexed detected vehicle event data.
[0014] In other features, the method includes comparing a density of detected vehicle events over a predetermined time period to a predetermined density threshold; and generating infrastructure recommendations based on the normalized and aggregated geo-indexed detected vehicle event data and the density of detected vehicle events based on the comparison.
[0015] In other features, the method includes generating infrastructure recommendations based on the normalized and aggregated geo-indexed detected vehicle event data and the density of detected vehicle events when the density of detected vehicle events is greater than a predetermined density threshold.
[0016] In other features, the method includes sending the infrastructure recommendation to one or more entities.
[0017] In other features, at least one of the one or more entities includes a municipality.
[0018] In other features, the method includes clustering the geo-indexed detected vehicle event data based on type categories of the geo-indexed detected vehicle event data.
[0019] Among other features, the type category includes at least one of a pedestrian category, a motorcyclist category, or a bicyclist category.
[0020] Among other features, the geo-indexed detected vehicle event data includes vehicle event data detected by an advanced driver assistance system (ADAS) of a vehicle.
[0021] In other features, the geo-indexed detected vehicle event data includes vehicle event data detected by an active safety system of the vehicle.
[0022] In other features, the infrastructure suggestions include at least one of bicyclist infrastructure suggestions, vehicle infrastructure suggestions, or pedestrian infrastructure suggestions.
[0023] Further areas of applicability will become apparent from the description provided herein.It should be understood that the description and specific examples are intended for purposes of illustration only and are not intended to limit the scope of the present disclosure. BRIEF DESCRIPTION OF THE DRAWINGS
[0024] The drawings described herein are for illustration purposes only and are not intended to limit the scope of the present disclosure in any way.
[0025] Figure 1 is a block diagram of an example system for estimating the severity of a road obstruction within a roadway;
[0026] Figure 2 is a block diagram of an example server within the system;
[0027] Figure 3 is an example environment including a vehicle traversing a road having road obstacles;
[0028] Figure 4 is a flow chart illustrating an example process for detecting an ADAS system event and / or an active safety system event;
[0029] Figure 5 is a flow chart illustrating an example process for determining infrastructure recommendations based on geo-indexed vehicle event data; and
[0030] Figure 6 is a flowchart illustrating an example process for calculating a risk score for a specific region / area. DETAILED DESCRIPTION
[0031] The following description is merely exemplary in nature and is not intended to limit the present disclosure, application, or uses.
[0032] Figure 1 FIG1 is a block diagram of an example vehicle system 100. System 100 includes a vehicle 105, which is a land vehicle such as a car, truck, or the like. Vehicle 105 includes a computer 110, vehicle sensors 115, actuators 120 for actuating various vehicle components 125, and a vehicle communication module 130. Communication module 130 allows computer 110 to communicate with a server 145 via a network 135.
[0033] Computer 110 includes a processor and memory. The memory includes one or more forms of computer-readable media and stores instructions executable by computer 110 for performing various operations, including those disclosed herein.
[0034] The computer 110 can operate the vehicle 105 in an autonomous mode, a semi-autonomous mode, or a non-autonomous (manual) mode. For the purposes of this disclosure, the autonomous mode is defined as a mode in which each of the propulsion, braking, and steering of the vehicle 105 is controlled by the computer 110; in the semi-autonomous mode, the computer 110 controls one or both of the propulsion, braking, and steering of the vehicle 105; and in the non-autonomous mode, a human operator controls each of the propulsion, braking, and steering of the vehicle 105.
[0035] The computer 110 may include programming to operate one or more of the vehicle 105's braking, propulsion (e.g., controlling the vehicle's acceleration by controlling one or more of an internal combustion engine, an electric motor, a hybrid engine, etc.), steering, climate control, interior and / or exterior lights, etc., and determine whether and when the computer 110 (rather than a human operator) controls these operations. Additionally, the computer 110 may be programmed to determine whether and when the human operator controls these operations.
[0036] The computer 110 may include or be communicatively coupled to one or more processors, such as those included in an electronic controller unit (ECU) included in the vehicle 105, for example, via a communication module 130 of the vehicle 105 as further described below, for monitoring and / or controlling various vehicle components 125, such as a powertrain controller, a brake controller, a steering controller, etc. The computer 110 may further communicate with a navigation system using a global positioning system (GPS) via the communication module 130 of the vehicle 105. As an example, the computer 110 may request and receive location data of the vehicle 105. The location data may be in a known form, such as geographic coordinates (latitude and longitude coordinates).
[0037] The computer 110 is typically configured to communicate on the communication module 130 of the vehicle 105, and also to communicate with the internal wired and / or wireless network of the vehicle 105, for example, a bus in the vehicle 105 (such as a Controller Area Network (CAN), etc.), and / or other wired and / or wireless mechanisms.
[0038] The computer 110 can send and / or receive messages to various devices in the vehicle 105 via the vehicle 105 communication network, such as vehicle sensors 115, actuators 120, vehicle components 125, and human-machine interfaces (HMIs). In the event that the computer 110 actually includes multiple devices, the vehicle 105 communication network can be used for communication between the devices (represented in this disclosure as the computer 110). Furthermore, as described below, various controllers and / or vehicle sensors 115 can provide data to the computer 110.
[0039] The vehicle sensors 115 may include various devices, such as those known in the art, for providing data to the computer 110. For example, the vehicle sensors 115 may include one or more light detection and ranging (LiDAR) sensors 115, etc., located on the roof of the vehicle 105, behind the front windshield of the vehicle 105, around the vehicle 105, etc., to provide the relative position, size, and shape of objects and / or conditions around the vehicle 105. As another example, one or more radar sensors 115 affixed to the bumper of the vehicle 105 may provide data to provide speed and range of objects (possibly including the second vehicle 106) relative to the position of the vehicle 105. The vehicle sensors 115 may also include one or more camera sensors 115 (e.g., forward-facing, side-facing, rear-facing, etc.) that provide images of a field of view from inside and / or outside the vehicle 105. The vehicle sensors 115 may also include one or more wheel speed sensors 115, such as on each wheel, etc., to estimate vehicle speed. The vehicle sensors 115 may also include one or more inertial measurement unit sensors 115 that may be attached to the vehicle 105 for estimating the acceleration of the vehicle 105 .
[0040] Vehicle actuator 120 is implemented by circuits, chips, motors, or other known electronic and / or mechanical components capable of actuating various vehicle subsystems according to appropriate control signals. Actuator 120 can be used to control components 125, including braking, acceleration, and steering of vehicle 105.
[0041] In the context of the present disclosure, a vehicle component 125 is one or more hardware components adapted to perform a mechanical or electromechanical function or operation, such as moving the vehicle 105 , slowing or stopping the vehicle 105 , steering the vehicle 105 , etc. Non-limiting examples of components 125 include propulsion components (including, for example, an internal combustion engine and / or an electric motor, etc.), transmission components, steering components (which may include, for example, one or more of a steering wheel, a steering rack, etc.), braking components (as described below), parking assist components, adaptive cruise control components, adaptive steering components, movable seats, safety restraint components, etc.
[0042] In addition, the computer 110 can be configured to communicate with devices external to the vehicle 105 via a vehicle-to-vehicle communication module or interface 130, such as communicating with another vehicle via vehicle-to-vehicle (V2V) or vehicle-to-infrastructure (V2X) wireless communications, communicating with a remote server 145 (typically via a network 135). The module 130 may include one or more mechanisms by which the computer 110 may communicate, including any desired combination of wireless (e.g., cellular, wireless, satellite, microwave, and radio frequency) communication mechanisms and any desired network topology (or multiple topologies when multiple communication mechanisms are utilized). Exemplary communications provided via the module 130 include cellular, Bluetooth, and other wireless communication mechanisms that provide data communication services. IEEE 802.11, Dedicated Short Range Communication (DSRC), and / or Wide Area Network (WAN) (including the Internet).
[0043] The network 135 can be one or more of a variety of wired or wireless communication mechanisms, including any desired combination of wired (e.g., cable and fiber optic) and / or wireless (e.g., cellular, wireless, satellite, microwave, and radio frequency) communication mechanisms and any desired network topology (or multiple topologies when multiple communication mechanisms are utilized). Exemplary communication networks include wireless communication networks that provide data communication services (e.g., using Bluetooth, Bluetooth Low Energy (BLE), IEEE 802.11, vehicle-to-vehicle (V2V) communication such as dedicated short-range communication (DSRC), etc.), local area networks (LANs), and / or wide area networks (WANs) (including the Internet).
[0044] The computer 110 may receive and analyze data from the sensor 115 substantially continuously, periodically, and / or when instructed by the server 145. Furthermore, based on data from the lidar sensor 115, the camera sensor 115, etc., target classification or recognition technology may be used in the computer 110 to identify the type of target, such as a vehicle, a person, a rock, a pothole, a bicycle, a motorcycle, etc., as well as the physical characteristics of the target.
[0045] As discussed herein, the vehicle 105 includes one or more sensors 115 positioned around the vehicle 105. Driver-Assistance Systems (DAS) and Advanced Driver-Assistance Systems (ADAS) can use data provided by the sensors 115 to assist the driver in controlling the vehicle 105. DAS may include, but is not limited to, electronic stability control systems, anti-lock braking systems, and traction control systems. ADAS may include, but is not limited to, lane keeping assist (LKA) systems and adaptive cruise control (ACC) systems. For example, a radar sensor 115 may provide radar data indicating the angle (azimuth) at which the radar sensor 115 transmits its wave, the radial distance (range) from the radar sensor 115 to a target, and / or the radial velocity (rate of change of range) of the target relative to the radar sensor 115. However, it should be understood that the DAS and / or ADAS systems used by the computer 110 may use data provided by other vehicle sensors 115 and for decision-making purposes. Other vehicle sensors 115 may include, but are not limited to, wheel odometer sensors 115, speed sensors 115, and the like.
[0046] The vehicle 105 may also include one or more active safety systems that may also use data provided by the sensors 115 to assist the driver in controlling the vehicle 105. Active safety systems may include, but are not limited to, forward collision warning systems, parking assist systems, side object detection systems, and the like.
[0047] Figure 2 is a block diagram of an example server 145. Server 145 includes a computer 235 and a communication module 240. Computer 235 includes a processor and memory. The memory includes one or more forms of computer-readable media and stores instructions executable by computer 235 for performing various operations, including those disclosed herein. Communication module 240 allows computer 235 to communicate with other devices, such as vehicle 105.
[0048] As discussed in more detail below, server 145 may receive data related to vehicle dynamic events, safety events, ADAS system events, and / or active safety system events to determine infrastructure safety metrics. In some cases, server 145 generates infrastructure recommendations based on the determined infrastructure safety metrics. For example, infrastructure recommendations may include, but are not limited to, cyclist infrastructure recommendations, vehicle infrastructure recommendations, and / or pedestrian infrastructure recommendations.
[0049] For example, cyclist infrastructure recommendations may include recommendations for adding bike lanes within a particular area, changing road intersections for cyclists, road barriers, pedestrian crosswalks, and / or adding additional signs to warn drivers. Vehicle infrastructure recommendations may include recommendations for adding additional signs related to speed limits, traffic speed reduction devices, adding vehicle monitoring devices and / or traffic lights, and / or infrastructure recommendations. Pedestrian infrastructure recommendations may include recommendations for adding additional crosswalks, performing traffic flow studies, and / or infrastructure updates (e.g., adding additional sidewalks and / or additional lighting).
[0050] Figure 3 An example map 300 is shown that the server 145 can generate based on the techniques described herein. As shown, the map 300 can include one or more groups 305-1, 305-2, 305-3 of markers 310 representing ADAS system events and / or active safety system events detected within a defined time period. The number of markers 310 within a group 305-1, 305-2, 305-3 can represent the density of detected events, including vehicle dynamic events, safety events, ADAS system events, and / or active safety system events that occurred at a specific location within the time period. In some cases, each individual marker 310 within a group 305-1, 305-2, 305-3 of markers 310 can represent a specific infrastructure recommendation based on the detected event. Each of the markers 310 includes a specific color tone to represent the type of detected event for display purposes. For example, a marker 310 classified as a pedestrian event may include a first hue, a marker 310 classified as an ignored cyclist event may include a second hue, a marker 310 classified as a right-turn cyclist event may include a third hue, a marker 310 classified as an obscured traffic sign may include a fourth hue, and so on.
[0051] Figure 44 is a flow chart of an example process 400 for detecting a vehicle dynamic event, a safety event, an ADAS system event, and / or an active safety system event. The blocks of process 400 may be executed by computer 110. Process 400 begins at block 405, in which computer 110 detects an event, e.g., a detected vehicle event. For example, an ADAS system and / or active safety system may cause computer 110 to generate an alert based on received sensor data 115, such as an alert indicating that a bicyclist (e.g., an overlooked bicyclist) is approaching vehicle 105, a right-turn bicyclist alert, etc. In another example, an ADAS system and / or active safety system may cause computer 110 to change vehicle actions, such as enabling an Automatic Emergency Braking (AEB) feature when a pedestrian is crossing the road.
[0052] At block 410, the computer 110 adds the detected vehicle event to a corresponding geo-indexed binary file. For example, the computer 110 may maintain multiple geo-indexed binary files (e.g., a database) that maintain detected vehicle events within a specific area corresponding to one or more geo-indexes (e.g., a geo-indexed map, etc.). When a detected vehicle event occurs, the computer 110 may select which geo-indexed binary file to associate the vehicle event with based on the GPS coordinates of the vehicle 105. The computer 110 may also add time period data indicating when the detected vehicle event occurred. For example, the computer 110 may add time and date data to the detected vehicle event that occurred.
[0053] At block 415, the computer 110 may classify the detected vehicle event. For example, the computer 110 may classify the detected vehicle event into a pedestrian class, a motorcyclist class, a cyclist class, etc., based on the received sensor data.
[0054] At block 420, the computer 110 weights the detected vehicle events. The computer 110 may weight the detected vehicle events based on one or more vehicle 105 parameters. For example, when the vehicle 105 must engage in a vehicle maneuver greater than a predetermined vehicle maneuver threshold, the computer 110 may assign a relatively higher weight to the detected vehicle event. For example, the predetermined vehicle maneuver threshold may include whether a change in vehicle speed is greater than a vehicle speed threshold, whether a change in vehicle yaw rate and / or lateral acceleration is greater than a yaw rate and / or lateral acceleration threshold, etc. Thus, a vehicle event that results in a vehicle maneuver greater than the predetermined vehicle maneuver threshold is weighted more highly than a vehicle event that results in a vehicle maneuver less than or equal to the predetermined vehicle maneuver threshold. The process 400 then ends.
[0055] Figure 5 is a flow chart of an example process 500 for determining infrastructure recommendations based on geo-indexed vehicle event data. The blocks of process 500 may be executed by computer 235. Process 500 begins at block 505, where computer 235 receives geo-indexed detected vehicle events from one or more vehicles 105. For example, server 145 may receive geo-indexed detected vehicle event data from a plurality of vehicles (e.g., a fleet) over a predetermined time period (e.g., one hour, two hours, one day, one week, etc.).
[0056] At block 510 , the computer 235 normalizes the detected vehicle event data for each geographic index. For example, the computer 235 may normalize the detected vehicle event data based on the GPS data corresponding to each geographic index using a suitable normalization technique.
[0057] At block 515, the computer 235 calculates a road risk metric based on the normalized vehicle event data. The computer 235 may quantify the road risk metric according to equations 1 and 2:
[0058] p i =f(x1,x2,…,x i ) Equation 1,
[0059]
[0060] Where r is the overall risk level corresponding to the road segment corresponding to the geographic index, and p i is an attribute indicating a detected vehicle event (e.g., lane data, collision data, etc.), x i is defined as the parameter of interest related to the detected vehicle event (e.g., headway, type of alert generated, etc.), w i It is p i The weighted value, v i is the velocity vector, and m is the number of attributes. Thus, the computer 235 calculates each attribute p based on the underlying sensor data received from the sensor 115. i , to characterize the attribute of interest. Computer 235 can update a map (e.g., map 300) to include a marker 310 indicating the overall risk level of a particular road segment during a predetermined time period. Computer 110 of vehicle 105 can use map 300 to change vehicle actions based on the overall risk level.
[0061] At block 520, computer 235 generates one or more infrastructure recommendations based on the detected vehicle event data and / or road risk. In an example embodiment, computer 235 may apply one or more data patterning techniques and / or aggregation techniques to the normalized vehicle event data. For example, computer 235 may cluster one or more detected vehicle events based on a corresponding road risk metric for each detected vehicle event. Computer 235 may also cluster one or more detected vehicle events based on a category of the detected vehicle events. In some cases, computer 235 compares the density of detected vehicle events within a defined time period to a predetermined density threshold. If the density of detected vehicle events within the defined time period exceeds the predetermined density threshold, computer 235 generates infrastructure recommendations for the corresponding area referenced by the geographic index. In some embodiments, computer 235 includes a lookup table that associates detected vehicle events with infrastructure recommendations. In this example, computer 235 retrieves infrastructure recommendations for the detected vehicle events.
[0062] At block 525, computer 235 sends the infrastructure recommendations to one or more entities. For example, computer 235 may send the infrastructure recommendations to a municipality that oversees a particular area of interest. At block 530, computer 235 determines whether additional detected vehicle events have been received for the particular geographic index. If no additional data has been received, process 500 returns to block 530. Otherwise, process 500 returns to block 510.
[0063] Figure 6 6 is a flow chart of an example process 600 for calculating a risk score for a specific area / region. A specific area / region can be defined as events occurring on the same road within the same time period. The blocks of process 600 can be executed by computer 235.
[0064] It should be understood that in some embodiments, process 600 can incorporate one or more suitable normalization techniques to normalize the collected vehicle event data. Process 600 begins at block 605 where computer 235 receives detected vehicle event data from one or more vehicles 105. The detected vehicle event data can include metadata related to the vehicle event data. For example, the detected vehicle event data can include vehicle body type, vehicle speed, crash severity (e.g., a quantitative measure of vehicle crashes), seatbelt use, the number of different vehicles within a particular area corresponding to a geographic index, and / or braking data representing a rate of change of speed.
[0065] At block 610, the computer 235 calculates an event occurrence for each type of detected vehicle event data in a predetermined area within a predetermined time period. For example, the computer 235 calculates each event occurrence based on vehicle speed, crash severity, seatbelt use, vehicle body type, braking data, etc., within a predetermined geographic area that occurred within a predetermined time period (e.g., one hour, two hours, etc.).
[0066] At block 615, the computer 235 determines a weighted event occurrence score for each type of detected vehicle event data within the predetermined time period. For example, each event occurrence may be assigned to a discrete category based on the detected vehicle event data. For example, crash severity occurrences with similar values may be assigned to the same category, speed rate of change occurrences with similar values may be assigned to the same category, and so on.
[0067] At block 620, computer 235 calculates a quantile using the weighted event occurrence scores calculated at block 615. For example, computer 235 calculates a quantile based on all weighted evidence scores for a particular event type (e.g., crash severity, braking, etc.) within a predetermined time period. At block 625, computer 235 determines an event type score by comparing each weighted event occurrence score to the calculated quantile. At block 630, computer 235 calculates a risk score by assigning a weight to each event type score and summing the event type scores. At block 635, computer 235 assigns a risk label, such as "no or low risk," "medium risk," or "high risk," to a particular road segment based on the risk score calculated from block 630. At block 640, computer 235 updates the map so that the map's markings reflect the risk label and transmits the risk label and the location of the particular road segment to a third party, such as a government municipality. Process 600 then ends.
[0068] The description of the present disclosure is merely exemplary in nature, and variations that do not depart from the gist of the present disclosure are intended to fall within the scope of the present disclosure. Such variations are not to be regarded as a departure from the spirit and scope of the present disclosure.
[0069] Generally, the computing systems and / or devices described may utilize any of a variety of computer operating systems, including but not limited to versions and / or variations of the following: Microsoft ) operating system, Microsoft Windows ) operating system, Unix operating system (e.g., released by Oracle Corporation in Redwood Shores, California) operating system), the AIX UNIX operating system released by International Business Machines Corporation in Armonk, New York, the Linux operating system, OSX and iOS operating systems released by Apple Inc. in Cupertino, California, the BlackBerry OS released by BlackBerry Inc. in Waterloo, Canada, the Android operating system developed by Google Inc. and the Open Handset Alliance, or provided by QNX software systems CAR Platform for Infotainment. Examples of computing devices include, but are not limited to, an onboard vehicle computer, a computer workstation, a server, a desktop computer, a notebook computer, a portable computer, or a handheld computer, or some other computing system and / or device.
[0070] Computers and computing devices generally include computer-executable instructions, where the instructions can be executed by one or more computing devices such as the computing devices listed above. Computer-executable instructions can be compiled or interpreted from computer programs created using various programming languages and / or technologies, including but not limited to Java, Javascript, and PHP, alone or in combination. TM , C, C++, Matlab, Simulink, Stateflow, Visual Basic, Java Script, Perl, HTML, 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 from a memory, a computer-readable medium, etc., and executes these instructions to perform one or more processes (including one or more of the processes described herein). Such instructions and other data can be stored and transmitted using various computer-readable media. Files in a computing device are typically data collections stored on a computer-readable medium such as a storage medium, a random access memory, etc.
[0071] Memory can include computer-readable media (also known as processor-readable media), which includes any non-transitory (e.g., tangible) medium that participates in providing data (e.g., instructions) that can be read by a computer (e.g., by a computer's processor). 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 storage. Volatile media can include, for example, dynamic random access memory (DRAM), which typically constitutes main memory. Such instructions can be transmitted via one or more transmission media, including coaxial cables, copper wire, and optical fiber, including the lines comprising a system bus connected to the processor of the ECU. Common forms of computer-readable media include, for example, floppy disks, flexible disks, hard disks, magnetic tape, any other magnetic medium, CD ROMs, DVDs, any other optical media, punch cards, paper tape, any other physical medium with a pattern of holes, RAM, PROMs, EPROMs, FLASH EEPROMs, any other memory chips or memory cartridges, or any other medium from which a computer can read.
[0072] The databases, data repositories, or other data stores described herein may include various mechanisms for storing, accessing, and retrieving various types of data, including hierarchical databases, a set of files in a file system, an application database in a proprietary format, a relational database management system (RDBMS), and the like. Each such data store is typically contained within a computing device that utilizes a computer operating system (e.g., one of those mentioned 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 the file system may include files stored in a variety of formats. In addition to employing a language for creating, storing, editing, and executing stored procedures, an RDBMS typically employs a Structured Query Language (SQL), such as the PL / SQL language described above.
[0073] In some examples, system elements can be implemented as computer-readable instructions (e.g., software) on one or more computing devices (e.g., servers, personal computers, etc.), with the computer-readable instructions stored on a computer-readable medium associated therewith (e.g., disks, memories, etc.). A computer program product can include such instructions stored on the computer-readable medium for performing the functions described herein.
[0074] In this application, including the following definitions, the term "module" or the term "controller" may be replaced by the term "circuit". The term "module" may refer to, be part of, or include: an Application Specific Integrated Circuit (ASIC); a digital discrete circuit, an analog discrete circuit, or an analog / digital hybrid discrete circuit; a digital integrated circuit, an analog integrated circuit, or an analog / digital hybrid integrated circuit; a combinational logic circuit; a Field Programmable Gate Array (FPGA); a processor circuit (shared, dedicated, or a group) that executes code; a memory circuit (shared, dedicated, or a group) that stores code executed by the processor circuit; other suitable hardware components that provide the described functionality; or a combination of some or all of the above, such as in a system on a chip.
[0075] The module may include one or more interface circuits. In some examples, the interface circuit may include a wired or wireless interface connected to a local area network (LAN), the Internet, a wide area network (WAN), or a combination thereof. The functionality of any given module of the present disclosure may be distributed across multiple modules connected via the interface circuits. For example, multiple modules may allow for load balancing. In a further example, a server (also referred to as a remote or cloud) module may implement some functionality on behalf of a client module.
[0076] With respect to the media, processes, systems, methods, heuristics, etc. described herein, it should be understood that although the steps of these processes, etc. have been described as occurring according to a particular ordered sequence, these processes can be practiced with the described steps performed in an order different from that described herein. It should also be understood that certain steps can be performed simultaneously, other steps can be added, or certain steps described herein can be omitted. In other words, the process descriptions provided herein are intended to illustrate certain embodiments and should not be construed as limiting the claims.
[0077] Therefore, it should be understood that the above description is intended to be illustrative and not restrictive. After reading the above description, many embodiments and applications other than the examples provided will be apparent to those skilled in the art. The scope of the present invention should not be determined with reference to the above description, but should be determined with reference to the appended claims and the full scope of equivalents to which these claims are entitled. It is anticipated and conceivable that future developments will occur in the technology discussed herein, and that the disclosed systems and methods will be incorporated into these future embodiments. In short, it should be understood that the present invention is capable of modification and variation and is limited only by the appended claims.
[0078] All terms used in the claims are intended to be given their plain and ordinary meanings as understood by those skilled in the art, unless otherwise expressly indicated herein. In particular, use of singular articles such as "a," "an," "the," and the like should be construed as reciting one or more of the indicated elements, unless a claim recites an explicit limitation to the contrary.
Claims
1. A system for determining infrastructure recommendations from vehicle data received from a plurality of vehicles, comprising a computer, the computer including a processor and a memory, the memory including instructions such that the processor is programmed to: receiving, from at least one vehicle, geographically indexed detected vehicle event data occurring within a predetermined time period; normalizing the geo-indexed detected vehicle event data according to global positioning system (GPS) data corresponding to a geo-indexed map; and Generate infrastructure recommendations based on normalized and aggregated geo-indexed detected vehicle event data; wherein the processor is further programmed to: compare a density of detected vehicle events within the predetermined time period to a predetermined density threshold; and based on the comparison, generate the infrastructure recommendation based on the normalized and aggregated geo-indexed detected vehicle event data and the density of the detected vehicle events; Wherein the processor is further programmed to generate the infrastructure recommendation based on the normalized and aggregated geo-indexed detected vehicle event data and the density of the detected vehicle events when the density of the detected vehicle events is greater than the predetermined density threshold. 2 . The system of claim 1 , wherein the processor is further programmed to send the infrastructure recommendations to one or more entities. 3 . The system for determining infrastructure recommendations from vehicle data received from a plurality of vehicles of claim 2 , wherein at least one of the one or more entities comprises a municipality.
4. The system for determining infrastructure recommendations based on vehicle data received from a plurality of vehicles of claim 1 , wherein the processor is further programmed to cluster the geo-indexed detected vehicle event data based on a type category of the geo-indexed detected vehicle event data. 5 . The system for determining infrastructure recommendations from vehicle data received from a plurality of vehicles of claim 4 , wherein the type category comprises at least one of a pedestrian category, a motorcyclist category, or a cyclist category. 6 . The system for determining infrastructure recommendations from vehicle data received from a plurality of vehicles of claim 1 , wherein the geo-indexed detected vehicle event data comprises vehicle event data detected by an advanced driver assistance system (ADAS) of the vehicle.
7. The system for determining infrastructure recommendations from vehicle data received from a plurality of vehicles of claim 1, wherein the geo-indexed detected vehicle event data comprises vehicle event data detected by a vehicle dynamics system of the vehicle or a safety system of the vehicle.
8. The system of claim 1 , wherein the infrastructure recommendations comprise at least one of cyclist infrastructure recommendations, vehicle infrastructure recommendations, or pedestrian infrastructure recommendations.
Citation Information
Patent Citations
Aggregated analytics for intelligent transportation systems
US20160293000A1
Method and system for normalizing and comparing GPS data from multiple vehicles
US8768604B1