説明

情報処理装置、プログラム及び情報処理方法

【課題】容易な構成でユーザの手の位置を検出でき、かつ、その位置に基づき精度良くカーソルの操作を行うことができる情報処理装置、プログラム及び情報処理方法を提供する。
【解決手段】カメラ126により検出した手の位置および手の位置の周辺領域に手が存在する確率から求めた評価値に基づいて、手が存在する確率が最も高い箇所にポインタを移動させ、ディスプレイ115に表示させる。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は一般に、情報処理装置、プログラム及び情報処理方法に関し、特に、ユーザのジェスチャを認識し、認識されたジェスチャに基づいた制御を行うことができる情報処理装置、プログラム及び情報処理方法に関する。
【背景技術】
【0002】
従来から、テレビ又はパーソナルコンピュータ等の情報処理装置をユーザがジェスチャにより指示を与えることで操作する方法が提案されている。このような方法によれば、マウス、キーボード、又はリモートコントローラといった入力装置を使用せずに、情報処理装置を遠隔操作することができる。
【0003】
ジェスチャなどの動きを捕らえる技術として、例えば、被写体の動作や移動の状態を判別する技術が提案されている(特許文献1参照)。
【特許文献1】特開2003−323604公報
【発明の開示】
【発明が解決しようとする課題】
【0004】
特許文献1に記載された方法はあくまで被写体が移動したことを検出するものであるが、検出した位置にそのままカーソルを表示させるとカーソルが手の動きに追従できなくなるなど、返ってジェスチャによる操作の妨げになる場合がある。
【0005】
そこで、本発明は、容易な構成でユーザの手の位置を検出し、かつ、その位置に基づき精度良くカーソルの操作を行うことができる情報処理装置、プログラム及び情報処理方法を提供することを目的とする。
【課題を解決するための手段】
【0006】
上述した課題を解決するために、本発明の一態様によれば、表示装置に表示されたポインタにより操作指示が可能な情報処理装置であって、手が写った入力画像から、この画像内におけるその手の位置を検出する検出手段と、前記検出手段によって検出した最新の検出結果と、一つ前に前記手が存在する確率が高いと評価された位置をピークとする確率分布関数の値を用いて、画像内における前記手が存在する確率を求める演算手段と、前記確率から求めた評価値に基づいて、前記手が存在する確率が最も高い位置に前記ポインタを移動表示させるポインタ表示手段と、を具備することを特徴とする情報処理装置が提供される。
【0007】
また、表示装置に表示されたポインタにより操作指示可能な情報処理装置で用いられるプログラムであって、手が写った入力画像から、この画像内におけるその手の位置を検出する検出手順と、検出した最新の検出結果と、一つ前に前記手が存在する確率が高いと評価された位置をピークとする確率分布関数の値を用いて、画像内における前記手が存在する確率を求める手順と、前記確率から求めた評価値に基づいて、前記手が存在する確率が最も高い位置に前記ポインタを移動表示させる手順と、をコンピュータに実行させるためのプログラムが提供される。
【0008】
さらに、表示装置に表示されたポインタを手の動きで操作するための情報処理方法であって、手が写った入力画像から、この画像内におけるその手の位置を検出し、検出した最新の検出結果と、一つ前に前記手が存在する確率が高いと評価された位置をピークとする確立分布関数の値を用いて、画像内における前記手が存在する確率を求め、前記確率から求めた評価値に基づいて、前記手が存在する確率が最も高い位置に前記ポインタを移動表示させることを特徴とする情報処理方法が提供される。
【発明を実施するための最良の形態】
【0009】
以下、本発明の実施形態について図面を参照しながら説明する。
【0010】
なお、本発明の実施形態では、カメラ126で撮影した画像からユーザの手の位置を検出し、画像上の手の位置に対応した位置にカーソル等のポインタを移動させることで操作する。手の位置検出の精度の低さや、誤判定を招くノイズに対しても高い操作性を実現するポインタの制御方法を提供する。
【0011】
また、検出された手の位置は実際の位置とは異なると判断されるノイズ情報を含むため、手の検出位置にそのままポインタを表示させると、ポインタが指す位置に誤差が生じてしまう。するとユーザの意図する指示が認識されず、結果的に操作性を損なうことがある。また、ローパスフィルタなどを用いてノイズの除去を行った場合、ノイズ除去量を増やすほどポインタの表示位置の変化が手の位置の変化に追従できなくなり、同様に操作性を損なうことがある。
【0012】
このため、本発明では、手の位置の変化が小さいときはポインタが表示される位置の誤差を減らし、手の位置の変化が大きいときには手の動きに追従させることができる制御方法を提供する。
【0013】
まず、図1を参照しつつ、本発明の第1の実施形態に係る情報処理装置について説明する。
【0014】
図1は、本発明の第1の実施形態に係る情報処理装置の構成を概略的に示すブロック図である。この実施形態に係る情報処理装置は、例えば、ノートブック型のパーソナルコンピュータとして実現されている。
【0015】
図1に示されるように、パーソナルコンピュータ100は、CPU111、主メモリ112、ノースブリッジ113、グラフィクスコントローラ(表示部)114、ディスプレイ115、サウスブリッジ116、ハードディスクドライブ(HDD)117、副プロセッサ118、BIOS−ROM119、エンベデッドコントローラ/キーボードコントローラIC(EC/KBC)120、電源回路121、バッテリ122、ACアダプタ123、タッチパッド124、キーボード(KB)125、カメラ126、及び電源ボタン21等を備える。
【0016】
CPU111は、パーソナルコンピュータ100の動作を制御するプロセッサである。CPU111は、HDD117から主メモリ112にロードされる、オペレーティングシステム(OS)及び各種のアプリケーションプログラムを実行する。また、CPU111は、BIOS−ROM119に格納されたBIOS(Basic Input/Output System)も実行する。BIOSは、周辺デバイスを制御するためのプログラムである。BIOSは、パーソナルコンピュータ100の電源投入時に最初に実行される。
【0017】
ノースブリッジ113は、CPU111のローカルバスとサウスブリッジ116との間を接続するブリッジデバイスである。ノースブリッジ113は、AGP(Accelerated Graphics Port)バスなどを介してグラフィクスコントローラ114との通信を実行する機能を有している。
【0018】
グラフィクスコントローラ114は、パーソナルコンピュータ100のディスプレイ115を制御する表示コントローラである。グラフィクスコントローラ114は、OS又はアプリケーションプログラムによってVRAM(図示せず)に書き込まれた表示データから、ディスプレイ115に出力すべき表示信号を生成する。ディスプレイ115は、例えば、液晶ディスプレイ(LCD)である。
【0019】
サウスブリッジ116には、HDD117、副プロセッサ118、BIOS−ROM119、カメラ126、及びEC/KBC120が接続されている。また、サウスブリッジ116は、HDD117及び副プロセッサ118を制御するためのIDE(Integrated Drive Electronics)コントローラも備えている。
【0020】
EC/KBC120は、電力管理のためのエンベデッドコントローラ(EC)と、タッチパッド124及びキーボード(KB)125を制御するためのキーボードコントローラ(KBC)とが集積された、1チップマイクロコンピュータである。EC/KBC120は、例えば、電源ボタン21が操作されたときに、電源回路121と共同してパーソナルコンピュータ100の電源をオンにする。パーソナルコンピュータ100は、ACアダプタ123を介して外部電源が供給される場合、外部電源によって駆動される。外部電源が供給されない場合、パーソナルコンピュータ100は、バッテリ124によって駆動される。
【0021】
カメラ126は、例えばUSBカメラである。カメラ126のUSBコネクタは、パーソナルコンピュータ100の本体に設けられたUSBポート(図示せず)に接続される。カメラ126によって撮影された画像(手の位置等)は、HDD117等にフレームデータとして記憶される。また、パーソナルコンピュータ100のディスプレイ115に表示することができる。カメラ126によって供給される画像のフレームレートは、例えば、15フレーム/秒である。カメラ126は、外付けのカメラであっても、パーソナルコンピュータ100の内蔵カメラであってもよい。
【0022】
副プロセッサ118は、カメラ26から取り込まれた動画の処理等を行う。
【0023】
図2は、パーソナルコンピュータ100の構成の一部を、より詳細に示すブロック図である。
【0024】
図2に示されるように、パーソナルコンピュータ100は、USBカメラ126から取り込まれた画像データをUSB Host200を経由して認識エンジン201に送信する。認識エンジン201は、受信した画像データに基づいて、ユーザの手の位置等を認識する。この手の位置等を認識する認識エンジン201は、従来から用いられている種々の技術を用いるものとする(例えば、特表2002−504722等)。
【0025】
そして、認識エンジン201により認識された手の位置情報をフィルタ202によって演算、補正を行い、実際の手の位置に近づくように精度を向上させる。フィルタ202によって手の位置が算出されると、ディスプレイ115上のマウスポインタ等203を算出された位置まで移動させる。
【0026】
次に、図3は、パーソナルコンピュータ100の機能構成の一部を示すブロック図である。制御部11、記憶部12、検出部13、および表示部14を備えている。制御部11は、カメラ126から取り込まれた動画像の処理を行う。記憶部12は、動画像の判別(手であるかどうか、手の位置はどこか等)に用いる各種の数式、閾値等を記憶する。検出部13は、カメラ126から取り込まれた動画像(手の位置等)の検出を行う。表示部14は、検出部13で検出された手の位置に応じたマウスカーソルの移動等の処理を表示する。
【0027】
次に、検出された手の位置から実際の手の位置に近づける処理について図4〜図8を参照して詳細に説明する。なお、図5、図8は、本発明の実施形態に係る情報処理装置を適用した情報処理方法について示した処理フローの概念図である。
【0028】
検出された手の位置は真の手の位置を中心とする正規分布を取ると仮定し、真の(実際の)手の位置が存在する確率の高い点に近づくようにポインタを移動させる。
【0029】
まず、カメラ126で取り込まれた画像フレームデータを記憶部12に記憶する。記憶部12から過去の画像フレームデータを取り出して利用することができる。
【0030】
このとき、図4に示すように、n番目のフレームで検出された手の位置をh(n)、ポインタ位置をp(n)とする。検出位置がh(n)のときに点xが真の手の位置である確率P(n,x)は、
【数1】

