ブログに戻る
AI Segmentation
QGIS
Tutorial

AI Segmentation for QGIS: 完全ガイド

自動建物検出の前後を比較した街の中心部 (after)
自動建物検出の前後を比較した街の中心部 (before)
画像検出
Drag to compare
街の中心部全体を、1回の処理で検出(フランス、Saint-Germain-en-Laye、Google Satellite画像)。ハンドルをドラッグして比較。

AI Segmentationは、あなたが QGISですでに開いている画像を、クリーンなベクターレイヤーに変えてくれる。使い方は2通り。まずAutomaticモードでは、ゾーンを描いて対象物に名前を付けると、そのすべてのインスタンスを一度に取得できる(建物のフットプリント、区画、樹木、道路、ソーラーパネル)。処理はクラウドで実行され、あなたのマシンにGPUは不要だ。次にManualモードでは、対象物を1つクリックするとAIがその輪郭を描く。こちらはあなたのコンピューター上でローカルに、無制限に動作する。上の画像は1回のAutomatic実行の結果で、このガイドではそれをQGIS上で設定ごとに実演していく。

インストールと有効化

QGISでプラグイン -> プラグインの管理とインストールを開き、AI Segmentationを検索してインストールする。続いてパネルからサインインすると(ブラウザのタブが開き、約15秒)、両方のモードが使えるようになる。

Manual/Automatic切り替えスイッチが付いた、開始準備が整ったAI Segmentationパネル
画像レイヤーを選んで起動する。

最初の検出

目標:上の街の中心部にあるすべての建物フットプリントを抽出する。1回の実行で、最初から最後まで。

ゾーンを描く

Start Automatic AI Segmentationをクリックし、地図上のエリアの周りをクリックしてループを閉じる。くっきりとコントラストの高い画像ほど、最もクリーンなポリゴンが得られる。

ゾーンを1点ずつ描き、閉じたところ。

対象物に名前を付ける

対象物を入力するか(ここではbuilding)、プレビュー付きの既成オブジェクトが並ぶLibraryから選ぶ。

設定ステップ:対象物をbuildingに設定、サンプルカード、詳細度スライダー

サンプルを示す(任意)

一言だけでは足りないこともある。Draw an exampleでは、あなた自身の画像からサンプルをAIに渡せる(同じセンサー、季節、解像度)。対象物を1つ輪郭で囲めば、AIがその類似物を探す。Exclude a look-alikeはその逆で、誤検出を輪郭で囲んでAIに「これは違う」と伝える。いくつかのサンプルに名前を組み合わせるのが通常もっとも強力で、対象物に適切な名前がない場合はサンプルだけでも機能する。

サンプルを示す:地図上に描かれた1つの正例(緑)と1つの除外(赤)

パネル内の参照チップ:サンプル1が緑、除外2が赤

Detailを設定する

Detailスライダーは、ゾーンを1024pxのタイルのグリッドに分割し、各タイルをフル解像度で検出したうえで1枚のシームレスなレイヤーに再結合するので、境界をまたぐ対象物も統合される。詳細度を上げるとタイルが小さく分割され、より小さな対象物が見つかる。タイル数はリアルタイムで更新される(ここでは12タイル)。ゾーンのサイズに上限はない。

ゾーン上のタイルグリッドのリアルタイムプレビュー

検出する

Detect objectsをクリックする。ゾーンはタイルごとに処理され、結果は地図上にリアルタイムで描画される。この実行では約2分で2,415個の対象物が見つかった。

検出の進行中、12タイル中4タイル目、これまでに365個検出

実行中にリアルタイムで描画される途中結果

レビューする

検出後に開くのはエクスポートではなくレビューだ。以下の操作はすべて即座に反映され、再実行は不要だ:レイヤーが正しく見えるまで検出結果を絞り込み、形を整えられる。次のセクションで各コントロールを解説する。

レビューパネル:件数、表示色、信頼度ヒストグラム

エクスポートする

Export polygonsをクリックする。GIS向けのスキーマ(classscorearea_m2perimeter_m)を備えた、スタイル設定済みのGeoPackageレイヤーが得られる。ここでは306件の建物フットプリントだ。

306件の建物フットプリントを含むエクスポート済みGeoPackageレイヤー

class、score、area_m2、perimeter_mの各列を持つ属性テーブル

レビューのコントロール解説

Confidence(信頼度)

