Dropbox

日本に行った際、Galaxy Note搭載のGoogle Mapsアプリのナビゲーション機能を試してみました。実は中国では経路探索は出来るもののカーナビの様な画面表示をしたり音声案内は出来ません。

日本でレンタカーとして借りたプリウスにはちゃんとした車載カーナビが付いていましたので、Galaxy Noteを本当に使っていた訳ではなく並行して動作させて本物のナビとの違いを見てみました。

ちゃんとナビらしい画面が表示されます。音声案内も良い感じです。経路から外れた道を走るとちゃんと再探査も行います。

当然ですがナビモードでは画面が自動的にオフになることもありません。電池の消耗が激しくなるので外部電源は必須と思います。

何度か不可解な経路を表示しました。本物のナビでも時折おかしな経路を表示することは経験的に知っていますが、Google Mapsは少しばかり頻繁に不思議な経路を示していました。

興味深かったのは高速道路でトンネルに入るとナイトモード表示に切り替わったことです。

車載カーナビでは車速パルスを取得しているのでトンネル内を移動中も概ね正しい位置が表示されます。Google Mapsのナビ機能もトンネルに入るまでの速度から現在位置を更新し続けてくれます。トンネル内で車の速度が変化したことまでは分からないのでトンネルを抜けてGPSで位置を掴んだ時点で現在位置が修正されます。よく出来ていると言えるでしょう。

もう少し経路探索が賢くなれば十分にカーナビの代用が出来ると思います。

上海から北京まで新幹線(京沪高铁)に乗って見ました。例によってGPSロガーの代わりにGoogle Latitudeの履歴機能からkmlファイルを書きだして表示させてみました。

使用したのはDesireZです。電源が確保できたので安心してGPSをオンにしたまま窓際に放置しました。車内には無線LAN電波が飛んでいます(なぜかインターネットには接続出来なかったです)。GPSが衛星を掴めない時に、この無線LANにヒモ付されていると思われる上海虹橋駅の位置に現在位置が飛んでしまいました。そのためkmlファイルを取得する前に、明らかに間違った位置を手作業にて削除しました。そうしないと軌跡が変なことになってしまいます。

最高時速は310Km/hほどで、1300Km強の距離を4時間55分で走ります。速度計を見ているとほとんどの時間が300Km/h前後でした。さすがに大陸だけのことはあって、ほとんどカーブしているのを感じません。軌跡をみているとかなりの部分が直線になっているのがわかります。しかも平野だらけで一面畑の中を延々と突っ走っている感じです。中国国内の飛行機はディレイするのがデフォみたいなものなので、北京・上海間は新幹線を利用するというも悪くは無いです。料金も一等席で935元なので飛行機とほぼ同じ。走行中、ほとんどの場所でChina Unicomの3G電波が良好に使用出来ていましたので、乗車中ずっと仕事をしてしまうというデメリット(?)もあります。


大きな地図で見る

最近のモバイルデバイスで動く地図アプリはGPSだけではなく携帯電話基地局や巷に飛び交っている無線LANの情報を元に位置決めを行なっています。そのためGPSが不調あるいは搭載されていなくても現在位置が分かるため、私のiPod Touchですら都会であれば地図アプリが実用になります。

無線LANと位置情報のヒモ付は、各デバイスからの情報により自動的に行われサーバー上に蓄積されているようです。

私はモバイル・ルーターを持ち歩いているのですが、それを使用している時にAndroidのGoogle mapsを使用すると思わぬ場所が現在位置として表示されてしまいます。おそらくは過去にモバイル・ルーターを使用した場所にてルーターと位置情報が紐付けされてしまっているからでしょう。なぜかiPod Touchでは、そのような事は起こってません。これはAppleが賢くて何時も色々な場所で使用しているルーターを自動的に排除しているのか、単純にGPS付きなiOSデバイスを使用しているからなのかは分かりません。

つい最近になってGoogleからルーターと位置情報を紐付けしない方法が提示されました。このページのHow do I opt out?の項目に詳しく書かれています。手順は簡単でルーターのSSIDの最後を _nomap にするだけです。

これで、思わぬとこが現在位置として表示されることが少なくなると期待しています。

百度地図については、少し前にも便利であることを書きました。

改めてAndroid版の百度手机地图についてご紹介します。以前に書いたことと重複もありますが、特徴は以下の通りです。

– バスの路線番号で検索すると経路がバス停の位置付きで表示出来る。
– 建物の形が表示される。
– Googleより地図が見やすい。
– オフライン地図機能がある。(Androidの場合、PCで地図データをダウンロードした方が速いです)
– 音声検索が可能。

最後の音声検索は、とても役だっています。私のアヤシイ中国語でもかなり正しく認識してくれます。周りがうるさい場所でも携帯電話に口を近づけて小声でささやけば大丈夫です。外を歩いている時には音声検索の方が本当に楽です。

