コンテンツへスキップ
AI Segmentation
GeoAI
ガイド

セマンティックセグメンテーションとインスタンスセグメンテーションの違い

公開日 更新日

ベンガルールのシヴァージナガルの建物フットプリント。道路が密に走る街区で、建物1棟ずつが別のポリゴンになっている。
写真:planemad、CC BY-SA 4.0、Wikimedia Commons。

セマンティックセグメンテーションは、画像の全ピクセルにクラスを付けます。このピクセルは建物、こちらは道路、次は樹木、という具合です。インスタンスセグメンテーションはさらに一歩進み、同じクラスの物体どうしを分けます。このピクセルは12番目の建物、こちらは13番目の建物、という具合です。

違いを一言でいうと

セマンティックは「どれだけあるか」に答えます。インスタンスは「何個あり、どれがどれか」に答えます。3つ目の用語であるパノプティックは、同じ地図の上で両方に答えます。

同じ画像に、2通りのラベルを付けた例です。セマンティックセグメンテーションでは、すべての建物が同じ色で塗られます。インスタンスセグメンテーションでは、建物1棟ごとに輪郭と番号が付きます。

同じ7棟の建物を示す3つのパネル。セマンティックでは全体が緑で、接する2棟の家が1つの形に結合している。インスタンスでは建物ごとに色が違い、1から7まで番号が付いている。パノプティックでは番号付きの建物が灰色の地面クラスの上に載っている。
接する2棟の家は、セマンティックでは1つの形、インスタンスとパノプティックでは物体1と物体2になります。
セマンティックインスタンスパノプティック
出力ピクセルごとに1つのクラス物体ごとに1つのマスクピクセルごとに1つのクラスと、数えられるものの物体ID
接する2棟の家マスクは1つ物体は2つ物体は2つ
物体とみなすものなし。クラスは面として扱う屋根、樹冠、プール、車の1つ1つ数えられるもの1つ1つ。面は面のまま
数えられるか数えられない数えられる数えられるクラスなら数えられる
GISでの主な用途土地被覆、樹冠率、不浸透面、変化抽出建物、樹木、プール、太陽光パネルの台帳づくり景観全体の地図、農地区画
主なモデルU-Net、DeepLabMask R-CNN、Segment Anythingファミリー2つのヘッドを持つモデル、またはパノプティックのラベルで学習した1つのモデル
QGISでのベクタ化ポリゴン化してから整えるすでに物体ごとに1つのポリゴンクラスをポリゴン化し、物体IDは残す
ランスのテラスハウス通りを2通りで表示した同じ画像。左は全建物が緑の1つのマスクにまとまり、右は家1軒ずつが色の異なる別のポリゴンになっている。
Lens(ランス)の同じ連棟住宅を2通りで表示。左はセマンティックで、マスクは1つ。右はインスタンスで、家1軒につきポリゴン1つ。建物:OpenStreetMap contributors、ODbL。オルソ画像:IGN、BD ORTHO、オープンライセンス。

地図の上で何が得られるか

セマンティックモデルからは測るための面が得られ、インスタンスモデルからは数えるための物体が得られます。

セマンティックは、輪郭のはっきりした土地被覆図です。建物マスク、道路マスク、植生マスクが得られます。面積の統計、不浸透面、樹冠被覆、2時点間の変化の把握に向いています。個数が必要な用途には向きません。

インスタンスは台帳です。屋根、樹冠、プールの1つ1つが、属性テーブルの1行を持つ独立したポリゴンとして届きます。数える、1つ1つを測る、1つ1つに高さを結び付ける、といった作業ができます。代わりに、モデルは物体の切れ目を自分で決めなければなりません。連棟住宅では難しい判断で、失敗もそのまま現れます。2軒が1つにつながる、1本の樹冠が3つに割れる、といった具合です。

用語の由来。 どちらもコンピュータビジョンの用語です。2014年にLong、Shelhamer、Darrellが、「エンドツーエンドかつピクセル単位」で学習したネットワークでセマンティックセグメンテーションができることを示しました。2017年にはMask R-CNNが、物体検出器に「物体マスクを予測するブランチ」を加えました。これがインスタンスセグメンテーションです。2023年のSegment Anythingは「ライセンス済みでプライバシーに配慮した1,100万枚の画像から得た10億個以上のマスク」で学習されました。現在のQGISのインスタンス系ツールは、このファミリーの上で動いています。

3つ目の用語、パノプティックセグメンテーション