【0031】
と表される(S103:図5参照)。
【0032】
f(x,μ,σ)は正規分布の確率密度関数であり、平均μ、標準偏差σとして以下で表される。
【数2】

【0033】
点xが真の手の位置である確率の高さを表す数値Q(n,x)を以下のように定義する(S101:図5参照)
【数3】

【0034】
αは0<α≦1の値をとる減衰係数。
【0035】
W(n,x)は過去の履歴の重みであり、以下のように定義する(S102:図5参照)
【数4】

【0036】
なお、Q(n-1,x)は、記憶部12に記憶された過去の画像フレームデータである。また、αは、過去の画像フレームデータを反映させる量の値として用いている。
【0037】
この式は、x=h(x)のとき1となるようにf(x,h(x),σ)を修正したものである。
【0038】
(f(h(n),h(n),σ)は、P(n,x)ピーク値)
W(n,x)がない場合は、Q(n,x)は減衰係数αによって過去の履歴を反映させた手の存在確率となる。また、W(n,x)(h(n)がピークになるようにした関数)を導入することにより、h(n)に近い点では緩やかに現在の値に近づき、離れている点では急激に減少するという特性を持たせることができる(S104:図5参照)
次に、フレームnにおいて、前回の結果データをp(n-1)とする(S201:図8)。そして、Q(n,p(n-1))の値により重み付けを行う。近いほど重みがあるものとする(S202:図8)。そして、最もQ(n,x)の高いxをM(n)とし(S203:図8)、ポインタ位置p(n)を以下の式により求める(S204:図8)。
【数5】

