WO2020189181A1 - 情報処理装置、方法およびプログラム - Google Patents

情報処理装置、方法およびプログラム Download PDF

Info

Publication number
WO2020189181A1
WO2020189181A1 PCT/JP2020/007106 JP2020007106W WO2020189181A1 WO 2020189181 A1 WO2020189181 A1 WO 2020189181A1 JP 2020007106 W JP2020007106 W JP 2020007106W WO 2020189181 A1 WO2020189181 A1 WO 2020189181A1
Authority
WO
WIPO (PCT)
Prior art keywords
width
nodes
node
terrain
data
Prior art date
Application number
PCT/JP2020/007106
Other languages
English (en)
French (fr)
Inventor
皓平 森
吉田 学
篤彦 前田
社家 一平
Original Assignee
日本電信電話株式会社
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 日本電信電話株式会社 filed Critical 日本電信電話株式会社
Priority to JP2021507127A priority Critical patent/JP7120444B2/ja
Priority to CN202080020756.6A priority patent/CN113614804B/zh
Priority to EP20772550.8A priority patent/EP3944215B1/en
Priority to US17/431,840 priority patent/US20220120584A1/en
Publication of WO2020189181A1 publication Critical patent/WO2020189181A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/34Route searching; Route guidance
    • G01C21/36Input/output arrangements for on-board computers
    • G01C21/3667Display of a road map
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/34Route searching; Route guidance
    • G01C21/36Input/output arrangements for on-board computers
    • G01C21/3697Output of additional, non-guidance related information, e.g. low fuel level
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/38Electronic maps specially adapted for navigation; Updating thereof
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/38Electronic maps specially adapted for navigation; Updating thereof
    • G01C21/3804Creation or updating of map data
    • G01C21/3807Creation or updating of map data characterised by the type of data
    • G01C21/3815Road data
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/38Electronic maps specially adapted for navigation; Updating thereof
    • G01C21/3863Structures of map data
    • G01C21/3867Geometry of map features, e.g. shape points, polygons or for simplified maps
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/60Editing figures and text; Combining figures or text
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/60Analysis of geometric attributes
    • G06T7/62Analysis of geometric attributes of area, perimeter, diameter or volume
    • GPHYSICS
    • G08SIGNALLING
    • G08GTRAFFIC CONTROL SYSTEMS
    • G08G1/00Traffic control systems for road vehicles
    • G08G1/01Detecting movement of traffic to be counted or controlled
    • G08G1/0104Measuring and analyzing of parameters relative to traffic conditions
    • G08G1/0108Measuring and analyzing of parameters relative to traffic conditions based on the source of data
    • G08G1/0112Measuring and analyzing of parameters relative to traffic conditions based on the source of data from the vehicle, e.g. floating car data [FCD]
    • GPHYSICS
    • G08SIGNALLING
    • G08GTRAFFIC CONTROL SYSTEMS
    • G08G1/00Traffic control systems for road vehicles
    • G08G1/01Detecting movement of traffic to be counted or controlled
    • G08G1/04Detecting movement of traffic to be counted or controlled using optical or ultrasonic detectors
    • GPHYSICS
    • G08SIGNALLING
    • G08GTRAFFIC CONTROL SYSTEMS
    • G08G1/00Traffic control systems for road vehicles
    • G08G1/09Arrangements for giving variable traffic instructions
    • G08G1/0962Arrangements for giving variable traffic instructions having an indicator mounted inside the vehicle, e.g. giving voice messages
    • G08G1/0968Systems involving transmission of navigation instructions to the vehicle
    • G08G1/0969Systems involving transmission of navigation instructions to the vehicle having a display in the form of a map
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/38Electronic maps specially adapted for navigation; Updating thereof
    • G01C21/3804Creation or updating of map data
    • G01C21/3807Creation or updating of map data characterised by the type of data
    • G01C21/3826Terrain data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20021Dividing image into blocks, subimages or windows
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20072Graph-based image processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30181Earth observation
    • G06T2207/30184Infrastructure