パノプティックセグメンテーションは、セマンティックと同じように全ピクセルにクラスを付け、インスタンスと同じように数えられる物体それぞれにIDを付けます。Kirillovらの研究が2018年にこのタスクを命名し、「通常は別々のタスクであるセマンティックセグメンテーション(各ピクセルにクラスラベルを割り当てる)とインスタンスセグメンテーション(各物体インスタンスを検出して切り出す)を統一する」ものと定義しました。

この論文はクラスを2種類に分けます。Thingは数えられるもので、建物、車、樹木などです。Stuffは形の定まらないもので、草地、水面、路面などです。パノプティックの地図では、thingは数え、stuffは面積で測ります。それを隙間も重なりもない1つのレイヤにまとめます。同じ論文は、両方に使える単一の指標としてパノプティック品質(PQ)を提案しました。これは「すべてのクラス(stuffとthing)」に使えます。

GISでの使われ方。 最もわかりやすい例は農地です。フランスのベンチマークPASTISには、フランス国内およそ4,000km²にわたる、解像度10mのSentinel-2時系列2,433件と、農地区画124,422筆が収められています。どのピクセルにも、作物の種類と区画の番号の両方が付いています。セマンティックモデルなら「ここは小麦」と答えます。パノプティックモデルなら「小麦、区画57」と答えるので、圃場を数え、1枚ずつ測れます。元になった論文は、区画をピクセル精度でパノプティックセグメンテーションすることを、「経済と環境に大きな影響」を持つタスクと呼んでいます。

実務では、GISチームがパノプティックモデルを必要とすることはあまりありません。thingにはインスタンス系ツール、stuffにはセマンティック系ツールを使い、QGISで2つのレイヤを重ねれば、同じ地図が2段階で作れます。

セマンティックマスクは何を数えるか:フランスの3タイルで実測

セマンティックの建物マスクをポリゴン化すると、数えられるのは建物ではなく塊です。ランス(Lens)の中心部1km²では、IGNの20cm航空写真から作られたAI土地被覆図の建物の塊は269個でした。国の建物データには3,006棟あります。2026年9月23日に、1km²のタイル3つで測り、それぞれIGNのBD TOPOの建物と照合しました。

1km²のタイルあたりランス、市街中心部リエヴァン、炭鉱町の住宅パリ11区
BD TOPOの建物(20m²以上)3,0069521,759
20cmのAIマスクの塊(IGN CoSIA)26955895
同じ塊に他の建物と入っている検出済み建物の割合97.5%63%99.5%
その塊に含まれる建物数の中央値30231
10m土地被覆の塊(ESA WorldCover)1291
面積:AIマスク/建物フットプリント/10mの「市街地」40.5/36.3/87.2ha14.4/12.3/46.3ha58.4/54.7/96.3ha

マスクを細かくしても、個数は直りません。マスクは各タイルで建物の96〜97%を見つけています。しかし連棟住宅や集合住宅は壁を共有しているので、2軒の家のあいだに背景ピクセルは1つもありません。20cmでも2cmでも同じです。ランスとパリでは、マスクで見つかった建物は、中央値で約30棟の塊の中にいます。

ランス中心部の420m×300mの同じ範囲を示す3つのパネル。BD TOPOの建物は1棟ずつ別の色。CoSIAの建物マスクは、ほぼ全体が10棟以上の塊になっている。WorldCoverの市街地クラスは1つの大きな塊になっている。
ランス市街中心部。左はBD TOPOの建物。中央と右は、建物マスクをポリゴン化し、各塊を含まれる建物数で色分けしたもの。IGN BD TOPOとCoSIA 2021〜2023、ESA WorldCover 2021、2026年9月23日測定。

リエヴァン(Liévin)では、セマンティックマスクでも数えられる場面がわかります。戸建て住宅は1軒が1つの塊になり、見つかった926棟のうち344棟は単独の塊です。二戸一住宅や旧炭鉱住宅地の連棟は、それぞれ1つの塊になります。そのため、建物の中央値は2棟の塊に入っています。

リエヴァンのある範囲を示す3つのパネル。戸建て住宅は緑の単独の塊、二戸一住宅と連棟住宅はオレンジと赤の塊になり、10m土地被覆では住宅地全体が1つにまとまっている。
リエヴァン、Cité Pasteur。戸建ては正しく数えられ、二戸一住宅と連棟住宅は数えられません。データ源と日付は同じです。

面積であれば、セマンティックマスクはかなり近い値になります。AIマスクはフットプリントの合計より7〜17%大きく出ます。これは想定どおりで、マスクは屋根を見ているため、BD TOPOが描く壁の線より外へ張り出した部分や小さな付属建物も含むからです。10mの「市街地」クラスは、フットプリント面積の1.8〜3.8倍です。屋根、庭、舗装を含む10mのピクセルも市街地とラベル付けされるためです。これは建物ではなく、市街地の組織を測っています。