すべての検出にはscoreが付く。そのポリゴンが本当にあなたの対象物であると、AIがどれだけ確信しているかだ。実行時はもっともらしいものをすべて返し、Confidenceスライダーで残す最小スコアを決める。More objects側にドラッグすると弱い検出も表示され、Only confident側にすると最も強いものだけが残る。スライダー上のヒストグラムは各レベルにいくつの対象物があるかを示し、件数はリアルタイムで更新される。同じ実行を、More objectsOnly confidentの間でリアルタイムに動かした様子がこちら:

Confidenceスライダーをドラッグすると、レイヤーと件数が即座に更新される。

これらの屋根のような密集した繰り返しの対象物はスコアが控えめに出やすいので、低い値から始めて上へ絞り込むほうが、逆のやり方より通常はうまくいく。手作業で修正した対象物は、信頼度に関わらず常に保持される。

表示色

同じ検出結果を4通りの見方で確認でき、それぞれ異なる問いに答える。Random(対象物ごとに1色)は隣り合う対象物が分離されているか確認する。Outlineは境界を画像と照合する。ConfidenceはAIが確信している箇所(黄)と迷っている箇所(紫)を示し、信頼度スライダーをどこに合わせるべきか教えてくれる。Normalは単一のクリーンな色だ。いずれも見た目だけで、ジオメトリは一切変わらない。

4つの表示モードを並べたもの:Random、Outline、Confidence、Normal
同じ検出結果を4通りに:隣接を分離するRandom、境界を確認するOutline、迷いを見つけるConfidence、レイヤーを見るNormal。

Refine detections(検出結果の調整)

Refine detectionsセクションは、すべてのポリゴンを一度に、即座に整形する:

形状、サイズ、輪郭のコントロールを備えたRefine detectionsパネル
形状、サイズ、輪郭のコントロールを、レイヤー全体にリアルタイムで適用。
  • Right anglesはエッジを90度にスナップし、建物、プール、ソーラーパネルのような人工物に向く。
  • Round cornersは輪郭を滑らかにし、樹木や低木のような自然物に向く。
  • Fill holesは各ポリゴン内部の隙間を埋める。
  • Min / Max sizeは地表面積の範囲外の検出を隠し、小さなノイズの塊を落とす最速の方法だ。
  • Simplify outlineClean edgesExpand/Contractは輪郭そのものを微調整する。

同じ手法を、あらゆる対象に

Automaticモードは、入力を1つ変えるだけでまったく別の作業になる。言葉を変えれば、別のレイヤーが手に入る。5km²以上の農地区画:

自動検出の前後を比較した農地区画 (after)
自動検出の前後を比較した農地区画 (before)
画像検出
Drag to compare
プロンプト:farm field。5km²以上の約250区画を、1回の実行で。

あるいは、密集した市街地の道路網:

自動検出の前後を比較した市街地の道路 (after)
自動検出の前後を比較した市街地の道路 (before)
画像検出
Drag to compare
プロンプト:road。走行可能な路面をポリゴンとして抽出。

樹木、車両、温室、プール、ソーラーパネルもすべて同じ要領で扱える。言葉を推測したくない場合は、パネル内のLibraryにプレビュー付きの既成オブジェクトが並んでいる。

Manualモード

Manualモードは、パネルからの一度きりのセットアップ後、あなた自身のコンピューター上でローカルモデルを無制限に実行する。対象物をクリックするとAIが輪郭を描き、左クリックで領域を追加、右クリックで削除できる。そしてポリゴンを1つずつ保持・エクスポートする。1,000個ではなく10個の精密な対象物が必要なとき、あるいはすべての輪郭を完全に制御したいときに真価を発揮する。

Manualモード:屋根を1回クリックすると、1つのクリーンなポリゴンが輪郭付けされる
Manualモード:1クリックで1つの輪郭を、あなたのマシン上で。

2つのモードは連携する。Automaticのレビュー内からRefine in Manual modeを使うと、検出結果がManualモードで開き、いくつかの対象物を手作業で修正・追加してから、戻ってすべてまとめてエクスポートできる。

Automaticのレビューパネル内にあるRefine in Manual modeボタン
Refine in Manual mode:自動の結果を手作業で仕上げてから、エクスポート。

自分の地図で試す

最良のテストは、あなたが実際に扱っているゾーンだ。AI Segmentationをインストールし、そこで実行して、手作業でデジタイズしていたであろう結果とレイヤーを比較してみてほしい。もし何かおかしな動作があれば、パネル内の**? Help**ボタンから直接私たちに届く。

Written byLilien Auger
·1 min read
Contact