Definitions

  • Embodiments of the present invention relate to information processing devices, methods and programs.
  • the present invention has been made by paying attention to the above circumstances, and the purpose of the present invention is to obtain information suitable for calculating the width of a feature without using the data of the center line of the feature.
  • the purpose is to provide information processing devices, methods and programs.
  • one aspect of the information processing apparatus represents the position and shape of a feature by a plurality of nodes, or a plurality of nodes and links between the plurality of nodes.
  • a node suitable as a node used for calculating the width of an object is provided with a selection processing unit that selects a node from the other nodes based on the positional relationship between the selected node and the other node.
  • One aspect of the information processing method performed by the information processing apparatus is that the position and shape of the feature are represented by a plurality of nodes, or a plurality of nodes and links between the plurality of nodes.
  • Calculate the terrain coordinate group based on the terrain data select the adjacent or adjacent nodes indicated by the calculated terrain coordinate group, and select the node suitable as the node used for calculating the width of the feature. It includes selecting from the other nodes based on the positional relationship between the selected adjacent or adjacent nodes and the other nodes.
  • each aspect of the present invention it is possible to obtain information suitable for calculating the width of the feature without using the data of the center line of the feature.
  • FIG. 1 is a block diagram showing a functional configuration of a width calculation system (system) including a width calculation device according to an embodiment of the present invention.
  • FIG. 2 is a flowchart (flow chart) showing an example of the entire processing procedure of width calculation by the width calculation device according to the embodiment of the present invention.
  • FIG. 3 is a flowchart showing an example of a processing procedure of terrain data processing by the width calculation device according to the embodiment of the present invention.
  • FIG. 4 is a flowchart showing an example of a processing procedure of the width calculation process by the width calculation device according to the embodiment of the present invention.
  • FIG. 5 is a flowchart showing an example of a processing procedure of the width output control process by the width calculation device according to the embodiment of the present invention.
  • FIG. 6 is a plan view showing an example of each part of the road.
  • FIG. 7 is a diagram showing an example of an image of the road portion.
  • FIG. 8 is a diagram showing an example of a topographical data image of a road portion.
  • FIG. 9 is a diagram showing an example of a topographical data image of the sidewalk portion.
  • FIG. 10 is a diagram showing a first example of width calculation.
  • FIG. 11 is a diagram showing a second example of width calculation.
  • FIG. 12 is a diagram showing a second example of width calculation.
  • FIG. 13 is a diagram showing a third example of width calculation.
  • FIG. 14 is a diagram showing a fourth example of width calculation.
  • FIG. 15 is a diagram illustrating an example of calculating the width of the road portion.
  • FIG. 15 is a diagram illustrating an example of calculating the width of the road portion.
  • FIG. 16 is a diagram illustrating an example of calculating the width of the sidewalk portion.
  • FIG. 17 is a diagram showing an example of output of width information.
  • FIG. 18 is a diagram illustrating a first example of exceptional processing.
  • FIG. 19 is a diagram illustrating a second example of exceptional processing.
  • FIG. 20 is a diagram illustrating a third example of exceptional processing.
  • FIG. 21 is a diagram illustrating a fourth example of exceptional processing.
  • FIG. 22 is a diagram illustrating a fifth example of exceptional processing.
  • FIG. 23 is a block diagram showing an example of the hardware configuration of the width calculation device according to the embodiment of the present invention.
  • FIG. 1 is a block diagram showing a schematic configuration of a width calculation system including a width calculation device which is an information processing device according to an embodiment of the present invention.
  • the topographical data includes, for example, polygon data constituting a map service, polyline, and the like. This topographical data is a layer in which the location and shape of features such as roads, tunnels, sidewalks, rivers, railroad tracks, and buildings that exist on the map are represented by nodes and links. (Layer) Data created as separate data is used.
  • the topographical data may be data created from aerial photographs.
  • the terrain data is not limited to this aerial photograph, but may be data created from information measured by a vehicle equipped with a camera and various sensors.
  • map data map data
  • virtually created for computer games and the like can also be used as terrain data.
  • the width calculation device 100 shown in FIG. 1 is a device that calculates the width of roads, sidewalks, and the like based on topographical data, and is configured as follows. That is, the width calculation device 100 is composed of, for example, a personal computer, and includes a control unit (unit) 10, a storage unit 20, and an input / output interface unit (hereinafter, input / output I / F) 30. To be equipped with.
  • the width calculation device 100 is composed of, for example, a personal computer, and includes a control unit (unit) 10, a storage unit 20, and an input / output interface unit (hereinafter, input / output I / F) 30. To be equipped with.
  • the input / output I / F 30 supplies terrain data to the control unit 10. Further, the input / output I / F30 generates display data for displaying the width calculation result, and displays the display data as a display unit or an external display such as a file and a screen by a map application program. Output to the device etc. and display.
  • the storage unit 20 is a non-volatile memory (non-volatile memory) such as an HDD (Hard Disk Drive), an SSD (Solid State drive), etc., which can be written and read at any time, and a program memory (program memory). It is provided with a ROM (Read Only Memory) or the like used as a data, and includes a terrain coordinate group storage unit (terrestrial coordinate group data storage unit) 21, a width data storage unit 22, and a map data storage unit 23.
  • a ROM Read Only Memory
  • the terrain coordinate group storage unit 21 is used to store the terrain coordinate group data calculated by the terrain data processing unit 11 of the control unit 10.
  • the width data storage unit 22 is used to store the width data calculated by the width calculation unit 12 of the control unit 10.
  • the map data storage unit 23 is used to provide map data to the width output control unit 13 of the control unit 10.
  • the control unit 10 includes, for example, a central processing unit (CPU), and has a terrain data processing unit 11, a width calculation unit 12, and a width output control unit 13 as processing functions necessary for calculating the width. ..
  • CPU central processing unit
  • the control unit 10 includes, for example, a central processing unit (CPU), and has a terrain data processing unit 11, a width calculation unit 12, and a width output control unit 13 as processing functions necessary for calculating the width. ..
  • the functions of the terrain data processing unit 11, the width calculation unit 12, and the width output control unit 13 are realized by causing the CPU to execute a program stored in the program memory of the storage unit 20.
  • the program for executing the processing by the terrain data processing unit 11, the width calculation unit 12, and the width output control unit 13 may be a program stored in advance in the storage unit 20 in the width calculation device 100 and used. , A program stored and used in an application server (server) on the network. In this case, the width calculation device 100 downloads the necessary program from the application server via the network when necessary, thereby causing the terrain data processing unit 11, the width calculation unit 12, and the width output control unit 13. To execute the function by.
  • FIG. 2 is a flowchart showing an example of the entire processing procedure of width calculation by the width calculation device according to the embodiment of the present invention.
  • the width calculation device 100 acquires terrain data (S11), calculates terrain coordinate group data by terrain data processing described later (S12), calculates width by width calculation processing described later (S13), and will be described later.
  • Width output control processing is performed (S14), and the processing result is output to the display unit or an external device (S15).
  • FIG. 3 is a flowchart showing an example of a processing procedure of terrain data processing by the width calculation device according to the embodiment of the present invention.
  • the topographical data is represented as a node by latitude information and longitude information by plotting a large number of boundaries between various features such as roads, sidewalks, rivers, and buildings. It is assumed that the continuity of the boundary is represented by a straight line (link) in which adjacent nodes are connected. It is assumed that the area occupied by this terrain is represented on a map or the like by drawing a figure drawn by these nodes and links.
  • these topographical data may be created by, for example, a method such as human transcription based on an aerial photograph.
  • the terrain data is managed separately as nodes and links for roads only, sidewalks only, rivers only rivers, and buildings only buildings. By appropriately superimposing these as layers, more complicated terrain can be expressed.
  • topographical data for the road section is shown below.
  • the topographical data of the sidewalk is managed separately from the topographical data of the road.
  • the format of the topographical data of the sidewalk is the same as the format of the topographical data of the road.
  • Road block (1) [(x r1 , y r1 ), (x r2 , y r2 ),..., (x r7 , y r7 ), (x r1 , y r1 )]
  • each road block has the same value as the start point node as the end point node, and the figure drawn by the straight line (link) in which each node is connected is drawn by one stroke.
  • a node is represented by latitude information and longitude information, but the present invention is not limited to this, and a node may be represented by using a distance from a certain starting point as in a plane rectangular coordinate system. , And the latitude information and longitude information converted from these may be used.
  • the terrain data processing unit 11 acquires the terrain data (S12-1), and extracts the terrain data of the layer in which the road portion and the sidewalk portion are represented (S12-2). Subsequently, the terrain data processing unit 11 divides the extracted terrain data into block units described later by block division processing (S12-3). Further, the terrain data processing unit 11 removes information on nodes that overlap between blocks of terrain data by a process of removing overlapping coordinates between blocks, which will be described later (S12-4), and the terrain that is the data after the removal.
  • the coordinate group data is stored in the topographical coordinate group storage unit 21 of the storage unit 20 (S12-5).
  • FIG. 4 is a flowchart showing an example of a processing procedure of the width calculation process by the width calculation device according to the embodiment of the present invention.
  • the width calculation unit 12 acquires the terrain coordinate group data from the terrain coordinate group storage unit 21 of the storage unit 20 (S13-1), and selects the block to be processed from the terrain coordinate group data (S13-1). S13-2). Subsequently, as the selection processing unit, the width calculation unit 12 selects two adjacent nodes in the selected block (S13-3), and these two selected nodes and other nodes in the selected block. Based on the positional relationship with and, a node suitable as a node used for the calculation process of the width of the feature is selected from the other nodes (S13-4).
  • the width calculation unit 12 calculates the width from the positional relationship between the node selected in S13-4 and the two adjacent nodes described above (S13-5), and the width is stored in the width data storage unit 22 of the storage unit 20. Store the data (S13-6). S13-2 to S13-6 are performed for each block selected from the terrain coordinate group data, and S13-3 to S13-5 are performed for each set of two nodes selected in the block. Is done.
  • FIG. 5 is a flowchart showing an example of a processing procedure of the width output control process by the width calculation device according to the embodiment of the present invention.
  • the width output control unit 13 acquires width data from the width data storage unit 22 of the storage unit 20 (S14-1), and acquires map data from the map data storage unit 23 (S14-2).
  • the width output control unit 13 displays the above-mentioned width data on the map data on the map data based on the latitude information and the longitude information of the width data to the display device in the width calculation device 100 or the display device outside the width calculation device 100.
  • Output and display (S14-3).
  • FIG. 6 is a plan view showing an example of each part of the road.
  • the road portion 200 which is a road, is composed of a sidewalk portion 210, which is a sidewalk, and a roadway portion 220, which is a roadway.
  • the roadway portion 220 shall include a road shoulder 221 adjacent to the sidewalk portion 210, a lane marking 222, and a roadside band 223.
  • a concrete boundary block 230 is provided at the boundary between the sidewalk portion 210 and the roadway portion 220.
  • the configuration of the road portion 200 is not limited to the example shown in FIG. 6, and a post box, a tree, or the like may be provided on the road shoulder 221 or the like, for example.
  • FIG. 7 is a diagram showing an example of an image of the road portion.
  • FIG. 8 is a diagram showing an example of a topographical data image of a road portion.
  • FIG. 8 shows an example of a node link of terrain data representing the road portion 200 created from the image of the road portion shown in FIG. 7.
  • FIG. 9 is a diagram showing an example of a topographical data image of the sidewalk portion.
  • FIG. 9 shows an example of a node link of terrain data representing the sidewalk 210, created from the image of the road shown in FIG.
  • Road block [(x r1 , y r1 ), (x r2 , y r2 ),..., (x r17 , y r17 ), (x r18 , y r18 ), (x r1 , y r1 )]
  • Sidewalk block (1) [(x s1 , y s1 ), (x s2 , y s2 ),..., (x s7 , y s7 ), (x s1 , y s1 )]
  • Sidewalk block (2) [(x s8 , y s8 ), (x s9 , y s9 ),..., (x s14 , y s14 ), (x s8 , y s8 )] : The diamond-shaped figure in FIG. 8 and the round figure in FIG.
  • each node is represented by the coordinates (x, y) in the above-mentioned terrain coordinate group data of the road portion and the sidewalk portion. ..
  • width calculation an example of width calculation will be described.
  • two adjacent nodes in the block are selected in the processing of S13-3, S13-4, S13-5, and S13-6 described above, that is, in the processing procedure of (1) width calculation processing.
  • An example of a process of calculating the width from the positional relationship of the above and (3) a process of storing the width data in the width data storage unit 22 is shown.
  • FIG. 10 is a diagram showing a first example of width calculation.
  • the extraction of nodes whose distances from two consecutive points is equal to or less than a certain value will be described.
  • the width calculation unit 12 selects two adjacent nodes and selects a node group existing within a certain distance from the coordinates of both nodes.
  • the terrain coordinate group data is described so that a one-stroke root is formed clockwise as in the road section block A below.
  • a certain node and two points described before and after this node that is, before and after on the above-mentioned one-stroke route, are adjacent to each other.
  • the width calculation unit 12 utilizes this adjacency and uses a set consisting of a certain node and a node described as coordinates immediately after this node in the road unit block A for the width calculation process.
  • Road block A [(x r1 , y r1 ), (x r2 , y r2 ),..., (x r9 , y r9 ), (x r10 , y r10 ), (x r1 , y r1 )]
  • a set of a certain node and a node described immediately before this node that is, immediately before on the above-mentioned one-stroke route may be used for the width calculation process.
  • the width calculation unit 12 adjusts the subsequent processing to this description or orders the description as described above. You may perform a process such as replacing in advance along the clockwise direction of.
  • the width calculation unit 12 determines the distance d as parameters necessary for the process of selecting a node suitable as the node used in the width calculation process.
  • This distance d may be, for example, a fixed value (for example, 100 [m]), the average distance between each node in the block, or a value such as N times this, or for each road type (expressway, city road, etc.). A value such as M times the national average width may be used.
  • the width calculation unit 12 may determine a plurality of distances such as distances d1 and d2.
  • the width calculation unit 12 is within a certain distance d from two arbitrarily selected nodes “1” and “2” in the road unit block A, as shown in FIG. Select the existing node K by the OR condition.
  • the width calculation unit 12 is within the distance d1 from the node "1" of the two selected nodes “1” and “2” in the road unit block A. Select the nodes "5", "6", “8” to "10” existing in the node "3", "5", "9” and “10” existing in the distance d2 from the node "2".
  • the width calculation unit 12 converts the latitude information and longitude information described in each node into a plane rectangular coordinate system. , Calculate the distances d1 and d2.
  • 11 and 12 are diagrams showing a second example of width calculation.
  • the width calculation unit 12 has a vector “1 ⁇ 2” (V 12 ) and a vector “1 ⁇ each” for each of the selected nodes K for the node “1”. Calculate the inner product between "node K" (V 1K ).
  • the width calculation unit 12 has a vector “2 ⁇ 1” (V 21 ) and a vector “2 ⁇ each node” for each node K selected above for the node “2”. Calculate the inner product with "K" (V 2K ).
  • the inner product is a positive value when the angle between the vectors is 0 to 90 degrees, the inner product is 0 when the angle is 90 degrees, and the inner product is a negative value when the angle is 90 degrees to 180 degrees. It has the characteristic of being. From this characteristic, the width calculation unit 12 finds the node K whose inner product calculated according to the following equations (1) and (2) is a positive value, respectively, and obtains the above vector "1 ⁇ 2" from its own node. Select a node K that is suitable as the starting point of the perpendicular line drawn orthogonally to. In the examples shown in FIGS. 11 and 12, node "5" and node "10" are applicable. In this example, the case where the inner product is 0 is excluded, but this 0 may be included.
  • FIG. 13 is a diagram showing a third example of width calculation.
  • the width calculation unit 12 includes the vector “1 ⁇ 2” and the vector “1 ⁇ each selected node K” (here, the node “5” suitable as the starting point of the perpendicular line. , And the outer product with the node "10") is calculated.
  • the width calculation unit 12 selects the node K that satisfies the following equation (3).
  • node "5" corresponds to node K.
  • the topographical coordinate group data of the road part forms a one-stroke route clockwise like node “1" ⁇ node “2" ⁇ ... ⁇ node “10” ⁇ node “1” as described above.
  • the characteristic that the node existing on the opposite side of the road with respect to the vector "1 ⁇ 2" exists in the direction of rotating the vector "1 ⁇ 2" clockwise is utilized on the assumption that it is described as Will be done. If the description method is different, describe so that a one-stroke route is formed counterclockwise, for example, node "1"-> node "10"->...-> node "2"-> node "1". If so, the conditional expression may be changed.
  • the node existing on the opposite side of the road with respect to the vector "2 ⁇ 1" when the node K is calculated exists in the direction in which the vector "2 ⁇ 1" is rotated counterclockwise. Therefore, the node K whose outer product has a positive value is selected as shown in the following equation (4).
  • the width calculation unit 12 selects a node K existing within a certain distance d from any two selected nodes under the OR condition, and then extracts a node orthogonal to the vector connecting the two points.
  • the width calculation unit 12 has a vector “1 ⁇ 2” (V 12 ) and a vector “1 ⁇ each node K” (V) for each node K other than the nodes “1” and “2”.
  • the width calculation unit 12 calculates the inner product between the vector “2 ⁇ 1” (V 21 ) and the vector “2 ⁇ each node K” (V 2K ), and the inner product is a positive value by the equation (2). By selecting the node K which is, the nodes "5" and "10" are selected.
  • the width calculation unit 12 calculates the outer product between the vector "1 ⁇ 2" and the vector "1 ⁇ each selected node K" (here, node "5" and node “10"). Node "5" is selected by selecting node K whose outer product is a negative value according to equation (3). Subsequently, the width calculation unit 12 selects whether or not the node "5" exists within a certain distance d from the nodes "1" and “2" under the OR condition. Here, this node "5" corresponds to the condition.
  • the width calculation unit 12 also has a negative value in the outer product between the vector "1 ⁇ 2" and the vector "1 ⁇ all nodes K" for extracting the nodes orthogonal to the vector connecting the two points. After finding the node that is (nodes "4" to “7" are selected), the inner product between the vectors "1 ⁇ 2" (V 12 ) and the vector “1 ⁇ each node K" (V 1K ). And the inner product between the vectors of the vector “2 ⁇ 1” (V 21 ) and the vector “2 ⁇ each node K” (V 2K ) may be obtained, and a node in which both have positive values may be selected. Here, node "5" is selected.
  • FIG. 14 is a diagram showing a fourth example of width calculation.
  • a perpendicular line is drawn and the coordinates of the intersection are calculated.
  • the width calculation unit 12 draws a perpendicular line from the node “5” with respect to the vector “1 ⁇ 2”, and the intersection point L with the perpendicular line in the vector “1 ⁇ 2”. The distance between the coordinates and the coordinates of the node "5" is calculated.
  • the width calculation unit 12 uses the vector "K” based on the outer product of the vector "1 ⁇ 2" and the vector “1 ⁇ K” and the relationship between the vector "1 ⁇ 2" and the vector "1 ⁇ K". ⁇ Calculate the distance of "L” according to the following formulas (5) and (6).
  • the width calculation unit 12 uses the following equation (7) to determine the distance of the vector “K ⁇ L”, here the distance between the coordinates of the intersection L and the coordinates of the node “5”. ) Can be obtained.
  • the width calculation unit 12 determines the vector "1 ⁇ 2" based on the inner product of the vector "1 ⁇ 2" and the vector "1 ⁇ K" and the relationship between the vector “1 ⁇ K” and the vector “1 ⁇ L”. Calculate the distance of "L” and calculate the ratio of the distance between the vector "1 ⁇ 2" and the vector "1 ⁇ L”. The width calculation unit 12 obtains the coordinates of the intersection L according to the following equations (8) and (9) by using the results of these calculations and the latitude information and longitude information of the nodes "1" and "2". Can be done.
  • the width calculation unit 12 can obtain the distance of the vector "1 ⁇ L" according to the following equation (10).
  • the coordinates (x L , y L ) of the intersection L exist between the straight lines connecting the two points (x r1 , y r1 ) and (x r2 , y r2 ). From this, the width calculation unit 12 can calculate the coordinates of the intersection L according to the following equations (11) and (12). If necessary, the width calculation unit 12 calculates the coordinates of the intersection L after converting the coordinate system into a plane rectangular coordinate system.
  • the width calculation unit 12 sets the coordinates of the node K (a node suitable as a node used for the width calculation process), the coordinates of the intersection L, and the distance of the vector “K ⁇ L” (that is, the width KL) as follows. It is stored in the width data storage unit 22 as the width (1) of. Width (1): [(x K, y K ), (x L , y L ), KL] When a plurality of nodes K exist as described below, the width calculation unit 12 sets the width corresponding to each node as a separate record, and sets the widths (1) and (2) as the following width data storage units. Store in 22.
  • the width calculation unit 12 performs the above processing for the nodes “2" and "3", for the nodes "3" and "4", ..., For the nodes "10" and "1”. And sequentially, and the width data is stored in the width data storage unit 22. Further, the width calculation unit 12 performs the processing related to the next block after the processing for the block is completed. In the present embodiment, the width data is stored in the width data storage unit 22 as separate data for each road type, for example, as separate data for the road portion and the sidewalk portion.
  • FIG. 15 is a diagram illustrating an example of calculating the width of the road portion.
  • the width of the road portion is calculated from an example of the node and the link of the terrain data showing the road portion shown in FIG. 8, it is shown which node the width is calculated between.
  • FIG. 16 is a diagram illustrating an example of calculating the width of the sidewalk portion.
  • the width of the sidewalk portion is calculated from an example of the node and the link of the terrain data showing the sidewalk portion shown in FIG. 9, it is shown which node the width is calculated between.
  • the width calculation unit 12 is calculated for such nodes. By calculating the difference between the widths, the road width can also be calculated.
  • FIG. 17 is a diagram showing an example of output of width information.
  • FIG. 17 shows an example in which the width data is acquired, the map data is acquired, and the above-mentioned width data is displayed and output on the map data in the processing procedure by the width output control unit 13.
  • the width output control unit 13 gives latitude information and longitude information of the width data node K (a node suitable as a node used for width calculation processing) and the intersection L on the map data, and an arrow as a line connecting the two nodes. Is displayed, and further, by displaying the width KL in the vicinity of the arrow, the output data of the width can be obtained.
  • FIG. 18 is a diagram illustrating a first example of exceptional processing.
  • the block division processing (S12-3) by the terrain data processing unit 11 will be described.
  • the terrain coordinate group data is the data described as the sidewalk block (1) in which a plurality of blocks are one data
  • the terrain data processing unit 11 performs the following in block units as preprocessing. Subsequent processing may be performed after dividing into sidewalk block (1-1) and (1-2).
  • FIG. 19 is a diagram illustrating a second example of exceptional processing. In this example, the process of removing the overlapping coordinates between blocks (S12-4) by the terrain data processing unit 11 will be described. As shown in FIG. 19, when a node exists in the roadway portion or the like as a joint portion (c in FIG. 19) between a certain block (a in FIG. 19) and another block (b in FIG. 19).
  • the first point and the last point of the common nodes at this time are road edges, and these points may be left. In the example shown in FIG. 19, the first point is node "4" (x r4 , y r4 ) and the last point is node "7" (x r7 , y r7 ).
  • the terrain data processing unit 11 may similarly perform a process of removing as a pre-process or leaving a node at the road end, and then performing a process of removing another node.
  • the width cannot be calculated if the three-dimensional joint surface between road types is targeted for removal on a sidewalk existing as a layer on the road or an expressway existing on a general road. Therefore, it is necessary to pay attention to the three-dimensional structure between the layers.
  • FIG. 20 is a diagram illustrating a third example of exceptional processing.
  • the width calculation process (S13) by the width calculation unit 12 will be described.
  • the terrain coordinate group data of the sidewalk block as shown below corresponds to the outer circumference (corresponding to (1) below) and the inner circumference (corresponding to (2) below) in the block. It is assumed that the description cannot form a one-stroke route, such as being described separately.
  • the width calculation unit 12 first selects a node K that meets the conditions for both the outer peripheral node, the outer peripheral node, and the inner peripheral node in the topographical coordinate group data.
  • the node K that meets the conditions may be selected for both the outer peripheral node and the inner peripheral node from the inner peripheral node and the same processing may be performed.
  • the node K since the description order of the nodes on the outer circumference is clockwise and the description order of the nodes on the inner circumference is counterclockwise, the node K always clocks the first vector. It may be a node in the direction rotated around.
  • the width calculation unit 12 is a node that satisfies the condition for both the outer circumference node and the inner circumference node from the inner circumference node as described above.
  • selecting K the process may be appropriately changed by selecting a node in the direction in which the first vector is rotated counterclockwise as the node K.
  • FIG. 21 is a diagram illustrating a fourth example of exceptional processing.
  • FIG. 22 is a diagram illustrating a fifth example of exceptional processing. In these examples, processing for a complicated block will be described. As shown in FIGS. 21 and 22, when the terrain represented in one block is complicated, a node K that is not suitable for use as a width may be selected depending on the value of the distance d.
  • the width line drawn from the node “7" between the node “1" and the node “2" in FIG. 21 is not suitable as a road width because it also passes through a region other than the road portion.
  • the width calculation unit 12 obtains the width line A shown in FIG. 21, and then, as post-processing, the width line A has an intersection with a vector other than the vector “1 ⁇ 2”. Whether or not, in the example shown in FIG. 21, it is evaluated whether or not the width line A has an intersection with the vector “4 ⁇ 5”. When the intersection is provided, the width calculation unit 12 may exclude the obtained width line A from the target stored in the width data storage unit 22 because it is considered to be unsuitable for the road width.
  • the width line A drawn down from the node “6" between the node “1” and the node “2” in FIG. 22 does not pass through the area other than the road portion.
  • this width line A steps into the area of the road composed of the nodes "5", “6", “b” and “c”. Therefore, this width line A is not suitable as a road width.
  • FIG. 22 shows whether or not the width calculation unit 12 has an intersection between the width lines as a post-processing after obtaining the width lines for all the nodes in the block.
  • the width calculation unit 12 lowers the width line A drawn from the node “6" for the nodes “1” and “2” and the width line A from the node “c” for the nodes "5" and "6". Evaluate whether or not the width line has an intersection. When having an intersection, the width calculation unit 12 may consider that the width line A is unsuitable as the road width and exclude it from the target stored in the width data storage unit 22.
  • the processing may be performed using the nodes "1" and “1.5” and the nodes "1.5” and “2", respectively.
  • the width calculation device 100 changes the coordinate system to a plane orthogonal coordinate system.
  • the coordinate system may be converted into a format suitable for calculating the distance and the angle by conversion or the like.
  • the width calculation device 100 may perform a process of converting the coordinate system into a coordinate system suitable for the displayed map.
  • the width calculation device 100 may also calculate the width for a feature such as a river or a building, and realize map data to which these width information is added. It is possible.
  • FIG. 23 is a block diagram showing an example of the hardware configuration of the width calculation device according to the embodiment of the present invention.
  • the width calculation device 100 according to the above embodiment is composed of, for example, a server computer or a personal computer, and has a hardware processor 111 such as a CPU. Then, the program memory 111B, the data memory 112, the input / output interface 113, and the communication interface 114 are connected to the hardware processor 111 via the bus 120.
  • the input / output I / F 30 may be configured by using the input / output interface 113 and the communication interface 114 shown in FIG.
  • the communication interface 114 includes, for example, one or more wireless communication interface units, and enables information to be transmitted / received to / from the communication network NW.
  • the wireless interface for example, an interface that employs a low-power wireless data communication standard such as a wireless LAN (Local Area Network) is used.
  • the input / output interface 113 captures operation data input by an operator through an input device 50 such as a keyboard, touch panel, touchpad, and mouse, and outputs data in liquid crystal or organic.
  • a process of outputting to an output device 60 including a display device using EL (Electro Luminescence) or the like and displaying the data is performed.
  • EL Electro Luminescence
  • a device built in the width calculation device 100 may be used, and an input of another information terminal capable of communicating with the width calculation device 100 via the network NW may be used.
  • Devices and output devices may be used.
  • the program memory 111B is used as a non-temporary tangible storage medium by combining, for example, a non-volatile memory such as an HDD or SSD that can be written and read at any time and a non-volatile memory such as a ROM. A program necessary for executing various control processes according to the embodiment is stored.
  • the data memory 112 is used as a tangible storage medium, for example, in combination with the above-mentioned non-volatile memory and a volatile memory such as RAM (Random Access Memory), and various processes are performed. It is used to store various data acquired and created in the process.
  • RAM Random Access Memory
  • the width calculation device 100 has information having a terrain data processing unit 11, a width calculation unit 12, and a width output control unit 13 shown in FIG. 1 as processing function units by software. It can be configured as a processing device.
  • the terrain coordinate group storage unit 21, the width data storage unit 22, and the map data storage unit 23 of the storage unit 20 may be configured by using the data memory 112 shown in FIG. 23.
  • the topographical coordinate group storage unit 21, the width data storage unit 22, and the map data storage unit 23 are not indispensable configurations in the width calculation device 100, and are externally attached to, for example, a USB (Universal Serial Bus) memory. It may be provided in a storage medium or a storage device such as a database server arranged in the cloud.
  • the processing function units in each of the terrain data processing unit 11, the width calculation unit 12, and the width output control unit 13 all read and execute the program stored in the program memory 111B by the hardware processor 111. It can be realized by letting it. In addition, a part or all of these processing function units may be in various other formats including integrated circuits such as integrated circuits (ASIC (Application Specific Integrated Circuit)) or FPGA (Field-Programmable Gate Array) for specific applications. It may be realized.
  • ASIC Application Specific Integrated Circuit
  • FPGA Field-Programmable Gate Array
  • the width calculation device pays attention to the relationship between the nodes in the terrain data in which the position and shape of the feature are the nodes or the nodes and the links, and the width is set.
  • a node from which a corresponding line segment can be drawn is specified, and the width is calculated from the relationship between the coordinates of the two points constituting the line segment.
  • not only road width but also road width and sidewalk width can be calculated, and even when the road shape is changed due to construction work etc., the width information can be promptly obtained based on polygon data created from aerial photographs etc. Can be reflected.
  • the width of the roadway and the width of the sidewalk can be easily calculated by associating the terrain data of any layer such as a road or a sidewalk with each terrain data.
  • adjacent or adjacent nodes represented by the terrain coordinate group calculated from the terrain data are selected and used for calculating the width of the feature.
  • a node suitable as a node to be used is selected from other nodes based on the positional relationship between the selected node and the other node.
  • a node suitable as a node used for calculating the width of the feature can be selected.
  • topographical coordinates based on topographical data representing at least one type of feature on a road, a sidewalk in a road, and a roadway in a road is calculated.
  • the terrain coordinate group for the feature suitable for the calculation of the width can be appropriately calculated.
  • a node suitable as a starting point of a perpendicular line drawn with respect to a link connecting selected adjacent or adjacent nodes is selected, and the width is calculated.
  • a node suitable as the node to be used is selected from the nodes suitable as the starting point of the selected perpendicular, the intersection of the link and the perpendicular is obtained as the width calculation process, and the positional relationship with the node suitable as the node used for calculating the intersection and the width.
  • the width of the feature is calculated based on the distance of the perpendicular line connecting the intersection and the node suitable as the node used for calculating the width. As a result, the width of the feature can be calculated appropriately.
  • the width output control process for outputting the calculated information indicating the width to the outside is further performed, so that the information related to the width of the feature can be obtained. Can be output properly.
  • the information processing apparatus in addition to the calculated information indicating the width, it is suitable as a selected adjacent or adjacent node and a node used for calculating the width. Further, the width output control process for outputting information indicating one or more of nodes and intersections to the outside is performed. As a result, information on the width of the feature can be output appropriately.
  • the method described in each embodiment is a program (software means) that can be executed by a computer (computer), for example, a magnetic disk (floppy (registered trademark) disk (Floppy disk), hard disk, etc.), an optical disk, etc. It can be stored in a recording medium such as (CD-ROM, DVD, MO, etc.), a semiconductor memory (ROM, RAM, Flash memory, etc.), or transmitted and distributed by a communication medium.
  • the program stored on the medium side also includes a setting program for configuring the software means (including not only the execution program but also the table and the data structure) to be executed by the computer in the computer.
  • a computer that realizes this device reads a program recorded on a recording medium, constructs software means by a setting program in some cases, and executes the above-mentioned processing by controlling the operation by the software means.
  • the recording medium referred to in the present specification is not limited to distribution, and includes storage media such as magnetic disks and semiconductor memories provided in devices connected inside a computer or via a network.
  • the invention of the present application is not limited to the above embodiment, and can be variously modified at the implementation stage without departing from the gist thereof.
  • each embodiment may be carried out in combination as appropriate as possible, in which case the combined effect can be obtained.
  • the above-described embodiment includes inventions at various stages, and various inventions can be extracted by an appropriate combination in a plurality of disclosed constituent requirements.

Landscapes

  • Engineering & Computer Science (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Theoretical Computer Science (AREA)
  • Geometry (AREA)
  • Chemical & Material Sciences (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Analytical Chemistry (AREA)
  • Processing Or Creating Images (AREA)
  • Navigation (AREA)
  • Instructional Devices (AREA)
  • Traffic Control Systems (AREA)

Abstract

一実施形態に係る情報処理装置は、地物の位置および形状が複数のノード、または複数のノードおよび当該複数のノード間のリンクで表された地形データに基づいて地形座標群を算出する地形データ処理を行なう地形データ処理部と、前記地形データ処理部により算出された地形座標群で示される、隣接または近接するノードを選定し、前記地物の幅員の算出に用いられるノードとして適するノードを、前記選定されたノードと他のノードとの位置関係に基づいて前記他のノードから選定する選定処理部、とを有する。

Description

情報処理装置、方法およびプログラム
 本発明の実施形態は、情報処理装置、方法およびプログラムに関する。
 近年、自動車の運転サポート(support)、又はナビゲーション(navigation)といった技術に関する開発が活発に行なわれている。このとき車両などの移動先である道路において自車両が走行可能な道幅があるか否か、又は当該道路において路上駐車がなされていたとしても自車両が駐車車両を追い抜くことが可能な道幅があるか否か、などを示す、地物の幅員情報が重要である。
 従来では、道路中心線ベクトルデータ(vector data)と街区線ベクトルデータとを用いることで幅員を算出する手法(例えば特許文献1を参照)がある。
日本国特開2001-084357号公報
 ところが、特許文献1に記載された技術では、幅員を算出するために道路中心線のデータが必要である。また、この技術では、道路幅員は算出できるが自動車又は歩行者のナビゲーションに必要な車道幅員、又は歩行者が通行可能な歩道幅員を個別に算出出来ないという問題がある。
 この発明は、上記事情に着目してなされたもので、その目的とするところは、地物の中心線のデータを用いることなく、地物の幅員の算出に適する情報を得ることができるようにした情報処理装置、方法およびプログラムを提供することにある。
 上記目的を達成するために、この発明の一実施形態に係る情報処理装置の一態様は、地物の位置および形状が複数のノード、または複数のノードおよび当該複数のノード間のリンクで表された地形データに基づいて地形座標群を算出する地形データ処理を行なう地形データ処理部と、前記地形データ処理部により算出された地形座標群で示される、隣接または近接するノードを選定し、前記地物の幅員の算出に用いられるノードとして適するノードを、前記選定されたノードと他のノードとの位置関係に基づいて前記他のノードから選定する選定処理部と、を備える。
 本発明の一実施形態に係る、情報処理装置により行なわれる情報処理方法の一態様は、地物の位置および形状が複数のノード、または複数のノードおよび当該複数のノード間のリンクで表された地形データに基づいて地形座標群を算出することと、前記算出された地形座標群で示される、隣接または近接するノードを選定し、前記地物の幅員の算出に用いられるノードとして適するノードを、前記選定された前記隣接または近接するノードと他のノードとの位置関係に基づいて前記他のノードから選定することと、を備える。
 すなわち、本発明の各態様によれば、地物の中心線のデータを用いることなく、地物の幅員の算出に適する情報を得ることが可能になる。
図1は、本発明の一実施形態に係る幅員算出装置を備えた幅員算出システム(system)の機能構成を示すブロック図(block diagram)である。 図2は、本発明の一実施形態に係る幅員算出装置による幅員算出の全体の処理手順の一例を示すフローチャート(flow chart)である。 図3は、本発明の一実施形態に係る幅員算出装置による地形データ処理の処理手順の一例を示すフローチャートである。 図4は、本発明の一実施形態に係る幅員算出装置による幅員算出処理の処理手順の一例を示すフローチャートである。 図5は、本発明の一実施形態に係る幅員算出装置による幅員出力制御処理の処理手順の一例を示すフローチャートである。 図6は、道路の各部の一例を示す平面図である。 図7は、道路部のイメージの一例を示す図である。 図8は、道路部の地形データイメージの一例を示す図である。 図9は、歩道部の地形データイメージの一例を示す図である。 図10は、幅員算出の第1の例を示す図である。 図11は、幅員算出の第2の例を示す図である。 図12は、幅員算出の第2の例を示す図である。 図13は、幅員算出の第3の例を示す図である。 図14は、幅員算出の第4の例を示す図である。 図15は、道路部の幅員の算出の一例を説明する図である。 図16は、歩道部の幅員の算出の一例を説明する図である。 図17は、幅員の情報の出力の一例を示す図である。 図18は、例外的な処理の第1の例を説明する図である。 図19は、例外的な処理の第2の例を説明する図である。 図20は、例外的な処理の第3の例を説明する図である。 図21は、例外的な処理の第4の例を説明する図である。 図22は、例外的な処理の第5の例を説明する図である。 図23は、本発明の一実施形態に係る幅員算出装置のハードウエア構成の一例を示すブロック図である。
 以下、図面を参照しながら、この発明に係わる一実施形態を説明する。 
 図1は、本発明の一実施形態に係る情報処理装置である幅員算出装置を備えた幅員算出システムの概略構成を示すブロック図である。 
 地形データとしては、例えば、地図サービスを構成するポリゴン(polygon)データ、およびポリライン(polyline)等である。この地形データは、地図上に存在する道路、トンネル(tunnel)、歩道、河川、線路、およびビル(building)といった地物の位置および形状がノード(node)およびリンク(link)で表されたレイヤ(layer)別データとして作成されたデータが用いられる。
 なお、地形データは航空写真から作成されたデータでもよい。また地形データは、この航空写真に限らず、カメラ(camera)および各種センサ(sensor)が搭載された車両によって測定された情報から作成されたデータでもよい。又は、コンピュータゲーム(computer games)等向けに仮想的に作成されたマップデータ(map data)についても地形データとして利用可能である。
 図1に示される幅員算出装置100は、地形データに基づいて道路および歩道等の幅員を算出する装置で、以下のように構成される。 
 すなわち、幅員算出装置100は、例えばパーソナルコンピュータ(personal computer)により構成され、制御ユニット(unit)10と、記憶ユニット20と、入出力インタフェース(interface)ユニット(以後、入出力I/F)30とを備える。
 入出力I/F30は、地形データを制御ユニット10に供給する。また、入出力I/F30は、幅員算出結果を表示するための表示データを生成し、当該表示データを例えばファイル(file)および地図アプリケーションプログラム(application program)による画面等を表示する表示部または外部装置等へ出力して表示させる。
 記憶ユニット20は、記憶媒体として、例えばHDD(Hard Disk Drive)、SSD(Solid State drive)等の随時書込および読み出しが可能な不揮発性メモリ(non-volatile memory)、およびプログラムメモリ(program memory)として使用されるROM(Read Only Memory)等を備え、地形座標群記憶部(地形座標群データ記憶部)21と、幅員データ記憶部22と、地図データ記憶部23とを備える。
 地形座標群記憶部21は、制御ユニット10の地形データ処理部11により算出された地形座標群データを記憶するために使用される。 
 幅員データ記憶部22は、制御ユニット10の幅員算出部12により算出された幅員データを記憶するために使用される。 
 地図データ記憶部23は、制御ユニット10の幅員出力制御部13に地図データを提供するために使用される。
 制御ユニット10は、例えば中央処理ユニット(Central Processing Unit:CPU)を備え、幅員の算出に必要な処理機能として、地形データ処理部11と、幅員算出部12と、幅員出力制御部13とを有する。
 地形データ処理部11、幅員算出部12、および幅員出力制御部13による機能は、記憶ユニット20のプログラムメモリに格納されたプログラムをCPUに実行させることにより実現される。 
 なお、地形データ処理部11、幅員算出部12、および幅員出力制御部13による処理を実行させるためのプログラムは、幅員算出装置100内の記憶ユニット20に予め記憶されて使用されるプログラムでもよいし、ネットワーク(network)上のアプリケーションサーバ(server)等に記憶されて使用されるプログラムでよい。 
 この場合、幅員算出装置100は、必要なときに必要なプログラムをアプリケーションサーバからネットワークを介してダウンロード(download)することにより、上記地形データ処理部11、幅員算出部12、および幅員出力制御部13による機能を実行させる。
 図2は、本発明の一実施形態に係る幅員算出装置による幅員算出の全体の処理手順の一例を示すフローチャートである。 
 まず、幅員算出装置100は、地形データを取得し(S11)、後述する地形データ処理により地形座標群データを算出し(S12)、後述する幅員算出処理により幅員を算出し(S13)、後述する幅員出力制御処理を行ない(S14)、表示部または外部装置に処理結果を出力する(S15)。
 図3は、本発明の一実施形態に係る幅員算出装置による地形データ処理の処理手順の一例を示すフローチャートである。 
 なお、ここでは一例として、地形データは、道路、歩道、河川、およびビル等の各種地物間の多数の境界がプロット(plot)されて緯度情報および経度情報によりノードとして表現されると共に、この境界の連続性が、隣接するノード間が繋ぎ合わされた直線(リンク)により表現されるとする。 
 これらのノード及びリンクにより描かれる図形が描画されることで、この地形が占める領域が地図等に表現されるとする。なお、これら地形データは、例えば航空写真をベースに人間が書き起こすなどの方法により作成されてもよい。
 また、このとき地形データは、道路なら道路のみ、歩道なら歩道のみ、河川なら河川のみ、ビルならビルのみのノードおよびリンクとして別個に管理されるとする。これらが層(レイヤ)として適切に重ね合わせられることで、より複雑な地形も表現可能である。
 また、道路のように広大に広がる地物については、交差点等を切れ目とし、細かな領域(ブロック)に切り分けて管理されるとする。道路部の地形データ例を以下に示す。歩道部の地形データは道路部の地形データとは別個に管理される。この歩道部の地形データのフォーマット(format)は道路部の地形データのフォーマットと同一である。
 (道路部の地形データ例)
 道路部ブロック(1):[(xr1,yr1),(xr2,yr2),…,(xr7,yr7), (xr1,yr1)]
 道路部ブロック(2):[(xr8,yr8),(xr9,yr9),…,(xr14,yr14), (xr8,yr8)]
 このとき各道路部ブロックは、終点ノードとして始点ノードとで同一の値が記述されており、各ノードが繋ぎ合わせられた直線(リンク)により描画される図形は一筆書きで描かれるとする。
 なお、ノードに関しては緯度情報および経度情報により表現されると上記で説明したが、これに限らず、平面直角座標系のように、ある起点からの距離等が用いられることで表現されてもよく、また、これらから変換された緯度情報および経度情報が用いられてもよい。
 図3に係る処理として、まずは、地形データ処理部11は、地形データを取得し(S12-1)、道路部および歩道部がそれぞれ表されるレイヤの地形データを抽出する(S12-2)。 
 続いて、地形データ処理部11は、この抽出した地形データを、ブロック分割処理により、後述されるブロック単位に分割する(S12-3)。 
 更に、地形データ処理部11は、後述される、ブロック間重複座標の除去処理により、地形データのブロック間で重複するノードの情報を除去し(S12-4)、この除去後のデータである地形座標群データを記憶ユニット20の地形座標群記憶部21に格納する(S12-5)。
 図4は、本発明の一実施形態に係る幅員算出装置による幅員算出処理の処理手順の一例を示すフローチャートである。 
 選定処理部として、幅員算出部12は、記憶ユニット20の地形座標群記憶部21から地形座標群データを取得し(S13-1)、この地形座標群データから処理対象とするブロックを選定する(S13-2)。 
 続いて、選定処理部として、幅員算出部12は、この選定されたブロック内で隣接する2つのノードを選定し(S13-3)、これらの選定した2つのノードと選定したブロック内の他ノードとの位置関係に基づいて、地物の幅員の算出処理に用いられるノードとして適するノードを当該他ノードから選定する(S13-4)。 
 本実施形態では、隣同士にあるノードである、隣接する2つのノードがS13-3で選定されることについて説明するが、これに限らず、例えば同じ直線上に位置して、両者がすぐ近くに位置するノードである、近接する複数のノードが選定されてもよい。
 更に、幅員算出部12は、S13-4で選定されたノードと前述する隣接する2つのノードとの位置関係から幅員を算出し(S13-5)、記憶ユニット20の幅員データ記憶部22に幅員データを格納する(S13-6)。S13-2~S13-6は、地形座標群データから選定される各ブロックに対して行なわれ、S13-3~S13-5は、ブロック内で選定される2つのノードの各組に対して行なわれる。
 図5は、本発明の一実施形態に係る幅員算出装置による幅員出力制御処理の処理手順の一例を示すフローチャートである。 
 まず、幅員出力制御部13は、記憶ユニット20の幅員データ記憶部22から幅員データを取得し(S14-1)、地図データ記憶部23から地図データを取得する(S14-2)。幅員出力制御部13は、幅員データの緯度情報および経度情報をもとに、地図データ上に、前述の幅員データを幅員算出装置100内の表示装置、又は幅員算出装置100の外部の表示装置に出力して表示させる(S14-3)。
 図6は、道路の各部の一例を示す平面図である。 
 図6に示された例では、道路である道路部200は、歩道である歩道部210と、車道である車道部220とから構成される。車道部220には、歩道部210に隣接する路肩221、区画線222、および路側帯223を含むものとする。 
 また、歩道部210と車道部220との境界にはコンクリート(concrete)境界ブロック230が設けられる。また、道路部200の構成は図6に示された例に限られず、例えば路肩221などに郵便ポスト(post box)および樹木などが設けられてもよい。
 図7は、道路部のイメージの一例を示す図である。図8は、道路部の地形データイメージの一例を示す図である。 
 図8では、図7に示される道路部のイメージから作成された、道路部200を表す地形データのノード・リンクの一例が示される。 
 図9は、歩道部の地形データイメージの一例を示す図である。図9では、図7に示される道路部のイメージから作成された、歩道部210を表す地形データのノード・リンクの一例が示される。
 ここで、道路部ブロックを表すノードデータの一例を示す。 
 道路部ブロック:[(xr1,yr1),(xr2,yr2),…,(xr17,yr17),(xr18,yr18), (xr1,yr1)]
 次に、歩道部ブロックを表すノードデータの一例を示す。 
 歩道部ブロック(1):[(xs1,ys1),(xs2,ys2),…,(xs7,ys7), (xs1,ys1)]
 歩道部ブロック(2):[(xs8,ys8),(xs9,ys9),…,(xs14,ys14),(xs8,ys8)]
               :
 なお、図8におけるひし形の図形、及び図9における丸型の図形がノードをそれぞれ表し、上述の道路部及び歩道部の地形座標群データでは各ノードが(x,y)の座標で表される。本例では、このとき、例えば(xr1,yr1)と(xs1,ys1)のように、道路部と歩道部で座標が共通するノードも存在し得るものとする。
 次に幅員算出の例を説明する。本実施形態では、上記のS13-3、S13-4、S13-5、およびS13-6の処理、つまり(1)幅員算出処理の処理手順における、ブロック内で隣接する2つのノードを選定し、ブロック内の他ノードとの位置関係に基づいて、地物の幅員の算出処理に用いられるノードとして適するノードを他ノードから選定する処理、(2)この選定したノードと前述する隣接する2つのノードの位置関係から幅員を算出する処理、および(3)幅員データ記憶部22に幅員データを格納する処理、の一例をそれぞれ示す。
 図10は、幅員算出の第1の例を示す図である。この例では、連続する2点との距離が一定値以下のノードの抽出について説明する。 
 まずは、選定処理部として、幅員算出部12は、隣接する2つのノードを選定し、両ノードの座標から一定距離内に存在するノード群を選定する。
 図10に示されるようなブロックにおいて、地形座標群データは、下記の道路部ブロックAのように、時計回りに一筆書きのルート(root)が形成されるように記述されるとする。 
 このとき、地形座標群データにおいて、あるノードと、このノードの前後、つまり上記一筆書きのルート上の前後に記述されている2点は隣接している。本実施形態では、幅員算出部12は、この隣接を利用し、道路部ブロックAにおける、あるノードと、このノードの直後の座標として記述されるノードとでなる組を幅員算出処理に用いる。
 道路部ブロックA:[(xr1,yr1),(xr2,yr2),…,(xr9,yr9),(xr10,yr10), (xr1,yr1)]
 なお、これに限らず、地形座標群データにおいて、あるノードと、このノードの直前、つまり上記一筆書きのルート上の直前に記述されているノードという組が幅員算出処理に用いられてもよい。また、地形座標群データの記述が反時計回りに一筆書きのルートが形成されるよう記述される場合は、幅員算出部12は、以降の処理を、この記述に合わせるか、記述の順序を上記の時計回りに沿って予め入れ替える等の処理を実施しても良い。
 次に、幅員算出部12は、幅員の算出処理に用いられるノードとして適するノードを選定する処理に必要なパラメータ(parameters)として距離dを決定する。この距離dは例えば固定値(例えば100[m])でも良く、当該ブロック内の各ノード間の平均距離、又はこのN倍といった値でも良く、又は道路種別(高速道路、市道等)ごとの全国平均幅員のM倍といった値でも良い。また、幅員算出部12は、距離d1,d2といったように複数の距離を決定してもよい。
 続いて、選定処理部として、幅員算出部12は、道路部ブロックA内において、図10に示されるように、任意の選定された2つのノード「1」および「2」から一定距離d内に存在するノードKをOR条件で選定する。 
 図10に示された例では、選定処理部として、幅員算出部12は、道路部ブロックA内において、選定した2つのノード「1」および「2」のうち、ノード「1」から距離d1内に存在するノード「5」,「6」,「8」~「10」を選定し、上記ノード「2」から距離d2内に存在するノード「3」,「5」,「9」および「10」を選定し、これら選定したノードのOR条件に合致するノード「3」,「5」,「6」,「8」~「10」を選定する。
 このとき、道路部ブロックAの各ノードが緯度情報および経度情報で記述されている場合、幅員算出部12は、各ノードに記述される緯度情報および経度情報を平面直角座標系に変換した上で、距離d1,d2に係る計算を実施する。
 図11および図12は、幅員算出の第2の例を示す図である。この例では、2点を結ぶベクトルと直交するノードの抽出について説明する。 
 続いて、図11に示されるように、幅員算出部12は、上記ノード「1」について上記選定された各ノードKに対して、ベクトル「1→2」(V12)とベクトル「1→各ノードK」(V1K)と間の内積を算出する。
 また、図12に示されるように、幅員算出部12は、上記ノード「2」について上記選定された各ノードKに対して、ベクトル「2→1」(V21)とベクトル「2→各ノードK」(V2K)との間の内積を算出する。 
 このとき、ベクトル間の角度が0度から90度の間では内積は正の値であり、角度が90度では内積は0であり、角度が90度から180度の間では内積は負の値であるという特性がある。 
 この特性から、幅員算出部12は、下記の式(1)および(2)に従ってそれぞれ算出された内積がどちらも正の値となるノードKを求めることで、自ノードから上記ベクトル「1→2」に対して直交して引かれる垂線の起点として適するノードKを選定する。図11および図12に示された例では、ノード「5」およびノード「10」が該当する。 
 なお、本例では内積が0である場合を対象外としているが、この0を含んでもよい。
Figure JPOXMLDOC01-appb-M000001
 図13は、幅員算出の第3の例を示す図である。この例では、2点を結ぶベクトルに対して時計回りに回転する方向に存在するノードが抽出される処理などについて説明する。 
 続いて、図13に示されるように、幅員算出部12は、上記ベクトル「1→2」と、ベクトル「1→選定された各ノードK」(ここでは、上記垂線の起点として適するノード「5」、ノード「10」)との間の外積を算出する。
 このとき、1つ目のベクトルおよび2つ目のベクトルが同一平面上に存在すると仮定すると、1つ目のベクトルを時計周りに回転させた方向に2つ目のベクトルが存在する場合は、外積は負の値であり、また、1つ目のベクトルを反時計周りに回転させた方向に2つ目のベクトルが存在する場合は、外積は正の値である、という特性がある。この特性から、幅員算出部12は、下記の式(3)が満たされるノードKを選定する。
Figure JPOXMLDOC01-appb-M000002
 図13に示された例ではノード「5」がノードKに該当する。 
 これは、上記のように道路部の地形座標群データがノード「1」→ノード「2」→・・・→ノード「10」→ノード「1」のように時計回りに一筆書きのルートが形成されるよう記述されるという前提により、ベクトル「1→2」に対して道路の反対側に存在するノードはベクトル「1→2」を時計周りに回転させた方向に存在する、という特性が利用される。 
 また、記述方法が異なる場合、例えばノード「1」→ノード「10」→・・・→ノード「2」→ノード「1」のように反時計回りに一筆書きのルートが形成されるように記述されている等の場合は、条件式が変更されても良い。
 この場合は、ノードKが算出される際のベクトル「2→1」に対して道路の反対側に存在するノードはベクトル「2→1」を反時計周りに回転させた方向に存在することになるため、下記の式(4)のように、外積が正の値であるノードKが選定される。 
Figure JPOXMLDOC01-appb-M000003
 なお本例では、幅員算出部12は、任意の選定された2つのノードから一定距離d内に存在するノードKをOR条件で選定し、次に、2点を結ぶベクトルに直交するノードを抽出したが、これらの選定および抽出の順序は逆であってもよい。 
 つまり、図10において、幅員算出部12は、ノード「1」および「2」以外の各ノードKに対して、ベクトル「1→2」(V12)とベクトル「1→各ノードK」(V1K)との内積を算出し、式(1)により内積が正の値であるノードKを選定することで、ノード「3」~「5」および「10」が選定される。
 同様に、幅員算出部12が、ベクトル「2→1」(V21)とベクトル「2→各ノードK」(V2K)と間の内積を算出し、式(2)により内積が正の値であるノードKを選定することで、ノード「5」および「10」が選定される。
 続いて幅員算出部12は、上記ベクトル「1→2」と、ベクトル「1→選定された各ノードK」(ここではノード「5」、ノード「10」)との間の外積を算出し、式(3)により外積が負の値であるノードKを選定することで、ノード「5」が選定される。 
 続いて、幅員算出部12は、ノード「5」がノード「1」および「2」から一定距離d内に存在するか否かをOR条件で選定する。ここでは、このノード「5」が条件に該当する。
 なお、幅員算出部12は、2点のノードを結ぶベクトルに直交するノードの抽出に関しても、上記ベクトル「1→2」と、ベクトル「1→全ノードK」との間の外積が負の値であるノードを求めてから(ノード「4」~「7」が選定される)、ベクトル「1→2」(V12)とベクトル「1→各ノードK」(V1K)のベクトル間の内積及びベクトル「2→1」(V21)とベクトル「2→各ノードK」(V2K)のベクトル間の内積をそれぞれ求め、双方が正の値となるノードを選定してもよい。ここではノード「5」が選定される。
 図14は、幅員算出の第4の例を示す図である。この例では、垂線が引かれて、交点の座標が算出されることについて説明する。 
 次に、図14に示されるように、幅員算出部12は、上記ベクトル「1→2」に対してノード「5」から垂線を降ろし、ベクトル「1→2」における当該垂線との交点Lの座標と、ノード「5」の座標との距離を算出する。
 一例として、幅員算出部12は、ベクトル「1→2」とベクトル「1→K」との外積、およびベクトル「1→2」とベクトル「1→K」との関係に基づいて、ベクトル「K→L」の距離を下記の式(5)および(6)に従って算出する。
Figure JPOXMLDOC01-appb-M000004
 これらの式(5)および(6)より、幅員算出部12は、ベクトル「K→L」の距離、ここでは交点Lの座標とノード「5」の座標との距離を、下記の式(7)に従って求めることが出来る。
Figure JPOXMLDOC01-appb-M000005
 また、幅員算出部12は、ベクトル「1→2」とベクトル「1→K」との内積、およびベクトル「1→K」とベクトル「1→L」との関係に基づいて、ベクトル「1→L」の距離を算出し、ベクトル「1→2」とベクトル「1→L」との距離の比率を算出する。幅員算出部12は、これらの算出の結果とノード「1」、ノード「2」の緯度情報および経度情報とを用いることで、交点Lの座標を下記の式(8)および(9)に従って求めることが出来る。
Figure JPOXMLDOC01-appb-M000006
 これらの式(8)および(9)より、幅員算出部12は、ベクトル「1→L」の距離を下記の式(10)に従って求めることが出来る。
Figure JPOXMLDOC01-appb-M000007
 交点Lの座標(xL,yL)は(xr1,yr1),(xr2,yr2)の2点を結ぶ直線間に存在する。このことから、幅員算出部12は、交点Lの座標を下記の式(11)および(12)に従って計算することが出来る。必要に応じて、幅員算出部12は、座標系を平面直角座標系に変換した上で交点Lの座標を計算する。
Figure JPOXMLDOC01-appb-M000008
 以上を踏まえて、幅員算出部12は、ノードK(幅員の算出処理に用いられるノードとして適するノード)の座標、交点Lの座標と共にベクトル「K→L」の距離(つまり幅員KL)を、以下の幅員(1)として幅員データ記憶部22に格納する。 
 幅員(1):[(xK,yK),(xL,yL),KL]
 なお、下記のように複数のノードKが存在する場合は、幅員算出部12は各ノードに応じた幅員を別レコード(record)として、以下の幅員(1)および(2)として幅員データ記憶部22に格納する。
 幅員(1):[(xK1,yK1),(xL1,yL1),KL1]
 幅員(2):[(xK2,yK2),(xL2,yL2),KL2]
 幅員算出部12は、上記処理を、次はノード「2」、「3」に対して、ノード「3」、「4」に対して、…、ノード「10」、「1」に対して、と順次実施し、幅員のデータを幅員データ記憶部22に格納していく。さらに、幅員算出部12は、当該ブロックについて処理を終えた後は、次のブロックに係る処理を実施する。 
 なお本実施形態では、道路種別ごとに別々のデータ、例えば道路部と歩道部とで別のデータとして、幅員のデータが幅員データ記憶部22に格納されることとする。
 図15は、道路部の幅員の算出の一例を説明する図である。 
 図15では、図8に示される、道路部が表される地形データのノードおよびリンクの一例から道路部の幅員が算出された場合、どのノード間で幅員が算出されるかが示される。
 図16は、歩道部の幅員の算出の一例を説明する図である。 
 図16では、図9に示される、歩道部が表される地形データのノードおよびリンクの一例から歩道部の幅員が算出された場合、どのノード間で幅員が算出されるかが示される。
 本実施形態では、図8に示される道路部と図9に示される歩道部とには座標が共通であるノードが存在するため、幅員算出部12は、このようなノードを対象に算出された幅員同士の差分を算出することで、車道幅員も算出出来る。
 図17は、幅員の情報の出力の一例を示す図である。 
 図17では、幅員出力制御部13による処理手順における、幅員データを取得し、地図データを取得し、地図データ上に前述の幅員データを表示して出力する一例が示される。
 幅員出力制御部13は、上記幅員データのノードK(幅員の算出処理に用いられるノードとして適するノード)および交点Lの緯度情報および経度情報を地図データ上に与え、両ノード間を結ぶ線として矢印を表示し、さらに、幅員KLを当該矢印の近傍に表示することで、幅員の出力データを得ることが出来る。
 以下、例外的な処理の例について説明する。 
 図18は、例外的な処理の第1の例を説明する図である。この例では、地形データ処理部11によるブロック分割処理(S12-3)について説明する。 
 下記のように、地形座標群データが、複数のブロックが1つのデータである歩道部ブロック(1)として記述されたデータであれば、地形データ処理部11は、前処理としてブロック単位で以下の歩道部ブロック(1-1)および(1-2)に分割した上で以降の処理を実施してもよい。
 (処理前)
 歩道部ブロック(1):[(xs1,ys1),(xs2,ys2),…,(xs7,ys7),(xs1,ys1),(xs8,ys8),(xs9,ys9),…,(xs14,ys14),(xs8,ys8),…]
 (処理後)
 歩道部ブロック(1-1):[(xs1,ys1),(xs2,ys2),…,(xs7,ys7),(xs1,ys1)]
 歩道部ブロック(1-2):[(xs8,ys8),(xs9,ys9),…,(xs14,ys14),(xs8,ys8)]
 図19は、例外的な処理の第2の例を説明する図である。この例では、地形データ処理部11によるブロック間重複座標の除去処理(S12-4)について説明する。 
 図19に示すように、あるブロック(図19中のa)と別のブロック(図19中のb)との間の接合部(図19中のc)として車道部内等にノードが存在する場合、複数ブロックに共通するノード、ここでは下記の道路部地形データ(1)~(5)における(xr4,yr4),(xr5,yr5),(xr6,yr6),(xr7,yr7)に対応するノードは車道部内のノードに該当するとして、地形データ処理部11は、前処理としてこれらのノードを除去した上で以降の処理を実施しても良い。
 道路部地形データ(1):[(xr1,yr1),…,(xr4,yr4),(xr5,yr5),(xr6,yr6),(xr7,yr7),…,(xr17,yr17),(xr18,yr18),(xr1,yr1)]
 …
 道路部地形データ(5):[(xr80,yr80),…,(xr4,yr4),(xr5,yr5),(xr6,yr6),(xr7,yr7),…,(xr80,yr80)]
 また、このときの共通するノードのうち最初の点と最後の点は道路端であるとして、これらの点を残してもよい。図19に示された例では、上記最初の点はノード「4」(xr4,yr4)で、上記最後の点はノード「7」(xr7,yr7)である。
 また、道路として一概に纏めずに、高速道路、国道および県道などの道路種別ごとに別レイヤとして扱われる場合、異なる道路種別間でも同様に接合面が存在することになる。このため、地形データ処理部11は、同様に前処理として除去、又は道路端のノードを残す処理を行なった上で、他のノードを除去するなどの処理を実施しても良い。 
 ただし道路の上のレイヤとして存在する歩道、又は一般道の上に存在する高速道路等における、道路種別間の立体的な接合面を除去対象とすると幅員を算出出来ないケースが存在する。このため、レイヤ間の立体的な構造にも留意する必要がある。
 図20は、例外的な処理の第3の例を説明する図である。この例では、幅員算出部12による幅員算出処理(S13)について説明する。 
 ここでは、図20に示されるように、下記のような歩道部ブロックの地形座標群データが、ブロック内で外周(下記の(1)に対応)と内周(下記の(2)に対応)とが分かれて記述されるといった、一筆書きのルートが形成できない記述であるとする。 
 (1):[(xs11,ys11),(xs12,ys12),(xs13,ys13),(xs14,ys14),(xs15,ys15),(xs11,ys11)]
 (2):[(xs21,ys21),(xs22,ys22),(xs23,ys23),(xs24,ys24),(xs21,ys21)]
 このような記述であっても、幅員算出部12は、地形座標群データにおいて、まず外周のノードから外周のノードおよび内周のノードの双方に対して条件に該当するノードKを選定して同様の処理を実施し、その後、内周のノードから外周のノードおよび内周のノードの双方に対して条件に該当するノードKを選定して同様の処理を実施しても良い。
 (歩道部ブロック):[(xs11,ys11),(xs12,ys12),(xs13,ys13),(xs14,ys14),(xs15,ys15),(xs11,ys11)] , [(xs21,ys21),(xs22,ys22),(xs23,ys23),(xs24,ys24),(xs21,ys21)]
 また、図20に示された例では、外周におけるノードの記載順序は時計回りであり、内周におけるノードの記載順序が反時計周りであるため、常に、ノードKは1つ目のベクトルを時計周りに回転させた方向のノードとしても良い。 
 一方、内周におけるノードの記載順序が時計周りである場合は、幅員算出部12は、上記のように内周のノードから外周のノードおよび内周のノードの双方に対して条件に該当するノードKを選定する際は、ノードKとして1つ目のベクトルを反時計周りに回転させた方向のノードを選定する等して、処理を適宜変更して良い。
 図21は、例外的な処理の第4の例を説明する図である。図22は、例外的な処理の第5の例を説明する図である。これらの例では、複雑なブロックに対する処理について説明する。図21および図22に示されるように、1つのブロック内で表現される地形が複雑である場合、距離dの値次第では幅員として用いられるには適さないノードKが選定されることがある。
 例えば、図21におけるノード「1」およびノード「2」の間に対してノード「7」から下された幅員線は、道路部ではない領域も通過しているため道路幅員として適さない。このようなノードKについては、幅員算出部12は、図21に示される幅員線Aを求めた後に、後処理として、この幅員線Aがベクトル「1→2」以外のベクトルとの交点を有するか否か、図21に示された例では幅員線Aがベクトル「4→5」との交点を有するか否かを評価する。
 当該交点を有する場合は、幅員算出部12は、上記求めた幅員線Aは道路幅員として不適であるとして、これを幅員データ記憶部22に格納される対象から外しても良い。
 また、例えば図22におけるノード「1」およびノード「2」の間に対してノード「6」から降ろされた幅員線Aは、道路部ではない領域を通過しない。しかしこの幅員線Aは、ノード「5」,「6」,「b」および「c」で構成される道路の領域に踏み込んでいる。このため、この幅員線Aは道路幅員として適さない。 
 このようなノードKについては、幅員算出部12は、幅員線をブロック内の全ノードに対して求めた後の後処理として、幅員線同士で交点を有するか否か、図22に示された例では、幅員算出部12は、ノード「1」および「2」に対してノード「6」から下された幅員線Aと、ノード「5」および「6」に対してノード「c」から降ろされた幅員線とが交点を有するか否かを評価する。 
 交点を有する場合は、幅員算出部12は、幅員線Aは道路幅員として不適であるとして、これを幅員データ記憶部22に格納される対象から外してもよい。
 また、例えば長大な直線道路等のように、ブロック内にノードが少なく幅員線が引かれる数が非常に少ない道路が対象である場合は、ノード「1」およびノード「2」の間の中間ノード「1.5」を設けることで、ノード「1」,「1.5」と、ノード「1.5」,「2」とをそれぞれ用いて処理を実施してもよい。
 次に補足について説明する。 
 上記各処理が他ブロックに対しても実施されることで、全国の道路網が網羅された地図データであって、道路、歩道および車道に関する幅員情報が付与された地図データが実現され得る。 
 また、各ノードの座標が経度および緯度で表される場合、又は各ノードの座標が度分秒形式の60進数で表される場合は、幅員算出装置100は、座標系を平面直角座標系に変換する等して、座標系を距離および角度を算出する際に適した形式に変換しても良い。同様に、地図データ上に幅員データが表示される際に、幅員算出装置100は、座標系を表示される地図にあわせた座標系に変換するといった処理を実施しても良い。
 なお、道路に限らず、地形データが存在するものであれば、幅員算出装置100は、河川または建造物といった地物に対する幅員も算出し、これら幅員情報が付与された地図データを実現することも可能である。
 図23は、本発明の一実施形態に係る幅員算出装置のハードウエア構成の一例を示すブロック図である。 
 図23に示された例では、上記の実施形態に係る幅員算出装置100は、例えばサーバコンピュータ(server computer)またはパーソナルコンピュータにより構成され、CPU等のハードウエアプロセッサ(hardware processor)111を有する。そして、このハードウエアプロセッサ111に対し、プログラムメモリ111B、データメモリ(data memory)112、入出力インタフェース113及び通信インタフェース114が、バス(bus)120を介して接続される。入出力I/F30は、図23に示された入出力インタフェース113及び通信インタフェース114が用いられることで構成され得る。
 通信インタフェース114は、例えば1つ以上の無線の通信インタフェースユニットを含んでおり、通信ネットワークNWとの間で情報の送受信を可能にする。無線インタフェースとしては、例えば無線LAN(Local Area Network)などの小電力無線データ通信規格が採用されたインタフェースが使用される。
 入出力インタフェース113には、幅員算出装置100に付設される、オペレータ(operator)用の入力デバイス(device)50および出力デバイス60が接続される。 
 入出力インタフェース113は、キーボード(keyboard)、タッチパネル(touch panel)、タッチパッド(touchpad)、マウス(mouse)等の入力デバイス50を通じてオペレータにより入力された操作データを取り込むとともに、出力データを液晶または有機EL(Electro Luminescence)等が用いられた表示デバイスを含む出力デバイス60へ出力して表示させる処理を行なう。なお、入力デバイス50および出力デバイス60には、幅員算出装置100に内蔵されたデバイスが使用されてもよく、また、ネットワークNWを介して幅員算出装置100と通信可能である他の情報端末の入力デバイスおよび出力デバイスが使用されてもよい。
 プログラムメモリ111Bは、非一時的な有形の記憶媒体として、例えば、HDDまたはSSD等の随時書込みおよび読出しが可能な不揮発性メモリと、ROM等の不揮発性メモリとが組み合わせて使用されたもので、一実施形態に係る各種制御処理を実行する為に必要なプログラムが格納されている。
 データメモリ112は、有形の記憶媒体として、例えば、上記の不揮発性メモリと、RAM(Random Access Memory)等の揮発性メモリ(volatile memory)とが組み合わせて使用されたもので、各種処理が行なわれる過程で取得および作成された各種データが記憶される為に用いられる。
 本発明の一実施形態に係る幅員算出装置100は、ソフトウエア(software)による処理機能部として、図1に示される地形データ処理部11、幅員算出部12、および幅員出力制御部13を有する情報処理装置として構成され得る。
 記憶ユニット20の地形座標群記憶部21、幅員データ記憶部22、および地図データ記憶部23は、図23に示されたデータメモリ112が用いられることで構成され得る。ただし、これらの地形座標群記憶部21、幅員データ記憶部22、および地図データ記憶部23は、幅員算出装置100内に必須の構成ではなく、例えば、USB(Universal Serial Bus)メモリなどの外付け記憶媒体、又はクラウド(cloud)に配置されたデータベースサーバ(database server)等の記憶装置に設けられたものであってもよい。
 上記の地形データ処理部11、幅員算出部12、および幅員出力制御部13の各部における処理機能部は、いずれも、プログラムメモリ111Bに格納されたプログラムを上記ハードウエアプロセッサ111により読み出させて実行させることにより実現され得る。なお、これらの処理機能部の一部または全部は、特定用途向け集積回路(ASIC(Application Specific Integrated Circuit))またはFPGA(Field-Programmable Gate Array)などの集積回路を含む、他の多様な形式によって実現されてもよい。
 以上説明したように、本発明の一実施形態に係る幅員算出装置は、地物の位置および形状がノード、またはノードおよびリンクで表された地形データにおけるノード間の関係性に着目し、幅員に相当する線分を引くことが出来るノードを特定し、線分を構成する2点の座標間の関係から幅員を算出する。 
 これにより、道路中心線のデータを用いることなく道路の幅員を算出できるようになる。更に、道路幅員だけでなく車道幅員、歩道幅員を算出できるようになり、工事などで道路形状が変更された際にも、航空写真などから作成されるポリゴンデータなどに基づいて速やかに幅員情報を反映できる。また、道路、歩道などの任意のレイヤの地形データからそれぞれの地形データと関連付けられることで、車道幅員、歩道幅員が容易に算出され得る。
 また、本発明の一実施形態では、ゴミ収集車、又は宅配業者により運転されるようなトラック(truck)等の車両が通行可能な幅員が存在するか否か、または、車両が路上に止むを得ず駐停車する際に他車両が通行可能なだけの幅員が存在するか否か、などの情報を事前に知ることができる。また、本発明の一実施形態では、幅員情報が掲載された静的地図、又は幅員情報が活用された最適な道案内を行なうナビゲーションアプリなどの提供が可能となる。
 この発明の一実施形態に係る情報処理装置の第1の態様によれば、地形データから算出された地形座標群で示される、隣接または近接するノードが選定され、地物の幅員の算出に用いられるノードとして適するノードが、選定されたノードと他のノードとの位置関係に基づいて他のノードから選定される。これにより、地形データが用いられることで、地物の幅員の算出に用いられるノードとして適するノードが選定され得る。
 この発明の一実施形態に係る情報処理装置の第2の態様によれば、道路、道路内の歩道、および道路内の車道の少なくとも1種類の地物が表される地形データに基づいて地形座標群が算出される。これにより、幅員の算出に適する地物に関する地形座標群が適切に算出され得る。
 この発明の一実施形態に係る情報処理装置の第3の態様によれば、選定された隣接または近接するノードを結ぶリンクに対して引かれる垂線の起点として適するノードを選定し、幅員の算出に用いられるノードとして適するノードを選定された垂線の起点として適するノードから選定し、幅員算出処理として、リンクと垂線との交点を求め、交点と幅員の算出に用いられるノードとして適するノードとの位置関係、または交点と幅員の算出に用いられるノードとして適するノードとを結ぶ垂線の距離に基づいて、地物の幅員を算出する。これにより、地物の幅員を適切に算出することができる。
 この発明の一実施形態に係る情報処理装置の第4の態様によれば、算出された、幅員を示す情報を外部に出力する幅員出力制御処理を更に行なうので、地物の幅員に係る情報が適切に出力され得る。
 この発明の一実施形態に係る情報処理装置の第5の態様によれば、算出された、幅員を示す情報に加えて、選定された隣接または近接するノード、幅員の算出に用いられるノードとして適するノード、交点のいずれか1つ以上を示す情報を外部に出力する幅員出力制御処理を更に行なう。これにより、地物の幅員に係る情報が適切に出力され得る。
 また、各実施形態に記載された手法は、計算機(コンピュータ)に実行させることができるプログラム(ソフトウエア手段)として、例えば磁気ディスク(フロッピー(登録商標)ディスク(Floppy disk)、ハードディスク等)、光ディスク(CD-ROM、DVD、MO等)、半導体メモリ(ROM、RAM、フラッシュメモリ(Flash memory)等)等の記録媒体に格納し、また通信媒体により伝送して頒布することもできる。なお、媒体側に格納されるプログラムには、計算機に実行させるソフトウエア手段(実行プログラムのみならずテーブル(table)、データ構造も含む)を計算機内に構成させる設定プログラムをも含む。本装置を実現する計算機は、記録媒体に記録されたプログラムを読み込み、また場合により設定プログラムによりソフトウエア手段を構築し、このソフトウエア手段によって動作が制御されることにより上述した処理を実行する。なお、本明細書でいう記録媒体は、頒布用に限らず、計算機内部あるいはネットワークを介して接続される機器に設けられた磁気ディスク、半導体メモリ等の記憶媒体を含むものである。
 なお、本願発明は、上記実施形態に限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で種々に変形することが可能である。また、各実施形態は可能な限り適宜組み合わせて実施してもよく、その場合組み合わせた効果が得られる。更に、上記実施形態には種々の段階の発明が含まれており、開示される複数の構成要件における適当な組み合わせにより種々の発明が抽出され得る。
  100…幅員算出装置
  10…制御ユニット
  11…地形データ処理部
  12…幅員算出部
  13…幅員出力制御部
  20…記憶ユニット
  21…地形座標群記憶部
  22…幅員データ記憶部
  23…地図データ記憶部
  30…入出力インタフェースユニット
  200…道路部
  210…歩道部
  220…車道部
  221…路肩
  222…区画線
  223…路側帯
  230…コンクリート境界ブロック

Claims (7)

  1.  地物の位置および形状が複数のノード、または複数のノードおよび当該複数のノード間のリンクで表された地形データに基づいて地形座標群を算出する地形データ処理を行なう地形データ処理部と、
      前記地形データ処理部により算出された地形座標群で示される、隣接または近接するノードを選定し、前記地物の幅員の算出に用いられるノードとして適するノードを、前記選定されたノードと他のノードとの位置関係に基づいて前記他のノードから選定する選定処理部と、
     を備える情報処理装置。
  2.  前記地形データ処理部は、
      道路、前記道路内の歩道、および前記道路内の車道の少なくとも1種類の地物が表される地形データに基づいて前記地形座標群を算出する、
     請求項1に記載の情報処理装置。
  3.  前記選定処理部は、
      前記選定された前記隣接または近接するノードを結ぶリンクに対して引かれる垂線の起点として適するノードを選定し、前記幅員の算出に用いられるノードとして適するノードを前記選定された前記垂線の起点として適するノードから選定し、
     前記リンクと前記垂線との交点を求め、前記交点と前記幅員の算出に用いられるノードとして適するノードとの位置関係、または前記幅員の算出に用いられるノードとして適するノードと前記交点とを結ぶ垂線の距離に基づいて、前記地物の幅員を算出する幅員算出部を更に備える、
     請求項1または2に記載の情報処理装置。
  4.  前記幅員算出部により算出された、前記幅員を示す情報を外部に出力する幅員出力制御部を更に備える、
     請求項3に記載の情報処理装置。
  5.  前記幅員出力制御部は、
      前記幅員算出部により算出された、前記幅員を示す情報に加えて、前記選定された前記隣接または近接するノード、前記幅員の算出に用いられるノードとして適するノード、前記交点のいずれか1つ以上を示す情報を出力する、
     請求項4に記載の情報処理装置。
  6.  情報処理装置により行なわれる方法であって、
     地物の位置および形状が複数のノード、または複数のノードおよび当該複数のノード間のリンクで表された地形データに基づいて地形座標群を算出することと、
     前記算出された地形座標群で示される、隣接または近接するノードを選定し、前記地物の幅員の算出に用いられるノードとして適するノードを、前記選定された前記隣接または近接するノードと他のノードとの位置関係に基づいて前記他のノードから選定することと、
     を備える情報処理方法。
  7.  請求項1乃至5のいずれか1項に記載の情報処理装置の各部として、プロセッサを機能させる情報処理プログラム。
PCT/JP2020/007106 2019-03-19 2020-02-21 情報処理装置、方法およびプログラム WO2020189181A1 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2021507127A JP7120444B2 (ja) 2019-03-19 2020-02-21 情報処理装置、方法およびプログラム
CN202080020756.6A CN113614804B (zh) 2019-03-19 2020-02-21 信息处理装置、方法以及程序
EP20772550.8A EP3944215B1 (en) 2019-03-19 2020-02-21 Information processing device, method, and program
US17/431,840 US20220120584A1 (en) 2019-03-19 2020-02-21 Information processing apparatus, method and program

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2019050686 2019-03-19
JP2019-050686 2019-03-19

Publications (1)

Publication Number Publication Date
WO2020189181A1 true WO2020189181A1 (ja) 2020-09-24

Family

ID=72520212

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2020/007106 WO2020189181A1 (ja) 2019-03-19 2020-02-21 情報処理装置、方法およびプログラム

Country Status (5)

Country Link
US (1) US20220120584A1 (ja)
EP (1) EP3944215B1 (ja)
JP (1) JP7120444B2 (ja)
CN (1) CN113614804B (ja)
WO (1) WO2020189181A1 (ja)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001305953A (ja) * 2000-02-14 2001-11-02 Matsushita Electric Ind Co Ltd 地図情報作成装置、および、これを用いた地図情報表示装置
JP2002148064A (ja) * 2000-11-09 2002-05-22 Nissan Motor Co Ltd 現在位置修正装置および方法
JP2009230518A (ja) * 2008-03-24 2009-10-08 Hitachi Software Eng Co Ltd 道路地図データ作成システム
JP2018055535A (ja) * 2016-09-30 2018-04-05 パイオニア株式会社 情報処理装置、情報処理方法、地図表示装置、地図表示方法、及び、プログラム

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2850608B2 (ja) * 1991-11-28 1999-01-27 日産自動車株式会社 車両用走行路検出装置
DE69736967T2 (de) * 1996-06-19 2007-07-26 Matsushita Electric Industrial Co., Ltd., Kadoma Gerät zur Gewinnung von Strassennetzzonendaten aus den Blockdaten einer Strassennetzkarte, System zum Umformen dieser Daten und Darstellung einer umgeformten Karte und geographisches Informationssystem
JP3332225B2 (ja) * 1998-11-24 2002-10-07 松下電器産業株式会社 地図提供システム
JP2001084357A (ja) * 1999-09-14 2001-03-30 Hitachi Ltd 道路幅員データの抽出方法
JP3372910B2 (ja) * 1999-10-14 2003-02-04 株式会社ゼンリン ポリゴン道路網データ作成装置及び方法
JP2005326963A (ja) 2004-05-12 2005-11-24 Fujitsu Ten Ltd 運転支援装置
JP4790280B2 (ja) * 2005-02-04 2011-10-12 三菱電機株式会社 地図データ表示装置、地図データ表示方法及びナビゲーション装置並びに地図データ表示プログラム
JP4610425B2 (ja) * 2005-06-27 2011-01-12 アルパイン株式会社 地図情報更新方法及びナビゲーション装置
JP5075331B2 (ja) * 2005-09-30 2012-11-21 アイシン・エィ・ダブリュ株式会社 地図データベース生成システム
JP4725509B2 (ja) * 2006-12-27 2011-07-13 アイシン・エィ・ダブリュ株式会社 新規道路幅算出システム
JP5017157B2 (ja) * 2008-03-24 2012-09-05 クラリオン株式会社 地図データ処理装置
CN102150015B (zh) * 2008-10-17 2013-09-25 三菱电机株式会社 导航装置
EP2530433B1 (en) * 2011-06-01 2015-04-22 Harman Becker Automotive Systems GmbH Method of generating a database for a navigation device
CN102519452B (zh) * 2011-12-23 2016-03-30 深圳市凯立德科技股份有限公司 一种电子地图显示方法及终端
JP5786793B2 (ja) * 2012-05-09 2015-09-30 株式会社デンソー 車両検出装置
JP6040873B2 (ja) * 2013-06-17 2016-12-07 ソニー株式会社 情報処理装置、情報処理方法およびコンピュータ読み取り可能な記録媒体
US20150120244A1 (en) * 2013-10-31 2015-04-30 Here Global B.V. Method and apparatus for road width estimation
US9494438B1 (en) * 2015-12-15 2016-11-15 Honda Motor Co., Ltd. System and method for verifying map data for a vehicle
JP6659379B2 (ja) * 2016-01-28 2020-03-04 日立オートモティブシステムズ株式会社 道路情報認識システム及び道路情報認識方法
CN107798855B (zh) * 2016-09-07 2020-05-08 高德软件有限公司 一种车道宽度计算方法和装置
JP6714944B2 (ja) * 2017-08-04 2020-07-01 株式会社 ミックウェア 運転支援装置、運転支援プログラム、運転支援方法および運転支援システム
CN109425350A (zh) * 2017-08-24 2019-03-05 阿里巴巴集团控股有限公司 道路定位、道路切换判断方法、装置、设备及存储介质
JP2019117581A (ja) * 2017-12-27 2019-07-18 トヨタ自動車株式会社 車両
CN108645342B (zh) * 2018-04-25 2020-07-07 国交空间信息技术(北京)有限公司 一种基于道路轨迹和高分辨率影像的道路宽度提取方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001305953A (ja) * 2000-02-14 2001-11-02 Matsushita Electric Ind Co Ltd 地図情報作成装置、および、これを用いた地図情報表示装置
JP2002148064A (ja) * 2000-11-09 2002-05-22 Nissan Motor Co Ltd 現在位置修正装置および方法
JP2009230518A (ja) * 2008-03-24 2009-10-08 Hitachi Software Eng Co Ltd 道路地図データ作成システム
JP2018055535A (ja) * 2016-09-30 2018-04-05 パイオニア株式会社 情報処理装置、情報処理方法、地図表示装置、地図表示方法、及び、プログラム

Also Published As

Publication number Publication date
EP3944215A1 (en) 2022-01-26
US20220120584A1 (en) 2022-04-21
CN113614804B (zh) 2023-08-25
JPWO2020189181A1 (ja) 2021-10-28
EP3944215B1 (en) 2024-04-17
JP7120444B2 (ja) 2022-08-17
EP3944215A4 (en) 2023-05-10
CN113614804A (zh) 2021-11-05

Similar Documents

Publication Publication Date Title
US11192558B2 (en) Method, apparatus, and system for providing road curvature data
US11544950B2 (en) Method and apparatus for updating road map geometry based on received probe data
US10331957B2 (en) Method, apparatus, and system for vanishing point/horizon estimation using lane models
US20210004013A1 (en) Lane-centric road network model for navigation
JP5075331B2 (ja) 地図データベース生成システム
US9322660B2 (en) Incremental map generation, refinement and extension with GPS traces
US8612138B2 (en) Lane-based road transport information generation
EP3742387A1 (en) Method, apparatus, and system for task driven approaches to super resolution
US10515293B2 (en) Method, apparatus, and system for providing skip areas for machine learning
EP3644013A1 (en) Method, apparatus, and system for location correction based on feature point correspondence
EP3594852B1 (en) Method, apparatus, and system for constructing a polyline from line segments
Shams et al. Highway cross-slope measurement using mobile LiDAR
US20200272847A1 (en) Method, apparatus, and system for generating feature correspondence from camera geometry
US20200300658A1 (en) System and method for identification of a roadwork zone
US11602974B2 (en) System and method for generating map data associated with road objects
JP4614444B2 (ja) 道路ネットワークデータの自動生成方法
WO2020189181A1 (ja) 情報処理装置、方法およびプログラム
JP2016099442A (ja) 地図データ作成方法、地図表示方法、地図データ作成装置および地図表示装置
JP6765333B2 (ja) 情報処理装置、プログラム
RU2569454C1 (ru) Способ автоматизированного составления схемы дорожно-транспортного происшествия
JP3852932B2 (ja) 歩行者用ネットワーク生成装置、歩行者用ネットワーク生成方法及びプログラム
Kazemi Knowledge-based generalisation of road networks
US11676290B2 (en) Method, apparatus, and computer program product for ensuring continuity of features between spatially partitioned maps
JP2006178694A (ja) 道路標識画像構成線分候補の検出方法及び道路標識画像構成線分候補を検出可能なプログラム
KR20230076365A (ko) 크라우드 소싱 기반의 자율차 전용지도 제공 시스템 및 그 방법

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 20772550

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2021507127

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 2020772550

Country of ref document: EP

Effective date: 20211019