検索結果はGoogle Mapsとだいぶ違っていることもあります。この辺りは双方使い分けるのが良いのでしょう。

最後にデメリットをひとつ。Androidの電池使用量のグラフを見ると電力消費が半端なく大きいです。実験によるとバックグラウンドに回っても電力消費をしているようです。こまめに終了させた方が良いようです。

[ Google Mapsの場合 ]

以前から度々取り上げてきた中国地図の測地系(座標)のからみでGoogle Mapsでは香港、マカオと中国本土との境目にミステリーゾーンが生じています。香港、マカオはGPSで使用されている世界測地系WGS84が使用されており、中国本土ではおそらくBJ-54というものが使用されているため、その接続部分に矛盾が生じています。


大きな地図で見る

上手に接続されているので、パッと見わかりませんがよく見ると川や道路が途切れていたり鉄道の駅が不自然に離れているのがわかります。

モバイルデバイスでGPSを使用して現在位置を表示する場合、中国本土ではこのズレが補正されて正しい位置が表示されるようになっています。また、香港の地図はもともとGPSの座標と一致しています。そのため深センと香港の間のどこかに補正が入るか否かの境界線があるはずです。その辺りではGPSを使用した現在位置は使い物にならないはずです。このあたりの検証はAnheloさんのブログにて行われていますので参照ください。

[ 百度地図の場合 ]

上の地図と同じ場所を百度地図で表示すると、こんな感じです。

残念ながら百度地図では経緯度による指定ができません(私が知らないだけかも?)ので測地系がどうなっているのかはわかりません。ただ、少なくとも香港と中国本土が同じ測地系を用いて描かれていることは間違いありません。

あまり香港と深センとの境界付近の地図が必要な人はいないとは思いますが、この付近を行き来する場合はGoogle Mapsではなく百度地図を参照する方が良いでしょう。

 

以前からGoogle Mapsのアクセスが悪くなった時の代用として http://map.baidu.com/ を使用していました。両者に大きな差はないのですが百度地図にも色々と魅力があります。中国を訪れる機会が有る方には一度試していただきたいです。PCからアクセスするweb版の他に各種携帯電話用のアプリケーションも用意されています。

以下、私的に便利だった機能です。

[ 共通事項 ]
– バスの路線番号を検索するとルートおよびバス停の位置が表示出来る。中国在住かつ地调(控えめ)な生活をしている人には一押しな機能です。Google mapsでもルート検索でバス路線を表示出来ますが路線番号で一括してバスルートとバス停の位置が表示されるのは意外と有用です。
– 建物の形も表示される。

[ PC版 ]
– 3D表示でビルの形などが確認出来る(多分E都市と同じものかな?)。

[ 携帯電話版 ] – AndroidとiOS版のみテスト
– オフライン地図機能。AndroidではPCでダウンロードしてSDカードにコピーした方が速いかも。iPod Touchでオフライン地図が使えるのはいざという時に役立つ(かな?)。
– Google mapsより携帯電話で見やすい地図と思います。

[ リンク ] 
手机地图のベージ
Android marketの百度地图
–  iTunesの百度地图

以前から中国の地図で使用されている経緯度とGPSで使用されている経緯度が異なることを書いてきました。このためGPSなどで位置決めを行うモバイルデバイスで現在地表示がズレてしまうなどということが起こっていました。いま中国で一番ホットなデバイスであるiPhoneの地図が最近になって、このズレが補正されるようになりました。ということで、現時点でのまとめを行ってみたいと思います。
まとめの時期: 2011年2月

[ ズレが無い、問題なし ]
< iOSデバイス(iPhone/iPad/iPod Touch)の標準地図アプリ >
iOS4.2.1ならば現在地表示はズレない。中国全土で問題ないのかどうかは不明、主な都市では問題ないようです。それ以前のバージョンはJBするとパッチアプリにて補正可能。また北京だけは以前から問題なかったです。

< Android >
私が試したAndroid 1.6のXperia X10では問題ありません。おそらく、全てのAndroidで問題ないのでしょう。

< Nokia S60向けのGoogle Mapアプリ >
2009年の始めくらいから正しく表示出来るようになりました。Latitudeも含まれていますので、これも問題なし。

< PC上でLatitudeの履歴表示 >
どのデバイスで取得したLatitudeの履歴も後から表示する分には正しい位置が表示されるようです。

[ ズレが生じる ]

< iOSデバイス >
– Latitudeアプリ。自分の位置は相変わらずズレています。他の中国国内に居る人の位置は正しいようです。
– 地図アプリにて経緯度を指定した場合。
– 経緯度指定がズレるのと同じことですがtwitterなどに付いた位置情報による地図表示。

