特許第5983132号(P5983132)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ カシオ計算機株式会社の特許一覧

特許5983132位置決定装置、位置決定システム、位置決定方法及びプログラム
<>
  • 特許5983132-位置決定装置、位置決定システム、位置決定方法及びプログラム 図000002
  • 特許5983132-位置決定装置、位置決定システム、位置決定方法及びプログラム 図000003
  • 特許5983132-位置決定装置、位置決定システム、位置決定方法及びプログラム 図000004
  • 特許5983132-位置決定装置、位置決定システム、位置決定方法及びプログラム 図000005
  • 特許5983132-位置決定装置、位置決定システム、位置決定方法及びプログラム 図000006
  • 特許5983132-位置決定装置、位置決定システム、位置決定方法及びプログラム 図000007
  • 特許5983132-位置決定装置、位置決定システム、位置決定方法及びプログラム 図000008
  • 特許5983132-位置決定装置、位置決定システム、位置決定方法及びプログラム 図000009
  • 特許5983132-位置決定装置、位置決定システム、位置決定方法及びプログラム 図000010
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】5983132
(24)【登録日】2016年8月12日
(45)【発行日】2016年8月31日
(54)【発明の名称】位置決定装置、位置決定システム、位置決定方法及びプログラム
(51)【国際特許分類】
   G01B 11/00 20060101AFI20160818BHJP
   G06T 7/60 20060101ALI20160818BHJP
【FI】
   G01B11/00 H
   G06T7/60 150D
