特許第6494230号(P6494230)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 株式会社日立システムズの特許一覧

特許6494230地理情報ベクタ化支援システム及び地理情報ベクタ化支援方法
<>
  • 特許6494230-地理情報ベクタ化支援システム及び地理情報ベクタ化支援方法 図000003
  • 特許6494230-地理情報ベクタ化支援システム及び地理情報ベクタ化支援方法 図000004
  • 特許6494230-地理情報ベクタ化支援システム及び地理情報ベクタ化支援方法 図000005
  • 特許6494230-地理情報ベクタ化支援システム及び地理情報ベクタ化支援方法 図000006
  • 特許6494230-地理情報ベクタ化支援システム及び地理情報ベクタ化支援方法 図000007
  • 特許6494230-地理情報ベクタ化支援システム及び地理情報ベクタ化支援方法 図000008
  • 特許6494230-地理情報ベクタ化支援システム及び地理情報ベクタ化支援方法 図000009
  • 特許6494230-地理情報ベクタ化支援システム及び地理情報ベクタ化支援方法 図000010
  • 特許6494230-地理情報ベクタ化支援システム及び地理情報ベクタ化支援方法 図000011
  • 特許6494230-地理情報ベクタ化支援システム及び地理情報ベクタ化支援方法 図000012
  • 特許6494230-地理情報ベクタ化支援システム及び地理情報ベクタ化支援方法 図000013
  • 特許6494230-地理情報ベクタ化支援システム及び地理情報ベクタ化支援方法 図000014
  • 特許6494230-地理情報ベクタ化支援システム及び地理情報ベクタ化支援方法 図000015
  • 特許6494230-地理情報ベクタ化支援システム及び地理情報ベクタ化支援方法 図000016
  • 特許6494230-地理情報ベクタ化支援システム及び地理情報ベクタ化支援方法 図000017
  • 特許6494230-地理情報ベクタ化支援システム及び地理情報ベクタ化支援方法 図000018
  • 特許6494230-地理情報ベクタ化支援システム及び地理情報ベクタ化支援方法 図000019
  • 特許6494230-地理情報ベクタ化支援システム及び地理情報ベクタ化支援方法 図000020
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6494230
(24)【登録日】2019年3月15日
(45)【発行日】2019年4月3日
(54)【発明の名称】地理情報ベクタ化支援システム及び地理情報ベクタ化支援方法
(51)【国際特許分類】
   G06T 11/60 20060101AFI20190325BHJP
【FI】
   G06T11/60 300
