JOSM用の「日本の樹木」プリセットを作ったよ

Pocket

OpenStreetMapに「樹木」のデータを入れやすくするため、JOSM用の「日本の樹木」のプリセットを作成した。

生成用プログラム (これについては後で書く) とともにGithubに置いておいたので、これをJOSMに登録すればプリセット一覧に50種くらいの樹木が加わる。

また、有志の方が沖縄でよく見かける植物をまとめて下さったので、こちらも沖縄版として公開した。植生が全然違うので、低緯度地帯ではこちらのほうが役に立つと思う。

「東京でよく見かける樹木の詰め合わせ」ではあるが、皆で編集しやすくする仕組みを作ったり、地域や言語を考慮するにはどうしたらいいか悩んだり、植物の分類のめんどくささと面白さに触れたり……と、色々な話がある。

Contents

どうして作ったか

OSMでは単独の樹木だけでなく、生垣、樹木の列 (街路樹など) 、森林など、樹木の集合を表すこともできる。しかし、それを真面目にタグ付けしようとすると非常にめんどくさい。ラテン語の学名、針葉樹か広葉樹か、落葉樹か常緑樹か……そんな情報を入れないといけない。
イタリア料理のレストランに cuisine=italian タグを入れる作業はたやすいが、「イチョウの木」がイチョウの木であることをタグ付けするのはそう簡単にはいかない。イチョウの大木がある。さて、どうするか。ちょっと調べると学名 Ginkgo biloba であることがわかる。さて針葉樹か広葉樹か? あんな見た目でも実は針葉樹に分類されるとかなんとか、とにかくめんどくさい。
やっぱりプリセットが欲しいということになった。

みんなで編集・かんたん生成

プリセットを作るにしても、OSM WikiやTagInfoの内容を淡々とXMLに落とし込むだけではうまくいかない。樹木の種類は多すぎるのでOSM Wikiにはごく一部の例しか載っていない。また、TagInfoもそれほど参考にならない。「そもそも現時点でろくにタグ付けされていない」というところから出発しなければいけないので、「使われている値」が「使いたい値」と一致していると考えてはいけない。
まずは自分が「東京の都市部のマッピング」というユースケースに特化したものを作ってみた。自分のマッピングスタイルや付近のマッピング状況を元に、最初は独断で選んだ。そこに街路樹や公園樹、生垣として使われやすい木、神社仏閣に多い樹木や保護樹木を調べて追加した。汎用的なプリセットを作ると膨大な量になって使いにくくなるし、JOSMも重くなる。そこは割り切って用途を絞った。

そのかわり、同じような物を作りやすいようなプログラムを用意した。植生や文化的背景が違えば、使いたい木のセットも変わってくると思う。使いたい植物を集めたスプレッドシートを用意して同じような形式でTSVを出力すれば、JOSMプリセットの形に一発変換できる。詳しくはGithubのリポジトリを見ていただきたい。README.mdに取扱説明がある。

Wikidataが面白い

日本のOSMコミュニティにちょっと話を振ってみたところ、WikidataのIDを入れると色々使えるのではないかという意見をいただいたので、追加してみた。Wikidataというのは、世界のあらゆる物・事を構造化データベースにしようという、「万物のデータベース」である。WikipediaやOpenStreetMapのように誰でも編集できる。名前は知っていたがあまり真面目に使ったことはなかった。

今のところ、プリセット選択画面にWikidataへのリンクを表示するようになっている。
なお、OpenStreetMapにもWikidata情報を入れることはできる。

これが入っていると、たとえばより上位の分類階級を使って検索するとか、各言語でラベルを表示するとか、色々できることの可能性は広がる。

他言語にも対応したかったけれど

調べてみると、どうやら本州あたりと韓国は植生がけっこう似ているらしい。また、沖縄など日本の低緯度帯と台湾は植生が似ているらしい。Wikidataには、各言語での一般的な名称のデータも入っている。これを使って一気に中国語や韓国語のラベルもつければ使いやすくなるのでは……と思ったが、それが余計に混乱を招きそうだという結論に達し、やめた。

学名ではなく一般名で植物を呼ぶとき、それが相当する種はけっこう変わってくる。たとえば、日本語の「スギ」は英語の “cedar” と訳されることが多い。”cedar” が「スギ」と訳されることもある。和英・英和辞典も多くがそうなっている。しかし、日本で「スギ」が実際に指す種と英語圏で “cedar” が指す種は異なっている。

日本で「スギ」といったら大抵はピンポイントで「Cryptomeria japonica」を指す。他にも「スギ」という名前がつく植物もあるが、それらはほとんどの場合「ヒマラヤスギ」などと明記される。一方、”cedar” のほうはもっとざっくりとした呼称で、様々な属・科の植物まで “cedar” に括られている。

たとえば、古い神社の境内に「保護樹木 スギ」という札がつけられている樹木があったとする。これは “Cryptomeria japonica” だと思えばたぶん正解。しかし、とあるマッパーが英語を母語としており、「日本語の『杉』は英語の “cedar” である」という知識を持っていたとするとどうだろう?
そういうケースを考えると、プリセットに “Cedar” というアイテムがあっても混乱するだけだろう。他にもこういうケースはたくさんあるので、多言語対応は結局やめることにした。

もっと緑を

樹木や並木、森林に細かいタグがついているとどう役立つだろうか? ある程度の量があれば、OSMのデータから植生を把握できるかもしれない。古くからある樹木から土地の歴史が浮かび上がってくることもある。花見や紅葉狩りの穴場が探せる。どんぐりや松ぼっくりの拾える所に子供を連れて行ける。
何が役に立つかはわからない。役に立つにはある程度の量と質が必要だ。用途が先かデータが先か。とりあえず樹木マッピングが簡単になるので、樹木プリセットを使ってみて欲しい。

Pocket

1件のコメント

ただいまコメントは受け付けていません。