Web navigationをしていたら今,突然,邂逅してしまった。凄くありがたいソフトがあった。この目的のために今年の春休み初めにMFworksで作成を始めて,こんなことをしていたらまた春休みに論文が書けないとこの種の遊びを断念していたのだ。
国土地理院が提供する数値地図のうち,数値地図25000(地図画像)の個々の地形図
http://www.jmc.or.jp/data/25gazou/25gazou.html
は一般に考えられているような台形ではなく北半球では緯線部は下に凸の曲線で経線部は直線の四辺形である。隣り合う地形図を単にピクセル単位で編集することでは接合することはできない。これを長方形にしてくれるソフトPixTOPOが開発された。これを以下に紹介する。ただ,国土地理院のmemやsem情報から立体図などを作成する機能もあるが,ぼくの環境では使い物にならない。
PixTOPOはWindows用のソフトだから,MacではVirtualPCで使うことになる。ぼくはVirtualPC
Ver.3.0でWindows98。以下,VirtualPC Win98上でのこと。
webでPixTOPOのダウンロードのページに入る。
1.1 PiXTOPO ver. 2.2 1.9MBをダウンロード
VirtualPC Win98上でダウンロード。
1.2 Windows Installer(これもPixTOPOに用意されている)のダウンロード
これはWindows 2000からの標準仕様だから,Win98には当然入っていない。Windows95/98用(1.4MB)をデスクトップにダウンロード。その結果,InstMsiが入る。これをダブルクリックしてインストールする。
1.3 PixTOPOをインストール
デスクトップ上のPixTOPO.msiをダブルクリックしてPixTOPOをインストールする。C:\Program Files\PixTOPO\,に入る。その結果,スタートメニューのプログラムの中にPixTOPOというフォルダーが生成される。Windows2000よりヴァージョンの低いOSの場合はまだ実行はしないこと。
1.3 MFCランタイム集のダウンロード
PixTOPOに用意されているリンクが切れている(PixTOPOにこのトラブルをメールしました)。このダウンロードのページの最後にボーイシュソフトへのリンクがあるので,ここから入るといい。
http://www.dc-sakura.com/
の「追加ファイル」のページへいき,MFCランタイムライブラリ 2002.11.6の
mfc70.zip 1.54MB(フリーウェア)をダウンロードする。解凍されてmfc70というフォルダーがdesktopに作成される。フォルダー内のSetup.exeを実行する。システムフォルダーにインストールされるファイルは,二種類あって,
Microsoft Visual C++6.0.NETに附属するMFCランタイム集
mfc70.dll, msvcr70.dll,msvcp70.dll
Microsoft Visual C++6.0 Service Pack5に附属するMFCランタイム集
MFC4.2-6.0間で互換性を持つ
mfc.42.dll, msvcp60.dll
全ファイルはMicrosoftに,ただこのセットファイルはボーイシュソフトに,著作権あり。
1.4 PixTOPOの実行
スタートメニューのプログラムの中のPixTOPOを実行すればPixTOPOが立ち上がる。
2.1 前もっての画像ファイルの選定
茨木市を例に示す。茨木市は4図幅に跨る。「高槻」図幅が主要部分を含む。範囲全体を矩形領域にするため,敢えて北西部の「妙見山」と南西部の「伊丹」を含めた。
さて,上の地図のように,「法貴」〜「伊丹」の2×3の図幅を対象とするが,この画像の構成画素数を知る必要がある。
上のリンクされて表では,水色で塗った領域を参照してほしい。
隣り合った地図画像を接合する場合,横幅と高さを揃える必要がある。高さはここでは全て同じなのだが,横幅は「高槻」図幅のものを採用することにした。つまり,横幅4572ピクセル×高さ3697ピクセルである。
PIXTOPOでは,正規化をする際,図幅周辺の空白を削除して図郭だけにしている。それゆえ,「高槻」のこの画素数はこれに対応しなければならない。kanri.csvによれば,「高槻」図幅の図郭四隅の座標値は,左上から反時計回りに,(75,
75), (73,3771),(4644,3771),(4642,75)となっている。等脚台形になっており,底辺の画素数は,4644-73+1=4572,台形の高さの画素数は3771-75+1=3697となる。
2.2 地図画像の読み込みと正規化
茨木市域を含む数値地図25000(地図画像)の「京都及び大阪」(5235)のCDロムを読み込み,処理結果はWindowsとMacintoshの共有フォルダーに入れることにする。この点はもちろんユーザーの使用環境で変わる。ぼくはVirtualPCなので共有フォルダーが都合がいい。なお,読み込みの際に必要入力ファイルをハードディスクにコピーしてもいいが,同時にCD附属のkanri.csvを同じディレクトリー構造で入れておく必要がある。ディレクトリーでF:を探す(CDロムでも共有フォルダーでも同じ)。フォルダ名もdataである必要があり,data/の中に画像ファイル群とkanri.csvを入れる必要がある。画像ファイル名も変更してはならない。kanri.csvと対応しなくなるので。CDから読み込むようにすればこういう気遣いは必要ないが。
WindowsのスタートメニューからPixTOPO地図画像Clipper Ver.2.2を選ぶ。立ち上がった後に,メニューから正規化/25000地形図を選択する。入力ファイルは複数選ぶことができる。ぼくの使用環境では個々のファイルを選ぶことができないのでCDロムから523513.tif〜523534.tifをSHIFTキーを使って選び,選んだファイルが表示されているウィンド内で不要なものは個々に削除した。"ファイル名"
" ファイル名" "ファイル名"というような表示になっている。
次に出力ファイルを保存するディレクトリーを指定するのであるが,私の場合は前述のように,共有フォルダーを指定した。その後,出力画像の画素サイズを入力する必要があり,前述のように,横幅4571ピクセル×高さ3696ピクセルを入力した。
その後,ファイルごとに個々に入力……………の処理(25),出力ファイルを作成……………,と表示される。「閉じる」という表示が出てくれば処理が終わったことがわかる。存外,早く終わる。
この処理の後,新しく,kanri.csvが生成される。接合するには,一度アプリケーションを終了した方がいい。そうしないと,新しく作成されたkanri.csvをうまく読み込んでくれないようだ。列幅が違う画像を接合できない,というようなエラーメッセージが出てしまって先に進めないので。
しかし,地図画像に「はみ出し」があったり複数のフォルダーに跨るファイル群を選ぶ方法など,より工夫する必要があり,それは別のページに飛んで欲しい。
2.3 接合
PixTOPOでは「張り合わせ」となっているが,接合だろう。用語としては「貼って合わせる」というイメージから来ているようだ。メニューから地図画像変換/張り合わせ,を選ぶ。縦と横の面数を入力(最大5×5)すると,枠組みが表示されるので,個々の領域をクリックして,接合する個々の正規化済み画像を選ぶ。
サムネール表示がすべて完成したら,下段に表示されている出力ファイル名を先に入力する。「実行」ボタンを押すと,接合が実行されて画像が作成され,kanri.csvが生成する。この中には接合された画像の座標値が出力されて追加されている。
見事に接合されている。素晴らしい。
さて,これを画像アプリケーションで読み込むことになるが,Photoshopだと汎用フォーマットとして画像の幅と高さを指定する必要がある。先に作成されたkanri.csvや当方の手計算の画素数と,Photoshopの読み込みがうまく対応しない場合がある。GraphicConverterではそのような作業は必要なく読み込んでくれる。地図画像6枚を接合すると,37.1MBのファイルが作成されるが,GraphicConverterでデフォルトのtiffで保存すると96.6MBになった。
以 上