G検定対策!「セグメンテーションを用いた物体認識」がわかる学習ノート
1. 基本:「セマンティックセグメンテーション」とは?
まず基本となるのが「セマンティックセグメンテーション」です。
- 一言でいうと: AIによる「超細かい塗り絵」です。
- 何をするか: 画像に写っているモノを、1ピクセル(画素)ごとに「これは犬」「これは猫」「これは背景」といったクラス(種類)に分類(ラベリング)します。
- 弱点: もし写真に犬が2匹いても、AIにとってはどちらも同じ「犬」クラスです。そのため、2匹とも同じ色で塗りつぶしてしまい、個体を区別できません。
代表的な手法 (FCN, U-Net)
- FCN (完全畳み込みネットワーク):
従来のAIが最終判断に使っていた「全結合層」(位置情報が失われる)をなくし、すべてを畳み込み層で処理することで、ピクセル単位の塗り絵を可能にした「元祖」的な手法です。 - U-Net:
FCNの改良版です。U字型の構造が特徴で、「スキップ接続」という仕組み(画像の詳細な情報を、塗り絵の最終工程に直接伝える橋渡し)により、モノの輪郭まで非常に高精度に塗り絵できるのが強みです。
2. 「物体検出」との違い
セグメンテーションと混同しやすいのが「物体検出」です。この違いを理解することが重要です。
- 物体検出 (Object Detection):
モノの正確な輪郭ではなく、「だいたいこの辺に犬がいる」という位置と大きさを「バウンディングボックス(四角い枠)」で囲む技術です。 - 例: デジタルカメラが人の顔にピントを合わせるために表示する「四角い枠」がこれにあたります。
- 違い: 物体検出は「枠で囲む」、セグメンテーションは「塗り絵する」と覚えましょう。
3. 応用:「インスタンスセグメンテーション」とは?
セマンティックセグメンテーションと物体検出の“いいとこ取り”をしたのが「インスタンスセグメンテーション」です。
- 一言でいうと: 「個体を区別できる」すごい塗り絵です。
- 何をするか: 「物体検出」の能力(モノを個別に認識する)と、「セグメンテーション」の能力(輪郭をキレイに塗る)を統合しています。
- 結果: 写真に犬が2匹いた場合、「これは犬A(赤色)」「これは犬B(緑色)」というように、個体(インスタンス)を別々のモノとして区別して塗り分けることができます。
- 例: スマートフォンの「ポートレートモード」が、人物の輪郭を正確に認識して背景だけをぼかす処理に、この技術が使われています。
代表的な手法 (YOLACT)
- YOLACT (ヨラクト):
インスタンスセグメンテーションの手法の一つ。従来の手法(例: Mask R-CNN)が「①まず枠で囲む → ②枠内を塗り絵する」という2段階処理だったのに対し、YOLACTはそれらを同時に行う「ワンステージ」方式を採用しています。これにより、非常に高速(リアルタイム)な処理を実現した点で有名です。
まとめ
| 技術名 | 何をするか? | 個体の区別 |
|---|---|---|
| 物体検出 | 「犬」を四角い枠で囲む | できる |
| セマンティック セグメンテーション | 「犬」の領域を塗り絵する | できない |
| インスタンス セグメンテーション | 「犬A」と「犬B」を別々に塗り絵する | できる |