< Nokia S60 >
TwitterクライアントであるGravityにはGeoタグから地図を表示する機能があります。これはズレてしまいます。Sports Trackerなどでも同様の現象になるとのことです。総じて経緯度していによる地図表示はズレるということでしょう。

< PC上でのGoogle Maps >
経緯度を指定して地図を表示するとズレた場所がひょうじされます。ただしGoogle Mapsの航空写真は、正しい位置が表示されます。

[ 補足的な事柄 ]
– ズレの正体は中国地図で使われている座標系がGPSのそれと異なるためです。これは中国に限ったことではなく日本にも日本測地系というものが存在し日本でのGPS黎明期には問題が生じることもあったようです。中国政府も中国独自の座標系を必ずしも使わなくても良いという表明をしているという噂も聞きましたので、将来的には面倒なことはなくなる可能性もあります。
– 一国二制度の中国です。Google Mapsの香港地図はズレが生じません。ここでも疑問が湧き上がります。香港の領土は深センと陸続きです。境目はどうなっているのでしょう。Google Mapsで境界線を調べると、無理矢理ツギハギされているのが分かります。また、深センから香港へ移動中にiPhoneの現在地表示がどうなるか実験された方がいらっしゃいます。詳しくは「Anheloの元”中国杭州市モバイル“で“留学”日記」を御覧ください。

以前の記事にも少しだけ書いていますがGPSの無いiPod Touchでも街の中で現在地を表示することが出来ます。

タクシーで移動中の様子をアニメーション化しました。これを見ていただくとよくわかると思います。かなり正確にトレース出来ています。

これは街中に溢れているWiFiの信号を元に位置決めをしているそうです。Skyhook社のページでは明確に記述れてはいませんが巷に溢れているGPS搭載デバイスがWiFiアクセスポイントと位置情報の紐付けに役立っているような気がします。もっともアップルは最近になってSkyhook社ではなく独自の位置情報DBを構築しているという噂もあります。

上海の街の中でしたら、ほぼ問題なく現在地が表示できます。流石に少し郊外に行くとWiFi電波が飛んでいませんので、とたんに役立たずになってしまいます。また、iPod Touchが通信できないことには地図が取得できませんので3G電波をWiFiに変換するモバイルルーターなども必要です。

iPhoneを常用していないので何時からかは分かりませんが(おそらくはこの2週間くらいと思います)以前は現在地が正しく表示出来なかったiPhone/iPadの地図が正しい現在地を表示するようになりました。これでやっとAndroidやNokia S60の地図アプリと同様に使えるものになりました。

ズレる原因は中国地図の経緯度の体系がGPSで使用している物と異なっているためですが、以前から中国でも北京だけは補正されて正しい現在地を表示していました。最近のiPhone4の売れ行きからいずれどの地域でも対応するものとは思っていました。

最近、公開されたiPhoneのLatitudeアプリでは未だに現在地はズレた場所が表示されます。ただし後からPCでLatitudeの履歴を見ると正しい位置が分かったりもします。この辺りの事情については、いずれまとめてみたいと思っています。

追記)
– もしかすると北京、上海と都市毎に対応している可能性もあります。地域ごとのズレてるズレていないという情報がありましたらコメントいただけると幸いです。
– 同じ上海でもiOS4.0.1のままのiPhone4では地図がズレたままだそうです。最新ファームだけの恩恵のようです。以前のズレはJBしているiPhoneであれば修正可能です。詳しくは小龍茶館を参照ください。

追記2)
iPod Touchを購入したところiOS4.1が導入されていました。その状態では地図上の現在地が従来通りのズレを示していました。iOS4.2.1に更新後、同じ条件で現在地を表示すると正しい位置に変わっていました。

追記3)
コメントにて広州でズレることなく現在地を表示していると教えて頂きました。また、成都でも大丈夫であるとも聞いています。中国全土で正しい現在地が表示されているのかも知れません。

追記4)
福清市や厦門ではズレていたというコメントを頂きました。


大きな地図で見る
Google Latitudeのロケーション履歴機能を利用するとLatitudeでの位置情報が数分おきに自動的にGoogleのサーバーに記録されます。その記録はロケーション履歴の画面で参照できます。

またそれをKMLファイルとしてエクスポートすることも可能です。KMLファイルはGoogle Earth上やGoole Maps上で表示することが出来ます。数分毎の記録なので詳細さはGPSロガーにはかないませんが上のように旅行の記録としては十分な軌跡を描くことが出来ます。

上のGoogle Maps上の軌跡はNokia E63で、ほぼGPS無し(一部外付けのGPSユニット使用)で取得したものです。携帯電話の基地局による位置情報だけでも十分記録として役に立つのがわかります。また、この方法だと電池の消費も少なくてすみます。