The description herein makes reference to the accompanying drawings wherein like reference numerals refer to like parts throughout the several views, and wherein:
The map server 6 is installed, for example, in an information center (not shown) adapted to transmit various data to the automotive navigation system 1. A map database 7 stores map data including old map data and newly-updated map data. The map server 6 can provide updated data for portions of the map data to the automotive navigation system 1 via wireless communication.
The automotive navigation system 1 comprises a controller 11 and the map data storage 12. The controller 11 comprises a microprocessor and can optionally include peripheral circuits. More specifically, the controller can be a microcomputer including a central processing unit (CPU), input and output ports (I/O), random access memory (RAM), keep alive memory (KAM), a common data bus and read only memory (ROM) as an electronic storage medium for executable programs and certain stored values as discussed hereinafter. The functions performed by controller described herein could be, for example, implemented in software as the executable programs of the microprocessor/controller 11, or could be implemented in whole or inpart by separate hardware in the form of one or more integrated circuits (IC). The map data storage 12 is, for example, a hard disc drive installed in the automotive navigation system 1. However, it should be understood that the map data storage 12 may be any non-volatile memory operable to retain stored data even when the automotive navigation system 1 is not activated, including internal memory of the controller 11 where the controller is a microcomputer.
The current position detecting device 13 detects the current position of a vehicle. The detecting device 13 comprises, for example, an orientation position sensor for detecting the moving orientation of a vehicle, a wheel speed sensor for detecting a vehicle speed and/or a GPS (Global Positioning System) sensor for detecting a GPS signal from a GPS satellite system.
The memory 15 stores vehicle location information detected by the current position detecting device 13. The memory 15 may also store node information or link information on a suggested route calculated by the controller 11. The memory 15 is part of the controller 11. Further, the communication interface 16 is an interface for connecting the communication device 4. Due to the communication interface 16, a mobile phone or a connection to the internet can be easily utilized as the communication device 4.
The monitor 17 is a display device for displaying a map, a suggested route and various types of information. The monitor 17 may be integrated into or separated from the body of the automotive navigation system 1. Further, the monitor 17 may be installed at a position that is distant from the automotive navigation system 1 using a cable connecting the monitor 17 and the automotive navigation system 1. The input device 18 accepts an input corresponding to the destination of a vehicle for conducting a route search. The input device 18 may be a remote controller or a touch panel screen of the monitor 17. The controller 11 performs various types of navigation processes such as a road map display, a route calculation (a route search), a route guide, etc., by using the current vehicle position information detected by the current position detecting device 13 and the map data stored in the map data storage 12. Further, various types of processing programs performed by the control device 11 are stored in ROM of the controller 11.
A data structure of the map data will now be explained in detail. The map data corresponds to map information such as road data, background data and the like. The road data is used to display a road, locate the current position of a vehicle or match with the map. The background data corresponds to data for displaying the background of a road or a road map.
The map data is managed in terms of a plurality of levels and a plurality of regions. Each level corresponds to a different display scale for the map, and map data is stored for each level at the corresponding display scale. In the present embodiment, the map data is divided into seven levels having different scales. The level of the scale for the most detailed map is Level 0, whereas that of the widest map is Level 6. However, the map data pertains to a targeted geographic area that is the same for all of the levels. That is, if Japan as a whole is the targeted geographic area, then the map data for each level describes the entirety of Japan in the scale corresponding to that level.
For example, Level 0 has the map data in 1/6250 scale of the entire Japan, while Level 1 has the map data in 1/25000 scale of the entire Japan. Level 2 has the map data in 1/100000 scale of the entire Japan, and Level 3 has the map data in 1/400000 scale of the entire Japan. Level 4 has the map data in 1/1600000 scale of the entire Japan, Level 5 has the map data in 1/6400000 scale of the entire Japan, and Level 6 has the map data in 1/128000000 scale of the entire Japan. That is, there are seven sets of map data corresponding to Levels 0 to 6. Level 0 and its vicinity are defined as a lower level, whereas Level 6 and its vicinity are defined as an upper level.
In Levels 3 and 4, the number of regions divided from the area 101 is different. This is because the amount of data in Level 4 (a wide map with a small scale) differs from that in Level 3 (a more detailed map with a relatively large scale). That is, each level has an appropriate division depending on the amount of data to be handled. At the same level, the size of one region is also the same.
In the present embodiment, a road is indicated as a node, a link and a link row. The node refers to an intersecting point or a designated point on the road. The link corresponds to a road between adjacent nodes. The link row indicates a series of roads as a plurality of links. The position information, etc., is interpolated between the nodes by an interpolation point.
In the data processing device, the road data in the map data stored in the map data storage 12 is in the form of a relational database managed by dividing the map data into a plurality of region data units that contain the road data for a particular region.
Each region data unit includes a unique region ID, a plurality of link row data units corresponding to link rows contained in the region and an associated identification value (ID). The region ID includes at least data that indicates that the region data unit defines a region, as well as data for specifying the region. The associated ID includes a region ID for associating with another region.
In an example shown in
Each link row data unit includes a unique link row ID, a plurality of the link data units constituting the link row and an associated ID. The link row ID includes at least data that indicates that the link row data unit represents a link row, as well as data for specifying the link row. In an example shown in
The link ID includes at least data that indicates that the link data unit represents a link, as well as data for specifying the link. The configuration data includes coordinate data of a node constituting the link and coordinate data of an interpolating point. The attribute data includes attribute information of the link such as the width, speed limit, road name, number of lanes and traffic regulations (e.g., one-way traffic) for the link. The associated ID includes data such as an ID of the node associated with the link, an ID of the link row including the link and an ID of the region including the link.
Further, although the manner in which the region data, the link row data and the link data is arranged is described in detail herein, it should be appreciated that the exact manner in which the data stored in the map data storage 12 is arranged is not important or significant.
In the map data processing device, the road data managed in a region unit can be partially updated in a link unit, a link row unit or a region unit. The map server 6 transmits updated road data to the automotive navigation system 1. For example, when an updated portion of the data is a link, a link data is transmitted. Further, when the updated portion of the data is a link row, a link row data is transmitted. In addition, when the updated portion covers a wide range, region data is transmitted. Also, when data is deleted, the map server transmits instructional data to delete such data while designating the ID of the link, link row or region to be deleted. Further, when data is updated, processes for deleting old data and adding new data are performed. That is, the instructional data of adding the new data and deleting the old data is transmitted to the automotive navigation system 1. A method of partially updating data for a road (i.e., road data) is explained below in view of
In step S20, map data required by a user is read from the map data storage 12. As explained above, since the map data stored in the map data storage 12 is managed in a region unit, the map data is also read in the region unit. For example, a plurality of region data in a desired region surrounding the user's own vehicle is read. A map based on the read map data is displayed on the monitor 17. The reading rate of the map data and the display rate of the map can be performed faster by reading the map data in a region unit rather than in a link unit or a link row unit.
In step S30 following step S20, it is determined whether the process of reading the map data is completed or not. If reading the map data is not completed, then the process returns to step S20 to continue the process of reading the map data. If reading the map data is completed, then the process returns to step S10.
In step S40, it is determined whether an instruction to update road data of the map data is present or not. When the data to be updated is transmitted from the map server 6, it is determined that an instruction for updating the road data is present. If an instruction to update data is not present, then the process returns to step S10. If an instruction for updating the map data is present, then the process returns to step S50.
In step S50, the updating process for the road data is performed. The updating process for the road data is explained below in view of
In step S100 the type of road data transmitted from the map server 6 is determined. In certain embodiments of the invention, it is assessed whether the transmitted road data is a link data, a link row data or a region data with reference to an ID contained in the road data. After determining the type of road data, the process advances to step S110.
In step S110 it is determined whether the road data received from the map server 6 is link data with reference to the process performed in step S100. If the received road data is link data, then the process advances to step S120, where region data corresponding to the link data is read from the map data storage 12 with reference to an associated ID of the link data received from the map server 6. The process then proceeds to step S130.
In step 130 the content of the region data read from the map data storage 12 is updated with reference to the link data received from the map server 6. For example, when link data to be added is transmitted from the map server 6, the received link data is stored in empty data space. Specifically, the link data is stored in the data space of a link row including the link with reference to an associated ID of the link data. Further, when the data received from the map server 6 includes an instruction for deleting link data, a process of deleting the instructed link data is performed.
As explained above, when changing the contents of the link data, instruction data for adding new link data and deleting old link data is transmitted from the map server 6. Thus, a process for deleting the instructed link data is performed together with a process for adding new link data.
In step S140, which follows step S130, region data having the updated contents is stored in the map data storage 12. By doing so, road data can be stored once again in the map data storage 12 in a region unit.
In contrast, in step S110 if it is determined that the road data received from the map server 6 is not link data, then the process proceeds to step S150. In step S150 it is determined whether the road data received from the map server 6 is link row data or not. If the received road data is link row data, then the process proceeds to step S160.
In step S160 region data corresponding to the link row is read from the map data storage 12 with reference to an associated ID of the link row data received from the map server 6. The process then proceeds to step S170 where region data read from the map data storage 12 is updated with reference to the link row data received from the map server 6. For example, when link row data to be added is transmitted from the map server 6, the received link row data is stored in empty data space. Further, when the data received from the map server 6 includes an instruction for deleting link row data, a process of deleting the instructed link row data is performed. When the contents of the link row data are updated, processes for deleting old link row data and adding new link row data are performed, similar to the updating process for the link data.
In step S180 following step S170, updated region data is stored in the map data storage 12. By doing so, road data can be stored once again in the map data storage 12 in a region unit.
Alternatively, if it is determined in step S150 that the road data received from the map server 6 is not link row data, then the process proceeds to step S190. In such a case, the road data received from the map server 6 is region data. In step S190, region data stored in the map data storage 12 is updated based on the region data received from the map server 6. For example, when region data to be added is transmitted from the map server 6, the received region data is stored in empty data space. Further, when the data received from the map server 6 includes an instruction for deleting region data, a process of deleting the instructed region data is performed. When the contents of the region data are updated, processes for deleting old region data and adding new region data are performed, similar to the process for updating the link data or the link row data. In such a case, road data can be stored once again in the map data storage 12 in a region unit.
According to the map data processing device constructed in accordance with the first embodiment of the invention, map data stored in the map data storage 12 in a region unit (a first data unit) is partially updated in a link unit or a link row unit (a second data unit), which is smaller than a region unit. The partially updated map data is stored once again in the map data storage 12 in a region unit (a first data unit). Since the road data can be read in a region unit by storing the road data in the map data storage 12 in a region unit, the rate of reading the data (i.e., the rate of displaying the map) can be increased. Further, since the road data can be updated in a link unit or a link row unit, which is smaller than the region unit, the efficiency of updating the data can be improved. That is, when an updated portion of the data is a link or a link row, there is no need to perform an unnecessary data updating in a region unit. Also, when an updated data is received from the information center via wireless communication, the costs of communication can be reduced by updating the data in a small-sized data unit such as a link unit or a link row unit.
In the first embodiment, the road data managed in a region unit is updated in a link unit, a link row unit or a region unit. Such data is then stored in the map data storage 12 in a region unit. In a second embodiment, background data for displaying a map stored in the map data storage 12 in the region unit is updated in a polygon poly-line data unit, a symbol notation data unit, a class data unit and a region unit. Then, the updated data is stored once again in the map data storage 12 in the region unit. Further, the background data is in the form of a relational database, which is stored in the map data storage 12.
The background data includes polygon data or poly-line data in order to display a mountain, a sea, a railway, a park, a facility, etc. The polygon data corresponds to data indicating a closed area such as a park. The poly-line data refers to data indicating a linear object such as a railway. The class data corresponds to data indicating the integration of a plurality of polygon data or poly-line data (i.e., a shoreline, river, etc.). As explained above, the region is a unit for indicating a desired area. Here, the regions of the first and second embodiments of the invention are the same.
As shown in
Each class data includes a unique class ID, the polygon data poly-line data constituting the class data and an associated ID. The class ID includes at least data that indicates that the data is class data, as well as data for specifying the class. In the class data, there is also provided empty data space in order to add the polygon data or the poly-line data. The associated ID includes an ID for relating to other data such as a background region data.
The configuration data includes a configuration element point data constituting the polygon. The attribute data includes attribute information of the polygon. For example, if the polygon is a park, then the attribute data may include the name of the park. The associated ID includes data such as a link ID associated with the polygon, a class ID including the polygon, a region ID including the polygon, etc. Although
The background data also includes symbol notation data for displaying various marks indicating such features as a school or a post office. When displaying a map, the names of the marks (e.g., US Post Office) are also displayed together with the marks. Such a name is referred to as a “notation.”
In the map data processing device of the second embodiment, the background data stored in the data storage 12 in a region unit can be partially updated in a polygon•poly-line data unit, a symbol•notation data unit, a class data unit and a region unit. The map server 6 transmits updated background data to the automotive navigation system 1. For example, when an updated portion of the data is polygon data, the map server 6 transmits the polygon data to be updated. When an updated portion of the data is class data, the map server 6 transmits the class data to be updated. Further, when the background data within the specific region is updated, the map server 6 transmits the background region data to be updated. Also, when the background data is deleted, the map server 6 transmits instruction data to delete such data while designating the ID of the polygon•poly-line data, the symbol•notation data, the class data or the region data to be deleted. Further, when the contents of the background data are updated, processes for deleting old background data and adding new background data are performed similar to the road data updating process. A method of partially updating the background data is explained below in view of
In step S220 map data from the map data storage 22 is read to display the map on the monitor 17. As mentioned above, since the map data stored in the map data storage 12 is managed in a region unit, the map data to be displayed on the monitor 17 is also read in a region unit. The monitor 17 displays the map with reference to the read map data. The data reading rate and the map displaying rate can be made faster by reading the map data in a region unit rather than in a symbol•notation data unit.
In step S230 following step S220, it is determined whether the process of reading the map data is completed or not. If the reading process is not completed, then the process returns to step S220 in order to continue reading the map data. If the reading process is completed, then the process returns to step S210.
In step S240 it is determined whether an instruction for updating the background data of the map data is present or not. When the background data to be updated is transmitted from the map server 6, it is determined that the instruction for updating the background data is present. If the instruction for updating the background data is not present, then the process returns to step S210. If the instruction for updating the background data is present, then the process advances to step S250.
In step S250, an updating process for the background data is performed. The updating process for the background data is explained below in view of
In step S300 the type of background data transmitted from the map server 6 is determined. In this embodiment, it is assessed whether the received background data is polygon data•poly-line data, class data or background region data with reference to the ID contained in the background data. After determining the type of background data, the process proceeds to step S310.
In step S310 it is determined whether the background data received from the map server is polygon data•poly-line data or symbol•notation data with reference to the process performed in step S300. If the received data is polygon data•poly-line data or symbol•notation data, then the process proceeds to step S320 where the background region data from the map data storage 12 is read. The background region data corresponding to the received background data received from the map server 6 is read with reference to the associated ID of the received background data. After the background region data is read, the process proceeds to step S330.
In step S330 the background region data read from the map data storage 12 is updated in a polygon•poly-line data unit or a symbol•notation data unit with reference to the background data received from the map server 6. For example, when polygon data to be added is transmitted from the map server 6, the received polygon data is stored in an empty data space. Specifically, when the class ID is contained in the associated ID of the polygon data, it is stored in the class data space corresponding to the class ID. When an instruction for deleting polygon data is contained in the data received from the map server 6, the process of deleting the instructed polygon data is performed. When changing the contents of the polygon data, a process of deleting the instructed old polygon data is performed together with a process of adding new polygon data. The processes of adding, deleting and updating the poly-line data and the symbol•notation data are performed in a similar manner.
In step S340 following step S330, the updated background region data is stored in the map data storage 12. By doing so, the background data can be stored once again in the map data storage 12 in a region unit.
Alternatively, if it is determined that the background data received from the map server 6 is not polygon data•poly-line data or symbol•notation data in step S310, then the process proceeds to step S350. In step S350 it is determined whether the background data received from the map server 6 is class data or not. If the received data is class data, then the process proceeds to step S360.
In step S360 the background region data from the map data storage 12 is read. Here, the background region data corresponding to the class data received from the map server 6 is read with reference to the associated ID of the class data. After the background region data is read, the process proceeds to step S370. In step S370, the background region data read from the map data storage 12 is updated in a class data unit. The processes of adding, deleting and updating the class data are identical to those of adding, deleting and updating the polygon data•poly-line data or the symbol•notation data.
In step S380, which follows step S370, the updated background region data is stored in the map data storage 12. By doing so, the background data can be stored once again in the map data storage 12 in a region unit.
Further, if it is determined in step S350 that the background data received from the map server 6 is not class data, then the process proceeds to step S390. In such a case, the background data received from the map server 6 is region data. In step S390, the background region data stored in the map data storage 12 is updated based on the background region data received from the map server 6. The processes of adding, deleting and updating the background region data are identical to those of adding, deleting and updating the region data performed by the map data processing device of the first embodiment. In such a case, the background data can be stored once again in the map data storage 12 in a region unit.
In the second embodiment, the map data stored in the map data storage 12 in a first data unit is partially updated in a second data unit, which is smaller than the first data unit. The partially updated map data is stored once again in the map data storage 12 in the first data unit. Particularly, in the second embodiment, the background data contained in the map data stored in the map data storage 12 in a region unit is updated in a polygon data poly-line data unit, a symbol•notation data unit or a class data unit, which is smaller than a region unit. Therefore, it is possible to improve the efficiency of updating data. In other words, when the data to be updated is polygon data•poly-line data, symbol•notation data or class data, there is no need to perform any unnecessary data updating in a region unit. Further, when the updated background data is received from the information center via wireless communication, the costs of communication can be reduced by updating the data in a small-sized data unit such as that for polygon data•poly-line data, symbol•notation data or class data.
The invention is not limited to the embodiments mentioned above. While it is explained that a data for updating the map data is wirelessly transmitted from the map server 6 to the automotive navigation system 1 in order to update the map data stored in the map data storage 12, the method of updating the map data is certainly not limited thereto. For example, the data for updating the map data may be provided via storage such as a removable memory to the automotive navigation system 1. Further, the map data can be updated by an external terminal (personal computer), which is wire-connected to the automotive navigation system 1.
In the embodiments of the invention, the square area in which the map data is divided is referred to as the region. However, the term “region” is used for convenience and the invention is certainly not limited by such a term. The region is not limited to the square area and can be set to a village, a town, a city, etc.
The updated unit of the map data is not limited to the link unit, the link row unit, the polygon•poly-line data unit, the symbol•notation data unit and the class data unit, as explained above. Further, the data unit stored in the map data storage 12 is not limited to the region unit, as explained above. That is, each data unit is not limited to the above-mentioned data unit so long as the map data stored in the map data storage 12 in the first data unit is partially updated in the second data unit, which is smaller than the first data unit. Then, the partially updated map data is stored once again in the map data storage 12 in the first data unit.
In the embodiments described above, the road data or the background data is stored in the map data storage 12 in the form of a relational database. However, it should be noted that the database format is certainly not limited to the relational database.
In step S10 shown in
While it is explained that the map data storage 12 is included in the automotive navigation system 1, the invention is not limited in this manner, and the map data storage 12 may be included in a portable navigation system or other devices such as a personal computer.
Accordingly, the above-described embodiments have been described in order to allow easy understanding of the present invention and do not limit the present invention. On the contrary, the invention is intended to cover various modifications and equivalent arrangements included within the scope of the appended claims, which scope is to be accorded the broadest interpretation so as to encompass all such modifications and equivalent structure as is permitted under the law.
Number | Date | Country | Kind |
---|---|---|---|
2006-128120 | May 2006 | JP | national |