【請求項の数】8
【全頁数】20
(21)【出願番号】特願2014-203073(P2014-203073)
(22)【出願日】2014年10月1日
(65)【公開番号】特開2016-71786(P2016-71786A)
(43)【公開日】2016年5月9日
【審査請求日】2017年9月13日
(73)【特許権者】
【識別番号】000233491
【氏名又は名称】株式会社日立システムズ
(74)【代理人】
【識別番号】100080001
【弁理士】
【氏名又は名称】筒井 大和
(74)【代理人】
【識別番号】100113642
【弁理士】
【氏名又は名称】菅田 篤志
(74)【代理人】
【識別番号】100117008
【弁理士】
【氏名又は名称】筒井 章子
(74)【代理人】
【識別番号】100147430
【弁理士】
【氏名又は名称】坂次 哲也
(72)【発明者】
【氏名】森田 豊久
【審査官】 川▲崎▼ 博章
(56)【参考文献】
【文献】 特開平05−189578(JP,A)
【文献】 特開2006−126683(JP,A)
【文献】 特開2007−073009(JP,A)
【文献】 特開2003−296726(JP,A)
【文献】 特開2005−091919(JP,A)
【文献】 特開2005−070373(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06T 11/60
(57)【特許請求の範囲】
【請求項1】
複数のGPS衛星からの電波を受信して緯度経度高度を測定するGPS処理機能を有するGPS受信部と、道路を表す線片データ及び該線片データ上の点を表す点データとを含むベクタデータ形式の地図情報を格納する記憶部と、前記線片データ及び点列データに基づく地図情報を表示する表示部と、前記記憶部及び表示部を制御する制御部とを備え、前記ベクタデータ形式の地図情報の精度を任意に設定することができる地理情報ベクタ化支援システムであって、
前記記憶部が、一意に道路毎に付与された道路ID、該道路に存在する点の順番を表す順序、該順番の点に一意に付与された点IDの各項目情報を有する点列データと、道路ID、該道路上に存在する点の順序を表す順序、該順序の点ID、該点IDに対して順序が一つ前の点IDを示す直前点ID、該点IDに対して順序が一つ後の点IDを示す直後点ID、前記点IDを始点として直後の点IDとの間の線片のIDを示す線分IDの各項目情報を有する線片データと、前記点ID毎の緯度経度を含む点データと、を格納し、
前記制御部が、
精度を設定する地図上の道路IDが入力されることにより該入力した道路IDに対応した点列データ及び線片データに基づく地図情報を前記記憶部から読み出して表示出力する第1工程と、
該第1工程により表示出力した線片データ上の複数の点IDを指定した初期値を入力する第2工程と、
該第2工程により指定した複数の点ID間の点列データに追加する点位置情報及び分岐判断情報を入力する第3工程とを実行し、
該第3工程により入力された点位置情報及び分岐判断情報に基づいて記憶部に格納された線片データの詳細化を行う第4工程と、
該第3工程により入力された点位置情報及び分岐判断情報に基づいて記憶部に格納された線片データの集約を行う第5工程と、
前記第4工程により詳細化を行った線片データ又は前記第5工程により集約化した線片データ上の点列データから始点と終点となる2点を結ぶ線片データ上のN点から折れ線を構成するn点を選択し、該N点すべてを経由する折れ線と、n点を経由する折れ線とを比較して評価する最適化を行う第6工程と、
の何れかを実行し、
前記第4工程により詳細化を行った線片データ又は該第5工程により集約した線片データ又は前記第6工程により最適化した線片データ上の点列データから適切な点を抽出して連続する線片データを出力する第工程と、
前記第工程により出力された線片データ及び該線片データ上の点列データを含む地図情報を表示出力する第工程と、
を実行する理情報ベクタ化支援システム。
【請求項2】
前記評価を行う第6工程において、
前記制御部が、
前記N点すべてを経由する折れ線と、n点を経由する折れ線で囲む図形の面積を算出し、該算出した面積が小さいN点すべてを経由する折れ線又はn点を経由する折れ線を選択する請求項1に記載の地理情報ベクタ化支援システム。
【請求項3】
前記制御部が、線片データの集約を行う第5工程において、
前記線片データ上の点列データから2点を選択する第工程と、
該第工程により選択し2点を端点として、前記線片データに含まれる前記2点間の点IDを抽出する第10工程と、
前記第工程により選択し2点を端点として、前記点列データに含まれる前記2点間の点IDを抽出する第11工程と、
前記第工程により選択した2点の端点の点IDと前記第10工程により抽出した点IDを直線で結ぶ面積と、前記第工程により選択した2点の端点の点IDと前記第11工程により抽出した点IDを直線で結ぶ面積とを比較し、面積が小さい方の複数の点IDを用いて線片データの集約を行う第12工程を実行する請求項1又は2に記載の地理情報ベクタ化支援システム。
【請求項4】
前記制御部が、線片データの集約を行う第5工程において、
前記線片データ上の点列データから2点を選択する第13工程と、
該第13工程により選択し2点を端点として、該2点間の点列データを用いて順序が間の点IDを抽出する第14工程と、
該第14工程により抽出した点の点IDが線片データ上に含まれるとき、線片データにおいて、前記線片データ上に含まれる点IDのレコードを削除し、該点IDに対して直前の点に対して線分IDを新規登録し、直後の点IDを修正し、直後の点に対して、直前の点IDを修正し、直後の点以降の順序を修正する第15工程を実行する請求項1又は2に記載の地理情報ベクタ化支援システム。
【請求項5】
複数のGPS衛星からの電波を受信して緯度経度高度を測定するGPS処理機能を有するGPS受信部と、道路を表す線片データ及び該線片データ上の点を表す点データとを含むベクタデータ形式の地図情報を格納する記憶部と、前記線片データ及び点列データに基づく地図情報を表示する表示部と、前記記憶部及び表示部を制御する制御部とを備え、
前記記憶部が、一意に道路毎に付与された道路ID、該道路に存在する点の順番を表す順序、該順番の点に一意に付与された点IDの各項目情報を有する点列データと、道路ID、該道路上に存在する点の順序を表す順序、該順序の点ID、該点IDに対して順序が一つ前の点IDを示す直前点ID、該点IDに対して順序が一つ後の点IDを示す直後点ID、前記点IDを始点として直後の点IDとの間の線片のIDを示す線分IDの各項目情報を有する線片データと、前記点ID毎の緯度経度を含む点データと、を格納し、
前記ベクタデータ形式の地図情報の精度を任意に設定することができるコンピュータシステムにおける地理情報ベクタ化支援方法であって、
前記制御部に、
精度を設定する地図上の道路IDが入力されることにより該入力した道路IDに対応した点列データ及び線片データに基づく地図情報を前記記憶部から読み出して表示出力する第1工程と、
該第1工程により表示出力した線片データ上の複数の点IDを指定した初期値を入力する第2工程と、
該第2工程により指定した複数の点ID間の点列データに追加する点位置情報及び分岐判断情報を入力する第3工程とを実行させ、
該第3工程により入力された点位置情報及び分岐判断情報に基づいて記憶部に格納された線片データの詳細化を行う第4工程と、
該第3工程により入力された点位置情報及び分岐判断情報に基づいて記憶部に格納された線片データの集約を行う第5工程と、
前記第4工程により詳細化を行った線片データ又は前記第5工程により集約化した線片データ上の点列データから始点と終点となる2点を結ぶ線片データ上のN点から折れ線を構成するn点を選択し、該N点すべてを経由する折れ線と、n点を経由する折れ線とを比較して評価する最適化を行う第6工程と、
の何れかを実行させ、
前記第4工程により詳細化を行った線片データ又は該第5工程により集約した線片データ又は前記第6工程により最適化した線片データ上の点列データから適切な点を抽出して連続する線片データを出力する第工程と、
前記第工程により出力された線片データ及び該線片データ上の点列データを含む地図情報を表示出力する第工程と、
を実行させる地理情報ベクタ化支援方法。
【請求項6】
前記評価を行う第6工程において、
前記制御部に、
前記N点すべてを経由する折れ線と、n点を経由する折れ線で囲む図形の面積を算出し、該算出した面積が小さいN点すべてを経由する折れ線又はn点を経由する折れ線を選択する請求項5に記載の地理情報ベクタ化支援方法。
【請求項7】
前記制御部に、線片データの集約を行う第5工程において、
前記線片データ上の点列データから2点を選択する第工程と、
該第工程により選択し2点を端点として、前記線片データに含まれる前記2点間の点IDを抽出する第10工程と、
前記第工程により選択し2点を端点として、前記点列データに含まれる前記2点間の点IDを抽出する第11工程と、
前記第工程により選択した2点の端点の点IDと前記第10工程により抽出した点IDを直線で結ぶ面積と、前記第工程により選択した2点の端点の点IDと前記第11工程により抽出した点IDを直線で結ぶ面積とを比較し、面積が小さい方の複数の点IDを用いて線片データの集約を行う第12工程を実行させる請求項5又は6に記載の地理情報ベクタ化支援方法。
【請求項8】
前記制御部に、線片データの集約を行う第5工程において、
前記線片データ上の点列データから2点を選択する第13工程と、
該第13工程により選択し2点を端点として、該2点間の点列データを用いて順序が間の点IDを抽出する第14工程と、
該第14工程により抽出した点の点IDが線片データ上に含まれるとき、線片データにおいて、前記線片データ上に含まれる点IDのレコードを削除し、該点IDに対して直前の点に対して線分IDを新規登録し、直後の点IDを修正し、直後の点に対して、直前の点IDを修正し、直後の点以降の順序を修正する第15工程を実行させる請求項5又は6に記載の地理情報ベクタ化支援方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ベクタ形式の地図情報の生成を支援することができる地理情報ベクタ化支援システム及び地理情報ベクタ化支援方法に関する。
【背景技術】
【0002】
一般に、地図や空間情報を管理・表示するシステムとしてGIS(Geographic Information Systems:地理情報システム)がある。このGISで管理する地図情報は、ラスタデータとベクタデータが有り、ラスタデータは、衛星写真・航空写真・スキャナで取り込んだ地図等の画素からなる画像情報のデータ形式であり、ベクタデータは、地点や道路や建物の輪郭等を表す点や線や多角形等からなる図形情報のデータ形式である。
【0003】
例えば、道路の地図情報は、ラスタデータでは連結した画素の集合となるが、ベクタデータでは始点と終点を持つ曲線として管理される。GISではラスタデータとベクタデータを緯度・経度が合致するように重畳して表示することができる。このGISに関する技術が記載された文献としては非特許文献1が挙げられ、この非特許文献1には「ArcCatalogはデータ・地理情報管理のためのツールです。ArcGIS Helpには整理および管理できる情報の種類は以下の項目が挙げられています。ジオデータベース、ラスタファイル、マップドキュメント、グローブドキュメント、3Dシーンドキュメント、レイヤファイル、ジオプロセシングツールボックス、モデル、Pythonスクリプト」との記載がある。
【0004】
また、現実世界で自分のいる位置を地図上で把握したいというニーズに対して、GPSを用いて緯度・経度を計測し、緯度・経度の突き合せが可能な地図上で位置を重畳表示することが一般的に行われている。これにより、現実世界のある点をラスタデータ上に重畳表示ができる。
【0005】
他方、道路や河川などの線形要素が図形としてベクタデータで表されているとき、現実世界のある点が、その図形内でどこに位置するのかを把握するニーズがあり、この場合には、図形をパラメトリック曲線(連続する値を持つパラメータ[変数]によって決まる曲線)に表現する方法が利用できる。この方法は、始点と終点を指定し、その間の図形の式を定義し、1個のパラメータでその図形に沿った位置を決定する方法である。
【0006】
また、ベクタデータを表現する際の方法が記載された文献としては、下記の特許文献1が挙げられる。この特許文献1は「デジタル空間データの、図形要素(線又は面)の最大外接矩形の中心点又はその図形要素の重心点を算出して、その図形要素の代表となる唯一の点座標とする。この求めた最大外接矩形の中心点又は図形要素の重心点がその図形要素から外れている場合は、その中心点又は重心点からその図形要素までの最短距離を表わす直線を求め、その直線と図形要素との交差点から代表点が図形要素内に入るようにする。」との記載がある。
【0007】
また、ベクタデータを生成する方法の一例が記載された文献としては、下記の非特許文献2及び特許文献2が挙げられる。
【0008】
前記非特許文献2には「ラスタデータは画像のデータで、主にスキャンして様々なフォーマットに変換します。ベクタデータは、ラスタデータを背景にCAD上でトレースを行い、数値を持ったデータとして作成します。ラスタデータやベクタデータに座標値を持たせることでシームレスな図面データを作成することができます。」との記載がある。
【0009】
前記特許文献2には、「図形をベクタデータで処理するシステムに手書き図面を利用する場合に、この手書き図面をベクタデータ化してシステムに取り込むのに好適な図形処理システム」との記載がある。
【先行技術文献】
【特許文献】
【0010】
【特許文献1】特開2002−123836号公報
【特許文献2】特開平5−314196号公報
【非特許文献】
【0011】
【非特許文献1】ArcGIS Tips社発行のArcCatalogの記事、<URL:http://gis.ykurban.net/arccatalog>
【非特許文献2】株式会社アイテック社、データプロセッシングの記事、<URL:http://www.itec−map.co.jp/business_digitaldata.html>
【発明の概要】
【発明が解決しようとする課題】
【0012】
前記非特許文献1に記載された技術は、図形を画像の上でトレースする際のベクタ化の精度が入力された始点及び終点の座標と選ばれた曲線の式で決まってしまうため、ラスタデータとベクタデータを緯度・経度が合致するように重畳して表示する効果に留まる。
【0013】
前記特許文献1に記載された図形を代表点で代表させる技術は、図形をどのように分割するかということを外部から与えなければならず、更に、その代表のさせ方の精度(粗い・細かい)を知ることも制御することもできないため、直線と図形要素との交差点から代表点が図形要素内に入れる効果に留まる。
【0014】
前記非特許文献2に記載の技術は、ラスタデータやベクタデータに座標値を持たせることでシームレスな図面データを作成することができる効果に留まる。
【0015】
前記特許文献2に記載された技術は、光学的読み取り装置で読込んだ部分図形をラスタ/ベクタ変換手段で変換するときの粗さや細かさを制御することができず、手書き図面をベクタデータ化してシステムに取り込む効果に留まる。
【0016】
そこで本発明は、地理情報をベクタデータ形式で入力・管理・出力する際に、そのベクタデータの精度を任意に設定することができる地理情報ベクタ化支援システム及び地理情報ベクタ化支援方法を提供することを目的とする。
【課題を解決するための手段】
【0017】
発明による地理情報ベクタ化支援システム及び方法は、
精度を設定する地図上の道路IDが入力されることにより該入力した道路IDに対応した点列データ及び線片データに基づく地図情報を前記記憶部から読み出して表示出力する第1工程と、
該第1工程により表示出力した線片データ上の複数の点IDを指定した初期値を入力する第2工程と、
該第2工程により指定した複数の点ID間の点列データに追加する点位置情報及び分岐判断情報を入力する第3工程とを実行させ、
該第3工程により入力された点位置情報及び分岐判断情報に基づいて記憶部に格納された線片データの詳細化を行う第4工程と、
該第3工程により入力された点位置情報及び分岐判断情報に基づいて記憶部に格納された線片データの集約を行う第5工程と、
前記第4工程により詳細化を行った線片データ又は前記第5工程により集約化した線片データ上の点列データから始点と終点となる2点を結ぶ線片データ上のN点から折れ線を構成するn点を選択し、該N点すべてを経由する折れ線と、n点を経由する折れ線とを比較して評価する最適化を行う第6工程と、
の何れかを実行させ、
前記第4工程により詳細化を行った線片データ又は該第5工程により集約した線片データ又は前記第6工程により最適化した線片データ上の点列データから適切な点を抽出して連続する線片データを出力する第工程と、
前記第工程により出力された線片データ及び該線片データ上の点列データを含む地図情報を表示出力する第工程と、
を実行することを主な特徴とする。
【発明の効果】
【0018】
本発明による地理情報ベクタ化支援システム及び地理情報ベクタ化支援方法は、地理情報をベクタデータ形式で入力・管理・出力する際に、そのベクタデータの精度を任意に設定することができる。
【図面の簡単な説明】
【0019】
図1】本発明の実施例による地理情報ベクタ化支援システムを示す図である
図2】本実施例による線形要素を詳細化する処理を説明するフローチャートである
図3】本実施例による線形要素を詳細化する処理を説明する図である
図4】本実施例による出力部の画面例を示す図である
図5】本実施例による点列データの形式を示す図である
図6】本実施例による点の位置関係を表す図である
図7】本実施例による線片データの形式を示す図である
図8】本実施例による詳細化前後の点と線片を説明する図である
図9】本実施例による線形要素を集約する処理を説明するフローチャートである
図10】本実施例による出力部での見え方を示す図である
図11】本実施例による集約処理前後の線片データを示す図である
図12】本実施例による詳細化処理の評価値を説明するための図である
図13】本実施例による集約処理の評価値を説明するための図である
図14】本実施例による折れ線間の面積を求める方法を説明する図である
図15】本実施例による最適化処理を説明するフローチャートである
図16】本実施例による点データの形式を示す図である
図17】本実施例による地理情報のベクタ化を支援する処理の実施例の出力画面例を示す図である
図18】本実施例による地理情報をベクタ化して出力する処理を説明するフローチャートである
【発明を実施するための形態】
【0020】
以下、本発明による地理情報ベクタ化支援システム及び地理情報ベクタ化支援方法の実施例を説明する。
【実施例1】
【0021】
[全体構成]
本実施例による地理情報ベクタ化支援方法を実現する地理情報ベクタ化支援シテムは、図1に示す如く、GPS受信部101と、詳細化部102と、初期値入力部103と、集約部104と、記憶部105と、入力部106と、出力部107と、最適化部108と図示しない制御部がバス109を介して相互接続されるように構成され、地理情報をベクタデータの形式で管理するときにベクタデータの精度を任意に設定することができる。例えば、ある曲がった道路をどこに何点の点を置いてそれらを結ぶ線分で表現するか、その詳細度を自由に設定できる。これにより、煩雑なデータ管理と正確性とのトレードオフを図ることができる。この地理情報ベクタ化支援シテムは、操作者が携帯可能な携帯型の端末装置として構成することや、操作者が操作するGPS受信部101を含む携帯端末と、該携帯端末とネットワークを介して他の部位と接続させ、協働して後述する動作をおこなうように構成しても良い。
【0022】
前記GPS受信部101は、複数のGPS(Global Positioning System)衛星からの電波を受信して緯度経度高度を測定するGPS処理機能を有し、前記詳細化部102は、線形要素を詳細化する詳細化処理機能を有し、前記初期値入力部103は、地図上の線形要素を表す点列データの初期値を入力する初期値入力処理機能を有する。
【0023】
前記集約部104は、地図上の線形要素を集約する集約処理を有し、前記入力部106は、地図上に追加する点位置情報の入力や分岐判断等の情報を入力する機能を有し、前記出力部107は、地図情報を表示出力する機能を有し、前記最適化部108は、点列データから適切な点を抽出して連続する線片データを出力する最適化処理機能を有し、これら各機能の詳細は後述する。
【0024】
前記記憶部105は、点列データ(図5)及び線片データ(図7)からなるベクタ形式の地図情報及びラスタデータ形式と緯度・経度情報を持つ点データ(図16)を含む地図データを格納する記憶機能を有する。
【0025】
前記点列データは、図6に示した複数点の乗る線形要素(道路401)の番号(001,403,404,405)を記載するものであって、図5に示す如く、一意に道路毎に付与された道路ID501、この道路に存在する点の順番を表す順序502、この順番の点に一意に付与された点ID503の各項目情報を持つ。
【0026】
前記線片データは、図7に示す如く、前記道路ID501、該道路上に存在する点の順序を表す順序502、該順序の点ID503、該点IDに対して順序が一つ前の点IDを示す直前の点ID704、該点IDに対して順序が一つ後の点IDを示す直後の点ID705、前記点IDを始点として直後の点IDとの間の線片(2点を結ぶ線分)のIDを示す線片ID706からなる。この線片データの行(レコード)は点列データの中で線形要素を表す際に用いる点のみが抽出される。なお、図7の線片データにおける始点での直前の点IDはNULLとなり、終点での直後の点IDはNULLとなり、終点での線片IDはNULLとなる。
【0027】
図7に示した例では全部の点を使うと仮定したときのデータを示し、点列データの中で線片として使わない点がある場合にはその点を飛ばして格納される。従って、図5に示す点列データは、位置座標が分かっているすべての点のデータであるのに対し、図7に示す線片データは、線片を構成する点のみのデータとなる。
【0028】
前記点データは、図16に示す如く、前記点ID503に対応した位置情報を示す緯度1602及び経度1603を格納する。
【0029】
[動作]
本実施例による地理情報ベクタ化支援シテムは、前記詳細化部102が地図上の道路等の線形要素を詳細化する詳細化処理機能を有する。
[線形要素詳細化処理]
まず、本実施例による線形要素を詳細化する処理概要を次に図3を参照して説明する。
図3(a)は、ある地点の地図を示す。この図3(a)の例では、左上に学校が有り、二本の道路が縦方向及び斜め横方向に横切っており、中央付近で交差している。このように地図上においては、道路や河川他を曲線や直線で表すことができ、この一次元のパラメトリック曲線上に位置を示すことができる要素を線形要素と呼ぶ。
【0030】
このため、図3(a)に示す地図は、横方向の道路301のみをパラメトリック曲線として抽出すると、図3(b)に示す如く該当道路の表現を点302と点303を結ぶ線分304として表現することができる。
【0031】
この図3(b)に示したパラメトリック曲線の道路301を、図3(c)に示す如く、点302と点303に加えてその間に点305を配置(追加)したとき、点302から点305を経由して点303に至る折れ線として表現される。この図において点302と点305の間は線分306であり、点305と点303の間は線分307である。
【0032】
このように本実施例で述べる線形要素を詳細化する処理とは、道路301を線分304として表現していたものを、詳細化した連続する線分306及び線分307で表現するように置き換えることを指す。
【0033】
この詳細化処理を実行する詳細化部102の動作は図2に示す次に述べるステップにより実行される。
s201:追加する点の位置情報を入力するステップ。
このステップは、ある道路上の点で位置情報を携帯端末によって取得するユースケースを想定したとき、ボタンの機能を有する入力部106への入力をトリガーとし、GPS受信部101がその入力があったときのGPS受信装置の位置情報を取得することが考えられる。
【0034】
s202:出力部107にs201で取得された点の近傍の地図(地図データ)を表示出力するステップ。
この地図データは、記憶部105から読み出される線形要素上の点として既に入力された点を表す点列データ(図5)と、線形要素を複数の線分にて近似したときの線分である線片データ(図7)と、各点の緯度経度を含む点データ(図16)とを含み、本ステップs202では、線片データを構成する点の中から2点が出力部107の地図に重畳表示される。その際に、ステップs201で入力された点の近傍且つ線形要素の各方向に近いものを一つずつ選ぶ。
【0035】
この出力部107の画面例を図4(a)に示す。図4(a)は、道路401が画面上表示され、ステップs201で取得した点は点1000として重畳表示される。この地図の表示範囲内には、点403、点404、点405が道路上の点として存在し、既に存在する点(点403、点404、点405)から、点1000の近傍の点(点404、点405)が2点選ばれることにより、図4(b)にあるように出力部107に点404と点405を結ぶ地図が表示される。
【0036】
s203:ステップs201で取得した点で詳細化を行うか否かを操作者の入力部106への入力により判定するステップ。
s204:ステップs203において詳細化を行う旨が入力されたことを判定したとき、ステップs201で取得した点を用いて詳細化処理を実行するステップ。
【0037】
このステップs204による詳細化処理は、前記ステップs201で取得した点の前後の点をステップs202で抽出し、この抽出した2点を結ぶ線分をステップs201で取得した点を端点に含む2本の線分に分割する処理であって、具体的には、この区間(ステップs202により抽出した2点を結ぶ線分)の線分表現をs201で取得した点を経由する折れ線にする処理である。
【0038】
次に、図8(a)に示した詳細化前の点及び線分を、図8(b)に示した詳細化後の点及び線分に詳細化する処理を説明する。本例は、図8(a)に示した点404と点405を結ぶSeg9を、図8(b)に示す点404と点405との間に点1000を挿入し、点404と点1000を結ぶSeg11と点1000と点405を結ぶSeg12に置き換える例である。
【0039】
この詳細化処理は、前述の詳細化処理と同様に点列データ(図5)への行の挿入修正及び線片データ(図7)への行の挿入修正を行い、図8(c)及び図8(d)に示す点列データ及び線片データに修正することによって行われる。
【0040】
図8(c)の点列データの修正は、順序が4に相当する点1000の1行(レコード)を挿入し、順序4以降については順序をすべて修正することによって行う。図8(d)の線片データの修正は、順序が4に相当する1行(レコード)を挿入し、直前の行の直後の点ID及び線分IDを修正し、直後の行の直前の点IDを修正し、順序4以降については順序をすべて修正し、新しいIDは使っていない値を自動採番することによって行う。
【0041】
s205:ステップs203において詳細化を行う旨が入力されていないことを判定したとき、詳細化しない場合の処理を行うステップ。
このステップS205は、線片データの追加や修正を行わず、点列データのみ追加修正する。ここでは、道路ID、順序、点IDを持つ行を適当な順序位置に挿入し、それ以降の順序の点の順序欄を修正する。
【0042】
なお、前記例ではステップs203の詳細化を行うかどうかの判定を入力部106への入力に基づいて判定する例を説明したが、本実施例はこれに限られるものではなく、常に判断をYESとして処理してステップs204に遷移するように構成することや、評価値を計算してその結果を元にステップs204に遷移するか否かを判定するように構成しても良い。前記常に判断をYESとして処理してステップs204に遷移する構成は、ステップs201により入力した点を自動的に線片データとして採用してs204の詳細化処理につなげることができ、ステップs201の位置情報入力に処理のフローを制御させられることができ、詳細化処理を呼び出す上位手続きを考えた場合に入力操作の煩雑さを軽減することができる。
【0043】
[詳細化処理の評価値計算方法]
前述したステップS203の判定を行うための評価値の計算方法を図12を参照して次に説明する。
図12に示す地図は、二重丸で示す点1202及び点1203がステップs202により抽出された点であり、線片中の星印で示す点1201がステップs201により入力された点の位置を表し、これら点は線形要素を近似する点に含まれ、各点及び線分は次の通りである。
【0044】
・黒丸で示す点1204及び1205は、点列データにおいて、点1202と1203の間にある点であって線片データに含まれていない点を表す。
・折れ線1206は、点1202と点1203の間を点列データ及びステップs201により入力された点1201の全てを通る折れ線(連続する線分)である。
・線分1207は、点1202と点1203を結ぶ線分である。
・線分1208は、点1202から点1203へ向かって点1201のみを経由する折れ線(二つの連続する線分)である。
【0045】
ここで、本実施例で述べる評価値とは、折れ線1206を近似するために、端点を結んだ線分1207よりも線分1208がどの程度適切かという指標である。
本実施例による評価は、折れ線1206と線分1208の間に挟まれる多角形面積が折れ線1206と線分1207の間に挟まれる多角形面積より小さくなっているか否かを判定することによって行う。
【0046】
このように、前記直線と直線との間に挟まれる面積は、定積分の計算により容易に算出できるため、全ての座標が確定している折れ曲がった点で積分区間を分割することによって、解析的に計算することができる。
【0047】
これを具体的に説明すると、図14に示すような、f1(x)とf2(x)の二つの曲線で挟まれる面積は、数1で示すように、それぞれの曲線を示す関数の差の絶対値を積分することで表される。
【数1】
面積は回転に対して不変量なため、x軸やy軸がこれらの曲線に対してどちらを向いているかには無関係であり、軸が直交していればよい。すなわち、緯度、経度で十分である。曲線は、この場合、折れ線なので、折れる点ごとに区間を分割すれば区間ごとに二つの一次直線の差の定積分の計算となる。計算した結果、図12に示す折れ線1206と線分1207で囲む場合よりも、折れ線1206と線分1208で囲む面積が小さくなる場合には、ステップs204に移り詳細化を行い、そうでない場合にはステップs205に移る。
【0048】
また、前述の評価値の計算は、区分ごとの直線間で囲む面積のみで計算したが、これに加えて、区分の数を評価に含むように修正して実施することもできる。区分の数が多いほど、誤差であるところの面積が小さくなるのは一般的にあり得る傾向であるが、その分、データ数が多くなり煩雑となる。近似の折れ線の頂点が少ないほど単純で良いという評価を実現するために、例えば、面積と区分の数の積を評価値とすることが可能である。これにより、より少ない点数での近似が選好される評価が可能となる。
【0049】
[点列データ初期値入力処理]
次に、初期値入力部103が行う線形要素を表す点列データの初期値入力処理について説明する。
前述した詳細化処理では、少なくとも線形要素に対して近傍の2点が予め存在する必要があった。したがって、これらの初期値を入力する処理が予め必要となる。そのためには、入力部106への入力をトリガーとしてGPS受信部101が、操作者がGPS受信装置の位置情報を取得する工程を同じ線形要素(道路や河川)で2回繰り返すことで実現できる。
【0050】
その結果の点列データは、図5に示した形式で2行が作成され、図7に示した線片データが2行作成される。したがって、最初の2点はデフォルトで線形要素を近似する点として登録される。また、緯度、経度の情報は、点IDとともに図16に示した形式の点データとして作成される。これらの点列データ、線片データ、点データは、いずれも記憶部105に記憶される。
【0051】
[線形要素集約処理]
次に、集約部104が行う線形要素を集約する処理を図9に示すフローを参照して説明する。この線形要素集約処理動作は、次に述べるステップにより実行される。
【0052】
s901:線片データから二点を選択するステップ。
このステップは、例えば、図10に示した出力部107により表示される地図に点列データ及び線片データが重畳表示され、線片データで示す道路1001と二重丸で示す点403・404・1000・405と、黒丸で示す点列データの点の中で線片データに入らなかった点001が表示され、この線片データの道路1001上の二重丸で示す点404及び405の2点を選択する工程である。
【0053】
s902:ステップs901により選択した点404及び点405を端点として、その間の点列データを用いて順序が間の点1000を抽出するステップ。
s903:操作者からの入力部106からの入力により点404及び点405の間を集約するか否かの判定を行い、集約しないと判定したときに処理を終了するステップ。
s904:点404及び点405の間を集約を実行して処理を終了するステップ。
【0054】
この集約処理は、選択された端点の2点の間に点(黒丸点)があった場合、その点を線片データから削除すると共に、直前の点に対して、線分IDを新規登録し、直後の点IDを修正し、直後の点に対して、直前の点IDを修正する。また、直後の点以降の順序を修正するものであり、点列データの修正を次に説明する。
【0055】
この点列データの修正は、図11(a)に示す集約処理前の線片データの点列として、001・403・404・1000・405がこの順序で並んでいるところを、点404と点405で集約処理をした場合、図11(b)に示す集約処理後の線片データに示す如く、次のように修正を行う。
・点1000に相当する行(レコード)を削除すること。
・直前の点404に対する線分IDに新しいIDであるSeg13が付与され、直後の点IDを405に修正すること。
・直後の点405に対する直前の点IDが404に修正すること。
・点405以降の順序の全てを修正すること。
【0056】
なお、本実施例においては、前記ステップs903による集約するか否かの判定を入力部106への入力によって行う例を記載したが、本実施例はこれに限られるものではなく、例えば、常に判断をYESとして処理することや、評価値を計算してその結果に基づいて判定するように構成することもできる。
【0057】
前記常に判断をYESとする処理は、ステップs901による入力が自動的にステップs904の集約処理につながり、集約処理を呼び出す上位手続きを考えた場合に入力操作の煩雑さが軽減することができる。
【0058】
[集約処理の評価値計算方法]
ここで、前記評価値を計算してその結果に基づいて判定する処理における評価値の計算の方法を図13を用いて説明する。
図13における二重丸で示す点1301及び1302は、ステップs901で選択された線片データの2点を表し、黒丸で示す符号1303・1304・1305は、ステップs902で抽出された点のうち線片データに含まれない点であり、二重丸で示す点1306は、ステップs902で抽出された点のうち線片データに含まれる点である。また、折れ線1307は、点1301及び1302を端点とし、その間の点1303・1306・1304・1305を順序にしたがって結んだ折れ線であり、線分1308は、線片データのみを結んだ折れ線であり、線分1309は、端点を結んだ線分である。
【0059】
ここで評価値とは、折れ線1307を近似するために、線分1308よりも端点を結んだ線分1309の方がどの程度適切かという指標である。本実施例による評価値の算出は、折れ線1307との間に挟まれる面積を計算して、それが小さくなっているかどうかにより判定する。
【0060】
すなわち、直線と直線との間に挟まれる面積は、単純な定積分の計算で算出ができ、折れ曲がった点で積分区間を分割することにより、解析的に計算することができる。本実施例による評価は、折れ曲がった点はすべて座標が確定しているため、計算の結果、線分1308と折れ線1307で囲む場合に比べて、線分1309と折れ線1307で囲む方が面積が小さくなる場合、ステップs904に移り集約を行い、線分1309と折れ線1307で囲む方が面積が小さくならない場合には終了する。
【0061】
また、前述の評価値の計算は、区分ごとの直線間で囲む面積のみで計算したが、これに加えて、区分の数を評価に含むように修正して実施することもできる。区分の数が多いほど、誤差であるところの面積が小さくなるのは一般的にあり得る傾向ではあるが、その分、データ数が多くなり煩雑となる。近似の折れ線の頂点が少ないほど単純で良いという評価を実現するために、例えば、面積と区分の数の積を評価値とする実施例が可能である。これにより、より少ない点数での近似が選好される評価が可能となる。
【0062】
また、線分1308と折れ線1307で囲む場合よりも、線分1309と折れ線1307で囲む方が面積が小さくなる場合に、ステップs904に移り集約を行うとした上述の実施例を変更し、線分1309と折れ線1307で囲む面積が、決められた値より小さい場合にはステップs904に移り集約を行っても良い。これにより、許容される誤差の条件を満たしつつ、少ない数の点で線形要素を近似することができる。
【0063】
[最適化処理]
次に、本実施例による最適化部108が行う、点列データから適切な点を抽出して連続する線片データを出力する処理(最適化処理)について、図15のフローチャートを用いて説明する。
s1501:点列データから始点と終点となる2点を入力するステップ。
このステップは、入力部106から入力したN点すべてを経由する折れ線と、両端の2点を結ぶ線分で囲む図形の面積を計算し、最小値Sにその面積の値を代入し、点の集合を保持する変数C0に両端の2点をセットする処理で有り、この点の集合を保持する変数C0は、点IDのリストとして表される。
【0064】
s1502:点列データから、この2点を結ぶ折れ線の候補を構成する点を選択するステップ。
このステップは、ステップs1501で選ばれた2点の間に、これらの2点も含んで点列データにN点存在するとし、これらの2点も含め、ここからn点を抽出して折れ線を構成する点を選択する処理である。
【0065】
この点を選ぶ組合せの総数は、(N−2)C(n―2)個と書ける。ここで、aCbとはa個からb個を取る組合せの総数を表す(nは2以上でN以下の整数)。このステップs1502では、2以上N以下のすべてのnについて、すべての(N−2)C(n―2)個の組合せの中から、まだ選ばれていないn点の組合せを一つ選ぶ。
【0066】
s1503:N点すべてを経由する折れ線と、n点を経由する折れ線で囲む図形の面積を計算するステップ。
s1504:ステップs1503で計算された面積が最小値Sより小さいか否かを判定し、小さくないと判定したときに前記ステップs1502に戻り、小さいと判定したときに最小値Sを更新すると共に点の集合を保持する変数C0をそのときのn点の点に更新するステップ。
【0067】
s1505:ステップ1504により算出した面積が最小値Sより小さいと判定したとき、結果を出力部107から変数C0を出力するステップ。
この変数C0は、N点を近似する最も良いn点の組合せである。Sはそのときの評価値に相当する。
【0068】
前記実施例では、ステップs1503による計算処理として、N点すべてを経由する折れ線と、n点を経由する折れ線で囲む図形の面積とする例を説明したが、本発明はこれに限られるものではなく、面積と区分の数の積を評価値としても良い。これにより、より少ない点数での近似が選好される評価が可能となる。
【0069】
さらに、上記実施例では、N−2個からn−2個の組合せを全探索したが、nを固定して、その中でのみ探索するように変更しても良い。この場合、ステップs1501では、nを別途入力し、ステップs1502では、そのnに対してのみ(N−2)C(n―2)個の組合せから、まだ選ばれていないn点の組合せを一つ選べばよい。この変更例では、全探索をしないことで実行時間を短縮でき、ある道路の区間をいくつの点で結びたいかという意図を外部入力することができる。
【0070】
[出力画面例]
以上説明した、詳細化処理・初期値入力処理・集約処理・最適化処理を用いて地理情報のベクタ化を支援する際に出力部107に表示する出力画面の一例を図17を参照して説明する。
【0071】
この出力画面は、GPS受信部101が存在する場所の地図1701と、道路IDの入力用のテキストボックス1702と、処理対象の地図情報(点列データ及び線片データ)を指定するための少なくとも2点の点IDによる初期値を入力するための初期入力ボタン1703と、詳細化を行うための詳細化ボタン1704と、集約を行うための集約ボタン1705と、最適化を行うための最適化ボタン1706と、処理終了を行うための終了ボタン1707が表示される。
【0072】
この出力画面において、操作者が、テキストボックス1702へ道路ID401を入力することにより、道路ID401に対応した地図1701が表示され、該道路ID401に対する初期値入力・詳細化処理・初期値入力処理・集約処理・最適化処理が可能となる。
【0073】
この状態において、初期入力ボタン1703を押すことにより、初期値入力部103による線形要素を表す点列データの初期値を入力する処理が呼び出され、詳細化ボタン1704を押した場合には詳細化部102による線形要素を集約する処理が呼び出され、集約ボタン1705を押した場合には、集約部104による集約処理が呼び出され、最適化ボタン1706を押した場合には最適化部108による最適化処理が呼び出され、終了ボタン1707を押した場合には終了する。呼び出された処理は、前記記載した処理がなされて、必要な出力を出力部107に出力される。
【0074】
このように本実施例による地理情報ベクタ化支援シテムは、地理情報をベクタデータの形式で管理する際に、そのベクタデータの精度を、必要なだけ細かく或いは必要なだけ粗く設定することができる。例えば、ある曲がった道路をどこに何点の点を置いてそれらを結ぶ線分で表現するか、その詳細度を自由に設定できる。これにより、煩雑なデータ管理と正確性とのトレードオフを図ることができる。
【実施例2】
【0075】
前述の実施例1においては、実際の道路をどのように幾何学的に表現するかのデータ管理に関わる処理であったが、これを、出力部に地図上に道路等を重畳表示する際の表示装置の処理として用いることもできる。
【0076】
本実施例においては、複数種類の縮尺の地図がある場合、その縮尺の種類の数だけ表記の種類があれば良いため、対応するデータの持ち方をすべて先の実施例で持っておいてもよい。その他に、予め想定されていない任意の縮尺の地図や衛星画像が提示された場合、その縮尺に相応しい道路の表現の詳細度があるはずである。ここでは、任意の縮尺に対して、適切な道路表現を求めて出力部に道路を重畳表示する表示装置について図18に示したフローチャートを用いて地理情報をベクタ化して出力する処理を説明する。
【0077】
この衛星画像や航空写真や地図に対して地理情報をベクタ化して出力する処理は、次のステップによって実行される。
s1801:衛星画像や航空写真や地図などを入力部106を用いて入力するステップ。
s1802:入力した地図における道路の始点と終点である2点を入力部106から入力するステップ。
このステップは、画像を出力部107に地図を表示出力し、マウスカーソルを合わせるなどして入力できるようにするのが好ましい。
【0078】
s1803:上記2点間を何点で近似するかを入力部106から入力するステップ。
s1804:前述の最適化処理を用い、nを固定し、その中でのみ探索するように変更して実施する最適化処理を行うステップ。
s1805:ステップs804により生成された近似の折れ線を出力するステップ。
【0079】
なお、前記実施例においては、ステップs1803において、2点間を何点で近似するかは入力部106から入力するとしたが、2点間のピクセル換算の距離に比例する値としてこの点数を与えておき、比例計算の定数を予め決めておけば良い。ピクセル換算の距離にこの比例計算の定数を掛けることで、点数を計算できる。これにより、入力装置の煩雑な入力の必要性を抑制するだけでなく、ピクセル換算でほぼ同等の詳細度を持つ近似表現を自動生成することができる。
【0080】
また、前述の実施例は、バス109を用いて各部位を接続する例を説明したが、本発明はこれに限られるものではなく、ネットワーク接続するように構成しても良い。すなわち、GPS受信部101〜最適化部108が空間的に離れたところにあってネットワーク通信にて連携する様に構成しても良く、これによって位置を測るGPS受信部101を含む端末装置を携帯用に最小限に小さくし、必要なだけ大きな計算リソースを遠隔で持つことができる。
【0081】
また、前述の実施例は、点と点との間を線分で結ぶことにしていたが、線分の代わりに、ベジェ曲線やスプライン曲線などの、制御点を用いた幾何曲線を用いても良い。これらは、高次の整関数を表現でき、直線ではなくなめらかな表現が可能となる。点と点との間の最小の区間の表現を必要に応じてなめらかにすることで、より実態にあった地理情報の表現が可能となる。また、整関数なので、定積分を使って面積を求める処理は直線と同様に容易に実現できる。
【0082】
上記の実施例で示した方法を実行可能な形式にしたプログラム、当該プログラムそれを格納した記憶媒体、当該プログラムを実行可能にしたコンピュータサービス等により実施することもできる。
【0083】
以上述べた実施例による地理情報ベクタ化支援システム及び地理情報ベクタ化支援方法は、橋梁、道路、設備等の公物の維持管理等や、補修工事、作業、保全、点検などの分野の業務に適用でき、さらに、地理情報システムにおけるベクタデータの表示機能として適用することもできる。
【符号の説明】
【0084】
101 GPS受信部、102 詳細化部、103 初期値入力部、
104 集約部、105 記憶部、106 入力部、107 出力部、
108 最適化部、109 バス


図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17
図18