【G検定対策】物体検出の代表モデルを整理|R-CNN・YOLO・SSDの違い

seo-webmaster
プロモーションが含まれています
物体検出とは?のイメージ画像

画像認識の分野では、画像に何が写っているかを判断するだけでなく、どこに何があるのか を見つける技術も重要です。

これが物体検出です。G検定では、画像分類・物体検出・セグメンテーションの違いに加えて、R-CNN 、YOLO、SSD などの代表的なモデル名が登場することがあります。

この記事では、物体検出の代表モデルを細かい仕組みまで深掘りしすぎず、AIの学習をはじめたばかりの人でも混同しにくいように整理します。

物体検出とは?

物体検出とは?のイメージ画像

物体検出とは、画像の中にある物体の「種類」と「位置」を見つける技術 です。

たとえば、1枚の画像の中に車や犬や木が写っていたときに、「何があるか」だけでなく、「どこにあるか」まで判断します。

ここが、画像分類との大きな違いです。

画像分類は画像全体を見て「この画像は犬の画像」と判断しますが、物体検出は「画像の中のどこに犬がいるか」「ほかに何があるか」まで見ます。

技術 何を見るか
画像分類 画像全体が何の画像かを判断する
物体検出 画像の中の物体の種類と位置を見つける
セグメンテーション 画像を領域ごとに細かく分ける

物体検出では、位置を表すためにバウンディングボックスという四角い枠を使います。
たとえば、車のまわりを四角で囲めば、「ここに車がある」と表せます。

つまり、物体検出は次のように整理できます。

  • 種類:何があるか
  • 位置:どこにあるか

この2つを同時に扱うのが、物体検出のポイントです。

たとえば自動運転では、道路の画像から

  • 歩行者
  • 信号
  • 標識

などを見つけて、それぞれの位置を把握する必要があります。
そのため、物体検出は画像認識の中でもとても重要な技術です。

物体検出 = 画像の中 の「どこに何があるか」を見つける技術 と押さえると、全体像がつかみやすくなります。

R-CNNとは?

R-CNNとは?のイメージ画像

R-CNNは、物体検出の代表的なモデルのひとつです。

大まかには、画像の中から「物体がありそうな場所」を探し、その候補領域をCNNで判定する方法です。

流れで見ると、次のようになります。

画像を見る
物体がありそうな領域を取り出す
CNNで特徴を取り出す
何の物体かを判断する

R-CNNは、物体検出にCNNを活用した重要な流れの出発点として押さえると理解しやすいです。

ただし、候補領域ごとに処理するため、計算に時間がかかりやすいという弱点があります。

R-CNN
候補領域を取り出してからCNNで判定する物体検出モデル

Fast R-CNNとは?

Fast R-CNNとは?のイメージ画像

Fast R-CNNは、R-CNNを高速化したモデルです。

R-CNNでは、候補領域ごとにCNNの処理を行うため、時間がかかりやすいという問題がありました。

Fast R-CNNでは、画像全体から特徴を取り出してから、候補領域ごとに判断します。

R-CNN
候補領域ごとにCNNで処理する
Fast R-CNN
画像全体から特徴を取り出してから候補領域を見る

つまり、処理の重複を減らして、より効率よく物体検出を行うモデルです。

Fast R-CNN
R-CNNを高速化したモデル

Faster R-CNNとは?

Faster R-CNNとは?のイメージ画像

Faster R-CNNは、Fast R-CNNをさらに高速化したモデルです。

大きなポイントは、物体がありそうな領域を探す処理もニューラルネットワークで行うことです。

Fast R-CNNまでは、候補領域を探す部分が別の処理として残っていました。

Faster R-CNNでは、RPNという仕組みを使って、候補領域の提案もネットワーク内で行います。

モデル 特徴
R-CNN 候補領域を取り出してCNNで判定
Fast R-CNN 画像全体から特徴を取り出して高速化
Faster R-CNN 候補領域の提案もネットワークで行う

名前は似ていますが、流れとしては R-CNN → Fast R-CNN → Faster R-CNN の順に高速化されたと押さえると整理しやすいです。

Faster R-CNN
候補領域の提案も含めて高速化したモデル

YOLOとは?

YOLOとは?のイメージ画像

YOLOは、物体検出の代表的なモデルです。

YOLOは You Only Look Once の略で、画像を一度見るだけで、物体の種類と位置をまとめて予測する考え方です。

