【連載】

機械の目が見たセカイ -コンピュータビジョンがつくるミライ

29 動く人・物を追跡する(3) - OpenCVのトラッキング手法(中編)

29/44

第28回では、OpenCVに組み込まれているトラッキング手法の5つの手法のうち、Boosting、MIL、Median Flowをご紹介しました。今回は、残りの2つの手法のうちTLDの概要についてまとめたいと思います。

TLD (Tracking Learning Detection)

TLD[1]は、追跡対象の物体の画像を随時学習しながら追跡を行う手法です。学習、検出、追跡の3つのStepを毎フレーム行います(図1)。

図1 TLDの処理の流れ

・Step1:

最新の学習データを用いて2クラス識別器の学習を随時行います。追跡を開始する初期フレームでは、追跡対象のBounding Boxを手動で与え、そのBounding Box内からPositiveサンプルを、その周辺の領域からNegativeサンプルを生成します。

・Step2:

次に最新の学習結果を用いて、画像全体を探索し追跡対象の物体を検出します。このとき、識別器は追跡対象がひとつであるにも関わらず、複数検出してしまったり、ひとつも検出できなかったりということが生じます。TLDではPL-Learningというアルゴリズムを用いて、学習データのPositiveサンプル、Negativeサンプルを更新します(図2)。

具体的には、P-expertと呼ばれる処理で、時系列の追跡情報(軌跡)をもとに検出結果が正しいか否かを判定します。もし、追跡処理で得られた現在位置の画像領域が、追跡中の物体ではないと判定されてしまっていた場合は、その画像領域をPositiveサンプルとして追加します。これにより、検出漏れを抑制していくことができます。

N-expertと呼ばれる処理では、空間方向の制約(追跡結果から得られる現在位置と追跡対象物は画像中にひとつしか存在し得ないという制約)をもとに画像中のPositiveとして判定された検出結果が正しいか否かを判定します。まず、追跡結果から得られる現在位置を用い、最も確からしい検出結果をひとつ選出します。そして、その最も確からしいと判定された検出結果とオーバーラップしていない検出結果をNegativeサンプルとして追加します。つまり、追跡対象物ではないにも関わらずPositiveとして誤検出してしまった画像領域をNegativeサンプルに追加することにより、誤検出(過剰な検出)を減らすことができます。

図2 P-N Learningの概要

・Step3:

追跡処理にはMedian Flowを用います。追跡対象のBounding Boxをグリッド状に分割し、各グリッド内の点の動き(Flow)を求めます。そして、トラッキングエラーが大きいFlowを除去し、残ったFlowの中央値を用いてBounding Boxの座標を更新します。このとき、各グリッドのFlowのばらつきが閾値以上の場合、物体が完全に隠れてしまった、あるいは画像の視野外に出てしまったと判定します。

<動画1 TLDによるトラッキング結果>

TLDによるトラッキング結果は、動画1のとおりです。P-N Learningにより、追跡処理を繰り返せば繰り返すほど識別器の精度を向上させることができます。また、追跡処理と検出処理が独立しているため、物体が隠れた場合や、物体が画像の視野外に出てしまった場合、追跡処理が失敗した場合もリカバリーすることができます。

実際に使ってみた印象としては、物体の見え方の変化が小さい場合は精度良く追跡することができますが、回転や変形により見え方の変化が大きい場合は苦手なようです。

参考文献

[1] Kalal, Z., Mikolajczyk, K., Matas, J.: Tracking-learning-detection. TPAMI 34(7), 1409-1422 (2012)

著者プロフィール

樋口未来(ひぐち・みらい)
日立製作所 日立研究所に入社後、自動車向けステレオカメラ、監視カメラの研究開発に従事。2011年から1年間、米国カーネギーメロン大学にて客員研究員としてカメラキャリブレーション技術の研究に携わる。

日立製作所を退職後、2016年6月にグローバルウォーカーズ株式会社を設立し、CTOとして画像/映像コンテンツ×テクノロジーをテーマにコンピュータビジョン、機械学習の研究開発に従事している。また、東京大学大学院博士課程に在学し、一人称視点映像(First-person vision, Egocentric vision)の解析に関する研究を行っている。具体的には、頭部に装着したカメラで撮影した一人称視点映像を用いて、人と人のインタラクション時の非言語コミュニケーション(うなずき等)を観測し、機械学習の枠組みでカメラ装着者がどのような人物かを推定する技術の研究に取り組んでいる。

専門:コンピュータビジョン、機械学習

29/44

インデックス

連載目次
第44回 ディープラーニングの基礎(3) - 回帰・2クラス分類・多クラス分類の出力層
第43回 ディープラーニングの基礎(2) - 活性化関数
第42回 ディープラーニングの基礎(1) - ニューラルネットワークとは
第41回 領域分割(4) – CNNによるSemantic Image Segmentation
第40回 ハードウェアの基礎知識(4) - GPGPU
第39回 ハードウェアの基礎知識(3) - レンズ
第38回 ハードウェアの基礎知識 (2) - 電子シャッター
第37回 コンピュータビジョン分野で活躍する企業・フリーランサー インタビュー(3)
第36回 領域分割(3) - CRFを用いたSemantic Image Segmentation
第35回 領域分割(2) - Mean Shift法を用いたImage Segmentation
第34回 領域分割(1) - 概要編
第33回 見えないものを観る(3) - 目に見えない光「赤外線」を観る
第32回 見えないものを観る(2) - 絵画の下書きを観る
第31回 見えないものを観る(1) - 映像から音を復元する
第30回 動く人・物を追跡する(4) - OpenCVのトラッキング手法(後編)
第29回 動く人・物を追跡する(3) - OpenCVのトラッキング手法(中編)
第28回 動く人・物を追跡する(2) - OpenCVのトラッキング手法(前編)
第27回 動く人・物を追跡する(1) - OpenCVによるトラッキング
第26回 インターネット上の画像群からTime-lapse映像を自動生成する手法の概要
第25回 一人称視点(3) - Social Saliency
第24回 一人称視点(2) - Social Interaction
第23回 一人称視点(1) - 概要
第22回 行動認識(3) - Two-stream ConvNets
第21回 行動認識(2) - 動きの特徴量(HOF、MBH)
第20回 行動認識(1) - Dense Trajectories
第19回 視線計測(3) - カメラのみを用いた視線計測
第18回 視線計測(2) - 近赤外の点光源を用いた視線計測
第17回 視線計測(1) - 導入編
第16回 コンピュータビジョン分野における機械学習(4) - Deep Learning
第15回 コンピュータビジョン分野における機械学習(3) - 識別器
第14回 コンピュータビジョン分野における機械学習(2) - 顔検出・人検出
第13回 コンピュータビジョン分野における機械学習(1) - 導入編
第12回 コンピュータビジョン分野の市場分析(1) - 自動車編
第11回 コンピュータビジョン分野で活躍する企業・フリーランサー インタビュー(2)
第10回 カメラを用いた3次元計測(4) - Structure from Motion
第9回 カメラを用いた3次元計測(3) - サブピクセル推定
第8回 カメラを用いた3次元計測(2) - ステレオカメラ
第7回 コンピュータビジョン分野で活躍する企業・フリーランサー インタビュー(1)
第6回 カメラを用いた3次元計測(1)
第5回 意外と知らないカメラキャリブレーション
第4回 ハードウェアの基礎知識
第3回 コンピュータビジョンの要素技術と応用範囲(後編)
第2回 コンピュータビジョンの要素技術と応用範囲(前編)
第1回 普及期に入ったコンピュータビジョン

もっと見る



人気記事

一覧

イチオシ記事

新着記事