【0039】
現在の最大確率点と前回のポインタ位置を、それぞれの点の現在の確率を重みとして平均を取る形とする。
【0040】
M(n)が前回のポインタ位置に近い場合は、Q(n,p(n-1))もQ(n,M(n))に近い値となるため、ディスプレイ115に表示されたポインタはゆるやかに移動する(図7参照)。
【0041】
一方、M(n)が前回のポインタ位置と大きく異なる場合は、式(1)により前回の値であるQ(n,p(n-1))は大幅に小さい値となるため、ほとんど反映されすに、p(n)はM(n)に急速に近づく(図6参照)。このため、手の位置を大きく動かしたときは、ポインタを現在の手の位置にすばやく近づけることができる。
【0042】
また、ポインタ位置の変更速度を制御するパラメータβを導入して、
【数6】

【0043】
とすることにより、ポインタの移動速度を調節することもできる。
【0044】
以上、本実施形態により、手の位置を動かしていないときは検出位置のノイズを大幅に除去してポインタのぶれを抑えることができる。さらに、手の位置を大きく動かしたとき(図6参照)は、ポインタを現在の手の位置にすばやく近づけることができる。
【0045】
なお、本発明は、上述した実施形態そのままに限定されるものではない。本発明は、実施段階では、その要旨を逸脱しない範囲で構成要素を変更して具現化できる。
【0046】
また、上述した実施形態に開示されている複数の構成要素を適宜に組み合わせることで、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。更に、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。
【図面の簡単な説明】
【0047】
【図1】本発明の一実施形態に係る情報処理装置の構成例を概略的に示すブロック図。
【図2】情報処理装置の構成の一部を示すブロック図。
【図3】情報処理装置の機能構成を示すブロック図。
【図4】Q(n,x),W(n,x)の効果を示した概念図。
【図5】本発明の実施形態に係る情報処理装置を適用した情報処理方法について示した処理フローの概念図。
【図6】Q(n,p(n-1))が遠い場合を示した概念図。
【図7】Q(n,p(n-1))が近い場合を示した概念図。
【図8】本発明の実施形態に係る情報処理装置を適用した情報処理方法について示した処理フローの概念図。
【符号の説明】
【0048】
11…制御部、12…記憶部、13…検出部、14…表示部、21…電源ボタン、100…ポータブルコンピュータ、111…CPU,112…主メモリ、113…ノースブリッジ、114…グラフィクスコントローラ、115…ディスプレイ、116…サウスブリッジ、117…ハードディスクドライブ(HDD)、118…副プロセッサ、119…BIOS−ROM、120…エンベデッドコントローラ/キーボードコントローラIC(EC/KBC)、121…電源回路、122…バッテリ、123…ACアダプタ、124…タッチパッド、125…キーボード(KB)、126…カメラ