R-CNN系は、物体がありそうな場所を探してから分類する流れです。

R-CNN系

候補領域を探す
物体を判定する

一方で、YOLOは画像全体を一度に見て、物体の位置と種類を同時に予測します。

YOLO

  • 画像全体を一度に見て
  • 位置と種類をまとめて予測する

YOLOは高速に処理しやすいため、リアルタイムの物体検出と結びつけて覚えるとよいです。

YOLO
画像を一度に見て高速に物体検出するモデル

SSDとは?

SSDとは?のイメージ画像

SSDは、Single Shot MultiBox Detector の略です。

YOLOと同じく、画像を一度に処理して物体を検出するタイプのモデルです。

SSDでは、複数の大きさの枠を使って、さまざまなサイズの物体を検出しようとします。

モデル 覚え方
YOLO 画像を一度に見て高速に検出する
SSD 複数サイズの枠で物体を検出する

SSDも、R-CNN系のように候補領域を段階的に処理するのではなく、1回の処理で物体の位置と種類を予測するモデルとして整理できます。

SSD
1回の処理で複数サイズの物体を検出するモデル

R-CNN系・YOLO・SSDの違い

R-CNN系・YOLO・SSDの違いのイメージ画像

物体検出モデルは、細かい構造を覚えるよりも、まずは 1段階型か2段階型か で整理すると理解しやすいです。

モデル タイプ 覚え方
YOLO 1段階型 画像全体を一度に見て高速に検出する
SSD 1段階型 複数サイズの枠で一度に検出する
R-CNN 2段階型 候補領域を取り出してから判定する
Fast R-CNN 2段階型 R-CNNを高速化したモデル
Faster R-CNN 2段階型 候補領域の提案もネットワークで行う

ざっくり整理すると、次のようになります。

R-CNN系
候補領域を使う2段階型
YOLO・SSD
一度に検出する1段階型

G検定では、細かい数式よりも、この大きな違いを問われる可能性があります。

バウンディングボックスとは?

バウンディングボックスとは?のイメージ画像

バウンディングボックスとは、画像の中の物体を囲む四角い枠のことです。

物体検出では、物体が「何か」だけでなく、「どこにあるか」も重要です。

その位置を表すために、四角い枠を使います。

画像の中の犬を検出する
犬の種類を予測する
犬の位置を四角い枠で囲む

この四角い枠が、バウンディングボックスです。

バウンディング
ボックス
物体の位置を示す四角い枠

IoUとは?

IoUとは?のイメージ画像

IoUは、物体検出で使われる評価の考え方です。

予測したバウンディングボックスと、正解のバウンディングボックスがどれくらい重なっているかを見ます。

重なりが大きければ、位置をうまく予測できていると考えられます。

状態 評価のイメージ
枠が大きく重なる よく検出できている
枠が少ししか重ならない 位置がずれている
枠がほとんど重ならない 検出がうまくいっていない

G検定対策では、IoUを難しい数式で覚えるより、予測した枠と正解の枠の重なり具合 と押さえるとよいです。

IoU
予測枠と正解枠の重なり具合

G検定ではどう問われる?

G検定では、物体検出モデルの細かい実装よりも、用語の対応関係や違いを問われる可能性があります。

問われ方 選ぶ用語
物体の位置を四角い枠で示す バウンディングボックス
予測枠と正解枠の重なりを見る IoU
候補領域を使う物体検出モデル R-CNN系
R-CNNを高速化したモデル Fast R-CNN
候補領域の提案もネットワークで行う Faster R-CNN
画像を一度に見て高速に検出する YOLO
1回の処理で複数サイズの物体を検出する SSD

特に混同しやすいのは、R-CNN、Fast R-CNN、Faster R-CNNの違いです。

R-CNN
候補領域を取り出して判定する
Fast R-CNN
画像全体の特徴を使って高速化する
Faster R-CNN
候補領域の提案もネットワークで行う

もうひとつ混同しやすいのは、YOLOとSSDです。

YOLO
一度に見て高速検出
SSD
複数サイズの枠で一度に検出

なぜ混同しやすい?

なぜ混同しやすい?のイメージ画像

物体検出のモデルが混同しやすい理由は、名前が似ているうえに、どれも「画像の中から物体を見つけるモデル」だからです。

R-CNN、Fast R-CNN、Faster R-CNNは名前だけ見ると違いがわかりにくいです。