樹木も結合する

パリのタイルでは、市がインベントリに載せている樹木1,583本のうち1,296本が、AIマスクの樹冠の中(幹から2m以内)にあります。そのうち89%は、インベントリ上の別の樹木と同じ樹冠の塊に入っています。リシャール・ルノワール大通り沿いの植樹された遊歩道は、インベントリ上の254本を含む1つの塊です。樹冠マスクから樹冠を数える方法は、孤立した木では機能しますが、並木道では失敗します。

測定方法

タイルは、ランス(北緯50.432度、東経2.832度)、リエヴァンのCité Pasteur(北緯50.433度、東経2.762度)、リシャール・ルノワール大通り(北緯48.860度、東経2.370度)を中心とする、ランベール93の1km四方です。塊とは、接するマスクのピクセルが20m²以上集まったものです。これはQGISの「ポリゴン化」を既定の設定で実行したときにできるものと同じです。建物のフットプリントの半分がマスクの下にあれば、検出されたとみなしました。CoSIAは装飾済みの地図としてしか公開されていないため、約0.4mで読み取り、色をクラスに対応付けました。こうして失われた少数の端のピクセルは塊を分割するので、上の割合はむしろ低めに出ています。CoSIAの元になった写真は、比較に使った台帳より前のものです。BD TOPOは、二戸一住宅を1棟として描くことがあります。パリのインベントリには私有の樹木が含まれていません。3つのタイルは3つの場所であって、全国の数字ではありません。

QGISでマスクからポリゴンへ

セマンティックマスクを使えるポリゴンにするには、3〜4段階の処理が必要です。インスタンス系ツールなら、ポリゴンがそのまま手に入ります。それぞれの手順と、使うQGISのツールを示します。

セマンティックマスクから

  1. ノイズを除去する。 「ラスタ」→「解析」→「ふるい(sieve)」を実行します。QGISマニュアルによると、「指定したしきい値(ピクセル数)より小さいラスタのポリゴンを除去」し、最も大きい隣接領域の値で埋めます。既定のしきい値は10ピクセルです。20cmの解像度では10ピクセルは0.4m²にすぎないので、対象にしたい最小の物体に合わせて大きくします。
  2. ポリゴン化する。 「ラスタ」→「変換」→「ラスタをベクタ化(polygonize)」を実行します。マニュアルによると、「同じピクセル値を持つ連結した領域すべてについて、ベクタのポリゴンを作成」し、値は既定でDNという名前のフィールドに入ります。「8連結を使用」はオフのままにします。オンにすると、角だけで接する2ピクセルが結合されるので、1点で接する2棟の建物が1つのポリゴンになってしまいます。
  3. クラスを残す。 背景のピクセルもポリゴンになります。"DN" = 1(または対象のクラス値)で選択し、選択地物を新しいレイヤとして保存します。
  4. 1つの地物が何を表すかを決める。 クラスの面なら、フィールドを指定せずに「ベクタ」→「ジオプロセシングツール」→「融合(dissolve)」を実行します。マルチパートの地物が1つと、面積の値が1つ得られます。塊として扱うなら、「互いに離れた地物を別々に保持」にチェックを入れるか(QGIS 3.32以降)、プロセシングツールボックスで「マルチパートからシングルパートへ」を実行します。各塊が1行になります。
  5. エッジを整える。 ピクセルの縁は階段状になります。簡素化、スムージング、面積フィルタは、ラスタからベクタへの変換ガイドで解説しています。

手順4のあとに手元に残るのは、物体ごとではなく塊ごとの1ポリゴンです。上のランスの表は、この差がどれほどになるかを示しています。建物3,006棟に対して塊は269個です。

大規模なフットプリントデータセットも、この方法で作られています。Microsoftの世界の建物フットプリントは2段階で作られています。ディープニューラルネットワークで建物のピクセルを認識する「セマンティックセグメンテーション」と、そのピクセルをポリゴンに変換する「ポリゴン化」です。確率が0.5を超えるピクセルが建物とみなされます。建物を1棟ずつに分ける作業はポリゴン化の段階で行われ、セマンティックモデルが使う側に任せている追加の手間です。

インスタンス系ツールから

  1. 範囲を指定してツールを実行する。 各物体が独立したポリゴンとして届き、属性テーブルでは1行になります。
  2. マルチパートを確認する。 ツールによっては、1つの物体を複数のパーツに分けて返します。「マルチパートからシングルパートへ」で分割し、分割されたものを確認してから数えます。
  3. 1つずつ測る。 フィールド計算機で$areaを使ってフィールドを追加し、実在する最小の物体より小さい細片は除外します。
  4. わかっている情報を結び付ける。 各ポリゴンには、空間結合で高さ、住所、台帳のIDを付けられます。クラスの面ではできないことです。

