データサイエンス

AIの応用

奈良市オープンデータで地目分類AIを作ってみた

奈良市が公開している地籍・地目情報のオープンデータを活用し、AIによる土地分類(地目判別)を自動化するための教師データを作成・学習するプロジェクトです。本プロジェクトでは、地図や航空写真と地目ラベル(例:宅地、公衆道路、原野、学校用地など)を組み合わせて、小さなパッチ画像(例:100m四方)を作成し、それを元にPyTorchを用いた深層学習モデルで土地の種類を識別できるように学習を行います。地目分類は不動産評価、都市計画、防災対策など幅広い分野で必要とされている一方、従来は目視や手作業に依存する場面が多く、効率化が求められていました。本プロジェクトでは「auto-geomoku-classifier」で用いていた手法を奈良市に適用し、地域特化型のAIモデルを再構築することを目的としています。データの整備にはQGISを使用し、地目ポリゴンとオルソ画像を視覚的に確認しながらパッチ画像を生成。教師データ生成用スクリプト(create_patches_count_fixed_CSV_ONLY.py)と学習用スクリプト(train_land_classifier_ADD.py)を用いて、オープンデータから実用的な学習セットを構築しました。さらにGitHubを使ってプロジェクト全体をバージョン管理し、再現性やチーム共有も可能としています。このプロジェクトは、他自治体や他地域への展開を見据えたテンプレート構成となっており、奈良市以外の地目データに差し替えることで柔軟に応用が可能です。教師データ構築・地目分類AIモデルの学習・評価・公開という一連の工程を通じて、オープンデータ利活用とAI技術の融合による地域課題の解決を目指します。
GISアプリ

Pythonで凸包を生成する

Pythonを使って緯度・経度データから凸包(Convex Hull)を生成する方法を紹介。GISやデータサイエンスで活用されるこの手法は、点群の最小の囲い込みを計算し、GeoJSON形式で出力できます。必要なライブラリやコード例も解説しています。
GISアプリ

Pythonでボロノイ図作成

Pythonを使ってボロノイ図を生成する方法を、具体的なソースコードとともに解説します。ボロノイ図は、空間上の複数の点に対する影響範囲を視覚化する強力なツールで、地理情報システム(GIS)やデータ可視化において広く利用されています。今回の記事では、ボロノイ分割の仕組みからGeoJSON形式での出力まで、Pythonのライブラリを活用した手法をわかりやすく紹介します。