(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0017】
<第1実施形態>
以下、図面を参照して、本発明の第1実施形態による映像再生装置を説明する。
図1は第1実施形態の構成を示すブロック図である。第1実施形態による映像再生装置は、所定時間の遅延を加えて再生するものである。
図1において、符号1は、遅延させて再生を行うべき映像を入力する映像取得部である。符号2は、遅延させるべき遅延幅の情報を入力する遅延幅取得部である。符号3は、映像取得部1において入力した映像を遅延幅取得部2において入力した遅延幅だけ遅延させる映像遅延部である。符号4は、映像遅延部3において遅延させた映像を表示する映像表示部であり、ディスプレイ装置によって構成する。
【0018】
次に、
図2を参照して、
図1に示す映像再生装置の動作を説明する。
図2は、
図1に示す映像遅延部3の動作を示す説明図である。まず、映像取得部1は、カメラ等から映像をフレーム毎に受け取り、映像遅延部3へ送る。一方、遅延幅取得部2は、ユーザにより指定された遅延幅情報dを受け取る。遅延幅情報dは、映像を何秒間遅延させるかを示す情報である。
【0019】
次に、映像遅延部3は、内部にバッファとなるメモリ配列B(B[0]〜B[NB−1]を備え、以下の処理を行う。ここで、NBは映像遅延部3において遅延させることが可能な最大遅延幅(配列Bの配列数に相当する)である。映像遅延部3は、配列B[0]〜B[NB−2]に蓄積されているフレーム画像をそれぞれ、配列B[1]〜B[NB−1]に順に複製する。続いて、映像遅延部3は、配列B[0]に新たに映像取得部1から取得した画像を格納する。そして、配列B[遅延幅情報d×映像のフレームレート]のフレーム画像を映像表示部4へ出力することにより、d秒遅延した映像が映像表示部4に映し出されることなる。
図2に示す例では、配列B[NB−1](最大遅延幅)から映像表示部4へ出力する例を示した。以上の各ステップにより、映像表示部では、d秒遅れの映像が表示されることになる。
【0020】
このように、映像取得部1から取得したフレーム画像を映像遅延部3内のバッファに一時蓄え、所定の時間遅延させたフレーム画像を映像表示部4へ出力することにより、任意に遅延させた映像を再生することが可能となる。
【0021】
<第2実施形態>
次に、本発明の第2実施形態による映像再生装置を説明する。
図3は第2実施形態の構成を示すブロック図である。第2実施形態による映像再生装置は、参照動作中で指定された同期タイミングの動作情報を用い、現在動作の映像中を検索することで、参照動作と現在動作を時間的に同期する。
図3において、
図1に示す映像再生装置と同一の部分には同一の符号を付し、その説明を省略する。符号5は、参照動作の製造を読み込み、内部に保持する参照動作読み込み部である。
【0022】
符号6は、参照動作読み込み部5において読み込まれた参照動作の映像に対して、現在動作の映像を同期させたい時間的なタイミングを指定する情報を受け取る同期タイミング情報取得部である。同期タイミング情報取得部6は、タイミングを指定する情報をファイルから読み込んでも構わないし、キーボードから入力しても構わない。
【0023】
符号7は、指定された同期タイミングの参照動作映像中の動作において画像特徴を取得する参照動作映像特徴取得部である。動作の画像特徴としては、オプティカルフロー、オプティカルフローのヒストグラム、モーションヒストリーイメージなど様々な手法が適用可能であるので特に限定しない。
【0024】
符号8は、参照動作映像特徴取得部7と同一の手法により、動作の画像特徴を取得する現在動作映像特徴取得部である。符号9は、現在動作映像特徴取得部8において取得した、現在動作映像中の動作の画像特徴と、参照動作映像特徴取得部7において取得した参照動作映像中の動作の画像特徴とを比較することで、現在動作と参照動作とで同じ動作を行ったタイミングを抽出する同期部である。これを同期タイミングと表すこととし、(t
c,t
r)の組で表すものとする。
【0025】
次に、
図3に示す映像再生装置の動作を説明する。始めに、参照動作読み込み部5は、外部から参照動作の映像を読み込み、内部に保持しておく。次に、同期タイミング情報取得部6は、参照動作読み込み部5において読み込まれた参照動作の映像に対して、現在動作の映像を同期させたい時間的なタイミングを指定する情報を外部から受け取る。これを受けて、参照動作映像特徴取得部7は、指定された同期タイミングによって特定される参照動作映像中のフレーム画像の画像特徴を取得して同期部9へ出力する。
【0026】
一方、映像取得部1は、外部から現在動作の映像をフレーム毎に取得し、現在動作映像特徴取得部8と映像遅延部3へ出力する。現在動作映像特徴取得部8は、映像取得部1から出力されたフレームから画像特徴を取得して同期部9へ出力する。
【0027】
次に、同期部9は、参照動作映像特徴取得部7から出力する画像特徴と、現在動作映像特徴取得部8から出力する画像特徴とを比較して、参照動作と現在動作とで同じ動作を行ったタイミングを抽出する。同期部9の詳細な処理動作は、後述する。
【0028】
次に、映像表示部4は、同期部9で指定された同期タイミングが同じタイミングで表示されるよう、映像遅延部3により遅延された現在動作の映像と、参照動作読み込み部5で読み込まれた参照動作の映像とを同期させて表示する。
【0029】
次に、
図4を参照して、
図3に示す同期部9の詳細な動作を説明する。
図4は、
図3に示す同期部9の動作を示すフローチャートである。ここでは、現在時刻をt、また、参照動作同期タイミングをt
rとする。まず、同期部9は、現在動作映像の画像特徴と参照動作映像の画像特徴とを比較して、類似度をs
tを求める(ステップS1)。そして、同期部9は、類似度s
tがしきい値th
detecより大きいか否かを判定する(ステップS2)。この判定の結果、類似度s
tがしきい値th
detecより大きければ、同期部9は、前時刻(t−1)の類似度s
t−1が現在の類似度s
tより大きいか否かを判定する(ステップS3)。この判定の結果、類似度s
t−1が類似度s
tより大きければ、(t−1,t
r)を同期タイミングとして設定する(ステップS4)。この2つの判定処理によって、現在動作の類似度のピークを見つけることができる。ステップS2、S3の判定の結果、条件を満たさなければ何もせずに処理を終了する。
図4に示す処理動作によって、参照動作同期タイミングをt
rに最も類似している現在動作を見つけ出すことができる。ここで設定した同期タイミングにおいて、参照動作と現在動作とが同期して、映像表示部4に表示されることになる。
【0030】
このように、手本となる参照動作の映像を読み込むとともに、参照動作中同期指定情報を読み込み、遅延再生中の現在動作の映像と、参照動作の映像とが、指定した同期ポイントにおいて、同期するように再生することが可能になる。
【0031】
<第3実施形態>
次に、本発明の第3実施形態による映像再生装置を説明する。第3実施形態による映像再生装置は、
図3に示す参照動作映像特徴取得部7と現在動作映像特徴取得部8における画像特徴としてMHI(Motion History Image)を用いる。MHIは、動作の方向と履歴を表すものであり、文献「A. Bobick and J. Davis, The Representation and Recognition of Action Using Temporal Templates, IEEE Transactions on Pattern Analysis and Machine Intelligence, Vol. 23, No. 3, 2001, pp.257-267.」等に記載されている公知の技術であるため、ここでは詳細な説明を省略する。
【0032】
MHIは次の処理により求める。まず、現在時刻tの画像I(t)と1時刻前の画像I(t−1)との差分2値化画像D(t)を求める。差分がしきい値以上の場合には255、それ以外の場合には0の2値をとる。1時刻前のMHI M(t−1)の各ピクセルから画素値をaだけ減算し、M’(t−1)とする。そして、M(t)←M’(t−1)+D(t)により現在時刻のMHIを求める。
【0033】
<第4実施形態>
次に、本発明の第4実施形態による映像再生装置を説明する。第4実施形態による映像再生装置は、類似度があらかじめ定められた閾値以下であった場合に、一定フレームの間類似度を求める処理を行わないことで計算負荷を低減させることで高速化するものである。
【0034】
本実施形態の映像再生装置では、間引き幅を調整する変数としてflagを導入する。なお、flagの初期値は0である。そして、類似度の高い画像検出のしきい値th
detecに加えて、処理を間引くか否かを判定するためのしきい値th
skipを新たに導入する。これによりth
skipよりも類似度が小さい場合には、しばらく類似度の高い検出対象の画像が出現することはないと見なして、一定時間処理をスキップさせる。そして、しきい値th
skipよりも類似度が大きい場合には、近い将来に検出対象の画像がある可能性が高いのでスキップせずに次のフレームでも類似度計算を行う。
【0035】
図5は、
図3に示す同期部9の処理動作を示すフローチャートである。まず、同期部9は、flagが0であるか否かを判定し(ステップS11)、flagが0の場合、次へ進み。そうでない場合、flagを1減らし(ステップS18)、同期の処理を終了する。
【0036】
次に、同期部9は、現在時刻の現在動作映像特徴と参照動作映像特徴とを比較し、類似度s
tを求める(ステップS12)。そして、同期部9は、類似度s
tがあらかじめ定めたしきい値th
skipより小さいか否かを判定する(ステップS13)。この判定の結果、類似度s
tがしきい値th
skipより小さい場合、flagにNをセットし、同期処理を終了する(ステップS17)。Nは、実験等によって予め決めておく値であり、Nを大きくすれば、処理の間隔は広くなり、Nを小さくすれば処理の間隔が狭くなる。
【0037】
一方、類似度s
tがしきい値th
skipより小さくない場合、同期部9は、類似度s
tがしきい値th
detecより大きいか否かを判定する(ステップS14)。この判定の結果、類似度s
tがしきい値th
detecより大きければ、同期部9は、前時刻(t−1)の類似度s
t−1が現在の類似度s
tより大きいか否かを判定する(ステップS15)。この判定の結果、類似度s
t−1が類似度s
tより大きければ、(t−1,t
r)を同期タイミングとして更新する(ステップS16)。ステップS14、S15の判定の結果、条件を満たさなければ何もせずに処理を終了する。
【0038】
このように、同期のための動作が類似している画像検出にあたり、適切な時間幅の処理を間引くことで高速化することができる。
【0039】
<第5実施形態>
次に、本発明の第5実施形態による映像再生装置を説明する。第5実施形態による映像再生装置は、同期タイミングに先行するイベント(特徴的な状態)を利用し、処理の間引き効率を向上させることで高速化する。
図6は、
図5に示す処理動作によって処理の間引きを行った際の類似度と類似度計算タイミングの関係を示す図である。
図6において、横軸は時間、縦軸は類似度を表す。また、横軸上の縦のラインは、類似度計算を行った時刻を表す。
図6に示すように、類似度がth
skip以下の場合、処理が間引かれ、類似度がth
skip以上の場合は、フレーム毎に類似度計算が行われる。
【0040】
図7は、第5実施形態による映像再生装置の処理動作を示す説明図である。まず、同期タイミングに先行して起きる状態(先行状態)の検索を行う。そして、先行状態検索の類似度が一定以上になった場合、次の時刻でも先行状態の類似度を調べる(
図7に示す符号Aの丸で囲った部分)。先行状態の連続する2時刻での変化に基づいて、処理をスキップする。なお、先行状態の連続する2時刻での変化現在時刻から何時刻先に、同期タイミングのピークが現れるかをあらかじめ指定しておく。
【0041】
図8は、第5実施形態による映像再生装置における同期部9の動作を示すフローチャートである。まず、同期部9は、FlagBの値を判定する(ステップS21)。この判定の結果、値が0であった場合、同期部9は、現在動作映像の画像特徴と参照動作映像の画像特徴とを比較して、類似度S
tを求める(ステップS22)。
【0042】
次に、同期部9は、類似度s
tがしきい値th
detecより大きいか否かを判定する(ステップS23)。この判定の結果、類似度s
tがしきい値th
detecより大きくなければ、FlagAに0をセットし、FlagBに−1をセットして処理を終了する(ステップS24)。一方、類似度s
tがしきい値th
detecより大きければ、同期部9は、前時刻(t−1)の類似度s
t−1が現在の類似度s
tより大きいか否かを判定する(ステップS25)。この判定の結果、類似度s
t−1が類似度s
tより大きくなければ、FlagAに0をセットし、FlagBに−1をセットして処理を終了する(ステップS27)。一方、類似度s
t−1が類似度s
tより大きければ、(t−1,t
r)を同期タイミングとして更新する(ステップS26)。そして、FlagAとFlagBに0をセットして処理を終了する(ステップS28)。
【0043】
次に、ステップS21において、FlagBの値が0より小さい場合、同期部9は、FlagAが0であるか否かを判定する(ステップS29)。この判定の結果、FlagAが0でなければ、FlagAから1減算して処理を終了する(ステップS30)。一方、FlagAが0であれば、同期部9は、現在動作映像の画像特徴と先行動作映像の画像特徴とを比較して、類似度p
tを求める(ステップS31)。そして、同期部9は、類似度p
t−1がしきい値th
skipより小さいか否かを判定する(ステップS32)。この判定の結果、類似度p
t−1がしきい値th
skipより小さくなければ、FlagAにNをセットし処理を終了する(ステップS33)。このNは、実験等によって決められた所定の値である。一方、類似度p
t−1がしきい値th
skipより小さければ、同期部9は、p
t−1−p
tがしきい値thより大きいか否かを判定する(ステップS34)。この判定の結果、p
t−1−p
tがしきい値thより大きくなければ、FlagBにN
1をセットして処理を終了する(ステップS35)。
【0044】
次に、p
t−1−p
tがしきい値thより大きければ、同期部9は、p
t−1−p
tがしきい値−thより小さいか否かを判定する(ステップS36)。この判定の結果、p
t−1−p
tがしきい値−thより小さくなければ、FlagBにN
2をセットして処理を終了する(ステップS37)。一方、p
t−1−p
tがしきい値−thより小さければ、FlagBにN
3をセットして処理を終了する(ステップS38)。N
1、N
2、N
3は、いずれも実験等によって予め決められた値である。
【0045】
次に、ステップS21において、FlagBの値が0より大きい場合、同期部9は、FlagBから1減算して処理を終了する(ステップS39)。
【0046】
図8において、FlagAは、先行状態により規定される間引き幅を制御するためのフラグである。
図7に示すように、第5実施形態では、先行するイベントの検出の類似度の変化(符号B、C、Dで示す矢印)により、間引き幅(符号E、F、Gで示す矢印)が変化する。これを実現するためフラグがFlagAである。また、FlagBは、先行状態の検出を間引くためのフラグであり、第2実施形態におけるFlagと同様の役割を果たす。
【0047】
このように、同期のための動作検出にあたり、同期時刻に先行して起こる状態を検出することで、処理を高速化することができる。
【0048】
<第6実施形態>
次に、本発明の第6実施形態による映像再生装置を説明する。動作の速度が異なる場合、参照動作と現在の動作を比較することは困難となる。第6実施形態による映像再生装置は、これを解決するため、2つの同期タイミングを指定し、同期タイミング間を時間伸縮させることで、速度の異なる動作であっても比較しやすくするものである。
【0049】
図3に示す同期タイミング情報取得部6において2つの時刻の同期タイミング(t
rs,t
re)を取得し、それぞれについて、参照動作映像特徴取得部7において参照動作映像の画像特徴を取得する。同期部9は、各々の参照動作映像の画像特徴について同期を行う。これは、第2〜第4実施形態の同期部9の処理を各同期タイミングについて行うことで実現することができる。この結果、第6実施形態の同期部9は、2組の同期タイミング{(t
1,t
rs),(t
2,t
re)}を取得する。映像表示部4は、同期タイミングで同じ映像が再生されるよう、参照動作に時間伸縮を加えて表示する。
【0050】
この動作を、
図9、10を用いて説明する。
図9は、第2実施形態における動作を示す説明図である。
図10は、第6実施形態における動作を示す説明図である。第2実施形態では、単一の同期タイミングを用いたため、
図9に示すように、現在の動作が参照動作よりもゆっくりとした動きであった場合でも、同期タイミングでのみ同期する。そのため、現在の動作の開始後に、参照動作が開始されることとなり、動作の確認が困難となる。
【0051】
一方、第6実施形態によれば、
図10に示すように、動作開始時点および動作終了時点の2点で同期することが可能となるため、動作の速度が異なる場合であっても、動作を同期して確認することが可能となる。
【0052】
このように、手本となる参照動作の映像を読み込むとともに、参照動作中から2時刻の同期指定情報を読み込み、遅延再生中の現在動作と、手本動作とを、時間伸縮を伴って、同期するように再生することが可能になる。
【0053】
以上説明したように、容易に参照動作と現在動作を比較することが可能になるため、ビデオフィードバックの効果を最大限に発揮することができる。
【0054】
前述した実施形態における映像再生装置をコンピュータで実現するようにしてもよい。その場合、この機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することによって実現してもよい。なお、ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間の間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含んでもよい。また上記プログラムは、前述した機能の一部を実現するためのものであっても良く、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであってもよく、PLD(Programmable Logic Device)やFPGA(Field Programmable Gate Array)等のハードウェアを用いて実現されるものであってもよい。
【0055】
以上、図面を参照して本発明の実施の形態を説明してきたが、上記実施の形態は本発明の例示に過ぎず、本発明が上記実施の形態に限定されるものではないことは明らかである。したがって、本発明の技術思想及び範囲を逸脱しない範囲で構成要素の追加、省略、置換、その他の変更を行ってもよい。