【請求項の数】9
【全頁数】21
(21)【出願番号】特願2012-161323(P2012-161323)
(22)【出願日】2012年7月20日
(65)【公開番号】特開2014-20986(P2014-20986A)
(43)【公開日】2014年2月3日
【審査請求日】2015年6月9日
(73)【特許権者】
【識別番号】000001443
【氏名又は名称】カシオ計算機株式会社
(74)【代理人】
【識別番号】110001254
【氏名又は名称】特許業務法人光陽国際特許事務所
(72)【発明者】
【氏名】牧野 哲司
(72)【発明者】
【氏名】佐々木 雅昭
【審査官】 ▲うし▼田 真悟
(56)【参考文献】
【文献】 特開2005−258891(JP,A)
【文献】 特開2002−259984(JP,A)
【文献】 特開2001−133222(JP,A)
【文献】 特開2007−004732(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G01B 11/00−11/30
G06T 1/00
G06T 7/60
(57)【特許請求の範囲】
【請求項1】
複数のマーカーが付されたヒトが所定の一方向から撮像された画像内のマーカーの位置を決定する位置決定装置において、
前記画像を取得する取得手段と、
この取得手段により取得された画像内のマーカーを検出する第1検出手段と、
前記画像に含まれる前記ヒトの画像の顔画像を検出する第2検出手段と、
前記第2検出手段により検出された顔画像の所定方向の軸を中心とする回動角度を算出する算出手段と、
この算出手段により算出された回動角度に基づいて、前記ヒトの前記所定方向の軸を中心とする回動動作に係る回動情報を生成する第1生成手段と、
前記回動情報に基づいて、前記第1検出手段により非検出のマーカーの位置を推定する推定手段と、
ヒトに付された全てのマーカーの位置を決定する決定手段と、を備え、
前記決定手段は、
前記第1検出手段によるマーカーの検出結果及び前記推定手段により推定されたマーカーの位置を用いて、前記ヒトに付された全てのマーカーの位置を決定することを特徴とする位置決定装置。
【請求項2】
前記マーカーは、前記ヒトの複数の可動部分に複数付されていることを特徴とする請求項1に記載の位置決定装置。
【請求項3】
記回動情報に基づいて、前記ヒトが回動しているか否か判定する回動判定手段を備え、
前記推定手段は、前記回動判定手段により前記ヒトが回動していると判定された場合に、前記回動情報に基づいて、前記第1検出手段により非検出のマーカーの位置を推定することを特徴とする請求項に記載の位置決定装置。
【請求項4】
前記取得手段は、所定の時間内にそれぞれ異なるタイミングで撮像された複数の画像を取得し、
前記推定手段は、前記第1検出手段により前記複数の画像のうちの何れか一の画像にて非検出のマーカーと対応するマーカーが当該複数の画像のうちの前記一の画像と異なる他の画像から検出された場合に、前記他の画像から検出されたマーカーの位置に基づいて前記非検出のマーカーの位置を推定することを特徴とする請求項又はに記載の位置決定装置。
【請求項5】
前記決定手段は、所定の時間内にそれぞれ異なるタイミングで撮像された複数の画像について、前記ヒトに付された複数のマーカーの位置を決定し、
前記決定手段により決定された前記複数の画像に係る複数のマーカーの位置に基づいて、前記ヒトの動作を示す動作情報を生成する第2生成手段を更に備えることを特徴とする請求項の何れか一項に記載の位置決定装置。
【請求項6】
前記ヒトを前記所定の一方向から撮像する撮像手段を更に備え、
前記取得手段は、前記撮像手段により撮像された画像を取得することを特徴とする請求項1〜の何れか一項に記載の位置決定装置。
【請求項7】
複数のマーカーが付されたヒトを所定の一方向から撮像する撮像装置と、
請求項1〜の何れか一項に記載の位置決定装置と、を備える位置決定システムであって、
前記位置決定装置の前記取得手段は、前記撮像装置により撮像された画像を取得することを特徴とする位置決定システム。
【請求項8】
複数のマーカーが付されたヒトが所定の一方向から撮像された画像内のマーカーの位置を決定する位置決定装置を用いた位置決定方法であって、
前記画像を取得するステップと、
取得された画像内のマーカーを検出するステップと、
前記画像に含まれる前記ヒトの画像の顔画像を検出するステップと、
検出された顔画像の所定方向の軸を中心とする回動角度を算出するステップと、
算出された回動角度に基づいて、前記ヒトの前記所定方向の軸を中心とする回動動作に係る回動情報を生成するステップと、
前記回動情報に基づいて、非検出のマーカーの位置を推定するステップと、
ヒトに付された全てのマーカーの位置を決定するステップと、を有し、
前記全てのマーカーの位置を決定するステップは、
前記取得された画像内のマーカーを検出するステップによるマーカーの検出結果及び前記非検出のマーカーの位置を推定するステップにより推定されたマーカーの位置を用いて、前記ヒトに付された全てのマーカーの位置を決定することを特徴とする位置決定方法。
【請求項9】
複数のマーカーが付されたヒトが所定の一方向から撮像された画像内のマーカーの位置を決定する位置決定装置のコンピュータを、
前記画像を取得する手段、
取得された画像内のマーカーを検出する第1検出手段、
前記画像に含まれる前記ヒトの画像の顔画像を検出する手段、
検出された顔画像の所定方向の軸を中心とする回動角度を算出する手段、
算出された回動角度に基づいて、前記ヒトの前記所定方向の軸を中心とする回動動作に係る回動情報を生成する手段、
前記回動情報に基づいて、前記第1検出手段により非検出のマーカーの位置を推定する推定手段、
前記ヒトに付された全てのマーカーの位置を決定する決定手段、として機能させ、
前記決定手段は、
前記第1検出手段によるマーカーの検出結果及び前記推定手段により推定されたマーカーの位置を用いて、前記ヒトに付された全てのマーカーの位置を決定することを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、位置決定装置、位置決定システム、位置決定方法及びプログラムに関する。
【背景技術】
【0002】
従来、被写体の動作を示す動作情報を生成する手法として、マーカーが付された被写体が複数の方向から撮像された複数の動画像データに基づいて動作情報を生成するモーションキャプチャシステムが知られている(例えば、特許文献1)。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開平10−222668号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
ところで、所定の一方向から被写体を撮像した画像から動作情報を生成する場合、被写体が回動動作等を行って当該被写体の一部分により撮像装置とマーカーとの間が遮られると、マーカーの位置の検出を検出することができなくなるといった問題がある。
【0005】
本発明の課題は、所定の一方向からヒトが撮像された画像に基づいて、ヒトに付された全てのマーカーの位置を決定することができる位置決定装置、位置決定システム、位置決定方法及びプログラムを提供することである。
【課題を解決するための手段】
【0006】
上記課題を解決するため、本発明の位置決定装置は、複数のマーカーが付されたヒトが所定の一方向から撮像された画像内のマーカーの位置を決定する位置決定装置において、前記画像を取得する取得手段と、この取得手段により取得された画像内のマーカーを検出する第1検出手段と、前記画像に含まれる前記ヒトの画像の顔画像を検出する第2検出手段と、前記第2検出手段により検出された顔画像の所定方向の軸を中心とする回動角度を算出する算出手段と、この算出手段により算出された回動角度に基づいて、前記ヒトの前記所定方向の軸を中心とする回動動作に係る回動情報を生成する第1生成手段と、前記回動情報に基づいて、前記第1検出手段により非検出のマーカーの位置を推定する推定手段と、前ヒトに付された全てのマーカーの位置を決定する決定手段と、を備え、前記決定手段は、前記第1検出手段によるマーカーの検出結果及び前記推定手段により推定されたマーカーの位置を用いて、前記ヒトに付された全てのマーカーの位置を決定することを特徴とする。
【0007】
また、本発明の位置決定システムは、複数のマーカーが付されたヒトを所定の一方向から撮像する撮像装置と、請求項1〜の何れか一項に記載の位置決定装置と、を備える位置決定システムであって、前記位置決定装置の前記取得手段は、前記撮像装置により撮像された画像を取得することを特徴とする。
【0008】
また、本発明の位置決定方法は、複数のマーカーが付されたヒトが所定の一方向から撮像された画像内のマーカーの位置を決定する位置決定装置を用いた位置決定方法であって、前記画像を取得するステップと、取得された画像内のマーカーを検出するステップと、前記画像に含まれる前記ヒトの画像の顔画像を検出するステップと、検出された顔画像の所定方向の軸を中心とする回動角度を算出するステップと、算出された回動角度に基づいて、前記ヒトの前記所定方向の軸を中心とする回動動作に係る回動情報を生成するステップと、前記回動情報に基づいて、非検出のマーカーの位置を推定するステップと、前ヒトに付された全てのマーカーの位置を決定するステップと、を有し、前記全てのマーカーの位置を決定するステップは、前記取得された画像内のマーカーを検出するステップによるマーカーの検出結果及び前記非検出のマーカーの位置を推定するステップにより推定されたマーカーの位置を用いて、前記ヒトに付された全てのマーカーの位置を決定することを特徴とする。
【0009】
また、本発明のプログラムは、複数のマーカーが付されたヒトが所定の一方向から撮像された画像内のマーカーの位置を決定する位置決定装置のコンピュータを、前記画像を取得する手段、取得された画像内のマーカーを検出する第1検出手段、前記画像に含まれる前記ヒトの画像の顔画像を検出する手段、検出された顔画像の所定方向の軸を中心とする回動角度を算出する手段、算出された回動角度に基づいて、前記ヒトの前記所定方向の軸を中心とする回動動作に係る回動情報を生成する手段、前記回動情報に基づいて、前記第1検出手段により非検出のマーカーの位置を推定する推定手段、前記ヒトに付された全てのマーカーの位置を決定する決定手段、として機能させ、前記決定手段は、前記第1検出手段によるマーカーの検出結果及び前記推定手段により推定されたマーカーの位置を用いて、前記ヒトに付された全てのマーカーの位置を決定することを特徴とする。
【発明の効果】
【0010】
本発明によれば、所定の一方向からヒトを撮像した画像に基づいて、ヒトに付された全てのマーカーの位置を決定することができる。
【図面の簡単な説明】
【0011】
図1】本発明を適用した一実施形態の位置決定システムの概略構成を示すブロック図である。
図2】位置決定装置の概略構成を示すブロック図である。
図3】動作情報生成処理に係る動作の一例を示すフローチャートである。
図4】マーカー位置決定処理に係る動作の一例を示すフローチャートである。
図5】複数の可動部分にマーカーが付された被写体の一例を示す図である。
図6】顔画像と、顔画像の回動角度との対応関係の一例を示す図である。
図7】回動動作を行う被写体が撮像された場合の被写体画像の一例を示す図である。図7(a)は被写体の回動角度が0[度]である場合を示す図である。図7(b)は被写体の回動角度が−45[度]である場合を示す図である。図7(c)は被写体の回動角度が−90[度]である場合を示す図である。
図8図7に示す被写体と撮像装置との関係を示す図である。図8(a)は被写体の回動角度が0[度]である場合を示す図である。図8(b)は被写体の回動角度が−45[度]である場合を示す図である。図8(c)は被写体の回動角度が−90[度]である場合を示す図である。
図9】回動動作が行われていない被写体画像において非検出のマーカーがある場合の一例を示す図である。
【発明を実施するための形態】
【0012】
以下に、本発明について、図面を用いて具体的な態様を説明する。ただし、発明の範囲は、図示例に限定されない。
図1は、本発明を適用した一実施形態の位置決定システム100の概略構成を示すブロック図である。
図1に示すように、本実施形態の位置決定システム100は、撮像装置1と、位置決定装置2とを備える。
【0013】
先ず、撮像装置1について説明する。
撮像装置1は、複数の可動部分にマーカーが付された被写体P(図5参照)を所定の一方向から撮像する。
具体的には、撮像装置1は、例えば、撮像レンズの光軸を被写体Pが存する所定の一方向(例えば、方向V1;図8(a)〜(c)参照)に向けるように、当該被写体Pを撮像可能な所定の位置に固定されている。被写体Pには、複数の可動部分にマーカー(例えば、マーカーM1〜M16等;図5参照)が予め付されている。
そして、撮像装置1は、マーカーが付された被写体Pを撮像した画像データを生成して記録媒体Cに記録する。具体的には、撮像装置1は、被写体Pを所定の時間連続して撮像し、所定のフレームレートを有する動画像データを生成して記録媒体Cに記録する。
なお、撮像装置1は、例えば、所定の時間内においてそれぞれ異なる複数のタイミングで被写体Pを撮像し、各タイミングで撮像された静止画像データを生成して記録媒体Cに記録するようにしてもよい。
【0014】
ここで、マーカーについて説明する。
マーカーは、被写体に存する複数の可動部分に付される。例えば、マーカーは、被写体Pであるヒトの間接に対応する位置や、被写体Pの動作に応じて揺動する部分の先端又は当該先端の近傍等、被写体Pの動作に応じて位置が変化する複数の箇所に付される。
具体的には、マーカーは、例えば、図5に示すように、被写体Pの顔が面する側(正面側)の顔、肩、又、両脚及び両腕に付されている。ここで、顔には上下方向に並ぶように二つのマーカーM1、M2が付されている。また、首の付け根には一つのマーカーM3が付されている。また、股の上方には一つのマーカーM4が付されている。また、右脚の膝、脛の付け根及びつま先にはそれぞれ一つずつのマーカーM5、M6、M7が付されている。また、左脚の膝、脛の付け根及びつま先にはそれぞれ一つずつのマーカーM8、M9、M10が付されている。また、右肩、右肘、右手の付け根にはそれぞれ一つずつのマーカーM11、M12、M13が付されている。また、左肩、左肘、左手の付け根にはそれぞれ一つずつのマーカーM14、M15、M16が付されている。
【0015】
また、マーカーは、例えば、所定の形状(例えば、円形等)や所定の色等をなし、互いに識別可能な特徴を有する指標である。形状や色等、マーカーが有する各種の特徴は、マーカーが付される被写体Pとの識別、特に、視覚的な識別が容易となるよう定められる。
また、上記のマーカーの各種の特徴や、被写体Pに付されたマーカーの数、マーカーどうしの位置関係、各マーカーが付された被写体Pの可動部分どうしの関係等、マーカーに係る各種の特徴を示す情報(マーカー情報)が、位置決定装置2の所定の記録手段(図示略)に記録されている。
【0016】
なお、撮像装置1は、公知のものを適用可能であり、例えば、主要な機能を撮像機能とするデジタルカメラ等だけでなく、主要な機能としないものの撮像機能を具備する携帯電話機等も含む。
【0017】
次に、位置決定装置2について図2を参照して説明する。
位置決定装置2は、例えば、パーソナルコンピュータ等により構成され、撮像装置1により記録された画像データを記録媒体Cから読み出して被写体Pの動作情報を生成する。
【0018】
図2は、位置決定装置2の概略構成を示すブロック図である。
図2に示すように、位置決定装置2は、具体的には、記録媒体制御部201と、画像取得部202と、マーカー検出部203と、回動角度算出部204と、回動情報生成部205と、マーカー位置決定部206と、動作情報生成部207と、表示部208と、操作入力部209と、中央制御部210等を備えている。
【0019】
記録媒体制御部201は、記録媒体Cが着脱自在に構成され、装着された記録媒体Cからのデータの読み出しや記録媒体Cに対するデータの書き込みを制御する。即ち、記録媒体制御部201は、撮像装置1から取り外されて装着された記録媒体Cからマーカー位置決定処理(後述)に係る画像データ(例えば、動画像データ等)を読み出して画像取得部202に出力する。
【0020】
画像取得部202は、記録媒体制御部201から出力された画像データに基づいて、複数の可動部分にマーカーが付された被写体Pが所定の一方向から撮像された画像データを取得する取得手段として機能する。
具体的には、画像取得部202は、例えば、被写体Pを所定の時間連続して撮像した複数のフレーム画像を有する動画像データを取得し、当該動画像データを構成する複数のフレーム画像の各々を静止画像データとして個別に抽出し、各フレーム画像に対応する静止画像データを取得する。ここで、静止画像データは、図7(a)〜(c)や図9に示すように、動画像データの生成時に撮像された被写体画像(例えば、図7(a)〜(c)及び図9に示す被写体画像P1〜P4)及び被写体Pに付されたマーカーの画像を含む。
また、マーカーが付された被写体Pを撮像した静止画像データが記録媒体Cに記録されている場合、画像取得部202は、記録媒体制御部201から出力された当該静止画像データを取得する。
【0021】
なお、画像取得部202が取得する静止画像データは、例えば、図9に示すように、互いに直交する二方向にそれぞれの解像度(水平解像度、垂直解像度)を有する画像領域Dを備えた画像データであり、画像領域D内に被写体画像(例えば、被写体画像P4)を含む。図7(a)〜(c)では静止画像データの画像領域Dの図示を省略して被写体画像P1〜P3のみ図示しているが、被写体画像P1〜P3は、図9と同様の画像領域D内に含まれる。
【0022】
マーカー検出部203は、画像取得部202により取得された画像内のマーカーを検出する第1検出手段として機能する。
具体的には、マーカー検出部203は、マーカー情報により示されるマーカーの特徴(例えば、マーカーの形状や色等の視覚的特徴)に基づいて、マーカーとその周囲との画素値の差からマーカーの輪郭(エッジ)及び当該輪郭に囲まれた画像領域を検出するエッジ検出処理等を行う。そして、マーカー検出部203は、マーカーの検出結果をマーカー位置決定部206に出力する。
なお、マーカー検出部203によるマーカーの検出方法は一例であってこれに限られるものでなく、適宜任意に変更可能である。
また、エッジ検出処理は、公知の技術であるので、ここでは詳細な説明を省略する。
【0023】
回動角度算出部204は、画像に含まれる被写体画像の少なくとも一部分の所定方向の軸を中心とする回動角度を算出する。
具体的には、回動角度算出部204は、顔画像検出部204aを具備し、この顔画像検出部204aにより検出された顔画像の所定方向の軸を中心とする回動角度を算出する。
【0024】
顔画像検出部204aは、被写体画像の顔画像を検出する第2検出手段として機能する。
具体的には、顔画像検出部204aは、画像取得部202により取得された画像から、顔画像の候補領域として、所定サイズ(例えば、24×24[画素])の検出候補領域を複数生成する。そして、顔画像検出部204aは、例えば、各検出候補領域の画像データと所定の基準画像の画像データとの類似度を所定のアルゴリズム(例えば、adaboost(アダブースト)等)による出力計算を用いて算出し、算出された類似度が所定の閾値以上である検出候補領域の画像を顔画像として検出する。
【0025】
所定の基準画像の画像データは、例えば、所定の記録手段(図示略)に記録され、検出候補領域について顔画像であるか否かを判定するための各種の識別用情報である。識別用情報としては、例えば、「ヒトの目」や「ヒトの鼻」、「ヒトの口」などの形状を基準とするものや、明度や彩度が高く鮮やかな(派手な)色合いであるか否かや肌色であるか否かなどの色調を基準とするものや、画角全体の画像に対する割合(例えば、半分以上であるか)などの大きさを基準とするもの等が挙げられる。
なお、顔画像検出部204aによる顔画像の検出方法は、一例であってこれに限られるものではなく、適宜任意に変更可能である。
【0026】
回動角度算出部204は、画像に含まれる被写体画像の少なくとも一部分(例えば、顔画像)の所定方向の軸を中心とする回動角度を算出する算出手段として機能する。
具体的には、回動角度算出部204は、例えば、顔画像検出部204aにより検出された顔画像の複数の特徴点(例えば、「ヒトの目」や「ヒトの鼻」、「ヒトの口」等)を特徴点検出処理により検出し、各特徴点どうしの位置関係を示す相関を特定する。そして、回動角度算出部204は、顔画像検出部204aにより検出された顔画像において特定された各特徴点どうしの相関と所定の相関データとの照合結果に基づいて、地面に垂直な方向の軸を中心とする顔画像の回動角度を算出する。また、回動角度算出部204は、算出された回動角度を示す情報を回動情報生成部205に出力する。
ここで、所定の相関データは、例えば、所定の記録手段(図示略)に記録され、顔画像の回動角度と、顔画像の回動角度に応じて変化する顔画像の各特徴点どうしの位置関係の相関とを対応付けた情報等、顔画像の回動角度の算出に係る各種の情報を含むデータである(図6参照)。なお、被写体Pの顔が撮像装置1のレンズに対して正面を向いた状態で撮像された顔画像の回動角度を基準(0[度])とし、一方の回動方向(例えば、図6の右方向)を+の回動方向とし、他方の回動方向(例えば、図6の左方向)を−の回動方向とするが、一例であってこれに限られるものではなく、適宜任意に変更可能である。
【0027】
また、回動角度算出部204による回動角度の算出方法は、一例であってこれに限られるものではなく、適宜任意に変更可能である。
また、特徴点検出処理は、公知の技術であるので、ここでは詳細な説明を省略する。
【0028】
回動情報生成部205は、回動角度算出部204により算出された回動角度に基づいて、被写体Pの所定方向の軸を中心とする回動動作に係る回動情報を生成する第1生成手段として機能する。
具体的には、回動情報生成部205は、例えば、地面に垂直な方向の軸(例えば、軸O;図8(a)等参照)を中心として被写体Pが回動しているか否かを示す情報や、被写体Pの回動角度とを示す情報等を含む回動情報を生成する。そして、回動情報生成部205は、生成された回動情報をマーカー位置決定部206に出力する。
【0029】
また、回動情報生成部205は、回動角度算出部204により算出された回動角度に基づいて、被写体Pの回動の有無を判定する。具体的には、回動情報生成部205は、例えば、回動角度算出部204により算出された回動角度の値と所定の角度の値との比較結果に基づいて、被写体Pが回動しているか否かを判定する。ここで、被写体Pが回動していると判定された場合、回動情報生成部205は、回動角度算出部204により算出された回動角度を被写体Pの回動角度として含む回動情報を生成する。一方、被写体Pが回動していないと判定された場合、回動情報生成部205は、回動角度算出部204により算出された回動角度を被写体Pの回動角度として含まない回動情報を生成する。
なお、所定の角度は、適宜任意に変更可能である。例えば、回動情報生成部205は、回動角度の絶対値が0[度]を上回る場合に、被写体Pが回動していると判定するようにしてもよいし、絶対値がより大きい所定の角度(例えば、45[度]等)に基づいて、被写体Pが回動しているか否かを判定するようにしてもよい。
【0030】
マーカー位置決定部206は、マーカー検出部203によるマーカーの検出結果及び回動情報生成部205により生成された回動情報に基づいて、被写体Pに付された全てのマーカーの位置を決定する決定手段として機能する。
具体的には、マーカー位置決定部206は、マーカー検出部203により検出されたマーカーの位置を決定する。ここで、マーカー位置決定部206は、例えば、画像取得部202により取得された画像の全画像領域(例えば、画像領域D;図9参照)に対するマーカーの画像領域位置を検出する。また、マーカー位置決定部206は、検出されたマーカーの位置を所定の形式の位置情報(例えば、画像領域D内の所定の一点を原点とした座標情報等)とする。
また、マーカー位置決定部206は、第1判定部206a、第2判定部206b及び位置推定部206cを備える。
【0031】
第1判定部206aは、全てのマーカーがマーカー検出部203により検出されたか否か判定する第1判定手段として機能する。
具体的には、第1判定部206aは、マーカー検出部203から出力されたマーカーの検出結果を取得し、マーカー検出部203により検出済みのマーカーの数を特定する。そして、第1判定部206aは、特定されたマーカーの数と、マーカー情報により示されるマーカーの数との比較結果に基づいて、被写体Pに付された全てのマーカー(例えば、マーカーM1〜M16等)がマーカー検出部203により検出されたか否か判定する。
ここで、全てのマーカーが検出されたと判定された場合、マーカー位置決定部206は、マーカー検出部203によるマーカーの検出結果に基づいて、被写体Pに付された全てのマーカーの位置を決定する(図7(a)、(b)参照)。即ち、マーカー位置決定部206は、マーカー検出部203により検出されたマーカーの各々の位置の検出によりマーカーの位置を決定する。
【0032】
一方、全てのマーカーが検出されていないと判定された場合、即ち、非検出のマーカーがあると判定された場合、マーカー位置決定部206は、マーカー検出部203によるマーカーの検出結果及び回動情報生成部205により生成された回動情報に基づいて、被写体Pに付された全てのマーカーの位置を決定する(図7(c)参照)。具体的には、マーカー位置決定部206は、例えば、第2判定部206bによる被写体Pの回動動作に係る判定処理と、当該判定結果に基づく位置推定部206cによる非検出のマーカーの位置の推定処理とを順次行う。
【0033】
第2判定部206bは、回動情報に基づいて、被写体Pが回動しているか否か判定する第2判定手段として機能する。
具体的には、第2判定部206bは、回動情報生成部205から出力された回動情報を取得し、回動情報が被写体Pの回動を示す情報を含むか否かにより被写体が回動しているか否か判定する。例えば、図8(c)に示すように、被写体Pの回動角度が−90[度]である場合、被写体画像P3(図7(c))について、顔画像の回動角度が−90[度]であることが回動角度算出部204により算出される。そして、当該回動角度を含む回動情報が回動情報生成部205により生成されることから、第2判定部206bは、被写体が回動していると判定する。
【0034】
位置推定部206cは、全てのマーカーが検出されていないと判定された場合に、回動情報に基づいて、非検出のマーカーの位置を推定する。
即ち、位置推定部206cは、全てのマーカーがマーカー検出部203により検出されていないと判定され、かつ、被写体Pが回動していると判定された場合、回動情報に基づいて、非検出のマーカーの位置を推定する推定手段として機能する。
具体的には、位置推定部206cは、例えば、図8(c)に示すように、マーカーM1、M7等、マーカー検出部203により検出され、マーカー位置決定部206により決定されたマーカーの位置に基づいて、非検出のマーカーが存すると推定される被写体Pの正面の位置(例えば、線L1により示される位置)を推定する。また、位置推定部206cは、回動情報に基づいて、被写体の正面側が向いている方向(例えば、方向V2)を推定する。そして、位置推定部206cは、マーカー情報により示される各マーカーどうしの位置関係等から、非検出のマーカーが存する可能性が最も高いとされる位置を非検出のマーカー(例えば、マーカーM3、M6等)の各々について推定する。
図7(c)では、マーカーM3、M6の位置を矢印にて指し示している。また、図8(c)では、検出済みのマーカーM1、M7を黒点で示し、位置が推定されたマーカーM11〜M16を白抜きの点で示している。
【0035】
また、位置推定部206cは、第2判定部206bにより被写体Pが回動していないと判定された場合、検出されたマーカーに基づいて、非検出のマーカーの位置を推定する。
例えば、図9に示すように、例えば、被写体画像P4における顔画像の回動角度は0[度]の状態で、被写体Pの動作により一部のマーカー(例えば、マーカーM4)が被写体Pの体の一部により隠されて撮像されなかった場合、第1判定部206aは、全てのマーカーがマーカー検出部203により検出されていないと判定し、且つ、第2判定部206bは、被写体Pは回動していないと判定する。この場合、位置推定部206cは、例えば、上記のマーカーM4に隣接するマーカーM3、M5、M8の3つのマーカーの位置関係(例えば、図5に示す三角形T1)や、当該3つのマーカーの各々に対するマーカーM4の位置関係をマーカー情報から取得する。また、位置推定部206cは、マーカーM4が非検出の被写体画像P4から検出され、マーカー位置決定部206により位置が決定されたマーカーM3、M5、M8の位置関係(例えば、図9に示す三角形T2)を取得する。そして、位置推定部206cは、これらの位置関係に基づいて、被写体画像P4におけるマーカーM4の位置を推定する。
【0036】
マーカー位置決定部206は、位置推定部206cにより推定された非検出のマーカーの位置を用いて全てのマーカーの位置を決定する。即ち、マーカー位置決定部206は、位置推定部206cにより推定された非検出のマーカーの位置を当該非検出のマーカーが存するであろう位置として決定し、マーカー検出部203により検出されたマーカーの各々の位置の検出結果と合わせて全てのマーカーの位置を決定する。
【0037】
また、マーカー位置決定部206は、所定の時間内にそれぞれ異なるタイミングで撮像された複数の画像について、被写体Pに付された全てのマーカーの位置を決定する。ここで、位置推定部206cは、マーカー検出部203により複数の画像のうちの何れか一の画像にて非検出のマーカーと対応するマーカーが当該複数の画像のうちの一の画像と異なる他の画像から検出された場合に、他の画像から検出されたマーカーの位置に基づいて非検出のマーカーの位置を推定するようにしてもよい。
【0038】
ここで、回動動作を行う被写体Pを図8(a)〜(c)の各々のタイミングで撮像した複数の静止画像データについて、全てのマーカーの位置を決定する場合について説明する。この場合に、画像取得部202により取得される複数の静止画像データの被写体画像は、図7(a)〜(c)に示す被写体画像P1〜P3となる。
図8(a)のタイミングから図8(b)のタイミングにかけて、被写体Pが軸Oを中心として0[度]の回動角度から−45[度]回動すると、当該回動動作及び回動角度を示す回動情報が生成される。この状態では、図7(a)、(b)に示すように、被写体画像P1、P2に基づいて、マーカー検出部203により被写体Pに付された全てのマーカーが検出される。
さらに、図8(b)のタイミングから図8(c)のタイミングにかけて、被写体Pがさらに−45[度]回動すると、回動角度は−90[度]となって、当該回動動作及び回動角度を示す回動情報が生成される。この状態では、図7(c)に示すように、被写体画像P3に基づいてマーカー検出部203により非検出とされるマーカー(例えば、マーカーM3、M6、M11〜M16)が生じる。この場合、位置推定部206cは、例えば、マーカー検出部203により検出された被写体画像P2におけるマーカーを基準とし、被写体画像P1から被写体画像P2にかけて変化したマーカーの位置の変化の度合いに基づいて、被写体画像P3にて非検出のマーカーの位置を推定するようにしてもよい。
【0039】
また、マーカー位置決定部206は、位置が決定された全てのマーカーについて、各々のマーカーの位置を示す情報(マーカー位置情報)を出力する。
具体的には、マーカー位置決定部206は、例えば、各々のマーカーの位置を所定の領域内の一点を原点とした座標領域内における座標情報とし、全てのマーカーの位置に対応する座標情報が含まれた情報をマーカー位置情報として動作情報生成部207に出力する。ここで、座標領域は、例えば、三次元空間に対応する座標を管理するためのものであってもよいし、他の次元(例えば、二次元等)に対応する座標を管理するためのものであってもよい。
【0040】
動作情報生成部207は、マーカー位置決定部206により決定された複数の画像に係る全てのマーカーの位置に基づいて、被写体Pの動作を示す動作情報を生成する第2生成手段として機能する。
具体的には、動作情報生成部207は、複数の静止画像データの各々についてマーカー位置決定部206により出力されたマーカー位置情報を、各々の静止画像データが撮像されたタイミングにおける被写体Pのポーズを示すデータとする。そして、動作情報生成部207は、各々の静止画像データの撮像タイミングの時間軸に沿って各々のタイミングにおける被写体Pのポーズを示すデータどうしを関連付けることで動作情報を含むデータ(モーションデータ)を生成する。
また、動作情報生成部207は、記録媒体C等の記録装置にモーションデータを記録させる。
【0041】
表示部208は、例えば、LCD、CRT(Cathode Ray Tube)等のディスプレイから構成され、中央制御部210のCPUの制御下にて各種情報を表示画面に表示する。
即ち、表示部208は、例えば、画像取得部202により取得された静止画像データを表示する。また、表示部208は、マーカー検出部203により検出されたマーカーを示す情報を表示する。また、表示部208は、マーカー位置決定部206により決定された全てのマーカーの位置を示す情報を表示する。また、表示部208は、非検出のマーカーがある場合、マーカー位置決定部206により位置が推定されたマーカーの位置とマーカー検出部203により検出されたマーカーに対応する位置とを区別可能に表示するようにしてもよい。また、表示部208は、動作情報により示される被写体Pの動きをタイミングごとに並べて表示するようにしてもよいし、スライドショー等の画面遷移を用いて動作情報に応じた被写体Pの動作を再現する表示を行うようにしてもよい。
【0042】
操作入力部209は、例えば、数値、文字等を入力するためのデータ入力キーや、データの選択、送り操作等を行うための上下左右移動キーや各種機能キー等によって構成されるキーボードやマウス等を備え、ユーザにより押下されたキーの押下信号やマウスの操作信号を中央制御部210のCPUに出力する。
なお、操作入力部209としてタッチパネル(図示略)を表示部208の表示画面に配設して、タッチパネルの接触位置に応じて各種の指示を入力するような構成としても良い。
【0043】
中央制御部210は、位置決定装置2の各部を制御するものである。具体的には、中央制御部210は、CPU、RAM、ROM(何れも図示略)を備え、ROMに記録された位置決定装置2用の各種処理プログラム(図示略)に従って各種の制御動作を行う。その際に、CPUは、RAM内の格納領域内に各種処理結果を格納させ、必要に応じてその処理結果を表示部208に表示させる。
RAMは、例えば、CPUにより実行される処理プログラム等を展開するためのプログラム格納領域や、入力データや上記処理プログラムが実行される際に生じる処理結果等を格納するデータ格納領域などを備える。
ROMは、コンピュータ読み取り可能なプログラムコードの形態で格納されたプログラム、具体的には、位置決定装置2で実行可能なシステムプログラム、当該システムプログラムで実行可能な各種処理プログラムや、これら各種処理プログラムを実行する際に使用されるデータ等を記録する。
【0044】
次に、位置決定装置2による動作情報生成処理について、図3及び図4を参照して説明する。
図3は、動作情報生成処理に係る動作の一例を示すフローチャートである。また、図4は、マーカー位置決定処理に係る動作の一例を示すフローチャートである。
【0045】
まず、マーカー位置決定部206は、処理対象画像の枚数をカウントするカウンタNを所定の初期値(例えば、N=1)で設定する(ステップS1)。
次に、画像取得部202は、複数の可動部分にマーカーが付された被写体Pが所定の一方向から撮像された画像を取得する(ステップS2)。具体的には、画像取得部202は、例えば、記録媒体制御部201から出力された動画像データを構成する複数のフレーム画像の各々を静止画像データとして個別に抽出し、各フレーム画像に対応する静止画像データを取得する。
【0046】
次に、マーカー検出部203は、画像取得部202により取得された画像に含まれるマーカーを検出する(ステップS3)。具体的には、マーカー検出部203は、例えば、マーカーを識別するために予め定められた特徴(例えば、マーカーの形状や色等)に基づいて、マーカーの特徴を示す画像領域を抽出することで画像内に含まれるマーカーを特定する。
【0047】
次に、顔画像検出部204aは、画像取得部202により取得された画像に含まれる顔画像を検出する(ステップS4)。具体的には、顔画像検出部204aは、例えば、画像取得部202により取得された画像から、顔画像の候補領域として、所定サイズ(例えば、24×24[画素])の検出候補領域を複数生成し、各検出候補領域の画像データと所定の基準画像の画像データとの類似度を所定のアルゴリズム(例えば、adaboost(アダブースト)等)による出力計算を用いて算出し、算出された類似度が所定の閾値以上である検出候補領域の画像を顔画像として検出する。
次に、回動角度算出部204は、顔画像検出部204aにより検出された顔画像の所定方向の軸を中心とする回動角度を算出する(ステップS5)。具体的には、回動角度算出部204は、例えば、顔画像検出部204aにより検出された顔画像の複数の特徴点(例えば、「ヒトの目」や「ヒトの鼻」、「ヒトの口」等)を特徴点検出処理により検出し、各特徴点どうしの位置関係を示す相関を特定し、特定された顔画像の相関と、所定の相関データとの照合結果に基づいて、顔画像検出部204aにより検出された顔画像について、地面に垂直な方向の軸を中心とした回動角度を算出する(図6参照)。
【0048】
次に、回動情報生成部205は、回動角度算出部204により算出された回動角度に基づいて、被写体Pの所定方向の軸を中心とする回動動作に係る回動情報を生成する(ステップS6)。具体的には、回動情報生成部205は、例えば、地面に垂直な方向の軸を中心として被写体Pが回動しているか否かや被写体Pの回動角度を示す情報を含む回動情報を生成する。
【0049】
次に、マーカー位置決定部206は、マーカー位置決定処理を行う(ステップS7)。
以下に、マーカー位置決定部206について、図4のフローチャートを参照して説明する。
まず、マーカー位置決定部206は、マーカー検出部203に検出されたマーカーの位置を決定する(ステップS21)。具体的には、マーカー位置決定部206は、例えば、画像取得部202により取得された画像の全画像領域に対するマーカーの画像領域位置を検出し、検出されたマーカーの位置を所定の形式の位置情報とする(図9等参照)。
【0050】
次に、第1判定部206aは、被写体Pに付された全てのマーカーがマーカー検出部203により検出されたか否か判定する(ステップS22)。具体的には、第1判定部206aは、例えば、マーカー検出部203により検出済みのマーカーの数とマーカー検出部203により検出されたマーカーの数とを比較して、当該比較結果に基づいて全てのマーカーが検出されているか否か判定する。
ステップS22にて、マーカー検出部203により被写体Pに付された全てのマーカーが検出されたと判定された場合(ステップS22;YES)、マーカー位置決定部206は、マーカー検出部203によるマーカーの検出結果に基づいて、被写体Pに付された全てのマーカーの位置を決定する(ステップS23)。即ち、マーカー位置決定部206は、マーカー検出部203により検出されたマーカーの各々の位置の検出によりマーカーの位置を決定する。
【0051】
一方、ステップS22にて、マーカー検出部203により被写体Pに付された全てのマーカーが検出されていないと判定された場合(ステップS22;NO)、マーカー位置決定部206は、カウンタNの値が1(N=1)であるか否か判定する(ステップS24)。ここで、N=1であると判定された場合(ステップS24;YES)、第2判定部206bは、回動情報に基づいて、被写体Pが回動しているか否か判定する(ステップS25)。即ち、第2判定部206bは、回動情報により被写体が回動していることが示されているか否か判定する。
ステップS25にて、回動情報に基づいて、被写体Pが回動していると判定された場合(ステップS25;YES)、位置推定部206cは、回動情報に基づいて、非検出のマーカーの位置を推定する(ステップS26)。具体的には、位置推定部206cは、例えば、位置推定部206cは、被写体Pに付された全てのマーカーのうちマーカー検出部203により検出され、マーカー位置決定部206により決定されたマーカーの位置や、回動情報により示される被写体Pの回動角度、マーカー情報により示されるマーカーに係る各種情報から非検出のマーカーの位置を推定する(図7(c)、図8(c)参照)。
一方、ステップS25にて、回動情報に基づいて、被写体Pが回動していないと判定された場合(ステップS25;NO)、位置推定部206cは、検出されたマーカーに基づいて、非検出のマーカーの位置を推定する(ステップS27)。具体的には、位置推定部206cは、例えば、マーカー検出部203により非検出のマーカーとマーカー検出部203により検出されたマーカーとの位置関係を取得し、当該位置関係と、マーカー検出部203により検出され、マーカー位置決定部206により決定されたマーカーの位置とに基づいて、非検出のマーカーの位置を推定する(図9参照)。
ステップS26又はステップS27のいずれかの処理後、マーカー位置決定部206は、位置推定部206cにより推定された非検出のマーカーの位置を用いて全てのマーカーの位置を決定する(ステップS23)。即ち、マーカー位置決定部206は、位置推定部206cにより推定された非検出のマーカーの位置を当該非検出のマーカーが存するであろう位置として決定し、マーカー検出部203により検出されたマーカーの各々の位置の検出結果と合わせて全てのマーカーの位置を決定する。
ステップS23の処理の完了により、マーカー位置決定部206は、マーカー位置決定処理を完了する。
【0052】
図3に戻り、マーカー位置決定処理(ステップS7)の完了後、マーカー位置決定部206は、処理対象となる全ての静止画像データについて全てのマーカーの位置の決定が完了したか否か判定する(ステップS8)。ここで、処理対象となる全ての静止画像データについて全てのマーカーの位置の決定が完了していないと判定された場合(ステップS8;NO)、マーカー位置決定部206は、カウンタNの値の変更(例えば、+1)によるカウント処理を行い(ステップS9)、ステップS2の処理に移行する。
【0053】
ステップS9のカウント処理を1回以上経てから行われたマーカー位置決定処理(図4参照)においては、ステップS24にて、カウンタNの値が1でないと判定される(ステップS24;NO)。この場合、第2判定部206bは、回動情報に基づいて、被写体Pが回動しているか否か判定する(ステップS28)。
ステップS28にて、回動情報に基づいて、被写体Pが回動していると判定された場合(ステップS28;YES)、位置推定部206cは、回動情報及び他の画像のマーカーの位置に基づいて、非検出のマーカーの位置を推定する(ステップS29)。具体的には、位置推定部206cは、例えば、ステップS26の処理と同様の流れで処理を行うに際して、更に、マーカー検出部203により複数の画像のうちの何れか一の画像にて非検出のマーカーと対応するマーカーが当該複数の画像のうちの一の画像と異なる他の画像から検出された場合に、他の画像から検出されたマーカーの位置に基づいて非検出のマーカーの位置を推定する(図7(a)〜(c)、図8(a)〜(c)参照)。
一方、ステップS28にて、回動情報に基づいて、被写体Pが回動していないと判定された場合(ステップS28;NO)、位置推定部206cは、検出されたマーカー及び他の画像のマーカーの位置に基づいて、非検出のマーカーの位置を推定する(ステップS30)。具体的には、位置推定部206cは、例えば、ステップS27の処理と同様の流れで処理を行うに際して、更に、マーカー検出部203により複数の画像のうちの何れか一の画像にて非検出のマーカーと対応するマーカーが当該複数の画像のうちの一の画像と異なる他の画像から検出された場合に、他の画像から検出されたマーカーの位置に基づいて非検出のマーカーの位置を推定する。
ステップS29又はステップS30のいずれかの処理後、マーカー位置決定部206は、位置推定部206cにより推定された非検出のマーカーの位置を用いて全てのマーカーの位置を決定し(ステップS23)、マーカー位置決定処理を完了する。
【0054】
図3に戻り、マーカー位置決定処理(ステップS7)の完了後、マーカー位置決定部206は、処理対象となる全ての静止画像データについて全てのマーカーの位置の決定が完了したか否か判定する(ステップS8)。ここで、処理対象となる全ての静止画像データについて全てのマーカーの位置の決定が完了したと判定された場合(ステップS8;YES)、動作情報生成部207は、マーカー位置決定部206により決定された複数の画像に係る全てのマーカーの位置に基づいて、被写体Pの動作を示す動作情報を生成する(ステップS10)。具体的には、動作情報生成部207は、例えば、マーカー位置決定処理の完了に伴い複数の静止画像データの各々についてマーカー位置決定部206により出力されたマーカー位置情報を、各々の静止画像データが撮像されたタイミングにおける被写体Pのポーズを示すデータとし、各々の静止画像データの撮像タイミングの時間軸に沿って各々のタイミングにおける被写体Pのポーズを示すデータどうしを関連付けることで動作情報を含むデータ(モーションデータ)を生成する。
ステップS10の処理の完了により、位置決定装置2は、動作情報生成処理を完了する。
【0055】
以上のように、本実施形態の位置決定システム100によれば、マーカーの検出結果及び回動情報に基づいて、被写体Pに付された全てのマーカーの位置を決定するので、被写体の回動動作に係る情報を踏まえてマーカーの位置の決定を行うことができる。即ち、一方向から被写体Pを撮像すると被写体Pに付された全てのマーカーが画像内に含まれずに当該全てのマーカーが検出されない場合があるが、この場合に、マーカーが検出されなかったものについても被写体Pの回動状態(回動動作の有無や回動角度等)を考慮することで当該マーカーの位置を決定することができる。従って、所定の一方向から被写体Pが撮像された画像に基づいて、被写体Pに付された全てのマーカーの位置を決定することができる。
さらに、従来のように複数の方向から被写体を撮像する場合に比べて、より低コストで全てのマーカーの位置を決定することができる。
【0056】
また、全てのマーカーが検出されていないと判定された場合に、回動情報に基づいて、非検出のマーカーの位置を推定するので、非検出のマーカーがある場合に、回動情報により示される被写体Pの回動動作の有無や回動角度に基づいて、マーカーの位置の推定により非検出のマーカーの位置を決定することができ、これにより、被写体Pに付された全てのマーカーの位置を決定することができる。
さらに、被写体Pが回動していると判定された場合に、回動情報に基づいて、非検出のマーカーの位置を推定するので、被写体Pの回動動作の有無を踏まえてマーカーの位置を推定することができ、回動動作の有無によって推定される位置が変化する非検出のマーカーの位置の推定をより高精度で行うことができる。
【0057】
また、複数の画像のうちの何れか一の画像にて非検出のマーカーと対応するマーカーが当該複数の画像のうちの一の画像と異なる他の画像から検出された場合に、他の画像から検出されたマーカーの位置に基づいて非検出のマーカーの位置を推定するので、他の画像に存するマーカーの位置を基準として非検出のマーカーの位置を推定することができ、これにより、非検出のマーカーの位置の推定をより高精度で行うことができる。
【0058】
また、決定された複数の画像に係る全てのマーカーの位置に基づいて、被写体Pの動作を示す動作情報を生成するので、所定の一方向から被写体Pが撮像された画像に基づいて、より低コストで動作情報を生成することができる。
【0059】
また、顔画像の所定方向の軸を中心とする回動角度を算出するので、例えば、目、鼻、口等の特徴点を有する顔画像を用いて回動角度を算出することができ、回動角度の算出をより適正に行うことができる。
【0060】
なお、本発明は、上記実施形態に限定されることなく、本発明の趣旨を逸脱しない範囲において、種々の改良並びに設計の変更を行っても良い。
【0061】
例えば、上記実施形態では、撮像装置1と位置決定装置2とが別個に設けられているが、位置決定装置2が撮像装置1と同様の撮像手段を備え、当該撮像手段により撮像された画像を取得するようにしてもよい。
位置決定装置2が撮像手段を備えることにより、撮像手段(例えば、撮像装置1)と取得手段(例えば、画像取得部202)との間でデータを受け渡すための手段(例えば、記録媒体C)や受け渡しの作業を省略することができ、より効率的に全てのマーカーの位置の決定に係る処理を行うことができる。
【0062】
また、上記実施形態では、記録媒体Cを介して撮像装置1と位置決定装置2との間のデータの受け渡しを行っているが、一例であってこれに限られるものでない。例えば、位置決定システムは、撮像装置1と位置決定装置2とを通信回線や所定のインタフェース等により接続する形態であってもよい。
また、上記実施形態において、顔画像検出部204aは、回動角度算出部204に設けられているが、一例であってこれに限られるものでない。例えば、顔画像検出部204aは、回動角度算出部204から独立して設けられてもよい。マーカー位置決定部206が備える各部も同様に、マーカー位置決定部206から独立して設けられてもよい。
【0063】
また、上記実施形態では、回動角度算出部204は、顔画像検出部204aにより検出された顔画像の回動角度を算出しているが、一例であってこれに限られるものでなく、被写体画像の他の部分に基づいて、回動角度を算出してもよい。例えば、手の画像、足の画像や手足の一部分の画像、胴体の画像、その他、被写体Pのあらゆる部分の画像のいずれか又は複数に基づいて、回動角度を算出するようにしてもよい。
また、上記実施形態では、回動動作の中心となる所定方向の軸を地面に垂直な方向の軸としているが、一例であってこれに限られるものでなく、適宜任意に変更可能である。
【0064】
また、上記実施形態にあっては、位置推定部206cは、非検出のマーカーがある静止画像データよりも前のタイミングで撮像された静止画像データにおけるマーカーの位置に基づいて、非検出のマーカーの位置を推定しているが、一例であってこれに限られるものでない。例えば、位置推定部206cは、非検出のマーカーがある静止画像データよりも後のタイミングで撮像された静止画像データにおけるマーカーの位置に基づいて、非検出のマーカーの位置を推定するようにしてもよいし、前後の両方のタイミングにおけるマーカーの位置に基づいて、非検出のマーカーの位置を推定するようにしてもよい。
【0065】
また、位置推定部206cは、所定の時間内にそれぞれ異なるタイミングで撮像された複数の画像のうち、二以上の画像においてマーカー検出部203により非検出のマーカーがある場合に、当該二以上の画像のうち、いずれか一の画像について推定された非検出のマーカーの位置に基づいて、まだ位置の推定が完了していない他の画像の非検出のマーカーの位置を推定するようにしてもよい。
【0066】
また、マーカー位置決定部206は、マーカー位置情報の生成及び出力に係り、回動情報生成部205により生成された回動情報により示される被写体Pの回動動作に係る処理を加えて行ってもよい。
具体的には、マーカー位置決定部206は、例えば、マーカー検出部203により全てのマーカーが検出され、全てのマーカーの位置の決定に係り回動情報が用いられなかった静止画像データのマーカー位置情報に対して、当該静止画像データに対応する回動情報が示す被写体Pの回動角度に基づいて、三次元空間の座標領域内における各マーカーの位置の算出や各マーカーの位置の調整、補正等の各種の処理のいずれか又は複数を行うようにしてもよい。
【0067】
また、第2判定部206bによる判定を省略し、回動情報により示される回動角度に基づいて、非検出のマーカーの位置を推定するようにしてもよい。この場合、例えば、位置推定部206cは、非検出のマーカーの位置を推定する処理において、回動情報により示される回動角度の値を変数の一つとして取得するが、回動角度が0[度]である場合に、回動角度に基づく推定される非検出のマーカーの位置の補正をなくす(0にする)ことにより、被写体Pが回動していない場合のマーカーの位置を推定する。
【0068】
また、上記実施形態にあっては、中央制御部210のCPUの制御下にて、画像取得部202、マーカー検出部203、回動角度算出部204、回動情報生成部205、マーカー位置決定部206、動作情報生成部207等が駆動することにより実現される構成としたが、これに限られるものではなく、CPUによって所定のプログラム等が実行されることにより実現される構成としてもよい。
即ち、プログラムを記録するプログラムメモリ(図示略)に、画像取得ルーチン、マーカー検出ルーチン、回動角度算出ルーチン、回動情報生成ルーチン、マーカー位置決定ルーチン、動作情報生成ルーチン等を含むプログラムを記録しておく。そして、画像取得ルーチンによりCPUが、複数の可動部分にマーカーが付された被写体が所定の一方向から撮像された画像を取得するようにしてもよい。また、マーカー検出ルーチンによりCPUが、取得された画像内のマーカーを検出するようにしてもよい。また、回動角度算出ルーチンによりCPUが、画像に含まれる被写体画像の少なくとも一部分の所定方向の軸を中心とする回動角度を算出するようにしてもよい。また、回動情報生成ルーチンによりCPUが、算出された回動角度に基づいて、被写体の所定方向の軸を中心とする回動動作に係る回動情報を生成するようにしてもよい。また、マーカー位置決定ルーチンによりCPUが、マーカーの検出結果及び回動情報に基づいて、被写体に付された全てのマーカーの位置を決定するようにしてもよい。また、動作情報生成ルーチンによりCPUが、決定された複数の画像に係る全てのマーカーの位置に基づいて、被写体の動作を示す動作情報を生成するようにしてもよい。
【0069】
さらに、上記の各処理を実行するためのプログラムを格納したコンピュータ読み取り可能な媒体として、ROMやハードディスク等の他、フラッシュメモリ等の不揮発性メモリ、CD−ROM等の可搬型記録媒体を適用することも可能である。また、プログラムのデータを所定の通信回線を介して提供する媒体としては、キャリアウェーブ(搬送波)も適用される。
【0070】
本発明のいくつかの実施形態を説明したが、本発明の範囲は、上述の実施の形態に限定するものではなく、特許請求の範囲に記載された発明の範囲とその均等の範囲を含む。
以下に、この出願の願書に最初に添付した特許請求の範囲に記載した発明を付記する。付記に記載した請求項の項番は、この出願の願書に最初に添付した特許請求の範囲の通りである。
〔付記〕
<請求項1>
複数の可動部分にマーカーが付された被写体が所定の一方向から撮像された画像内のマーカーの位置を決定する位置決定装置において、
前記画像を取得する取得手段と、
この取得手段により取得された画像内のマーカーを検出する第1検出手段と、
前記画像に含まれる被写体画像の少なくとも一部分の所定方向の軸を中心とする回動角度を算出する算出手段と、
この算出手段により算出された回動角度に基づいて、前記被写体の前記所定方向の軸を中心とする回動動作に係る回動情報を生成する第1生成手段と、
前記第1検出手段によるマーカーの検出結果及び前記第1生成手段により生成された前記回動情報に基づいて、前記被写体に付された全てのマーカーの位置を決定する決定手段と、
を備えることを特徴とする位置決定装置。
<請求項2>
前記決定手段は、
前記全てのマーカーが前記第1検出手段により検出されたか否か判定する第1判定手段と、
この第1判定手段により前記全てのマーカーが検出されていないと判定された場合に、前記回動情報に基づいて、前記第1検出手段により非検出のマーカーの位置を推定する推定手段と、を備えることを特徴とする請求項1に記載の位置決定装置。
<請求項3>
前記決定手段は、更に、前記回動情報に基づいて、被写体が回動しているか否か判定する第2判定手段を備え、
前記推定手段は、前記第2判定手段により被写体が回動していると判定された場合に、前記回動情報に基づいて、前記第1検出手段により非検出のマーカーの位置を推定することを特徴とする請求項2に記載の位置決定装置。
<請求項4>
前記取得手段は、所定の時間内にそれぞれ異なるタイミングで撮像された複数の画像を取得し、
前記推定手段は、前記第1検出手段により前記複数の画像のうちの何れか一の画像にて非検出のマーカーと対応するマーカーが当該複数の画像のうちの前記一の画像と異なる他の画像から検出された場合に、前記他の画像から検出されたマーカーの位置に基づいて前記非検出のマーカーの位置を推定することを特徴とする請求項2又は3に記載の位置決定装置。
<請求項5>
前記決定手段は、所定の時間内にそれぞれ異なるタイミングで撮像された複数の画像について、前記被写体に付された全てのマーカーの位置を決定し、
前記決定手段により決定された前記複数の画像に係る全てのマーカーの位置に基づいて、前記被写体の動作を示す動作情報を生成する第2生成手段を更に備えることを特徴とする請求項1〜4の何れか一項に記載の位置決定装置。
<請求項6>
前記被写体画像の顔画像を検出する第2検出手段を備え、
前記算出手段は、前記第2検出手段により検出された顔画像の前記所定方向の軸を中心とする回動角度を算出することを特徴とする請求項1〜5の何れか一項に記載の位置決定装置。
<請求項7>
前記被写体を前記所定の一方向から撮像する撮像手段を更に備え、
前記取得手段は、前記撮像手段により撮像された画像を取得することを特徴とする請求項1〜6の何れか一項に記載の位置決定装置。
<請求項8>
複数の可動部分にマーカーが付された被写体を所定の一方向から撮像する撮像装置と、
請求項1〜6の何れか一項に記載の位置決定装置と、を備える位置決定システムであって、
前記位置決定装置の前記取得手段は、前記撮像装置により撮像された画像を取得することを特徴とする位置決定システム。
<請求項9>
複数の可動部分にマーカーが付された被写体が所定の一方向から撮像された画像内のマーカーの位置を決定する位置決定装置を用いた位置決定方法であって、
前記画像を取得するステップと、
取得された画像内のマーカーを検出するステップと、
前記画像に含まれる被写体画像の少なくとも一部分の所定方向の軸を中心とする回動角度を算出するステップと、
算出された回動角度に基づいて、前記被写体の前記所定方向の軸を中心とする回動動作に係る回動情報を生成するステップと、
マーカーの検出結果及び前記回動情報に基づいて、前記被写体に付された全てのマーカーの位置を決定するステップと、
を有することを特徴とする位置決定方法。
<請求項10>
複数の可動部分にマーカーが付された被写体が所定の一方向から撮像された画像内のマーカーの位置を決定する位置決定装置のコンピュータを、
前記画像を取得する手段、
取得された画像内のマーカーを検出する手段、
前記画像に含まれる被写体画像の少なくとも一部分の所定方向の軸を中心とする回動角度を算出する手段、
算出された回動角度に基づいて、前記被写体の前記所定方向の軸を中心とする回動動作に係る回動情報を生成する手段、
マーカーの検出結果及び前記回動情報に基づいて、前記被写体に付された全てのマーカーの位置を決定する手段、
として機能させることを特徴とするプログラム。
【符号の説明】
【0071】
100 位置決定システム
1 撮像装置
2 位置決定装置
201 記録媒体制御部
202 画像取得部
203 マーカー検出部
204 回動角度算出部
204a 顔画像検出部
205 回動情報生成部
206 マーカー位置決定部
206a 第1判定部
206b 第2判定部
206c 位置推定部
207 動作情報生成部
C 記録媒体
M1〜M16 マーカー
O 軸
P 被写体
P1〜P4 被写体画像
図1
図2
図3
図4
図5
図6
図7
図8
図9