物体検出(物体検知)について詳しく知りたい、と調べている担当者もいらっしゃるかと思います。知りたい特定の情報を素早く判断できる物体検出は、多くの業界で利用されています。その活用範囲や手法について詳しく把握したいと考える方も多いようです。
そこで本記事では、物体検出の概要と活用されている範囲・手法を詳しく解説していきます。
目次
・物体検出(物体検知)とは
・画像分類と物体検出の違い
・物体検出はなにに活用するの?
ー製造業
ー医療分野
ー建設業
・物体検出の主な手法
ー代表的な6つの手法
ーR-CNN
ーFast R-CNN: R-CNN
ーFaster R-CNN: Fast R-CNN
ーSSD
ーYOLO
ーー最新アルゴリズムYOLO v5
ーHOG
物体検出のAIモデルを構築する手順
物体検出で気を付けたいこと
・まとめ
映像解析AIプラットフォーム「SCORER」は、AIカメラ黎明期よりシステム開発をしております。導入事例が沢山ございます。AIカメラの活用方法は最新事例から学んでいただくと、理解がはやいため無料資料をご用意いたしました。5分程度でAIカメラが理解できる2023年7月更新の最新事例集は下記よりダウンロードできます。ご活用ください。
物体検出(物体検知)とは
物体検出とは、撮影した画像や映像から、特定の物体の位置・種類・個数などの情報を検出して見つけ出すことです。
物体検出技術を用いれば、画像・映像をコンピュータで解析し、どのような物がどこにどれくらいの数映っているのかを素早く特定できます。物体検出は、公的機関・製造業・医療分野・建設業など、幅広い分野で取り入れられている技術です。身近なところでは、AIカメラを使った人物の顔認識などに使われています。
画像分類と物体検出の違い
画像分類と物体検出の違いについて説明します。画像分類は、画像全体に何が映っているか認識し分類するタスクのことです。例えば、画像に映っているものが、猫なのか犬なのかウサギなのかを分類することができます。従来は画像から特徴量を抽出し、その特徴量を元に画像を分類していましたが、深層学習を活用した手法が登場したことで飛躍的に精度が向上しました。
画像分類は、画像全体に何が映っているのか分類するタスクなのに対して、物体検出は、画像にどこに、何が、いくつ映っているか検出するタスクです。画像のどこに何がいくつ映っているかまで認識できるため、例えば、駐車場の画像から車が何台駐車されているか判定したり、街中の画像から歩行者が何人いるかカウントするといった用途に応用が可能です。
2023年1月に行った実証実験では、物体検出を活用できるAIカメラで、交通量調査を無人化で行えることがわかりました。物体検出は様々なシーンで省人化に活用することができます。
物体検出は何に活用するの?
物体検出は、様々な分野で使われており、以下にいくつかの使用例を紹介します。
-
自動運転業界
車両を自動運転するためには、道路や標識、他の車両などを検出することが必要です。物体検出を活用することで、これらを実現することができます。 -
ビデオサーベイランス
ビデオを監視する際に、物体を検出して異常を検知することができます。例えば、カメラで撮影されたビデオから人物を検出し、その人物が異常な行動をする場合にアラートを出すことができます。 -
マーケティング分析
ビデオや画像から、物品やブランドロゴなどを検出することで、マーケティング分析を行うことができます。例えば、テレビ番組や映画で特定のブランドの製品が使用されている場面を検出することで、そのブランドのテレビCMや広告効果を測定することができます。 -
画像検索エンジン
画像から物体を検出し、その物体をキーワードとして検索することで、より精度の高い検索結果を得ることができます。 -
ビデオ編集
ビデオから物体を検出することで、特定の物体をトリミングやカットすることができます。例えば、映画の一部を抜粋して、トレーラーを作成する際に使用されることがあります。 - 交通計測
画像やビデオから車や人を検出して交通量を測定する。 - ペット追跡
写真やビデオから犬や猫を検出して、ペットの位置を追跡する。 - 医療画像解析
CTやMRIの画像から腫瘍や異常を検出する。 - セキュリティカメラの監視
ビデオから異常行動や犯罪行為を検出する。 - スマートフォンカメラ
画像やビデオから人や動物を検出して、カメラの自動フォーカスやフラッシュを制御する。 - ビデオゲーム
画像やビデオから敵や武器などを検出して、ゲームプレイを補助する。
物体検出は、これらだけでなく、様々な分野で使われています。そのなかでも、以下3点の業種の活用事例を挙げて説明します。
- 製造業
- 医療分野
- 建設業
それでは、1つずつ見ていきましょう。
製造業
物体検出を活用している業種に、製造業があります。
製造業では部品を組み立て製品を完成させるという工程があり、中には不良部位が含まれていることもあります。従来は人の目で、製品の隅々までを確認し、不良部位を特定していました。しかし、熟練者と若手などで個人差が目立ち、担当者によっては不良部位を見落とす、という問題も指摘されていました。
そこで、不良部位の特定を物体検出アルゴリズムに代替することで、一定の品質を維持したチェックを行います。これまで人の目での確認で見落としていた箇所を防ぐことに役立っています。
なお、製品以外の活用も進みはじめており、人間の骨格を推定検出することで、人の動きをデータ化することができるようになってきており、製造業のスマートファクトリーの一部として、製品と人を物体検知するニーズが出てきております。製造業の省人化・省力化に活用されはじめています。
たとえば、製造業向けの物体検出を活用した映像解析AIプロダクト「AI Stopwatch」があります。「物体検出」と「三次元骨格推定」を活用して、作業者のタスクをラップタイムを計測。ベテランの作業者と新入社員の作業者の作業をデータと動画を根拠に比較をおこない、具体的に改善ポイントを指示することができるプロダクトになります。
医療分野
医療分野でも、物体検出を活用しています。
体の異常な部分や病気を特定するために、従来は放射線を使ったCT画像を医者が直接目で確認して、患者に説明していました。CT画像の確認作業に物体検出を活用することで、医者が細かく確認するよりも早く異常部位を正確に特定でき、品質向上に役立っています。医者は物体検出の結果を見た上で判断ができるため、精度の高い情報を従来よりも短時間で患者に伝えられます。そのため、医者は患者への説明やフォローに集中することができます。
なお、医療施設への映像解析AIの活用事例も増えてきております。認知症の徘徊を検出しトラッキングし事故を事前に予防する徘徊検知ソリューションや、転倒事故を予防するAIカメラ付きのベットなど、医療施設の安全性に活用されはじめてます。
建設業
建設業でも、物体検出が有効活用されています。ユースケースはさまざまあります。代表的なものを一部紹介します。
- 作業員の安全帯検知
- 禁止エリアへの侵入検知
- コンクリートクラック検知
- 特定車両のみ入退場できる自動ゲート
- 交通量・通行量計測
建設業ではとくに、安全帯の検知と禁止エリアへの侵入検知に活用されるケースが多いです。
また、コンクリートクラック検知は、カメラで撮影した動画・画像を解析して、建物のどの位置にどのレベルのクラックがあるか?建物の図面にヒートマップで可視化することができ、修繕の優先順位をデータをもとに決めれます。クラック検知について詳しく知りたいかたは、下記リンクをご確認ください。
特定車両のみ入退場できる自動ゲートは、特定車両のナンバープレートを登録し、ナンバープレートを検知した場合ゲートが開く自動ゲートになり、人がゲートを管理するコストを省人化することができます。
<AIソリューション|ナンバープレート(車番)検知はこちら>
交通量・通行量計測は、建設に関連する測量業務ではとくに映像解析AIを活用した省人化かすすんでいる分野となっており。人手観測で計測していた交通量や通行量などは、映像解析AIの物体検出の性能がディーププランニングにより向上したことにより、数十の属性検出できるようになり、検知率は90%以上と人の目による人手観測と変わらない精度に変わり、映像解析AIで交通量・通行量の計測に活用されています。
上記のように、人の目視で確認している作業を物体検出を活用すると省力化することができ、建設業の作業負担を減らすことが可能です。
物体検出の主な手法
物体検出は、画像やビデオから物体を検出して、それらを囲むバウンディングボックスを生成するタスクです。
物体検出には、様々な手法があります。近年では、深層学習による手法がよく用いられています。例えば、畳み込みニューラルネットワーク (CNN) を用いる手法があります。CNNは、画像認識タスクにおいて優れた精度を発揮することで知られており、物体検出タスクにも活用されています。
また、物体検出タスクでは、物体を検出するだけでなく、その物体の種類やカテゴリーを分類することもできる手法があります。これを物体検出と分類を同時に行うタスクとしてインスタンスセグメンテーション (Instance Segmentation) と呼びます。
今回は、物体検出の様々な手法の中から、いくつかの代表的な4つの手法を紹介します。
代表的な6つの手法
- R-CNN (Regions with Convolutional Neural Network)
画像内に候補となる領域を提案し、それらを用いて物体を検出する手法。R-CNNは、高精度であるが、処理速度が遅いという欠点があります。 - Fast R-CNN
R-CNNの改良版で、物体検出を高速化した手法。Fast R-CNNは、R-CNNよりも高速であるが、精度はR-CNNと同等であります。 - Faster R-CNN
Fast R-CNNの改良版で、さらに物体検出を高速化した手法。Faster R-CNNは、Fast R-CNNよりも高速であるが、精度はFast R-CNNと同等であります。 - SSD (Single Shot MultiBox Detector)
画像を一度だけ読み込むことで、画像全体から物体を検出する手法。SSDは、YOLOと同様に高速であるが、精度はYOLOよりも若干高いとされています。 - YOLO (You Only Look Once)
画像を一度だけ読み込むことで、画像全体から物体を検出する手法。YOLOは、他の手法よりも高速であるが、精度は若干劣るとされていいます。 - HOG (Histogram of Oriented Gradients)
画像中の特徴量を抽出する手法です。画像を小さな領域に分割し、それぞれの領域で画素の輝度の差(グラデーション)を計算し、それらのグラデーションの方向をヒストグラムに記録します。このヒストグラムは、その画像の領域の特徴を表しています。これらの特徴は、物体検出や識別に使用されます。
物体検出の手法について、代表的な3つの手法を説明していきます。
- R-CNN
- Fast R-CNN: R-CNN
- Faster R-CNN: Fast R-CNN
- SSD
- YOLO
- HOG
それでは、1つずつ見ていきましょう。
R-CNN
R-CNNとは、ディープラーニングで物体検出を行う先駆けとなった手法です。入力した画像から物体の領域候補となるエリアを抽出すると共に、抽出されたエリアの画像に何が映っているか画像分類する、Two-Stageと呼ばれるアプローチをとる手法です。
R-CNNは、高精度な物体検出ができるというメリットはあるものの、候補領域の抽出量が多く、処理時間が非常に遅い傾向にあること、メモリを大量に消費することが課題として挙げられています。これらの課題を解消するために、R-CNNからは「Fast R-CNN」「Faster R-CNN」「Cascade R-CNN」などの手法が派生しています。
Fast R-CNN: R-CNN
Fast R-CNNは、Fast R-CNNは、R-CNN (Regions with CNN features)という名前が付いています。R-CNNの改良版と言えます。物体検出タスクを行うためのディープラーニングアルゴリズムで、このアルゴリズムは、入力画像から候補となる物体領域を抽出し、これらの領域を入力として、画像全体を畳み込むCNNに通すことで、各候補領域が各クラスの物体である確率を推定します。Fast R-CNNでは、候補領域の抽出と物体分類を同時に行うことで、高速な物体検出を実現しています。
Faster R-CNN: Fast R-CNN
Faster R-CNNは、Fast R-CNNをさらに改良した物体検出手法です。Fast R-CNNでは、画像全体を畳み込むCNNを用いて、候補領域の特徴量を抽出します。しかし、Faster R-CNNでは、候裡領域を抽出するために、新たに「Region Proposal Network (RPN)」というモデルを導入しました。
RPNは、畳み込み層と全結合層からなる小さなネットワークで、入力画像から候補領域を提案するように学習されます。RPNは、畳み込み層で特徴マップを抽出し、それらの特徴マップ上にスライディングウィンドウ法を用いて、候補領域を提案します。提案された候補領域は、全結合層を通じて、各クラスの物体である確率を出力します。
Faster R-CNNでは、RPNを用いて候補領域を抽出することで、Fast R-CNNよりも高速に物体検出を行うことができます。また、RPNを用いることで、候補領域の数を柔軟に制御することができるため、より高精度な物体検出が可能になっています。
SSD
SSDはSingle Shot MultiBox Detectorの略称で、物体検出のアルゴリズムの1つです。画像を一度だけ見て、その画像中にある物体を検出し、そのアルゴリズムは、画像を一度だけ見て、その画像中にある物体を検出し、その位置を矩形で囲むことができます。また、対象画像におけるバウンディングボックスのサイズのずれをクラス(物体の種類)の予測情報を使って修正・深層学習をしていく手法です。R-CNNとは異なり、直接物体の位置を検出するOne-Stageと呼ばれる手法です。
- SSDのメリットは、処理速度が早いこと、即時に物体検出ができること、画像内に物体が豊富にある場合でも検出可能なことです。
SSDは、畳み込みニューラルネットワーク (CNN) を使用しているため、画像認識タスクや物体検出タスクなどでよく使われます。また、SSDは、大量の画像データを高速に処理することができるため、リアルタイム処理が可能です。
YOLO
YOLOは、You Only Look Onceの略称で、Joseph Redmon、Ali Farhadi、およびそのチームによって開発された物体検出アルゴリズムです。物体検出のタスクを行うコンピュータビジョンのアルゴリズムで、SSDと同じく物体検出とクラス分類を一度に行う手法です。YOLOは、画像内に存在する物体を検出し、それらをバウンディングボックスで囲んで分類することができます。
なお、他の多くの物体検出アルゴリズムと比較して高速であることが特徴です。そのため、リアルタイムのアプリケーションでの使用が可能であるとされています。また、YOLOは、画像を一度だけ読み込むことで物体検出を行うため、他のアルゴリズムよりも画像処理が効率的であるとされています。
また、画像内の物体を自動で検出するだけでなく、さらにそれらをカテゴライズすることもできるため、画像内の物体の種類を自動で判別することができます。これにより、画像内の物体を自動でカウントしたり、画像内の物体を識別したりするタスクを実現することができます。
現在は、更に改良された YOLOv5, YOLORといった手法も出てきています。
YOLOの特徴は、処理速度の速さにあります。高速でリアルタイムな物体検出ができるため動画の解析を行うような用途においてはデファクトスタンダードとなっています。
最新版アルゴリズムYOLO v5の特徴
YOLO v5は、YOLOの最新版であり、Pythonで実装され以下のようなメリットがあります。
- 高速である
YOLO v5は、他の多くの物体検出アルゴリズムと比較して高速であることが特徴です。そのため、リアルタイムのアプリケーションでの使用が可能であるとされています。 - 精度が高い
YOLO v5は、前のバージョンよりも精度が向上しているとされています。
HOG
- 画像の分割
画像を小さな領域に分割します。これらの領域を「セル」と呼びます。 - グラデーション計算
各セル内の画素間の輝度の差(グラデーション)を計算します。 - ヒストグラムの計算
各セル内で計算されたグラデーションの方向をもとに、グラデーション方向のヒストグラムを計算します。 - ブロック単位での特徴量抽出
複数のセルからなるブロック単位で特徴量を抽出します。ブロック単位の特徴量は、複数のセルのヒストグラムの和や平均などで計算します。 - 物体検出
抽出された特徴量を使用し、学習済みの分類器を使用して、画像中の物体を検出します。
HOGは、特に歩行者検出や車両検出に使用されることが多いです。 これは、HOGは、物体の形状や大きさが異なっても特徴を抽出することができるためです。
物体検出のAIモデルを構築する手順
物体検出のAIモデルを構築する手順は、以下のようになります。
- データセットの収集
物体検出を行いたい対象物が含まれる画像を収集し、ラベル付けを行います。ラベル付けは、画像内の各物体に対して、その物体の種類や位置を示すアノテーションを行うことです。物体検出には、一般的に数千から数万の画像が必要とされます。 - データの前処理
収集したデータを分割し、トレーニング、検証、テスト用に分けます。また、画像をリサイズしたり、背景を削除したり、色調整を行ったりして、ノイズを除去し、データの品質を向上させます。 - モデルの選択
物体検出のためのAIモデルには、様々な種類があります。代表的なものには、R-CNN、Faster R-CNN、SSD、YOLO、RetinaNetなどがあります。データセットのサイズや性質に応じて、最適なモデルを選択します。 - モデルのトレーニング
選択したモデルを使用して、トレーニングを行います。トレーニングは、データセットを使用して、モデルを学習させ、物体検出のための最適なパラメータを決定するプロセスです。トレーニングには、GPUを使用することが一般的です。 - モデルの評価
トレーニングが完了したら、検証データを使用して、モデルの性能を評価します。評価指標として、平均精度(mean average precision、mAP)がよく用いられます。 - モデルのチューニング
モデルの性能が不十分であれば、ハイパーパラメータを調整することで、性能を向上させることができます。ハイパーパラメータには、学習率、バッチサイズ、重みの初期化方法などがあります。 - モデルのデプロイ
最終的に、テストデータを使用してモデルの性能を確認し、必要に応じて微調整を行った上で、実際の環境にモデルをデプロイします。モデルをデプロイする方法には、クラウドベースのAPI、オンプレミスのサーバー、またはエッジデバイスに直接組み込む方法などがあります。 - モデルの改善
実際にデプロイされたモデルをモニタリングし、性能の改善点を洗い出すことが重要です。デプロイされたモデルのパフォーマンスやエラー率を分析し、必要に応じて新たなデータを収集し、トレーニングデータに追加することで、モデルの改善を行います。
以上が、物体検出のAIモデルを構築するための基本的な手順です。ただし、実際のモデル構築には、データの収集や前処理、モデルのトレーニングなど、多くの工程が含まれるため、専門的な知識や技術が必要となります。
物体検知で気をつけたいポイント
物体検知で気をつけたいポイントは以下の通りです。
- 訓練データの偏り
訓練データに偏りがあると、不正確な結果を生み出す可能性があります - 計算リソース
物体検知は計算リソースが必要です。複雑なモデルを使用すると、リアルタイムの検出が困難になることがあります - 認識率と検出率のバランス
認識率が高いと、不要な物体の検出も多くなります。逆に、検出率が高いと、重要な物体が検出されない可能性があります - 環境の違い
検知対象の環境によって、検出率が変わる場合があります。例えば、夜間や曇りの日には、検出率が低下することがあります - データプライバシー
検知するデータには、プライバシー保護が必要な情報が含まれる場合があります。適切な取り扱いが必要です
まとめ
本記事では、物体検出について解説しました。物体検出は画像や映像から、位置・種類・個数など、特定の物体情報を的確に判定でき、さまざまな業種で役立っています。記事内で紹介した物体検出の特徴や活用範囲・手法を参考にして、自社の業務効率化などに取り入れてみてはいかがでしょうか。
映像解析AIプラットフォームSCORERなら、AIシステムの黎明期より開発をしていたため、プラットフォームに30以上のAIを実装PoC不要!また、SDKキットによるシステム開発のコストを大幅に削減しております。
AIシステム開発をご検討されているかたは気軽にお問合せください。
映像解析AIプラットフォーム「SCORER」は、AIカメラ黎明期よりシステム開発をしております。導入事例が沢山ございます。AIカメラの活用方法は最新事例から学んでいただくと、理解がはやいため無料資料をご用意いたしました。5分程度でAIカメラが理解できる2023年7月更新の最新事例集は下記よりダウンロードできます。ご活用ください。
映像解析AIを使ったビジネスを始めたいパートナー企業を募集していますPARTNER PROGRAM
VARパートナー(付加価値再販)
SCORER Ready等、弊社が用意しているパッケージに対して、導入コンサルティングやマーケティング企画など貴社の強みにあった付加価値をつけて再販いただくパートナー企業です。
インテーグレーションパートナー
貴社の技術力や開発力を活かし、SCORERを活用したサービスの開発や導入支援、導入後のサポート対応を行って頂くパートナー企業です。
※案件は弊社でご紹介いたします。