【ジオ用語解説】マップマッチング
地図データにあわせて位置を補正
マップマッチングとは、GPSなどで得た位置情報を地図データにあわせて補正することを意味します。
GPSなどの衛星測位システムはスマートフォンやカーナビゲーションで現在地を知るための技術として広く使われていますが、衛星測位で得られる位置情報には誤差があり、実際にいる場所とは離れた位置を示してしまうことも少なくありません。そこで、カーナビゲーションのようにユーザーが常に道路上にいることを前提としたサービスでは、マップマッチングを行うことにより、地図上の道路にあたる位置にずらして現在地に近い位置へ補正することでスムーズなナビゲーションが可能となります。
カーナビゲーションにおいてマップマッチングを行わない場合、自車位置が建物や河川の上など、道路ではない場所に表示されてしまう可能性があります。衛星測位の誤差は不規則なので、測位するたびに車の位置があちこちに飛び、画面が見づらくなってしまうことに加えて、軌跡もギザギザの形になってしまいます。マップマッチングは、このようなことが起きないようにするための技術です。
道路ネットワークを基準としてさまざまな要素を考慮
マップマッチングにおいて補正する基準となるのは、地図データの中に含まれる「道路ネットワーク」と呼ばれるデータです。道路ネットワークとは、道路のつながりを表すベクトル形式のデータであり、地図上に表示されるものではなく、ナビゲーションサービスにおいてルート検索を行うときに利用されます。
道路ネットワークのデータは、交差点や分岐点など道路と道路をつなぐ地点を意味する「点(ノード)」と、ノード同士を結ぶ「線(リンク)」の2つで構成され、それぞれ車線数や幅員、制限速度、道路名称などの属性が付与されています。マップマッチングでは得られた位置情報から最も近傍にある道路リンクに寄せるのが一般的ですが、単純に位置が近いリンクに寄せるのではなく、さまざまな要素を考慮しながら前後のつながりを踏まえて最適な位置に補正する必要があります。
たとえば移動中に位置情報が大きく道を外れた場合、速いスピードであれば「交差点を曲がった」のではなく「誤差が生じた」と推測してその位置情報は使わないようにしたり、逆に遅いスピードで進んでいて、前後のつながりを見ても曲がったとするのが妥当だと考えられるのであれば曲がった先の道路のリンクに寄せたりと、多様なアルゴリズムに沿って処理が行われます。
マップマッチングの精度は、補正の基準となる地図データの正確性にも左右されます。もしデータが実際の道路の形状と異なる場合は、マップマッチングを行うことで正しい位置から大きくずれてしまうこともあります。このように、マップマッチングを行う際には移動速度や位置情報の取得間隔、地図の正確性など多様な要素を考慮する必要があり、さまざまな企業が正解率の高いマップマッチング技術の開発に取り組んでいます。
カーナビゲーション以外にも活用されるマップマッチング
マップマッチングはカーナビゲーションにおいて移動中リアルタイムに自車位置を補正する用途で使われることが多いですが、近年ではそれ以外にも、GPSトラッカーなどIoT機器で取得した位置情報の軌跡を可視化したり、位置情報ビッグデータを分析したりする場合にも利用されるようになってきました。
位置情報ビッグデータの分析では、分析を行う前段階の処理として、取得した位置情報データの中から車で移動していると思われるログを抽出した上で、マップマッチングの処理により軌跡を整えることにより、実際の軌跡に近付けることができます。こうして軌跡を整えることにより、移動速度を計算したり、大量の車の移動軌跡を分析したりすることで渋滞を予測する取り組みなども進められています。
マップマッチングが多様な用途に活用されるようになったことで、カーナビに含まれる1機能としてだけでなく、個別にクラウドサービスやAPIとして提供されるケースも増えています。また、オープンソースのマップマッチングツールも公開されています。
自動車だけでなく、歩行者の移動軌跡についてもマップマッチングを行うことがあります。歩行者用のネットワークデータを基準として、歩行者や車椅子利用者が取得したGPSの軌跡に対してマップマッチングを行うことにより、リアルタイムの歩行者向けナビゲーションや、歩行者・車椅子利用者の通行分析を行うことが可能となります。