AI Segmentationなら、手順1〜3が1つにまとまります。「building」や「swimming pool」と入力して範囲を選ぶと、見つかった物体が1つずつ別のポリゴンとして新しいレイヤに入ります。AI Agentなら、上のセマンティックの手順を、QGIS内のチャットパネルに1文書くだけで実行できます。欲しいレイヤを説明すると、ふるい、ポリゴン化、融合という同じQGISのツールを実行し、答える前に地図を確認します。

QGISのツールはどちらを出力するか

土地被覆モデルをもとにしたQGISプラグインの大半はセマンティックで、Segment Anythingをもとにしたツールはインスタンスです。

  • セマンティック: Deepnessとそのモデルライブラリのほとんどのモデル、Semi-Automatic Classification Plugin、Mapflowの土地被覆モデル。
  • インスタンス: Segment Anythingファミリー。つまりGeo-SAM、samgeo、QGIS用のSAMプラグインです。1クリックで1物体が得られます。
  • **AI Segmentation**は、TerraLabがQGIS向けに作っているプラグインで、インスタンス系ツールです。建物、樹木、プールといった物体の名前を入力するか、その例を1つ描くと、範囲内で見つかった物体ごとに1つのポリゴンが返ります。密集した街区での結果は、建物フットプリント検出ガイドで確認できます。建物がすでに地図化されている場所なら、無料のフットプリントダウンローダーで、何も実行せずにこのインスタンスのポリゴンをGeoJSONで入手できます。

よくある質問

この2つの用語とあわせてよく検索される内容に、短く答えます。

セマンティック、インスタンス、パノプティックセグメンテーションの違いは何ですか?

セマンティックセグメンテーションは、各ピクセルにクラスを付けます。インスタンスセグメンテーションは、クラスの中の物体を1つずつ別のマスクに分けます。パノプティックセグメンテーションは両方を同時に行います。全ピクセルにクラスが付き、建物や車のような数えられる物体にはそれぞれIDも付きます。

GISプロジェクトではどちらを使えばよいですか?

答えが面積や割合なら、セマンティックを使います。樹冠率、不浸透面、浸水した土地などです。答えが個数や物体ごとの属性なら、インスタンスを使います。建物、樹木、プール、太陽光パネルなどです。両方が必要なら、1つずつ実行してレイヤを重ねます。

物体検出はインスタンスセグメンテーションと同じですか?

違います。物体検出が返すのは、各物体を囲む長方形です。インスタンスセグメンテーションが返すのは、ピクセル単位の輪郭です。地図にするなら、ほとんどの場合は輪郭が必要です。

セマンティックマスクをインスタンスに変換できますか?

場合によっては可能です。マスクをポリゴン化し、くびれた部分でポリゴンを分割します。果樹園の樹冠のように、離れている物体ならうまくいきます。連棟住宅では、切るべきくびれがないので失敗します。

画像の解像度で答えは変わりますか?

変わりますが、思われているほどではありません。10mでは家は1〜2ピクセルで、分けるべきものがないので、衛星の土地被覆はやむを得ずセマンティックになります。20cmでは家は数千ピクセルになり、インスタンスセグメンテーションが可能になります。それでも、20cmのセマンティックマスクは壁を共有する家をすべて結合してしまいます。ランス中心部では、見つかった建物の97.5%が他の建物と同じ塊に入っています。

ポリゴン化したマスクで、街区全体が1つのポリゴンになるのはなぜですか?

その街区の家が壁を共有していて、マスクの中に家どうしを隔てる背景ピクセルがないからです。ポリゴン化は、同じ値でつながったピクセルをすべて1つのポリゴンにまとめます。物体を1つずつ描くインスタンスモデルだけが、それらを分けられます。

Segment Anythingはインスタンスセグメンテーションですか?

出力という意味ではそうです。指した物体ごとに1つのマスクを返すので、接する2つの屋根は2つのマスクとして返ります。ただし、元のモデルはクラスラベルを付けません。物体を分けますが、名前は付けません。これをもとにしたQGISのツールは、クリックやプロンプトからクラスを決めます。

セマンティックとインスタンスのどちらも、より広いGeoAIというカテゴリの一部です。これらがその例にあたる言葉については、GeoAIとはで解説しています。樹冠のマッピングでは、樹木に関して両方の見方を扱っています。マスクから樹冠被覆を求める方法と、樹冠ごとに1つのポリゴンを得る方法です。QGIS AIのハブには、QGISの中でAIにできること、できないことをまとめています。