AdSense部秋学期ミッション(3) - AdSense実験室

AdSense部秋学期ミッション(3)

2013-11-24

3つ設定したミッションのうち、「新規サイトの構築」から着手。
まずはメインとなる地図データの準備から。

今回使うのは天保十三年の「富士見十三州輿地全図」。
富士山を中心に、周辺地域一円が描かれた地図です。

富士見十三州輿地全図

これ、サイズが1.5m×1.5mくらいと、かなりデカい地図なんです。
当然、こんな大きな地図の全体を一度ではスキャンできないので、部分ごとに何回かに分けてスキャンして、あとでPC上で一つの画像につなぎ合わせる、という作業が必要になります。

というわけで、4時間近くかかってようやく全てのスキャンを終了。ふぅ。
A3サイズで30枚の画像ができました。つまり、全体を30分割した形になりますね。

画像の結合

さて、大変なのがこの30分割された画像のつなぎ合わせ。
手作業でいちいち貼り合わせてたのでは膨大な時間がかかってしまいます。 ここは効率よく、ツールを使うことにしましょう。

以前、「古地図で見る信州」を作ったときに、同じような作業を行いましたが、そのときに重宝した結合ツールが「hugin」。フリーだけどとてもよくできたアプリです。
今回もこれに頼ろうと思って、サイトから最新版をダウンロード。 ところがこれ、もともとはデジカメ写真のパノラマ合成のためのアプリで、最新版はそのへんの対応が進化していて、レンズ歪み補正機能なんかが強化されてました。

今回の画像はスキャン画像なので、これだとかえって画像が歪んでしまう心配が。 うーん、親切すぎるのも困りものだ。

仕方がないので今回は別のツールを使うことにしました。
そこで出会ったのがマイクロソフト謹製の「Microsoft Image Composite Editor」てやつ。
これはいい!
もー、最高!マイクロソフトの底力を見せつけられた、って感じ。

何がスゴイって、スキャンした30枚の画像をまとめてこのソフトに放り込めば、どの画像をどの位置にもってくるか、このソフトが全自動で判断・結合して1枚の画像にしてくれる。
なーんにもしなくても、ただ待ってるだけで結合完成。こりゃすごい。
前回ものすごく苦労したのがウソのようで、まるで魔法のようにあっというまに地図画像が復元されました。すごいぞマイクロソフト!

画像の切り出し

せっかく結合した画像ですが、これをGoogleMapで表示させるためには、各ズームレベル毎に適正サイズなブロック画像へと再分割する必要があります。
GoogleMapではズームレベルごとにタイル分割された画像を敷き詰めて表示するしくみなので、画像のズームレベルを何段階にするかで必要な画像枚数は変わってきます。
1段階のズームなら4枚。2段階なら8枚。3段階なら16枚という具合に、2の(n+1)乗ぶんの数が必要になります。
タイル1枚は256x256で、今回は7段階ズームを考えているので、用意する元画像は16,384x16,384px。これをタイル分割して全体で5461枚のタイル画像を用意することとなりました。

これももちろん手作業でなんかやってらんないので、ツールを使います。
ここで活躍するのがロンドン大学UCLの開発したオープンソースソフトウェア「GMapImageCutter」。この手の作業での定番アプリです。

ここまでやってようやくGoogleMapで地図表示するための下準備ができました。
ここからはこの画像を使ってブラウザで表示させるためのコーディング作業となります。詳細についてはまた次回。

→ 次の記事:AdSense部秋学期ミッション(4)

スポンサーリンク