情報処理装置、情報処理システム、情報処理方法、及びテレビ受像機
【課題】撮像された画像に複数の人物が含まれる場合であっても、適切に指示位置を特定する。
【解決手段】情報処理装置は、位置を指示するための指示器と当該指示器を保持している操作者とが撮像された画像を取得する画像取得部41と、上記画像に複数の人物が含まれている場合に、当該複数の人物の中から指示器を保持している操作者を特定する操作者特定部44と、上記画像における特定された操作者の位置と、上記画像における指示器の位置とに基づき、操作者により指示器で指示された位置を特定する位置特定部45とを備える。
【解決手段】情報処理装置は、位置を指示するための指示器と当該指示器を保持している操作者とが撮像された画像を取得する画像取得部41と、上記画像に複数の人物が含まれている場合に、当該複数の人物の中から指示器を保持している操作者を特定する操作者特定部44と、上記画像における特定された操作者の位置と、上記画像における指示器の位置とに基づき、操作者により指示器で指示された位置を特定する位置特定部45とを備える。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置、情報処理システム、情報処理方法、及びテレビ受像機に関する。
【背景技術】
【0002】
特許文献1には、コンピュータやゲーム機において、表示スクリーンの前に位置する人等の画像を画像取得装置により取得し、当該画像を解析して、人の頭の位置と、当該人の手に保持されている物体の位置とを特定し、画像取得装置から観察したときの、人の頭の位置と物体の位置の間の相対位置を特定し、当該相対位置を用いて物体のポイント方向を決定し、当該ポイント方向を表示スクリーン上に表示するものが開示されている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特表2009−519553号公報
【特許文献2】米国特許出願公開第2002/0102024号明細書
【発明の概要】
【発明が解決しようとする課題】
【0004】
ところで、撮像された画像における操作者の位置と指示器の位置とに基づき、操作者により指示器で指示された指示位置を特定する構成では、画像に複数の人物が含まれる場合、適切に指示位置を特定できないことが考えられる。例えば、実際には指示器を保持していない人物(すなわち操作者ではない人物)の位置に基づいて指示位置を特定してしまい、正しい指示位置を特定できない可能性がある。
【0005】
そこで、本発明は、撮像された画像に複数の人物が含まれる場合であっても、適切に指示位置を特定することができる情報処理装置、情報処理システム、情報処理方法、及びテレビ受像機を提供することを目的とする。
【課題を解決するための手段】
【0006】
本発明に係る情報処理装置は、位置を指示するための指示器と当該指示器を保持している操作者とが撮像された画像を取得する画像取得手段と、前記画像に複数の人物が含まれている場合に、当該複数の人物の中から前記指示器を保持している前記操作者を特定する操作者特定手段と、前記画像における前記特定された操作者の位置と、前記画像における前記指示器の位置とに基づき、前記操作者により前記指示器で指示された位置を特定する位置特定手段とを備えることを特徴とする。
【0007】
また、本発明に係る情報処理システムは、上記情報処理装置と、前記指示器と、前記指示器および前記操作者を撮像し、前記画像を前記画像取得手段に出力する撮像装置と、画像を表示する表示装置と、前記位置特定手段により特定された位置に基づいて前記表示装置に表示される画像を制御する表示制御手段とを備えることを特徴とする。
【0008】
また、本発明に係る情報処理方法は、位置を指示するための指示器と当該指示器を保持している操作者とが撮像された画像を取得するステップと、前記画像に複数の人物が含まれている場合に、当該複数の人物の中から前記指示器を保持している前記操作者を特定するステップと、前記画像における前記特定された操作者の位置と、前記画像における前記指示器の位置とに基づき、前記操作者により前記指示器で指示された位置を特定するステップとを含むことを特徴とする。
【0009】
また、本発明に係るテレビ受像機は、上記情報処理装置と、画像を表示する表示装置と、前記位置特定手段により特定された位置に基づいて前記表示装置に表示される画像を制御する表示制御手段とを備えることを特徴とする。
【発明の効果】
【0010】
本発明によれば、撮像された画像に複数の人物が含まれる場合であっても、適切に指示位置を特定することができる。
【図面の簡単な説明】
【0011】
【図1】実施の形態1における情報処理システムの構成の一例を示すブロック図である。
【図2】実施の形態1における情報処理システムの構成の一例を示す概略外観図である。
【図3】指示器の構成の一例を示す概略斜視図である。
【図4】情報処理装置の構成の一例を示すブロック図である。
【図5】人物検出情報の一例を示す図である。
【図6】操作者の特定を説明するための、撮像画像の一例を示す図である。
【図7】指示位置の特定を説明するための、撮像画像の一例を示す図である。
【図8】表示装置に表示される内容の一例を示す図である。
【図9】実施の形態1におけるカーソルの表示に関する情報処理装置の処理の手順の一例を示すフローチャートである。
【図10】決定ボタンの押下に基づく画面遷移に関する情報処理装置の処理の手順の一例を示すフローチャートである。
【図11】実施の形態2におけるカーソルの表示に関する情報処理装置の処理の手順の一例を示すフローチャートである。
【図12】実施の形態3における情報処理装置の構成の一例を示すブロック図である。
【図13】実施の形態3におけるカーソルの表示に関する情報処理装置の処理の手順の第1の例を示すフローチャートである。
【図14】実施の形態3におけるカーソルの表示に関する情報処理装置の処理の手順の第2の例を示すフローチャートである。
【発明を実施するための形態】
【0012】
以下、本発明の実施の形態を図面に従って説明する。
実施の形態1.
図1は、実施の形態1における情報処理システム100の構成の一例を示すブロック図である。図2は、実施の形態1における情報処理システム100の構成の一例を示す概略外観図である。
【0013】
図1において、情報処理システム100は、指示器11、受光装置12、撮像装置13、表示装置14、および情報処理装置15を有する。受光装置12、撮像装置13、および表示装置14は、それぞれ情報処理装置15に有線または無線により接続されている。受光装置12、撮像装置13、表示装置14、および情報処理装置15は、物理的に一体であってもよいし、互いに分離されていてもよい。図2の例では、受光装置12、表示装置14、および情報処理装置15は、一つの筐体21に収納され、テレビ受像機を構成している。撮像装置13は、筐体21の上部に設置されている。
【0014】
情報処理システム100は、指示器11が操作者により操作され、情報処理装置15が指示器11で指示される位置を特定するものである。具体的には、情報処理システム100は、操作者が指示器11を実空間内で移動させることにより、情報処理装置15に対し、所定の空間内の位置(具体的には所定の座標空間における座標)の入力を行う位置(または座標)入力システムである。
【0015】
図2の例では、表示装置14の表示画面Sの前方には人物A,Bが存在し、指示器11は操作者である人物Aの手に保持されている。操作者Aは、指示器11を実空間内で移動させる操作により、表示画面S上の位置を指示する。情報処理装置15は、撮像装置13により撮像された画像に基づき、操作者Aにより指示器11で指示された位置を特定し、表示画面S上の当該特定された位置にカーソルCを表示させる。したがって、操作者Aが指示器11の空間位置を変化させると、表示画面SにおけるカーソルCの表示位置が、指示器11の空間位置の変化に合わせて移動する。さらに、指示器11は、操作者Aのボタン操作に応じて発光するように構成されており、情報処理装置15は、指示器11の発光が受光装置12により検知された場合に、当該ボタン操作に応じた処理を実行するように構成されている。
【0016】
以下、指示器11、受光装置12、撮像装置13、表示装置14、および情報処理装置15について順に説明する。
【0017】
指示器11は、位置を指示するためのものであり、操作者により保持されて操作される。具体的には、指示器11は、情報処理装置15に対して、表示画面S上の位置など、所定空間における位置を指示するためのものである。
【0018】
ここでは、指示器11は、情報処理装置15をリモート操作するためのリモートコントローラ(リモコン)であり、具体的にはテレビ受像機を操作するためのテレビリモコンである。図3に示されるように、指示器11は、操作部31および発光部32を備えており、操作部31に対する操作に応じて発光部32が発光するように構成されている。具体的には、操作部31は、操作者からの押下操作を受け付ける複数の操作ボタンを含み、発光部32は、操作部31の操作ボタンが押下された場合に、当該操作ボタンに対して予め定められたパターンで明滅する。操作ボタンとしては、例えば表示画面S上での項目の選択を決定するための決定ボタン31aがある。発光部32は、例えば、発光ダイオードなどの発光素子を含み、赤外線を出力する。さらに、指示器11は、情報処理装置15での指示器11の検出を容易にするため、指示器検出用の光を発する発光部33を備えている。発光部33は、例えば、発光ダイオードなどの発光素子を含み、赤外線または可視線を出力する。
【0019】
受光装置12は、指示器11から発光される光を受光し、指示器11の何れかの操作ボタンに対応する明滅パターンを検知すると、当該明滅パターンに対応した操作ボタンが押下されたことを示す情報(以下、「ボタン入力情報」と称す)を情報処理装置15に通知する。
【0020】
撮像装置13は、指示器11および当該指示器11を保持している操作者を撮像し、得られた画像(具体的にはデジタル画像データ)を情報処理装置15に出力する。撮像装置13の撮像範囲に操作者を含む複数の人物が存在する場合には、撮像装置13は、操作者を含む複数の人物および指示器11を撮像する。例えば、図2では、撮像装置13は、指示器11、操作者A、および人物Bを撮像する。撮像装置13による撮像および画像の出力は、繰り返し行われ、例えば毎秒30回で実施される。
【0021】
ここでは、撮像装置13は、CCD(Charge Coupled Device)素子およびレンズ等により構成され、解像度320×240ピクセルのグレースケール画像を取得する。ただし、撮像装置13は、CMOS(Complementary Metal Oxide Semiconductor)素子など、CCD素子以外の撮像素子を利用するものでもよい。また、撮像装置13は、グレースケール画像ではなく、カラー画像を取得するものでもよい。また、画像の解像度も、320×240ピクセルに限られず、人物および指示器11の検出が可能である限りは、より高い解像度でも、より低い解像度でもよい。なお、撮像装置13の画角によるが、一般的に解像度が高いほど、遠くの人物を検出できるようになるほか、情報処理装置15により特定される位置の空間分解能が向上する。
【0022】
図2の例では、撮像装置13は、表示画面Sの前方が撮像範囲となるように設置されている。具体的には、撮像装置13は、表示画面Sの前方の操作者を撮像できるように、筐体21の上部に、表示画面Sの前方に向けて設置されている。ただし、撮像装置13が設置される位置は、筐体21の上部に限られず、操作者を撮像できる位置であればよい。
【0023】
表示装置14は、画像を表示する装置であり、例えば液晶ディスプレイ装置である。表示装置14の表示画面Sに表示される画像は、情報処理装置15によって制御される。
【0024】
情報処理装置15は、撮像装置13により撮像された画像に基づき、操作者により指示器11で指示された位置(以下、「指示位置」と称す)を特定する。本例では、情報処理装置15は、特定された指示位置に基づき、カーソルCの表示位置の制御など、表示装置14の表示画面Sに表示される内容の制御を行う。また、情報処理装置15は、受光装置12により検知される指示器11に対するボタン操作に応じて、表示画面Sの画面遷移など、所定の処理を実行する。
【0025】
図4は、情報処理装置15の構成の一例を示すブロック図である。以下、図4を参照して、情報処理装置15の構成の一例を説明する。
【0026】
図4において、情報処理装置15は、画像取得部41、人物検出部42、指示器検出部43、操作者特定部44、位置特定部45、ボタン入力情報取得部46、および表示制御部47を有する。
【0027】
画像取得部41は、指示器11と当該指示器11を保持している操作者とが撮像された画像を取得する。具体的には、画像取得部41は、撮像装置13により撮像され出力されたデジタル画像データを取得する。画像取得部41は、取得された画像(以下、「撮像画像」と称す)を人物検出部42および指示器検出部43に出力する。
【0028】
人物検出部42は、画像取得部41により取得された撮像画像から、人物を検出し、当該撮像画像における当該人物の位置および大きさを検出する。具体的には、人物検出部42は、人物の位置として、撮像画像の座標系における当該人物の顔の中心座標を検出し、人物の大きさとして、撮像画像の座標系における当該人物の顔の幅(具体的には顔の水平方向の幅)を検出する。ただし、人物検出部42は、人物の位置や大きさとして、顔の長さ(具体的には顔の垂直方向の長さ)や、肩幅、両目間の距離、両目それぞれの位置、頭の頂点の座標など、他の情報を検出してもよい。また、人物検出部42は、顔の垂直方向に対する角度など、人物の姿勢を検出してもよい。
【0029】
人物検出部42における人物の検出の手法としては、特に限定されないが、例えば、ビオラ−ジョーンズ法と呼ばれる特許文献2に示される方式がある。ビオラ−ジョーンズ法は、要約すると、画像内における小領域の位置や大きさを変えながら画像内に小領域を設定し、当該小領域から特徴量を抽出し、識別器を利用して、当該小領域が顔であるか否かを判別するものである。人物検出部42は、例えば、撮像画像にビオラ−ジョーンズ法を適用した後、顔であると判別された小領域の位置や大きさから、撮像画像の座標軸で表される顔の中心位置や顔の大きさを求めることができる。また、人物検出部42は、回転させた撮像画像に対してビオラ−ジョーンズ法を適用することにより、撮像装置13の撮像面に平行に顔が回転している場合の回転角度を求めることができる。
【0030】
人物検出部42は、撮像画像から複数の人物を検出した場合には、検出された複数の人物の各々について、撮像画像における当該人物の位置および大きさを検出する。
【0031】
人物検出部42は、検出された人物の位置および大きさを示す人物検出情報を操作者特定部44に出力する。この人物検出情報は、検出された人物の姿勢を示す情報を含んでもよい。図5には、人物検出情報の一例が示されている。図5において、「No.」は検出された人物に割り当てられた番号であり、「x座標」および「y座標」は各人物の顔の中心座標であり、「幅」は各人物の顔の幅であり、「回転角」は各人物の顔の垂直方向に対する角度である。図5には、No.1〜No.3の3人の人物が検出された場合が示されている。
【0032】
指示器検出部43は、画像取得部41により取得された撮像画像から、指示器11を検出し、当該撮像画像における指示器11の位置を検出する。ここでは、指示器検出部43は、撮像画像から、指示器11の発光部33の発光による輝点を検出し、撮像画像の座標系における当該輝点の中心座標を指示器11の位置として検出する。発光部33は、常時発光していてもよいが、指示器11の検出をより容易にするため、所定のパターンで明滅を繰り返してもよい。この場合、指示器検出部43は、一連の撮像画像に基づき、上記所定のパターンで輝度の変化が起こる位置を検出し、当該位置を指示器11の位置として特定する。
【0033】
指示器検出部43は、検出された指示器11の位置を示す指示器検出情報を、操作者特定部44および位置特定部45に出力する。
【0034】
操作者特定部44は、画像取得部41により取得された撮像画像に複数の人物が含まれる場合に、当該複数の人物の中から指示器11を保持している操作者を特定する。具体的には、操作者特定部44は、人物検出部42からの人物検出情報と、指示器検出部43からの指示器検出情報とに基づき、人物検出情報に複数の人物の情報が含まれる場合に、当該複数の人物の中から操作者を特定する。
【0035】
一つの態様では、操作者特定部44は、次のように操作者の特定を行う。指示器11は操作者に保持されて使用されることから、実空間内で指示器11が存在する位置は、操作者の手の届く範囲内に限られる。そのため、撮像画像において、指示器11は操作者の近傍に存在している。そこで、操作者特定部44は、撮像画像における複数の人物の各々の位置と、撮像画像における指示器11の位置とに基づき、複数の人物の中から操作者を特定する。具体的には、操作者特定部44は、撮像画像における各人物の位置と指示器11の位置との差に基づき、複数の人物の中から操作者を特定する。より具体的には、操作者特定部44は、複数の人物の各々について、人物検出情報に含まれる当該人物の位置と、指示器検出情報に含まれる指示器11の位置との差を表す評価値を求め、評価値が最小となる人物を操作者として特定する。すなわち、操作者特定部44は、複数の人物のうち、撮像画像における当該人物の位置と、撮像画像における指示器11の位置との差を表す評価値が最小となる人物を操作者として特定する。
【0036】
例えば、操作者特定部44は、評価値として、各人物について、撮像画像における当該人物の位置と、撮像画像における指示器11の位置との間のユークリッド距離を算出し、算出されたユークリッド距離が最小となる人物を操作者として特定する。例えば、図6に示される撮像画像が取得され、2人の人物の位置P1,P2が検出され、指示器11の位置Pdevが検出された場合、操作者特定部44は、位置P1と位置Pdevとの間のユークリッド距離L1と、位置P2と位置Pdevとの間のユークリッド距離L2(<L1)とを算出し、ユークリッド距離が最小である位置P2の人物を操作者として特定する。
【0037】
ただし、操作者特定部44は、ユークリッド距離の代わりに、撮像画像における人物の位置と指示器11の位置との間のマンハッタン距離や、水平方向の距離(すなわち水平方向の位置の差の絶対値またはx座標の差の絶対値)など、他の値を評価値として用いてもよい。
【0038】
また、別の態様では、操作者特定部44は、次のように操作者の特定を行う。同じ人物が同じ姿勢で指示器11を保持するとした場合、実空間における撮像装置13から当該人物までの距離が大きいほど、撮像画像における当該人物の位置(例えば顔の中心位置)と指示器11の位置との差(例えばユークリッド距離)は小さくなる。すなわち、撮像画像における人物の位置と指示器11の位置との差は、実空間における撮像装置13から人物までの距離に応じて変化する。そこで、実空間内における撮像装置13から人物までの距離を考慮して、より正確に操作者を特定する観点より、操作者特定部44は、撮像画像における各人物の位置および指示器11の位置に加え、実空間における撮像装置13から各人物までの距離を表す情報(以下、「距離情報」と称す)に基づき、操作者の特定を行う。具体的には、操作者特定部44は、各人物について、撮像画像における当該人物の位置と指示器11の位置との差を、当該人物の距離情報により補正した評価値を求め、評価値が最小となる人物を操作者として特定する。一つの態様では、操作者特定部44は、各人物の距離情報として、撮像画像における各人物の大きさを用いる。
【0039】
例えば、操作者特定部44は、評価値として、各人物について、撮像画像における当該人物の位置と、撮像画像における指示器11の位置との差を表す値を、撮像画像における当該人物の大きさ(例えば顔の幅)で除算した値(すなわち商)を算出し、当該値が最小となる人物を操作者として特定する。撮像画像における人物の位置と、撮像画像における指示器11の位置との差を表す値としては、上述したように、ユークリッド距離や、マンハッタン距離、水平方向の距離などがある。
【0040】
操作者特定部44は、操作者を特定する際、撮像画像における指示器11の位置の代わりに、直近の一定期間における、指示器11の位置の平均値や中央値、または指示器11の位置の最大値と最小値の和の半値を用いてもよい。例えば、操作者特定部44は、指示器検出部43からの指示器検出情報の履歴を一定期間記録しておき、撮像画像における指示器11の位置の代わりに、上記記録された一定期間における指示器11の位置の平均値や中央値、または最大値と最小値の和の半値を用いてもよい。上記指示器11の位置の平均値、中央値、および半値は、例えば、x座標およびy座標のそれぞれの、平均値、中央値、および半値を求めることにより求められる。
【0041】
操作者特定部44は、上記操作者の特定結果として、特定された操作者を示す情報を位置特定部45に出力する。ここでは、操作者特定部44は、人物検出部42からの人物検出情報に含まれる複数の人物の情報のうち、特定された操作者の情報のみを位置特定部45に出力する。
【0042】
操作者特定部44は、操作者が特定されない場合に、操作者が特定されないことを示す情報、または操作者が存在しないことを示す情報を位置特定部45に出力してもよい。例えば、操作者特定部44は、すべての人物について評価値が予め定められた閾値以上である場合には、評価値が最小となる人物を操作者として特定するのではなく、操作者が特定されないことを示す情報、または操作者が存在しないことを示す情報を出力してもよい。なお、操作者が特定されない場合としては、指示器11がどの人物によっても保持されていない場合や、指示器11の位置の検出に誤りがあった場合などがある。
【0043】
一つの態様では、撮像画像に含まれる人物が1人である場合も、操作者特定部44は、操作者の特定を行う。具体的には、操作者特定部44は、人物検出部42により検出された人物の数が1である場合、当該人物が操作者であるか否かを判断する。例えば、操作者特定部44は、当該人物について評価値を算出し、評価値が予め定められた閾値未満である場合には、当該人物を操作者として特定し、評価値が閾値以上である場合には、操作者が特定されないことを示す情報、または操作者が存在しないことを示す情報を出力する。ただし、操作者特定部44は、撮像画像に含まれる人物が1人である場合、当該人物を操作者として特定してもよい。この場合、操作者特定部44での操作者の特定の処理量が低減される。
【0044】
位置特定部45は、撮像画像における操作者特定部44により特定された操作者の位置と、撮像画像における指示器11の位置とに基づき、操作者により指示器11で指示された指示位置を特定する。具体的には、位置特定部45は、撮像画像における特定された操作者と指示器11との位置関係から指示位置を特定する。より具体的には、位置特定部45は、撮像画像における特定された操作者の位置を基準とする指示器11の相対位置に基づき、指示位置を特定する。ここでは、位置特定部45は、操作者特定部44からの操作者に関する人物検出情報と、指示器検出部43からの指示器検出情報とに基づき、指示位置を示す指示座標を算出する。指示座標は、具体的には表示装置14に表示される画像の座標系における座標である。
【0045】
位置特定部45は、例えば、下記式(1)のように、撮像画像における操作者の位置と指示器11の位置との差を入力とする関数により指示座標を算出する。
Ppoint=(Pope−Pdev)×scaleoffset+Poffset ・・・(1)
上記の式(1)において、Ppointは指示座標を示すベクトル値、Popeは操作者の位置を示すベクトル値、Pdevは指示器11の位置を示すベクトル値である(図7を参照)。また、scaleoffsetは、指示器11の位置の変化に対する特定される指示位置の変化の感度を定める係数、すなわち指示器11の位置の変化と指示座標の変化との関係を定めるスカラー値である。Poffsetは、指示座標の座標系の原点(例えば表示装置14に表示される画像の座標系の原点)と操作者の位置(例えば顔の中心座標)との関係を定めるベクトル値である。このように、一つの態様では、指示座標を算出するための関数は、撮像画像における操作者の位置と指示器11の位置との差に対する、指示器11の位置の変化に対する指示位置の変化の感度を定める係数の乗算を含む。
【0046】
撮像画像における操作者の位置と指示器11の位置との差は、実空間における撮像装置13から操作者までの距離に応じて変化する。そこで、実空間における撮像装置13から操作者までの距離を考慮して、より正確に指示位置を特定する観点より、一つの態様では、位置特定部45は、撮像画像における操作者の位置および指示器11の位置に加え、実空間における撮像装置13から操作者までの距離を表す情報(以下、「操作者の距離情報」と称す)に基づき、指示位置を特定する。位置特定部45は、操作者の距離情報として、例えば撮像画像における操作者の大きさを用いる。撮像画像における操作者の大きさとしては、例えば操作者の顔の幅が用いられるが、両目間の距離や、肩幅等が用いられてもよい。
【0047】
当該態様では、位置特定部45は、例えば、下記式(2)のように、撮像画像における操作者の位置と指示器11の位置との差、および撮像画像における操作者の大きさを入力とする関数により指示座標を算出する。
Ppoint=(Pope−Pdev)/scale×scaleoffset+Poffset ・・・(2)
上記の式(2)において、scaleは、撮像画像における操作者の大きさ(例えば顔の水平方向の幅)を示すスカラー値である(図7を参照)。Ppoint、Pope、Pdev、scaleoffset、およびPoffsetは、式(1)と同様である。このように、一つの態様では、指示座標を算出するための関数は、撮像画像における操作者の位置と指示器11の位置との差に対する、撮像画像における操作者の大きさによる除算と、指示器11の位置の変化に対する指示位置の変化の感度を定める係数の乗算とを含む。
【0048】
上記の式(1)、(2)において、scaleoffsetおよびPoffsetの値は、一つの態様では、予め設定された固定値である。この場合、式(1)のscaleoffsetおよびPoffsetの値は、例えば、撮像装置13から標準的な距離だけ離れた位置で、標準的な大きさの人が指示器11を上下左右の限界の位置まで動かしたときに、算出される指示座標が表示装置14の表示画面Sのそれぞれ上下左右の端の位置を示す座標となるように設定される。当該値の設定は、表示装置14の解像度と、上記標準的な位置で上記標準的な人が指示器11を動かした時の、撮像画像における当該人の顔の中心座標および指示器11の上下左右の限界の位置の座標とに基づいて行われる。式(2)のscaleoffsetおよびPoffsetの値は、例えば、標準的な大きさの人が指示器11を上下左右の限界の位置まで動かしたときに、算出される指示座標が表示装置14の表示画面Sのそれぞれ上下左右の端の位置を示す座標となるように設定される。当該値の設定は、表示装置14の解像度と、上記標準的な人が指示器11を動かした時の、撮像画像における当該人の大きさ、顔の中心座標、および指示器11の上下左右の限界の位置の座標とに基づいて行われる。
【0049】
別の態様では、上記の式(1)、(2)におけるscaleoffsetおよびPoffsetの値は、操作者の操作に応じて変化する可変値である。例えば、位置特定部45は、当該位置特定部45により特定される指示位置が予め設定された範囲内に収まるように、操作者による指示器11の操作に応じて、scaleoffset(すなわち指示器11の位置の変化に対する指示位置の変化の感度を定める係数)を調整する。具体的には、scaleoffsetの初期値が上記の固定値よりも大きい値に設定され(すなわち感度が高めに設定され)、位置特定部45は、算出される指示座標が表示装置14の水平方向の座標範囲または垂直方向の座標範囲を超える場合に、すなわち表示装置14の表示可能な座標範囲を超える場合に、一定の割合でscaleoffsetの値を減少させる(すなわち感度を下げる)。
【0050】
位置特定部45は、算出された指示座標が予め設定された有効範囲を超える場合、当該指示座標に最も近い有効範囲内の座標を最終的な指示座標として特定してもよい。もしくは、位置特定部45は、算出された指示座標が予め設定された有効範囲を超える場合、操作者が操作を行っていないとみなして、指示座標を出力しないようにしてもよい。上記有効範囲は、例えば表示装置14の表示画面S上のカーソルCを表示可能な範囲である。
【0051】
位置特定部45は、特定された指示位置を示す情報を表示制御部47に出力する。ここでは、位置特定部45は、表示装置14の表示画面S上の位置を示す指示座標を表示制御部47に出力する。
【0052】
ボタン入力情報取得部46は、受光装置12から、指示器11の操作ボタンが押下されたことを示す情報(ボタン入力情報)を取得し、表示制御部47に通知する。
【0053】
表示制御部47は、位置特定部45により特定された指示位置に基づき、表示装置14に表示される画像を制御する。ここでは、表示制御部47は、位置特定部45により特定された指示座標と、ボタン入力情報取得部46により取得されたボタン入力情報とを用いて、表示装置14に表示される内容を制御する。具体的には、表示制御部47は、表示装置14に表示されるGUI(Graphical User Interface)画面を制御する。
【0054】
例えば、表示制御部47は、図8に示されるように、表示装置14の表示画面S上の所定の位置に複数の選択可能な領域81a〜81fを表示させ、位置特定部45により特定された指示座標の位置にカーソルCを表示させる。ここで、操作者が指示器11の決定ボタン31aを押下すると、ボタン入力情報取得部46により決定ボタン31aが押下されたことを示すボタン入力情報が表示制御部47に通知される。表示制御部47は、当該ボタン入力情報の通知を受けると、カーソルCが表示されている位置に存在している選択可能な領域81cが選択されたと判断し、領域81cに予め割り当てられた処理(例えば表示画面Sの画面遷移)を行う。
【0055】
図9は、カーソルCの表示に関する情報処理装置15の処理の手順の一例を示すフローチャートである。以下、図9を参照して、カーソルCの表示に関する情報処理装置15の処理の手順を説明する。この処理は、例えば、撮像装置13の撮像の周期と同じ周期で繰り返し行われる。ただし、N(Nは2以上の整数)個の撮像画像につき1回など、撮像の周期より長い周期で行われてもよい。
【0056】
まず、情報処理装置15は、撮像装置13から撮像画像を取得する(S11)。次に、情報処理装置15は、取得された撮像画像から人物を検出し、撮像画像における当該人物の位置および大きさを検出する(S12)。また、情報処理装置15は、取得された撮像画像から指示器11を検出し、撮像画像における指示器11の位置を検出する(S13)。そして、情報処理装置15は、検出された指示器11の位置と、検出された人物の位置および大きさに基づき、検出された人物からの操作者の特定を行う(S14)。ここでは、検出された人物が1つであっても複数であっても操作者の特定が行われる。また、操作者が特定される代わりに、操作者が特定されないこともある。
【0057】
次に、情報処理装置15は、ステップS14で操作者が特定されたか否かを判断する(S15)。
【0058】
操作者が特定されたと判断された場合(S15:YES)、情報処理装置15は、検出された指示器11の位置と、特定された操作者の位置および大きさに基づき、指示位置を特定する(S16)。そして、情報処理装置15は、表示装置14の表示画面Sの特定された指示位置にカーソルCを表示させ(S17)、処理を終了させる。
【0059】
一方、操作者が特定されなかったと判断された場合(S15:NO)、情報処理装置15は、指示位置の特定やカーソルCの表示を行わずに処理を終了させる。
【0060】
図10は、決定ボタン31aの押下に基づく画面遷移に関する情報処理装置15の処理の手順の一例を示すフローチャートである。以下、図10を参照して、決定ボタン31aの押下に基づく画面遷移に関する情報処理装置15の処理の手順を説明する。なお、この処理は、上述の図10の処理とは独立したものであり、情報処理装置15は、図9,10の2つの処理を同時に実行しても、交互に実行してもよい。また、それぞれの処理を行う頻度に差があってもよい。
【0061】
まず、情報処理装置15は、受光装置12からボタン入力情報を取得する(S21)。次に、情報処理装置15は、取得されたボタン入力情報に基づき、決定ボタン31aが押下されたか否かを判断し(S22)、押下されていないと判断された場合には(S22:NO)、処理を終了させる。
【0062】
一方、決定ボタン31aが押下されたと判断された場合(S22:YES)、情報処理装置15は、表示画面S上のカーソルCが表示されている位置(すなわち現在の指示位置)に選択可能な領域81a〜81fのいずれかが存在するか否かを判断する(S23)。
【0063】
選択可能な領域81a〜81fのいずれも存在しないと判断された場合(S23:NO)、情報処理装置15は、処理を終了させる。
【0064】
一方、選択可能な領域81a〜81fのいずれかが存在すると判断された場合は(S23:YES)、情報処理装置15は、カーソルCの位置に存在する選択可能な領域(図8では領域81c)に割り当てられた画面遷移を実行し(S24)、処理を終了させる。
【0065】
以上説明した本実施の形態1によれば、下記(1)〜(8)の効果が得られ得る。
(1)情報処理装置は、撮像画像に複数の人物が含まれている場合に、当該複数の人物の中から指示器を保持している操作者を特定し、撮像画像における特定された操作者の位置と、撮像画像における指示器の位置とに基づき、操作者により指示器で指示された指示位置を特定する。このため、撮像画像に複数の人物が含まれる場合であっても、適切に指示位置を特定することができる。
【0066】
具体的には、撮像画像に複数の人物が含まれる場合において、実際には操作者ではない人物の位置を基に誤った指示位置を特定してしまうことを防ぐことができる。
【0067】
また、撮像画像における操作者と指示器との位置関係から指示位置を求めることが可能となる。より具体的には、撮像画像における操作者の位置を基準とする指示器の相対位置から指示位置を求めることが可能となる。これにより、例えば操作者の操作感が向上する。具体的には、単純に撮像画像における指示器の位置から指示位置を求める構成では、操作者が同じ姿勢で指示器を保持していても、操作者の位置が異なる場合は、撮像画像における指示器の位置が異なるため、指示位置(例えばカーソル位置)が異なってしまう。すなわち、操作者の位置が変わると、操作者に対する指示器の相対位置と指示位置との対応関係が変化してしまい、操作感を損ねてしまう。これに対し、撮像画像における操作者の位置を基準とする指示器の相対位置から指示位置を求める構成では、操作者の位置によらず、操作者に対する指示器の相対位置と指示位置との対応関係を一定とすることが可能となり、操作者の位置によって操作感が変わることを回避または軽減することが可能となる。
【0068】
(2)操作者特定部は、撮像画像における複数の人物の各々の位置と、撮像画像における指示器の位置とに基づき、複数の人物の中から操作者を特定する。これにより、撮像画像における各人物と指示器との位置関係から操作者を特定することができる。
【0069】
(3)操作者特定部は、撮像画像における複数の人物の各々の位置および指示器の位置のほか、さらに実空間における撮像装置から複数の人物の各々までの距離を表す情報に基づき、複数の人物の中から操作者を特定する。これにより、実空間における撮像装置から各人物までの距離を考慮して、より正確に操作者を特定することができる。
【0070】
(4)操作者特定部は、撮像画像における複数の人物の各々の位置および指示器の位置のほか、さらに撮像画像における複数の人物の各々の大きさに基づき、複数の人物の中から操作者を特定する。これにより、簡易な構成で、実空間における撮像装置から各人物までの距離を考慮して、より正確に操作者を特定することができる。具体的には、複数の撮像装置によりステレオ画像を取得して人物までの距離を計測する構成や、距離を計測する機能を有する特殊な撮像装置を利用する構成などと比較して、構成の簡易化やコストの低減が可能である。
【0071】
(5)位置特定部は、撮像画像における特定された操作者の位置および指示器の位置のほか、さらに実空間における撮像装置から特定された操作者までの距離を表す情報に基づき、指示位置を特定する。これにより、実空間における撮像装置から操作者までの距離を考慮して、より適切な指示位置を特定することができる。具体的には、実空間内で操作者から見て同じ位置に指示器が存在する場合、実空間における撮像装置から操作者までの距離によらず、略同じ指示位置を特定することが可能となる。これにより、実空間における撮像装置から操作者までの距離による操作感の変化を回避または軽減することが可能となる。
【0072】
(6)位置特定部は、撮像画像における特定された操作者の位置および指示器の位置のほか、さらに撮像画像における特定された操作者の大きさに基づき、指示位置を特定する。これにより、簡易な構成で、実空間における撮像装置から操作者までの距離を考慮して、より適切な指示位置を特定することができる。具体的には、複数の撮像装置によりステレオ画像を取得して操作者までの距離を計測する構成や、距離を計測する機能を有する特殊な撮像装置を利用する構成などと比較して、構成の簡易化やコストの低減が可能である。
【0073】
(7)操作者特定部は、撮像画像に含まれる人物が1つである場合でも、操作者の特定を行う。すなわち、当該人物が操作者か否かを判断する。これにより、実際には操作者ではない人物の位置を基に誤った指示位置を特定してしまうことを防ぐことができる。
【0074】
(8)操作者特定部は、撮像画像における指示器の位置の代わりに、直近の一定期間における、指示器の位置の平均値や中央値、または指示器の位置の最大値と最小値の和の半値を用いる。これにより、複数の人物が互いに近い位置に存在する場合などに、実際には指示器を保持していない人物を誤って操作者として特定してしまう可能性を低減させることが可能となる。
【0075】
なお、上記の説明では、指示器11が操作部31および発光部32を備える構成を例示したが、指示器11は情報処理装置15により検出可能であればよく、操作部31および発光部32は省略されてもよい。この場合、受光装置12およびボタン入力情報取得部46も省略可能である。また、この場合、情報処理装置15は、決定ボタン31aによる領域の選択の代わりに、表示画面S上のカーソルCの位置が複数の選択可能な領域のうちいずれかの領域の中に一定時間以上ある場合、当該領域が選択されたとみなして、当該領域に割り当てられた画面遷移を行ってもよい。
【0076】
また、上記の説明では、指示器11がテレビリモコンである場合を例示したが、指示器11は、銃を模した形状のものや、杖を模した形状のもの、指先に嵌めて使用できるものなど、他の態様のものであってもよい。
【0077】
また、上記の説明では、指示器検出部43が指示器11の発光部33からの発光を利用して指示器11の位置を検出する場合を例示したが、指示器検出部43は、他の方法で指示器11の位置の検出を行ってもよい。例えば、指示器11に反射材が設けられ、指示器11とは別の箇所に発光部が設けられ、指示器検出部43が、当該発光部から発光され当該反射材により反射された光を検出することにより、指示器11の位置を検出する構成であってもよい。また、指示器検出部43は、指示器11の外観の特徴(例えば指示器11に設けられた識別マーク)を用いて指示器11の位置を検出してもよい。これらの場合、発光部33は省略されてもよい。
【0078】
また、図9,11,13,14では、例えば図9のS15において操作者が特定されなかった場合に、処理を終了させることとしたが、情報処理装置15は、操作者が特定されなかった場合、今回の処理で検出された指示器11の位置に代えて、前回の処理で検出された指示器11の位置を利用して、操作者の特定および指示位置の特定を行ってもよい。この場合、指示器11の位置の検出に誤りがあった場合でも、指示位置の特定が可能となる。具体的には、今回の処理で指示器11の位置の検出に誤りがあり、その結果として操作者が特定されなかった場合、当該誤って検出された指示器11の位置に代えて、正しく検出された可能性のある前回検出された指示器11の位置を利用することにより、操作者の特定および指示位置の特定を行うことが可能となる。これにより、指示器11の位置の誤検出の影響を軽減することができる。
【0079】
また、上記の説明では、距離情報として撮像画像における人物の大きさを用いる場合を例示したが、距離情報は他の方法で取得されてもよい。例えば、情報処理装置15は、複数の撮像装置によりステレオ画像を取得して距離情報を求めてもよいし、距離を計測する機能を有する特殊な撮像装置を利用して距離情報を求めてもよい。
【0080】
また、上記の説明では、情報処理装置15がテレビ受像機に適用される場合を例示したが、情報処理装置15は、コンピュータやゲーム機など、様々な装置や用途に適用可能である。
【0081】
また、上記の説明では、情報処理装置15が指示位置に基づいて表示の制御を行う構成を例示したが、情報処理装置15は、少なくとも指示位置を特定する機能を備えていればよく、表示制御部46および表示装置14は情報処理装置15の外部に設けられてもよい。また、情報処理装置15により特定された指示位置を表す情報は、表示の制御以外の用途に利用されてもよく、表示制御部46および表示装置14は省略されてもよい。
【0082】
実施の形態2.
以下、実施の形態2における情報処理システムについて説明する。この情報処理システムは、実施の形態1のものと殆ど同じであるので、実施の形態1と同様の部分については、同一の符号を用い、説明を省略または簡略化することとする。
【0083】
本実施の形態では、操作者特定部44は、今回の撮像画像において検出されたいずれかの人物の位置および大きさが、前回の撮像画像において特定された操作者の位置および大きさと一致する場合には、当該一致する人物を操作者として特定する。具体的には、操作者特定部44は、人物検出部42からの人物検出情報と、所定の記憶領域に記憶された前回特定された操作者の人物検出情報とに基づき、今回検出された人物の中に、前回特定された操作者と位置および大きさが一致する人物が存在するか否かを判断し、一致する人物が存在する場合には、当該人物を操作者として特定する。ここで、位置および大きさが一致することは、位置および大きさが略一致することを含んでもよい。例えば、操作者特定部44は、両者の位置の差が所定の閾値以下であり、かつ両者の大きさの差が所定の閾値以下である場合、両者の位置および大きさが一致すると判断してもよい。
【0084】
図11は、実施の形態2におけるカーソルCの表示に関する情報処理装置15の処理の手順の一例を示すフローチャートである。以下、図11を参照して、カーソルCの表示に関する情報処理装置15の処理の手順を説明する。この処理は、例えば、撮像装置13の撮像の周期と同じ周期で繰り返し行われる。
【0085】
まず、情報処理装置15は、撮像装置13から撮像画像を取得する(S31)。次に、情報処理装置15は、取得された撮像画像から人物を検出し、撮像画像における当該人物の位置および大きさを検出する(S32)。また、情報処理装置15は、取得された撮像画像から指示器11を検出し、撮像画像における指示器11の位置を検出する(S33)。
【0086】
次に、情報処理装置15は、ステップS32で検出された各人物の位置および大きさが、前回の図11の処理で特定された操作者の位置および大きさと一致するかを判断することにより、前回特定された操作者と位置および大きさが一致する人物が存在するか否かを判断する(S34)。なお、前回の図11の処理で操作者が特定されなかった場合、情報処理装置15は、一致する人物は存在しないと判断する。
【0087】
一致する人物が存在すると判断された場合(S34:YES)、情報処理装置15は、当該人物を操作者であると特定し(S35)、処理をステップS38に進める。
【0088】
一方、一致する人物が存在しないと判断された場合(S34:NO)、情報処理装置15は、検出された指示器11の位置と、検出された人物の位置および大きさに基づき、検出された人物からの操作者の特定を行う(S36)。そして、情報処理装置15は、操作者が特定されたか否かを判断し(S37)、操作者が特定されたと判断された場合には(S37:YES)、処理をステップS38に進め、操作者が特定されなかったと判断された場合には(S37:NO)、処理を終了させる。
【0089】
ステップS38では、情報処理装置15は、検出された指示器11の位置と、特定された操作者の位置および大きさに基づき、指示位置を特定する。そして、情報処理装置15は、表示装置14の表示画面Sの特定された指示位置にカーソルCを表示させ(S39)、処理を終了させる。
【0090】
以上説明した通り、本実施の形態では、情報処理装置15は、今回の撮像画像における各人物の位置および大きさと、前回の撮像画像における操作者の位置および大きさとに基づき、操作者の特定を行う。このように、操作者の特定は、実施の形態1に示された方法以外の方法で行われてもよい。他にも、例えば、情報処理装置15は、予め記憶された操作者の外観の特徴と、撮像画像から認識される各人物の特徴との類似度を求め、類似度が最も高い人物を操作者として特定することも可能である。
【0091】
実施の形態3.
以下、実施の形態3における情報処理システムについて説明する。この情報処理システムは、実施の形態1のものと殆ど同じであるので、実施の形態1と同様の部分については、同一の符号を用い、説明を省略または簡略化することとする。
【0092】
図12は、実施の形態3における情報処理装置15の構成の一例を示すブロック図である。図12に示されるように、本実施の形態では、情報処理装置15は、検出対象領域設定部121をさらに有する。この検出対象領域設定部121は、撮像画像における特定された操作者の位置、または位置および大きさに基づき、指示器11の位置の検出の対象となる検出対象領域を設定する。指示器検出部43は、撮像画像のうち検出対象領域設定部121により設定された検出対象領域を検出の対象として、指示器11の位置の検出を行う。
【0093】
具体的には、検出対象領域設定部121は、予め設定された有効範囲内の指示位置が特定されるような指示器11の位置の範囲を検出対象領域として設定する。上記有効範囲は、例えば表示装置14の表示画面S上のカーソルCを表示可能な範囲である。
【0094】
例えば、指示座標の算出に上記式(1)が用いられる場合には、検出対象領域設定部121は、当該式(1)と、ベクトルPpointの有効範囲(すなわち指示位置の有効範囲であり、例えば表示装置14の解像度で決まる)と、ベクトルPope(すなわち特定された操作者の位置)とに基づいて、ベクトルPpointが有効範囲内となるベクトルPdevの範囲(すなわち指示器11の位置の範囲)を検出対象領域として設定する。
【0095】
また、指示座標の算出に上記式(2)が用いられる場合には、検出対象領域設定部121は、当該式(2)と、ベクトルPpointの有効範囲(すなわち指示位置の有効範囲であり、例えば表示装置14の解像度で決まる)と、ベクトルPope(すなわち特定された操作者の位置)と、スカラーscale(すなわち特定された操作者の大きさ)とに基づいて、ベクトルPpointが有効範囲内となるベクトルPdevの範囲(すなわち指示器11の位置の範囲)を検出対象領域として設定する。
【0096】
一つの態様では、操作者特定部44は、指示器11の位置を用いずに、例えば実施の形態2に記載の方法で操作者を特定する。検出対象領域設定部121は、当該特定された操作者の位置、または位置および大きさに基づき、検出対象領域を設定する。指示器検出部43は、撮像画像のうち当該検出対象領域から指示器11の位置を検出し、当該位置を示す指示器検出情報を位置特定部45に出力する。この場合、指示器検出部43は、操作者特定部44には指示器検出情報を出力しなくてもよい。当該態様における処理の一例は、後に図13に従って説明される。
【0097】
別の態様では、検出対象領域設定部121は、位置特定部45により指示位置が特定された場合に、特定された操作者の位置、または位置および大きさに基づき、次回の処理のための検出対象領域を設定する。そして、次回の処理において、操作者特定部44は、実施の形態2と同様に、今回検出された人物の中に、前回特定された操作者と位置および大きさが一致する人物が存在するか否かを判断し、一致する人物が存在する場合には、当該人物を操作者として特定する。また、操作者特定部44により一致する人物が存在すると判断された場合、指示器検出部43は、撮像画像のうち前回の処理で設定された検出対象領域から指示器11の位置を検出し、当該位置を示す指示器検出情報を位置特定部45に出力する。この場合、指示器検出部43は、操作者特定部44には指示器検出情報を出力しなくてもよい。当該態様における処理の一例は、後に図14に従って説明される。
【0098】
図13は、実施の形態3におけるカーソルCの表示に関する情報処理装置15の処理の手順の第1の例を示すフローチャートである。以下、図13を参照して、カーソルCの表示に関する処理の第1の例を説明する。この処理は、例えば、撮像装置13の撮像の周期と同じ周期で繰り返し行われる。
【0099】
まず、情報処理装置15は、撮像装置13から撮像画像を取得する(S41)。次に、情報処理装置15は、取得された撮像画像から人物を検出し、撮像画像における当該人物の位置および大きさを検出する(S42)。
【0100】
次に、情報処理装置15は、ステップS42で検出された各人物の位置および大きさが、前回の図13の処理で特定された操作者の位置および大きさと一致するかを判断することにより、前回特定された操作者と位置および大きさが一致する人物が存在するか否かを判断する(S43)。
【0101】
一致する人物が存在すると判断された場合(S43:YES)、情報処理装置15は、当該人物を操作者であると特定し(S44)、当該人物の位置および大きさと、表示装置14の解像度とに基づき、検出対象領域を算出する(S45)。そして、情報処理装置15は、撮像画像のうち当該検出対象領域のみを対象として指示器11の検出を行い、撮像画像における指示器11の位置を検出し(S46)、処理をステップS50に進める。
【0102】
一方、一致する人物が存在しないと判断された場合(S43:NO)、情報処理装置15は、撮像画像の全領域を対象として指示器11の検出を行い、撮像画像における指示器11の位置を検出する(S47)。そして、情報処理装置15は、検出された指示器11の位置と、検出された人物の位置および大きさに基づき、検出された人物からの操作者の特定を行う(S48)。次に、情報処理装置15は、操作者が特定されたか否かを判断し(S49)、操作者が特定されたと判断された場合には(S49:YES)、処理をステップS50に進め、操作者が特定されなかったと判断された場合には(S49:NO)、処理を終了させる。
【0103】
ステップS50では、情報処理装置15は、検出された指示器11の位置と、特定された操作者の位置および大きさに基づき、指示位置を特定する。そして、情報処理装置15は、表示装置14の表示画面Sの特定された指示位置にカーソルCを表示させ(S51)、処理を終了させる。
【0104】
図14は、実施の形態3における、カーソルCの表示に関する情報処理装置15の処理の手順の第2の例を示すフローチャートである。以下、図14を参照して、カーソルCの表示に関する処理の第2の例を説明する。この処理は、例えば、撮像装置13の撮像の周期と同じ周期で繰り返し行われる。
【0105】
まず、情報処理装置15は、撮像装置13から撮像画像を取得する(S61)。次に、情報処理装置15は、取得された撮像画像から人物を検出し、撮像画像における当該人物の位置および大きさを検出する(S62)。
【0106】
次に、情報処理装置15は、ステップS62で検出された各人物の位置および大きさが、前回の図14の処理で特定された操作者の位置および大きさと一致するかを判断することにより、前回特定された操作者と位置および大きさが一致する人物が存在するか否かを判断する(S63)。
【0107】
一致する人物が存在すると判断された場合(S63:YES)、情報処理装置15は、当該人物を操作者であると特定する(S64)。また、情報処理装置15は、撮像画像のうち、前回の図14の処理のステップS70(後述)で設定された検出対象領域のみを対象として指示器11の検出を行い、撮像画像における指示器11の位置を検出し(S65)、処理をステップS69に進める。
【0108】
一方、一致する人物が存在しないと判断された場合(S63:NO)、情報処理装置15は、撮像画像の全領域を対象として指示器11の検出を行い、撮像画像における指示器11の位置を検出する(S66)。そして、情報処理装置15は、検出された指示器11の位置と、検出された人物の位置および大きさに基づき、検出された人物からの操作者の特定を行う(S67)。次に、情報処理装置15は、操作者が特定されたか否かを判断し(S68)、操作者が特定されたと判断された場合には(S68:YES)、処理をステップS69に進め、操作者が特定されなかったと判断された場合には(S68:NO)、処理を終了させる。
【0109】
ステップS69では、情報処理装置15は、検出された指示器11の位置と、特定された操作者の位置および大きさに基づき、指示位置を特定する。そして、情報処理装置15は、特定された操作者の位置および大きさと、表示装置14の解像度とに基づき、検出対象領域を算出する(S70)。当該算出された検出対象領域は、次回の図14の処理においてステップS65で利用される。また、情報処理装置15は、表示装置14の表示画面Sの特定された指示位置にカーソルCを表示させ(S71)、処理を終了させる。
【0110】
以上説明した本実施の形態3によれば、下記(9)の効果が得られ得る。
(9)情報処理装置は、指示位置の特定に用いられる撮像画像における指示器の位置を検出する指示器検出部と、撮像画像における特定された操作者の位置、または位置および大きさに基づき、指示器の位置の検出の対象となる検出対象領域を設定する検出対象領域設定部とを有し、指示器検出部は、撮像画像のうち上記検出対象領域を検出の対象として、指示器の位置の検出を行う。このため、撮像画像のうち操作者の位置に応じた適切な範囲から指示器の位置の検出を行うことができる。これにより、指示器の位置の検出の処理の負荷を軽減することや、指示器の位置の検出の誤りの発生を低減することができる。また、有効範囲内の指示位置が得られるように検出対象領域を設定することにより、無効な指示位置が特定されることを回避することができる。
【0111】
以上説明した実施の形態1〜3において、情報処理装置15の機能は、電子回路などのハードウェア資源のみにより実現されてもよいし、ハードウェア資源とソフトウェアとの協働により実現されてもよい。ハードウェア資源とソフトウェアとの協働により実現される場合、情報処理装置15の機能は、例えば情報処理プログラムがコンピュータにより実行されることによって実現される。より具体的には、情報処理装置15の機能は、ROM(Read Only Memory)等の記録媒体に記録された情報処理プログラムが主記憶装置に読み出されて中央処理装置(CPU: Central Processing Unit)により実行されることによって実現される。情報処理プログラムは、光ディスク等のコンピュータ読み取り可能な記録媒体に記録されて提供されてもよいし、インターネット等の通信回線を介して提供されてもよい。
【0112】
なお、本発明は、上記実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々の態様で実施することができる。
【符号の説明】
【0113】
11 指示器、 12 受光装置、 13 撮像装置、 14 表示装置、 15 情報処理装置、 41 画像取得部、 42 人物検出部、 43 指示器検出部、 44 操作者特定部、 45 位置特定部、 46 ボタン入力情報取得部、 47 表示制御部、 100 情報処理システム、 121 検出対象領域設定部。
【技術分野】
【0001】
本発明は、情報処理装置、情報処理システム、情報処理方法、及びテレビ受像機に関する。
【背景技術】
【0002】
特許文献1には、コンピュータやゲーム機において、表示スクリーンの前に位置する人等の画像を画像取得装置により取得し、当該画像を解析して、人の頭の位置と、当該人の手に保持されている物体の位置とを特定し、画像取得装置から観察したときの、人の頭の位置と物体の位置の間の相対位置を特定し、当該相対位置を用いて物体のポイント方向を決定し、当該ポイント方向を表示スクリーン上に表示するものが開示されている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特表2009−519553号公報
【特許文献2】米国特許出願公開第2002/0102024号明細書
【発明の概要】
【発明が解決しようとする課題】
【0004】
ところで、撮像された画像における操作者の位置と指示器の位置とに基づき、操作者により指示器で指示された指示位置を特定する構成では、画像に複数の人物が含まれる場合、適切に指示位置を特定できないことが考えられる。例えば、実際には指示器を保持していない人物(すなわち操作者ではない人物)の位置に基づいて指示位置を特定してしまい、正しい指示位置を特定できない可能性がある。
【0005】
そこで、本発明は、撮像された画像に複数の人物が含まれる場合であっても、適切に指示位置を特定することができる情報処理装置、情報処理システム、情報処理方法、及びテレビ受像機を提供することを目的とする。
【課題を解決するための手段】
【0006】
本発明に係る情報処理装置は、位置を指示するための指示器と当該指示器を保持している操作者とが撮像された画像を取得する画像取得手段と、前記画像に複数の人物が含まれている場合に、当該複数の人物の中から前記指示器を保持している前記操作者を特定する操作者特定手段と、前記画像における前記特定された操作者の位置と、前記画像における前記指示器の位置とに基づき、前記操作者により前記指示器で指示された位置を特定する位置特定手段とを備えることを特徴とする。
【0007】
また、本発明に係る情報処理システムは、上記情報処理装置と、前記指示器と、前記指示器および前記操作者を撮像し、前記画像を前記画像取得手段に出力する撮像装置と、画像を表示する表示装置と、前記位置特定手段により特定された位置に基づいて前記表示装置に表示される画像を制御する表示制御手段とを備えることを特徴とする。
【0008】
また、本発明に係る情報処理方法は、位置を指示するための指示器と当該指示器を保持している操作者とが撮像された画像を取得するステップと、前記画像に複数の人物が含まれている場合に、当該複数の人物の中から前記指示器を保持している前記操作者を特定するステップと、前記画像における前記特定された操作者の位置と、前記画像における前記指示器の位置とに基づき、前記操作者により前記指示器で指示された位置を特定するステップとを含むことを特徴とする。
【0009】
また、本発明に係るテレビ受像機は、上記情報処理装置と、画像を表示する表示装置と、前記位置特定手段により特定された位置に基づいて前記表示装置に表示される画像を制御する表示制御手段とを備えることを特徴とする。
【発明の効果】
【0010】
本発明によれば、撮像された画像に複数の人物が含まれる場合であっても、適切に指示位置を特定することができる。
【図面の簡単な説明】
【0011】
【図1】実施の形態1における情報処理システムの構成の一例を示すブロック図である。
【図2】実施の形態1における情報処理システムの構成の一例を示す概略外観図である。
【図3】指示器の構成の一例を示す概略斜視図である。
【図4】情報処理装置の構成の一例を示すブロック図である。
【図5】人物検出情報の一例を示す図である。
【図6】操作者の特定を説明するための、撮像画像の一例を示す図である。
【図7】指示位置の特定を説明するための、撮像画像の一例を示す図である。
【図8】表示装置に表示される内容の一例を示す図である。
【図9】実施の形態1におけるカーソルの表示に関する情報処理装置の処理の手順の一例を示すフローチャートである。
【図10】決定ボタンの押下に基づく画面遷移に関する情報処理装置の処理の手順の一例を示すフローチャートである。
【図11】実施の形態2におけるカーソルの表示に関する情報処理装置の処理の手順の一例を示すフローチャートである。
【図12】実施の形態3における情報処理装置の構成の一例を示すブロック図である。
【図13】実施の形態3におけるカーソルの表示に関する情報処理装置の処理の手順の第1の例を示すフローチャートである。
【図14】実施の形態3におけるカーソルの表示に関する情報処理装置の処理の手順の第2の例を示すフローチャートである。
【発明を実施するための形態】
【0012】
以下、本発明の実施の形態を図面に従って説明する。
実施の形態1.
図1は、実施の形態1における情報処理システム100の構成の一例を示すブロック図である。図2は、実施の形態1における情報処理システム100の構成の一例を示す概略外観図である。
【0013】
図1において、情報処理システム100は、指示器11、受光装置12、撮像装置13、表示装置14、および情報処理装置15を有する。受光装置12、撮像装置13、および表示装置14は、それぞれ情報処理装置15に有線または無線により接続されている。受光装置12、撮像装置13、表示装置14、および情報処理装置15は、物理的に一体であってもよいし、互いに分離されていてもよい。図2の例では、受光装置12、表示装置14、および情報処理装置15は、一つの筐体21に収納され、テレビ受像機を構成している。撮像装置13は、筐体21の上部に設置されている。
【0014】
情報処理システム100は、指示器11が操作者により操作され、情報処理装置15が指示器11で指示される位置を特定するものである。具体的には、情報処理システム100は、操作者が指示器11を実空間内で移動させることにより、情報処理装置15に対し、所定の空間内の位置(具体的には所定の座標空間における座標)の入力を行う位置(または座標)入力システムである。
【0015】
図2の例では、表示装置14の表示画面Sの前方には人物A,Bが存在し、指示器11は操作者である人物Aの手に保持されている。操作者Aは、指示器11を実空間内で移動させる操作により、表示画面S上の位置を指示する。情報処理装置15は、撮像装置13により撮像された画像に基づき、操作者Aにより指示器11で指示された位置を特定し、表示画面S上の当該特定された位置にカーソルCを表示させる。したがって、操作者Aが指示器11の空間位置を変化させると、表示画面SにおけるカーソルCの表示位置が、指示器11の空間位置の変化に合わせて移動する。さらに、指示器11は、操作者Aのボタン操作に応じて発光するように構成されており、情報処理装置15は、指示器11の発光が受光装置12により検知された場合に、当該ボタン操作に応じた処理を実行するように構成されている。
【0016】
以下、指示器11、受光装置12、撮像装置13、表示装置14、および情報処理装置15について順に説明する。
【0017】
指示器11は、位置を指示するためのものであり、操作者により保持されて操作される。具体的には、指示器11は、情報処理装置15に対して、表示画面S上の位置など、所定空間における位置を指示するためのものである。
【0018】
ここでは、指示器11は、情報処理装置15をリモート操作するためのリモートコントローラ(リモコン)であり、具体的にはテレビ受像機を操作するためのテレビリモコンである。図3に示されるように、指示器11は、操作部31および発光部32を備えており、操作部31に対する操作に応じて発光部32が発光するように構成されている。具体的には、操作部31は、操作者からの押下操作を受け付ける複数の操作ボタンを含み、発光部32は、操作部31の操作ボタンが押下された場合に、当該操作ボタンに対して予め定められたパターンで明滅する。操作ボタンとしては、例えば表示画面S上での項目の選択を決定するための決定ボタン31aがある。発光部32は、例えば、発光ダイオードなどの発光素子を含み、赤外線を出力する。さらに、指示器11は、情報処理装置15での指示器11の検出を容易にするため、指示器検出用の光を発する発光部33を備えている。発光部33は、例えば、発光ダイオードなどの発光素子を含み、赤外線または可視線を出力する。
【0019】
受光装置12は、指示器11から発光される光を受光し、指示器11の何れかの操作ボタンに対応する明滅パターンを検知すると、当該明滅パターンに対応した操作ボタンが押下されたことを示す情報(以下、「ボタン入力情報」と称す)を情報処理装置15に通知する。
【0020】
撮像装置13は、指示器11および当該指示器11を保持している操作者を撮像し、得られた画像(具体的にはデジタル画像データ)を情報処理装置15に出力する。撮像装置13の撮像範囲に操作者を含む複数の人物が存在する場合には、撮像装置13は、操作者を含む複数の人物および指示器11を撮像する。例えば、図2では、撮像装置13は、指示器11、操作者A、および人物Bを撮像する。撮像装置13による撮像および画像の出力は、繰り返し行われ、例えば毎秒30回で実施される。
【0021】
ここでは、撮像装置13は、CCD(Charge Coupled Device)素子およびレンズ等により構成され、解像度320×240ピクセルのグレースケール画像を取得する。ただし、撮像装置13は、CMOS(Complementary Metal Oxide Semiconductor)素子など、CCD素子以外の撮像素子を利用するものでもよい。また、撮像装置13は、グレースケール画像ではなく、カラー画像を取得するものでもよい。また、画像の解像度も、320×240ピクセルに限られず、人物および指示器11の検出が可能である限りは、より高い解像度でも、より低い解像度でもよい。なお、撮像装置13の画角によるが、一般的に解像度が高いほど、遠くの人物を検出できるようになるほか、情報処理装置15により特定される位置の空間分解能が向上する。
【0022】
図2の例では、撮像装置13は、表示画面Sの前方が撮像範囲となるように設置されている。具体的には、撮像装置13は、表示画面Sの前方の操作者を撮像できるように、筐体21の上部に、表示画面Sの前方に向けて設置されている。ただし、撮像装置13が設置される位置は、筐体21の上部に限られず、操作者を撮像できる位置であればよい。
【0023】
表示装置14は、画像を表示する装置であり、例えば液晶ディスプレイ装置である。表示装置14の表示画面Sに表示される画像は、情報処理装置15によって制御される。
【0024】
情報処理装置15は、撮像装置13により撮像された画像に基づき、操作者により指示器11で指示された位置(以下、「指示位置」と称す)を特定する。本例では、情報処理装置15は、特定された指示位置に基づき、カーソルCの表示位置の制御など、表示装置14の表示画面Sに表示される内容の制御を行う。また、情報処理装置15は、受光装置12により検知される指示器11に対するボタン操作に応じて、表示画面Sの画面遷移など、所定の処理を実行する。
【0025】
図4は、情報処理装置15の構成の一例を示すブロック図である。以下、図4を参照して、情報処理装置15の構成の一例を説明する。
【0026】
図4において、情報処理装置15は、画像取得部41、人物検出部42、指示器検出部43、操作者特定部44、位置特定部45、ボタン入力情報取得部46、および表示制御部47を有する。
【0027】
画像取得部41は、指示器11と当該指示器11を保持している操作者とが撮像された画像を取得する。具体的には、画像取得部41は、撮像装置13により撮像され出力されたデジタル画像データを取得する。画像取得部41は、取得された画像(以下、「撮像画像」と称す)を人物検出部42および指示器検出部43に出力する。
【0028】
人物検出部42は、画像取得部41により取得された撮像画像から、人物を検出し、当該撮像画像における当該人物の位置および大きさを検出する。具体的には、人物検出部42は、人物の位置として、撮像画像の座標系における当該人物の顔の中心座標を検出し、人物の大きさとして、撮像画像の座標系における当該人物の顔の幅(具体的には顔の水平方向の幅)を検出する。ただし、人物検出部42は、人物の位置や大きさとして、顔の長さ(具体的には顔の垂直方向の長さ)や、肩幅、両目間の距離、両目それぞれの位置、頭の頂点の座標など、他の情報を検出してもよい。また、人物検出部42は、顔の垂直方向に対する角度など、人物の姿勢を検出してもよい。
【0029】
人物検出部42における人物の検出の手法としては、特に限定されないが、例えば、ビオラ−ジョーンズ法と呼ばれる特許文献2に示される方式がある。ビオラ−ジョーンズ法は、要約すると、画像内における小領域の位置や大きさを変えながら画像内に小領域を設定し、当該小領域から特徴量を抽出し、識別器を利用して、当該小領域が顔であるか否かを判別するものである。人物検出部42は、例えば、撮像画像にビオラ−ジョーンズ法を適用した後、顔であると判別された小領域の位置や大きさから、撮像画像の座標軸で表される顔の中心位置や顔の大きさを求めることができる。また、人物検出部42は、回転させた撮像画像に対してビオラ−ジョーンズ法を適用することにより、撮像装置13の撮像面に平行に顔が回転している場合の回転角度を求めることができる。
【0030】
人物検出部42は、撮像画像から複数の人物を検出した場合には、検出された複数の人物の各々について、撮像画像における当該人物の位置および大きさを検出する。
【0031】
人物検出部42は、検出された人物の位置および大きさを示す人物検出情報を操作者特定部44に出力する。この人物検出情報は、検出された人物の姿勢を示す情報を含んでもよい。図5には、人物検出情報の一例が示されている。図5において、「No.」は検出された人物に割り当てられた番号であり、「x座標」および「y座標」は各人物の顔の中心座標であり、「幅」は各人物の顔の幅であり、「回転角」は各人物の顔の垂直方向に対する角度である。図5には、No.1〜No.3の3人の人物が検出された場合が示されている。
【0032】
指示器検出部43は、画像取得部41により取得された撮像画像から、指示器11を検出し、当該撮像画像における指示器11の位置を検出する。ここでは、指示器検出部43は、撮像画像から、指示器11の発光部33の発光による輝点を検出し、撮像画像の座標系における当該輝点の中心座標を指示器11の位置として検出する。発光部33は、常時発光していてもよいが、指示器11の検出をより容易にするため、所定のパターンで明滅を繰り返してもよい。この場合、指示器検出部43は、一連の撮像画像に基づき、上記所定のパターンで輝度の変化が起こる位置を検出し、当該位置を指示器11の位置として特定する。
【0033】
指示器検出部43は、検出された指示器11の位置を示す指示器検出情報を、操作者特定部44および位置特定部45に出力する。
【0034】
操作者特定部44は、画像取得部41により取得された撮像画像に複数の人物が含まれる場合に、当該複数の人物の中から指示器11を保持している操作者を特定する。具体的には、操作者特定部44は、人物検出部42からの人物検出情報と、指示器検出部43からの指示器検出情報とに基づき、人物検出情報に複数の人物の情報が含まれる場合に、当該複数の人物の中から操作者を特定する。
【0035】
一つの態様では、操作者特定部44は、次のように操作者の特定を行う。指示器11は操作者に保持されて使用されることから、実空間内で指示器11が存在する位置は、操作者の手の届く範囲内に限られる。そのため、撮像画像において、指示器11は操作者の近傍に存在している。そこで、操作者特定部44は、撮像画像における複数の人物の各々の位置と、撮像画像における指示器11の位置とに基づき、複数の人物の中から操作者を特定する。具体的には、操作者特定部44は、撮像画像における各人物の位置と指示器11の位置との差に基づき、複数の人物の中から操作者を特定する。より具体的には、操作者特定部44は、複数の人物の各々について、人物検出情報に含まれる当該人物の位置と、指示器検出情報に含まれる指示器11の位置との差を表す評価値を求め、評価値が最小となる人物を操作者として特定する。すなわち、操作者特定部44は、複数の人物のうち、撮像画像における当該人物の位置と、撮像画像における指示器11の位置との差を表す評価値が最小となる人物を操作者として特定する。
【0036】
例えば、操作者特定部44は、評価値として、各人物について、撮像画像における当該人物の位置と、撮像画像における指示器11の位置との間のユークリッド距離を算出し、算出されたユークリッド距離が最小となる人物を操作者として特定する。例えば、図6に示される撮像画像が取得され、2人の人物の位置P1,P2が検出され、指示器11の位置Pdevが検出された場合、操作者特定部44は、位置P1と位置Pdevとの間のユークリッド距離L1と、位置P2と位置Pdevとの間のユークリッド距離L2(<L1)とを算出し、ユークリッド距離が最小である位置P2の人物を操作者として特定する。
【0037】
ただし、操作者特定部44は、ユークリッド距離の代わりに、撮像画像における人物の位置と指示器11の位置との間のマンハッタン距離や、水平方向の距離(すなわち水平方向の位置の差の絶対値またはx座標の差の絶対値)など、他の値を評価値として用いてもよい。
【0038】
また、別の態様では、操作者特定部44は、次のように操作者の特定を行う。同じ人物が同じ姿勢で指示器11を保持するとした場合、実空間における撮像装置13から当該人物までの距離が大きいほど、撮像画像における当該人物の位置(例えば顔の中心位置)と指示器11の位置との差(例えばユークリッド距離)は小さくなる。すなわち、撮像画像における人物の位置と指示器11の位置との差は、実空間における撮像装置13から人物までの距離に応じて変化する。そこで、実空間内における撮像装置13から人物までの距離を考慮して、より正確に操作者を特定する観点より、操作者特定部44は、撮像画像における各人物の位置および指示器11の位置に加え、実空間における撮像装置13から各人物までの距離を表す情報(以下、「距離情報」と称す)に基づき、操作者の特定を行う。具体的には、操作者特定部44は、各人物について、撮像画像における当該人物の位置と指示器11の位置との差を、当該人物の距離情報により補正した評価値を求め、評価値が最小となる人物を操作者として特定する。一つの態様では、操作者特定部44は、各人物の距離情報として、撮像画像における各人物の大きさを用いる。
【0039】
例えば、操作者特定部44は、評価値として、各人物について、撮像画像における当該人物の位置と、撮像画像における指示器11の位置との差を表す値を、撮像画像における当該人物の大きさ(例えば顔の幅)で除算した値(すなわち商)を算出し、当該値が最小となる人物を操作者として特定する。撮像画像における人物の位置と、撮像画像における指示器11の位置との差を表す値としては、上述したように、ユークリッド距離や、マンハッタン距離、水平方向の距離などがある。
【0040】
操作者特定部44は、操作者を特定する際、撮像画像における指示器11の位置の代わりに、直近の一定期間における、指示器11の位置の平均値や中央値、または指示器11の位置の最大値と最小値の和の半値を用いてもよい。例えば、操作者特定部44は、指示器検出部43からの指示器検出情報の履歴を一定期間記録しておき、撮像画像における指示器11の位置の代わりに、上記記録された一定期間における指示器11の位置の平均値や中央値、または最大値と最小値の和の半値を用いてもよい。上記指示器11の位置の平均値、中央値、および半値は、例えば、x座標およびy座標のそれぞれの、平均値、中央値、および半値を求めることにより求められる。
【0041】
操作者特定部44は、上記操作者の特定結果として、特定された操作者を示す情報を位置特定部45に出力する。ここでは、操作者特定部44は、人物検出部42からの人物検出情報に含まれる複数の人物の情報のうち、特定された操作者の情報のみを位置特定部45に出力する。
【0042】
操作者特定部44は、操作者が特定されない場合に、操作者が特定されないことを示す情報、または操作者が存在しないことを示す情報を位置特定部45に出力してもよい。例えば、操作者特定部44は、すべての人物について評価値が予め定められた閾値以上である場合には、評価値が最小となる人物を操作者として特定するのではなく、操作者が特定されないことを示す情報、または操作者が存在しないことを示す情報を出力してもよい。なお、操作者が特定されない場合としては、指示器11がどの人物によっても保持されていない場合や、指示器11の位置の検出に誤りがあった場合などがある。
【0043】
一つの態様では、撮像画像に含まれる人物が1人である場合も、操作者特定部44は、操作者の特定を行う。具体的には、操作者特定部44は、人物検出部42により検出された人物の数が1である場合、当該人物が操作者であるか否かを判断する。例えば、操作者特定部44は、当該人物について評価値を算出し、評価値が予め定められた閾値未満である場合には、当該人物を操作者として特定し、評価値が閾値以上である場合には、操作者が特定されないことを示す情報、または操作者が存在しないことを示す情報を出力する。ただし、操作者特定部44は、撮像画像に含まれる人物が1人である場合、当該人物を操作者として特定してもよい。この場合、操作者特定部44での操作者の特定の処理量が低減される。
【0044】
位置特定部45は、撮像画像における操作者特定部44により特定された操作者の位置と、撮像画像における指示器11の位置とに基づき、操作者により指示器11で指示された指示位置を特定する。具体的には、位置特定部45は、撮像画像における特定された操作者と指示器11との位置関係から指示位置を特定する。より具体的には、位置特定部45は、撮像画像における特定された操作者の位置を基準とする指示器11の相対位置に基づき、指示位置を特定する。ここでは、位置特定部45は、操作者特定部44からの操作者に関する人物検出情報と、指示器検出部43からの指示器検出情報とに基づき、指示位置を示す指示座標を算出する。指示座標は、具体的には表示装置14に表示される画像の座標系における座標である。
【0045】
位置特定部45は、例えば、下記式(1)のように、撮像画像における操作者の位置と指示器11の位置との差を入力とする関数により指示座標を算出する。
Ppoint=(Pope−Pdev)×scaleoffset+Poffset ・・・(1)
上記の式(1)において、Ppointは指示座標を示すベクトル値、Popeは操作者の位置を示すベクトル値、Pdevは指示器11の位置を示すベクトル値である(図7を参照)。また、scaleoffsetは、指示器11の位置の変化に対する特定される指示位置の変化の感度を定める係数、すなわち指示器11の位置の変化と指示座標の変化との関係を定めるスカラー値である。Poffsetは、指示座標の座標系の原点(例えば表示装置14に表示される画像の座標系の原点)と操作者の位置(例えば顔の中心座標)との関係を定めるベクトル値である。このように、一つの態様では、指示座標を算出するための関数は、撮像画像における操作者の位置と指示器11の位置との差に対する、指示器11の位置の変化に対する指示位置の変化の感度を定める係数の乗算を含む。
【0046】
撮像画像における操作者の位置と指示器11の位置との差は、実空間における撮像装置13から操作者までの距離に応じて変化する。そこで、実空間における撮像装置13から操作者までの距離を考慮して、より正確に指示位置を特定する観点より、一つの態様では、位置特定部45は、撮像画像における操作者の位置および指示器11の位置に加え、実空間における撮像装置13から操作者までの距離を表す情報(以下、「操作者の距離情報」と称す)に基づき、指示位置を特定する。位置特定部45は、操作者の距離情報として、例えば撮像画像における操作者の大きさを用いる。撮像画像における操作者の大きさとしては、例えば操作者の顔の幅が用いられるが、両目間の距離や、肩幅等が用いられてもよい。
【0047】
当該態様では、位置特定部45は、例えば、下記式(2)のように、撮像画像における操作者の位置と指示器11の位置との差、および撮像画像における操作者の大きさを入力とする関数により指示座標を算出する。
Ppoint=(Pope−Pdev)/scale×scaleoffset+Poffset ・・・(2)
上記の式(2)において、scaleは、撮像画像における操作者の大きさ(例えば顔の水平方向の幅)を示すスカラー値である(図7を参照)。Ppoint、Pope、Pdev、scaleoffset、およびPoffsetは、式(1)と同様である。このように、一つの態様では、指示座標を算出するための関数は、撮像画像における操作者の位置と指示器11の位置との差に対する、撮像画像における操作者の大きさによる除算と、指示器11の位置の変化に対する指示位置の変化の感度を定める係数の乗算とを含む。
【0048】
上記の式(1)、(2)において、scaleoffsetおよびPoffsetの値は、一つの態様では、予め設定された固定値である。この場合、式(1)のscaleoffsetおよびPoffsetの値は、例えば、撮像装置13から標準的な距離だけ離れた位置で、標準的な大きさの人が指示器11を上下左右の限界の位置まで動かしたときに、算出される指示座標が表示装置14の表示画面Sのそれぞれ上下左右の端の位置を示す座標となるように設定される。当該値の設定は、表示装置14の解像度と、上記標準的な位置で上記標準的な人が指示器11を動かした時の、撮像画像における当該人の顔の中心座標および指示器11の上下左右の限界の位置の座標とに基づいて行われる。式(2)のscaleoffsetおよびPoffsetの値は、例えば、標準的な大きさの人が指示器11を上下左右の限界の位置まで動かしたときに、算出される指示座標が表示装置14の表示画面Sのそれぞれ上下左右の端の位置を示す座標となるように設定される。当該値の設定は、表示装置14の解像度と、上記標準的な人が指示器11を動かした時の、撮像画像における当該人の大きさ、顔の中心座標、および指示器11の上下左右の限界の位置の座標とに基づいて行われる。
【0049】
別の態様では、上記の式(1)、(2)におけるscaleoffsetおよびPoffsetの値は、操作者の操作に応じて変化する可変値である。例えば、位置特定部45は、当該位置特定部45により特定される指示位置が予め設定された範囲内に収まるように、操作者による指示器11の操作に応じて、scaleoffset(すなわち指示器11の位置の変化に対する指示位置の変化の感度を定める係数)を調整する。具体的には、scaleoffsetの初期値が上記の固定値よりも大きい値に設定され(すなわち感度が高めに設定され)、位置特定部45は、算出される指示座標が表示装置14の水平方向の座標範囲または垂直方向の座標範囲を超える場合に、すなわち表示装置14の表示可能な座標範囲を超える場合に、一定の割合でscaleoffsetの値を減少させる(すなわち感度を下げる)。
【0050】
位置特定部45は、算出された指示座標が予め設定された有効範囲を超える場合、当該指示座標に最も近い有効範囲内の座標を最終的な指示座標として特定してもよい。もしくは、位置特定部45は、算出された指示座標が予め設定された有効範囲を超える場合、操作者が操作を行っていないとみなして、指示座標を出力しないようにしてもよい。上記有効範囲は、例えば表示装置14の表示画面S上のカーソルCを表示可能な範囲である。
【0051】
位置特定部45は、特定された指示位置を示す情報を表示制御部47に出力する。ここでは、位置特定部45は、表示装置14の表示画面S上の位置を示す指示座標を表示制御部47に出力する。
【0052】
ボタン入力情報取得部46は、受光装置12から、指示器11の操作ボタンが押下されたことを示す情報(ボタン入力情報)を取得し、表示制御部47に通知する。
【0053】
表示制御部47は、位置特定部45により特定された指示位置に基づき、表示装置14に表示される画像を制御する。ここでは、表示制御部47は、位置特定部45により特定された指示座標と、ボタン入力情報取得部46により取得されたボタン入力情報とを用いて、表示装置14に表示される内容を制御する。具体的には、表示制御部47は、表示装置14に表示されるGUI(Graphical User Interface)画面を制御する。
【0054】
例えば、表示制御部47は、図8に示されるように、表示装置14の表示画面S上の所定の位置に複数の選択可能な領域81a〜81fを表示させ、位置特定部45により特定された指示座標の位置にカーソルCを表示させる。ここで、操作者が指示器11の決定ボタン31aを押下すると、ボタン入力情報取得部46により決定ボタン31aが押下されたことを示すボタン入力情報が表示制御部47に通知される。表示制御部47は、当該ボタン入力情報の通知を受けると、カーソルCが表示されている位置に存在している選択可能な領域81cが選択されたと判断し、領域81cに予め割り当てられた処理(例えば表示画面Sの画面遷移)を行う。
【0055】
図9は、カーソルCの表示に関する情報処理装置15の処理の手順の一例を示すフローチャートである。以下、図9を参照して、カーソルCの表示に関する情報処理装置15の処理の手順を説明する。この処理は、例えば、撮像装置13の撮像の周期と同じ周期で繰り返し行われる。ただし、N(Nは2以上の整数)個の撮像画像につき1回など、撮像の周期より長い周期で行われてもよい。
【0056】
まず、情報処理装置15は、撮像装置13から撮像画像を取得する(S11)。次に、情報処理装置15は、取得された撮像画像から人物を検出し、撮像画像における当該人物の位置および大きさを検出する(S12)。また、情報処理装置15は、取得された撮像画像から指示器11を検出し、撮像画像における指示器11の位置を検出する(S13)。そして、情報処理装置15は、検出された指示器11の位置と、検出された人物の位置および大きさに基づき、検出された人物からの操作者の特定を行う(S14)。ここでは、検出された人物が1つであっても複数であっても操作者の特定が行われる。また、操作者が特定される代わりに、操作者が特定されないこともある。
【0057】
次に、情報処理装置15は、ステップS14で操作者が特定されたか否かを判断する(S15)。
【0058】
操作者が特定されたと判断された場合(S15:YES)、情報処理装置15は、検出された指示器11の位置と、特定された操作者の位置および大きさに基づき、指示位置を特定する(S16)。そして、情報処理装置15は、表示装置14の表示画面Sの特定された指示位置にカーソルCを表示させ(S17)、処理を終了させる。
【0059】
一方、操作者が特定されなかったと判断された場合(S15:NO)、情報処理装置15は、指示位置の特定やカーソルCの表示を行わずに処理を終了させる。
【0060】
図10は、決定ボタン31aの押下に基づく画面遷移に関する情報処理装置15の処理の手順の一例を示すフローチャートである。以下、図10を参照して、決定ボタン31aの押下に基づく画面遷移に関する情報処理装置15の処理の手順を説明する。なお、この処理は、上述の図10の処理とは独立したものであり、情報処理装置15は、図9,10の2つの処理を同時に実行しても、交互に実行してもよい。また、それぞれの処理を行う頻度に差があってもよい。
【0061】
まず、情報処理装置15は、受光装置12からボタン入力情報を取得する(S21)。次に、情報処理装置15は、取得されたボタン入力情報に基づき、決定ボタン31aが押下されたか否かを判断し(S22)、押下されていないと判断された場合には(S22:NO)、処理を終了させる。
【0062】
一方、決定ボタン31aが押下されたと判断された場合(S22:YES)、情報処理装置15は、表示画面S上のカーソルCが表示されている位置(すなわち現在の指示位置)に選択可能な領域81a〜81fのいずれかが存在するか否かを判断する(S23)。
【0063】
選択可能な領域81a〜81fのいずれも存在しないと判断された場合(S23:NO)、情報処理装置15は、処理を終了させる。
【0064】
一方、選択可能な領域81a〜81fのいずれかが存在すると判断された場合は(S23:YES)、情報処理装置15は、カーソルCの位置に存在する選択可能な領域(図8では領域81c)に割り当てられた画面遷移を実行し(S24)、処理を終了させる。
【0065】
以上説明した本実施の形態1によれば、下記(1)〜(8)の効果が得られ得る。
(1)情報処理装置は、撮像画像に複数の人物が含まれている場合に、当該複数の人物の中から指示器を保持している操作者を特定し、撮像画像における特定された操作者の位置と、撮像画像における指示器の位置とに基づき、操作者により指示器で指示された指示位置を特定する。このため、撮像画像に複数の人物が含まれる場合であっても、適切に指示位置を特定することができる。
【0066】
具体的には、撮像画像に複数の人物が含まれる場合において、実際には操作者ではない人物の位置を基に誤った指示位置を特定してしまうことを防ぐことができる。
【0067】
また、撮像画像における操作者と指示器との位置関係から指示位置を求めることが可能となる。より具体的には、撮像画像における操作者の位置を基準とする指示器の相対位置から指示位置を求めることが可能となる。これにより、例えば操作者の操作感が向上する。具体的には、単純に撮像画像における指示器の位置から指示位置を求める構成では、操作者が同じ姿勢で指示器を保持していても、操作者の位置が異なる場合は、撮像画像における指示器の位置が異なるため、指示位置(例えばカーソル位置)が異なってしまう。すなわち、操作者の位置が変わると、操作者に対する指示器の相対位置と指示位置との対応関係が変化してしまい、操作感を損ねてしまう。これに対し、撮像画像における操作者の位置を基準とする指示器の相対位置から指示位置を求める構成では、操作者の位置によらず、操作者に対する指示器の相対位置と指示位置との対応関係を一定とすることが可能となり、操作者の位置によって操作感が変わることを回避または軽減することが可能となる。
【0068】
(2)操作者特定部は、撮像画像における複数の人物の各々の位置と、撮像画像における指示器の位置とに基づき、複数の人物の中から操作者を特定する。これにより、撮像画像における各人物と指示器との位置関係から操作者を特定することができる。
【0069】
(3)操作者特定部は、撮像画像における複数の人物の各々の位置および指示器の位置のほか、さらに実空間における撮像装置から複数の人物の各々までの距離を表す情報に基づき、複数の人物の中から操作者を特定する。これにより、実空間における撮像装置から各人物までの距離を考慮して、より正確に操作者を特定することができる。
【0070】
(4)操作者特定部は、撮像画像における複数の人物の各々の位置および指示器の位置のほか、さらに撮像画像における複数の人物の各々の大きさに基づき、複数の人物の中から操作者を特定する。これにより、簡易な構成で、実空間における撮像装置から各人物までの距離を考慮して、より正確に操作者を特定することができる。具体的には、複数の撮像装置によりステレオ画像を取得して人物までの距離を計測する構成や、距離を計測する機能を有する特殊な撮像装置を利用する構成などと比較して、構成の簡易化やコストの低減が可能である。
【0071】
(5)位置特定部は、撮像画像における特定された操作者の位置および指示器の位置のほか、さらに実空間における撮像装置から特定された操作者までの距離を表す情報に基づき、指示位置を特定する。これにより、実空間における撮像装置から操作者までの距離を考慮して、より適切な指示位置を特定することができる。具体的には、実空間内で操作者から見て同じ位置に指示器が存在する場合、実空間における撮像装置から操作者までの距離によらず、略同じ指示位置を特定することが可能となる。これにより、実空間における撮像装置から操作者までの距離による操作感の変化を回避または軽減することが可能となる。
【0072】
(6)位置特定部は、撮像画像における特定された操作者の位置および指示器の位置のほか、さらに撮像画像における特定された操作者の大きさに基づき、指示位置を特定する。これにより、簡易な構成で、実空間における撮像装置から操作者までの距離を考慮して、より適切な指示位置を特定することができる。具体的には、複数の撮像装置によりステレオ画像を取得して操作者までの距離を計測する構成や、距離を計測する機能を有する特殊な撮像装置を利用する構成などと比較して、構成の簡易化やコストの低減が可能である。
【0073】
(7)操作者特定部は、撮像画像に含まれる人物が1つである場合でも、操作者の特定を行う。すなわち、当該人物が操作者か否かを判断する。これにより、実際には操作者ではない人物の位置を基に誤った指示位置を特定してしまうことを防ぐことができる。
【0074】
(8)操作者特定部は、撮像画像における指示器の位置の代わりに、直近の一定期間における、指示器の位置の平均値や中央値、または指示器の位置の最大値と最小値の和の半値を用いる。これにより、複数の人物が互いに近い位置に存在する場合などに、実際には指示器を保持していない人物を誤って操作者として特定してしまう可能性を低減させることが可能となる。
【0075】
なお、上記の説明では、指示器11が操作部31および発光部32を備える構成を例示したが、指示器11は情報処理装置15により検出可能であればよく、操作部31および発光部32は省略されてもよい。この場合、受光装置12およびボタン入力情報取得部46も省略可能である。また、この場合、情報処理装置15は、決定ボタン31aによる領域の選択の代わりに、表示画面S上のカーソルCの位置が複数の選択可能な領域のうちいずれかの領域の中に一定時間以上ある場合、当該領域が選択されたとみなして、当該領域に割り当てられた画面遷移を行ってもよい。
【0076】
また、上記の説明では、指示器11がテレビリモコンである場合を例示したが、指示器11は、銃を模した形状のものや、杖を模した形状のもの、指先に嵌めて使用できるものなど、他の態様のものであってもよい。
【0077】
また、上記の説明では、指示器検出部43が指示器11の発光部33からの発光を利用して指示器11の位置を検出する場合を例示したが、指示器検出部43は、他の方法で指示器11の位置の検出を行ってもよい。例えば、指示器11に反射材が設けられ、指示器11とは別の箇所に発光部が設けられ、指示器検出部43が、当該発光部から発光され当該反射材により反射された光を検出することにより、指示器11の位置を検出する構成であってもよい。また、指示器検出部43は、指示器11の外観の特徴(例えば指示器11に設けられた識別マーク)を用いて指示器11の位置を検出してもよい。これらの場合、発光部33は省略されてもよい。
【0078】
また、図9,11,13,14では、例えば図9のS15において操作者が特定されなかった場合に、処理を終了させることとしたが、情報処理装置15は、操作者が特定されなかった場合、今回の処理で検出された指示器11の位置に代えて、前回の処理で検出された指示器11の位置を利用して、操作者の特定および指示位置の特定を行ってもよい。この場合、指示器11の位置の検出に誤りがあった場合でも、指示位置の特定が可能となる。具体的には、今回の処理で指示器11の位置の検出に誤りがあり、その結果として操作者が特定されなかった場合、当該誤って検出された指示器11の位置に代えて、正しく検出された可能性のある前回検出された指示器11の位置を利用することにより、操作者の特定および指示位置の特定を行うことが可能となる。これにより、指示器11の位置の誤検出の影響を軽減することができる。
【0079】
また、上記の説明では、距離情報として撮像画像における人物の大きさを用いる場合を例示したが、距離情報は他の方法で取得されてもよい。例えば、情報処理装置15は、複数の撮像装置によりステレオ画像を取得して距離情報を求めてもよいし、距離を計測する機能を有する特殊な撮像装置を利用して距離情報を求めてもよい。
【0080】
また、上記の説明では、情報処理装置15がテレビ受像機に適用される場合を例示したが、情報処理装置15は、コンピュータやゲーム機など、様々な装置や用途に適用可能である。
【0081】
また、上記の説明では、情報処理装置15が指示位置に基づいて表示の制御を行う構成を例示したが、情報処理装置15は、少なくとも指示位置を特定する機能を備えていればよく、表示制御部46および表示装置14は情報処理装置15の外部に設けられてもよい。また、情報処理装置15により特定された指示位置を表す情報は、表示の制御以外の用途に利用されてもよく、表示制御部46および表示装置14は省略されてもよい。
【0082】
実施の形態2.
以下、実施の形態2における情報処理システムについて説明する。この情報処理システムは、実施の形態1のものと殆ど同じであるので、実施の形態1と同様の部分については、同一の符号を用い、説明を省略または簡略化することとする。
【0083】
本実施の形態では、操作者特定部44は、今回の撮像画像において検出されたいずれかの人物の位置および大きさが、前回の撮像画像において特定された操作者の位置および大きさと一致する場合には、当該一致する人物を操作者として特定する。具体的には、操作者特定部44は、人物検出部42からの人物検出情報と、所定の記憶領域に記憶された前回特定された操作者の人物検出情報とに基づき、今回検出された人物の中に、前回特定された操作者と位置および大きさが一致する人物が存在するか否かを判断し、一致する人物が存在する場合には、当該人物を操作者として特定する。ここで、位置および大きさが一致することは、位置および大きさが略一致することを含んでもよい。例えば、操作者特定部44は、両者の位置の差が所定の閾値以下であり、かつ両者の大きさの差が所定の閾値以下である場合、両者の位置および大きさが一致すると判断してもよい。
【0084】
図11は、実施の形態2におけるカーソルCの表示に関する情報処理装置15の処理の手順の一例を示すフローチャートである。以下、図11を参照して、カーソルCの表示に関する情報処理装置15の処理の手順を説明する。この処理は、例えば、撮像装置13の撮像の周期と同じ周期で繰り返し行われる。
【0085】
まず、情報処理装置15は、撮像装置13から撮像画像を取得する(S31)。次に、情報処理装置15は、取得された撮像画像から人物を検出し、撮像画像における当該人物の位置および大きさを検出する(S32)。また、情報処理装置15は、取得された撮像画像から指示器11を検出し、撮像画像における指示器11の位置を検出する(S33)。
【0086】
次に、情報処理装置15は、ステップS32で検出された各人物の位置および大きさが、前回の図11の処理で特定された操作者の位置および大きさと一致するかを判断することにより、前回特定された操作者と位置および大きさが一致する人物が存在するか否かを判断する(S34)。なお、前回の図11の処理で操作者が特定されなかった場合、情報処理装置15は、一致する人物は存在しないと判断する。
【0087】
一致する人物が存在すると判断された場合(S34:YES)、情報処理装置15は、当該人物を操作者であると特定し(S35)、処理をステップS38に進める。
【0088】
一方、一致する人物が存在しないと判断された場合(S34:NO)、情報処理装置15は、検出された指示器11の位置と、検出された人物の位置および大きさに基づき、検出された人物からの操作者の特定を行う(S36)。そして、情報処理装置15は、操作者が特定されたか否かを判断し(S37)、操作者が特定されたと判断された場合には(S37:YES)、処理をステップS38に進め、操作者が特定されなかったと判断された場合には(S37:NO)、処理を終了させる。
【0089】
ステップS38では、情報処理装置15は、検出された指示器11の位置と、特定された操作者の位置および大きさに基づき、指示位置を特定する。そして、情報処理装置15は、表示装置14の表示画面Sの特定された指示位置にカーソルCを表示させ(S39)、処理を終了させる。
【0090】
以上説明した通り、本実施の形態では、情報処理装置15は、今回の撮像画像における各人物の位置および大きさと、前回の撮像画像における操作者の位置および大きさとに基づき、操作者の特定を行う。このように、操作者の特定は、実施の形態1に示された方法以外の方法で行われてもよい。他にも、例えば、情報処理装置15は、予め記憶された操作者の外観の特徴と、撮像画像から認識される各人物の特徴との類似度を求め、類似度が最も高い人物を操作者として特定することも可能である。
【0091】
実施の形態3.
以下、実施の形態3における情報処理システムについて説明する。この情報処理システムは、実施の形態1のものと殆ど同じであるので、実施の形態1と同様の部分については、同一の符号を用い、説明を省略または簡略化することとする。
【0092】
図12は、実施の形態3における情報処理装置15の構成の一例を示すブロック図である。図12に示されるように、本実施の形態では、情報処理装置15は、検出対象領域設定部121をさらに有する。この検出対象領域設定部121は、撮像画像における特定された操作者の位置、または位置および大きさに基づき、指示器11の位置の検出の対象となる検出対象領域を設定する。指示器検出部43は、撮像画像のうち検出対象領域設定部121により設定された検出対象領域を検出の対象として、指示器11の位置の検出を行う。
【0093】
具体的には、検出対象領域設定部121は、予め設定された有効範囲内の指示位置が特定されるような指示器11の位置の範囲を検出対象領域として設定する。上記有効範囲は、例えば表示装置14の表示画面S上のカーソルCを表示可能な範囲である。
【0094】
例えば、指示座標の算出に上記式(1)が用いられる場合には、検出対象領域設定部121は、当該式(1)と、ベクトルPpointの有効範囲(すなわち指示位置の有効範囲であり、例えば表示装置14の解像度で決まる)と、ベクトルPope(すなわち特定された操作者の位置)とに基づいて、ベクトルPpointが有効範囲内となるベクトルPdevの範囲(すなわち指示器11の位置の範囲)を検出対象領域として設定する。
【0095】
また、指示座標の算出に上記式(2)が用いられる場合には、検出対象領域設定部121は、当該式(2)と、ベクトルPpointの有効範囲(すなわち指示位置の有効範囲であり、例えば表示装置14の解像度で決まる)と、ベクトルPope(すなわち特定された操作者の位置)と、スカラーscale(すなわち特定された操作者の大きさ)とに基づいて、ベクトルPpointが有効範囲内となるベクトルPdevの範囲(すなわち指示器11の位置の範囲)を検出対象領域として設定する。
【0096】
一つの態様では、操作者特定部44は、指示器11の位置を用いずに、例えば実施の形態2に記載の方法で操作者を特定する。検出対象領域設定部121は、当該特定された操作者の位置、または位置および大きさに基づき、検出対象領域を設定する。指示器検出部43は、撮像画像のうち当該検出対象領域から指示器11の位置を検出し、当該位置を示す指示器検出情報を位置特定部45に出力する。この場合、指示器検出部43は、操作者特定部44には指示器検出情報を出力しなくてもよい。当該態様における処理の一例は、後に図13に従って説明される。
【0097】
別の態様では、検出対象領域設定部121は、位置特定部45により指示位置が特定された場合に、特定された操作者の位置、または位置および大きさに基づき、次回の処理のための検出対象領域を設定する。そして、次回の処理において、操作者特定部44は、実施の形態2と同様に、今回検出された人物の中に、前回特定された操作者と位置および大きさが一致する人物が存在するか否かを判断し、一致する人物が存在する場合には、当該人物を操作者として特定する。また、操作者特定部44により一致する人物が存在すると判断された場合、指示器検出部43は、撮像画像のうち前回の処理で設定された検出対象領域から指示器11の位置を検出し、当該位置を示す指示器検出情報を位置特定部45に出力する。この場合、指示器検出部43は、操作者特定部44には指示器検出情報を出力しなくてもよい。当該態様における処理の一例は、後に図14に従って説明される。
【0098】
図13は、実施の形態3におけるカーソルCの表示に関する情報処理装置15の処理の手順の第1の例を示すフローチャートである。以下、図13を参照して、カーソルCの表示に関する処理の第1の例を説明する。この処理は、例えば、撮像装置13の撮像の周期と同じ周期で繰り返し行われる。
【0099】
まず、情報処理装置15は、撮像装置13から撮像画像を取得する(S41)。次に、情報処理装置15は、取得された撮像画像から人物を検出し、撮像画像における当該人物の位置および大きさを検出する(S42)。
【0100】
次に、情報処理装置15は、ステップS42で検出された各人物の位置および大きさが、前回の図13の処理で特定された操作者の位置および大きさと一致するかを判断することにより、前回特定された操作者と位置および大きさが一致する人物が存在するか否かを判断する(S43)。
【0101】
一致する人物が存在すると判断された場合(S43:YES)、情報処理装置15は、当該人物を操作者であると特定し(S44)、当該人物の位置および大きさと、表示装置14の解像度とに基づき、検出対象領域を算出する(S45)。そして、情報処理装置15は、撮像画像のうち当該検出対象領域のみを対象として指示器11の検出を行い、撮像画像における指示器11の位置を検出し(S46)、処理をステップS50に進める。
【0102】
一方、一致する人物が存在しないと判断された場合(S43:NO)、情報処理装置15は、撮像画像の全領域を対象として指示器11の検出を行い、撮像画像における指示器11の位置を検出する(S47)。そして、情報処理装置15は、検出された指示器11の位置と、検出された人物の位置および大きさに基づき、検出された人物からの操作者の特定を行う(S48)。次に、情報処理装置15は、操作者が特定されたか否かを判断し(S49)、操作者が特定されたと判断された場合には(S49:YES)、処理をステップS50に進め、操作者が特定されなかったと判断された場合には(S49:NO)、処理を終了させる。
【0103】
ステップS50では、情報処理装置15は、検出された指示器11の位置と、特定された操作者の位置および大きさに基づき、指示位置を特定する。そして、情報処理装置15は、表示装置14の表示画面Sの特定された指示位置にカーソルCを表示させ(S51)、処理を終了させる。
【0104】
図14は、実施の形態3における、カーソルCの表示に関する情報処理装置15の処理の手順の第2の例を示すフローチャートである。以下、図14を参照して、カーソルCの表示に関する処理の第2の例を説明する。この処理は、例えば、撮像装置13の撮像の周期と同じ周期で繰り返し行われる。
【0105】
まず、情報処理装置15は、撮像装置13から撮像画像を取得する(S61)。次に、情報処理装置15は、取得された撮像画像から人物を検出し、撮像画像における当該人物の位置および大きさを検出する(S62)。
【0106】
次に、情報処理装置15は、ステップS62で検出された各人物の位置および大きさが、前回の図14の処理で特定された操作者の位置および大きさと一致するかを判断することにより、前回特定された操作者と位置および大きさが一致する人物が存在するか否かを判断する(S63)。
【0107】
一致する人物が存在すると判断された場合(S63:YES)、情報処理装置15は、当該人物を操作者であると特定する(S64)。また、情報処理装置15は、撮像画像のうち、前回の図14の処理のステップS70(後述)で設定された検出対象領域のみを対象として指示器11の検出を行い、撮像画像における指示器11の位置を検出し(S65)、処理をステップS69に進める。
【0108】
一方、一致する人物が存在しないと判断された場合(S63:NO)、情報処理装置15は、撮像画像の全領域を対象として指示器11の検出を行い、撮像画像における指示器11の位置を検出する(S66)。そして、情報処理装置15は、検出された指示器11の位置と、検出された人物の位置および大きさに基づき、検出された人物からの操作者の特定を行う(S67)。次に、情報処理装置15は、操作者が特定されたか否かを判断し(S68)、操作者が特定されたと判断された場合には(S68:YES)、処理をステップS69に進め、操作者が特定されなかったと判断された場合には(S68:NO)、処理を終了させる。
【0109】
ステップS69では、情報処理装置15は、検出された指示器11の位置と、特定された操作者の位置および大きさに基づき、指示位置を特定する。そして、情報処理装置15は、特定された操作者の位置および大きさと、表示装置14の解像度とに基づき、検出対象領域を算出する(S70)。当該算出された検出対象領域は、次回の図14の処理においてステップS65で利用される。また、情報処理装置15は、表示装置14の表示画面Sの特定された指示位置にカーソルCを表示させ(S71)、処理を終了させる。
【0110】
以上説明した本実施の形態3によれば、下記(9)の効果が得られ得る。
(9)情報処理装置は、指示位置の特定に用いられる撮像画像における指示器の位置を検出する指示器検出部と、撮像画像における特定された操作者の位置、または位置および大きさに基づき、指示器の位置の検出の対象となる検出対象領域を設定する検出対象領域設定部とを有し、指示器検出部は、撮像画像のうち上記検出対象領域を検出の対象として、指示器の位置の検出を行う。このため、撮像画像のうち操作者の位置に応じた適切な範囲から指示器の位置の検出を行うことができる。これにより、指示器の位置の検出の処理の負荷を軽減することや、指示器の位置の検出の誤りの発生を低減することができる。また、有効範囲内の指示位置が得られるように検出対象領域を設定することにより、無効な指示位置が特定されることを回避することができる。
【0111】
以上説明した実施の形態1〜3において、情報処理装置15の機能は、電子回路などのハードウェア資源のみにより実現されてもよいし、ハードウェア資源とソフトウェアとの協働により実現されてもよい。ハードウェア資源とソフトウェアとの協働により実現される場合、情報処理装置15の機能は、例えば情報処理プログラムがコンピュータにより実行されることによって実現される。より具体的には、情報処理装置15の機能は、ROM(Read Only Memory)等の記録媒体に記録された情報処理プログラムが主記憶装置に読み出されて中央処理装置(CPU: Central Processing Unit)により実行されることによって実現される。情報処理プログラムは、光ディスク等のコンピュータ読み取り可能な記録媒体に記録されて提供されてもよいし、インターネット等の通信回線を介して提供されてもよい。
【0112】
なお、本発明は、上記実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々の態様で実施することができる。
【符号の説明】
【0113】
11 指示器、 12 受光装置、 13 撮像装置、 14 表示装置、 15 情報処理装置、 41 画像取得部、 42 人物検出部、 43 指示器検出部、 44 操作者特定部、 45 位置特定部、 46 ボタン入力情報取得部、 47 表示制御部、 100 情報処理システム、 121 検出対象領域設定部。
【特許請求の範囲】
【請求項1】
位置を指示するための指示器と当該指示器を保持している操作者とが撮像された画像を取得する画像取得手段と、
前記画像に複数の人物が含まれている場合に、当該複数の人物の中から前記指示器を保持している前記操作者を特定する操作者特定手段と、
前記画像における前記特定された操作者の位置と、前記画像における前記指示器の位置とに基づき、前記操作者により前記指示器で指示された位置を特定する位置特定手段と、
を備えることを特徴とする情報処理装置。
【請求項2】
前記操作者特定手段は、前記画像における前記複数の人物の各々の位置と、前記画像における前記指示器の位置とに基づき、前記複数の人物の中から前記操作者を特定することを特徴とする請求項1に記載の情報処理装置。
【請求項3】
前記操作者特定手段は、さらに前記画像における前記複数の人物の各々の大きさに基づき、前記複数の人物の中から前記操作者を特定することを特徴とする請求項2に記載の情報処理装置。
【請求項4】
前記位置特定手段は、さらに前記画像における前記特定された操作者の大きさに基づき、前記位置を特定することを特徴とする請求項1から3のいずれかに記載の情報処理装置。
【請求項5】
前記位置特定手段に用いられる前記画像における前記指示器の位置を検出する指示器検出手段と、
前記画像における前記特定された操作者の位置、または位置および大きさに基づき、前記指示器の位置の検出の対象となる検出対象領域を設定する検出対象領域設定手段と、
をさらに備え、
前記指示器検出手段は、前記画像のうち前記検出対象領域を検出の対象として、前記指示器の位置の検出を行う、
ことを特徴とする請求項1から4のいずれかに記載の情報処理装置。
【請求項6】
前記操作者特定手段は、前記複数の人物のうち、前記画像における当該人物の位置と、前記画像における前記指示器の位置との間の水平方向の距離が最小となる人物を前記操作者として特定することを特徴とする請求項2に記載の情報処理装置。
【請求項7】
前記操作者特定手段は、前記複数の人物のうち、前記画像における当該人物の位置と、前記画像における前記指示器の位置との間のユークリッド距離が最小となる人物を前記操作者として特定することを特徴とする請求項2に記載の情報処理装置。
【請求項8】
前記操作者特定手段は、前記複数の人物のうち、前記画像における当該人物の位置と、前記画像における前記指示器の位置との間の水平方向の距離を前記画像における当該人物の大きさで除算した商が最小となる人物を前記操作者として特定することを特徴とする請求項3に記載の情報処理装置。
【請求項9】
前記操作者特定手段は、前記複数の人物のうち、前記画像における当該人物の位置と、前記画像における前記指示器の位置との間のユークリッド距離を前記画像における当該人物の大きさで除算した商が最小となる人物を前記操作者として特定することを特徴とする請求項3に記載の情報処理装置。
【請求項10】
前記位置特定手段は、前記画像における前記特定された操作者の位置と前記指示器の位置との差、および前記画像における前記特定された操作者の大きさを入力とする関数により前記位置を算出することを特徴とする請求項4に記載の情報処理装置。
【請求項11】
前記関数は、前記画像における前記特定された操作者の位置と前記指示器の位置との差に対する、前記画像における前記特定された操作者の大きさによる除算と、前記指示器の位置の変化に対する前記特定される位置の変化の感度を定める係数の乗算とを含むことを特徴とする請求項10に記載の情報処理装置。
【請求項12】
前記位置特定手段は、当該位置特定手段により特定される位置が予め設定された範囲内に収まるように、前記操作者による前記指示器の操作に応じて前記感度を定める係数を調整することを特徴とする請求項11に記載の情報処理装置。
【請求項13】
前記画像における前記特定された操作者の大きさは、前記画像における前記特定された操作者の顔の幅により定義されることを特徴とする請求項4、10、11、または12に記載の情報処理装置。
【請求項14】
前記画像における前記特定された操作者の大きさは、前記画像における前記特定された操作者の両目間の距離により定義されることを特徴とする請求項4、10、11、または12に記載の情報処理装置。
【請求項15】
請求項1から14のいずれかに記載の情報処理装置と、
前記指示器と、
前記指示器および前記操作者を撮像し、前記画像を前記画像取得手段に出力する撮像装置と、
画像を表示する表示装置と、
前記位置特定手段により特定された位置に基づいて前記表示装置に表示される画像を制御する表示制御手段と、
を備えることを特徴とする情報処理システム。
【請求項16】
位置を指示するための指示器と当該指示器を保持している操作者とが撮像された画像を取得するステップと、
前記画像に複数の人物が含まれている場合に、当該複数の人物の中から前記指示器を保持している前記操作者を特定するステップと、
前記画像における前記特定された操作者の位置と、前記画像における前記指示器の位置とに基づき、前記操作者により前記指示器で指示された位置を特定するステップと、
を含むことを特徴とする情報処理方法。
【請求項17】
請求項1から14のいずれかに記載の情報処理装置と、
画像を表示する表示装置と、
前記位置特定手段により特定された位置に基づいて前記表示装置に表示される画像を制御する表示制御手段と、
を備えることを特徴とするテレビ受像機。
【請求項1】
位置を指示するための指示器と当該指示器を保持している操作者とが撮像された画像を取得する画像取得手段と、
前記画像に複数の人物が含まれている場合に、当該複数の人物の中から前記指示器を保持している前記操作者を特定する操作者特定手段と、
前記画像における前記特定された操作者の位置と、前記画像における前記指示器の位置とに基づき、前記操作者により前記指示器で指示された位置を特定する位置特定手段と、
を備えることを特徴とする情報処理装置。
【請求項2】
前記操作者特定手段は、前記画像における前記複数の人物の各々の位置と、前記画像における前記指示器の位置とに基づき、前記複数の人物の中から前記操作者を特定することを特徴とする請求項1に記載の情報処理装置。
【請求項3】
前記操作者特定手段は、さらに前記画像における前記複数の人物の各々の大きさに基づき、前記複数の人物の中から前記操作者を特定することを特徴とする請求項2に記載の情報処理装置。
【請求項4】
前記位置特定手段は、さらに前記画像における前記特定された操作者の大きさに基づき、前記位置を特定することを特徴とする請求項1から3のいずれかに記載の情報処理装置。
【請求項5】
前記位置特定手段に用いられる前記画像における前記指示器の位置を検出する指示器検出手段と、
前記画像における前記特定された操作者の位置、または位置および大きさに基づき、前記指示器の位置の検出の対象となる検出対象領域を設定する検出対象領域設定手段と、
をさらに備え、
前記指示器検出手段は、前記画像のうち前記検出対象領域を検出の対象として、前記指示器の位置の検出を行う、
ことを特徴とする請求項1から4のいずれかに記載の情報処理装置。
【請求項6】
前記操作者特定手段は、前記複数の人物のうち、前記画像における当該人物の位置と、前記画像における前記指示器の位置との間の水平方向の距離が最小となる人物を前記操作者として特定することを特徴とする請求項2に記載の情報処理装置。
【請求項7】
前記操作者特定手段は、前記複数の人物のうち、前記画像における当該人物の位置と、前記画像における前記指示器の位置との間のユークリッド距離が最小となる人物を前記操作者として特定することを特徴とする請求項2に記載の情報処理装置。
【請求項8】
前記操作者特定手段は、前記複数の人物のうち、前記画像における当該人物の位置と、前記画像における前記指示器の位置との間の水平方向の距離を前記画像における当該人物の大きさで除算した商が最小となる人物を前記操作者として特定することを特徴とする請求項3に記載の情報処理装置。
【請求項9】
前記操作者特定手段は、前記複数の人物のうち、前記画像における当該人物の位置と、前記画像における前記指示器の位置との間のユークリッド距離を前記画像における当該人物の大きさで除算した商が最小となる人物を前記操作者として特定することを特徴とする請求項3に記載の情報処理装置。
【請求項10】
前記位置特定手段は、前記画像における前記特定された操作者の位置と前記指示器の位置との差、および前記画像における前記特定された操作者の大きさを入力とする関数により前記位置を算出することを特徴とする請求項4に記載の情報処理装置。
【請求項11】
前記関数は、前記画像における前記特定された操作者の位置と前記指示器の位置との差に対する、前記画像における前記特定された操作者の大きさによる除算と、前記指示器の位置の変化に対する前記特定される位置の変化の感度を定める係数の乗算とを含むことを特徴とする請求項10に記載の情報処理装置。
【請求項12】
前記位置特定手段は、当該位置特定手段により特定される位置が予め設定された範囲内に収まるように、前記操作者による前記指示器の操作に応じて前記感度を定める係数を調整することを特徴とする請求項11に記載の情報処理装置。
【請求項13】
前記画像における前記特定された操作者の大きさは、前記画像における前記特定された操作者の顔の幅により定義されることを特徴とする請求項4、10、11、または12に記載の情報処理装置。
【請求項14】
前記画像における前記特定された操作者の大きさは、前記画像における前記特定された操作者の両目間の距離により定義されることを特徴とする請求項4、10、11、または12に記載の情報処理装置。
【請求項15】
請求項1から14のいずれかに記載の情報処理装置と、
前記指示器と、
前記指示器および前記操作者を撮像し、前記画像を前記画像取得手段に出力する撮像装置と、
画像を表示する表示装置と、
前記位置特定手段により特定された位置に基づいて前記表示装置に表示される画像を制御する表示制御手段と、
を備えることを特徴とする情報処理システム。
【請求項16】
位置を指示するための指示器と当該指示器を保持している操作者とが撮像された画像を取得するステップと、
前記画像に複数の人物が含まれている場合に、当該複数の人物の中から前記指示器を保持している前記操作者を特定するステップと、
前記画像における前記特定された操作者の位置と、前記画像における前記指示器の位置とに基づき、前記操作者により前記指示器で指示された位置を特定するステップと、
を含むことを特徴とする情報処理方法。
【請求項17】
請求項1から14のいずれかに記載の情報処理装置と、
画像を表示する表示装置と、
前記位置特定手段により特定された位置に基づいて前記表示装置に表示される画像を制御する表示制御手段と、
を備えることを特徴とするテレビ受像機。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【公開番号】特開2012−128766(P2012−128766A)
【公開日】平成24年7月5日(2012.7.5)
【国際特許分類】
【出願番号】特願2010−281344(P2010−281344)
【出願日】平成22年12月17日(2010.12.17)
【出願人】(000006013)三菱電機株式会社 (33,312)
【Fターム(参考)】
【公開日】平成24年7月5日(2012.7.5)
【国際特許分類】
【出願日】平成22年12月17日(2010.12.17)
【出願人】(000006013)三菱電機株式会社 (33,312)
【Fターム(参考)】
[ Back to top ]