(57)【要約】【課題】動画像上における物体の位置を推定する処理を高速で実行する。【解決手段】乱数列生成部１０１は、サンプル数分の乱数を有する選択用乱数列と、サンプル数分の乱数を有する移動用乱数列と、を生成する。乱数列記憶部１０２は、生成された選択用乱数列と移動用乱数列とを記憶する。仮サンプル点設定部１０３は、サンプル点に付与されている重みが大きいほど多くの個数、サンプル点と同じ座標の仮サンプル点を設定する。仮サンプル点選択部１０４は、選択用乱数列に基づいて、サンプル数分の仮サンプル点を選択する。仮サンプル点移動部１０５は、移動用乱数列に基づいて、選択された仮サンプル点を移動させる。サンプル点設定部１０６は、移動後の仮サンプル点と同じ座標のサンプル点を設定する。物体位置推定部１０８は、設定されたサンプル点の座標と付与された重みとに基づいて、物体の位置を推定する。【選択図】図２
2015076056.tif 000002
【特許請求の範囲】
【請求項１】
サンプル数分の乱数を有する第１乱数列と、前記サンプル数分の乱数を有する第２乱数列と、を生成する乱数列生成手段と、
前記乱数列生成手段により生成された第１乱数列と第２乱数列とを記憶する乱数列記憶手段と、
動画像を構成するフレーム画像のうちの設定済フレーム画像に設定されている、前記サンプル数分のサンプル点のそれぞれについて、前記サンプル点に付与されている重みが大きいほど多くの個数、前記サンプル点と同じ座標の仮サンプル点を設定する仮サンプル点設定手段と、
前記乱数列記憶手段に記憶されている第１乱数列に基づいて、前記仮サンプル点設定手段により設定された仮サンプル点の中から、前記サンプル数分の仮サンプル点を選択する仮サンプル点選択手段と、
前記乱数列記憶手段に記憶されている第２乱数列に基づいて、前記仮サンプル点選択手段により選択された仮サンプル点のそれぞれを移動させる仮サンプル点移動手段と、
前記仮サンプル点移動手段による移動後の仮サンプル点とそれぞれ同じ座標の前記サンプル数分のサンプル点を、前記動画像を構成するフレーム画像のうちの設定対象フレーム画像に設定するサンプル点設定手段と、
前記サンプル点設定手段により前記設定対象フレーム画像に設定されたサンプル点のそれぞれに、前記設定対象フレーム画像に設定されたサンプル点における色と、前記設定済フレーム画像に設定されている、前記設定対象フレーム画像に設定されたサンプル点に対応するサンプル点における色と、の類似度が高いほど大きな重みを付与する重み付与手段と、
前記設定対象フレーム画像に設定されたサンプル点のそれぞれの座標と、前記重み付与手段により、前記設定対象フレーム画像に設定されたサンプル点のそれぞれに付与された重みと、に基づいて、前記動画像上における物体の位置を推定する物体位置推定手段と、を備える、
ことを特徴とする物体位置推定装置。
【請求項２】
前記第１乱数列は、前記サンプル数分の一様乱数を有し、
前記第２乱数列は、前記サンプル数分の正規乱数を有する、
ことを特徴とする請求項１に記載の物体位置推定装置。
【請求項３】
前記乱数列生成手段は、少なくとも２個の前記第１乱数列と、少なくとも２個の前記第２乱数列と、少なくとも２個の一様乱数を有する第３乱数列と、少なくとも２個の一様乱数を有する第４乱数列と、を生成し、
前記乱数列記憶手段は、前記乱数列生成手段により生成された、少なくとも２個の第１乱数列と少なくとも２個の第２乱数列と第３乱数列と第４乱数列と、を記憶し、
前記仮サンプル点選択手段は、前記乱数列記憶手段に記憶されている第３乱数列に基づいて、前記乱数列記憶手段に記憶されている少なくとも２個の第１乱数列の中から１個の第１乱数列を選択し、選択された１個の第１乱数列に基づいて、前記仮サンプル点設定手段により設定された仮サンプル点の中から、前記サンプル数分の仮サンプル点を選択し、
前記仮サンプル点移動手段は、前記乱数列記憶手段に記憶されている第４乱数列に基づいて、前記乱数列記憶手段に記憶されている少なくとも２個の第２乱数列の中から２個の第２乱数列を選択し、選択された２個の第２乱数列に基づいて、前記仮サンプル点選択手段により選択された仮サンプル点のそれぞれを移動させる、
ことを特徴とする請求項１又は２に記載の物体位置推定装置。
【請求項４】
前記重み付与手段は、前記サンプル点設定手段により前記設定対象フレーム画像に設定されたサンプル点のそれぞれに、前記設定対象フレーム画像に設定されたサンプル点を中心とする特定領域における色と、前記設定済フレーム画像に設定されている、前記設定対象フレーム画像に設定されたサンプル点に対応するサンプル点を中心とする特定領域における色と、の類似度が高いほど大きな重みを付与する、
ことを特徴とする請求項１乃至３のいずれか１項に記載の物体位置推定装置。
【請求項５】
前記特定領域は、前記サンプル数が少ないほど広く設定される、
ことを特徴とする請求項４に記載の物体位置推定装置。
【請求項６】
サンプル数分の乱数を有する第１乱数列と、前記サンプル数分の乱数を有する第２乱数列と、を生成する乱数列生成ステップと、
前記乱数列生成ステップにより生成された第１乱数列と第２乱数列とを記憶する乱数列記憶ステップと、
動画像を構成するフレーム画像のうちの設定済フレーム画像に設定されている、前記サンプル数分のサンプル点のそれぞれについて、前記サンプル点に付与されている重みが大きいほど多くの個数、前記サンプル点と同じ座標の仮サンプル点を設定する仮サンプル点設定ステップと、
前記乱数列記憶ステップにより記憶された第１乱数列に基づいて、前記仮サンプル点設定ステップにより設定された仮サンプル点の中から、前記サンプル数分の仮サンプル点を選択する仮サンプル点選択ステップと、
前記乱数列記憶ステップにより記憶された第２乱数列に基づいて、前記仮サンプル点選択ステップにより選択された仮サンプル点のそれぞれを移動させる仮サンプル点移動ステップと、
前記仮サンプル点移動ステップによる移動後の仮サンプル点とそれぞれ同じ座標の前記サンプル数分のサンプル点を、前記動画像を構成するフレーム画像のうちの設定対象フレーム画像に設定するサンプル点設定ステップと、
前記サンプル点設定ステップにより前記設定対象フレーム画像に設定されたサンプル点のそれぞれに、前記設定対象フレーム画像に設定されたサンプル点における色と、前記設定済フレーム画像に設定されている、前記設定対象フレーム画像に設定されたサンプル点に対応するサンプル点における色と、の類似度が高いほど大きな重みを付与する重み付与ステップと、
前記設定対象フレーム画像に設定されたサンプル点のそれぞれの座標と、前記重み付与ステップにより、前記設定対象フレーム画像に設定されたサンプル点のそれぞれに付与された重みと、に基づいて、前記動画像上における物体の位置を推定する物体位置推定ステップと、を含む、
ことを特徴とする物体位置推定方法。
【請求項７】
コンピュータを、
サンプル数分の乱数を有する第１乱数列と、前記サンプル数分の乱数を有する第２乱数列と、を生成する乱数列生成手段、
前記乱数列生成手段により生成された第１乱数列と第２乱数列とを記憶する乱数列記憶手段、
動画像を構成するフレーム画像のうちの設定済フレーム画像に設定されている、前記サンプル数分のサンプル点のそれぞれについて、前記サンプル点に付与されている重みが大きいほど多くの個数、前記サンプル点と同じ座標の仮サンプル点を設定する仮サンプル点設定手段、
前記乱数列記憶手段に記憶されている第１乱数列に基づいて、前記仮サンプル点設定手段により設定された仮サンプル点の中から、前記サンプル数分の仮サンプル点を選択する仮サンプル点選択手段、
前記乱数列記憶手段に記憶されている第２乱数列に基づいて、前記仮サンプル点選択手段により選択された仮サンプル点のそれぞれを移動させる仮サンプル点移動手段、
前記仮サンプル点移動手段による移動後の仮サンプル点とそれぞれ同じ座標の前記サンプル数分のサンプル点を、前記動画像を構成するフレーム画像のうちの設定対象フレーム画像に設定するサンプル点設定手段、
前記サンプル点設定手段により前記設定対象フレーム画像に設定されたサンプル点のそれぞれに、前記設定対象フレーム画像に設定されたサンプル点における色と、前記設定済フレーム画像に設定されている、前記設定対象フレーム画像に設定されたサンプル点に対応するサンプル点における色と、の類似度が高いほど大きな重みを付与する重み付与手段、
前記設定対象フレーム画像に設定されたサンプル点のそれぞれの座標と、前記重み付与手段により、前記設定対象フレーム画像に設定されたサンプル点のそれぞれに付与された重みと、に基づいて、前記動画像上における物体の位置を推定する物体位置推定手段、として機能させる、
ことを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、物体位置推定装置、物体位置推定方法、ならびに、プログラムに関する。
【背景技術】
【０００２】
現在、パーティクルフィルタ（粒子フィルタ）を用いて、動画像上における物体の位置を推定したり、動画像上における物体を追跡したりする技術が知られている。例えば、特許文献１には、パーティクルフィルタを用いて、撮像された画像の中から人物を検出し、検出された人物の頭部分の領域を追従する撮像装置等が開示されている。
【０００３】
ここで、パーティクルフィルタを用いて、動画像上における物体の位置を推定する場合、処理の途中で非常に多くの個数の乱数を用いることになる。特許文献１に開示された撮像装置では、処理の途中で乱数が必要となる度に乱数を発生させる手法を採用している。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１０−１９３３３３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、乱数を発生させるためには、複雑な計算をしなければならないことが一般的である。このため、特許文献１に開示されているように、処理の途中で乱数が必要となる度に乱数を発生させる手法を採用すると、乱数の発生のために大きな処理負荷がかかる。従って、特許文献１に開示された撮像装置では、動画像上における物体の位置を推定する処理を高速で実行することができなかった。このため、動画像上における物体の位置を推定する処理を高速で実行することが可能な技術が望まれている。
【０００６】
本発明は、このような状況に鑑みてなされたものであり、動画像上における物体の位置を推定する処理を高速で実行するのに好適な物体位置推定装置、物体位置推定方法、ならびに、プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記目的を達成するために、本発明の第１の観点に係る物体位置推定装置は、
サンプル数分の乱数を有する第１乱数列と、前記サンプル数分の乱数を有する第２乱数列と、を生成する乱数列生成手段と、
前記乱数列生成手段により生成された第１乱数列と第２乱数列とを記憶する乱数列記憶手段と、
動画像を構成するフレーム画像のうちの設定済フレーム画像に設定されている、前記サンプル数分のサンプル点のそれぞれについて、前記サンプル点に付与されている重みが大きいほど多くの個数、前記サンプル点と同じ座標の仮サンプル点を設定する仮サンプル点設定手段と、
前記乱数列記憶手段に記憶されている第１乱数列に基づいて、前記仮サンプル点設定手段により設定された仮サンプル点の中から、前記サンプル数分の仮サンプル点を選択する仮サンプル点選択手段と、
前記乱数列記憶手段に記憶されている第２乱数列に基づいて、前記仮サンプル点選択手段により選択された仮サンプル点のそれぞれを移動させる仮サンプル点移動手段と、
前記仮サンプル点移動手段による移動後の仮サンプル点とそれぞれ同じ座標の前記サンプル数分のサンプル点を、前記動画像を構成するフレーム画像のうちの設定対象フレーム画像に設定するサンプル点設定手段と、
前記サンプル点設定手段により前記設定対象フレーム画像に設定されたサンプル点のそれぞれに、前記設定対象フレーム画像に設定されたサンプル点における色と、前記設定済フレーム画像に設定されている、前記設定対象フレーム画像に設定されたサンプル点に対応するサンプル点における色と、の類似度が高いほど大きな重みを付与する重み付与手段と、
前記設定対象フレーム画像に設定されたサンプル点のそれぞれの座標と、前記重み付与手段により、前記設定対象フレーム画像に設定されたサンプル点のそれぞれに付与された重みと、に基づいて、前記動画像上における物体の位置を推定する物体位置推定手段と、を備える、
ことを特徴とする。
【発明の効果】
【０００８】
本発明によれば、動画像上における物体の位置を推定する処理を高速で実行することができる。
【図面の簡単な説明】
【０００９】
【図１】本発明の実施形態に係る物体位置推定装置の構成を示すブロック図である。
【図２】本発明の実施形態に係る物体位置推定装置の機能を説明するためのブロック図である。
【図３】選択用乱数列を示す図である。
【図４】（Ａ）は、横軸移動用乱数列を示す図である。（Ｂ）は、縦軸移動用乱数列を示す図である。
【図５】（Ａ）は、選択用乱数列選択用乱数列を示す図である。（Ｂ）は、横軸移動用乱数列選択用乱数列を示す図である。（Ｃ）は、縦軸移動用乱数列選択用乱数列を示す図である。
【図６】設定済フレーム画像に設定されているサンプル点を示す図である。
【図７】サンプル点毎に仮サンプル点が設定される様子を示す図である。
【図８】サンプル点毎に設定された仮サンプル点を示す図である。
【図９】選択された仮サンプル点を示す図である。
【図１０】設定対象フレーム画像に設定されたサンプル点を示す図である。
【図１１】本発明の実施形態に係る物体位置推定装置が実行する物体位置推定処理を示すフローチャートである。
【発明を実施するための形態】
【００１０】
以下、図面を参照して、本発明の実施形態に係る物体位置推定装置１００について説明する。
【００１１】
物体位置推定装置１００は、撮像装置２００から取得された動画像上において、追跡対象の物体の位置を推定する装置である。図１に示すように、物体位置推定装置１００は、物理的には、ＣＰＵ（Central Processing Unit）１１、ＲＯＭ（Read Only Memory）１２、ＲＡＭ（Random Access Memory）１３、フラッシュメモリ１４、ＲＴＣ（Real Time Clock）１５、タッチスクリーン１６、インターフェース１７、を備える。物体位置推定装置１００が備える各構成要素は、バスを介して相互に接続される。
【００１２】
ＣＰＵ１１は、物体位置推定装置１００の全体の動作を制御する。なお、ＣＰＵ１１は、ＲＯＭ１２に格納されているプログラムに従って動作し、ＲＡＭ１３をワークエリアとして使用する。
【００１３】
ＲＯＭ１２には、物体位置推定装置１００の全体の動作を制御するためのプログラムやデータが記憶される。
【００１４】
ＲＡＭ１３は、ＣＰＵ１１のワークエリアとして機能する。つまり、ＣＰＵ１１は、ＲＡＭ１３にプログラムやデータを一時的に書き込み、これらのプログラムやデータを適宜参照する。
【００１５】
フラッシュメモリ１４は、各種の情報を記憶する不揮発性メモリである。例えば、フラッシュメモリ１４は、各種の乱数列や動画像を記憶する。なお、物体位置推定装置１００は、フラッシュメモリ１４に代えて、ハードディスクなどを備えていてもよい。
【００１６】
ＲＴＣ１５は、計時用のデバイスである。ＲＴＣ１５は、例えば、電池を内蔵し、物体位置推定装置１００の電源がオフの間も計時を継続する。ＲＴＣ１５は、例えば、水晶発振子を備える発振回路を備える。
【００１７】
タッチスクリーン１６は、利用者によりなされたタッチ操作を検知し、検知の結果を示す信号をＣＰＵ１１に供給する。また、タッチスクリーン１６は、ＣＰＵ１１などから供給された画像信号に基づく画像を表示する。このように、タッチスクリーン１６は、物体位置推定装置１００のユーザインターフェースとして機能する。
【００１８】
インターフェース１７は、アドホック通信やネットワーク通信により、撮像装置２００と通信する。インターフェース１７は、ＣＰＵ１１による指示に従って、撮像装置２００の動作を制御する。また、インターフェース１７は、撮像装置２００から動画像を取得し、フラッシュメモリ１４やタッチスクリーン１６に供給する。インターフェース１７は、ＵＳＢ（Universal Serial Bus）やＩＥＥＥ（Institute of Electrical and Electronic Engineers）１３９４などのシリアル通信用のインターフェースであってもよいし、ＮＩＣ（Network Interface Card）などのＬＡＮ（Local Area Network）インターフェースであってもよい。
【００１９】
撮像装置２００は、追跡対象の物体を撮像し、動画像を生成する。なお、追跡対象の物体は、飛行機、車、ボールなどの人工物であってもよいし、星、動物、人、昆虫などの自然のものであってもよい。撮像装置２００は、物体位置推定装置１００と通信するためのインターフェースを備える。撮像装置２００は、物体位置推定装置１００による指示に従って動画像を生成する。撮像装置２００は、生成した動画像を物体位置推定装置１００に供給する。撮像装置２００は、例えば、デジタルカメラ、ビデオカメラ、スマートフォンである。
【００２０】
次に、図２を参照して、物体位置推定装置１００が備える基本的な機能について説明する。図２に示すように、物体位置推定装置１００は、乱数列生成部１０１、乱数列記憶部１０２、仮サンプル点設定部１０３、仮サンプル点選択部１０４、仮サンプル点移動部１０５、サンプル点設定部１０６、重み付与部１０７、物体位置推定部１０８、動画像取得部１０９を備える。
【００２１】
乱数列生成部１０１は、選択用乱数列（第１乱数列）と移動用乱数列（第２乱数列）とを生成する。選択用乱数列は、設定された仮サンプル点から、サンプル数（サンプル点の個数）分の仮サンプル点を選択するための乱数列である。従って、選択用乱数列は、サンプル数分の乱数を有する。なお、本実施形態では、乱数は、擬似乱数であるものとする。移動用乱数列は、選択された仮サンプル点を移動させるための乱数である。従って、移動用乱数列は、サンプル数分の乱数を有する。
【００２２】
ここで、一般的に、乱数を生成するためには、複雑な演算を実行する必要がある。このため、乱数を生成するためには、長い処理時間が必要となる。このため、例えば、物体位置推定装置１００は、乱数を用いる直前に、随時、乱数を発生させると、物体位置推定処理を高速に実行できなくなる。そこで、本実施形態では、物体位置推定装置１００は、物体位置推定処理の処理速度を低下させないタイミングで、乱数を発生させる。具体的には、例えば、物体位置推定装置１００の電源が投入された直後に、前もって、乱数列生成部１０１が選択用乱数列や移動用乱数列を生成する。なお、乱数列生成部１０１は、サンプル数分の乱数を高速に発生させるために、連続して乱数を発生させることが好適である。乱数列生成部１０１は、例えば、ＣＰＵ１１、ＲＴＣ１５を備える。
【００２３】
乱数列記憶部１０２は、乱数列生成部１０１により生成された選択用乱数列と移動用乱数列とを記憶する。乱数列記憶部１０２は、例えば、ＣＰＵ１１、フラッシュメモリ１４を備える。そして、ＣＰＵ１１は、生成した選択用乱数列や移動用乱数列を、フラッシュメモリ１４などに記憶する。
【００２４】
仮サンプル点設定部１０３は、設定済フレーム画像に設定されている、サンプル数分のサンプル点のそれぞれについて、サンプル点と同じ座標の仮サンプル点を設定する。ここで、サンプル点は、動画像、もしくは、動画像を構成するフレーム画像上において、推定される物体の位置を示す点である。ここで、設定済フレーム画像は、動画像を構成するフレーム画像のうち、サンプル点が設定済みのフレーム画像である。なお、サンプル点には、重みが付与される。本実施形態では、サンプル点に付与されている重みは、このサンプル点の物体の位置を示す点としての尤もらしさを示す尤度であるものとする。
【００２５】
ここで、仮サンプル点設定部１０３は、サンプル点に付与されている重みが大きいほど多くの個数、仮サンプル点を設定する。なお、仮サンプル点は、設定対象フレーム画像に新たなサンプル点を設定するための仮のサンプル点である。サンプル点や仮サンプル点は、例えば、フレーム画像上における座標（Ｘ軸座標、Ｙ軸座標）により表される。仮サンプル点設定部１０３は、例えば、ＣＰＵ１１を備える。
【００２６】
仮サンプル点選択部１０４は、乱数列記憶部１０２に記憶されている選択用乱数列に基づいて、仮サンプル点設定部１０３により設定された仮サンプル点の中から、サンプル数分の仮サンプル点を選択する。なお、仮サンプル点選択部１０４は、選択用乱数列に含まれる１個の乱数に基づいて、１個の仮サンプル点を選択することができる。また、仮サンプル点選択部１０４は、重複を許して、仮サンプル点を選択することができる。つまり、仮サンプル点選択部１０４は、仮サンプル点設定部１０３により設定された仮サンプル点の中から、１個の仮サンプル点を、複数回、選択することができる。仮サンプル点選択部１０４は、例えば、ＣＰＵ１１を備える。
【００２７】
仮サンプル点移動部１０５は、乱数列記憶部１０２に記憶されている移動用乱数列に基づいて、仮サンプル点選択部１０４により選択された仮サンプル点のそれぞれを移動させる。例えば、仮サンプル点移動部１０５は、移動用乱数列に含まれる１個の乱数に基づいて、１個の仮サンプル点を移動させることができる。なお、仮サンプル点を移動させることは、仮サンプル点の座標を、乱数の値に応じて、変化させることである。また、仮サンプル点移動部１０５は、乱数の値のみに従って仮サンプル点を移動させてもよいし、乱数の値と予測される運動方程式とに従って仮サンプル点を移動させてもよい。
【００２８】
この運動方程式は、物体のフレーム画像上における位置を予測する運動方程式である。この運動方程式は、物体位置推定処理が実行される前に、予測された運動方程式であってもよいし、物体位置推定処理の実行中に、推定された物体の位置の軌跡などに基づいて予測された運動方程式であってもよい。仮サンプル点移動部１０５は、例えば、ＣＰＵ１１を備える。
【００２９】
サンプル点設定部１０６は、仮サンプル点移動部１０５による移動後の仮サンプル点とそれぞれ同じサンプル点を、設定対象フレーム画像に設定する。なお、設定対象フレーム画像は、動画像を構成するフレーム画像のうち、サンプル点の設定対象となるフレーム画像であって、これからサンプル点を設定しようとしているフレーム画像である。なお、設定済フレーム画像に設定されているサンプル点に基づいて、設定対象フレーム画像にサンプル点を設定することを、リサンプリングという。
【００３０】
本実施形態では、設定対象フレーム画像は、動画像を構成するフレーム画像のうち、最新の設定済フレーム画像の次のフレーム画像であり、サンプル点が設定されると最新の設定済フレーム画像となるものとする。つまり、本実施形態では、動画像を構成する全てのフレーム画像にサンプル点が設定されるものとする。なお、リサンプリングにより、フレーム画像の集合体である動画像上において時間の経過とともに移動する物体を、動画像上（フレーム画像上）においてサンプル点が追従することになる。サンプル点設定部１０６は、例えば、ＣＰＵ１１を備える。
【００３１】
重み付与部１０７は、サンプル点設定部１０６により設定されたサンプル点のそれぞれに、重みを付与する。サンプル点に付与される重みは、例えば、サンプル点の物体の位置を示す点としての確からしさ（尤度）に応じて付与される。例えば、重み付与部１０７は、設定対象フレーム画像に設定されたサンプル点に、設定済フレーム画像に設定されている、このサンプル点に対応するサンプル点における色と、設定対象フレーム画像に設定されたサンプル点における色と、の類似度が高いほど大きな重みを付与する。なお、設定対象フレーム画像に設定されたサンプル点に対応するサンプル点とは、設定済フレーム画像に設定されているサンプル点のうち、設定対象フレーム画像に設定されたサンプル点と同じ座標の仮サンプル点の移動前の座標に設定されているサンプル点である。
【００３２】
ここで、物体（もしくは、物体の一部）を表す画素の集合体は、輝度値に差がない（色の類似度が高い）確率が高いと予測される。従って、設定済フレーム画像に設定されているサンプル点が、物体の位置を適切に示していたと仮定すると、設定対象フレーム画像に設定された対応するサンプル点が、物体の位置を適切に示す場合、色の類似度が高くなるものと考えられる。つまり、上述した色の類似度が高いことは、リサンプリングの仕方が、物体の移動に応じた適切なものであった確率が高いことを意味する。
【００３３】
従って、重み付与部１０７は、この色の類似度が高いほど、サンプル点に大きな重みを付与する。一方、仮サンプル点設定部１０３は、サンプル点に付与されている重みが大きいほど、多くの個数、このサンプル点と同じ座標の仮サンプル点を設定する。このような処理を繰り返すうちに、物体の位置を適切に示しているサンプル点が増加し、物体の位置を適切に示していないサンプル点が減少する。結果として、動画像上（フレーム画像上）に設定されているサンプル点は、高い確率で、物体の位置を適切に示すことになる。つまり、サンプル点は、動画像上（フレーム画像上）において、物体の位置を適切に追従するように更新される。重み付与部１０７は、例えば、ＣＰＵ１１を備える。
【００３４】
物体位置推定部１０８は、設定対象フレーム画像に設定されたサンプル点のそれぞれの座標と、重み付与部１０７により、設定対象フレーム画像に設定されたサンプル点のそれぞれに付与された重みと、に基づいて、動画像上における物体の位置を推定する。例えば、物体位置推定部１０８は、サンプル点に付与された重みを加重して、全てのサンプル点の座標の平均値を求めることにより、全てのサンプル点の重心の座標を求める。そして、物体位置推定部１０８は、全てのサンプル点の重心の座標を、物体の中心の座標であると推定する。物体位置推定部１０８は、例えば、ＣＰＵ１１を備える。
【００３５】
動画像取得部１０９は、撮像装置２００から動画像を取得する。動画像取得部１０９は、重み付与部１０７などに、取得した動画像を構成するフレーム画像を１個ずつ供給することができる。動画像取得部１０９は、例えば、フラッシュメモリ１４やインターフェース１７を備える。
【００３６】
ここで、選択用乱数列は、サンプル数分の一様乱数を有してもよい。なお、一様乱数は、有限の区間内に存在する全ての実数が、同じ確率で現れるような乱数である。ここで、選択用乱数列は、設定された仮サンプル点の中から、サンプル数分の仮サンプル点を選択するために用いられる。従って、選択用乱数列が有する一様乱数は、例えば、設定される仮サンプル点の個数の上限値以下の自然数である。
【００３７】
また、移動用乱数列は、サンプル数分の正規乱数を有してもよい。なお、正規乱数は、有限の区間内に存在する全ての実数が、正規分布に従った確率で現れるような乱数である。実際に物体の位置を推定する場合、物体が想定される最大距離を移動する、すなわち物体が想定される最大の速度で運動を常時続けることは考えづらく、次のフレームでは最大距離より短い距離を移動している可能性が高い。そのため、期待値０の正規乱数を用いると、０に近い値が出る確率が増加し「想定される一番遠い位置に移動する可能性は低く、より近い位置に移動する可能性が高い」という状況を反映することができる。また、このような確率分布であるならば他の乱数を用いてもよい。ここで、移動用乱数列は、選択された仮サンプル点を移動させるために用いられる。従って、移動用乱数列が有する正規乱数は、例えば、仮サンプル点の移動量（画素数）の上限値以下の絶対値を有する自然数である。
【００３８】
ここで、乱数列生成部１０１は、少なくとも２個の選択用乱数列と、少なくとも２個の移動用乱数列と、少なくとも２個の一様乱数を有する選択用乱数列選択用乱数列（第３乱数列）と、少なくとも２個の一様乱数を有する移動用乱数列選択用乱数列（第４乱数列）とを生成することができる。
【００３９】
なお、少なくとも２個の選択用乱数列のそれぞれは、サンプル数分の乱数を有する。また、少なくとも２個の移動用乱数列のそれぞれは、サンプル数分の乱数を有する。ここで、選択用乱数列選択用乱数列が有する少なくとも２個の一様乱数のそれぞれは、例えば、選択用乱数列の個数を上限とする自然数である。また、移動用乱数列選択用乱数列が有する少なくとも２個の一様乱数のそれぞれは、例えば、移動用乱数列の個数を上限とする自然数である。
【００４０】
一方、乱数列記憶部１０２は、乱数列生成部１０１により生成された少なくとも２個の選択用乱数列と少なくとも２個の移動用乱数列と選択用乱数列選択用乱数列と移動用乱数列選択用乱数列とを記憶することができる。
【００４１】
ここで、仮サンプル点選択部１０４は、乱数列記憶部１０２に記憶されている選択用乱数列選択用乱数列に基づいて、乱数列記憶部１０２に記憶されている少なくとも２個の選択用乱数列の中から１個の選択用乱数列を選択することができる。そして、仮サンプル点選択部１０４は、選択された１個の選択用乱数列に基づいて、仮サンプル点設定部１０３により設定された仮サンプル点の中から、サンプル数分の仮サンプル点を選択することができる。
【００４２】
また、仮サンプル点移動部１０５は、乱数列記憶部１０２に記憶されている移動用乱数列選択用乱数列に基づいて、乱数列記憶部１０２に記憶されている少なくとも２個の移動用乱数列の中から２個の移動用乱数列を選択することができる。そして、仮サンプル点移動部１０５は、選択された２個の移動用乱数列に基づいて、仮サンプル点選択部１０４により選択された仮サンプル点のそれぞれを移動させることができる。ここで、仮サンプル点移動部１０５は、例えば、選択された２個の移動用乱数列のうち一方の移動用乱数列に基づいて、仮サンプル点のそれぞれをＸ軸方向に移動させ、他方の移動用乱数列に基づいて、仮サンプル点のそれぞれをＹ軸方向に移動させることができる。
【００４３】
次に、図３を参照して、選択用乱数列について説明する。なお、上述したように、選択用乱数列は、設定された仮サンプル点の中から、サンプル数分の仮サンプル点を選択するために用いられる。
【００４４】
図３は、選択用乱数列の個数がＭ個であり、選択用乱数列が有する乱数の個数がＮ個である例を示している。ここで、Ｍは、予め用意する乱数列の個数（パターン数）であり、自然数である。また、Ｎは、サンプル数（１個のフレーム画像に設定するサンプル点の個数）であり、自然数である。ここで、Ｒｓ［ｍ，ｎ］は、ｍ番目の選択用乱数列のうちのｎ番目の乱数を示す。なお、Ｒｓ［ｍ，ｎ］は、例えば、設定される仮サンプル点の個数の上限値を、上限値とする自然数である。また、ｍは、Ｍ以下の自然数であり、ｎは、Ｎ以下の自然数である。
【００４５】
次に、図４を参照して、移動用乱数列について説明する。なお、図４（Ａ）は、横軸移動用乱数列を示し、図４（Ｂ）は、縦軸移動用乱数列を示している。横軸移動用乱数列は、選択された仮サンプル点の横軸方向（Ｘ軸方向）の移動量のそれぞれを決定するために用いられる。一方、縦軸移動用乱数列は、選択された仮サンプル点の縦軸方向（Ｙ軸方向）の移動量のそれぞれを決定するために用いられる。
【００４６】
図４（Ａ）は、横軸移動用乱数列の個数がＭ個であり、横軸移動用乱数列が有する乱数の個数がＮ個である例を示している。ここで、Ｒｍｘ［ｍ，ｎ］は、ｍ番目の横軸移動用乱数列のうちのｎ番目の乱数を示す。なお、Ｒｍｘ［ｍ，ｎ］は、例えば、横軸方向に移動可能な画素数の上限値を、絶対値の上限値とする整数である。
【００４７】
図４（Ｂ）は、縦軸移動用乱数列の個数がＭ個であり、縦軸移動用乱数列が有する乱数の個数がＮ個である例を示している。ここで、Ｒｍｙ［ｍ，ｎ］は、ｍ番目の縦軸移動用乱数列のうちのｎ番目の乱数を示す。なお、Ｒｍｙ［ｍ，ｎ］は、例えば、縦軸方向に移動可能な画素数の上限値を、絶対値の上限値とする整数である。
【００４８】
次に、図５を参照して、乱数列選択用乱数列について説明する。なお、図５（Ａ）は、選択用乱数列選択用乱数列を示し、図５（Ｂ）は、横軸移動用乱数列選択用乱数列を示し、図５（Ｃ）は、縦軸移動用乱数列選択用乱数列を示している。選択用乱数列選択用乱数列は、Ｍ個の選択用乱数列の中から、１個の選択用乱数列を選択するために用いられる。横軸移動用乱数列選択用乱数列は、Ｍ個の横軸移動用乱数列の中から、１個の横軸移動用乱数列を選択するために用いられる。縦軸移動用乱数列選択用乱数列は、Ｍ個の縦軸移動用乱数列の中から、１個の縦軸移動用乱数列を選択するために用いられる。
【００４９】
図５（Ａ）は、選択用乱数列選択用乱数列が有する乱数の個数がＧ個である例を示している。ここで、Ｇは、自然数である。また、Ｒｓｓ［ｇ］は、選択用乱数列選択用乱数列のうちのｇ番目の乱数を示す。ここで、Ｒｓｓ［ｇ］は、例えば、Ｍを上限値とする自然数である。なお、ｇは、Ｇ以下の自然数である。
【００５０】
図５（Ｂ）は、横軸移動用乱数列選択用乱数列が有する乱数の個数がＧ個である例を示している。また、Ｒｍｘｓ［ｇ］は、横軸移動用乱数列選択用乱数列のうちのｇ番目の乱数を示す。ここで、Ｒｍｘｓ［ｇ］は、例えば、Ｍを上限値とする自然数である。
【００５１】
図５（Ｃ）は、縦軸移動用乱数列選択用乱数列が有する乱数の個数がＧ個である例を示している。また、Ｒｍｙｓ［ｇ］は、縦軸移動用乱数列選択用乱数列のうちのｇ番目の乱数を示す。ここで、Ｒｍｙｓ［ｇ］は、例えば、Ｍを上限値とする自然数である。
【００５２】
なお、ＣＰＵ１１は、物体位置推定処理の本処理を開始する前に、物体位置推定処理の前処理において、それぞれがＮ個の乱数を備えるＭ個の選択用乱数列、それぞれがＮ個の乱数を備えるＭ個の横軸移動用乱数列、それぞれがＮ個の乱数を備えるＭ個の縦軸移動用乱数列、Ｇ個の乱数を備える選択用乱数列選択用乱数列、Ｇ個の乱数を備える横軸移動用乱数列選択用乱数列、Ｇ個の乱数を備える縦軸移動用乱数列選択用乱数列を生成し、フラッシュメモリ１４などに記憶する。
【００５３】
次に、図６を参照して、設定済フレーム画像に設定されているサンプル点について説明する。
【００５４】
サンプル点は、動画像上において、追従すべき物体の推定位置を示す点である。ただし、物体位置推定装置１００は、物体位置推定処理が開始された直後や、物体位置推定処理の途中で物体を見失った直後は、動画像上のどの辺りに物体が存在しているのかを正確に推定できない場合がある。このような場合、図６に示すように、設定済フレーム画像には、物体の位置に依存しない位置にサンプル点が設定されることになる。
【００５５】
図６において、Ｐｓ［１］、Ｐｓ［２］、・・・、Ｐｓ［１０］は、それぞれ、１番目、２番目、・・・、１０番目のサンプル点を示す。なお、図６においては、理解を容易にするため、サンプル点の個数が１０個である例（Ｎ＝１０である例）を示している。図６に示すサンプル点は、物体６００の位置を正確に示していない。しかしながら、後述するように、リサンプリングされる毎に、サンプル点の位置が適切に更新されることにより、徐々に、サンプル点が物体６００の位置を示すようになる。なお、サンプル数は、リサンプリングされても不変である。
【００５６】
ここで、設定済フレーム画像に設定されているサンプル点のそれぞれに設定される仮サンプル点について説明する。図７は、設定済フレーム画像に設定されているサンプル点のそれぞれに対して、サンプル点に付与されている尤度に応じた個数の仮サンプル点が設定される様子を示す図である。なお、サンプル点に付与されている尤度は、このサンプル点が設定済フレーム画像上において物体の位置を示す点としての尤もらしさを示す概念である。このように、本実施形態では、サンプル点に付与される重みとして、尤度を採用する。
【００５７】
図７は、サンプル点に付与されている尤度が高いほど、このサンプル点に対して設定される仮サンプル点の個数が多くなる様子を示している。このように、物体の位置を示す点としての尤度が高いサンプル点と同じ座標の仮サンプル点の個数が多いと、これらの仮サンプル点は、後述する選択処理により選ばれやすくなる。その結果、サンプル点に付与される尤度が全体的に高くなり、サンプル点により物体の位置が正確に示されるようになることが期待される。
【００５８】
本実施形態では、理解を容易にするため、尤度が自然数であり、尤度により示される個数の仮サンプル点が設定されるものとする。例えば、１番目のサンプル点（Ｐｓ［１］）に付与されている尤度は１であるため、１番目のサンプル点に対しては、１個の仮サンプル点（Ｐｓｐ［１］）が設定される。一方、１０番目のサンプル点（Ｐｓ［１０］）に付与されている尤度は６であるため、１０番目のサンプル点に対しては、６個の仮サンプル点（Ｐｓｐ［１５］−Ｐｓｐ［２０］）が設定される。
【００５９】
なお、Ｐｓｐ［１］、Ｐｓｐ［２］、・・・、Ｐｓｐ［２０］のそれぞれは、仮サンプル点を示す。ここで、サンプル点に対して設定される仮サンプル点の座標は、このサンプル点の座標と同じである。例えば、Ｐｓ［１］の座標とＰｓｐ［１］の座標とは同じである。また、Ｐｓ［１０］の座標とＰｓｐ［１５］−Ｐｓｐ［２０］のそれぞれの座標とは同じである。
【００６０】
図８は、サンプル点毎に設定された仮サンプル点を示す図である。なお、図８は、理解を容易にするため、サンプル点毎に設定された仮サンプル点が、設定対象フレーム画像に設定されている様子を示している。また、図８では、理解を容易にするため、同じ座標の仮サンプル点を、重ねずに隣接させて表示している。例えば、３番目の仮サンプル点であるＰｓｐ［３］と、４番目の仮サンプル点であるＰｓｐ［４］とは、同じ座標であるが、見やすいように重ねずに表示されている。
【００６１】
次に、設定された仮サンプル点から、サンプル数分の仮サンプル点を選択する手法について説明する。図９は、設定された仮サンプル点から、サンプル数分の仮サンプル点が選択された様子を示している。図９では、２０個の仮サンプル点（Ｐｓｐ［１］−Ｐｓｐ［２０］）から、１０個の仮サンプル点（Ｐｓｐ［３］、Ｐｓｐ［５］、Ｐｓｐ［６］、Ｐｓｐ［１０］、Ｐｓｐ［１１］、Ｐｓｐ［１３］、Ｐｓｐ［１４］、Ｐｓｐ［１５］、Ｐｓｐ［１６］、Ｐｓｐ［１７］）が選択された例を示している。
【００６２】
ここで、仮サンプル点は、選択用乱数列と選択用乱数列選択用乱数列とに基づいて、選択される。まず、選択用乱数列選択用乱数列に含まれるＧ個の乱数の中から１個の乱数が選択される。本実施形態では、乱数を選択するためのカウンタ変数により示される要素番号の乱数が、選択用乱数列選択用乱数列から選択されるものとする。なお、このカウンタ変数として、例えば、初期値が１であり、乱数の選択の度に１ずつ増加し、Ｇの次は１に設定される変数を採用することができる。
【００６３】
なお、選択用乱数列選択用乱数列から選択される１個の乱数は、Ｍ以下の自然数である。従って、選択用乱数列選択用乱数列から選択される１個の乱数に基づいて、Ｍ個の選択用乱数列の中から１個の選択用乱数列が選択される。次に、選択された選択用乱数列に含まれるＮ個の乱数のそれぞれに基づいて、１個の仮サンプル点が選択され、合計Ｎ個の仮サンプル点が選択される。なお、本実施形態では、Ｎ＝１０である。
【００６４】
ここで、選択用乱数列に含まれる乱数は、設定される仮サンプル点の個数の上限値以下の自然数である。一方、設定される仮サンプル点の個数は、尤度に応じて変化する場合がある。そこで、１個の乱数から１個の仮サンプル点が適切に選択されるようにする。例えば、選択された１個の乱数をＲｓ［ｍ，ｎ］、設定された仮サンプル点の個数をＮｓｐとしたとき、選択される１個の仮サンプル点はＰｓｐ［（Ｒｓ［ｍ，ｎ］−１）％Ｎｓｐ＋１］として表される。ここで、「％」は、剰余演算子である。
【００６５】
例えば、選択された１個の乱数であるＲｓ［ｍ，ｎ］が２５、設定された仮サンプル点の個数であるＮｓｐが２０である場合、５番目の仮サンプル点であるＰｓｐ［５］が選択される。上述した処理により、サンプル数分の仮サンプル点が選択される。
【００６６】
次に、選択された仮サンプル点のそれぞれを移動させる手法について説明する。
【００６７】
仮サンプル点は、横軸移動用乱数列と縦軸移動用乱数列と横軸移動用乱数列選択用乱数列と縦軸移動用乱数列選択用乱数列とに基づいて移動する。まず、横軸移動用乱数列選択用乱数列に含まれるＧ個の乱数の中から１個の乱数が選択され、縦軸移動用乱数列選択用乱数列に含まれるＧ個の乱数の中から１個の乱数が選択される。本実施形態では、上述したカウンタ変数により示される要素番号の乱数が、横軸移動用乱数列選択用乱数列と縦軸移動用乱数列選択用乱数列とから選択されるものとする。つまり、本実施形態では、選択用乱数列選択用乱数列から乱数を選択するためのカウンタ変数と、横軸移動用乱数列選択用乱数列から乱数を選択するためのカウンタ変数と、縦軸移動用乱数列選択用乱数列から乱数を選択するためのカウンタ変数と、は共用される。
【００６８】
なお、横軸移動用乱数列選択用乱数列から選択される１個の乱数は、Ｍ以下の自然数であり、縦軸移動用乱数列選択用乱数列から選択される１個の乱数は、Ｍ以下の自然数である。従って、移動用乱数列選択用乱数列から選択される１個の乱数に基づいて、Ｍ個の横軸移動用乱数列の中から１個の横軸移動用乱数列が選択され、また、Ｍ個の縦軸移動用乱数列の中から１個の縦軸移動用乱数列が選択される。次に、選択された横軸移動用乱数列に含まれるＮ個の乱数のそれぞれに基づいて、１個の仮サンプル点が横軸方向に移動し、選択された縦軸移動用乱数列に含まれるＮ個の乱数のそれぞれに基づいて、１個の仮サンプル点が縦軸方向に移動する。結果として、Ｎ個の仮サンプル点のそれぞれが、横軸方向と縦軸方向とに移動する。
【００６９】
なお、仮サンプル点の移動量は、例えば、横軸方向に何画素、縦軸方向に何画素というように定められる。従って、横軸移動用乱数列に含まれる乱数は、横軸方向の最大移動可能画素数をＮｘとしたとき、−Ｎｘから＋Ｎｘまでの範囲の数であることが好適である。また、縦軸移動用乱数列に含まれる乱数は、縦軸方向の最大移動可能画素数をＮｙとしたとき、−Ｎｙから＋Ｎｙまでの範囲の数であることが好適である。
【００７０】
ここで、追跡対象の物体の運動方程式は、予測可能な場合と予測可能でない場合とが考えられる。運動方程式が予測可能な場合として、例えば、物体位置推定処理が開始される前から、物体の動きが予測できる場合のほか、物体位置推定処理の途中で、物体の位置の軌跡に基づいて物体の動きが予測できる場合が考えられる。一方、運動方程式が予測可能でない場合として、例えば、物体位置推定処理が開始直後に、物体の動きが予測できない場合のほか、物体位置推定処理の途中で、物体の位置を見失って物体の動きが予測できなくなった場合が考えられる。
【００７１】
ここで、運動方程式が予測可能な場合、仮サンプル点は、この運動方程式に従って横軸方向と縦軸方向とに移動した上で、乱数に従って横軸方向と縦軸方向とに移動する。この場合、例えば、背景の位置に存在するサンプル点に付与される尤度が低下することになり、結果として、物体の近傍にサンプル点が集まることが期待できる。
【００７２】
一方、運動方程式が予測可能でない場合、仮サンプル点は、乱数に従って横軸方向と縦軸方向とに移動する。この場合であっても、動画像上において物体と共に移動したサンプル点に付与される尤度は高いため、物体と共に移動したサンプル点が生き残ることが期待できる。特に、背景部分において注目する画素の位置をずらしたときの輝度値の変化（例えば、背景部分において隣り合う画素の輝度値の差分）が、物体部分において注目する画素の位置をずらしたときの輝度値の変化（例えば、物体部分において隣り合う画素の輝度値の差分）よりも相対的に高い場合、物体の近傍にサンプル点が集まることが期待できる。つまり、物体部分の色のばらつきが、背景部分の色のばらつきよりも小さい場合、運動方程式が予測可能でなくとも、物体の近傍にサンプル点が集まることが期待できる。
【００７３】
ここで、移動後の仮サンプル点のそれぞれは、設定対象フレーム画像に対するサンプル点として設定される。図１０は、１０個の移動後の仮サンプル点（Ｐｓｐ［３］、Ｐｓｐ［５］、Ｐｓｐ［６］、Ｐｓｐ［１０］、Ｐｓｐ［１１］、Ｐｓｐ［１３］、Ｐｓｐ［１４］、Ｐｓｐ［１５］、Ｐｓｐ［１６］、Ｐｓｐ［１７］）のそれぞれが、設定対象フレーム画像に対する１０個のサンプル点（Ｐｓ［１］、Ｐｓ［２］、Ｐｓ［３］、Ｐｓ［４］、Ｐｓ［５］、Ｐｓ［６］、Ｐｓ［７］、Ｐｓ［８］、Ｐｓ［９］、Ｐｓ［１０］）として設定された様子を示している。
【００７４】
図６と図１０との比較からも明らかなように、付与されている尤度が高いサンプル点に基づくサンプル点が生き残りやすくなるようにリサンプリング処理が実行されると、物体の近傍にサンプル点が集まることが期待される。従って、このようなリサンプリング処理が繰り返して実行される物体位置推定処理によれば、物体の位置を正確に把握することが期待できる。
【００７５】
ここで、設定対象フレーム画像に設定されたサンプル点のそれぞれには、重みが付与される。例えば、設定対象フレーム画像に設定されたあるサンプル点に付与される重みは、このサンプル点の設定済フレーム画像における色と、このサンプル点に対応する設定済フレーム画像上のサンプル点の設定済フレーム画像における色と、の類似度が高いほど高く設定される。
【００７６】
なお、上記類似度を定義する手法は、適宜、調整することができる。例えば、フレーム画像がＲ（Red）、Ｇ（Green）、Ｂ（Blue）の３つの成分により表されている場合、３つの成分のそれぞれについて求められた輝度値の差の平均値が小さいほど、類似度が高くなるようにしてもよい。もしくは、３つの成分のうち、最も輝度値の差が大きい成分の輝度値の差が小さいほど、類似度が高くなるようにしてもよい。もしくは、３つの成分のうち、注目する成分の輝度値の差が小さいほど、類似度が高くなるようにしてもよい。
【００７７】
次に、図１１に示すフローチャートを用いて、物体位置推定装置１００が実行する物体位置推定処理について説明する。物体位置推定装置１００は、電源が投入されると、図１１に示す物体位置推定処理を実行する。
【００７８】
まず、ＣＰＵ１１は、初期化処理を実行する（ステップＳ１０１）。具体的には、ＣＰＵ１１は、Ｎ個のサンプル点のそれぞれについて、座標と尤度とを初期化する。例えば、ＣＰＵ１１は、Ｎ個のサンプル点が、動画像上の全領域に亘って、横軸方向及び縦軸方向に等間隔で配置されるように、Ｎ個のサンプル点のそれぞれの座標を決定する。また、ＣＰＵ１１は、Ｎ個のサンプル点のそれぞれに、同一の尤度を付与する。ＣＰＵ１１は、Ｎ個のサンプル点のそれぞれの座標や尤度を、ＲＡＭ１３に記憶する。
【００７９】
また、ＣＰＵ１１は、ＲＡＭ１３に記憶されているカウンタ変数を１に初期化する。また、ＣＰＵ１１は、インターフェース１７を介して、撮像装置２００に撮像を開始させる。一方、撮像装置２００は、ＣＰＵ１１による指示に従って撮像を開始する。以後、撮像装置２００は、撮像により生成される動画像を、インターフェース１７に供給する。ここで、インターフェース１７は、供給された動画像を、フラッシュメモリ１４に供給し、記憶させる。
【００８０】
ＣＰＵ１１は、ステップＳ１０１の処理を完了すると、乱数列を生成する（ステップＳ１０２）。より詳細には、ＣＰＵ１１は、種々の演算により、もしくは、ＲＴＣ１５から取得される値などを用いて、Ｍ個の選択用乱数列と、Ｍ個の横軸移動用乱数列と、Ｍ個の縦軸移動用乱数列と、選択用乱数列選択用乱数列と、横軸移動用乱数列選択用乱数列と、縦軸移動用乱数列選択用乱数列と、を生成する。なお、ＣＰＵ１１は、ボックス＝ミューラー法を用いて、一様乱数から正規乱数を生成することができる。
【００８１】
ＣＰＵ１１は、ステップＳ１０２の処理を完了すると、ステップＳ１０２において生成した乱数列を記憶する（ステップＳ１０３）。具体的には、ＣＰＵ１１は、Ｍ個の選択用乱数列と、Ｍ個の横軸移動用乱数列と、Ｍ個の縦軸移動用乱数列と、選択用乱数列選択用乱数列と、横軸移動用乱数列選択用乱数列と、縦軸移動用乱数列選択用乱数列と、を、フラッシュメモリ１４に記憶させる。
【００８２】
ＣＰＵ１１は、ステップＳ１０３の処理を完了すると、設定対象フレーム画像を取得する（ステップＳ１０４）。具体的には、ＣＰＵ１１は、フラッシュメモリ１４に記憶されている動画像を構成するフレーム画像のうち、最新のフレーム画像を取得する。つまり、本実施形態では、設定対象フレーム画像は、最新のフレーム画像である。ＣＰＵ１１は、取得した設定対象フレーム画像を、適宜、ＲＡＭ１３に記憶する。
【００８３】
ＣＰＵ１１は、ステップＳ１０４の処理を完了すると、仮サンプル点を設定する（ステップＳ１０５）。例えば、ＣＰＵ１１は、設定済フレーム画像（最新の設定済フレーム画像）に設定されているＮ個のサンプル点のそれぞれに対して、サンプル点に付与されている尤度が高いほど多くの個数、サンプル点と同じ座標の仮サンプル点を設定する。なお、設定済フレーム画像が存在しない場合、ＣＰＵ１１は、ステップＳ１０１における初期化処理で設定されたサンプル点の座標や尤度に基づいて、仮サンプル点を設定する。
【００８４】
ＣＰＵ１１は、ステップＳ１０５の処理を完了すると、仮サンプル点を選択する（ステップＳ１０６）。具体的には、まず、ＣＰＵ１１は、選択用乱数列選択用乱数列に含まれる乱数のうち、カウンタ変数により示される要素番号の乱数を取得する。そして、ＣＰＵ１１は、Ｍ個の選択用乱数列の中から、取得した乱数により示される選択用乱数列を取得する。ここで、ＣＰＵ１１は、取得した選択用乱数列に含まれるＮ個の乱数のそれぞれに基づいて、設定された仮サンプル点の中から、１個の仮サンプル点を選択する。つまり、ＣＰＵ１１は、Ｎ個の乱数に基づいて、重複を許して、Ｎ個の仮サンプル点を選択する。
【００８５】
ＣＰＵ１１は、ステップＳ１０６の処理を完了すると、仮サンプル点を移動する（ステップＳ１０７）。具体的には、まず、ＣＰＵ１１は、横軸移動用乱数列選択用乱数列に含まれる乱数のうち、カウンタ変数により示される要素番号の乱数を取得する。そして、ＣＰＵ１１は、Ｍ個の横軸移動用乱数列の中から、取得した乱数により示される横軸移動用乱数列を取得する。また、ＣＰＵ１１は、縦軸移動用乱数列選択用乱数列に含まれる乱数のうち、カウンタ変数により示される要素番号の乱数を取得する。そして、ＣＰＵ１１は、Ｍ個の縦軸移動用乱数列の中から、取得した乱数により示される縦軸移動用乱数列を取得する。
【００８６】
ここで、ＣＰＵ１１は、取得した横軸移動用乱数列に含まれるＮ個の乱数に基づいて、選択されたＮ個の仮サンプル点をそれぞれ横軸方向に移動する。また、ＣＰＵ１１は、取得した縦軸移動用乱数列に含まれるＮ個の乱数に基づいて、選択されたＮ個の仮サンプル点をそれぞれ縦軸方向に移動する。なお、物体の運動方程式が予測可能な場合、ＣＰＵ１１は、選択されたＮ個の仮サンプル点のそれぞれを、さらに、運動方程式に従った移動量、横軸方向及び縦軸方向に移動する。
【００８７】
ＣＰＵ１１は、ステップＳ１０７の処理を完了すると、移動後の仮サンプル点をサンプル点に設定する（ステップＳ１０８）。具体的には、ＣＰＵ１１は、Ｎ個の移動後の仮サンプル点のそれぞれを、設定対象フレーム画像に対して設定する。
【００８８】
ＣＰＵ１１は、ステップＳ１０８の処理を完了すると、サンプル点に尤度を付与する（ステップＳ１０９）。具体的には、ＣＰＵ１１は、設定対象フレーム画像に設定されたＮ個のサンプル点のそれぞれに対して、設定対象フレーム画像に設定されたサンプル点における色と、設定済フレーム画像（最新の設定済フレーム画像）に設定されている、設定対象フレーム画像に設定されたサンプル点に対応するサンプル点における色と、の類似度が高いほど高い尤度を付与する。
【００８９】
ＣＰＵ１１は、ステップＳ１０９の処理を完了すると、カウンタ変数をインクリメントする（ステップＳ１１０）。具体的には、ＣＰＵ１１は、ＲＡＭ１３に記憶されているカウンタ変数の値がＭでない場合、カウンタ変数の値を１増加させ、カウンタ変数の値がＭである場合、カウンタ変数の値を１に設定する。
【００９０】
ＣＰＵ１１は、ステップＳ１１０の処理を完了すると、サンプル点が適切であるか否かを判別する（ステップＳ１１１）。サンプル点が適切であるか否かを判別する手法は、適宜、調整することができる。例えば、ＣＰＵ１１は、設定対象フレーム画像に設定されたＮ個のサンプル点に付与されたＮ個の尤度に基づいて、サンプル点が適切であるか否かを判別することができる。例えば、ＣＰＵ１１は、Ｎ個の尤度の平均値が閾値よりも低い場合、Ｎ個の尤度のうちの最高の尤度が閾値よりも低い場合、もしくは、Ｎ個の尤度のうち閾値よりも高い尤度の個数が閾値よりも少ない場合、サンプル点が適切でないと判別し、それ以外の場合、サンプル点が適切であると判別することができる。
【００９１】
ＣＰＵ１１は、サンプル点が適切であると判別すると（ステップＳ１１１：ＹＥＳ）、物体の位置を推定する（ステップＳ１１２）。なお、物体の位置を推定する手法は、適宜、調整することができる。例えば、ＣＰＵ１１は、設定対象フレーム画像に設定されたＮ個のサンプル点の座標の加重平均を求め、求められた座標をＮ個のサンプル点の重心とする。なお、加重平均の計算時、サンプル点に付与されている尤度に基づいて、サンプル点の座標が重み付けされる。そして、ＣＰＵ１１は、求められたＮ個のサンプル点の重心を、物体の位置（典型的には、物体の中心位置）と推定することができる。
【００９２】
また、ＣＰＵ１１は、物体の位置の履歴をＲＡＭ１３などに記憶することができる。この場合、ＣＰＵ１１は、ＲＡＭ１３に記憶されている物体の位置の履歴に基づいて、物体の動きを示す運動方程式を推定することができる。
【００９３】
一方、ＣＰＵ１１は、サンプル点が適切でないと判別すると（ステップＳ１１１：ＮＯ）、サンプル点と尤度とを初期化する（ステップＳ１１３）。例えば、ＣＰＵ１１は、ステップＳ１０１の初期化処理と同様に、Ｎ個のサンプル点のそれぞれの座標と、Ｎ個のサンプル点のそれぞれの尤度とを、初期化することができる。そして、ＣＰＵ１１は、設定対象フレーム画像に、座標と尤度とが初期化されたＮ個のサンプル点を設定する。なお、サンプル点が適切でないと判別される典型的な例として、物体が予測外の動きをした場合、物体が正常に撮像できず正常な動画像が生成されない場合などが考えられる。
【００９４】
ＣＰＵ１１は、ステップＳ１１２又はステップＳ１１３の処理を完了すると、ステップＳ１０４に処理を戻し、最新のフレーム画像を新たな設定対象フレーム画像としてリサンプリングを継続する。以降、ＣＰＵ１１は、ステップＳ１０４からステップＳ１１３までの処理を繰り返し実行する。
【００９５】
本実施形態によれば、物体位置推定処理の前処理（例えば、ステップＳ１０１〜ステップＳ１０３の処理）において各種の乱数列が生成され、物体位置推定処理の本処理（例えば、ステップＳ１０４〜ステップＳ１１３の処理）において各種の乱数列が生成されない。従って、物体位置推定処理の本処理における処理速度の向上が期待できる。
【００９６】
また、本実施形態によれば、選択用乱数列、横軸移動用乱数列、縦軸移動用乱数列などが複数個用意され、これらの乱数列を選択するための乱数列が用意される。従って、比較的少ない個数の乱数列に基づいて、バリエーションに富んだ乱数が提供される。
【００９７】
なお、選択用乱数列に基づいて選択される仮サンプル点は、サンプル点に付与された尤度に応じて合計の個数が変化する仮サンプル点から選択される。このため、選択用乱数列により提供される乱数がある程度固定化されていたとしても、選択される仮サンプル点に偏りが生じる可能性は低いと考えられる。
【００９８】
また、横軸移動用乱数列や縦軸移動用乱数列に基づいて移動する仮サンプル点は、設定された仮サンプル点の中からランダムに選択された仮サンプル点である。このため、横軸移動用乱数列や縦軸移動用乱数列により提供される乱数がある程度固定化され、移動量に偏りがあるとしても、移動対象となる仮サンプル点の座標が変化することで、仮サンプル点の位置に依存した移動量となる可能性は低いと考えられる。
【００９９】
（変形例）
本発明は、上記実施形態に開示したものに限られない。
【０１００】
本発明において、上記実施形態において説明した構成、機能、動作のどの部分を採用するのかは任意である。また、本発明において、上述した構成、機能、動作のほか、更なる構成、機能、動作が採用されてもよい。
【０１０１】
上記実施形態では、点同士の色の比較により求められた類似度に基づいて、サンプル点に付与される重みが決定される例について説明した。本発明において、領域同士の色の比較により求められた類似度に基づいて、サンプル点に付与される重みが決定されてもよい。
【０１０２】
この場合、例えば、重み付与部１０７は、サンプル点設定部１０６により設定対象フレーム画像に設定されたサンプル点のそれぞれに、設定対象フレーム画像に設定されたサンプル点を中心とする特定領域における色と、設定済フレーム画像に設定されている、設定対象フレーム画像に設定されたサンプル点に対応するサンプル点を中心とする特定領域における色と、の類似度が高いほど大きな重みを付与する。このように領域単位で色を比較することにより、ノイズなどの影響を減少させることが期待できる。なお、領域単位で色を比較することは、例えば、原色毎に、各領域に含まれる画素の輝度値の平均値（単純平均値もしくは加重平均値）を比較することである。
【０１０３】
また、特定領域は、サンプル数が少ないほど広く設定されてもよい。ここで、サンプル数が多いほど、物体の位置を正確に推定することが期待できる。一方、サンプル数が少ないほど、物体位置推定処理を高速で実行することが期待できる。また、特定領域が広いほど、少ないサンプル数でも、物体の位置を推定しやすくなることが期待される。一方、特定領域が狭いほど、物体位置推定処理を高速で実行することが期待できる。そこで、サンプル数が少ないほど特定領域が広く設定されることにより、物体の位置を適切に推定することが可能な範囲で、物体位置推定処理の実行速度を高めることが期待できる。なお、特定領域は、例えば、サンプル点との座標（Ｘ座標およびＹ座標）の差が、所定の値以下である点の集合体とすることができる。
【０１０４】
なお、フレーム画像がＲＧＢ形式やＨＳＶ（Hue Saturation Lightness）形式などである場合、１画素単位で画素情報を有している。従って、フレーム画像がＲＧＢ形式やＨＳＶ形式などである場合、特定領域を１画素単位で自由に設定可能である。一方、フレーム画像がＹＵＶ形式などである場合、隣接する２画素で画素情報を共有している。従って、フレーム画像がＹＵＶ形式などである場合、特定領域を２画素単位で設定することが好適である。
【０１０５】
上記実施形態では、初期化の際、又は、サンプル点が適切でないことが判別された際、フレーム画像全体に、格子状にサンプル点を配置する例について説明した。本発明において、初期化などの際、サンプル点を配置する手法は、この例に限定されない。
【０１０６】
例えば、乱数列生成部１０１などにより予め生成され、乱数列記憶部１０２などに記憶されている、サンプル数分の一様乱数を有する、横軸用一様乱数列と縦軸用一様乱数列とに基づいて、フレーム画像全体に、ランダムにサンプル点が配置されてもよい。なお、このような横軸用一様乱数列（縦軸用一様乱数列）は、複数個用意されてもよい。この場合、例えば、複数個の横軸用一様乱数列（縦軸用一様乱数列）の中から１個の横軸用一様乱数列（縦軸用一様乱数列）を選択するための一様乱数列選択用乱数列が、乱数列生成部１０１などにより生成され、乱数列記憶部１０２に記憶されてもよい。また、例えば、フレーム画像上のどの辺りに物体が存在しているのかが予測可能な場合、物体が存在していると予測される領域に、ランダムに、又は、格子状に、サンプル点が配置されてもよい。
【０１０７】
上記実施形態では、選択用乱数列の選択のために選択用乱数列選択用乱数列が使用され、横軸移動用乱数列の選択のために横軸移動用乱数列選択用乱数列が使用され、縦軸移動用乱数列の選択のために縦軸移動用乱数列選択用乱数列が使用される例について説明した。本発明において、乱数列の選択のために使用される選択用乱数列が共用されてもよい。また、乱数列の選択のために、選択用乱数列に代えて、インクリメント又はデクリメントされるカウンタ変数が用いられてもよい。
【０１０８】
また、上記実施形態では、選択用乱数列選択用乱数列から乱数を選択するためのカウンタ変数と、横軸移動用乱数列選択用乱数列から乱数を選択するためのカウンタ変数と、縦軸移動用乱数列選択用乱数列から乱数を選択するためのカウンタ変数と、が共用される例について説明した。本発明において、このカウンタ変数は、選択用乱数列毎に、別々に用意されてもよい。
【０１０９】
上記実施形態では、設定された仮サンプル点から、サンプル数分の仮サンプル点が選択される際、剰余演算により、１個の乱数から１個の仮サンプル点が選択される例について説明した。本発明において、設定された仮サンプル点から、サンプル数分の仮サンプル点が選択される際、１個の乱数から１個の仮サンプル点を選択する手法は、この例に限定されない。例えば、サンプル数分のサンプル点のそれぞれに付与された重みの合計値が一定の値になるように、各サンプル点に付与する重みを調整することができる。かかる構成によれば、選択用乱数列が有する乱数の上限値を上記一定の値に設定することにより、剰余演算を用いずに、サンプル数分の仮サンプル点が選択される。
【０１１０】
また、各種の乱数列が有する要素数や、各種の乱数列の個数が上記実施形態で示したものに限定されないことは勿論である。
【０１１１】
上記実施形態では、電源投入時に、各種の乱数列が生成及び記憶される例について説明した。本発明において、各種の乱数列が生成及び記憶されるタイミングは、この例に限定されない。例えば、物体位置推定処理中の処理負荷が軽い時期に、各種の乱数列が生成（再生成）及び記憶（更新）されてもよい。
【０１１２】
上記実施形態では、物体位置推定装置と撮像装置とが別の装置である例について説明した。本発明において、物体位置推定装置が撮像装置の機能を有していてもよい。
【０１１３】
上記実施形態では、動画像を構成する全てのフレーム画像に対して、サンプル点が設定される例について説明した。本発明において、例えば、物体位置推定装置の処理能力に応じて、適宜、動画像を構成するフレーム画像のうち、所定の間隔で間引かれるフレーム画像に対して、サンプル点が設定されてもよい。
【０１１４】
なお、本発明に係る物体位置推定装置は、専用のシステムによらず、通常のコンピュータシステムを用いても実現可能である。例えば、コンピュータに、上記動作を実行するためのプログラムを、フレキシブルディスク、ＣＤ−ＲＯＭ（Ｃｏｍｐａｃｔ  Ｄｉｓｃ  Ｒｅａｄ−Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｃ）、ＭＯ（Ｍａｇｎｅｔｏ  Ｏｐｔｉｃａｌ  Ｄｉｓｃ）などのコンピュータ読み取り可能な記録媒体に記憶して配布し、これをコンピュータシステムにインストールすることにより、上述の処理を実行する物体位置推定装置を構成しても良い。
【０１１５】
さらに、インターネット上のサーバ装置が有するディスク装置等にプログラムを記憶しておき、例えば、搬送波に重畳させて、コンピュータにダウンロード等するものとしてもよい。
【０１１６】
以上、本発明の実施形態について説明したが、この実施形態は、例示に過ぎず、本発明の技術的範囲を限定するものではない。本発明はその他の様々な実施形態をとることが可能であり、さらに、本発明の要旨を逸脱しない範囲で、省略や置換等種々の変更を行うことができる。これら実施形態やその変形は、特許請求の範囲に記載された発明とその均等の範囲に含まれる。以下に、本願出願当初の特許請求の範囲に記載された発明を付記する。
【０１１７】
（付記１）
サンプル数分の乱数を有する第１乱数列と、前記サンプル数分の乱数を有する第２乱数列と、を生成する乱数列生成手段と、
前記乱数列生成手段により生成された第１乱数列と第２乱数列とを記憶する乱数列記憶手段と、
動画像を構成するフレーム画像のうちの設定済フレーム画像に設定されている、前記サンプル数分のサンプル点のそれぞれについて、前記サンプル点に付与されている重みが大きいほど多くの個数、前記サンプル点と同じ座標の仮サンプル点を設定する仮サンプル点設定手段と、
前記乱数列記憶手段に記憶されている第１乱数列に基づいて、前記仮サンプル点設定手段により設定された仮サンプル点の中から、前記サンプル数分の仮サンプル点を選択する仮サンプル点選択手段と、
前記乱数列記憶手段に記憶されている第２乱数列に基づいて、前記仮サンプル点選択手段により選択された仮サンプル点のそれぞれを移動させる仮サンプル点移動手段と、
前記仮サンプル点移動手段による移動後の仮サンプル点とそれぞれ同じ座標の前記サンプル数分のサンプル点を、前記動画像を構成するフレーム画像のうちの設定対象フレーム画像に設定するサンプル点設定手段と、
前記サンプル点設定手段により前記設定対象フレーム画像に設定されたサンプル点のそれぞれに、前記設定対象フレーム画像に設定されたサンプル点における色と、前記設定済フレーム画像に設定されている、前記設定対象フレーム画像に設定されたサンプル点に対応するサンプル点における色と、の類似度が高いほど大きな重みを付与する重み付与手段と、
前記設定対象フレーム画像に設定されたサンプル点のそれぞれの座標と、前記重み付与手段により、前記設定対象フレーム画像に設定されたサンプル点のそれぞれに付与された重みと、に基づいて、前記動画像上における物体の位置を推定する物体位置推定手段と、を備える、
ことを特徴とする物体位置推定装置。
【０１１８】
（付記２）
前記第１乱数列は、前記サンプル数分の一様乱数を有し、
前記第２乱数列は、前記サンプル数分の正規乱数を有する、
ことを特徴とする付記１に記載の物体位置推定装置。
【０１１９】
（付記３）
前記乱数列生成手段は、少なくとも２個の前記第１乱数列と、少なくとも２個の前記第２乱数列と、少なくとも２個の一様乱数を有する第３乱数列と、少なくとも２個の一様乱数を有する第４乱数列と、を生成し、
前記乱数列記憶手段は、前記乱数列生成手段により生成された、少なくとも２個の第１乱数列と少なくとも２個の第２乱数列と第３乱数列と第４乱数列と、を記憶し、
前記仮サンプル点選択手段は、前記乱数列記憶手段に記憶されている第３乱数列に基づいて、前記乱数列記憶手段に記憶されている少なくとも２個の第１乱数列の中から１個の第１乱数列を選択し、選択された１個の第１乱数列に基づいて、前記仮サンプル点設定手段により設定された仮サンプル点の中から、前記サンプル数分の仮サンプル点を選択し、
前記仮サンプル点移動手段は、前記乱数列記憶手段に記憶されている第４乱数列に基づいて、前記乱数列記憶手段に記憶されている少なくとも２個の第２乱数列の中から２個の第２乱数列を選択し、選択された２個の第２乱数列に基づいて、前記仮サンプル点選択手段により選択された仮サンプル点のそれぞれを移動させる、
ことを特徴とする付記１又は２に記載の物体位置推定装置。
【０１２０】
（付記４）
前記重み付与手段は、前記サンプル点設定手段により前記設定対象フレーム画像に設定されたサンプル点のそれぞれに、前記設定対象フレーム画像に設定されたサンプル点を中心とする特定領域における色と、前記設定済フレーム画像に設定されている、前記設定対象フレーム画像に設定されたサンプル点に対応するサンプル点を中心とする特定領域における色と、の類似度が高いほど大きな重みを付与する、
ことを特徴とする付記１乃至３のいずれか１項に記載の物体位置推定装置。
【０１２１】
（付記５）
前記特定領域は、前記サンプル数が少ないほど広く設定される、
ことを特徴とする付記４に記載の物体位置推定装置。
【０１２２】
（付記６）
サンプル数分の乱数を有する第１乱数列と、前記サンプル数分の乱数を有する第２乱数列と、を生成する乱数列生成ステップと、
前記乱数列生成ステップにより生成された第１乱数列と第２乱数列とを記憶する乱数列記憶ステップと、
動画像を構成するフレーム画像のうちの設定済フレーム画像に設定されている、前記サンプル数分のサンプル点のそれぞれについて、前記サンプル点に付与されている重みが大きいほど多くの個数、前記サンプル点と同じ座標の仮サンプル点を設定する仮サンプル点設定ステップと、
前記乱数列記憶ステップにより記憶された第１乱数列に基づいて、前記仮サンプル点設定ステップにより設定された仮サンプル点の中から、前記サンプル数分の仮サンプル点を選択する仮サンプル点選択ステップと、
前記乱数列記憶ステップにより記憶された第２乱数列に基づいて、前記仮サンプル点選択ステップにより選択された仮サンプル点のそれぞれを移動させる仮サンプル点移動ステップと、
前記仮サンプル点移動ステップによる移動後の仮サンプル点とそれぞれ同じ座標の前記サンプル数分のサンプル点を、前記動画像を構成するフレーム画像のうちの設定対象フレーム画像に設定するサンプル点設定ステップと、
前記サンプル点設定ステップにより前記設定対象フレーム画像に設定されたサンプル点のそれぞれに、前記設定対象フレーム画像に設定されたサンプル点における色と、前記設定済フレーム画像に設定されている、前記設定対象フレーム画像に設定されたサンプル点に対応するサンプル点における色と、の類似度が高いほど大きな重みを付与する重み付与ステップと、
前記設定対象フレーム画像に設定されたサンプル点のそれぞれの座標と、前記重み付与ステップにより、前記設定対象フレーム画像に設定されたサンプル点のそれぞれに付与された重みと、に基づいて、前記動画像上における物体の位置を推定する物体位置推定ステップと、を含む、
ことを特徴とする物体位置推定方法。
【０１２３】
（付記７）
コンピュータを、
サンプル数分の乱数を有する第１乱数列と、前記サンプル数分の乱数を有する第２乱数列と、を生成する乱数列生成手段、
前記乱数列生成手段により生成された第１乱数列と第２乱数列とを記憶する乱数列記憶手段、
動画像を構成するフレーム画像のうちの設定済フレーム画像に設定されている、前記サンプル数分のサンプル点のそれぞれについて、前記サンプル点に付与されている重みが大きいほど多くの個数、前記サンプル点と同じ座標の仮サンプル点を設定する仮サンプル点設定手段、
前記乱数列記憶手段に記憶されている第１乱数列に基づいて、前記仮サンプル点設定手段により設定された仮サンプル点の中から、前記サンプル数分の仮サンプル点を選択する仮サンプル点選択手段、
前記乱数列記憶手段に記憶されている第２乱数列に基づいて、前記仮サンプル点選択手段により選択された仮サンプル点のそれぞれを移動させる仮サンプル点移動手段、
前記仮サンプル点移動手段による移動後の仮サンプル点とそれぞれ同じ座標の前記サンプル数分のサンプル点を、前記動画像を構成するフレーム画像のうちの設定対象フレーム画像に設定するサンプル点設定手段、
前記サンプル点設定手段により前記設定対象フレーム画像に設定されたサンプル点のそれぞれに、前記設定対象フレーム画像に設定されたサンプル点における色と、前記設定済フレーム画像に設定されている、前記設定対象フレーム画像に設定されたサンプル点に対応するサンプル点における色と、の類似度が高いほど大きな重みを付与する重み付与手段、
前記設定対象フレーム画像に設定されたサンプル点のそれぞれの座標と、前記重み付与手段により、前記設定対象フレーム画像に設定されたサンプル点のそれぞれに付与された重みと、に基づいて、前記動画像上における物体の位置を推定する物体位置推定手段、として機能させる、
ことを特徴とするプログラム。
【符号の説明】
【０１２４】
１１・・・ＣＰＵ、１２・・・ＲＯＭ、１３・・・ＲＡＭ、１４・・・フラッシュメモリ、１５・・・ＲＴＣ、１６・・・タッチスクリーン、１７・・・インターフェース、１００・・・物体位置推定装置、１０１・・・乱数列生成部、１０２・・・乱数列記憶部、１０３・・・仮サンプル点設定部、１０４・・・仮サンプル点選択部、１０５・・・仮サンプル点移動部、１０６・・・サンプル点設定部、１０７・・・重み付与部、１０８・・・物体位置推定部、１０９・・・動画像取得部、２００・・・撮像装置、６００・・・物体
【図１】
2015076056.tif 000003
【図２】
2015076056.tif 000004
【図３】
2015076056.tif 000005
【図４】
2015076056.tif 000006
【図５】
2015076056.tif 000007
【図６】
2015076056.tif 000008
【図７】
2015076056.tif 000009
【図８】
2015076056.tif 000010
【図９】
2015076056.tif 000011
【図１０】
2015076056.tif 000012
【図１１】
2015076056.tif 000013