移動体追跡装置、移動体追跡方法及びプログラム
【課題】距離画像によって構成される動画像を解析し、移動体を追跡する場合において、移動体同士が接触或いは重複していたとしても、各移動体を区別して追跡することができる移動体追跡装置等を提供する。
【解決手段】移動体追跡装置1は、距離情報から距離画像を生成し(S1)、距離画像の2値化、ノイズ除去を行い(S2)、撮影時刻が隣接する2つの距離画像から各々移動体領域を1つずつ特定し、特定された2つの移動体領域の組ごとに重複領域を抽出し、重複領域の面積情報が所定値以上であった場合には移動体領域の組が同一の移動体であると判定し(S3)、同一の移動体であると判定された移動体領域の組について、移動体の移動位置を追跡する(S4)。
【解決手段】移動体追跡装置1は、距離情報から距離画像を生成し(S1)、距離画像の2値化、ノイズ除去を行い(S2)、撮影時刻が隣接する2つの距離画像から各々移動体領域を1つずつ特定し、特定された2つの移動体領域の組ごとに重複領域を抽出し、重複領域の面積情報が所定値以上であった場合には移動体領域の組が同一の移動体であると判定し(S3)、同一の移動体であると判定された移動体領域の組について、移動体の移動位置を追跡する(S4)。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、撮影位置から移動体までの距離情報のみが画像化された距離画像によって構成される動画像を解析し、移動体を追跡する移動体追跡装置等に関するものである。
【背景技術】
【0002】
従来から、店舗などにおける消費者の行動を解析する行動解析システムが開発されている。一般的な行動解析システムでは、ビデオカメラなどによって店舗内の移動体(例えば、消費者など)を撮影し、撮影された動画像を解析することによって、移動体の通過時刻、滞留時間、及び移動軌跡などを算出する。
【0003】
しかしながら、ビデオカメラによって撮影された動画像では、消費者の顔が判別できてしまう為、個人情報保護の観点から問題がある。この問題を解決する為に、特許文献1では、画角範囲に存在する物体までの距離データを格納する画素が2次元に配列され、各々の画素の距離データが含まれた2次元距離データを出力する距離画像センサ11と、距離画像センサ11から出力される2次元距離データを設定されたフレームレートで取得し、2次元距離データを利用して、2次元距離データに含まれる人物領域を認識し、認識した人物領域を時系列的にトラッキングすることで消費者の行動を判別し、判別した消費者の行動を記した行動履歴データを記憶する手法が開示されている。2次元距離データでは消費者の顔が判別できないので、個人情報保護の観点において全く問題がない。
【0004】
尚、特許文献1に記載の2次元距離データは、本発明が対象とする「撮影位置から移動体までの距離情報のみが画像化された画像」(以下、「距離画像」という。)の一例である。そして、本発明では、距離画像を各フレーム(動画像を構成する静止画像1枚分)とする動画像を対象とする。
【0005】
ところで、距離画像には色情報がない為、2以上の移動体が接触或いは重複していると、移動体同士の境界を判別することができないという問題がある。ここで、「重複」とは、2以上の移動体が撮影方向の奥と手前に位置し、奥の移動体の一部が手前の移動体の一部と重なって見える状態を意味する。例えば、特許文献2では、複数の人を撮像した動画像の1フレームを構成する画像を入力し、入力した画像に対して、人を撮影した場合に画像の各部において期待される頭部の大きさに応じた頭部モデルを位置をずらしつつ設定する設定モデル設定部と、設定された頭部モデルに基づいて、画像に含まれる人の頭部を抽出する頭部抽出部と、動画像に含まれる複数の画像の間で抽出された頭部を互いに関連付ける頭部関連付け部と、互いに関連付けられた頭部の軌跡の本数に基づいて動画像に含まれる人数を計測する人数計測部と、を備える人数計測装置が開示されている。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開2010−67079号公報
【特許文献2】特開2010−198566号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
一見すると、特許文献2に記載の技術は、色情報を使わなくても実現できるように思われ、距離画像に適用できるように思われる。しかしながら、特許文献2には、計測の精度を確保する為に、色分布などの特徴量を用いることが記載されており、特許文献2に記載の技術を距離画像に適用しても実用に耐えることができない。
【0008】
また、特許文献2に記載の技術では、人物が帽子やアクセサリーなどを身に付けていると、頭部抽出部が、実際は人物の頭部であるにも関わらず人物の頭部ではないと誤認識してしまうという別の問題もある。
【0009】
本発明は、前述した問題点に鑑みてなされたものであり、その目的とすることは、距離画像によって構成される動画像を解析し、移動体を追跡する場合において、移動体同士が接触或いは重複していたとしても、各移動体を区別して追跡することができる移動体追跡装置等を提供することである。
【課題を解決するための手段】
【0010】
前述した目的を達成するために第1の発明は、撮影位置から移動体までの距離情報のみが画像化された距離画像によって構成される動画像を解析し、前記移動体を追跡する移動体追跡装置であって、前記距離画像ごとに、移動体領域を抽出する移動体領域抽出手段と、撮影時刻が隣接する2つの前記距離画像から各々前記移動体領域を1つずつ特定し、特定された2つの前記移動体領域の組ごとに、重複領域を抽出する重複領域抽出手段と、前記重複領域の面積情報が所定値以上であった場合、前記移動体領域の組が同一の前記移動体であると判定する判定手段と、を具備することを特徴とする移動体追跡装置である。第1の発明によって、移動体同士が接触或いは重複していたとしても、各移動体を区別して追跡することができる。
【0011】
第1の発明における前記判定手段は、後続の前記移動体領域の1つに対して、前記面積情報が所定値以上となる前記重複領域が複数の場合、複数の前記移動体領域が結合したと判定し、先行の前記移動体領域の1つに対して、前記面積情報が所定値以上となる前記重複領域が複数の場合、複数の前記移動体領域に分離したと判定することが望ましい。これによって、距離情報をリアルタイムに入力して処理する実時間方式であっても、実用に耐え得る判定精度及び計算速度を確保することができる。
【0012】
また、第1の発明における前記判定手段によって同一の前記移動体であると判定された前記移動体領域の組について、前記移動体の移動位置を追跡する追跡手段、を更に具備することが望ましい。これによって、移動体同士が接触或いは重複していたとしても、各移動体を区別して移動位置を追跡することができる。
【0013】
また、第1の発明における前記追跡手段は、例えば、前記移動体領域の組の基準位置を算出する基準位置算出手段と、先行の前記移動体領域から後続の前記移動体領域へのオプティカルフローを算出するオプティカルフロー算出手段と、前記基準位置から所定の探索範囲に含まれる前記オプティカルフローを探索するオプティカルフロー探索手段と、探索された前記オプティカルフローに基づいて、前記移動位置を決定する移動位置決定手段と、を備える。これによって、色情報を持たない距離画像であっても、移動体の移動位置を正確に決定することができる。
【0014】
また、第1の発明における前記基準位置算出手段は、前記重複領域の重心を前記基準位置とすることが望ましい。これによって、先行の距離画像から後続の距離画像への変化の形態が、単独、結合及び分離のどれであっても対応することができる。
【0015】
また、第1の発明における前記オプティカルフロー探索手段は、追跡対象の前記移動体と異なる前記移動体に関連する前記オプティカルフローについては、探索結果から除外することが望ましい。これによって、移動体の移動位置を決定する処理から他の移動体に関連するオプティカルフローを除外し、移動位置を精度良く決定することができる。
【0016】
第2の発明は、撮影位置から移動体までの距離情報のみが画像化された距離画像によって構成される動画像を解析し、前記移動体を追跡する移動体追跡方法であって、前記距離画像ごとに、移動体領域を抽出する移動体領域抽出ステップと、撮影時刻が隣接する2つの前記距離画像から各々前記移動体領域を1つずつ特定し、特定された2つの前記移動体領域の組ごとに、重複領域を抽出する重複領域抽出ステップと、前記重複領域の面積情報が所定値以上であった場合、前記移動体領域の組が同一の前記移動体であると判定する判定ステップと、を含むことを特徴とする移動体追跡方法である。第2の発明によって、移動体同士が接触或いは重複していたとしても、各移動体を区別して追跡することができる。
【0017】
第3の発明は、コンピュータに、撮影位置から移動体までの距離情報のみが画像化された距離画像によって構成される動画像を解析し、前記移動体を追跡する移動体追跡方法を実行させるためのプログラムであって、前記コンピュータに、前記距離画像ごとに、移動体領域を抽出する移動体領域抽出ステップと、撮影時刻が隣接する2つの前記距離画像から各々前記移動体領域を1つずつ特定し、特定された2つの前記移動体領域の組ごとに、重複領域を抽出する重複領域抽出ステップと、前記重複領域の面積情報が所定値以上であった場合、前記移動体領域の組が同一の前記移動体であると判定する判定ステップと、を実行させるためのプログラムである。第3の発明を汎用のコンピュータにインストールすることによって、第1の発明の移動体追跡装置を得て、第2の発明の移動体追跡方法を実行することができる。
【発明の効果】
【0018】
本発明により、距離画像によって構成される動画像を解析し、移動体を追跡する場合において、移動体同士が接触或いは重複していたとしても、各移動体を区別して追跡することができる移動体追跡装置等を提供することができる。
【図面の簡単な説明】
【0019】
【図1】移動体追跡装置の適用例を示す図
【図2】移動体追跡装置のハードウエア構成図
【図3】移動体追跡装置の処理の概要を示すフローチャート
【図4】距離情報の一例を示す図
【図5】距離画像の一例を示す図
【図6】2値化された距離画像の一例を示す図
【図7】ノイズ除去された距離画像の一例を示す図
【図8】移動体識別処理の詳細を示すフローチャート
【図9】判定処理を説明する図
【図10】第1の例を示す図
【図11】第1の例に対する処理結果を示す図
【図12】第2の例を示す図
【図13】第2の例に対する処理結果を示す図
【図14】第3の例を示す図
【図15】第3の例に対する処理結果を示す図
【図16】第4の例を示す図
【図17】第4の例に対する処理結果を示す図
【図18】移動体追跡処理の詳細を示すフローチャート
【図19】第5の例における先行の距離画像を示す図
【図20】第5の例における後続の距離画像を示す図
【図21】先行の距離画像における基準位置を示す図
【図22】後続の距離画像における基準位置を示す図
【図23】後続の距離画像におけるオプティカルフローを示す図
【図24】オプティカルフローの探索範囲を示す図
【図25】移動体の移動位置を示す図
【図26】分析結果の一例を示す図
【発明を実施するための形態】
【0020】
以下図面に基づいて、本発明の実施形態を詳細に説明する。本発明の移動体追跡装置等は、距離画像(撮影位置から移動体までの距離情報のみが画像化された画像)を各フレームとする動画像に対して広く適用可能なものである。また、移動体としては、人間に限らず、動植物や車両に代表される装置など、単体として移動するものであれば、どのような物体にも適用できる。以下では、一例として、特許文献1(特開2010−67079号公報)のように、消費者の行動を解析する行動解析システムへの適用例について述べる。
【0021】
図1は、移動体追跡装置の適用例を示す図である。図1では、店舗の商品棚3の上に設置され、画角の範囲内に存在する物体までの距離を測定する距離画像センサ2と、距離画像センサ2から得られる距離情報を入力し、距離情報に基づいて生成される距離画像によって構成される動画像を解析し、移動体を追跡する移動体追跡装置1と、によって構成される、消費者5(5A〜5D)の行動を解析する行動解析システムを模式的に示している。図1(a)は、距離画像センサ2、商品棚3、及び消費者5等を水平方向から見た様子を示している。図1(b)は、距離画像センサ2、商品棚3、及び消費者5等を鉛直方向から見た様子を示している。
【0022】
距離画像センサ2としては、市販の距離画像センサを利用することができる。例えば、松下電工株式会社などから市販されている光波測距(Time of Flight)式の距離画像センサなどがある。光波測距式の距離画像センサは、距離画像センサに供えられたLEDから照射された近赤外光が、物体から反射して距離画像センサに返ってくる到達時間を利用して、距離画像センサの位置(すなわち撮影位置)から物体(本実施の形態では、特に、消費者5などの移動体)までの距離を2次元で配列された画素毎に計測し、各画素の距離情報を所定のフレームレート(例えば、15fps)で出力する機能を備えている。尚、市販の距離画像センサには、距離測定機能に加え、画像撮影機能を備えているセンサもあるが、個人情報保護の観点から、本発明の実施形態では、距離測定機能のみを利用し、画像撮影機能を利用しない。
【0023】
図1(a)、(b)に示すように、距離画像センサ2は、例えば、LEDの照射方向が商品棚3の上から斜め下方となるように設置される。距離画像センサ2の画角は、例えば、垂直方向(図1(a)において点線によって示す範囲)が45度、水平方向が(図1(b)において点線によって示す範囲)が60度である。尚、距離画像センサ2が斜め下方となるように設置される場合、特許文献1に示すように、距離画像センサ2から出力される距離情報は、画素から同じ距離dであっても、画角の上端の画素と下端の画素の間には、実際の高さにΔhだけ差が生じてしまう。そこで、特許文献1のように、移動体追跡装置1は、距離画像センサ2から出力される距離情報を実際の高さに変換するようにしても良い。
【0024】
図1に示す状況では、消費者5Aと消費者5Bの2人が距離画像センサ2から照射される近赤外光を受けるので、消費者5Aと消費者5Bの2人が距離画像として画像化される。このとき、消費者5Aと消費者5Bが接触していることから、両者は画素が連結した単一領域として画像化され、色情報を持たない距離画像では区別することが難しい。更に、消費者5Cが接近してくると、3者が単一領域として画像化されることもあり、区別することが一層難しくなる。尚、消費者5Cのように、帽子などを被っている消費者も考えられることから、例えば、特許文献2(特開2010−198566号公報)のように、頭部モデルなどを用いたパターンマッチング手法では、誤認識してしまう可能性が高い。本発明の移動体追跡装置1は、これらの課題を解決し、後述する処理によって、消費者5などの移動体同士が接触或いは重複していたとしても、各移動体を精度良く区別して追跡することができる。
【0025】
図2は、移動体追跡装置のハードウエア構成図である。尚、図2のハードウエア構成は一例であり、用途、目的に応じて様々な構成を採ることが可能である。
【0026】
移動体追跡装置1を実現するコンピュータは、制御部11、記憶部12、メディア入出力部13、通信制御部14、入力部15、表示部16、周辺機器I/F部17等が、バス18を介して接続される。
【0027】
制御部11は、CPU(Central Processing Unit)、ROM(Read Only Memory)、RAM(Random Access Memory)等で構成される。CPUは、記憶部12、ROM、記録媒体等に格納されるプログラムをRAM上のワークメモリ領域に呼び出して実行し、バス18を介して接続された各装置を駆動制御し、移動体追跡装置1が行う後述する処理を実現する。ROMは、不揮発性メモリであり、コンピュータのブートプログラムやBIOS等のプログラム、データ等を恒久的に保持している。RAMは、揮発性メモリであり、記憶部12、ROM、記録媒体等からロードしたプログラム、データ等を一時的に保持するとともに、制御部11が各種処理を行う為に使用するワークエリアを備える。
【0028】
記憶部12は、例えば、HDD(Hard Disk Drive)であり、制御部11が実行するプログラム、プログラム実行に必要なデータ、OS(Operating System)等が格納される。プログラムに関しては、OSに相当する制御プログラムや、後述する処理をコンピュータに実行させるためのアプリケーションプログラムが格納されている。これらの各プログラムコードは、制御部11により必要に応じて読み出されてRAMに移され、CPUに読み出されて各種の手段として実行される。
【0029】
メディア入出力部13(ドライブ装置)は、データの入出力を行い、例えば、CDドライブ(−ROM、−R、−RW等)、DVDドライブ(−ROM、−R、−RW等)等のメディア入出力装置を有する。通信制御部14は、通信制御装置、通信ポート等を有し、コンピュータとネットワーク9間の通信を媒介する通信インタフェースであり、ネットワーク9を介して、他のコンピュータ間との通信制御を行う。ネットワーク9は、有線、無線を問わない。
【0030】
入力部15は、データの入力を行い、例えば、キーボード、マウス等のポインティングデバイス、テンキー等の入力装置を有する。入力部15を介して、コンピュータに対して、操作指示、動作指示、データ入力等を行うことができる。表示部16は、CRTモニタ、液晶パネル等のディスプレイ装置、ディスプレイ装置と連携してコンピュータのビデオ機能を実現するための論理回路等(ビデオアダプタ等)を有する。尚、入力部15及び表示部16は、タッチパネルディスプレイのように、一体となっていても良い。
【0031】
周辺機器I/F(インタフェース)部17は、コンピュータに周辺機器(例えば、距離画像センサ2など)を接続させるためのポートであり、周辺機器I/F部17を介してコンピュータは周辺機器(イメージスキャナ、複合機等)とのデータの送受信を行う。周辺機器I/F部17は、USBやIEEE1394やRS−232C等で構成されており、通常複数の周辺機器I/Fを有する。周辺機器との接続形態は有線、無線を問わない。バス18は、各装置間の制御信号、データ信号等の授受を媒介する経路である。
【0032】
次に、図3に示すフローチャートに沿って、図4〜図7を適宜参照しながら、移動体追跡装置の処理の概要について説明する。
【0033】
図3は、移動体追跡装置の処理の概要を示すフローチャートである。図3では、距離画像センサ2から出力される1フレーム分の距離情報に対する処理を示している。つまり、移動体追跡装置1は、対象となるフレーム数だけ図3の処理を繰り返す。また、移動体追跡装置1は、距離画像センサ2からリアルタイムに入力するデータに対して図3に示す処理を行っても良いし(以下、「実時間方式」という。)、予め記憶部12に記憶されているデータに対して図3に示す処理を行っても良い(以下、「非実時間方式」という。)。
【0034】
図3に示すように、移動体追跡装置1の制御部11は、距離情報から距離画像を生成する(S1)。距離画像の生成処理については、例えば、特許文献1に記載の手法など、従来の技術を用いれば良い。特許文献1に記載の手法を用いる場合、制御部11は、距離画像センサ2を設置した位置の高さ、距離画像センサ2の設置角度、距離画像センサ2の画角等をパラメータとし、三角関数等を利用した算出式によって、距離情報を高さ情報に変換する。そして、制御部11は、高さ情報から、画像の濃淡を表す階調に変換し、距離画像を生成する。
【0035】
距離画像の1画素を256階調の濃淡差によって表す場合、制御部11は、各階調ごとに対応する高さが予め定めておき、各画素(例えば、水平128×垂直123画素)それぞれの高さを階調に変換することによって、各画素の256階調の距離画像を生成する。尚、距離情報を高さ情報に変換し、距離画像を生成する理由は、目視で確認した結果と解析した結果を照らし合わせて実証又は評価できるようにするためであり、距離情報をそのまま用いて距離画像を生成し、後述する処理を実行しても、本発明の目的は達成される。
【0036】
図4は、距離情報の一例を示す図である。図5は、距離画像の一例を示す図である。図4に示すように、距離情報は、例えば、タブ区切り(カンマ区切りなどでも良い。)のバイナリデータ6として距離画像センサ2から出力される。制御部11は、図4に例示するバイナリデータ6を入力し、図5に例示する距離画像を生成する。図5の例では、2人の消費者5がいることは確認できる。また、左側の消費者5は帽子をかぶっており、右側の消費者5は手に何かを持っていることも確認できる。尚、消費者5の顔は判別できないので、個人情報保護の観点においては全く問題がない。
【0037】
図3の説明に戻る。次に、制御部11は、距離画像を2値化するとともに、ノイズを除去する(S2)。2値化処理では、消費者5などの移動体を示す画素が連結している領域(以下、「移動体領域」という。)と、それ以外の床4など固定物を示す画素が連結している領域(以下、「固定物領域」という。)と、に区分する。図5を見れば分かるように、固定物領域はほとんど黒の階調となることから、2値化処理による移動体領域と固定物領域の区分は、容易かつ精度良く行うことができる。
【0038】
図6は、2値化された距離画像の一例を示す図である。図6の例では、2人の消費者5を示す2つの移動体領域が確認できる。尚、画像の四隅や移動体領域の境界付近において、若干のノイズ(図6の例では、画素値が白であるが周辺の画素と連結が乏しい画素)が残っている。
【0039】
図6に示されるノイズに対して、制御部11は、ノイズ除去処理を行う。ノイズ除去処理は、例えば、特許文献1に記載の手法など、従来の技術を用いれば良い。特許文献1に記載の手法を用いる場合、制御部11は、例えば、空間フィルタを利用した処理と、領域分割を利用した処理の2種類の処理を実行する。空間フィルタを利用した処理としては、例えば、3画素×3画素の移動平均法による平滑化処理が考えられる。また、領域分割を利用した処理としては、例えば、4近傍ラベリング処理により領域の分割を行い、領域の大きさが一定値より小さいノイズを除去することが考えられる。空間フィルタを利用した処理及び領域分割を利用した処理の両方を行うことによって、精度良く除去することができる。
【0040】
図7は、ノイズ除去された距離画像の一例を示す図である。図6の例では、ノイズが除去され、2人の消費者5を示す2つの移動体領域のみが確認できる。このように、距離画像に対して2値化処理及びノイズ除去処理を施すことによって、後述する処理を簡潔にすることができるとともに、処理の精度を上げることができる。
【0041】
制御部11は、図7に示す距離画像ごとに移動体領域を抽出し、それぞれの移動体領域に対して、移動体領域を一意に識別する情報(以下、「移動体領域識別情報」という。)を付与する。そして、移動体追跡装置1は、移動体領域識別情報と移動体領域とを対応付けて、RAMや記憶部12などに記憶しておく。尚、移動体領域識別情報は、移動体を一意に識別する情報ではなく、あくまでも、移動体領域を一意に識別する情報である。例えば、複数の移動体が接触或いは重複していて、1つの移動体領域として抽出されている場合であっても、移動体領域識別情報では、移動体を一意に識別することはできない。
【0042】
図3の説明に戻る。次に、制御部11は、移動体識別処理を行う(S3)。移動体識別処理は、隣接する2つの距離画像から特定される移動体領域の組について、同一の移動体であるか否かを判定し、移動体を識別する処理である。処理の詳細については、図8〜図17を参照しながら後述する。
【0043】
次に、制御部11は、移動体追跡処理を行う(S4)。移動体追跡処理は、移動体識別処理によって同一の移動体であると判定された移動体領域の組について、移動体の移動位置を追跡する処理である。処理の詳細については、図18〜図25を参照しながら後述する。
【0044】
このように、移動体追跡装置1は、S1〜S4の処理をフレームごとに行うことによって、個々の移動体を識別し、それぞれを区別して追跡することができる。尚、実時間方式の場合、移動体追跡装置1は、距離画像センサ2から距離情報が入力されるごとに、S1〜S4の処理を行う。一方、非実時間方式の場合、移動体追跡装置1は、距離画像センサ2から距離情報が入力されるごとに、S1〜S4の処理を行っても良いし、全てのフレームに対してS1及びS2の処理を行い、処理結果を記憶部12に記憶した後、フレームごとにS3及びS4の処理を行っても良い。ここで、S1及びS2の処理結果とは、距離画像ごとに抽出された移動体領域、すなわち、移動体領域識別情報が対応付けられた移動体領域である。そして、移動体追跡装置1は、全てのフレームに対するS1及びS2の処理結果を記憶部12から順次読み出して、フレームごとにS3及びS4の処理を行う。
【0045】
次に、図8に示すフローチャートに沿って、図9〜図17を適宜参照しながら、移動体識別処理について説明する。
【0046】
図8は、移動体識別処理の詳細を示すフローチャートである。図8では、1フレーム分の距離画像に対する処理を示している。処理内容は、実時間方式の場合も非実時間方式の場合も同様である。
【0047】
図8に示すように、移動体追跡装置1の制御部11は、先行の距離画像に移動体領域があるか否かを判定する(S11)。先行の距離画像とは、処理の対象となっている距離画像の直前のフレーム(距離情報)から生成された距離画像である。以下、時系列関係を明確にする為に、処理の対象となっている距離画像のことを「後続の距離画像」という。
【0048】
制御部11は、先行の距離画像に移動体領域がない場合(S11のNo)、後続の距離画像の移動体領域(以下、「後続の移動体領域」と省略することもある。)に、移動体を一意に識別する情報(以下、「移動体識別情報」という。)を対応付けて、移動体領域識別情報が対応付けられた移動体領域RAM又は記憶部12に記憶する(S12)。
【0049】
一方、制御部11は、先行の距離画像に移動体領域がある場合(S11のYes)、先行及び後続の距離画像から各々移動体領域を特定し、特定された2つの移動体領域の組ごとに、重複領域を抽出する(S13)。例えば、先行の距離画像にM個の移動体領域が存在し、後続の距離画像にN個の移動体領域が存在する場合、制御部11は、M×N個の移動体領域の組を特定する。そして、制御部11は、移動体領域の組ごとに、先行の移動体領域と後続の移動体領域が重複する画素群を、重複領域として抽出する。
【0050】
次に、制御部11は、面積情報が所定値以上の重複領域について、その移動体領域の組が同一の移動体であると判定し、移動体識別情報を対応付ける(S14)。ここで、面積情報とは、重複領域の面積(重複領域として抽出された画素の数×1画素のサイズ)に基づく情報である。画像全体の面積をS0、先行の移動体領域の面積をS1、後続の移動体領域の面積をS2、重複領域の面積をS3としたとき、面積情報は、例えば、S3、S3/S0、S3/S1、S3/S2などが考えられる。尚、面積情報は、これらの例に限定されるものではなく、少なくとも、重複領域の面積に基づく情報であれば良い。また、所定値は、距離画像センサ2を設置した位置の高さ、距離画像センサ2の設置角度、距離画像センサ2の画角、対象とする移動体の種類(消費者5、動植物、車両など)等に応じて、適宜適切な値を設定すれば良い。
【0051】
図9は、判定処理を説明する図である。前述した通り、距離画像では、複数の移動体が接触或いは重複している場合、1つの移動体領域として抽出されてしまう。本発明では、先行の距離画像から後続の距離画像への変化の形態を、以下の3パターンに分けて考える。
(1)結合:先行の距離画像では複数の移動体領域が離間していたが、後続の距離画像では互いに接触或いは重複していると認識される形態。
(2)分離:先行の距離画像では複数の移動体領域が互いに接触或いは重複していたが、後続の距離画像では互いに離間していると認識される形態。
(3)単独:先行の距離画像でも後続の距離画像でも1つの移動体領域として認識される形態。
【0052】
図9では、上記の3パターンの形態を判定する為の判定条件と、形態ごとの処理内容が示されている。尚、どのパターンであっても、制御部11は、重複領域の面積情報が所定値以上であった場合、その移動体領域の組が同一の移動体であると判定することには変わりがない。
【0053】
<No.1:結合パターン>制御部11は、後続の移動体領域の1つに対して、面積情報が所定値以上の重複領域が複数の場合、複数の移動体領域が結合したと判定する。そして、制御部11は、先行の移動体識別情報(複数)を、後続の移動体領域(単数)に対応付ける。
【0054】
<No.2:分離パターン>制御部11は、先行の移動体領域の1つに対して、面積情報が所定値以上の重複領域が複数の場合、複数の移動体領域に分離したと判定する。そして、制御部11は、先行の移動体識別情報(単数)から派生する新規の移動体識別情報(複数)を、後続の各移動体領域(複数)にそれぞれ対応付ける。
【0055】
<No.3:単独パターン>制御部11は、結合及び分離以外の場合、単独と判定する。そして、制御部11は、先行の移動体識別情報(単数又は複数)を、後続の移動体領域(単数)に対応付ける。
【0056】
実際には、先行の距離画像及び後続の距離画像の両方において、複数の移動体が接触或いは重複していて1つの移動体領域として認識されることがある。このような場合、判定処理では、前述した通り単独のパターンとして判定される。そして、以下に説明するように、本発明では、このような場合も、精度良く各移動体を区別して識別することができる。
【0057】
例えば、処理対象のフレームを現在としたときに、過去に1度でも離間していれば、その時に異なる移動体識別情報(複数)が対応付けられることになる。従って、実時間方式及び非実時間方式のいずれの場合にも、離間した後のフレームに対して、複数の移動体が接触或いは重複していると認識することができる。
【0058】
また、処理対象のフレームを現在としたときに、過去に1度も離間していない複数の移動体が、将来に1度でも離間すれば、その時に異なる移動体識別情報(複数)が対応付けられることになる。従って、非実時間方式の場合には、時系列が逆の順にフレームを読み出して、図8に示す処理を行えば、離間する前のフレームに対して、複数の移動体が接触或いは重複していると認識することができる。
【0059】
一方、初めてフレームインからフレームアウトするまで、複数の移動体が接触或いは重複したまま、1度も離間しなければ、図8に示す処理では、単数の移動体と判定される。そこで、例えば、前述した面積情報が極端に大きい値であれば、移動体追跡装置1は、複数の移動体であると自動的に判断したり、或いは、複数の移動体か否かの確認をユーザに要求したりしても良い。
【0060】
尚、行動解析システムの場合、複数の消費者5が1度も離間しないようなケースでは、商品を購入するか否かの意思決定の単位としては、単数と考えた方が適切であるとも言える。そこで、本発明を行動解析システムに適用する場合などは、敢えて複数の消費者5か否かの判断や確認要求を行わなくても良い。
【0061】
以下では、具体的な例として、第1の例〜第4の例を挙げて、図8に示す移動体識別処理の詳細を説明する。以下、図10〜図17において、点線によって示されている領域が「先行の移動体領域」、実線によって示されている領域が「後続の移動体領域」、斜線が付されている領域が「重複領域」である。
【0062】
図10は、第1の例を示す図である。図10(a)には、先行の移動体領域Aが示されている。また、図10(b)には、後続の移動体領域Bが示されている。以下、大文字のアルファベット1文字は、移動体領域識別情報を示している。
【0063】
図11は、第1の例に対する処理結果を示す図である。第1の例では、先行及び後続の移動体領域がそれぞれ1つであるから、移動体領域の組は1つである。図11(a)では、先行の移動体領域Aと後続の移動体領域Bの組に対して、重複領域ABを示している。移動体追跡装置1の制御部11は、重複領域ABの面積情報が所定値以上であると判定する。以下、大文字のアルファベット2文字は、重複領域識別情報を示している。
【0064】
図11(b)では、移動体領域の組を直線によって示している。また、それぞれの組に関する重複領域の面積情報が所定値以上である場合、直線に白丸に囲まれた片仮名「ア」を付している。この片仮名「ア」は、移動体識別情報である(以下、他の例でも同様。)。つまり、図11(b)では、第1の例は、面積情報が所定値以上の重複領域が1つであり、単独の形態であることを示している。そして、制御部11は、先行の移動体領域Aに対応付けられていた移動体識別情報アを、後続の移動体領域Bに対応付けて、RAM又は記憶部12に記憶する。
【0065】
図12は、第2の例を示す図である。図12(a)には、先行の移動体領域C、Dが示されている。また、図12(b)には、後続の移動体領域E、Fが示されている。
【0066】
図13は、第2の例に対する処理結果を示す図である。第2の例では、先行及び後続の移動体領域がそれぞれ2つであるから、移動体領域の組は2×2=4つである。図13(a)では、先行の移動体領域Cと後続の移動体領域Eの組に対して、重複領域CEを示している。図13(b)では、先行の移動体領域Dと後続の移動体領域Eの組に対して、重複領域が存在しないことを示している。図13(c)では、先行の移動体領域Cと後続の移動体領域Fの組に対して、重複領域が存在しないことを示している。図13(d)では、先行の移動体領域Dと後続の移動体領域Fの組に対して、重複領域DFを示している。移動体追跡装置1の制御部11は、重複領域CE及びDFの面積情報が所定値以上であると判定する。
【0067】
図13(e)では、4つの移動体領域の組が直線によって示している。また、重複領域CEの面積情報が所定値以上であるから、先行の移動体領域Cと後続の移動体領域Eの組に対して、移動体識別情報「イ」を付している。また、重複領域DFの面積情報も所定値以上であるから、先行の移動体領域Dと後続の移動体領域Fの組に対して、移動体識別情報「ウ」を付している。つまり、図13(e)では、第2の例は、面積情報が所定値以上の重複領域が2つであり、単独の形態であることを示している。そして、制御部11は、先行の移動体領域Cに対応付けられていた移動体識別情報イを、後続の移動体領域Eに対応付けて、RAM又は記憶部12に記憶する。同様に、制御部11は、先行の移動体領域Dに対応付けられていた移動体識別情報ウを、後続の移動体領域Fに対応付けて、RAM又は記憶部12に記憶する。
【0068】
図14は、第3の例を示す図である。図14(a)には、先行の移動体領域G、Hが示されている。また、図14(b)には、後続の移動体領域Jが示されている。
【0069】
図15は、第3の例に対する処理結果を示す図である。第3の例では、先行の移動体領域が2つ、後続の移動体領域が1つであるから、移動体領域の組は2×1=2つである。図15(a)では、先行の移動体領域Gと後続の移動体領域Jの組に対して、重複領域GJを示している。図15(b)では、先行の移動体領域Hと後続の移動体領域Jの組に対して、重複領域HJを示している。移動体追跡装置1の制御部11は、重複領域GJ及びHJの面積情報が所定値以上であると判定する。
【0070】
図15(c)では、2つの移動体領域の組が直線によって示している。また、重複領域GJの面積情報が所定値以上であるから、先行の移動体領域Gと後続の移動体領域Jの組に対して、移動体識別情報「エ」を付している。また、重複領域HJの面積情報も所定値以上であるから、先行の移動体領域Hと後続の移動体領域Jの組に対して、移動体識別情報「オ」を付している。つまり、図15(c)では、第3の例は、面積情報が所定値以上の重複領域が2つであり、結合の形態であることを示している。そして、制御部11は、先行の移動体領域Gに対応付けられていた移動体識別情報エを、後続の移動体領域Jに対応付けて、RAM又は記憶部12に記憶する。同様に、制御部11は、先行の移動体領域Hに対応付けられていた移動体識別情報オを、後続の移動体領域Jに対応付けて、RAM又は記憶部12に記憶する。
【0071】
図16は、第4の例を示す図である。図16(a)には、先行の移動体領域Kが示されている。また、図16(b)には、後続の移動体領域L、Mが示されている。
【0072】
図17は、第4の例に対する処理結果を示す図である。第4の例では、先行の移動体領域が1つ、後続の移動体領域が2つであるから、移動体領域の組は1×2=2つである。図17(a)では、先行の移動体領域Kと後続の移動体領域Lの組に対して、重複領域KLを示している。図17(b)では、先行の移動体領域Kと後続の移動体領域Mの組に対して、重複領域KMを示している。移動体追跡装置1の制御部11は、重複領域KL及びKMの面積情報が所定値以上であると判定する。
【0073】
図17(c)では、2つの移動体領域の組が直線によって示している。また、重複領域KLの面積情報が所定値以上であるから、先行の移動体領域Kと後続の移動体領域Lの組に対して、移動体識別情報「カ」を付している。また、重複領域KMの面積情報も所定値以上であるから、先行の移動体領域Kと後続の移動体領域Mの組に対して、移動体識別情報「キ」を付している。つまり、図17(c)では、第4の例は、面積情報が所定値以上の重複領域が2つであり、結合の形態であることを示している。そして、制御部11は、先行の移動体領域Kに対応付けられていた移動体識別情報カを、後続の移動体領域Lに対応付けて、RAM又は記憶部12に記憶する。同様に、制御部11は、先行の移動体領域Kに対応付けられていた移動体識別情報キを、後続の移動体領域Mに対応付けて、RAM又は記憶部12に記憶する。
【0074】
前述した第1の例〜第4の例は、説明を分かり易くする為に単純な形態としている。例えば、1組の距離画像の中に、分離や結合の形態が複数存在したり、単独、分離及び結合が混在したりしている場合であっても、第1の例〜第4の例と同様に処理を実行することができる。
【0075】
次に、図18に示すフローチャートに沿って移動体追跡処理を説明しながら、図19〜図25に示す第5の例に対する具体的な処理内容についても合わせて説明する。
【0076】
図18は、移動体追跡処理の詳細を示すフローチャートである。図18では、1フレーム分の距離画像に対する処理を示している。処理内容は、実時間方式の場合も非実時間方式の場合も同様である。また、「先行」及び「後続」の用語の意味は、図8等の説明と同様である。
【0077】
図19は、第5の例における先行の距離画像を示す図である。図20は、第5の例における後続の距離画像を示す図である。第5の例では、2人の消費者5が接触しながら商品棚3の前に立ち止まっており、他の1人の消費者5が重複しながら後ろを通り過ぎようとしている。そして、図19から図20にかけて、商品棚3の前に立ち止まっている2人の消費者5はほとんど移動せず、他の1人の消費者5は右手前の方向に移動している。第5の例では、3人の消費者5が接触或いは重複していることから、単一の領域として2値化されるが、図8に示す処理を実行することによって、それぞれ異なる移動体識別情報が対応付けられている。尚、消費者5同士の境界は明確にされていない。
【0078】
図18に示すように、移動体追跡装置1の制御部11は、移動体領域の組の基準位置を算出する(S21)。基準位置は、先行の距離画像の撮影時刻における各移動体の位置を代表する座標(画像内の2次元座標)である。
【0079】
例えば、先行の距離画像から後続の距離画像への変化の形態が「単独」の場合、制御部11は、先行の移動体領域又は重複領域の重心を、先行の移動体領域の基準位置とすれば良い。また、「結合」の場合、制御部11は、先行の移動体領域又は重複領域の重心を、先行の移動体領域の基準位置とすれば良い。一方、「分離」の場合、制御部11は、重複領域の重心を、先行の移動体領域の基準位置とする。なぜならば、「分離」の場合、先行の移動体領域が、他の移動体の領域も含んでいることから、先行の移動体領域の重心を基準位置とすると、その移動体の位置を代表する座標として適切ではないからである。以上から、全ての形態に対応する為に、制御部11は、重複領域の重心を、先行の移動体領域の基準位置とすることが望ましい。
【0080】
図21は、先行の距離画像における基準位置を示す図である。図22は、後続の距離画像における基準位置を示す図である。図21及び図22では、後ろを通り過ぎる消費者5の移動体識別情報を「ク」、商品棚3の前に立ち止まっている2人の消費者5の移動体識別情報を「ケ」、「コ」としている(図23〜図25も同様)。また、図21及び図22では、各消費者5に対応する基準位置を、内部に移動体識別情報を付した白丸によって図示している(図23〜図25も同様)。各基準位置の座標は、図21及び図22とも同様である。
【0081】
図18の説明に戻る。次に、制御部11は、先行の移動体領域から後続の移動体領域へのオプティカルフローを算出する(S22)。オプティカルフローとは、連続する2つの画像において、これらの画像を構成する画素毎の動きを表すベクトルを意味する。すなわち、オプティカルフローは、画像の動きを表す画素毎の速度ベクトルである。一般に、オプティカルフローを算出することによって、移動体を追跡することができる。オプティカルフローの算出方法は、公知の技術を用いれば良く、例えば、Lucas-Kanade法などを用いることができる。
【0082】
制御部11は、予め、2値化及びノイズ除去された距離画像から、先行の移動体領域及び後続の移動体領域の座標を特定しておく。そして、制御部11は、距離情報が多階調(例えば、256階調)の濃淡差によって表されている距離画像(2値化及びノイズ除去前の画像)を用いて、オプティカルフローの算出処理を行う。
【0083】
図23は、図22の距離画像におけるオプティカルフローを示す図である。図23では、説明の便宜上、移動体クに対するオプティカルフローを複数の短い直線によって示している。図23を見ると、「ク」の白丸の周辺に無数の短い直線が付されていることが分かる。実際には、消費者5同士の境界が明確にされていないことから、制御部11は、消費者5ごとにオプティカルフローを算出することができない。従って、図23では、制御部11が画像全体でオプティカルフローを算出している。
【0084】
図18の説明に戻る。次に、制御部11は、基準位置から所定の探索範囲に含まれるオプティカルフローを探索する(S23)。所定の探索範囲は、基準位置の座標点を中心とした円形、楕円形、矩形などである。円形であれば、基準位置の座標点から等距離の範囲を探索範囲とすることができる。また、所定の探索範囲は、例えば、人体の直立状態を楕円形によってモデル化し、距離画像センサ2を設置した位置の高さ、距離画像センサ2の設置角度、距離画像センサ2の画角等をパラメータとして座標変換させたものであっても良い。
【0085】
図24は、オプティカルフローの探索範囲を示す図である。図24では、各移動体ク、ケ、コに対して、それぞれ円形の探索範囲を示している。図24に示す例では、複数の探索範囲が共通の画素を含まないことから、制御部11は、基準位置から所定の探索範囲に含まれる全てのオプティカルフローを探索結果とする。
【0086】
一方、複数の探索範囲が共通の画素を含む場合、制御部11は、共通の画素を探索結果から除外する。すなわち、制御部11は、追跡対象の移動体と異なる移動体に関連するオプティカルフローについては、探索結果から除外する。これによって、後述する移動体の移動位置を決定する処理(S24)から他の移動体に関連するオプティカルフローを除外し、移動位置を精度良く決定することができる。
【0087】
図18の説明に戻る。次に、制御部11は、探索されたオプティカルフローに基づいて、移動体の移動位置を決定する(S24)。例えば、制御部11は、探索結果のオプティカルフロー群の平均ベクトルを、追跡対象の移動体の移動ベクトルとし、移動体の移動位置を決定する。この移動位置を重心位置とする。
【0088】
図25は、移動体の移動位置を示す図である。図25では、図24の状態から、移動体クの移動位置を追加している。移動体クの移動位置は、黒丸によって図示している。図25を見ると、移動体クが、右手前の方向に移動していることが分かる。
【0089】
実時間方式の場合、移動体追跡装置1の制御部11は、距離画像センサ2から距離情報が入力されるごとに図3(図8及び図18を含む。)の処理を行い、リアルタイムに処理結果を表示部16に表示する。ユーザが視覚的に確認できるように、制御部11は、例えば、距離情報が多階調の濃淡差によって表されている距離画像に、図21〜図25の基準位置(移動位置)を示す図形などを重畳して、表示部16に表示する。
【0090】
また、非実時間方式の場合、移動体追跡装置1の制御部11は、全てのフレームに対して図3(図8及び図18を含む。)の処理を行った後、少なくとも「分離」の形態については、時系列を逆にして図3の処理を行う。これによって、「分離」の形態が含まれていても、適切に移動体識別情報を対応付けることができる。そして、制御部11は、実時間方式と同様に視覚的に処理結果を表示したり、移動体ごとの通過時刻、滞留時間、及び移動軌跡などを算出したりする。
【0091】
次に、図26を参照しながら、本発明の移動体追跡装置1を行動解析システムに適用した場合の分析例について説明する。
【0092】
図26は、分析結果の一例を示す図である。図26に示す分析結果データ7では、消費者5のID、通過時刻、通過・滞留時間、滞留判定、及びアプローチが例示されている。消費者5のIDとは、前述した移動体識別情報である。通過時刻は、消費者5がフレームインした時刻である。通過・滞留時間は、消費者5がフレームインしてフレームアウトするまでの時間である。滞留判定は、消費者5の通過・滞留時間が一定時間以上超えたか否かの判定結果である。アプローチは、消費者5が商品棚3の商品に手を伸ばしたか否かの判定結果である。本発明によれば、移動体同士が接触或いは重複していたとしても、各移動体を正確に区別した分析結果データ7を得ることができる。
【0093】
以上、本発明の移動体追跡装置1は、距離画像ごとに移動体領域を抽出し、撮影時刻が隣接する2つの距離画像から各々移動体領域を1つずつ特定し、特定された2つの移動体領域の組ごとに重複領域を抽出し、重複領域の面積情報が所定値以上であった場合には移動体領域の組が同一の移動体であると判定する。これによって、移動体同士が接触或いは重複していたとしても、各移動体を区別して追跡することができる。
【0094】
特に、本発明の移動体追跡装置1は、先行の移動体領域の1つに対して、面積情報が所定値以上となる重複領域が複数の場合、複数の移動体が結合したと判定し、後続の移動体領域の1つに対して、面積情報が所定値以上となる重複領域が複数の場合、複数の移動体が分離したと判定する。これによって、実時間方式であっても、実用に耐え得る判定精度及び計算速度を確保することができる。
【0095】
以上、添付図面を参照しながら、本発明に係る移動体追跡装置等の好適な実施形態について説明したが、本発明はかかる例に限定されない。当業者であれば、本願で開示した技術的思想の範疇内において、各種の変更例又は修正例に想到し得ることは明らかであり、それらについても当然に本発明の技術的範囲に属するものと了解される。
【符号の説明】
【0096】
1………移動体追跡装置
2………距離画像センサ
3………商品棚
4………床
5、5A、5B、5C………消費者
6………バイナリデータ
7………分析結果データ
【技術分野】
【0001】
本発明は、撮影位置から移動体までの距離情報のみが画像化された距離画像によって構成される動画像を解析し、移動体を追跡する移動体追跡装置等に関するものである。
【背景技術】
【0002】
従来から、店舗などにおける消費者の行動を解析する行動解析システムが開発されている。一般的な行動解析システムでは、ビデオカメラなどによって店舗内の移動体(例えば、消費者など)を撮影し、撮影された動画像を解析することによって、移動体の通過時刻、滞留時間、及び移動軌跡などを算出する。
【0003】
しかしながら、ビデオカメラによって撮影された動画像では、消費者の顔が判別できてしまう為、個人情報保護の観点から問題がある。この問題を解決する為に、特許文献1では、画角範囲に存在する物体までの距離データを格納する画素が2次元に配列され、各々の画素の距離データが含まれた2次元距離データを出力する距離画像センサ11と、距離画像センサ11から出力される2次元距離データを設定されたフレームレートで取得し、2次元距離データを利用して、2次元距離データに含まれる人物領域を認識し、認識した人物領域を時系列的にトラッキングすることで消費者の行動を判別し、判別した消費者の行動を記した行動履歴データを記憶する手法が開示されている。2次元距離データでは消費者の顔が判別できないので、個人情報保護の観点において全く問題がない。
【0004】
尚、特許文献1に記載の2次元距離データは、本発明が対象とする「撮影位置から移動体までの距離情報のみが画像化された画像」(以下、「距離画像」という。)の一例である。そして、本発明では、距離画像を各フレーム(動画像を構成する静止画像1枚分)とする動画像を対象とする。
【0005】
ところで、距離画像には色情報がない為、2以上の移動体が接触或いは重複していると、移動体同士の境界を判別することができないという問題がある。ここで、「重複」とは、2以上の移動体が撮影方向の奥と手前に位置し、奥の移動体の一部が手前の移動体の一部と重なって見える状態を意味する。例えば、特許文献2では、複数の人を撮像した動画像の1フレームを構成する画像を入力し、入力した画像に対して、人を撮影した場合に画像の各部において期待される頭部の大きさに応じた頭部モデルを位置をずらしつつ設定する設定モデル設定部と、設定された頭部モデルに基づいて、画像に含まれる人の頭部を抽出する頭部抽出部と、動画像に含まれる複数の画像の間で抽出された頭部を互いに関連付ける頭部関連付け部と、互いに関連付けられた頭部の軌跡の本数に基づいて動画像に含まれる人数を計測する人数計測部と、を備える人数計測装置が開示されている。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開2010−67079号公報
【特許文献2】特開2010−198566号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
一見すると、特許文献2に記載の技術は、色情報を使わなくても実現できるように思われ、距離画像に適用できるように思われる。しかしながら、特許文献2には、計測の精度を確保する為に、色分布などの特徴量を用いることが記載されており、特許文献2に記載の技術を距離画像に適用しても実用に耐えることができない。
【0008】
また、特許文献2に記載の技術では、人物が帽子やアクセサリーなどを身に付けていると、頭部抽出部が、実際は人物の頭部であるにも関わらず人物の頭部ではないと誤認識してしまうという別の問題もある。
【0009】
本発明は、前述した問題点に鑑みてなされたものであり、その目的とすることは、距離画像によって構成される動画像を解析し、移動体を追跡する場合において、移動体同士が接触或いは重複していたとしても、各移動体を区別して追跡することができる移動体追跡装置等を提供することである。
【課題を解決するための手段】
【0010】
前述した目的を達成するために第1の発明は、撮影位置から移動体までの距離情報のみが画像化された距離画像によって構成される動画像を解析し、前記移動体を追跡する移動体追跡装置であって、前記距離画像ごとに、移動体領域を抽出する移動体領域抽出手段と、撮影時刻が隣接する2つの前記距離画像から各々前記移動体領域を1つずつ特定し、特定された2つの前記移動体領域の組ごとに、重複領域を抽出する重複領域抽出手段と、前記重複領域の面積情報が所定値以上であった場合、前記移動体領域の組が同一の前記移動体であると判定する判定手段と、を具備することを特徴とする移動体追跡装置である。第1の発明によって、移動体同士が接触或いは重複していたとしても、各移動体を区別して追跡することができる。
【0011】
第1の発明における前記判定手段は、後続の前記移動体領域の1つに対して、前記面積情報が所定値以上となる前記重複領域が複数の場合、複数の前記移動体領域が結合したと判定し、先行の前記移動体領域の1つに対して、前記面積情報が所定値以上となる前記重複領域が複数の場合、複数の前記移動体領域に分離したと判定することが望ましい。これによって、距離情報をリアルタイムに入力して処理する実時間方式であっても、実用に耐え得る判定精度及び計算速度を確保することができる。
【0012】
また、第1の発明における前記判定手段によって同一の前記移動体であると判定された前記移動体領域の組について、前記移動体の移動位置を追跡する追跡手段、を更に具備することが望ましい。これによって、移動体同士が接触或いは重複していたとしても、各移動体を区別して移動位置を追跡することができる。
【0013】
また、第1の発明における前記追跡手段は、例えば、前記移動体領域の組の基準位置を算出する基準位置算出手段と、先行の前記移動体領域から後続の前記移動体領域へのオプティカルフローを算出するオプティカルフロー算出手段と、前記基準位置から所定の探索範囲に含まれる前記オプティカルフローを探索するオプティカルフロー探索手段と、探索された前記オプティカルフローに基づいて、前記移動位置を決定する移動位置決定手段と、を備える。これによって、色情報を持たない距離画像であっても、移動体の移動位置を正確に決定することができる。
【0014】
また、第1の発明における前記基準位置算出手段は、前記重複領域の重心を前記基準位置とすることが望ましい。これによって、先行の距離画像から後続の距離画像への変化の形態が、単独、結合及び分離のどれであっても対応することができる。
【0015】
また、第1の発明における前記オプティカルフロー探索手段は、追跡対象の前記移動体と異なる前記移動体に関連する前記オプティカルフローについては、探索結果から除外することが望ましい。これによって、移動体の移動位置を決定する処理から他の移動体に関連するオプティカルフローを除外し、移動位置を精度良く決定することができる。
【0016】
第2の発明は、撮影位置から移動体までの距離情報のみが画像化された距離画像によって構成される動画像を解析し、前記移動体を追跡する移動体追跡方法であって、前記距離画像ごとに、移動体領域を抽出する移動体領域抽出ステップと、撮影時刻が隣接する2つの前記距離画像から各々前記移動体領域を1つずつ特定し、特定された2つの前記移動体領域の組ごとに、重複領域を抽出する重複領域抽出ステップと、前記重複領域の面積情報が所定値以上であった場合、前記移動体領域の組が同一の前記移動体であると判定する判定ステップと、を含むことを特徴とする移動体追跡方法である。第2の発明によって、移動体同士が接触或いは重複していたとしても、各移動体を区別して追跡することができる。
【0017】
第3の発明は、コンピュータに、撮影位置から移動体までの距離情報のみが画像化された距離画像によって構成される動画像を解析し、前記移動体を追跡する移動体追跡方法を実行させるためのプログラムであって、前記コンピュータに、前記距離画像ごとに、移動体領域を抽出する移動体領域抽出ステップと、撮影時刻が隣接する2つの前記距離画像から各々前記移動体領域を1つずつ特定し、特定された2つの前記移動体領域の組ごとに、重複領域を抽出する重複領域抽出ステップと、前記重複領域の面積情報が所定値以上であった場合、前記移動体領域の組が同一の前記移動体であると判定する判定ステップと、を実行させるためのプログラムである。第3の発明を汎用のコンピュータにインストールすることによって、第1の発明の移動体追跡装置を得て、第2の発明の移動体追跡方法を実行することができる。
【発明の効果】
【0018】
本発明により、距離画像によって構成される動画像を解析し、移動体を追跡する場合において、移動体同士が接触或いは重複していたとしても、各移動体を区別して追跡することができる移動体追跡装置等を提供することができる。
【図面の簡単な説明】
【0019】
【図1】移動体追跡装置の適用例を示す図
【図2】移動体追跡装置のハードウエア構成図
【図3】移動体追跡装置の処理の概要を示すフローチャート
【図4】距離情報の一例を示す図
【図5】距離画像の一例を示す図
【図6】2値化された距離画像の一例を示す図
【図7】ノイズ除去された距離画像の一例を示す図
【図8】移動体識別処理の詳細を示すフローチャート
【図9】判定処理を説明する図
【図10】第1の例を示す図
【図11】第1の例に対する処理結果を示す図
【図12】第2の例を示す図
【図13】第2の例に対する処理結果を示す図
【図14】第3の例を示す図
【図15】第3の例に対する処理結果を示す図
【図16】第4の例を示す図
【図17】第4の例に対する処理結果を示す図
【図18】移動体追跡処理の詳細を示すフローチャート
【図19】第5の例における先行の距離画像を示す図
【図20】第5の例における後続の距離画像を示す図
【図21】先行の距離画像における基準位置を示す図
【図22】後続の距離画像における基準位置を示す図
【図23】後続の距離画像におけるオプティカルフローを示す図
【図24】オプティカルフローの探索範囲を示す図
【図25】移動体の移動位置を示す図
【図26】分析結果の一例を示す図
【発明を実施するための形態】
【0020】
以下図面に基づいて、本発明の実施形態を詳細に説明する。本発明の移動体追跡装置等は、距離画像(撮影位置から移動体までの距離情報のみが画像化された画像)を各フレームとする動画像に対して広く適用可能なものである。また、移動体としては、人間に限らず、動植物や車両に代表される装置など、単体として移動するものであれば、どのような物体にも適用できる。以下では、一例として、特許文献1(特開2010−67079号公報)のように、消費者の行動を解析する行動解析システムへの適用例について述べる。
【0021】
図1は、移動体追跡装置の適用例を示す図である。図1では、店舗の商品棚3の上に設置され、画角の範囲内に存在する物体までの距離を測定する距離画像センサ2と、距離画像センサ2から得られる距離情報を入力し、距離情報に基づいて生成される距離画像によって構成される動画像を解析し、移動体を追跡する移動体追跡装置1と、によって構成される、消費者5(5A〜5D)の行動を解析する行動解析システムを模式的に示している。図1(a)は、距離画像センサ2、商品棚3、及び消費者5等を水平方向から見た様子を示している。図1(b)は、距離画像センサ2、商品棚3、及び消費者5等を鉛直方向から見た様子を示している。
【0022】
距離画像センサ2としては、市販の距離画像センサを利用することができる。例えば、松下電工株式会社などから市販されている光波測距(Time of Flight)式の距離画像センサなどがある。光波測距式の距離画像センサは、距離画像センサに供えられたLEDから照射された近赤外光が、物体から反射して距離画像センサに返ってくる到達時間を利用して、距離画像センサの位置(すなわち撮影位置)から物体(本実施の形態では、特に、消費者5などの移動体)までの距離を2次元で配列された画素毎に計測し、各画素の距離情報を所定のフレームレート(例えば、15fps)で出力する機能を備えている。尚、市販の距離画像センサには、距離測定機能に加え、画像撮影機能を備えているセンサもあるが、個人情報保護の観点から、本発明の実施形態では、距離測定機能のみを利用し、画像撮影機能を利用しない。
【0023】
図1(a)、(b)に示すように、距離画像センサ2は、例えば、LEDの照射方向が商品棚3の上から斜め下方となるように設置される。距離画像センサ2の画角は、例えば、垂直方向(図1(a)において点線によって示す範囲)が45度、水平方向が(図1(b)において点線によって示す範囲)が60度である。尚、距離画像センサ2が斜め下方となるように設置される場合、特許文献1に示すように、距離画像センサ2から出力される距離情報は、画素から同じ距離dであっても、画角の上端の画素と下端の画素の間には、実際の高さにΔhだけ差が生じてしまう。そこで、特許文献1のように、移動体追跡装置1は、距離画像センサ2から出力される距離情報を実際の高さに変換するようにしても良い。
【0024】
図1に示す状況では、消費者5Aと消費者5Bの2人が距離画像センサ2から照射される近赤外光を受けるので、消費者5Aと消費者5Bの2人が距離画像として画像化される。このとき、消費者5Aと消費者5Bが接触していることから、両者は画素が連結した単一領域として画像化され、色情報を持たない距離画像では区別することが難しい。更に、消費者5Cが接近してくると、3者が単一領域として画像化されることもあり、区別することが一層難しくなる。尚、消費者5Cのように、帽子などを被っている消費者も考えられることから、例えば、特許文献2(特開2010−198566号公報)のように、頭部モデルなどを用いたパターンマッチング手法では、誤認識してしまう可能性が高い。本発明の移動体追跡装置1は、これらの課題を解決し、後述する処理によって、消費者5などの移動体同士が接触或いは重複していたとしても、各移動体を精度良く区別して追跡することができる。
【0025】
図2は、移動体追跡装置のハードウエア構成図である。尚、図2のハードウエア構成は一例であり、用途、目的に応じて様々な構成を採ることが可能である。
【0026】
移動体追跡装置1を実現するコンピュータは、制御部11、記憶部12、メディア入出力部13、通信制御部14、入力部15、表示部16、周辺機器I/F部17等が、バス18を介して接続される。
【0027】
制御部11は、CPU(Central Processing Unit)、ROM(Read Only Memory)、RAM(Random Access Memory)等で構成される。CPUは、記憶部12、ROM、記録媒体等に格納されるプログラムをRAM上のワークメモリ領域に呼び出して実行し、バス18を介して接続された各装置を駆動制御し、移動体追跡装置1が行う後述する処理を実現する。ROMは、不揮発性メモリであり、コンピュータのブートプログラムやBIOS等のプログラム、データ等を恒久的に保持している。RAMは、揮発性メモリであり、記憶部12、ROM、記録媒体等からロードしたプログラム、データ等を一時的に保持するとともに、制御部11が各種処理を行う為に使用するワークエリアを備える。
【0028】
記憶部12は、例えば、HDD(Hard Disk Drive)であり、制御部11が実行するプログラム、プログラム実行に必要なデータ、OS(Operating System)等が格納される。プログラムに関しては、OSに相当する制御プログラムや、後述する処理をコンピュータに実行させるためのアプリケーションプログラムが格納されている。これらの各プログラムコードは、制御部11により必要に応じて読み出されてRAMに移され、CPUに読み出されて各種の手段として実行される。
【0029】
メディア入出力部13(ドライブ装置)は、データの入出力を行い、例えば、CDドライブ(−ROM、−R、−RW等)、DVDドライブ(−ROM、−R、−RW等)等のメディア入出力装置を有する。通信制御部14は、通信制御装置、通信ポート等を有し、コンピュータとネットワーク9間の通信を媒介する通信インタフェースであり、ネットワーク9を介して、他のコンピュータ間との通信制御を行う。ネットワーク9は、有線、無線を問わない。
【0030】
入力部15は、データの入力を行い、例えば、キーボード、マウス等のポインティングデバイス、テンキー等の入力装置を有する。入力部15を介して、コンピュータに対して、操作指示、動作指示、データ入力等を行うことができる。表示部16は、CRTモニタ、液晶パネル等のディスプレイ装置、ディスプレイ装置と連携してコンピュータのビデオ機能を実現するための論理回路等(ビデオアダプタ等)を有する。尚、入力部15及び表示部16は、タッチパネルディスプレイのように、一体となっていても良い。
【0031】
周辺機器I/F(インタフェース)部17は、コンピュータに周辺機器(例えば、距離画像センサ2など)を接続させるためのポートであり、周辺機器I/F部17を介してコンピュータは周辺機器(イメージスキャナ、複合機等)とのデータの送受信を行う。周辺機器I/F部17は、USBやIEEE1394やRS−232C等で構成されており、通常複数の周辺機器I/Fを有する。周辺機器との接続形態は有線、無線を問わない。バス18は、各装置間の制御信号、データ信号等の授受を媒介する経路である。
【0032】
次に、図3に示すフローチャートに沿って、図4〜図7を適宜参照しながら、移動体追跡装置の処理の概要について説明する。
【0033】
図3は、移動体追跡装置の処理の概要を示すフローチャートである。図3では、距離画像センサ2から出力される1フレーム分の距離情報に対する処理を示している。つまり、移動体追跡装置1は、対象となるフレーム数だけ図3の処理を繰り返す。また、移動体追跡装置1は、距離画像センサ2からリアルタイムに入力するデータに対して図3に示す処理を行っても良いし(以下、「実時間方式」という。)、予め記憶部12に記憶されているデータに対して図3に示す処理を行っても良い(以下、「非実時間方式」という。)。
【0034】
図3に示すように、移動体追跡装置1の制御部11は、距離情報から距離画像を生成する(S1)。距離画像の生成処理については、例えば、特許文献1に記載の手法など、従来の技術を用いれば良い。特許文献1に記載の手法を用いる場合、制御部11は、距離画像センサ2を設置した位置の高さ、距離画像センサ2の設置角度、距離画像センサ2の画角等をパラメータとし、三角関数等を利用した算出式によって、距離情報を高さ情報に変換する。そして、制御部11は、高さ情報から、画像の濃淡を表す階調に変換し、距離画像を生成する。
【0035】
距離画像の1画素を256階調の濃淡差によって表す場合、制御部11は、各階調ごとに対応する高さが予め定めておき、各画素(例えば、水平128×垂直123画素)それぞれの高さを階調に変換することによって、各画素の256階調の距離画像を生成する。尚、距離情報を高さ情報に変換し、距離画像を生成する理由は、目視で確認した結果と解析した結果を照らし合わせて実証又は評価できるようにするためであり、距離情報をそのまま用いて距離画像を生成し、後述する処理を実行しても、本発明の目的は達成される。
【0036】
図4は、距離情報の一例を示す図である。図5は、距離画像の一例を示す図である。図4に示すように、距離情報は、例えば、タブ区切り(カンマ区切りなどでも良い。)のバイナリデータ6として距離画像センサ2から出力される。制御部11は、図4に例示するバイナリデータ6を入力し、図5に例示する距離画像を生成する。図5の例では、2人の消費者5がいることは確認できる。また、左側の消費者5は帽子をかぶっており、右側の消費者5は手に何かを持っていることも確認できる。尚、消費者5の顔は判別できないので、個人情報保護の観点においては全く問題がない。
【0037】
図3の説明に戻る。次に、制御部11は、距離画像を2値化するとともに、ノイズを除去する(S2)。2値化処理では、消費者5などの移動体を示す画素が連結している領域(以下、「移動体領域」という。)と、それ以外の床4など固定物を示す画素が連結している領域(以下、「固定物領域」という。)と、に区分する。図5を見れば分かるように、固定物領域はほとんど黒の階調となることから、2値化処理による移動体領域と固定物領域の区分は、容易かつ精度良く行うことができる。
【0038】
図6は、2値化された距離画像の一例を示す図である。図6の例では、2人の消費者5を示す2つの移動体領域が確認できる。尚、画像の四隅や移動体領域の境界付近において、若干のノイズ(図6の例では、画素値が白であるが周辺の画素と連結が乏しい画素)が残っている。
【0039】
図6に示されるノイズに対して、制御部11は、ノイズ除去処理を行う。ノイズ除去処理は、例えば、特許文献1に記載の手法など、従来の技術を用いれば良い。特許文献1に記載の手法を用いる場合、制御部11は、例えば、空間フィルタを利用した処理と、領域分割を利用した処理の2種類の処理を実行する。空間フィルタを利用した処理としては、例えば、3画素×3画素の移動平均法による平滑化処理が考えられる。また、領域分割を利用した処理としては、例えば、4近傍ラベリング処理により領域の分割を行い、領域の大きさが一定値より小さいノイズを除去することが考えられる。空間フィルタを利用した処理及び領域分割を利用した処理の両方を行うことによって、精度良く除去することができる。
【0040】
図7は、ノイズ除去された距離画像の一例を示す図である。図6の例では、ノイズが除去され、2人の消費者5を示す2つの移動体領域のみが確認できる。このように、距離画像に対して2値化処理及びノイズ除去処理を施すことによって、後述する処理を簡潔にすることができるとともに、処理の精度を上げることができる。
【0041】
制御部11は、図7に示す距離画像ごとに移動体領域を抽出し、それぞれの移動体領域に対して、移動体領域を一意に識別する情報(以下、「移動体領域識別情報」という。)を付与する。そして、移動体追跡装置1は、移動体領域識別情報と移動体領域とを対応付けて、RAMや記憶部12などに記憶しておく。尚、移動体領域識別情報は、移動体を一意に識別する情報ではなく、あくまでも、移動体領域を一意に識別する情報である。例えば、複数の移動体が接触或いは重複していて、1つの移動体領域として抽出されている場合であっても、移動体領域識別情報では、移動体を一意に識別することはできない。
【0042】
図3の説明に戻る。次に、制御部11は、移動体識別処理を行う(S3)。移動体識別処理は、隣接する2つの距離画像から特定される移動体領域の組について、同一の移動体であるか否かを判定し、移動体を識別する処理である。処理の詳細については、図8〜図17を参照しながら後述する。
【0043】
次に、制御部11は、移動体追跡処理を行う(S4)。移動体追跡処理は、移動体識別処理によって同一の移動体であると判定された移動体領域の組について、移動体の移動位置を追跡する処理である。処理の詳細については、図18〜図25を参照しながら後述する。
【0044】
このように、移動体追跡装置1は、S1〜S4の処理をフレームごとに行うことによって、個々の移動体を識別し、それぞれを区別して追跡することができる。尚、実時間方式の場合、移動体追跡装置1は、距離画像センサ2から距離情報が入力されるごとに、S1〜S4の処理を行う。一方、非実時間方式の場合、移動体追跡装置1は、距離画像センサ2から距離情報が入力されるごとに、S1〜S4の処理を行っても良いし、全てのフレームに対してS1及びS2の処理を行い、処理結果を記憶部12に記憶した後、フレームごとにS3及びS4の処理を行っても良い。ここで、S1及びS2の処理結果とは、距離画像ごとに抽出された移動体領域、すなわち、移動体領域識別情報が対応付けられた移動体領域である。そして、移動体追跡装置1は、全てのフレームに対するS1及びS2の処理結果を記憶部12から順次読み出して、フレームごとにS3及びS4の処理を行う。
【0045】
次に、図8に示すフローチャートに沿って、図9〜図17を適宜参照しながら、移動体識別処理について説明する。
【0046】
図8は、移動体識別処理の詳細を示すフローチャートである。図8では、1フレーム分の距離画像に対する処理を示している。処理内容は、実時間方式の場合も非実時間方式の場合も同様である。
【0047】
図8に示すように、移動体追跡装置1の制御部11は、先行の距離画像に移動体領域があるか否かを判定する(S11)。先行の距離画像とは、処理の対象となっている距離画像の直前のフレーム(距離情報)から生成された距離画像である。以下、時系列関係を明確にする為に、処理の対象となっている距離画像のことを「後続の距離画像」という。
【0048】
制御部11は、先行の距離画像に移動体領域がない場合(S11のNo)、後続の距離画像の移動体領域(以下、「後続の移動体領域」と省略することもある。)に、移動体を一意に識別する情報(以下、「移動体識別情報」という。)を対応付けて、移動体領域識別情報が対応付けられた移動体領域RAM又は記憶部12に記憶する(S12)。
【0049】
一方、制御部11は、先行の距離画像に移動体領域がある場合(S11のYes)、先行及び後続の距離画像から各々移動体領域を特定し、特定された2つの移動体領域の組ごとに、重複領域を抽出する(S13)。例えば、先行の距離画像にM個の移動体領域が存在し、後続の距離画像にN個の移動体領域が存在する場合、制御部11は、M×N個の移動体領域の組を特定する。そして、制御部11は、移動体領域の組ごとに、先行の移動体領域と後続の移動体領域が重複する画素群を、重複領域として抽出する。
【0050】
次に、制御部11は、面積情報が所定値以上の重複領域について、その移動体領域の組が同一の移動体であると判定し、移動体識別情報を対応付ける(S14)。ここで、面積情報とは、重複領域の面積(重複領域として抽出された画素の数×1画素のサイズ)に基づく情報である。画像全体の面積をS0、先行の移動体領域の面積をS1、後続の移動体領域の面積をS2、重複領域の面積をS3としたとき、面積情報は、例えば、S3、S3/S0、S3/S1、S3/S2などが考えられる。尚、面積情報は、これらの例に限定されるものではなく、少なくとも、重複領域の面積に基づく情報であれば良い。また、所定値は、距離画像センサ2を設置した位置の高さ、距離画像センサ2の設置角度、距離画像センサ2の画角、対象とする移動体の種類(消費者5、動植物、車両など)等に応じて、適宜適切な値を設定すれば良い。
【0051】
図9は、判定処理を説明する図である。前述した通り、距離画像では、複数の移動体が接触或いは重複している場合、1つの移動体領域として抽出されてしまう。本発明では、先行の距離画像から後続の距離画像への変化の形態を、以下の3パターンに分けて考える。
(1)結合:先行の距離画像では複数の移動体領域が離間していたが、後続の距離画像では互いに接触或いは重複していると認識される形態。
(2)分離:先行の距離画像では複数の移動体領域が互いに接触或いは重複していたが、後続の距離画像では互いに離間していると認識される形態。
(3)単独:先行の距離画像でも後続の距離画像でも1つの移動体領域として認識される形態。
【0052】
図9では、上記の3パターンの形態を判定する為の判定条件と、形態ごとの処理内容が示されている。尚、どのパターンであっても、制御部11は、重複領域の面積情報が所定値以上であった場合、その移動体領域の組が同一の移動体であると判定することには変わりがない。
【0053】
<No.1:結合パターン>制御部11は、後続の移動体領域の1つに対して、面積情報が所定値以上の重複領域が複数の場合、複数の移動体領域が結合したと判定する。そして、制御部11は、先行の移動体識別情報(複数)を、後続の移動体領域(単数)に対応付ける。
【0054】
<No.2:分離パターン>制御部11は、先行の移動体領域の1つに対して、面積情報が所定値以上の重複領域が複数の場合、複数の移動体領域に分離したと判定する。そして、制御部11は、先行の移動体識別情報(単数)から派生する新規の移動体識別情報(複数)を、後続の各移動体領域(複数)にそれぞれ対応付ける。
【0055】
<No.3:単独パターン>制御部11は、結合及び分離以外の場合、単独と判定する。そして、制御部11は、先行の移動体識別情報(単数又は複数)を、後続の移動体領域(単数)に対応付ける。
【0056】
実際には、先行の距離画像及び後続の距離画像の両方において、複数の移動体が接触或いは重複していて1つの移動体領域として認識されることがある。このような場合、判定処理では、前述した通り単独のパターンとして判定される。そして、以下に説明するように、本発明では、このような場合も、精度良く各移動体を区別して識別することができる。
【0057】
例えば、処理対象のフレームを現在としたときに、過去に1度でも離間していれば、その時に異なる移動体識別情報(複数)が対応付けられることになる。従って、実時間方式及び非実時間方式のいずれの場合にも、離間した後のフレームに対して、複数の移動体が接触或いは重複していると認識することができる。
【0058】
また、処理対象のフレームを現在としたときに、過去に1度も離間していない複数の移動体が、将来に1度でも離間すれば、その時に異なる移動体識別情報(複数)が対応付けられることになる。従って、非実時間方式の場合には、時系列が逆の順にフレームを読み出して、図8に示す処理を行えば、離間する前のフレームに対して、複数の移動体が接触或いは重複していると認識することができる。
【0059】
一方、初めてフレームインからフレームアウトするまで、複数の移動体が接触或いは重複したまま、1度も離間しなければ、図8に示す処理では、単数の移動体と判定される。そこで、例えば、前述した面積情報が極端に大きい値であれば、移動体追跡装置1は、複数の移動体であると自動的に判断したり、或いは、複数の移動体か否かの確認をユーザに要求したりしても良い。
【0060】
尚、行動解析システムの場合、複数の消費者5が1度も離間しないようなケースでは、商品を購入するか否かの意思決定の単位としては、単数と考えた方が適切であるとも言える。そこで、本発明を行動解析システムに適用する場合などは、敢えて複数の消費者5か否かの判断や確認要求を行わなくても良い。
【0061】
以下では、具体的な例として、第1の例〜第4の例を挙げて、図8に示す移動体識別処理の詳細を説明する。以下、図10〜図17において、点線によって示されている領域が「先行の移動体領域」、実線によって示されている領域が「後続の移動体領域」、斜線が付されている領域が「重複領域」である。
【0062】
図10は、第1の例を示す図である。図10(a)には、先行の移動体領域Aが示されている。また、図10(b)には、後続の移動体領域Bが示されている。以下、大文字のアルファベット1文字は、移動体領域識別情報を示している。
【0063】
図11は、第1の例に対する処理結果を示す図である。第1の例では、先行及び後続の移動体領域がそれぞれ1つであるから、移動体領域の組は1つである。図11(a)では、先行の移動体領域Aと後続の移動体領域Bの組に対して、重複領域ABを示している。移動体追跡装置1の制御部11は、重複領域ABの面積情報が所定値以上であると判定する。以下、大文字のアルファベット2文字は、重複領域識別情報を示している。
【0064】
図11(b)では、移動体領域の組を直線によって示している。また、それぞれの組に関する重複領域の面積情報が所定値以上である場合、直線に白丸に囲まれた片仮名「ア」を付している。この片仮名「ア」は、移動体識別情報である(以下、他の例でも同様。)。つまり、図11(b)では、第1の例は、面積情報が所定値以上の重複領域が1つであり、単独の形態であることを示している。そして、制御部11は、先行の移動体領域Aに対応付けられていた移動体識別情報アを、後続の移動体領域Bに対応付けて、RAM又は記憶部12に記憶する。
【0065】
図12は、第2の例を示す図である。図12(a)には、先行の移動体領域C、Dが示されている。また、図12(b)には、後続の移動体領域E、Fが示されている。
【0066】
図13は、第2の例に対する処理結果を示す図である。第2の例では、先行及び後続の移動体領域がそれぞれ2つであるから、移動体領域の組は2×2=4つである。図13(a)では、先行の移動体領域Cと後続の移動体領域Eの組に対して、重複領域CEを示している。図13(b)では、先行の移動体領域Dと後続の移動体領域Eの組に対して、重複領域が存在しないことを示している。図13(c)では、先行の移動体領域Cと後続の移動体領域Fの組に対して、重複領域が存在しないことを示している。図13(d)では、先行の移動体領域Dと後続の移動体領域Fの組に対して、重複領域DFを示している。移動体追跡装置1の制御部11は、重複領域CE及びDFの面積情報が所定値以上であると判定する。
【0067】
図13(e)では、4つの移動体領域の組が直線によって示している。また、重複領域CEの面積情報が所定値以上であるから、先行の移動体領域Cと後続の移動体領域Eの組に対して、移動体識別情報「イ」を付している。また、重複領域DFの面積情報も所定値以上であるから、先行の移動体領域Dと後続の移動体領域Fの組に対して、移動体識別情報「ウ」を付している。つまり、図13(e)では、第2の例は、面積情報が所定値以上の重複領域が2つであり、単独の形態であることを示している。そして、制御部11は、先行の移動体領域Cに対応付けられていた移動体識別情報イを、後続の移動体領域Eに対応付けて、RAM又は記憶部12に記憶する。同様に、制御部11は、先行の移動体領域Dに対応付けられていた移動体識別情報ウを、後続の移動体領域Fに対応付けて、RAM又は記憶部12に記憶する。
【0068】
図14は、第3の例を示す図である。図14(a)には、先行の移動体領域G、Hが示されている。また、図14(b)には、後続の移動体領域Jが示されている。
【0069】
図15は、第3の例に対する処理結果を示す図である。第3の例では、先行の移動体領域が2つ、後続の移動体領域が1つであるから、移動体領域の組は2×1=2つである。図15(a)では、先行の移動体領域Gと後続の移動体領域Jの組に対して、重複領域GJを示している。図15(b)では、先行の移動体領域Hと後続の移動体領域Jの組に対して、重複領域HJを示している。移動体追跡装置1の制御部11は、重複領域GJ及びHJの面積情報が所定値以上であると判定する。
【0070】
図15(c)では、2つの移動体領域の組が直線によって示している。また、重複領域GJの面積情報が所定値以上であるから、先行の移動体領域Gと後続の移動体領域Jの組に対して、移動体識別情報「エ」を付している。また、重複領域HJの面積情報も所定値以上であるから、先行の移動体領域Hと後続の移動体領域Jの組に対して、移動体識別情報「オ」を付している。つまり、図15(c)では、第3の例は、面積情報が所定値以上の重複領域が2つであり、結合の形態であることを示している。そして、制御部11は、先行の移動体領域Gに対応付けられていた移動体識別情報エを、後続の移動体領域Jに対応付けて、RAM又は記憶部12に記憶する。同様に、制御部11は、先行の移動体領域Hに対応付けられていた移動体識別情報オを、後続の移動体領域Jに対応付けて、RAM又は記憶部12に記憶する。
【0071】
図16は、第4の例を示す図である。図16(a)には、先行の移動体領域Kが示されている。また、図16(b)には、後続の移動体領域L、Mが示されている。
【0072】
図17は、第4の例に対する処理結果を示す図である。第4の例では、先行の移動体領域が1つ、後続の移動体領域が2つであるから、移動体領域の組は1×2=2つである。図17(a)では、先行の移動体領域Kと後続の移動体領域Lの組に対して、重複領域KLを示している。図17(b)では、先行の移動体領域Kと後続の移動体領域Mの組に対して、重複領域KMを示している。移動体追跡装置1の制御部11は、重複領域KL及びKMの面積情報が所定値以上であると判定する。
【0073】
図17(c)では、2つの移動体領域の組が直線によって示している。また、重複領域KLの面積情報が所定値以上であるから、先行の移動体領域Kと後続の移動体領域Lの組に対して、移動体識別情報「カ」を付している。また、重複領域KMの面積情報も所定値以上であるから、先行の移動体領域Kと後続の移動体領域Mの組に対して、移動体識別情報「キ」を付している。つまり、図17(c)では、第4の例は、面積情報が所定値以上の重複領域が2つであり、結合の形態であることを示している。そして、制御部11は、先行の移動体領域Kに対応付けられていた移動体識別情報カを、後続の移動体領域Lに対応付けて、RAM又は記憶部12に記憶する。同様に、制御部11は、先行の移動体領域Kに対応付けられていた移動体識別情報キを、後続の移動体領域Mに対応付けて、RAM又は記憶部12に記憶する。
【0074】
前述した第1の例〜第4の例は、説明を分かり易くする為に単純な形態としている。例えば、1組の距離画像の中に、分離や結合の形態が複数存在したり、単独、分離及び結合が混在したりしている場合であっても、第1の例〜第4の例と同様に処理を実行することができる。
【0075】
次に、図18に示すフローチャートに沿って移動体追跡処理を説明しながら、図19〜図25に示す第5の例に対する具体的な処理内容についても合わせて説明する。
【0076】
図18は、移動体追跡処理の詳細を示すフローチャートである。図18では、1フレーム分の距離画像に対する処理を示している。処理内容は、実時間方式の場合も非実時間方式の場合も同様である。また、「先行」及び「後続」の用語の意味は、図8等の説明と同様である。
【0077】
図19は、第5の例における先行の距離画像を示す図である。図20は、第5の例における後続の距離画像を示す図である。第5の例では、2人の消費者5が接触しながら商品棚3の前に立ち止まっており、他の1人の消費者5が重複しながら後ろを通り過ぎようとしている。そして、図19から図20にかけて、商品棚3の前に立ち止まっている2人の消費者5はほとんど移動せず、他の1人の消費者5は右手前の方向に移動している。第5の例では、3人の消費者5が接触或いは重複していることから、単一の領域として2値化されるが、図8に示す処理を実行することによって、それぞれ異なる移動体識別情報が対応付けられている。尚、消費者5同士の境界は明確にされていない。
【0078】
図18に示すように、移動体追跡装置1の制御部11は、移動体領域の組の基準位置を算出する(S21)。基準位置は、先行の距離画像の撮影時刻における各移動体の位置を代表する座標(画像内の2次元座標)である。
【0079】
例えば、先行の距離画像から後続の距離画像への変化の形態が「単独」の場合、制御部11は、先行の移動体領域又は重複領域の重心を、先行の移動体領域の基準位置とすれば良い。また、「結合」の場合、制御部11は、先行の移動体領域又は重複領域の重心を、先行の移動体領域の基準位置とすれば良い。一方、「分離」の場合、制御部11は、重複領域の重心を、先行の移動体領域の基準位置とする。なぜならば、「分離」の場合、先行の移動体領域が、他の移動体の領域も含んでいることから、先行の移動体領域の重心を基準位置とすると、その移動体の位置を代表する座標として適切ではないからである。以上から、全ての形態に対応する為に、制御部11は、重複領域の重心を、先行の移動体領域の基準位置とすることが望ましい。
【0080】
図21は、先行の距離画像における基準位置を示す図である。図22は、後続の距離画像における基準位置を示す図である。図21及び図22では、後ろを通り過ぎる消費者5の移動体識別情報を「ク」、商品棚3の前に立ち止まっている2人の消費者5の移動体識別情報を「ケ」、「コ」としている(図23〜図25も同様)。また、図21及び図22では、各消費者5に対応する基準位置を、内部に移動体識別情報を付した白丸によって図示している(図23〜図25も同様)。各基準位置の座標は、図21及び図22とも同様である。
【0081】
図18の説明に戻る。次に、制御部11は、先行の移動体領域から後続の移動体領域へのオプティカルフローを算出する(S22)。オプティカルフローとは、連続する2つの画像において、これらの画像を構成する画素毎の動きを表すベクトルを意味する。すなわち、オプティカルフローは、画像の動きを表す画素毎の速度ベクトルである。一般に、オプティカルフローを算出することによって、移動体を追跡することができる。オプティカルフローの算出方法は、公知の技術を用いれば良く、例えば、Lucas-Kanade法などを用いることができる。
【0082】
制御部11は、予め、2値化及びノイズ除去された距離画像から、先行の移動体領域及び後続の移動体領域の座標を特定しておく。そして、制御部11は、距離情報が多階調(例えば、256階調)の濃淡差によって表されている距離画像(2値化及びノイズ除去前の画像)を用いて、オプティカルフローの算出処理を行う。
【0083】
図23は、図22の距離画像におけるオプティカルフローを示す図である。図23では、説明の便宜上、移動体クに対するオプティカルフローを複数の短い直線によって示している。図23を見ると、「ク」の白丸の周辺に無数の短い直線が付されていることが分かる。実際には、消費者5同士の境界が明確にされていないことから、制御部11は、消費者5ごとにオプティカルフローを算出することができない。従って、図23では、制御部11が画像全体でオプティカルフローを算出している。
【0084】
図18の説明に戻る。次に、制御部11は、基準位置から所定の探索範囲に含まれるオプティカルフローを探索する(S23)。所定の探索範囲は、基準位置の座標点を中心とした円形、楕円形、矩形などである。円形であれば、基準位置の座標点から等距離の範囲を探索範囲とすることができる。また、所定の探索範囲は、例えば、人体の直立状態を楕円形によってモデル化し、距離画像センサ2を設置した位置の高さ、距離画像センサ2の設置角度、距離画像センサ2の画角等をパラメータとして座標変換させたものであっても良い。
【0085】
図24は、オプティカルフローの探索範囲を示す図である。図24では、各移動体ク、ケ、コに対して、それぞれ円形の探索範囲を示している。図24に示す例では、複数の探索範囲が共通の画素を含まないことから、制御部11は、基準位置から所定の探索範囲に含まれる全てのオプティカルフローを探索結果とする。
【0086】
一方、複数の探索範囲が共通の画素を含む場合、制御部11は、共通の画素を探索結果から除外する。すなわち、制御部11は、追跡対象の移動体と異なる移動体に関連するオプティカルフローについては、探索結果から除外する。これによって、後述する移動体の移動位置を決定する処理(S24)から他の移動体に関連するオプティカルフローを除外し、移動位置を精度良く決定することができる。
【0087】
図18の説明に戻る。次に、制御部11は、探索されたオプティカルフローに基づいて、移動体の移動位置を決定する(S24)。例えば、制御部11は、探索結果のオプティカルフロー群の平均ベクトルを、追跡対象の移動体の移動ベクトルとし、移動体の移動位置を決定する。この移動位置を重心位置とする。
【0088】
図25は、移動体の移動位置を示す図である。図25では、図24の状態から、移動体クの移動位置を追加している。移動体クの移動位置は、黒丸によって図示している。図25を見ると、移動体クが、右手前の方向に移動していることが分かる。
【0089】
実時間方式の場合、移動体追跡装置1の制御部11は、距離画像センサ2から距離情報が入力されるごとに図3(図8及び図18を含む。)の処理を行い、リアルタイムに処理結果を表示部16に表示する。ユーザが視覚的に確認できるように、制御部11は、例えば、距離情報が多階調の濃淡差によって表されている距離画像に、図21〜図25の基準位置(移動位置)を示す図形などを重畳して、表示部16に表示する。
【0090】
また、非実時間方式の場合、移動体追跡装置1の制御部11は、全てのフレームに対して図3(図8及び図18を含む。)の処理を行った後、少なくとも「分離」の形態については、時系列を逆にして図3の処理を行う。これによって、「分離」の形態が含まれていても、適切に移動体識別情報を対応付けることができる。そして、制御部11は、実時間方式と同様に視覚的に処理結果を表示したり、移動体ごとの通過時刻、滞留時間、及び移動軌跡などを算出したりする。
【0091】
次に、図26を参照しながら、本発明の移動体追跡装置1を行動解析システムに適用した場合の分析例について説明する。
【0092】
図26は、分析結果の一例を示す図である。図26に示す分析結果データ7では、消費者5のID、通過時刻、通過・滞留時間、滞留判定、及びアプローチが例示されている。消費者5のIDとは、前述した移動体識別情報である。通過時刻は、消費者5がフレームインした時刻である。通過・滞留時間は、消費者5がフレームインしてフレームアウトするまでの時間である。滞留判定は、消費者5の通過・滞留時間が一定時間以上超えたか否かの判定結果である。アプローチは、消費者5が商品棚3の商品に手を伸ばしたか否かの判定結果である。本発明によれば、移動体同士が接触或いは重複していたとしても、各移動体を正確に区別した分析結果データ7を得ることができる。
【0093】
以上、本発明の移動体追跡装置1は、距離画像ごとに移動体領域を抽出し、撮影時刻が隣接する2つの距離画像から各々移動体領域を1つずつ特定し、特定された2つの移動体領域の組ごとに重複領域を抽出し、重複領域の面積情報が所定値以上であった場合には移動体領域の組が同一の移動体であると判定する。これによって、移動体同士が接触或いは重複していたとしても、各移動体を区別して追跡することができる。
【0094】
特に、本発明の移動体追跡装置1は、先行の移動体領域の1つに対して、面積情報が所定値以上となる重複領域が複数の場合、複数の移動体が結合したと判定し、後続の移動体領域の1つに対して、面積情報が所定値以上となる重複領域が複数の場合、複数の移動体が分離したと判定する。これによって、実時間方式であっても、実用に耐え得る判定精度及び計算速度を確保することができる。
【0095】
以上、添付図面を参照しながら、本発明に係る移動体追跡装置等の好適な実施形態について説明したが、本発明はかかる例に限定されない。当業者であれば、本願で開示した技術的思想の範疇内において、各種の変更例又は修正例に想到し得ることは明らかであり、それらについても当然に本発明の技術的範囲に属するものと了解される。
【符号の説明】
【0096】
1………移動体追跡装置
2………距離画像センサ
3………商品棚
4………床
5、5A、5B、5C………消費者
6………バイナリデータ
7………分析結果データ
【特許請求の範囲】
【請求項1】
撮影位置から移動体までの距離情報のみが画像化された距離画像によって構成される動画像を解析し、前記移動体を追跡する移動体追跡装置であって、
前記距離画像ごとに、移動体領域を抽出する移動体領域抽出手段と、
撮影時刻が隣接する2つの前記距離画像から各々前記移動体領域を1つずつ特定し、特定された2つの前記移動体領域の組ごとに、重複領域を抽出する重複領域抽出手段と、
前記重複領域の面積情報が所定値以上であった場合、前記移動体領域の組が同一の前記移動体であると判定する判定手段と、
を具備することを特徴とする移動体追跡装置。
【請求項2】
前記判定手段は、
後続の前記移動体領域の1つに対して、前記面積情報が所定値以上となる前記重複領域が複数の場合、複数の前記移動体領域が結合したと判定し、
先行の前記移動体領域の1つに対して、前記面積情報が所定値以上となる前記重複領域が複数の場合、複数の前記移動体領域に分離したと判定する
ことを特徴とする請求項1に記載の移動体追跡装置。
【請求項3】
前記判定手段によって同一の前記移動体であると判定された前記移動体領域の組について、前記移動体の移動位置を追跡する追跡手段、
を更に具備することを特徴とする請求項2に記載の移動体追跡装置。
【請求項4】
前記追跡手段は、
前記移動体領域の組の基準位置を算出する基準位置算出手段と、
先行の前記移動体領域から後続の前記移動体領域へのオプティカルフローを算出するオプティカルフロー算出手段と、
前記基準位置から所定の探索範囲に含まれる前記オプティカルフローを探索するオプティカルフロー探索手段と、
探索された前記オプティカルフローに基づいて、前記移動位置を決定する移動位置決定手段と、
を備えることを特徴とする請求項3に記載の移動体追跡装置。
【請求項5】
前記基準位置算出手段は、前記重複領域の重心を前記基準位置とする
ことを特徴とする請求項4に記載の移動体追跡装置。
【請求項6】
前記オプティカルフロー探索手段は、追跡対象の前記移動体と異なる前記移動体に関連する前記オプティカルフローについては、探索結果から除外する
ことを特徴とする請求項4又は請求項5に記載の移動体追跡装置。
【請求項7】
撮影位置から移動体までの距離情報のみが画像化された距離画像によって構成される動画像を解析し、前記移動体を追跡する移動体追跡方法であって、
前記距離画像ごとに、移動体領域を抽出する移動体領域抽出ステップと、
撮影時刻が隣接する2つの前記距離画像から各々前記移動体領域を1つずつ特定し、特定された2つの前記移動体領域の組ごとに、重複領域を抽出する重複領域抽出ステップと、
前記重複領域の面積情報が所定値以上であった場合、前記移動体領域の組が同一の前記移動体であると判定する判定ステップと、
を含むことを特徴とする移動体追跡方法。
【請求項8】
コンピュータに、撮影位置から移動体までの距離情報のみが画像化された距離画像によって構成される動画像を解析し、前記移動体を追跡する移動体追跡方法を実行させるためのプログラムであって、
前記コンピュータに、
前記距離画像ごとに、移動体領域を抽出する移動体領域抽出ステップと、
撮影時刻が隣接する2つの前記距離画像から各々前記移動体領域を1つずつ特定し、特定された2つの前記移動体領域の組ごとに、重複領域を抽出する重複領域抽出ステップと、
前記重複領域の面積情報が所定値以上であった場合、前記移動体領域の組が同一の前記移動体であると判定する判定ステップと、
を実行させるためのプログラム。
【請求項1】
撮影位置から移動体までの距離情報のみが画像化された距離画像によって構成される動画像を解析し、前記移動体を追跡する移動体追跡装置であって、
前記距離画像ごとに、移動体領域を抽出する移動体領域抽出手段と、
撮影時刻が隣接する2つの前記距離画像から各々前記移動体領域を1つずつ特定し、特定された2つの前記移動体領域の組ごとに、重複領域を抽出する重複領域抽出手段と、
前記重複領域の面積情報が所定値以上であった場合、前記移動体領域の組が同一の前記移動体であると判定する判定手段と、
を具備することを特徴とする移動体追跡装置。
【請求項2】
前記判定手段は、
後続の前記移動体領域の1つに対して、前記面積情報が所定値以上となる前記重複領域が複数の場合、複数の前記移動体領域が結合したと判定し、
先行の前記移動体領域の1つに対して、前記面積情報が所定値以上となる前記重複領域が複数の場合、複数の前記移動体領域に分離したと判定する
ことを特徴とする請求項1に記載の移動体追跡装置。
【請求項3】
前記判定手段によって同一の前記移動体であると判定された前記移動体領域の組について、前記移動体の移動位置を追跡する追跡手段、
を更に具備することを特徴とする請求項2に記載の移動体追跡装置。
【請求項4】
前記追跡手段は、
前記移動体領域の組の基準位置を算出する基準位置算出手段と、
先行の前記移動体領域から後続の前記移動体領域へのオプティカルフローを算出するオプティカルフロー算出手段と、
前記基準位置から所定の探索範囲に含まれる前記オプティカルフローを探索するオプティカルフロー探索手段と、
探索された前記オプティカルフローに基づいて、前記移動位置を決定する移動位置決定手段と、
を備えることを特徴とする請求項3に記載の移動体追跡装置。
【請求項5】
前記基準位置算出手段は、前記重複領域の重心を前記基準位置とする
ことを特徴とする請求項4に記載の移動体追跡装置。
【請求項6】
前記オプティカルフロー探索手段は、追跡対象の前記移動体と異なる前記移動体に関連する前記オプティカルフローについては、探索結果から除外する
ことを特徴とする請求項4又は請求項5に記載の移動体追跡装置。
【請求項7】
撮影位置から移動体までの距離情報のみが画像化された距離画像によって構成される動画像を解析し、前記移動体を追跡する移動体追跡方法であって、
前記距離画像ごとに、移動体領域を抽出する移動体領域抽出ステップと、
撮影時刻が隣接する2つの前記距離画像から各々前記移動体領域を1つずつ特定し、特定された2つの前記移動体領域の組ごとに、重複領域を抽出する重複領域抽出ステップと、
前記重複領域の面積情報が所定値以上であった場合、前記移動体領域の組が同一の前記移動体であると判定する判定ステップと、
を含むことを特徴とする移動体追跡方法。
【請求項8】
コンピュータに、撮影位置から移動体までの距離情報のみが画像化された距離画像によって構成される動画像を解析し、前記移動体を追跡する移動体追跡方法を実行させるためのプログラムであって、
前記コンピュータに、
前記距離画像ごとに、移動体領域を抽出する移動体領域抽出ステップと、
撮影時刻が隣接する2つの前記距離画像から各々前記移動体領域を1つずつ特定し、特定された2つの前記移動体領域の組ごとに、重複領域を抽出する重複領域抽出ステップと、
前記重複領域の面積情報が所定値以上であった場合、前記移動体領域の組が同一の前記移動体であると判定する判定ステップと、
を実行させるためのプログラム。
【図1】
【図2】
【図3】
【図4】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図26】
【図5】
【図6】
【図7】
【図19】
【図20】
【図21】
【図22】
【図23】
【図24】
【図25】
【図2】
【図3】
【図4】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図26】
【図5】
【図6】
【図7】
【図19】
【図20】
【図21】
【図22】
【図23】
【図24】
【図25】
【公開番号】特開2013−58054(P2013−58054A)
【公開日】平成25年3月28日(2013.3.28)
【国際特許分類】
【出願番号】特願2011−195538(P2011−195538)
【出願日】平成23年9月8日(2011.9.8)
【出願人】(000002897)大日本印刷株式会社 (14,506)
【Fターム(参考)】
【公開日】平成25年3月28日(2013.3.28)
【国際特許分類】
【出願日】平成23年9月8日(2011.9.8)
【出願人】(000002897)大日本印刷株式会社 (14,506)
【Fターム(参考)】
[ Back to top ]