しかし、流れで見ると整理しやすくなります。

R-CNN
候補領域を使う
Fast R-CNN
処理をまとめて高速化する
Faster R-CNN
候補領域の提案もネットワーク化する

YOLOとSSDは、どちらも1段階型として整理できます。

YOLO・SSD
画像を一度に処理して物体を検出する

つまり、まずは YOLO・SSDは1段階型R-CNN系は2段階型 と分けるのがポイントです。

まとめ

物体検出とは?のまとめのイメージ画像

物体検出は、画像の中から物体の種類と位置を見つける技術です。

画像分類は「画像全体が何か」を判断しますが、物体検出は「どこに何があるか」まで判断します。

代表的なモデルは、R-CNN系、YOLO、SSD です。

物体検出をまとめると下の表になります。

用語 一言でいうと 検出タイプ
R-CNN 候補領域を取り出してCNNで判定するモデル 2段階検出
Fast R-CNN R-CNNを高速化したモデル 2段階検出
Faster R-CNN 候補領域の提案もネットワークで行うモデル 2段階検出
YOLO 画像を一度に見て高速に検出するモデル 1段階検出
SSD 複数サイズの枠で一度に検出するモデル 1段階検出

物体検出で登場する用語まとめると下の表になります。

用語 一言でいうと
バウンディングボックス 物体の位置を示す四角い枠
IoU 予測枠と正解枠の重なり具合

まずは、次のように整理しておくと混同しにくくなります。

物体検出
物体の種類と位置を見つける
R-CNN系
候補領域を使う2段階型
YOLO・SSD
一度に検出する1段階型
バウンディング
ボックス
物体を囲む枠
IoU
枠の重なり具合

関連記事・おすすめ記事

物体検出の基本を先に確認したい方は、こちらの記事も参考になります。

物体検出そのものの意味を先に確認したい方は、こちらの記事も参考になります。

関連記事
【G検定対策】物体検出とは?|画像分類・セグメンテーションとの違いを整理
【G検定対策】物体検出とは?|画像分類・セグメンテーションとの違いを整理

物体検出とセグメンテーションの違いを整理したい方は、こちらの記事もあわせて確認すると理解しやすくなります。

関連記事
【G検定対策】セグメンテーションとは?|画像を領域ごとに分ける技術を整理
【G検定対策】セグメンテーションとは?|画像を領域ごとに分ける技術を整理

画像認識モデルの流れを確認したい方は、こちらの記事も参考になります。

関連記事
【G検定対策】画像認識の歴史を流れで整理
【G検定対策】画像認識の歴史を流れで整理

画像認識がディープラーニングの応用例の中でどこに位置づくかを確認したい方は、こちらの記事も参考になります。

関連記事
【G検定対策】ディープラーニングの応用例まとめ|画像認識・自然言語処理・生成AIを整理
【G検定対策】ディープラーニングの応用例まとめ|画像認識・自然言語処理・生成AIを整理

CNNとの関係を整理したい方は、こちらの記事もあわせて読むと理解しやすくなります。

関連記事
【G検定対策】CNN・RNN・Transformerの違いをわかりやすく整理
【G検定対策】CNN・RNN・Transformerの違いをわかりやすく整理

用語の意味をまとめて確認したい場合は、G検定で覚えたいAI用語一覧もあわせて読んでみてください。

こちらもおすすめ
【G検定対策】G検定で覚えたいAI用語一覧|意味・違い・見分け方をわかりやすく整理
【G検定対策】G検定で覚えたいAI用語一覧|意味・違い・見分け方をわかりやすく整理

1回目不合格でした。不合格だった原因を分析しました。

こちらもおすすめ
【不合格体験談】G検定に落ちた原因|「成功体験」と「過学習」が落とし穴
【不合格体験談】G検定に落ちた原因|「成功体験」と「過学習」が落とし穴

公式テキスト

Amazonで確認

楽天市場で確認

合格時に使用した問題集

Amazonで確認

楽天市場で確認

書いている人
運営者
運営者
このブログの運営者です。文系出身です。SEO検定1級、ウェブマスター検定1級を取得しました。ブログ運営には「AIの活用は必須」と思いG検定を取得しました。G検定は簡単といわれがちですが1回目は不合格でした。その失敗経験を元に、これから受験する方の助けになればとできるだけわかりやすくG検定対策は解説しています。間違い等あればご指摘いただければ幸いです。
記事URLをコピーしました