ライブラリアン・コラム
「電子化地図データベース」の機能紹介と構築裏話
今満 亨崇
2026年6月
はじめに
筆者は2022年度より、科研費の研究プロジェクト「紛争地域の史資料保存と公開:レバノン地図資料のデジタル化を事例として(研究課題番号:21K00900)」に参加している。本プロジェクトでは1946年以降にレバノンの政府機関によって作成された地図を中心に電子化してweb公開することを一つの目的としており、筆者はこのシステム部分を主に担当した。その成果は2026年4月、アジア経済研究所(以下、「アジ研」という)の新しいデジタルアーカイブ「電子化地図データベース」(以下、「地図DB」という)として公開されている。本記事ではその機能と構築の裏話を紹介したい。
地図画像の表示
地図DBでは、電子化した地図画像(図1 A)と、世界地図の中での位置(図1 B)を並べて表示している。地図画像はマウス操作で拡大・縮小(マウスホイール)、表示位置の変更(ドラッグ)が行えるほか、全画面表示や初期表示位置に戻す(ボタン)ことができる。
この画像表示に使用しているのは、「OpenSeadragon」というビュアーである。OpenSeadragonを採用したのはIIIF(International Image Interoperability Framework)のImage APIに対応していることと、JavaScriptで実装されていることが理由である。
IIIF Image APIへの対応が本ビュアーを採用した決め手となったのは、筆者がIIIF対応の方法を学習しながらシステム構築を進めた結果である1 。本プロジェクトでは当初から電子化した画像をより連携しやすい方法、つまりIIIFに対応した状態で公開することを考えていた。今でこそ説明できるが、IIIFに対応するには基本的に、①1つの大きな画像を小さな複数のタイル画像に分割したり、複数サイズに縮小した画像を用意する。②左記の画像情報をまとめたinfo.jsonを用意する(=これによりIIIFのImage APIに対応したことになる)。③1つ以上のinfo.jsonをまとめたManifestを用意する(=これが複数の画像のまとまり[書籍であれば1冊、地図であれば1セット]を示す。ここまで対応すると一般的なIIIF対応のビュアーで表示できる)という段階で進む。この①②の段階が完了した時点で、実際に動くかどうかを技術検証した時のビュアーをそのまま採用した(そもそも当時は③が必要とは認識していなかった)というわけである。
JavaScriptでの実装が本ビュアーを採用した決め手となったのは、システム基盤の都合である。地図DBは静的サイトのホスティング(作成済みのHTMLやCSS、JavaScriptを配信することはできるが、サーバにインストールしたプログラミング言語による動的処理は実行できない環境)で動作している。その点JavaScriptのみで実装されているOpenSeadragonは、利用者のwebブラウザがビュアーとしての動的処理を実行するので、基盤側の制限を回避できた。
IIIF対応
地図DBではIIIF manifestのURLも掲載している(図1 C)。このURLを利用することで、利用者は自分の好きな機能を持つビュアーで画像を閲覧できるようになる。最初はこのURLを1つのメタデータとして掲載しただけだったが、それだけでは分かりづらかったのでIIIFのアイコン画像も表示することにした。
さらに、一部のIIIF対応ビュアーへのリンクボタンも表示した(図1 D)。リンク先へ遷移すると各ビュアーのデモサイトが開くが、そこで表示されるのはデモサイトが用意したサンプル画像ではなく、当該地図の画像である。これにより、そもそもIIIFを知らない利用者でもそのメリットを体感しやすくしようとしている。
リンク先として選定したビュアーは「Universal Viewer」と「TIFY」である。Universal ViewerはIIIF対応のビュアーの中ではメジャーなもので、多くのデジタルアーカイブで初期表示のビュアー、もしくはビュアー切替えの選択肢として用意されている。TIFYはあまり一般的に採用されていないように思うが、画像の回転やブライトネス・コントラスト・サチュレーションの変更ができる多機能なビュアーである。
複数あるIIIF対応ビュアーの中からこれらを選択したのは、上記のような特徴の違いに着目して……というわけではなく、連携の簡易さである。これらビュアーのデモサイトは、URLパラメータでIIIF manifestのURLを指定することができた。言い換えると、リンクさせるURLを少し修正することで、デモサイトに表示させる画像を指定できる。例えば次のURLはUniversal Viewerのデモサイトでアジ研地図DBの画像を表示させるものである。赤太字の部分が、アジ研地図DB内のとある画像を示すIIIF manifestのURLであることを確認して欲しい。
https://uv-v4.netlify.app/#?manifest=https://d-arch.ide.go.jp/dmap/tile/30/manifest.json
地図DBの中で複数のビュアーを切り替えられるようにすることも技術的にはできたと思うが、本プロジェクトの終了期限も迫る中で、実装の容易さを優先した。
世界地図の中での位置表示
アジ研図書館は多くの地図を所蔵しており、その所蔵情報は「アジア経済研究所所蔵地図目録」で公開している。国・地域に分けて整理してはいるが、個々の地図セットや、その中の1シートレベルのメタデータになってくると、現地の地名を知らないと、もしくは土地勘が無いと、具体的にどこの地図が描画されているのか分かりづらい。
筆者は常々この状況を改善したいと考えており、主業務のスキマ時間を使って何かできることはないか検討を行っていた。その時のアイデアの一つに、緯度経度情報のメタデータがあれば、その地図がどのエリアの地図であるかを世界地図上にプロットできるのではないか、というものがあった。本プロジェクトに参加したことで、このアイデアが実現できるかを試す機会を得た。
地図DBでの世界地図の表示は、「Leaflet」というJavaScriptのライブラリ(≒ソフトウェア)を利用している。世界地図を表示し、拡大・縮小や、地図上へのピンの追加・図形描画を行うライブラリとしては定番のものである。また先述のとおり、JavaScript製なので地図DBを動作させる基盤上でも問題なく機能する。
地図DB上では、マウス操作で拡大・縮小(マウスホイール)や、表示位置の変更(ドラッグ)ができ、さらにその地図画像の描画エリアを青い枠で示している(図1 B)。これにより地図に描画された当時の状況と現代の地図を見比べながら、その変化を確認することができる。
地図画像の描画エリアを示す青枠は、地図本体に明記されている緯度経度情報を元にしている。筆者は本プロジェクトで初めて緯度経度の活用を試してみたわけだが、そこで得た知見は次のとおりである。
- 地図本体に明記されている緯度経度はキリの良い数字までであり、描画されている地図の東西南北の端の正確な数字は分からない。そのため地図画像と、世界地図の中での位置表示には多少のズレが生じる。
- 地図に描画されている緯度経度はLeafletが想定する数字体系とは異なる場合もある。例えば60進数表記を10進数に変換する必要があったり、測地系(緯度経度等を表現するルール)の違いにより地図に描画されている緯度経度があてにならないことがある。
- 上記2点と関連して、正確に緯度経度を特定するには地図本体と世界地図を見比べるジオレファレンスが必要になる。地図DBでは「Levant 1:10.000.e」で唯一ジオレファレンスを行ったが、海岸線や山、河川といった特徴的な地形が無いとおおよその位置特定すら難しい。仮に特徴的な地形を発見できても、これが都市開発などによる変化で照合できなくなっている箇所も多くあった。一方で大通りや山岳地の道といった人工物が変化しておらず、位置特定の助けになる場合もあった。
このような制限・事情もあり、地図画像と描画エリアの青枠表示は完全に一致するものではないが、それでも各地図がどのエリアを描画する地図であるかはとてもわかり易くなったと思う。次のステップとして、本プロジェクトで得た知見を「アジア経済研究所所蔵地図目録」の改善にも活かしたい。
メタデータの管理とHTML生成プログラム
メタデータの管理はExcelファイルにて行っている。Excelを採用したのは将来的なデータの追加を考え、誰でも編集できるようにしたかったためである。非公開の項目も含めて全部で37の項目が存在している。利用や管理に必要な項目は網羅したい、けれども入力を煩雑にしたくない、また地図セットとその中のシート(例えば「日本地図セット」があった時にその中は「北海道地方」「東北地方」……「九州地方」というシートに分かれる構成)という階層構造を管理したいといった要件を、できる限りフォローできるように構成している。
Excelに入力されたメタデータは、筆者が作成したExcel VBAのプログラムによってHTMLファイルに整形される。あまり詳しく説明はしないが、webページのヘッダー部分、フッター部分、地図セットレベル部分、シートレベル部分の4つテンプレートを用意しておき、1地図セットのメタデータ毎に、Excelに記載されたメタデータをテンプレートに流し込みながら、1つのwebページを作成するプログラムである。Wordの差込印刷のような処理と思ってもらえれば良い。これにより、不具合や微修正があった時にはテンプレートを修正してプログラムを再実行すれば、全ページの更新データを一括で作成できる。
おわりに
本プロジェクトで実装したIIIF対応および緯度経度情報に基づく位置表示はいずれも、筆者にとってチャレンジングな取組みであった。プロジェクト終了までに何とか動くものを完成させることができて安堵しているところである。とても頑張ったので機能面にも着目しながら地図DBを使ってみて頂きたい。
また、過去の地図と現在の地図を並べてみると、海岸線の形が変わっていたり、川が無くなっていたり、一方でほとんど変わっていない道路があったりと、様々な小さな発見があって意外と楽しい。そういった発見を一人でも多くの方がして頂けると、本地図DBの実装者冥利に尽きる。
(付記)本記事は、JSPS科研費 21K00900の成果の一部です。
著者プロフィール
今満亨崇(いまみつみちたか) アジア経済研究所学術情報センター図書館情報課。担当は図書館の管理するシステム全般。最近の活動に日本図書館協会開催の研修講師や「情報技術の発展と図書館の情報サービスの安全性,利便性 ――アジア経済研究所図書館の対応――」(情報の科学と技術 75巻10号)などがある。
注
- アジ研のデジタルアーカイブはシステムパッケージを導入していない。そのためコンテンツの追加・削除・編集は図書館職員がHTML、CSS、JavaScript等を編集している。