【特許請求の範囲】
【請求項1】
表示装置に表示されたポインタにより操作指示が可能な情報処理装置であって、
手が写った入力画像から、この画像内におけるその手の位置を検出する検出手段と、
前記検出手段によって検出した最新の検出結果と、一つ前に前記手が存在する確率が高いと評価された位置をピークとする確率分布関数の値を用いて、画像内における前記手が存在する確率を求める演算手段と、
前記確率から求めた評価値に基づいて、前記手が存在する確率が最も高い位置に前記ポインタを移動表示させるポインタ表示手段と、
を具備することを特徴とする情報処理装置。
【請求項2】
前記ポインタ表示手段は、最新の検出結果から求めた前記手が存在する確率が高い位置および評価値と、一つ前に求めた位置および評価値から前記ポインタを移動表示させる際の移動量を調節することを特徴とする請求項1に記載の情報処理装置。
【請求項3】
映像を撮影するカメラをさらに備え、
前記検出手段は、前記カメラから取り込んだ画像データを前記入力画像とすることを特徴とする請求項1に記載の情報処理装置。
【請求項4】
表示装置に表示されたポインタにより操作指示可能な情報処理装置で用いられるプログラムであって、
手が写った入力画像から、この画像内におけるその手の位置を検出する検出手順と、
検出した最新の検出結果と、一つ前に前記手が存在する確率が高いと評価された位置をピークとする確率分布関数の値を用いて、画像内における前記手が存在する確率を求める手順と、
前記確率から求めた評価値に基づいて、前記手が存在する確率が最も高い位置に前記ポインタを移動表示させる手順と、
をコンピュータに実行させるためのプログラム。
【請求項5】
前記移動表示させる手順は、最新の検出結果から求めた前記手が存在する確率が高い位置および評価値と、一つ前に求めた位置および評価値から前記ポインタを移動表示させる際の移動量を調整することを特徴とする請求項4に記載のプログラム。
【請求項6】
前記検出手順は、前記入力画像をカメラから取り込む手順をさらに有することを特徴とする請求項4に記載のプログラム。
【請求項7】
表示装置に表示されたポインタを手の動きで操作するための情報処理方法であって、
手が写った入力画像から、この画像内におけるその手の位置を検出し、
検出した最新の検出結果と、一つ前に前記手が存在する確率が高いと評価された位置をピークとする確率分布関数の値を用いて、画像内における前記手が存在する確率を求め、
前記確率から求めた評価値に基づいて、前記手が存在する確率が最も高い位置に前記ポインタを移動表示させることを特徴とする情報処理方法。
【請求項8】
前記ポインタの移動表示は、最新の検出結果から求めた前記手が存在する確率が高い位置および評価値と、一つ前に求めた位置および評価値から移動表示の際の移動量を求めることで、前記ポインタの移動後の表示位置を調整することを特徴とする請求項7に記載の情報処理方法。
【請求項9】
前記手の位置を検出する前に、前記入力画像をカメラから取り込む手順をさらに有することを特徴とする請求項7に記載の情報処理方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate


【公開番号】特開2009−59076(P2009−59076A)
【公開日】平成21年3月19日(2009.3.19)
【国際特許分類】
【出願番号】特願2007−224369(P2007−224369)
【出願日】平成19年8月30日(2007.8.30)
【出願人】(000003078)株式会社東芝 (54,554)
【Fターム(参考)】