(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-05-17
(45)【発行日】2024-05-27
(54)【発明の名称】情報処理装置、方法およびプログラム
(51)【国際特許分類】
G06T 7/20 20170101AFI20240520BHJP
【FI】
G06T7/20 300Z
(21)【出願番号】P 2021037437
(22)【出願日】2021-03-09
【審査請求日】2023-02-17
(73)【特許権者】
【識別番号】000003078
【氏名又は名称】株式会社東芝
(74)【代理人】
【識別番号】110003708
【氏名又は名称】弁理士法人鈴榮特許綜合事務所
(72)【発明者】
【氏名】登内 洋次郎
(72)【発明者】
【氏名】山内 康晋
(72)【発明者】
【氏名】池 司
【審査官】藤原 敬利
(56)【参考文献】
【文献】特開2021-033430(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06T 7/20
G06T 1/00 - 1/40
G06T 3/00 - 7/90
G06V 10/00 -20/90
H04N 5/222- 5/257
H04N 7/18
(57)【特許請求の範囲】
【請求項1】
所定領域を撮影した画像データを取得する第1の取得部と、
前記画像データに基づいて、前記画像データに含まれる対象物の複数の部位の動作に関する部位動作情報を生成する第1の処理部と、
前記対象物からのセンサデータを取得する第2の取得部と、
前記センサデータに基づいて、センサの動作に関するセンサ動作情報を生成する第2の処理部と、
前記部位動作情報および前記センサ動作情報に基づいて、前記画像データに含まれる対象物と前記センサとの関係を特定する特定部と
を具備
し、
前記部位動作情報は、対象物の複数の部位の移動軌跡の情報を含み、
前記センサ動作情報は、センサデータに含まれる計測データの時系列の情報を含み、
前記部位動作情報および前記センサ動作情報に基づいて、前記移動軌跡の情報と前記時系列の情報との相関値を計算する計算部
を更に具備し、
前記特定部は、前記相関値の計算結果に基づいて、相関値が高い順に対象物の部位の移動軌跡の情報と前記時系列の情報との組み合わせを決定し、前記関係を特定する、情報処理装置。
【請求項2】
前記計算部は、前記移動軌跡の情報と前記時系列の情報との時間軸上での類似度が高い組み合わせについて前記相関値を計算する、
請求項
1に記載の情報処理装置。
【請求項3】
前記第1の処理部は、前記画像データに含まれる対象物を検出し、前記検出した対象物の姿勢を推定し、前記検出した対象物を追跡することによって、前記部位動作情報を生成する、
請求項1
または請求項
2に記載の情報処理装置。
【請求項4】
前記第1の処理部は、前記検出した対象物に人体骨格モデルを当てはめることによって姿勢を推定する、
請求項
3に記載の情報処理装置。
【請求項5】
前記複数の部位は、センサが内蔵されるデバイスに基づいて決定される、
請求項1から請求項
4までのいずれか一項に記載の情報処理装置。
【請求項6】
前記デバイスは、ウェアラブルデバイスまたは携帯端末である、
請求項
5に記載の情報処理装置。
【請求項7】
所定領域を撮影した画像データを取得する
第1のステップと、
前記画像データに基づいて、前記画像データに含まれる対象物の複数の部位の動作に関する部位動作情報を生成する
第2のステップと、
前記対象物からのセンサデータを取得する
第3のステップと、
前記センサデータに基づいて、センサの動作に関するセンサ動作情報を生成する
第4のステップと、
前記部位動作情報および前記センサ動作情報に基づいて、前記画像データに含まれる対象物と前記センサとの関係を特定する
第5のステップと
を具備
し、
前記部位動作情報は、対象物の複数の部位の移動軌跡の情報を含み、
前記センサ動作情報は、センサデータに含まれる計測データの時系列の情報を含み、
前記部位動作情報および前記センサ動作情報に基づいて、前記移動軌跡の情報と前記時系列の情報との相関値を計算する第6のステップ
を更に具備し、
前記第5のステップは、前記相関値の計算結果に基づいて、相関値が高い順に対象物の部位の移動軌跡の情報と前記時系列の情報との組み合わせを決定し、前記関係を特定する、情報処理方法。
【請求項8】
コンピュータ
を
所定領域を撮影した画像データを取得する
第1の手段と、
前記画像データに基づいて、前記画像データに含まれる対象物の複数の部位の動作に関する部位動作情報を生成する
第2の手段と、
前記対象物からのセンサデータを取得する
第3の手段と、
前記センサデータに基づいて、センサの動作に関するセンサ動作情報を生成する
第4の手段と、
前記部位動作情報および前記センサ動作情報に基づいて、前記画像データに含まれる対象物と前記センサとの関係を特定する
第5の手段
として機能させ
、
前記部位動作情報は、対象物の複数の部位の移動軌跡の情報を含み、
前記センサ動作情報は、センサデータに含まれる計測データの時系列の情報を含み、
前記部位動作情報および前記センサ動作情報に基づいて、前記移動軌跡の情報と前記時系列の情報との相関値を計算する第6の手段
として更に機能させ、
前記第5の手段は、前記相関値の計算結果に基づいて、相関値が高い順に対象物の部位の移動軌跡の情報と前記時系列の情報との組み合わせを決定し、前記関係を特定する、情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明の実施形態は、情報処理装置、方法およびプログラムに関する。
【背景技術】
【0002】
製造現場において、カメラなどの撮影装置によって作業者の行動を動画で記録し、記録した動画を用いて作業効率の改善に利用する事例が増えてきている。このとき、動画に写っている作業者を特定することが求められ、例えば、作業者の服装および顔に着目して解析することによって、作業者を特定する技術が知られている。しかし、製造現場では、複数の作業者がみな同じ作業着を着用している場合が多く、またヘルメットを被っていて顔がはっきりと写らない場合が多いため、上記技術では作業者を特定することが困難である。
【0003】
また別の例では、撮影装置によって記録した動画と、動画に写っている人物が所持している携帯端末の加速度センサによって計測されたデータ(センサデータ)とに基づいて上記人物を特定する技術が知られている。この技術では、動画データから解析される人物の歩行ピッチおよび位相と、センサデータから取得される人物の歩行ピッチおよび位相とをそれぞれマッチングさせることによって人物を特定している。しかし、この技術では、携帯端末の装着位置によってセンサの位置が変わるためマッチングの精度が低下する可能性がある。よって、センサの装着位置によらず、動画データの人物とセンサデータの人物とを精度良くマッチングさせる技術が求められている。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
本発明が解決しようとする課題は、センサの装着位置によらず、動画データの人物とセンサデータの人物とを精度良くマッチングさせることができる情報処理装置、方法およびプログラムを提供することである。
【課題を解決するための手段】
【0006】
一実施形態に係る情報処理装置は、第1の取得部と、第1の処理部と、第2の取得部と、第2の処理部と、特定部とを備える。第1の取得部は、所定領域を撮影した画像データを取得する。第1の処理部は、画像データに基づいて、画像データに含まれる対象物の複数の部位の動作に関する部位動作情報を生成する。第2の取得部は、対象物からのセンサデータを取得する。第2の処理部は、センサデータに基づいて、センサの動作に関するセンサ動作情報を生成する。特定部は、部位動作情報およびセンサ動作情報に基づいて、画像データに含まれる対象物とセンサとの関係を特定する。
【図面の簡単な説明】
【0007】
【
図1】第1の実施形態に係る情報処理装置を含む情報処理システムの構成を例示するブロック図。
【
図2】第1の実施形態に係る情報処理装置の構成を例示するブロック図。
【
図3】第1の実施形態に係る情報処理装置の運用例を示す説明図。
【
図4】第1の実施形態に係る情報処理装置の動作例を示すフローチャート。
【
図5】第1の実施形態における画像データを例示する図。
【
図6】第1の実施形態における二次元人体骨格モデルを例示する図。
【
図7】第1の実施形態における、身体各部の移動軌跡が重畳された画像データを例示する図。
【
図8】第1の実施形態における、移動軌跡の座標データを例示する図。
【
図9】第1の実施形態における、追跡IDと移動軌跡IDとの対応付けを例示するテーブル。
【
図10】第1の実施形態における、センサIDとユーザIDとの対応付けを例示するテーブル。
【
図11】第1の実施形態における、センサを内蔵した携帯端末の座標軸を例示する図。
【
図12】第1の実施形態における、センサデータの波形を例示する図。
【
図13】第1の実施形態における、移動軌跡IDと、センサIDと、センサ軸と、相関値との対応付けを例示するテーブル。
【
図14】第2の実施形態に係る情報処理装置を含む情報処理システムの構成を例示するブロック図。
【
図15】第2の実施形態に係る情報処理装置の運用例を示す説明図。
【
図16】一実施形態に係るコンピュータのハードウェア構成を例示するブロック図。
【発明を実施するための形態】
【0008】
以下、図面を参照しながら、情報処理装置の実施形態について詳細に説明する。
【0009】
(第1の実施形態)
図1は、第1の実施形態に係る情報処理装置100を含む情報処理システム1の構成を例示するブロック図である。情報処理システム1は、情報処理装置100と、出力装置110と、複数のセンサと、撮影装置130とを備える。
図1では、複数のセンサとして、第1のセンサ121および第2のセンサ122を例示する。複数のセンサのそれぞれは、例えば、複数の計測対象それぞれに関するセンサデータを生成する。計測対象は、例えば、製造現場で作業をする作業者である。例えば、第1のセンサ121および第2のセンサ122は、それぞれ異なる作業者に割り当てられる。撮影装置130は、例えば、上記製造現場を撮影する。情報処理装置100は、複数の作業者それぞれについて取得された複数のセンサデータと、複数の作業者が写っている画像データとに基づいて、画像データに写っている複数の作業者を特定する。出力装置110は、特定した複数の作業者に関する情報を含む表示データを表示する。
【0010】
なお、以降では、第1のセンサ121および第2のセンサ122を区別しない場合、単に「センサ」と記載する。
【0011】
出力装置110は、例えば、モニタである。出力装置110は、情報処理装置100から表示データを受け取る。出力装置110は、表示データを表示する。尚、出力装置110は、表示データを表示可能であればモニタに限らない。例えば、出力装置110は、プロジェクタでもよい。また、出力装置110は、スピーカを備えてもよい。
【0012】
センサは、例えば、計測対象の身体部位に装着されたウェアラブルデバイスに内蔵される。身体部位は、例えば、手首、上腕、足首、上腿、腰、背中、および頭である。また例えば、センサは、計測対象の所持する携帯端末に内蔵されていてもよい。この場合、携帯端末は、例えば、計測対象の手のひら、上着の胸ポケット、およびズボンのポケットに所持されることがある。以降では、ウェアラブルデバイスまたは携帯端末と、センサとは同様の意味で用いることとする。
【0013】
なお、衣服に設けられたポケットなどは、計測対象の身体部位と対応付けられているものとする。例えば、上着の胸ポケットであれば、身体部位の「胸」に相当し、ズボンのポケットであれば、身体部位の「上腿」に相当するものとする。また、身体部位は、単に「部位」と呼ばれてもよい。
【0014】
センサは、少なくとも一種類の物理状態を計測し、計測されたデータ(計測データ)を含むセンサデータを生成する。計測データは、例えば、加速度データ、角速度データ、地磁気データ、気圧データ、温湿度データ、筋電位データ、および脈波データである。具体的には、センサは、少なくとも加速度データを含むセンサデータを生成する。尚、気圧データを用いることによって、センサの高度を推定することができる。
【0015】
計測データは、複数のチャネルを含んでもよい。例えば、計測データが加速度データである場合、センサデータは、加速度の各方向(例えば、X軸方向、Y軸方向、およびZ軸方向)成分に対応する3チャネル分(3軸分)の計測データを含む。本実施形態では、複数のセンサとして、第1のセンサ121および第2のセンサ122を利用する場合について説明される。
【0016】
第1のセンサ121は、例えば、携帯端末に内蔵されており、計測対象の胸ポケットに所持されている。第1のセンサ121は、計測対象の移動に関する動作を計測し、計測データを含む第1のセンサデータを生成する。第1のセンサ121は、第1のセンサデータを情報処理装置100へと出力する。尚、第1のセンサデータは、第1のセンサ121を識別するためのセンサIDが対応付けられている。
【0017】
第2のセンサ122は、例えば、携帯端末に内蔵されており、計測対象のズボンのポケット(ズボンポケット)に所持されている。第2のセンサ122は、他の計測対象の移動に関する動作を計測し、計測データを含む第2のセンサデータを生成する。第2のセンサ122は、第2のセンサデータを情報処理装置100へと出力する。尚、第2のセンサデータは、第2のセンサ122を識別するためのセンサIDが対応付けられている。
【0018】
なお、以降では、第1のセンサデータおよび第2のセンサデータを区別しない場合、単に「センサデータ」と記載する。
【0019】
撮影装置130は、例えば、画像センサである。撮影装置130は、所定領域(例えば、製造現場)を撮影し、動画像を取得する。本実施形態では、撮影装置130で取得された動画像のデータを画像データと称する。撮影装置130は、取得した画像データを情報処理装置100へと出力する。尚、撮影装置130は、ビデオカメラでもよい。
【0020】
図2は、第1の実施形態に係る情報処理装置100の構成を例示するブロック図である。情報処理装置100は、画像データ取得部210(第1の取得部)と、画像データ処理部220(第1の処理部)と、センサデータ取得部230(第2の取得部)と、センサデータ処理部240(第2の処理部)と、計算部250と、特定部260とを備える。
【0021】
なお、情報処理装置100は、図示しないメモリおよびプロセッサを備えてもよい。メモリは、例えば、情報処理装置100の動作に関する各種プログラム(例えば、作業者を特定する作業者特定プログラム)を記憶する。プロセッサは、メモリに保存された各種プログラムを実行することによって、画像データ取得部210、画像データ処理部220、センサデータ取得部230、センサデータ処理部240、計算部250、および特定部260の各機能を実現する。
【0022】
画像データ取得部210は、撮影装置130から画像データを取得する。画像データ取得部210は、取得した画像データを画像データ処理部220へと出力する。尚、画像データ取得部210は、取得した画像データと取得時刻とを対応付けてもよい。
【0023】
画像データ処理部220は、画像データ取得部210から画像データを受け取る。画像データ処理部220は、画像データに基づいて、画像データに含まれる対象物(例えば、作業者)の複数の部位の動作に関する部位動作情報を生成する。画像データ処理部220は、部位動作情報を計算部250へと出力する。
【0024】
部位動作情報は、作業者の複数の部位の移動軌跡の情報(移動軌跡情報)を含む。例えば、着目する作業者の部位を二つに設定し、画像データに二人の作業者が写っている場合、部位動作情報は、四つの移動軌跡情報を含む。移動軌跡情報は、例えば、画像データの取得時刻と、画像データにおける作業者の部位の位置を示す二次元座標とを対応付けたものである。また、移動軌跡情報には、複数の移動軌跡をそれぞれ識別するための移動軌跡IDが割り当てられてもよい。
【0025】
具体的には、画像データ処理部220は、画像データに写っている人物を検出する人物検出処理を実行し、画像データから検出した全ての作業者に対して追跡IDを割り当てる。次に、画像データ処理部220は、検出した人物の姿勢を推定する姿勢推定処理を実行し、追跡IDを割り当てた全ての作業者それぞれについて二次元の人体骨格モデル(二次元人体骨格モデル)を当てはめる。次に、画像データ処理部220は、検出した人物を追跡する人物追跡処理を実行し、追跡している作業者の部位に対応する二次元人体骨格モデルの部位の移動軌跡情報を取得する。尚、画像データ処理部220は、移動軌跡情報に移動軌跡IDを割り当て、割り当てた移動軌跡IDを追跡IDと対応付けてもよい。
【0026】
なお、作業者の複数の部位は、予め決められていてもよいし、センサが内蔵されるデバイスに基づいて決定されてもよいし、ユーザが指定することによって決められてもよい。例えば、センサがリストバンド式のウェアラブルデバイスに搭載されていれば、装着位置が限定されるため、画像データ処理部220は、複数の部位として「手首」または「腕」を設定するようにしてもよい。
【0027】
センサデータ取得部230は、作業者が装着、或いは所持しているセンサからセンサデータを取得する。具体的には、センサデータ取得部230は、第1のセンサ121から第1のセンサデータを取得し、第2のセンサ122から第2のセンサデータを取得する。センサデータ取得部230は、取得した第1のセンサデータおよび第2のセンサデータをセンサデータ処理部240へと出力する。尚、センサデータ取得部230は、取得したセンサデータと取得時刻とを対応付けてもよい。
【0028】
センサデータ処理部240は、センサデータ取得部230からセンサデータを受け取る。具体的には、センサデータ処理部240は、第1のセンサデータおよび第2のセンサデータを受け取る。センサデータ処理部240は、第1のセンサデータおよび第2のセンサデータに基づいて、センサの動作に関するセンサ動作情報を生成する。センサデータ処理部240は、センサ動作情報を計算部250へと出力する。
【0029】
センサ動作情報は、センサデータに含まれる計測データの各チャネルについての時系列の情報(センサ時系列情報)を含む。例えば、一つのセンサについて3チャネル分の計測データを含むセンサデータが取得され、二つのセンサからそれぞれセンサデータを取得する場合、センサ動作情報は、六つのセンサ時系列情報を含む。センサ時系列情報は、例えば、計測データの取得時刻と、計測データの計測値とを対応付けたものである。尚、センサ時系列情報は、センサIDが対応付けられていてもよい。
【0030】
なお、センサデータ処理部240は、センサデータに含まれる計測データに対して、高周波成分の除去および所定の演算を実行した後に、センサ動作情報を生成してもよい。ノイズ成分の除去は、例えばローパスフィルタを用いた処理である。所定の演算は、例えば積分演算である。計測データが加速度を表している場合、センサデータ処理部240は、計測データに積分演算を実行することによって、速度を表すセンサ時系列情報を生成してもよい。
【0031】
計算部250は、画像データ処理部220から部位動作情報を受け取り、センサデータ処理部240からセンサ動作情報を受け取る。計算部250は、部位動作情報およびセンサ動作情報に基づいて、移動軌跡情報とセンサ時系列情報との相関値を計算する。計算部250は、計算した相関値の計算結果を特定部260へと出力する。
【0032】
具体的には、計算部250は、複数の移動軌跡情報と複数のセンサ時系列情報との全ての組み合わせについて、それぞれ相互相関を算出することによって相関値を算出する。例えば、二つの一次元信号A[t]、B[t](t=0,・・・,T-1)の相互相関C(A,B)は、以下の数式(1)を用いて算出することができる。
【0033】
【0034】
数式(1)において、二つの一次元信号A[t]、B[t]の相関が高い場合、相互相関C(A,B)の絶対値は1に近くなる。他方、相関が低い場合、絶対値はゼロに近くなる。尚、移動軌跡情報は、時刻と、画像における二次元座標とを対応付けた二次元信号である。よって、相関値を計算する場合、計算部250は、二次元座標の各座標軸(例えば、X軸およびY軸)についてそれぞれセンサ時系列情報との相関値を算出し、相関値が大きい方を計算結果として出力するものとする。
【0035】
なお、計算部250は、複数の移動軌跡情報と複数のセンサ時系列情報との全ての組み合わせのうち、時間軸上での類似度が高い組み合わせについて相関値を計算してもよい。具体的には、計算部250は、ある時刻における移動軌跡情報およびセンサ時系列情報のそれぞれの値に変動がある場合に類似度が高いと判定する。例えば、一方の作業者が立ち止まっていて、他方の作業者が歩き続けている場合、センサデータの値に歩行を示す変動があれば、計算部250は、他方の作業者について相関値を計算する。これにより、計算部250は、相関値を計算する組み合わせを絞り込むことができるため、計算量を削減することができる。
【0036】
特定部260は、部位動作情報およびセンサ動作情報に基づいて、画像データに含まれる作業者とセンサとの関係を特定する。具体的には、特定部260は、計算部250から計算結果を受け取る。そして、特定部260は、計算結果に基づいて、相関値が高い順に移動軌跡IDとセンサIDとの組み合わせを決定し、移動軌跡IDとユーザIDとを対応付けることにより、画像データに含まれる作業者とセンサとの関係を特定する。
【0037】
以上、第1の実施形態に係る情報処理システム1および情報処理装置100の構成について説明した。次に、情報処理装置100の運用例および情報処理装置100の動作例について説明する。
【0038】
図3は、第1の実施形態に係る情報処理装置100の運用例を示す説明図である。
図3には、情報処理装置100と、製造現場である作業領域300と、作業領域300で作業をする二人の作業者P1,P2と、作業領域300を撮影する撮影装置130とが示されている。
【0039】
撮影装置130は、作業領域300を略内包する撮影領域310についての画像データを情報処理装置100へと出力する。また、二人の作業者P1,P2がそれぞれ装着している、或いは携帯しているセンサは、計測したセンサデータを情報処理装置100へと出力する。
【0040】
以降の具体例では、
図3に示すように、一つの撮影装置130から取得された画像データに含まれる二人の作業者P1,P2を特定することについて述べる。尚、説明の便宜上、二人の作業者にはそれぞれ符号P1,P2を付けているが、画像データ中の作業者を特定するものではない。
【0041】
図4は、第1の実施形態における情報処理装置100の動作例を示すフローチャートである。
図4のフローチャートの処理は、ユーザによって作業者特定プログラムが実行されることで開始する。
【0042】
(ステップST410)
作業者特定プログラムが実行されると、画像データ取得部210は、撮影装置130から画像データを取得する。
【0043】
(ステップST420)
画像データが取得された後、画像データ処理部220は、画像データに基づいて部位動作情報を生成する。以下では、部位動作情報の生成に関して
図5から
図9までを参照して説明する。
【0044】
図5は、第1の実施形態における画像データ500を例示する図である。画像データ500には、二人の作業者P1,P2が写っている様子が示されている。
【0045】
画像データ処理部220は、画像データ500に対して人物検出処理を実行し、作業者P1を含む検出領域510および作業者P2を含む検出領域520を設定する。画像データ処理部220は、検出領域510の作業者P1について追跡ID「c1001」を割り当て、検出領域520の作業者P2について追跡ID「c1002」を割り当てる。このとき、画像データ処理部220は、例えば作業者を検出した順に、作業者について追跡IDを割り当てる。
【0046】
次に、画像データ処理部220は、検出領域内の作業者について姿勢推定処理を実行し、検出した作業者に二次元人体骨格モデルを当てはめる。二次元人体骨格モデルは、例えば、人体の複数のキーポイントと画像データ内の二次元座標とを対応付けている。
【0047】
図6は、第1の実施形態における二次元人体骨格モデル600を例示する図である。二次元人体骨格モデル600は、例えば、二次元座標上の人体の18個のキーポイントKP1からKP18までで表される。二次元人体骨格モデル600が正面を向いている場合、キーポイントKP1からKP18までは、それぞれ「右目」、「左目」、「右耳」、「左耳」、「鼻」、「首」、「右手」、「左手」、「右肘」、「左肘」、「右肩」、「左肩」、「右腰」、「左腰」、「右膝」、「左膝」、「右足」、および「左足」に対応している。画像データ処理部220は、例えばこれらのキーポイントと作業者の部位とを対応付けることにより、センサが装着、或いは所持される部位に着目することができる。
【0048】
次に、画像データ処理部220は、検出した作業者について人物追跡処理を実行し、作業者の部位に対応する二次元人体骨格モデルの部位の移動軌跡情報を取得する。例えば、作業者の左胸ポケットに着目する場合、画像データ処理部220は、キーポイントKP12を基準とした移動軌跡を取得する。また例えば、作業者のズボンの右に位置するポケット(以降、ズボンポケット)に着目する場合、画像データ処理部220は、キーポイントKP13を基準とした移動軌跡を取得する。着目する部位は、任意に決められてよい。
【0049】
図7は、第1の実施形態における、身体各部の移動軌跡が重畳された画像データ700を例示する図である。ここで、画像データ700の取得時間は、画像データ500の取得時間よりも進んでいる。よって、画像データ700に重畳された移動軌跡は、画像データ500の取得時間から画像データ700の取得時間までの間に移動した作業者P1,P2に設定された部位の軌跡を示している。
【0050】
画像データ700において、移動軌跡701は、作業者P1の左胸ポケットに着目した移動軌跡を示し、移動軌跡702は、作業者P1のズボンポケットに着目した移動軌跡を示し、移動軌跡703は、作業者P2の左胸ポケットに着目した移動軌跡を示し、移動軌跡704は、作業者P2のズボンポケットに着目した移動軌跡を示す。
【0051】
図8は、第1の実施形態における、移動軌跡の座標データ800を例示する図である。座標データ800は、画像データ700に重畳された四つの移動軌跡701から704までをXY座標上にプロットしたものである。X軸およびY軸は、それぞれ画像データの水平方向および垂直方向に対応する。よって、移動軌跡は、二次元座標(X[I][k][t],Y[I][k][t])で表すことができる。ここで、Iは追跡IDを示し、kは部位の位置(キーポイント)を示し、tは画像データの取得時刻を示す。例えば、二次元座標(X[c1001][KP12][t],Y[c1001][KP12][t])は、取得時刻tにおける追跡ID「c1001」のキーポイントKP12の座標位置を表す。
【0052】
以上のように、画像データ処理部220は、所定時間の間の移動軌跡を取得し、部位動作情報を生成する。この時、画像データ処理部220は、移動軌跡701から移動軌跡704までのそれぞれに対応する、移動軌跡ID「lo1」から「lo4」までを割り当てる。以下では、追跡IDに対応付けられた移動軌跡IDに関して
図9を参照して説明する。
【0053】
図9は、第1の実施形態における、追跡IDと移動軌跡IDとの対応付けを例示するテーブル900である。テーブル900は、追跡IDと移動軌跡IDとを対応付けている。例えば、追跡ID「c1001」には移動軌跡ID「lo1」および移動軌跡ID「lo2」が対応付けられ、追跡ID「c1002」には移動軌跡ID「lo3」および移動軌跡ID「lo4」が対応付けられている。
【0054】
(ステップST430)
部位動作情報が生成された後、センサデータ取得部230は、作業者が装着、或いは所持しているセンサからセンサデータを取得する。具体的には、
図3に示すように、センサデータ取得部230は、作業者P1が装着、或いは所持しているセンサ(作業者P1のセンサ)、および作業者P2が装着、或いは所持しているセンサ(作業者P2のセンサ)からそれぞれセンサデータを取得する。以下では、センサデータに対応付けられたセンサIDおよびユーザIDに関して
図10を参照して説明する。
【0055】
図10は、第1の実施形態における、センサIDとユーザIDとの対応付けを例示するテーブル1000である。テーブル1000は、センサIDとユーザIDとを対応付けている。例えば、センサID「s1001」にはユーザID「u1001」が対応付けられ、センサID「s1002」にはユーザID「u1002」が対応付けられている。
【0056】
ここで、センサが携帯端末に内蔵されている場合について具体的に説明する。携帯端末に内蔵されたセンサは、例えば携帯端末の中心を基準とした座標系に従って、それぞれの座標軸についての計測値をセンサデータとして出力する。以下では、携帯端末の座標軸とセンサデータの波形とについて
図11および
図12を用いて説明する。
【0057】
図11は、第1の実施形態における、センサを内蔵した携帯端末1100の座標軸を例示する図である。携帯端末1100では、例えば、ディスプレイの水平方向に対してX軸およびY軸が設定され、ディスプレイの垂直方向に対してZ軸が設定される。携帯端末1100に加速度センサが内蔵されている場合、センサは、X軸、Y軸、およびZ軸の方向の加速度をそれぞれ検出する。
【0058】
図12は、第1の実施形態における、センサデータの波形を例示する図である。
図12では、X軸、Y軸、およびZ軸について、それぞれ波形1210、波形1220、および波形1230が示されている。また、
図12のセンサデータは、
図11の携帯端末1100に内蔵されたセンサによって検出されたものとする。
【0059】
図12のセンサデータが加速度データである場合、センサ自体の移動方向が波形に現れる。例えば、波形1220は、時間方向に対する加速度が略ゼロを示し、波形1220は時間方向に対する加速度が周期的に変化し、波形1230も同様に時間方向に対する加速度が周期的に変化している。よって、センサは、Y軸方向またはZ軸方向へ移動していることがわかる。更に、センサの移動方向を携帯端末1100に置き換えると、携帯端末1100は、Y軸方向またはZ軸方向に移動していることがわかる。
【0060】
(ステップST440)
センサデータが取得された後、センサデータ処理部240は、センサデータに基づいてセンサ動作情報を生成する。具体的には、センサデータ処理部240は、作業者P1のセンサおよび作業者P2のセンサからそれぞれ出力されたセンサデータに基づいて、センサ動作情報を生成する。センサ動作情報は、例えば、作業者P1のセンサについて3軸それぞれの時系列情報と、作業者P2のセンサについて3軸それぞれの時系列情報とを含む六つの時系列情報である。
【0061】
なお、ステップST430の処理およびステップST440の処理は、ステップST410の処理の前に行われてもよいし、ステップST410の処理およびステップST420の処理と共に行われてもよい。
【0062】
(ステップST450)
センサ動作情報が生成された後、計算部250は、部位動作情報およびセンサ動作情報に基づいて相関値を計算する。具体的には、計算部250は、移動軌跡IDが対応付けられた移動軌跡情報と、センサIDが対応付けられたセンサ時系列情報との全ての組み合わせについて相関値を計算する。以下では、移動軌跡IDとセンサIDとの組み合わせについて
図13を参照して説明する。
【0063】
図13は、第1の実施形態における、移動軌跡IDと、センサIDと、センサ軸と、相関値との対応付けを例示するテーブル1300である。テーブル1300は、移動軌跡IDと、センサIDと、センサ軸と、相関値とを対応付けている。センサIDとセンサ軸との組み合わせにより、センサ時系列情報が一意に決定する。テーブル1300は、例えば、四つの移動軌跡、二つのセンサ、および三つのセンサ軸の組み合わせのため、合計24通りの組み合わせ(行数)を有する。尚、センサ軸の列を設けず、移動軌跡IDとセンサIDと相関値とを対応付けたテーブルでもよい。この場合、相関値の項目には、各センサ軸のうち、最も相関値が大きい値が入るものとする。
【0064】
例えば、テーブル1300の行1310に着目すると、移動軌跡ID「lo1」と、センサID「s1001」と、センサ軸「X軸」と、相関値「0」とが対応付けられている。行1310の組み合わせは、相関値「0」となっているため、移動軌跡ID「lo1」が対応付けられた移動軌跡情報は、センサID「s1001」のセンサ軸「X軸」についてのセンサ時系列情報と相関が低いことがわかる。
【0065】
また例えば、テーブル1300の行1320に着目すると、移動軌跡ID「lo1」と、センサID「s1001」と、センサ軸「Z軸」と、相関値「0.9」とが対応付けられている。行1320の組み合わせは、相関値「0.9」となっているため、移動軌跡ID「lo1」が対応付けられた移動軌跡情報は、センサID「s1001」のセンサ軸「Z軸」についてのセンサ時系列情報と相関が高いことがわかる。
【0066】
(ステップST460)
相関値が算出された後、特定部260は、計算結果に基づいて画像データに含まれる作業者とセンサとの関係を特定する。具体的には、特定部260は、移動軌跡情報とセンサ時系列情報との組み合わせのうち、相関値が高い順に移動軌跡IDとセンサIDとの組み合わせを決定する。例えば、
図13のテーブル1300の例では、行1320の移動軌跡ID「lo1」およびセンサID「s1001」の組み合わせと、行1330の移動軌跡ID「lo3」およびセンサID「s1002」の組み合わせとが相関値が高い。センサIDとユーザIDとは既に対応付けられているため(例えば、
図10を参照)、特定部260は、移動軌跡ID「lo1」およびユーザID「u1001」を対応付け、移動軌跡ID「lo3」およびユーザID「u1002」を対応付けることにより、画像データに含まれる作業者とセンサとの関係を特定することができる。
【0067】
以上説明したように、第1の実施形態に係る情報処理装置は、所定領域を撮影した画像データを取得し、画像データに基づいて、画像データに含まれる対象物の複数の部位の動作に関する部位動作情報を生成し、対象物からのセンサデータを取得し、センサデータに基づいて、センサの動作に関するセンサ動作情報を生成し、部位動作情報およびセンサ動作情報に基づいて、画像データに含まれる対象物とセンサとの関係を特定する。
【0068】
従って、第1の実施形態に係る情報処理装置は、対象物の複数の部位に関してセンサデータとのマッチングを取ることにより、センサの装着位置によらず、動画データの人物とセンサデータの人物とを精度良くマッチングさせることができる。
【0069】
(第2の実施形態)
第1の実施形態では、一つの撮影装置を用いた場合について説明した。他方、第2の実施形態では、二つの撮影装置を用いる場合について説明する。
【0070】
図14は、第2の実施形態に係る情報処理装置100Aを含む情報処理システム1Aの構成を例示するブロック図である。情報処理システム1Aは、情報処理装置100Aと、出力装置110と、複数のセンサと、複数の撮影装置とを備える。
図14では、複数のセンサとして、第1のセンサ121A、第2のセンサ122A、および第3のセンサ123Aを例示する。これらのセンサは、それぞれ異なる作業者に割り当てられる。また、
図14では、複数の撮影装置として、第1の撮影装置131Aおよび第2の撮影装置132Aを例示する。本実施形態では、第1の撮影装置131Aの撮影領域と、第2の撮影装置132Aの撮影領域とは重複しないものとする。尚、複数のセンサおよび複数の撮影装置は、第1の実施形態のセンサおよび撮影装置と同様のため、説明を省略する。
【0071】
情報処理装置100Aは、第1のセンサ121A、第2のセンサ122A、および第3のセンサ123Aからそれぞれセンサデータを取得し、第1の撮影装置131Aおよび第2の撮影装置132Aからそれぞれ画像データを取得する。情報処理装置100Aは、それぞれの画像データについて部位動作情報を生成し、生成した複数の部位動作情報それぞれとセンサ動作情報との相関値を計算することによって、それぞれの画像データに含まれる作業者とセンサとの関係を特定する。
【0072】
図15は、第2の実施形態に係る情報処理装置100Aの運用例を示す説明図である。
図15には、情報処理装置100Aと、製造現場である作業領域1500と、作業領域1500で作業をする三人の作業者P11,P12,P13と、作業領域1500を重複せずに撮影する第1の撮影装置131Aおよび第2の撮影装置132Aとが示されている。
【0073】
第1の撮影装置131Aは、作業領域1500の左半分を略内包する撮影領域1510についての第1の画像データを情報処理装置100Aへと出力する。また、第2の撮影装置132Aは、作業領域1500の右半分を略内包する撮影領域1520についての第2の画像データを情報処理装置100Aへと出力する。また、三人の作業者P11,P12,P13がそれぞれ装着している、或いは携帯しているセンサは、計測したセンサデータを情報処理装置100Aへと出力する。
【0074】
図15では、撮影領域1510において二人の作業者P11,P12が作業を行い、撮影領域1520において一人の作業者P13が作業を行っている。よって、第1の画像データには、二人の作業者P11,P12が写っており、第2の画像データには一人の作業者P13が写っている。情報処理装置100Aは、第1の画像データおよび第2の画像データのそれぞれについて第1の実施形態で説明した処理を行い、それぞれの画像データに含まれる作業者とセンサとの関係を特定する。
【0075】
以上説明したように、第2の実施形態に係る情報処理装置は、第1の実施形態に係る情報処理装置と同様に、センサの装着位置によらず、動画データの人物とセンサデータの人物とを精度良くマッチングさせることができる。
【0076】
第2の実施形態に係る情報処理装置は、上述のように複数の画像データ毎に作業者とセンサとの関係を特定する。これにより、本情報処理装置は、例えば、第1の画像データで検出された人物が移動をし、第2の画像データで検出された場合であっても、第1の画像データと第2の画像データとの間の比較をする必要がなく、マッチング精度を維持したまま処理量を削減することができる。
【0077】
(他の実施形態)
第1の実施形態および第2の実施形態に係る情報処理装置は、いずれも二次元の姿勢推定を行っていた。しかし、情報処理装置は、二次元の姿勢推定に限らず、三次元の姿勢推定(三次元姿勢推定)を行ってもよい。三次元姿勢推定を行う場合、移動軌跡情報は、時刻と、三次元空間における三次元座標とを対応付けた三次元信号である。よって、相関値を計算する場合、計算部250は、三次元座標の各座標軸(例えば、X軸、Y軸、およびZ軸)についてそれぞれセンサ時系列情報との相関値を算出し、相関値が大きい方を計算結果として出力するものとする。
【0078】
第1の実施形態および第2の実施形態に係る情報処理装置は、部位動作情報に含まれる移動軌跡情報およびセンサ動作情報に含まれるセンサ時系列情報をそれぞれ生データに近い状態で用いて相関値を計算していた。しかし、情報処理装置は、移動軌跡情報およびセンサ時系列情報に関して更なる処理を行ってもよい。
【0079】
例えば、画像データ処理部220は、移動軌跡情報を時系列データとみなして、時系列データに対して正規化、或いは特徴抽出の処理を行う。また、センサデータ処理部240は、センサ時系列情報に対して正規化、或いは特徴抽出の処理を行う。そして、計算部250は、正規化、或いは特徴抽出の処理が行われた移動軌跡情報およびセンサ時系列情報を用いて相関値を計算する。以上のように、移動軌跡情報およびセンサ時系列情報に関して更なる処理が行われることにより、情報処理装置は、処理が行われる前に比べて精度の高い相関値を計算することができる。よって、後段の特定部260による対応付けの精度を向上させることができる。
【0080】
図16は、一実施形態に係るコンピュータのハードウェア構成を例示するブロック図である。コンピュータ1600は、ハードウェアとして、CPU(Central Processing Unit)1610、RAM(Random Access Memory)1620、プログラムメモリ1630、補助記憶装置1640、入出力インタフェース1650を備える。CPU1610は、バス1660を介して、RAM1620、プログラムメモリ1630、補助記憶装置1640、および入出力インタフェース1650と通信する。
【0081】
CPU1610は、汎用プロセッサの一例である。RAM1620は、ワーキングメモリとしてCPU1610に使用される。RAM1620は、SDRAM(Synchronous Dynamic Random Access Memory)などの揮発性メモリを含む。プログラムメモリ1630は、作業者特定プログラムを含む種々のプログラムを記憶する。プログラムメモリ1630として、例えば、ROM(Read-Only Memory)、補助記憶装置1640の一部、またはその組み合わせが使用される。補助記憶装置1640は、データを非一時的に記憶する。補助記憶装置1640は、HDDまたはSSDなどの不揮発性メモリを含む。
【0082】
入出力インタフェース1650は、他のデバイスと接続、或いは通信するためのインタフェースである。入出力インタフェース1650は、例えば、
図1に示される出力装置110、第1のセンサ121、第2のセンサ122、および撮影装置130、並びに
図14に示される出力装置110、第1のセンサ121A、第2のセンサ122A、第3のセンサ123A、第1の撮影装置131A、および第2の撮影装置132Aとの接続、或いは通信に使用される。また例えば、入出力インタフェース1650は、
図1および
図14に図示していない記憶装置および外部装置との接続、或いは通信に使用されてもよい。
【0083】
プログラムメモリ1630に記憶されている各プログラムはコンピュータ実行可能命令を含む。プログラム(コンピュータ実行可能命令)は、CPU1610により実行されると、CPU1610に所定の処理を実行させる。例えば、作業者特定プログラムは、CPU1610により実行されると、CPU1610に
図4の各ステップに関して説明された一連の処理を実行させる。
【0084】
プログラムは、コンピュータで読み取り可能な記憶媒体に記憶された状態でコンピュータ1600に提供されてよい。この場合、例えば、コンピュータ1600は、記憶媒体からデータを読み出すドライブ(図示せず)をさらに備え、記憶媒体からプログラムを取得する。記憶媒体の例は、磁気ディスク、光ディスク(CD-ROM、CD-R、DVD-ROM、DVD-Rなど)、光磁気ディスク(MOなど)、半導体メモリを含む。また、プログラムを通信ネットワーク上のサーバに格納し、コンピュータ1600が入出力インタフェース1650を使用してサーバからプログラムをダウンロードするようにしてもよい。
【0085】
実施形態において説明される処理は、CPU1610などの汎用ハードウェアプロセッサがプログラムを実行することにより行われることに限らず、ASIC(Application Specific Integrated Circuit)などの専用ハードウェアプロセッサにより行われてもよい。処理回路(処理部)という語は、少なくとも1つの汎用ハードウェアプロセッサ、少なくとも1つの専用ハードウェアプロセッサ、または少なくとも1つの汎用ハードウェアプロセッサと少なくとも1つの専用ハードウェアプロセッサとの組み合わせを含む。
図16に示す例では、CPU1610、RAM1620、およびプログラムメモリ1630が処理回路に相当する。
【0086】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【0087】
1,1A…情報処理システム、100,100A…情報処理装置、110…出力装置、121,121A…第1のセンサ、122,122A…第2のセンサ、123A…第3のセンサ、130…撮影装置、131A…第1の撮影装置、132A…第2の撮影装置、210…画像データ取得部、220…画像データ処理部、230…センサデータ取得部、240…センサデータ処理部、250…計算部、260…特定部、300…作業領域、310…撮影領域、500…画像データ、510,520…検出領域、600…二次元人体骨格モデル、700…画像データ、701,702,703,704…移動軌跡、800…座標データ、900…テーブル、1000…テーブル、1100…携帯端末、1210,1220,1230…波形、1300…テーブル、1310,1320,1330…行、1500…作業領域、1510,1520…撮影領域、1600…コンピュータ、1630…プログラムメモリ、1640…補助記憶装置、1650…入出力インタフェース、1660…バス、KP1~KP18…キーポイント、P1,P2,P11,P12,13…作業者。