AI Segmentation for QGIS: 完全ガイド


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

最初の検出
目標:上の住宅街にあるすべての建物フットプリントを抽出する。1回の実行で、最初から最後まで。
ゾーンを描く
Start Automatic AI Segmentationをクリックし、地図上のエリアの周りをクリックしてループを閉じる。くっきりとコントラストの高い画像ほど、最もクリーンなポリゴンが得られる。
対象物に名前を付ける
対象物を入力するか(ここではbuilding)、プレビュー付きの既成オブジェクトが並ぶLibraryから選ぶ。

サンプルを示す(任意)
一言だけでは足りないこともある。Draw an exampleでは、あなた自身の画像からサンプルをAIに渡せる(同じセンサー、季節、解像度)。対象物を1つ輪郭で囲めば、AIがその類似物を探す。Exclude a look-alikeはその逆で、誤検出を輪郭で囲んでAIに「これは違う」と伝える。いくつかのサンプルに名前を組み合わせるのが通常もっとも強力で、対象物に適切な名前がない場合はサンプルだけでも機能する。
Detailを設定する
Detailスライダーは、ゾーンを1024pxのタイルのグリッドに分割し、各タイルをフル解像度で検出したうえで1枚のシームレスなレイヤーに再結合するので、境界をまたぐ対象物も統合される。詳細度を上げるとタイルが小さく分割され、より小さな対象物が見つかる。タイル数はリアルタイムで更新される(ここでは9タイル)。ゾーンのサイズに上限はない。

検出する
Detect objectsをクリックする。ゾーンはタイルごとに処理され、結果は地図上にリアルタイムで描画される。この実行では951個の候補オブジェクトが見つかった。


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

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


レビューのコントロール解説
Confidence(信頼度)
すべての検出にはscoreが付く。そのポリゴンが本当にあなたの対象物であると、AIがどれだけ確信しているかだ。実行時はもっともらしいものをすべて返し、Confidenceスライダーで残す最小スコアを決める。More objects側にドラッグすると弱い検出も表示され、Only confident側にすると最も強いものだけが残る。スライダー上のヒストグラムは各レベルにいくつの対象物があるかを示し、件数はリアルタイムで更新される。同じ実行を、More objectsとOnly confidentの間でリアルタイムに動かした様子がこちら:
これらの屋根のような密集した繰り返しの対象物はスコアが控えめに出やすいので、低い値から始めて上へ絞り込むほうが、逆のやり方より通常はうまくいく。手作業で修正した対象物は、信頼度に関わらず常に保持される。
表示色
同じ検出結果を4通りの見方で確認でき、それぞれ異なる問いに答える。Random(対象物ごとに1色)は隣り合う対象物が分離されているか確認する。Outlineは境界を画像と照合する。ConfidenceはAIが確信している箇所(黄)と迷っている箇所(紫)を示し、信頼度スライダーをどこに合わせるべきか教えてくれる。Normalは単一のクリーンな色だ。いずれも見た目だけで、ジオメトリは一切変わらない。

Refine detections(検出結果の調整)
Refine detectionsセクションは、すべてのポリゴンを一度に、即座に整形する:

- Right anglesはエッジを90度にスナップし、建物、プール、ソーラーパネルのような人工物に向く。
- Round cornersは輪郭を滑らかにし、樹木や低木のような自然物に向く。
- Fill holesは各ポリゴン内部の隙間を埋める。
- Min / Max sizeは地表面積の範囲外の検出を隠し、小さなノイズの塊を落とす最速の方法だ。
- Simplify outline、Clean edges、Expand/Contractは輪郭そのものを微調整する。
同じ手法を、あらゆる対象に
Automaticモードは、入力を1つ変えるだけでまったく別の作業になる。言葉を変えれば、別のレイヤーが手に入る。5km²以上の農地区画:


あるいは、太陽光発電所のパネル群:


樹木、車両、温室、プール、ソーラーパネルもすべて同じ要領で扱える。言葉を推測したくない場合は、パネル内のLibraryにプレビュー付きの既成オブジェクトが並んでいる。
Manualモード
Manualモードは、パネルからワンクリックで一度だけセットアップすれば、あなた自身のマシン上でローカルに動作する半自動モデルとして、無制限かつオフラインで使える。操作は常に同じだ。対象物をクリックするとAIが一発で輪郭を描き、続けて左クリックで領域を追加、右クリックで余分な部分を除外できるので、数回のクリックでおおまかな推測がクリーンな境界に変わる。Automaticと同じ形状コントロール(Simplify outline、Round corners、Right angles、Expand/Contract、Fill holes)が、この選択範囲にもリアルタイムで適用できる。Save polygonで確定すると(緑色になる)次の対象物へ進み、作業が終わったらExport polygons to a layerでまとめて書き出す。

Manualモードには2つの活躍の場があり、まず出会うことになるのはAutomatic実行結果の修理ツールとしての使い方だろう。
Automaticの結果を手作業で修正する
Automaticの一回のパスでほとんどの作業は片付くが、密集したシーンには必ずいくつか粗さが残る。隣の対象物にはみ出した輪郭、モデルが2つに割ってしまった中庭、見逃した数棟の建物といった具合だ。レビュー画面の中からRefine in Manual modeを使えば、まさにそれらの検出結果がManualで開き、何も再実行せず、新たなクレジットも使わずに、一点ずつ修正できる。

すべての検出結果は編集可能なオブジェクトとして引き継がれる。内部を右クリックして再度開き、過剰にセグメント化された部分を削り取ったり、内部を左クリックして再び大きくしたりできる。何もない地面をクリックすればパスが見逃した建物を追加でき、Deleteで不要なものを削除、Sで気に入ったものを確定する(緑色になる)。レイヤーが整ったらBack to reviewで戻り、自動と手作業のポリゴンをまとめてエクスポートする。
ゼロからオブジェクトごとにセグメント化する
Automaticを一切使わず、要素を1つずつ、それぞれにクリーンな輪郭を付けてセグメント化することもできる。モデルはあなたのマシン上で動作するため無制限でクレジットも消費せず、1,000個ではなく10個の精密な対象物が必要なときや、すべての境界を完全にコントロールしたいときに最適なツールになる。画像に関するルールはAutomaticと同じで、GeoTIFFからドローンのオルソ画像、XYZ/WMSのベースマップまで、表示できるラスターであれば何でも使える。
Manualを選んで開始する
パネルでManualタブを選択したまま、画像のレイヤーを選び、Start Manual AI Segmentationをクリックする。モデルの読み込みは一度だけで、以降のクリックは即座に反映される。
対象物をクリックする
対象物のどこかをクリックすると、ローカルモデルが一発で輪郭を描く。ここでは、孤立した建物への1回のクリック。

1、2回のクリックで修正する
左クリックでモデルが見逃した領域を追加し、右クリックで誤って含まれた部分を除外する。輪郭はクリックのたびに更新される。緑の点がポジティブポイント、赤い十字がネガティブポイントだ。

保存して次へ進む
Save polygon(またはSキー)で選択範囲を確定する。緑色になってレイヤーに加わり、パネルは次の対象物の準備が整う。モデルは一度に1つの要素を扱うのが最も得意だ。

レイヤーにエクスポートする
すべての対象物がそろったら、Export polygons to a layerで、labelとarea_m2によるクリーンなスキーマを持つスタイル付きのGeoPackageを書き出す。GISですぐに使える。

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