■セマンティック・セグメンテーションとインスタンス・セグメンテーションの出力の違い
セマンティック・セグメンテーションでは画素単位で分類を行い、各画素のクラスラベルを予測しています。これに対して、インスタンス・セグメンテーションでは、同じクラスに属する物体であっても、それぞれを個別の「インスタンス」として識別し、区別して出力する点が大きな特徴です。
インスタンス・セグメンテーションでは、物体ごとに次の3つを同時に出力します。
| クラス | 物体の種類(犬、車、人など) |
| バウンディングボックス | 物体の位置 |
| マスク | 物体の画素領域 |
■インスタンスの定義
一言で言うと次のとおりです。
- インスタンス(instance):画像内に存在する個々の物体(instance =「実体」)
- マスク(mask):インスタンスに対応する画像内の特定の物体領域を示す二値の画素マップ
具体例として、画像に犬が3匹とボールが2個存在している場合を考えましょう。
- セマンティック・セグメンテーションでは、どの犬(またはボール)の個体も同一クラスとして扱われる。出力はすべて dog (または ball)になる。
- インスタンス・セグメンテーションでは、それぞれの犬とボールの個体に対して個別の領域を割り当て、「マスク」が生成される。出力は以下のようなイメージです。
- object1: class=dog, mask1
- object2: class=dog, mask2
- object3: class=dog, mask3
- object4: class=ball, mask4
- object5: class=ball, mask5
上記のように、インスタンス(上記のobject1,2,3,4,5)の単位になり、クラスは同じでもインスタンスIDが違います。そのIDに対応する物体ごとに別々のマスクが生成され、クラスラベルとマスクを同時に出力する点が特徴です。
■マスクの定義
マスクに関しては、画像と同じ大きさの配列において、以下のように表現されます。
- 物体に属する画素 → 1(白)
- それ以外の画素 → 0(黒)
つまり、マスクは物体の輪郭や形状を画素単位で表現する領域情報のことす。例えば画像に犬が2匹(dog1とdog2)が写っている場合、それぞれの犬にマスクが1つ生成され、その犬の形状に一致する領域だけが1となるマップが作られます。
入力画像 → マスク



