US10620008B2 - Synthetic data collection for vehicle controller - Google Patents
Synthetic data collection for vehicle controller Download PDFInfo
- Publication number
- US10620008B2 US10620008B2 US16/364,560 US201916364560A US10620008B2 US 10620008 B2 US10620008 B2 US 10620008B2 US 201916364560 A US201916364560 A US 201916364560A US 10620008 B2 US10620008 B2 US 10620008B2
- Authority
- US
- United States
- Prior art keywords
- waypoint
- data
- vehicle
- route
- sequential
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000013480 data collection Methods 0.000 title description 16
- 238000000034 method Methods 0.000 claims abstract description 38
- 230000001131 transforming effect Effects 0.000 claims abstract description 6
- 239000008186 active pharmaceutical agent Substances 0.000 claims description 26
- 238000013507 mapping Methods 0.000 claims description 18
- 238000005259 measurement Methods 0.000 claims description 12
- 239000013598 vector Substances 0.000 claims description 9
- 230000004044 response Effects 0.000 claims 2
- 238000004590 computer program Methods 0.000 claims 1
- 230000008569 process Effects 0.000 description 14
- 230000009471 action Effects 0.000 description 6
- 230000000295 complement effect Effects 0.000 description 6
- 238000012800 visualization Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 4
- 230000008901 benefit Effects 0.000 description 2
- 238000007596 consolidation process Methods 0.000 description 2
- 238000010276 construction Methods 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- 206010039203 Road traffic accident Diseases 0.000 description 1
- 230000002411 adverse Effects 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000001105 regulatory effect Effects 0.000 description 1
- 238000012549 training Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/26—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
- G01C21/34—Route searching; Route guidance
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/26—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
- G01C21/28—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network with correlation of data from several navigational instruments
- G01C21/30—Map- or contour-matching
- G01C21/32—Structuring or formatting of map data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/29—Geographical information databases
Definitions
- Mass transit vehicles typically employ an information system in order to provide passengers with status updates and other useful information.
- a controller installed on a mass transit vehicle such as a bus or shuttle may, when the vehicle is approaching a stop or when a stop has been requested, play pre-recorded audio and/or display text on a sign to announce that the stop is approaching.
- These information systems may be used in order to convey a diversity of information to the passengers; details like the mass transit vehicle's current route, its current location, any applicable tour and sightseeing information, and any applicable event information may all be presented.
- the controllers on mass transit vehicles, and other similar information systems, are often reliant on outside information to function. Some of this information, like whether or not a stop has been requested by any of the passengers or whether there are any events that are scheduled to occur in the near future, might be manually entered or enterable into the controller. However, other information to be provided by the controller, like when the next scheduled stop is approaching or any location-based tour and sightseeing information, may be harvested from a combination of global positioning system data and the odometer reading of the mass transit vehicle. Using these two values, the controller can predict when to make an announcement for the next approaching stop.
- a controller When making these location determinations, a controller typically must measure a GPS location and an odometric distance, and must make a comparison between the measured GPS location and measurement of distanced traveled to a database of GPS waypoints and distances. Such databases have to be constructed before they can be used, and must be populated with, at minimum, the GPS waypoint data and distance data for the routes that the mass transit vehicle using the controller will follow.
- One way of populating these databases is by manual data collection. This involves sending a GPS instrumentation vehicle out to follow the bus route or other mass transit vehicle route, and having this GPS instrumentation vehicle collect GPS waypoint data and distances traveled between the mass transit vehicle's scheduled stops and/or likely stops. Software may then be used to combine route and stop locations such as might be provided by the local transit authority with this field-collected waypoint data (“Geopath” waypoint data) in order to create a controller database, containing information for all or some of the routes in the local transit authority's system.
- GPS waypoint data GPS waypoint data and distances traveled between the mass transit vehicle's scheduled stops and/or likely stops.
- Software may then be used to combine route and stop locations such as might be provided by the local transit authority with this field-collected waypoint data (“Geopath” waypoint data) in order to create a controller database, containing information for all or some of the routes in the local transit authority's system.
- waypoints will be collected with a uniform level of spacing, such as every 50 to 60 feet.
- manually-collected waypoints may be collected extremely inconsistently, due to factors like adverse road conditions or poor staff training.
- Certain terrain features, such as sharp curves or underground tunnels, may lead to errors in data collection or otherwise may be difficult to characterize accurately.
- a method of providing waypoint data to a vehicle controller may be described. This method may include obtaining a plurality of coordinate locations describing a vehicle route, performing a computation of the vehicle route using said coordinates, obtaining data describing the route, transforming this route data into coordinate data comprising a plurality of data points expressed in longitude and latitude form, converting this coordinate data into properly-spaced waypoint data, storing the waypoint data in a form accessible to a vehicle controller, and accessing the waypoint data via a vehicle controller.
- this properly-spaced waypoint data may be created from improperly-spaced data via interpolation.
- the vehicle controller may control other devices associated with a vehicle, such as an automated voice announcement system or an external display.
- a method for providing waypoint data to a vehicle controller may also be described.
- This method may include accessing an external mapping API, selecting a number of locations describing a vehicle route, obtaining a number of coordinates corresponding to this number of locations, instructing the external mapping API to perform a computation of the vehicle route using the coordinates, obtaining polyline-encoded vector data describing the vehicle route, transforming this polyline-encoded vector data into coordinate data having a number of data points expressed in longitude and latitude form, determining whether any of the distances between pairs of consecutive coordinate data points exceed an allowable distance for waypoints that may be permitted by a vehicle controller, adding, via interpolation, additional waypoints between these pairs of consecutive coordinate data points in those cases where the distances between pairs of consecutive data points exceeds the allowable distance for waypoints that may be permitted by the vehicle controller, and continuing to add additional waypoints until no distances between pairs of consecutive data points exceed the allowable distance, storing the waypoint data in a form accessible to a vehicle controller
- FIG. 1 shows a process flow diagram of a synthetic data collection system for a vehicle controller.
- FIG. 1A shows a process flow diagram of a polyline decoding algorithm.
- FIG. 2 shows a visualization of mapping data that may be provided by a map utility API or other data repository.
- FIG. 3 shows a visualization of interpolated waypoint data.
- FIG. 4 shows a visualization of the linear interpolation process that may be used to create new waypoints for the system hardware.
- FIG. 5 shows an exemplary system diagram for a vehicle controller.
- sequences of actions described herein are described in terms of sequences of actions to be performed by, for example, elements of a computing device. It should be recognized by those skilled in the art that the various sequences of actions described herein can be performed by specific circuits (e.g. application specific integrated circuits (ASICs)) and/or by program instructions executed by at least one processor. Additionally, the sequence of actions described herein can be embodied entirely within any form of computer-readable storage medium such that execution of the sequence of actions enables the at least one processor to perform the functionality described herein. Furthermore, the sequence of actions described herein can be embodied in a combination of hardware and software.
- ASICs application specific integrated circuits
- a process flow of a synthetic data collection system for a vehicle controller 100 may be provided.
- a user may begin the process by obtaining the locations, such as the GPS coordinate locations or other locations, of at least two points along a route 102 .
- These locations might be, for example, two adjacent bus stops along a bus route defined by the local transit authority, or may be any other set of two or more points of interest.
- Bus may also be used to refer to any other public transit vehicle, such as a coach, shuttle, streetcar, tram, subway train, or any other such vehicle, as desired.
- Bus route may likewise be used to refer to the route of any public transit vehicle or the like.
- this data may be readily available or may be retrieved automatically.
- a local transit authority may have uploaded their bus routes to a mapping utility such as GOOGLE MAPS, may host their own mapping utility, or may host files that are compatible with a particular mapping utility. If such data is available, it can be retrieved from wherever it is available.
- a user may be able to define a bus route or other public transit route manually using a mapping utility, including any stops that may be made by the public transit vehicle, and may be able to export the entire route with all of these stops included.
- a user may be limited in the extent to which they may be able to obtain the location data of points along a public transit vehicle route from a mapping utility; for example the user might only be able to obtain one point at a time, or may only be able to obtain a small plurality of data points at a time.
- Other exemplary embodiments may also be understood.
- the user may then perform a route computation between two or more of these coordinates 104 .
- This route computation may be accomplished using a commercial API or other commercial database that is oriented toward providing mapping data or route information.
- a user may only provide the mapping API with two or more of the coordinates and may instruct the mapping API to generate a route between these coordinates, and the mapping API may be able to automatically generate a route between them.
- a non-commercial API or non-commercial database that is oriented toward providing mapping data or route information may be used.
- Exemplary APIs or databases that might be used include, but are not limited to, the GOOGLE MAPS API, the MICROSOFT BING MAPS API, the MAPQUEST API, the OPENSTREETMAPS API, or any combination thereof.
- the MAPQUEST API offers a better route-finding algorithm, but that the OPENSTREETMAPS API offers a higher density of data points in the local area.
- another source of such information such as a web crawler or private database server, may be used.
- this data may be provided in usable form by the API, database, or other information source, as desired.
- this data may be provided in an encoded form, such as in a polyline encoded form, which may be decoded before use or otherwise put into spherical coordinate form 108 , i.e. latitude and longitude.
- the data may be formed into a usable form by a user-side tool, such as a web crawler tool.
- the GOOGLE MAPS API may be used to obtain directional data between two points.
- the API may send back a string of polyline-encoded GPS points representing the calculated route and points along the route.
- an exemplary polyline “e
- This polyline represents the GPS data points of the route in a vector-based form; a first point may be defined in terms of its latitude and longitude, and subsequent data points may be represented by their difference in latitude and longitude from the point immediately prior to them.
- the polyline provided by the API may then be transformed into a number of GPS points spaced along the desired route of travel; for example, in the case of the exemplary polyline provided above, it would encode a series of GPS points starting at the point 43.16115° N 79.25351° W, and ending at the point 43.16026° N 79.25606° W.
- polyline encoding may be a lossy compression algorithm that can allow a series of coordinates to be stored as a single string.
- Point coordinates may be encoded using signed values; for example, a negative number corresponding to a latitude value may be a latitude south, a positive number corresponding to a latitude value may be a latitude north, a negative value corresponding to a longitude value may be a longitude west, and a positive value corresponding to a longitude value may be a longitude east.
- the polyline encoding process can convert a binary value into a series of character codes for ASCII characters using the standard base64 encoding scheme, for example the exemplary polyline given above, “e
- encoded values can be summed with 63 (which corresponds to the ASCII character ‘?’) before converting them into ASCII.
- the algorithm may also check for additional character codes for a given point by checking the least significant bit of each byte group; if this bit is set to 1, the point may not yet be fully formed and additional data can or should follow.
- polyline encoding can be a vector-based format; to conserve space, points other than the first point only can include the offset from the previous point, rather than being stored as coordinates themselves. All points may be encoded in Base64 as signed integers, as latitudes and longitudes are signed values.
- the encoding format within a polyline can represent two coordinates representing latitude and longitude to a reasonable precision. Given a maximum longitude of +/ ⁇ 180 degrees to a precision of 5 decimal places (180.00000 to ⁇ 180.00000), this can result in a desire for a 32 bit signed binary integer value. (Backslashes can be interpreted as escape characters within string literals, and as a result outputs of backslash characters within a polyline are typically converted into double-backslash characters, which are not interpreted in this fashion.)
- FIG. 1A depicts a method by which point values may be encoded in polyline form 100 A in more detail.
- a user desiring to encode a coordinate in polyline form can first begin with a signed value 102 A corresponding to a latitude or longitude coordinate value, with a positive sign representing north or east and a negative sign representing south or west.
- a user can take the decimal value of this signed value and multiply it by 1e5, rounding the result to the nearest digit 104 A, which may yield a whole-number integer with precision to five decimal digits. If the degree of precision required is more or less, a variant polyline encoding algorithm using a higher or lower degree of precision may be used instead.
- This decimal value may then be converted into a binary value 106 A.
- a negative value can be calculated using its two's complement, which may require inverting the original binary value and adding one to the result.
- the encoding may be changed from the two's complement if the value is negative.
- the binary value may be left-shifted by one bit 108 A, adding a 0 on the right and removing the leading bit on the left. If the initial value was negative, this means that the leading 1 bit added by the two's complement transformation will be removed. If the initial value was negative, the resulting binary value should then be inverted 110 A again, flipping the value of the rightmost bit to 1, indicating that a negative value is stored.
- the binary value can then be parsed out into five-bit chunks 112 A, starting from the right-hand side; according to an exemplary embodiment, this may allow the binary value to be encoded in base 64 (which allows for up to six bits to be stored).
- the 5-bit chunks can then be placed into reverse order 114 A, so that the rightmost chunk is now the leftmost chunk and vice-versa; according to an exemplary embodiment, this may improve the speed with which a given polyline can be read.
- a continuation bit may then be added to each of these five-bit data chunks.
- a continuation bit is a bit that, in many data types such as variable-length quantities (VLQ), indicates whether there is another data “chunk” left to follow or whether the current “chunk” is the final “chunk.”
- VLQ variable-length quantities
- each byte may store seven bits of data and one continuation bit. The highest-order bit in this structure may be set to zero if the byte is the last byte in a chain of bytes representing a larger data value, and may be set to 1 if there is more data left to come.
- a continuation bit should be added in as the highest-order value for each of the 5-bit “chunks” used in the algorithm.
- the chunks can be conditionally ORed with 0x20 (0010 0000) if another bit chunk follows them 116 A (turning them into six-bit “chunks” having a 1 as their highest-order bit).
- the final chunk should not, however, be ORed with this value, giving it a 0 in its highest-order bit if represented as a six-bit value; having a 0 value in its continuation bit indicates that it is the final chunk, and that any following information is the start of a new data value.
- each of these values can then be converted into decimal, and then converted into ASCII 118 A.
- a predetermined value may be added to each decimal value before conversion of the decimal values into ASCII characters in order to ensure that potentially troublesome ASCII characters, like quotes and semicolons, are avoided in the final polyline string.
- this predetermined value may be 63, though other adjustment values and other variant adjustment methods may also be envisioned. This will yield the polyline encoding of a particular coordinate.
- a user may wish to encode the value ⁇ 179.9832104, a longitude value west. The user will take this number and multiply it by 1e5, rounding the result to the nearest digit, yielding ⁇ 17998321. The user will then convert this value to binary, resulting in the value 00000001 00010010 10100001 11110001. Since this is a negative value, however, it must be converted using the two's complement, requiring that the value be inverted (11111110 11101101 01011110 00001110) and that 1 be added to it (11111110 11101101 01011110 00001111).
- this value should then be left-shifted, removing the trailing 1 and adding a 0 to the end (11111101 11011010 10111100 00011110). Since the initial longitude value was negative, the resulting binary encoding should be inverted (00000010 00100101 01000011 11100001). This number will then be broken into 5-bit chunks, starting from the right-hand side; this results in the values 00001 00010 01010 10000 11111 00001, with a number of leading 0s being removed from the left-hand side. These chunks are then placed into reverse order, with the rightmost chunk going on the left and vice-versa; this results in the values 00001 11111 10000 01010 00010 00001.
- each value should be ORed with 0x20 (that is, have a leading 1 added) if it is not the final value in the list. This yields the values 100001 111111 110000 101010 100010 000001, with only the final value not having a leading 1. These values should then be converted into decimal form, resulting in the values 33 63 48 42 34 1. The user should then convert these values into ASCII by adding 63 to each value (96 126 111 105 97 64) and converting those numbers, in the final output, to their ASCII equivalents (′ ⁇ oia@).
- a user that desires to convert values back from polyline form into coordinate form may do so by following these steps in reverse order. For example, first, the user can convert the polyline data (′ ⁇ oia@) into decimalized data (96 126 111 105 97 64) and subtract 63 (33 63 48 42 34 1). This may allow a user to convert polyline data into coordinate form.
- the data points provided by the API or other data source may be interpolated until the distance between each individual waypoint is less than some desired distance, for example 50 or 60 feet.
- waypoints may be added via interpolation and removed via deletion until the distance between all waypoints is between two values, for example 50 feet and 60 feet.
- interpolation methods such as linear interpolation, cosine interpolation, cubic interpolation, or Hermite interpolation, may be used, as desired; an interpolation method may be chosen depending on criteria like the density of the data points undergoing interpolation or the known presence or absence of any unusual terrain features.
- a plurality of waypoints may be fit to a curve using linear or nonlinear regression, and new waypoints may be generated at the appropriate positions on this curve without requiring interpolation to take place between individual points or sets of points.
- @vDJf@ ⁇ @‘EVx@N’@” might be decoded into a series of points that are represented by the values (43.16115, ⁇ 79.25351), (43.16084, ⁇ 79.25443), (43.16078, ⁇ 79.25463), (43.16046, ⁇ 79.2556), (43.16034, ⁇ 79.25589), (43.16026, ⁇ 79.25606), with the first point in the pairing representing the latitude of a GPS coordinate (in this case, the latitude north) and the second point in the pairing representing the longitude of a GPS coordinate (in this case, the longitude west).
- the distance between the point represented by the first set of coordinates and the point represented by the second set of coordinates is 270 feet.
- the set of waypoints may be stored in a database 112 .
- Distance measurements between data points may be generated from these values and likewise stored in the database, if desired.
- a desired distance measurement between waypoints may be defined, for example 50 feet, and new waypoints may be generated as necessary to reflect this desired distance measurement.
- both methods may be used, and/or the new waypoints may be combined with existing database data, as desired.
- this database may then be transmitted to a vehicle controller, or may be manually provided to a vehicle controller; according to other embodiments, this process may be executed directly by a vehicle controller with access to an API or other resource. Other embodiments may also be utilized or understood.
- a database may be stored on a computer system separate from the vehicle controller.
- This computer system may obtain route information and convert that into waypoint information, either manually or automatically, as desired.
- a user may then be able to edit this database, adding announcements or other location-specific instructions that are paired with particular waypoint locations, or which are otherwise triggered to occur at certain points along the route.
- This database may then be provided in relevant part, for example on computer-readable media or by wireless transmission, to the vehicle controllers installed in particular mass transit vehicles.
- the operator of the mass transit vehicle or another party may be able to add, edit, or remove these announcements or even the waypoint data via an interface of their own, such as a touch-screen interface or microphone.
- the operator of the mass-transit vehicle may be able to request such a change or inform a control station of the need for some aspect of the waypoint data database to be updated; for example, a bus driver may inform the control station of the need to edit a route in the event that a road is blocked by a traffic accident, and the control station may be able to update the waypoint data corresponding to the bus's planned route to waypoint data reflecting the bus's new route. This data may then be wirelessly transmitted to the bus's vehicle controller, updating the bus's own waypoint data and planned announcements.
- a bus driver may inform the control station of the need to edit a route in the event that a road is blocked by a traffic accident, and the control station may be able to update the waypoint data corresponding to the bus's planned route to waypoint data reflecting the bus's new route.
- This data may then be wirelessly transmitted to the bus's vehicle controller, updating the bus's own waypoint data and planned announcements.
- Other embodiments of this system may be envisioned
- This database of GPS coordinate and distance measurement pairings may then be used with existing mass transit information systems. Transformation of the data may be done, where necessary or desired, to fit the requirements of the hardware environment. For example, it may be that a particular mass transit vehicle information system is intended to operate based off of a series of GPS waypoints, each waypoint being approximately fifty to sixty feet from the previous waypoint, and a series of distance measurements paired with waypoints or waypoint pairs. Providing waypoints substantially outside of this range may run the risk that the system controllers will go “off route” or that they will encounter other problems.
- interpolation and consolidation of the data can be done where appropriate in order to provide appropriate inputs to the hardware system.
- the hardware system may be able to handle being provided with waypoints that are spaced too closely or too far apart, and that the hardware system will be able to stay “on route” when such waypoints are provided.
- GPS waypoint and distance data may be supplied, in the form of a database or other data structure, to an information system controller; the information system controller may in turn operate other devices on the mass transit vehicle system, such as an automated voice announcement system or an external display, or another appropriate device, as desired.
- Certain GPS coordinate and distance measurement pairings might be paired in the database with certain information to be announced or displayed at the time that a certain GPS coordinate is reached or a certain distance is travelled. For example, at one series of points, there might be instructions for the external display to display the name of the next stop that the bus is scheduled to stop at, and there might be instructions for the automated voice announcement system to announce the name of the next stop to the passengers. When the bus reaches the appropriate GPS coordinate, the instructions might be read by the system controller and transmitted to the automated voice announcement system and the external display, announcing to the customers what the bus's next stop is and providing that information on the external display as well. Other instructions may also be stored or may be generated by the mass transit information system, as desired. This may include instructions for any other systems controlled by the mass transit vehicle information system, if applicable.
- the mass transit information system may then periodically compare the database data, containing stored GPS coordinates and distance measurements, and GPS and distance data that it has obtained through its own instrumentation. Once the mass transit vehicle has reached or passed specific waypoints described in the database, the mass transit information system might update subsystems like the external display if such behavior is defined in the database or otherwise desired.
- mapping data 200 may be provided by a map utility API or other data repository.
- the API may provide a route 202 between a start point 204 and an end point 206 , which may include a number of other data points 208 also included along that route.
- the route 202 may be provided as a vector or plurality of vectors; according to such an embodiment, only a first data point 204 may be provided, and other data points may be described based on their relation to this first data point 204 .
- mapping data may first be provided in the form of a route 302 and a start point 304 , but may be converted into coordinate form, where it may be represented instead by a start point 304 , an end point 306 , and any intermediate waypoints 308 .
- interpolated waypoints 310 can be created to “fill the gaps” or otherwise provide appropriate waypoint data.
- a route may exist between a first waypoint 402 and a second waypoint 404 .
- the distance between the two waypoints 402 , 404 in longitude 406 and in latitude 408 may be computed. These values may be used to compute the slope of a line drawn between the two waypoints.
- a longitude adjustment 412 and a latitude adjustment 414 from a point 402 to a new waypoint 416 may be calculated. This process may be repeated with points further away from the original waypoint 402 ; the process may be repeated with the new waypoint 416 standing in for the original waypoint 402 , or the desired subdivision size 410 may be effectively increased to a multiple of its original value for the purposes of computation. As previously mentioned, nonlinear interpolation methods may also be employed, if desired.
- FIG. 5 shows an exemplary system diagram for a vehicle controller system 500 .
- the vehicle controller system 500 may include a vehicle controller 502 , which may include, for example, a processor 504 and a memory 506 .
- the vehicle controller 502 may be configured to communicate with a processor 508 and memory module 510 .
- the vehicle controller 502 may be configured to control the operation of at least one component of a vehicle, or provide instructions for the at least one component of a vehicle 512 .
- vehicle components 514 , 516 may include, for example, an automated voice announcement system 514 , an external display 516 , or any other vehicle components 514 , 516 that may be desired.
Landscapes
- Engineering & Computer Science (AREA)
- Remote Sensing (AREA)
- Radar, Positioning & Navigation (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Automation & Control Theory (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Navigation (AREA)
Abstract
Description
Claims (20)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/364,560 US10620008B2 (en) | 2015-09-22 | 2019-03-26 | Synthetic data collection for vehicle controller |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/861,317 US10386191B2 (en) | 2015-09-22 | 2015-09-22 | Synthetic data collection for vehicle controller |
US16/364,560 US10620008B2 (en) | 2015-09-22 | 2019-03-26 | Synthetic data collection for vehicle controller |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US14/861,317 Continuation US10386191B2 (en) | 2015-09-22 | 2015-09-22 | Synthetic data collection for vehicle controller |
Publications (2)
Publication Number | Publication Date |
---|---|
US20190219406A1 US20190219406A1 (en) | 2019-07-18 |
US10620008B2 true US10620008B2 (en) | 2020-04-14 |
Family
ID=58277020
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US14/861,317 Active 2035-11-01 US10386191B2 (en) | 2015-09-22 | 2015-09-22 | Synthetic data collection for vehicle controller |
US16/364,560 Active US10620008B2 (en) | 2015-09-22 | 2019-03-26 | Synthetic data collection for vehicle controller |
US16/504,603 Active 2036-09-14 US11150097B2 (en) | 2015-09-22 | 2019-07-08 | Synthetic data collection for vehicle controller |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US14/861,317 Active 2035-11-01 US10386191B2 (en) | 2015-09-22 | 2015-09-22 | Synthetic data collection for vehicle controller |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US16/504,603 Active 2036-09-14 US11150097B2 (en) | 2015-09-22 | 2019-07-08 | Synthetic data collection for vehicle controller |
Country Status (2)
Country | Link |
---|---|
US (3) | US10386191B2 (en) |
CA (1) | CA2942581A1 (en) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10037148B2 (en) | 2016-01-05 | 2018-07-31 | Microsoft Technology Licensing, Llc | Facilitating reverse reading of sequentially stored, variable-length data |
US20170308561A1 (en) * | 2016-04-21 | 2017-10-26 | Linkedin Corporation | Indexing and sequentially storing variable-length data to facilitate reverse reading |
US10191693B2 (en) | 2016-10-14 | 2019-01-29 | Microsoft Technology Licensing, Llc | Performing updates on variable-length data sequentially stored and indexed to facilitate reverse reading |
US10731537B2 (en) | 2017-09-27 | 2020-08-04 | Denso International America, Inc. | Regeneration compliance systems for location based management of particulate filter regeneration |
CN111259091A (en) * | 2018-11-30 | 2020-06-09 | 中兴通讯股份有限公司 | Article prompting method, device, equipment and computer readable medium |
WO2020130787A1 (en) * | 2018-12-21 | 2020-06-25 | Mimos Berhad | A global positioning system data format conversion method and system thereof |
US11704345B2 (en) * | 2019-01-04 | 2023-07-18 | International Business Machines Corporation | Inferring location attributes from data entries |
CN114895814A (en) * | 2022-06-16 | 2022-08-12 | 广州小鹏汽车科技有限公司 | Interaction method of vehicle-mounted system, vehicle and storage medium |
Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4086632A (en) * | 1976-09-27 | 1978-04-25 | The Boeing Company | Area navigation system including a map display unit for establishing and modifying navigation routes |
US5948040A (en) * | 1994-06-24 | 1999-09-07 | Delorme Publishing Co. | Travel reservation information and planning system |
US6321158B1 (en) * | 1994-06-24 | 2001-11-20 | Delorme Publishing Company | Integrated routing/mapping information |
US6374176B1 (en) * | 1996-08-13 | 2002-04-16 | Nextbus Information Systems, Inc. | Public transit vehicle arrival information system |
US6618668B1 (en) * | 2000-04-26 | 2003-09-09 | Arrivalstar, Inc. | System and method for obtaining vehicle schedule information in an advance notification system |
US20050270311A1 (en) * | 2004-03-23 | 2005-12-08 | Rasmussen Jens E | Digital mapping system |
US20060215923A1 (en) * | 2005-03-25 | 2006-09-28 | Microsoft Corporation | Lossless compression algorithms for spatial data |
US20080010009A1 (en) * | 2006-07-04 | 2008-01-10 | Denso Corporation | Positional information use apparatus |
US20110196610A1 (en) * | 2010-02-05 | 2011-08-11 | Apple Inc. | Schematic maps |
US20110313655A1 (en) * | 2004-09-22 | 2011-12-22 | Kenneth Litvack | Navigation assistance method and system |
US8369606B2 (en) * | 2010-07-21 | 2013-02-05 | Palo Alto Research Center Incorporated | System and method for aligning maps using polyline matching |
US20130096819A1 (en) * | 2009-04-22 | 2013-04-18 | Gabor Tarnok | GPS tuner |
US20160165136A1 (en) * | 2014-12-05 | 2016-06-09 | Ricoh Company, Ltd. | Service system, information processing apparatus, and service providing method |
US20170011629A1 (en) * | 2014-10-09 | 2017-01-12 | Chun Ngok Lau | Public transit vehicle route schedule and notification system |
-
2015
- 2015-09-22 US US14/861,317 patent/US10386191B2/en active Active
-
2016
- 2016-09-21 CA CA2942581A patent/CA2942581A1/en active Pending
-
2019
- 2019-03-26 US US16/364,560 patent/US10620008B2/en active Active
- 2019-07-08 US US16/504,603 patent/US11150097B2/en active Active
Patent Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4086632A (en) * | 1976-09-27 | 1978-04-25 | The Boeing Company | Area navigation system including a map display unit for establishing and modifying navigation routes |
US5948040A (en) * | 1994-06-24 | 1999-09-07 | Delorme Publishing Co. | Travel reservation information and planning system |
US6321158B1 (en) * | 1994-06-24 | 2001-11-20 | Delorme Publishing Company | Integrated routing/mapping information |
US6374176B1 (en) * | 1996-08-13 | 2002-04-16 | Nextbus Information Systems, Inc. | Public transit vehicle arrival information system |
US6618668B1 (en) * | 2000-04-26 | 2003-09-09 | Arrivalstar, Inc. | System and method for obtaining vehicle schedule information in an advance notification system |
US20050270311A1 (en) * | 2004-03-23 | 2005-12-08 | Rasmussen Jens E | Digital mapping system |
US20110313655A1 (en) * | 2004-09-22 | 2011-12-22 | Kenneth Litvack | Navigation assistance method and system |
US20060215923A1 (en) * | 2005-03-25 | 2006-09-28 | Microsoft Corporation | Lossless compression algorithms for spatial data |
US20080010009A1 (en) * | 2006-07-04 | 2008-01-10 | Denso Corporation | Positional information use apparatus |
US20130096819A1 (en) * | 2009-04-22 | 2013-04-18 | Gabor Tarnok | GPS tuner |
US20110196610A1 (en) * | 2010-02-05 | 2011-08-11 | Apple Inc. | Schematic maps |
US8369606B2 (en) * | 2010-07-21 | 2013-02-05 | Palo Alto Research Center Incorporated | System and method for aligning maps using polyline matching |
US20170011629A1 (en) * | 2014-10-09 | 2017-01-12 | Chun Ngok Lau | Public transit vehicle route schedule and notification system |
US20160165136A1 (en) * | 2014-12-05 | 2016-06-09 | Ricoh Company, Ltd. | Service system, information processing apparatus, and service providing method |
Also Published As
Publication number | Publication date |
---|---|
US20190331500A1 (en) | 2019-10-31 |
US11150097B2 (en) | 2021-10-19 |
US20170082446A1 (en) | 2017-03-23 |
CA2942581A1 (en) | 2017-03-22 |
US10386191B2 (en) | 2019-08-20 |
US20190219406A1 (en) | 2019-07-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10620008B2 (en) | Synthetic data collection for vehicle controller | |
JP5066206B2 (en) | Link string conversion method, road information providing apparatus, and road information providing system | |
EP3325919B1 (en) | Providing a navigation system with navigable routes | |
US10054452B2 (en) | Personalized optimal travel route planning | |
US11480439B2 (en) | Method, apparatus, and computer program product for traffic optimized routing | |
CN102142215A (en) | Adaptive geographic information voice explanation method based on position and speed | |
EP3411664B1 (en) | Efficient and error tolerant mapping from a source graph to a target graph | |
US20170268894A1 (en) | Predicting short term travel behavior with unknown destination | |
WO2018104207A1 (en) | Encoding scheme for geographic position data | |
US11644333B2 (en) | Apparatus, method, and computer program product for generating map data of categorized links | |
KR20050120812A (en) | Route information transmitting method and device | |
EP3965043A1 (en) | Automated autonomous vehicle recommendations based on personalized transition tolerance | |
CN112084271A (en) | Map display method and device and computer storage medium | |
US20200408553A1 (en) | Route information transmission method, route information transmission system, and in-vehicle terminal | |
US11796322B2 (en) | Apparatus, method, and computer program product for updating link information on a client device | |
US11486717B1 (en) | Generating navigation instructions based on digital map context | |
CN102542906A (en) | Method for displaying one road and multiple names on electronic map | |
JP6141173B2 (en) | Map information and map information processing device | |
JP2012202773A (en) | Information processing device, information display device, information display system, information processing method, and program | |
Liu et al. | Platooning-based trajectory planning of connected and autonomous vehicles at superstreets | |
CN111597282A (en) | Method and device for mining road network data and electronic equipment | |
US20220351319A1 (en) | Method, apparatus, and computer program product for quantifying public transport coverage | |
EP3719755A1 (en) | Generating surface approximations using curvature integrals for surface visualization rendering | |
US20240085192A1 (en) | Systems and methods for determining a public transportation score | |
Ferlin | Development of Software to Predict Road Information using Map Data |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: CLEVER DEVICES LTD., NEW YORK Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:LONG, CODY;REEL/FRAME:048702/0060 Effective date: 20150922 |
|
FEPP | Fee payment procedure |
Free format text: ENTITY STATUS SET TO UNDISCOUNTED (ORIGINAL EVENT CODE: BIG.); ENTITY STATUS OF PATENT OWNER: SMALL ENTITY |
|
FEPP | Fee payment procedure |
Free format text: ENTITY STATUS SET TO SMALL (ORIGINAL EVENT CODE: SMAL); ENTITY STATUS OF PATENT OWNER: SMALL ENTITY |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: RESPONSE TO NON-FINAL OFFICE ACTION ENTERED AND FORWARDED TO EXAMINER |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: FINAL REJECTION MAILED |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: RESPONSE AFTER FINAL ACTION FORWARDED TO EXAMINER |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: NOTICE OF ALLOWANCE MAILED -- APPLICATION RECEIVED IN OFFICE OF PUBLICATIONS |
|
STCF | Information on status: patent grant |
Free format text: PATENTED CASE |
|
MAFP | Maintenance fee payment |
Free format text: PAYMENT OF MAINTENANCE FEE, 4TH YR, SMALL ENTITY (ORIGINAL EVENT CODE: M2551); ENTITY STATUS OF PATENT OWNER: SMALL ENTITY Year of fee payment: 4 |
|
AS | Assignment |
Owner name: ACQUIOM AGENCY SERVICES LLC, COLORADO Free format text: SECURITY INTEREST;ASSIGNOR:CLEVER DEVICES LTD.;REEL/FRAME:067709/0211 Effective date: 20240612 |