AIによる物体検出について説明します!

皆さん、「AI」という単語を耳にすることが最近増えてきたのではないかと思います。しかし、その仕組みについて知りたいと感じても、「私には難しそう...」と敬遠してしまっている方も多いのではないでしょうか?

ここでは、AIによる物体検出について、説明していきたいと思います!

物体検出とは

物体検出とは画像を取り込み、画像の中から定められた物体の位置と種類、個数を特定するという技術です。

物体の種類を分類するのは、画像分類でも行えます。しかし、物体検出ではそれに加え、

  • 物体の領域の位置を絞り込む方法
  • 認識対象以外の物体を排除する方法

というような手法を取り入れることで、対象物の位置・個数の検出を可能にしています。

物体検出の利用場面

物体検出は外観検査によく使われており、製造業や建設業、また医療などといった幅広い分野で活躍しています。

身近な例では、顔などの検出のためにスマートフォンのカメラにも利用されています。

また、自動運転の分野でも歩行者の検出に利用されています。

このように物体検出は現在もこれからの時代もとても重要な技術となっています。

物体検出の種類

物体検出は主に「CNN(畳み込みニューラルネットワーク)」というものを利用しています。(CNNとは、ディープラーニングで用いられるネットワークの中で最も有名なもので、画像処理に対してとても有効に利用できます。)

物体検出といってもいくつかもの手法があります。今回はその中から抜粋して紹介いたします。

R-CNN(Regional CNN)

R-CNNは、ディープラーニングを用いた物体検出の先駆け的な存在です。次のような手順で画像中の物体を検出しています。

  1. 画像を入力する
  2. 画像の中から、物体が写っている領域の候補(Region Proposal)を抽出する(約2000個)
  3. CNNを用いてそれぞれの候補の特徴量を計算する
  4. それぞれの領域に何が写っているか分類する

これによって今まで(ディープラ−ニングを用いない方法)より高精度の物体検出ができるようになりました。しかし、それぞれの項目ごとで別々に学習する必要があり、学習に非常に時間がかかり、メモリの消費量も大きいという課題がありした。

これを解決するために新たにFast R-CNN、そしてFaster R-CNNが開発されました。Faster R-CNNの開発により、画像の入力から物体の検出まで一気に学習・推定ができるようになり、学習時間・メモリの消費量ともに大幅に削減されました。

R-CNN 論文:https://arxiv.org/pdf/1311.2524.pdf

Fast R-CNN 論文:https://arxiv.org/pdf/1504.08083.pdf

Faster R-CNN 論文:https://arxiv.org/pdf/1506.01497.pdf

YOLO

YOLOは、You Only Look Onceの略で、処理速度は非常に早いという特徴を持っています。そのため、リアルタイムの物体検出をすることができます。

YOLOの物体認識の手法はR-CNNとは異なり、予め画像全体をグリッド分割しておき、各領域ごとで物体の種類と位置を求めます。

そのため、Faster R-CNNと比べると識別の精度は落ちます。特に物体が多数写っている場合精度が低くなります。しかしYOLOでは学習時に一枚の画像の全ての範囲を使うため、背景の誤検出は抑えることができます。

YOLOは現在v5まで出ており、現在進行形で成長しています。

論文:https://arxiv.org/pdf/1506.02640.pdf

SSD

SSDはSingle Shot MultiBox Detectorの略で、精度はFaster R-CNNと同等程度あり、処理速度も早いという特徴を持っています。YOLO同様、リアルタイムでの物体検出が可能です。

物体検出の手法はYOLOと同じ手法を用いています。しかしながら、画像内に物体が多数あったとしても、YOLOより比較的正確に検出することができます。

論文:https://arxiv.org/pdf/1512.02325.pdf

DETR

DETRは今までの物体検出の方法にTransformerというモデルを融合させたモデルです。言語処理に使われていたTransformerを使ったことにより、精度を保ちながら、並列計算をすることで高速な処理が可能になりました。

シンプルなモデルにもかかわらず高い精度を出すということがDETRの一番の特徴です。

論文:https://arxiv.org/pdf/2005.12872.pdf

他にもPeleeやM2Detといった物体検出モデルもあります。興味を持たれた方はぜひ調べてみてください。

Pelee論文:https://arxiv.org/pdf/1804.06882.pdf

M2Det 論文:https://arxiv.org/pdf/1811.04533.pdf

弊社での利用例

弊社ではこの技術を応用して下記のような用途で用いています。

・部品の誤欠品の検査

・異常の検知

従来、人が目視で行ってきた部品の取付間違いや取付忘れ,異常品の検出を物体検出AIによって、自動かつ高速・高精度で行うことができます。