JP2011054118A - 表示制御装置、表示制御方法及び表示制御プログラム - Google Patents

表示制御装置、表示制御方法及び表示制御プログラム Download PDF

Info

Publication number
JP2011054118A
JP2011054118A JP2009204958A JP2009204958A JP2011054118A JP 2011054118 A JP2011054118 A JP 2011054118A JP 2009204958 A JP2009204958 A JP 2009204958A JP 2009204958 A JP2009204958 A JP 2009204958A JP 2011054118 A JP2011054118 A JP 2011054118A
Authority
JP
Japan
Prior art keywords
operator
coordinate system
screen
range
hand
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2009204958A
Other languages
English (en)
Other versions
JP5614014B2 (ja
JP2011054118A5 (ja
Inventor
Shu Shigeta
脩 繁田
Takuro Noda
卓郎 野田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Corp filed Critical Sony Corp
Priority to JP2009204958A priority Critical patent/JP5614014B2/ja
Priority to US12/806,966 priority patent/US9342142B2/en
Priority to CN2010102667064A priority patent/CN102012778A/zh
Publication of JP2011054118A publication Critical patent/JP2011054118A/ja
Publication of JP2011054118A5 publication Critical patent/JP2011054118A5/ja
Application granted granted Critical
Publication of JP5614014B2 publication Critical patent/JP5614014B2/ja
Priority to US15/095,308 priority patent/US9830004B2/en
Priority to US15/784,314 priority patent/US10606380B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/038Control and interface arrangements therefor, e.g. drivers or device-embedded control circuitry
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/002Specific input/output arrangements not covered by G06F3/01 - G06F3/16
    • G06F3/005Input arrangements through a video camera
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/017Gesture based interaction, e.g. based on a set of recognized hand gestures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/0304Detection arrangements using opto-electronic means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/0346Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor with detection of the device orientation or free movement in a 3D space, e.g. 3D mice, 6-DOF [six degrees of freedom] pointers using gyroscopes, accelerometers or tilt-sensors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/40Scaling of whole images or parts thereof, e.g. expanding or contracting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/161Detection; Localisation; Normalisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/178Human faces, e.g. facial parts, sketches or expressions estimating age from face image; using age information for improving recognition

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Multimedia (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Oral & Maxillofacial Surgery (AREA)
  • User Interface Of Digital Computer (AREA)
  • Position Input By Displaying (AREA)

Abstract

【課題】同時に操作する操作者の数に依らず良好な操作性が得られるようにする。
【解決手段】画面座標系のXd−Yd平面上での操作者の体の中心位置はそのままに、この中心位置を操作者座標系の原点として、この原点からの手の位置をもとに、ポインタPoの表示位置を算出する。また操作者の手が容易に届く範囲を判別して、この範囲とGUI画面130の大きさをもとに、この範囲の端まで手を動かしたときに、ポインタPoが画面の端に移動するように手の位置に対するスケーリングの割合を設定する。
【選択図】図15

Description

本発明は、表示制御装置、表示制御方法及び表示制御プログラムに関し、例えば、複数の操作者が同時に操作し得るGUI(Graphical User Interface)を実装する表示制御装置に適用して好適なものである。
現在、表示制御装置としてのコンピュータの多くに、GUIが実装されている。実際、このようなコンピュータでは、例えば、操作者による操作に応じて画面上を移動するポインタを表示させ、このポインタで画面の任意の位置を指すことで、画面上に表示したアイコンなどを選択できるようになっている。
ポインタを動かす為の操作デバイスとしては、マウスやタッチパッドが一般的であるが、モーションセンサにより空間での動きを検出してこれをコンピュータに入力することでポインタを動かすコントローラなども提案されている。例えば特許文献1参照。
また、左右反転(すなわちミラーリング)したカメラ画像から操作者の手の位置を検出して、画面上のこの手の位置に対応する位置にポインタを表示させ、この手の動きに応じてポインタを動かすようにしたコンピュータも提案されている。このコンピュータでは、カメラ画像内での操作者の位置に依らず、操作者が自分の体を中心に手を動かすだけで、ポインタを画面の任意の位置に動かすことができるようにすることが望ましい。
そこで例えば、操作者の体の中心を、画面の中心(すなわち画面座標系の原点)と見なして、この原点からの操作者の手の位置にポインタを表示させるようにすることが考えられる。このようにすれば、操作者は、カメラ画像内での位置(すなわち撮像範囲内での位置)に依らず、常に自分の体を中心に手を動かすだけで、ポインタを画面の任意の位置に動かすことができる。
一方で、近年、ゲーム機などのコンピュータの中には、1つの画面に対して複数の操作者が同時に操作することを想定したものもあり、今後、このようなコンピュータが増えていくと予想される。
特開2009−157919公報
ところが、複数の操作者が操作することを想定した場合、例えば、全ての操作者の体の中心を画面の中心と見なすと、全てのポインタが画面座標系の原点を中心に動くことになり、どの操作者がどのポインタを操作しているのかわかりにくくなる。この結果、1人の操作者が操作する場合と比して、操作性が低下するという問題があった。
本発明は以上の点を考慮してなされたもので、同時に操作する操作者の数に依らず良好な操作性を得ることのできる表示制御装置、表示制御方法及び表示制御プログラムを提案しようとするものである。
かかる課題を解決するため本発明においては、操作者の位置と当該操作者の操作手段の位置とを認識する認識部と、画面に設定された画面座標系での操作者の位置を操作者座標系の原点とし、当該操作者座標系の原点からの操作手段の位置に所定の関数を乗じて、当該操作手段に対応する表示情報の画面座標系での位置を算出する算出部と、算出部が算出した画面座標系での位置に、表示情報を表示させる制御部とを設けるようにした。
このように画面座標系での操作者の位置を操作者座標系の原点とし、この原点からの操作手段(例えば操作者の手)の位置をもとに、操作手段に対応する表示情報(例えばポインタ)の画面座標系での位置を算出するようにした。これにより、例えば複数の操作者が存在する場合に、画面上に、複数の操作者の各々の位置に対応する位置を中心に各々の操作手段により操作される表示情報を表示することができる。
またこのとき、操作手段の位置をそのまま表示情報の位置とするのではなく、操作者座標系の原点からの操作手段の位置に所定の関数を乗じて得られた位置を、表示情報の画面座標系での位置とするようにした。これにより、この関数を適宜選定することで、複数の操作者の各々が自分の位置を中心に操作手段を動かすだけで、表示情報を画面の任意の位置に動かすことができる。
本発明によれば、例えば複数の操作者が存在する場合に、画面上に、複数の操作者の各々の位置に対応する位置を中心として各々の操作手段により操作される表示情報を表示することができる。さらにこの場合に、複数の操作者の各々が自分の位置を中心に操作手段を動かすだけで、表示情報を画面の任意の位置に動かすことができる。かくして、同時に操作する操作者の数に依らず良好な操作性を得ることのできる表示制御装置、表示制御方法及び表示制御プログラムを実現できる。
本実施の形態の概要となる表示制御装置の構成を示す略線図である。 本実施の形態の具体例となる多人数同時操作システムの構成を示す略線図である。 TV受像機及びステレオカメラのハードウェア構成を示すブロック図である。 GUI画面の構成を示す略線図である。 GUI画面上でのポインタ操作(ポインタが画面手前側にあるとき)の説明に供する略線図である。 GUI画面上でのポインタ操作(ポインタが画面奥側にあるとき)の説明に供する略線図である。 カメラ座標系と画面座標系とを示す略線図である。 画像座標系を示す略線図である。 操作者の体の中心座標bx、byを示す略線図である。 操作者座標系と操作者座標系から見た手の位置(h’x、h’y)を示す略線図である。 操作範囲の判別(左右方向)の説明に供する略線図である。 操作範囲の判別(上下方向)の説明に供する略線図である。 操作範囲の判別(奥行き方向)の説明に供する略線図である。 操作者の位置とポインタの位置を示す略線図である。 ポインタ表示処理手順を示すフローチャートである。 操作者の体が傾いている場合の説明に供する略線図である。 スケーリングの割合の変化を示すグラフである。
以下、発明を実施するための最良の形態(以下実施の形態とする)について説明する。尚、説明は以下の順序で行う。
1.実施の形態
2.他の実施の形態
<1.実施の形態>
[1−1.実施の形態の概要]
まず、実施の形態の概要を説明する。因みに、この概要を説明した後、本実施の形態の具体例の説明に移る。
図1において1は、表示制御装置を示す。この表示制御装置1には、操作者の位置と当該操作者の操作手段の位置とを認識する認識部2が設けられている。またこの表示制御装置1には、画面に設定された画面座標系での操作者の位置を操作者座標系の原点とし、当該操作者座標系の原点からの操作手段の位置に所定の関数を乗じて、当該操作手段に対応する表示情報の画面座標系での位置を算出する算出部3が設けられている。さらにこの表示制御装置1には、算出部3が算出した画面座標系での位置に、表示情報を表示させる制御部4が設けられている。
このように表示制御装置1は、画面座標系での操作者の位置を操作者座標系の原点とし、この原点からの操作手段(例えば操作者の手)の位置をもとに、操作手段に対応する表示情報(例えばポインタ)の画面座標系での位置を算出する。これにより、表示制御装置1は、例えば複数の操作者が存在する場合に、画面上に、複数の操作者の各々の位置に対応する位置を中心として各々の操作手段により操作される表示情報を表示することができる。
またこのとき表示制御装置1は、操作手段の位置をそのまま表示情報の位置とするのではなく、操作者座標系の原点からの操作手段の位置に所定の関数を乗じて得られた位置を、表示情報の画面座標系での位置とする。これにより、表示制御装置1は、この関数を適宜選定することで、複数の操作者の各々が自分の位置を中心に操作手段を動かすだけで、表示情報を画面の任意の位置に動かすことができる。
より具体的には、認識部2は、カメラ画像から操作者の位置と操作手段の位置とを認識する。このとき算出部3は、画面座標系と同一座標系として設定されたカメラ画像の画像座標系での操作者の位置を操作者座標系の原点とし、当該操作者座標系の原点からの操作手段の位置に所定の関数を乗じて、当該操作手段に対応する表示情報の画面座標系での位置を算出するようにする。
また表示制御装置1に操作手段の操作範囲を判別する判別部5を設けるようにしてもよい。このとき算出部3は、判別部5により判別された操作範囲と画面のサイズとに基づく関数を、操作者座標系の原点からの操作手段の位置に乗じるようにする。
また操作手段の位置が、操作者の手の位置である場合、認識部2は、カメラ画像から操作者の体の大きさを認識する。さらにこのとき判別部5は、認識部2により認識された操作者の体の大きさをもとに、操作者の位置から手が届く範囲を推定して、当該範囲を操作手段の操作範囲とするようにする。
またこのとき、認識部2が、カメラ画像から操作者の顔を認識するようにして、判別部5が、認識部2により認識された操作者の顔から当該操作者の年齢を推定して、当該年齢をもとに、当該顔の大きさから体の大きさを推定するようにしてもよい。
また一方で、認識部2が、カメラ画像から操作手段によるジェスチャ操作を認識して、判別部5が、認識部2により操作範囲を指定する為のジェスチャ操作が認識されると、当該ジェスチャ操作により示される範囲を操作範囲とするようにしてもよい。
さらに、画面座標系が、上下左右方向にくわえて奥行き方向を有する3次元座標系である場合、認識部2は、カメラ画像から操作者の位置及び体の大きさと、操作手段の位置とにくわえて、当該操作者の位置から当該操作手段までの距離を認識する。
このとき算出部3は、画像座標系での操作者の位置を操作者座標系の原点とし、当該操作者座標系の原点からの操作手段の位置に所定の関数を乗じて、当該操作手段に対応する表示情報の画面座標系での上下左右方向の位置を算出する。また算出部3は、操作者の位置から操作手段までの距離に所定の関数を乗じて、当該操作手段に対応する表示情報の画面座標系での奥行き方向の位置を算出する。
さらにこのとき判別部5は、認識部2により認識された操作者の体の大きさをもとに操作者の位置から手が届く上下左右方向の範囲と奥行き方向の範囲を推定して、当該範囲を操作手段の操作範囲とする。
またこのとき、認識部2が、カメラ画像から操作者の腕の長さを認識して、判別部5が操作範囲の奥行き方向の範囲を、腕の長さ/√2の範囲とするようにしてもよい。
このような構成でなる表示制御装置1の具体例について、以下、詳しく説明する。
[1−2.実施の形態の具体例]
[1−2−1.多人数同時操作システムの構成]
次に、本実施の形態の具体例を説明する。図2において100は、同時に複数の操作者が操作することを想定した多人数同時操作システムを示す。
この多人数同時操作システム100は、テレビジョン受像機(これをTV受像機とも呼ぶ)101と、このTV受像機101に接続されたステレオカメラ102とで構成される。
ステレオカメラ102は、TV受像機101の上部に、TV受像機101の前方を向くようにして取り付けられ、TV受像機101の前方を撮像するようになっている。
ここで、ステレオカメラ102の撮像範囲内に、例えば、2人の操作者A、Bがいるとする。このときTV受像機101は、ステレオカメラ102により撮像されたカメラ画像から検出した操作者A、Bの各々の手の動きをもとに、操作者A、Bの各々による操作を認識して、この操作に応じて動作する。
このようにして、この多人数同時操作システム100では、TV受像機101に向かって操作者A、Bが各々の手を動かすことで、操作者A、Bの各々が同時にTV受像機101を操作できるようになっている。
[1−2−2.TV受像機及びステレオカメラのハードウェア構成]
次に、図3を用いて、TV受像機101及びステレオカメラ102のハードウェア構成について説明する。
TV受像機101は、外部インタフェース110を介して、ステレオカメラ102とケーブル接続される。
このTV受像機101では、CPU111が各部を統括的に制御するようになっている。CPU111は、不揮発性メモリ112に書き込まれているプログラムをRAM113に展開してこれを読み込み、このプログラムに従って各種処理を行うと共に各部を制御する。
因みに、CPUは、Central Processing Unitの略、RAMは、Random Access Memoryの略である。
このTV受像機101は、上述したように、操作者の手の動きを検出して、これを操作者による操作として認識するようになっている。具体的に、TV受像機101のCPU111は、ステレオカメラ102を制御してステレオカメラ102の前方(すなわちTV受像機101の前方)を撮像させ、この結果得られるカメラ画像から例えば操作者A、Bの各々の手の動きを検出する。そしてCPU111は、検出した手の動きから操作者による操作(ポインタ操作、ジェスチャ操作など)を認識して、この操作に応じた処理を行う。
実際、TV受像機101は、このような操作を複数の操作者が同時に行うことを想定したGUI画面(詳しくは後述する)を表示するようになっている。すなわち、TV受像機101の表示処理部117は、CPU111の制御のもと、GUI画面の画面データを生成して、この画面データに対して所定の表示処理を施すことにより画面信号を得、これをディスプレイ119に送る。この結果、ディスプレイ119に、GUI画面が表示される。
そしてCPU111は、このGUI画面上に、複数の操作者の各々の手の動きに対応して移動する複数のポインタを表示させる。TV受像機101は、このようなGUI画面を介して、複数の操作者の各々が同時に操作できるようになっている。
またこのTV受像機101は、テレビジョン放送(これをTV放送とも呼ぶ)出力機能を有している。実際、TV受像機101は、TV放送出力時、外部のアンテナ114で受信されたTV放送信号をチューナ115に入力する。チューナ115は、CPU111の制御のもと、任意のチャンネルのTV放送信号を得て、これをTV放送信号処理部116に送る。
TV放送信号処理部116は、CPU111の制御のもと、TV放送信号に対して所定の信号処理を施すことにより、このTV放送信号から、番組の映像データと音声データとを得る。このうち映像データは、TV放送信号処理部116から表示処理部117に送られ、音声データは、TV放送信号処理部116から音声処理部118に送られる。
表示処理部117は、CPU111の制御のもと、映像データに対して所定の表示処理を施すことにより映像信号を得、これをディスプレイ119に送る。この結果、ディスプレイ119に、放送中の番組の映像が表示される。
一方、音声処理部118は、CPU111の制御のもと、音声データに対して所定の音声処理を施すことにより音声信号を得、これをスピーカ120に送る。この結果、スピーカ120から、放送中の番組の音声が出力される。
このようにしてTV受像機101は、TV放送を出力して、TV放送の番組をユーザに視聴させる。
一方、ステレオカメラ102は、撮像部121と外部インタフェース122とで構成され、この外部インタフェース122を介してTV受像機101と接続される。
撮像部121には、例えば左右方向に並べられた2台のカメラ121A及び121Bが設けられ、これら2台のカメラ121A及び121Bにより、前方の空間を立体的に撮像し得るようになっている。
実際、撮像部121は、TV受像機101の制御のもと、カメラ121A及び121Bの各々により前方を所定時間ごとに撮像して、この結果得られるカメラ画像データを順次外部インタフェース122を介してTV受像機101に送る。
尚、TV受像機101に送られるカメラ画像データには、カメラ121Aにより撮像されたカメラ画像データと、カメラ121Bにより撮像されたカメラ画像データとが含まれる。
TV受像機101では、ステレオカメラ102から送られてくるカメラ画像データをもとに、TV受像機101の前方にいる例えば操作者A、Bの各々を認識する。
具体的にTV受像機101のCPU111は、ステレオカメラ102から送られてくるカメラ画像データに含まれる、例えばカメラ121Aにより撮像されたカメラ画像データに対して人物検出処理を行う。CPU111は、この人物検出処理により例えば操作者の顔と手を検出する。
顔の検出については、種々のアルゴリズムが知られている。例えば、カメラ画像から肌色領域とこの肌色領域内の特徴量(目、口と思われる部分)とを抽出して、この特徴量の位置関係から肌色領域が顔であるか否かを判別するものがある。
CPU111は、このようなアルゴリズムを利用して、カメラ画像から顔となる領域(これを顔領域とも呼ぶ)を検出し、検出した顔領域ごとに、その座標(例えば顔領域の中心座標)を得る。
この座標は、例えば、カメラ画像の中心を原点として、左右方向の軸をX軸、上下方向の軸をY軸とするX−Y平面上の座標として表される。すなわち、この座標は、ステレオカメラ102の撮像範囲の中心を原点として、ステレオカメラ102から見た左右方向の軸をX軸、上下方向の軸をY軸とするX−Y平面上の座標と見なすことができる。このX−Y平面は、ディスプレイ119の表示面に対して並行な面でもある。
一方、手の検出についても、種々のアルゴリズムが知られている。例えば、カメラ画像から肌色領域とこの肌色領域内の特徴量(例えば輪郭)とを抽出して、この特徴量と手の輪郭のテンプレート画像とのマッチング処理を行うことで、肌色領域が手であるか否かを判別するものがある。また、このとき、例えば、手の形状が異なる複数のテンプレート画像を用意して、各々のテンプレート画像とマッチング処理を行うことで、手の形状を判別することもできる。例えば、ジャンケンのグーのように握り締めた形状(これをグー形状とも呼ぶ)や、パーのように開いた形状(これをパー形状とも呼ぶ)を判別することができる。
CPU111は、このようなアルゴリズムを利用して、カメラ画像から手となる領域(これを手領域とも呼ぶ)を検出し、検出した手領域ごとに、その座標(例えば手領域の中心座標)を得る。
ここで、カメラ画像に操作者A、Bが含まれているとすると、人物検出処理により2の顔と4つの手の各々のX−Y平面上の座標が得られる。これによりCPU111は、ステレオカメラ102から見た、2つの顔と4つの手の上下左右方向の位置関係を認識することができる。
さらにCPU111は、カメラ121Aにより撮像されたカメラ画像データと、カメラ121Bにより撮像されたカメラ画像データとをもとに、ステレオ法により2つの顔及び4つの手の各々のステレオカメラ102からの距離を算出する。尚、算出される距離の単位は例えばcmであるとする。
ここで、ステレオカメラ102の位置を原点として、ステレオカメラ102から見た奥行き方向の軸をZ軸とすると、この距離は、Z軸上の点として表すことができる。
このようにして2つの顔と4つの手の各々のX−Y平面上の座標とZ軸上の点とを得ることで、2つの顔と4つの手の各々のX−Y−Z空間上の座標が得られる。
これによりCPU111は、ステレオカメラ102から見た、2つの顔と4つの手の各々の上下左右方向及び奥行き方向の位置関係、すなわち3次元空間上の位置関係を認識することができる。
そしてCPU111は、これらの3次元空間上の位置関係に基づいて、顔と手の対応関係を判別する。すなわちCPU111は、どの顔とどの手が同一人物(すなわち操作者)のものであるかを判別する。具体的にCPU111は、例えば、3次元空間上で、顔からの距離がより近い2つの手を、同一人物のものと判別する。
この結果、操作者A、Bの各々の顔と手とが対応付けられたことになる。その後も、CPU111は、ステレオカメラ102から所定時間ごとに送られてくるカメラ画像データから操作者A、Bの各々の顔と手を検出することで、各々の顔と手の対応関係を保持しつつ、各々の手の動き(位置及び形状の変化)を検出する。
そしてCPU111は、このようにして検出した操作者A、Bの各々の手の動きに基づいて、操作者A、Bの各々による操作(ポインタ操作、ジェスチャ操作など)を個別に認識して、この操作に応じた処理を行う。
[1−2−3.GUI画面]
次に、TV受像機101のディスプレイ119に表示されるGUI画面と、このGUI画面上での操作について詳しく説明する。尚、ここでは、説明を簡単にする為、一人の操作者が操作する例を説明してから、複数の操作者が操作する例をすることとする。
TV受像機101のCPU111は、図4に示すように、GUI画面130をディスプレイ119に表示させる。
このGUI画面130は、上下左右方向にくわえて奥行き方向を仮想的に有する3D(3次元)画面として表示される。このGUI画面130には、仮想の3D空間(後述するXd−Yd−Zd空間)に配置された複数のアイコンGiが表示される。実際、図4に示すGUI画面130は、手前側に3個のアイコンGi1〜3が所定間隔で左右方向に並べて表示され、奥側に4個のアイコンGi4〜7が所定間隔で左右方向に並べて表示された例である。
さらにこのGUI画面130には、ステレオカメラ102で捉えた操作者の手の動きに対応して移動するポインタPoが表示される。すなわち、操作者は、自分の手を動かすことで、このポインタPoをGUI画面130の所望の位置に移動させることができる。
例えば、図5及び図6に示すように、操作者Aが、手を前方に突き出すことで、ポインタPoを奥行き方向に移動させることができ、また、例えば、操作者Aが、手を右方向に動かすことで、ポインタPoを右方向に移動させることができる。
そしてこのGUI画面130では、ポインタPoを任意のアイコンGi上に移動させることで、任意のアイコンGiを指定することができるようになっている。
さらにこのGUI画面130では、操作者がその場から動くことなく容易に手が届く範囲内で手を動かすだけで、ポインタPoを上下左右、及び手前から奥の隅々にまで移動させることができるようになっている。
ここで、ステレオカメラ102で捉えた操作者の手の位置をもとに、GUI画面130内のポインタPoの位置を算出する方法について詳しく説明する。
まずディスプレイ119の座標系(すなわちGUI画面130の座標系)と、ステレオカメラ102の座標系と、ステレオカメラ102で撮像したカメラ画像の座標系とについて説明する。尚、ここでは、ディスプレイ119の座標系を画面座標系とも呼び、ステレオカメラ102の座標系をカメラ座標系とも呼び、カメラ画像の座標系を画像座標系とも呼ぶ。
具体的に、画面座標系は、図7に示すように、ディスプレイ119の表示面の中心を原点として、左右方向の軸をXd軸、上下方向の軸をYd軸、奥行き方向の軸をZd軸とするXd−Yd−Zd空間の3次元座標系として設定されている。
この画面座標系のXd軸は、例えば、ディスプレイ119の前方から見て、原点より右側が正、左側が負となるように設定されている。またYd軸は、原点より上側が正、下側が負となるように、Zd軸は、原点より奥側が正となるように設定されている。
さらにこの画面座標系では、ディスプレイ119のXd軸を「−1」〜「1」の範囲で正規化するようになっている。またこの画面座標系では、ディスプレイ119のYd軸を「−1」〜「1」の範囲で正規化する。さらにこの画面座標系では、ディスプレイ119のZd軸を「0」〜「1」の範囲で正規化するようになっている。
GUI画面130でのポインタPoの位置は、この画面座標系の座標として表される。ここでは、このポインタPoの位置を、座標px(Xd軸)、py(Yd軸)、pz(Zd軸)として表す。
またカメラ座標系は、例えば、左右方向に並べられたカメラ121A及び121Bの中点を原点として、左右方向の軸をXc軸、上下方向の軸をYc軸、奥行き方向の軸をZc軸とするXc−Yc−Zc空間の3次元座標系として設定されている。
ここで、ステレオカメラ102は、カメラ座標系の原点が、画面座標系のYd−Zd平面上に位置して、且つこのカメラ座標系のXc軸が、画面座標系のXd軸と並行になるように、TV受像機101に対して取り付けられる。ゆえに、この条件を満たせば、ステレオカメラ102をディスプレイ119の下部に取り付けるようにしてもよい。このように、このカメラ座標系は、ディスプレイ119に対するステレオカメラ102の位置を決める為の座標系である。
またこのカメラ座標系のXc軸は、例えば、ステレオカメラ102の前方、すなわちディスプレイ119の前方から見て、原点より左側が正、右側が負となるように設定されている。またYc軸は、原点より上側が正、下側が負となるように、Zc軸は、原点より手前側が正となるように設定されている。
さらに画像座標系は、図8に示すように、左右を反転(ミラーリング)したカメラ画像Cpの中心を原点として、左右方向の軸をXp軸、上下方向の軸をYp軸とするXp−Yp平面の2次元座標系として設定されている。
この画像座標系のXp軸は、例えば、原点より右側が正、左側が負となるように、Yp軸は、原点より上側が正、下側が負となるように設定されている。
さらにこの画像座標系では、カメラ画像のXp軸を「−1」〜「1」の範囲で正規化するようになっている。またこの画像座標系では、カメラ画像のYp軸を「−1」〜「1」の範囲で正規化するようになっている。
すなわち、この画像座標系の座標は、上述した画面座標系のXd−Yd平面上の座標と一致するように設定されている。これにより、ミラーリングしたカメラ画像内の位置と、GUI画面130のXd−Yd平面上の位置とが一致することになる。
ここで、GUI画面130でのポインタPoの位置を表す座標px、py、pzのうち、Xd−Yd平面上の位置(すなわち上下左右方向の位置)を表す座標px、pyの算出方法について説明する。
CPU111は、図9に示すように、ミラーリングしたカメラ画像Cpから例えば操作者Aの顔領域Faの中心位置と大きさとを得、これをもとに操作者Aの体の中心位置を得る。尚、ここでは、操作者Aの体の左右方向がカメラ座標系のXc軸に対して平行であることを前提とする。このときCPU111は、操作者Aの顔領域Faの中心位置を、画像座標系の座標fx、fyとして得る。また操作者Aの体の中心位置を、画像座標系の座標bx、byとして得る。尚、ここでは、操作者Aが、カメラ座標系のステレオカメラ102に対して正対しているとする。
実際、人間の体の中心は、顔の中心の鉛直下方に位置する。また操作者の体の大きさは、人間の平均的な顔と体の大きさの関係をもとに、操作者の顔の大きさから判別できる。ゆえに、操作者の顔の中心位置(fx、fy)と顔の大きさを得ることができれば、これらをもとに体の中心位置(bx、by)を得ることができる。
またこのときCPU111は、ミラーリングしたカメラ画像Cpから操作者Aの手領域Haの中心位置(すなわち操作者Aの手の位置)を得る。このときCPU111は、操作者Aの手の位置を、画像座標系の座標hx、hyとして得る。
次にCPU111は、図10に示すように、操作者Aの体の中心位置(bx、by)を原点として、左右方向の軸をXo軸、上下方向の軸をYo軸とする操作者Aの座標系(これを操作者座標系とも呼ぶ)を、画像座標系内に設定する。
さらにCPU111は、画像座標系での操作者Aの手の位置(hx、hy)を、操作者座標系の原点(bx、by)から見た位置に変換する。ここで、図11に示すように、操作者座標系の原点から見た操作者Aの手の位置を座標h’x、h’yとすると、この座標h’xは、次式(1)により表される。また座標h’yは次式(2)により表される。
h’x=hx−bx……(1)
h’y=hy−by……(2)
さらにCPU111は、この操作者座標系の原点から見た操作者Aの手の位置(h’x、h’y)を所定の割合でスケーリングしたうえで画像座標系の位置、すなわち画面座標系のXd−Yd平面上の位置に変換する。そしてCPU111は、この位置をポインタPoの位置(px、py)とする。
ここで、h’xに対するスケーリングの割合をsx、h’yに対するスケーリングの割合をsyとすると、ポインタPoの位置を表す座標pxは、次式(3)により表される。また座標pyは、次式(4)により表される。尚、スケーリングの割合について詳しくは後述する。
px=sxh’x+bx……(3)
py=syh’y+by……(4)
尚、px、pyは画面座標系の座標であるので、以下の条件式(5)及び(6)に基づき、それぞれ「−1」より小さくなる場合には「−1」に、「1」より大きくなる場合には、「1」に丸め込まれるようになっている。
px=−1(px<−1)、px=px(−1≦px≦1)、px=1(px>1)
……(5)
py=−1(py<−1)、py=py(−1≦py≦1)、py=1(py>1)
……(6)
このようにして、CPU111は、GUI画面130のXd−Yd平面上でのポインタPoの位置(px、py)を算出する。
ここで、上述したスケーリングの割合sx、syについて説明する。このスケーリングの割合sx、syは、操作者の手の上下左右方向の動きに対して、どの程度ポインタPoをGUI画面130の上下左右方向に動かすかを示すものである。実際、TV受像機101では、操作者が容易に手の届く範囲内で手を動かすだけで、ポインタPoをGUI画面130の隅々にまで移動できるように、スケーリングの割合が設定されるようになっている。
すなわちCPU111は、まず操作者の手が容易に届く範囲(これを操作範囲とも呼ぶ)を判別する。具体的に、CPU111は、ミラーリングしたカメラ画像から得られた操作者Aの顔領域の大きさをもとに、図11に示すように、この操作者Aの肩幅W1と肘から手先までの長さW2を得る。
ここで肩幅W1と肘から手先までの長さW2は、人間の平均的な顔と体(肩幅、腕の長さ、肘から手先までの長さなど)の大きさの関係をもとに、操作者の顔の大きさから判別できる。
TV受像機101の不揮発性メモリ112には、このような関係に基づくデータ(演算式でもよい)が記憶されており、CPU111は、このデータをもとに、操作者Aの顔の大きさから、肩幅W1と肘から手先までの長さW2を得る。
そしてCPU111は、操作者Aの体の左右方向の中心位置bxを中心として、肩幅W1+肘から手先までの長さW2×2の範囲を、操作者Aの左右方向の操作範囲lxとする。
すなわちCPU111は、操作者Aが上腕を下ろしたまま前腕のみを動かして手が届く範囲を、左右方向の操作範囲lxとする。
尚、左右方向の中心位置bxは、上述したように操作者Aの顔の左右方向の中心位置(fx)より得られる。
さらにCPU111は、図12に示すように、操作者Aの顔の下端から、上腕を下ろしたときの肘の位置までの範囲を、操作者Aの上下方向の操作範囲lyとする。
すなわちCPU111は、操作者Aが上腕を下ろしたまま前腕のみを動かして手が届く範囲を上下方向の操作範囲lyとする。
尚、操作者Aの体の上下方向の中心位置byは、ちょうどこの操作範囲lyの中点となるようなっている。すなわち、上腕を下ろしたときの肘の位置から顔の下端までの長さと肘から手先までの長さW2がほぼ一致するとすれば、顔の下端から、肘から手先までの長さW2/2だけ下方の位置が、上下方向の中心位置byとなる。
そしてCPU111は、左右方向の操作範囲lxと上下方向の操作範囲lyとで表される範囲を、操作者Aの操作範囲と判別する。この操作範囲は、上述したように操作者Aが上腕を下ろしたまま前腕のみを動かしたときに手が移動する範囲であり、操作者Aの手が容易に届く範囲であると言える。
そしてCPU111は、この操作範囲内で操作者Aが手を上下左右に動かすだけで、ポインタPoをGUI画面130の上下左右の隅々にまで移動できるように、スケーリングの割合を設定する。
具体的に、CPU111は、画面座標系の左端及び右端のうち、操作者Aの中心位置から見て遠い方の端と操作者Aの中心位置までの長さを算出する。このときこの長さは、|bx|+1で表される。ここで、例えば、操作者Aの中心位置から見て遠い方の端が左端だとする。このとき、操作者Aが操作範囲lxの左端まで手を動かしたときに、ポインタPoが画面座標系の左端、すなわちGUI画面130の左端にまで移動するように、左右方向のスケーリングの割合sxを設定すればよい。
ゆえに、CPU111は、操作者Aの中心位置から見て遠い方の端と操作者Aの中心位置までの長さ|bx|+1を、操作者Aの左右方向の操作範囲lx/2で割り、この結果を、左右方向のスケーリングの割合sxとする。このときこのsxは、次式(7)で表される。
sx=(|bx|+1)/(lx/2)……(7)
また一方で、CPU111は、画面座標系の上端及び下端のうち、操作者Aの中心位置から見て遠い方の端と操作者Aの中心位置までの長さを算出する。このときこの長さは、|by|+1で表される。ここで、例えば、操作者Aの中心位置から見て遠い方の端が上端だとする。このとき、操作者Aが操作範囲lyの上端まで手を動かしたときに、ポインタPoが画面座標系の上端、すなわちGUI画面130の上端にまで移動するように、上下方向のスケーリングの割合syを設定すればよい。
ゆえに、CPU111は、操作者Aの位置から見て遠い方の端と操作者Aの位置までの長さ|by|+1を、操作者Aの上下方向の操作範囲ly/2で割り、この結果を、左右方向のスケーリングの割合syとする。このときこのsyは、次式(8)で表される。
sy=(|by|+1)/(ly/2)……(8)
このようにしてCPU111は、スケーリングの割合sx、syを設定する。この結果、GUI画面130では、操作者Aがその場で容易に手の届く範囲内で手を上下左右に動かすだけで、ポインタPoをGUI画面130の上下左右の隅々にまで移動させることができる。これにより、操作者Aが撮像範囲のどこにいようと、移動したり、手を大きく伸ばしたりすることなく、ポインタPoをGUI画面130の任意の位置に移動させることができるので、操作時の負担を軽減することができる。
またCPU111は、上下方向の操作範囲lyを、上腕を下ろしたときの肘の位置から顔の下端までとしたことで、操作者がポインタPoを操作するときに、顔の前に手がかぶって、GUI画面130が見づらくなることを防止することもできる。
次に、GUI画面130でのポインタPoの位置を表す座標px、py、pzのうち、Zd軸上の位置(すなわち奥行き方向の位置)を表す座標pzの算出方法について説明する。
CPU111は、図13に示すように、ステレオ法により例えばステレオカメラ102から操作者Aの顔までの距離bzを得る。この距離bzは、ステレオカメラ102から操作者Aの体までの距離と見なすことができる。またCPU111は、ステレオカメラ102から操作者Aの手までの距離hzを得る。
さらにCPU111は、これらをもとに、操作者Aの体から操作者Aの手までの距離h’zを得る。この距離h’zは、次式(9)により表される。
h’z=bz−hz……(9)
さらにCPU111は、この操作者Aの体から手までの距離h’zを所定の割合でスケーリングしたうえで、これを画面座標系のZd軸上のポインタPoの位置(pz)とする。
ここで、h’zに対するスケーリングの割合をszとすると、ポインタPoの位置を表す座標pzは、次式(10)により表される。
pz=szh’z……(10)
尚、pzは画面座標系のZd軸上の座標であるので、以下の条件式(11)に基づき、それぞれ「0」より小さくなる場合には「0」に、「1」より大きくなる場合には、「1」に丸め込まれるようになっている。
pz=0(px<0)、pz=pz(0≦pz≦1)、pz=1(pz>1)
……(11)
このようにして、CPU111は、GUI画面130のZd軸上でのポインタPoの位置(pz)を算出する。
ここで、上述したスケーリングの割合szについて説明する。スケーリングの割合szは、操作者の手の奥行き方向の動きに対して、どの程度ポインタPoをGUI画面130の奥行き方向に動かすかを示すものである。
この場合も、CPU111は、まず操作者の手が容易に届く範囲(操作範囲)を判別する。具体的に、CPU111は、ミラーリングしたカメラ画像から得られた操作者Aの顔領域の大きさをもとに、この操作者Aの腕の長さW3を得る。
ここで腕の長さW3は、人間の平均的な顔と体(肩幅、腕の長さなど)の大きさの関係をもとに、操作者の顔の大きさから判別できる。
CPU111は、このような関係に基づくデータ(演算式でもよい)を不揮発性メモリ112から読み出して、このデータをもとに、操作者Aの顔の大きさから、腕の長さW3を得る。
そしてCPU111は、操作者Aが手を前方に伸ばしたときの、体から手先まで(すなわち腕の長さW3)の範囲を、操作者Aの奥行き方向の操作範囲lzとする。
すなわちCPU111は、操作者Aが前方に手を伸ばしたときに手が届く範囲を、奥行き方向の操作範囲lzとする。
そしてCPU111は、この操作範囲lz内で操作者Aが手を奥行き方向に動かすだけで、ポインタPoをGUI画面130の最奥にまで移動できるように、スケーリングの割合を設定する。
この場合、操作者Aが操作範囲lzの最奥まで手を動かしたときに、ポインタPoが画面座標系の最奥、すなわちGUI画面130の最奥にまで移動するように、奥行き方向のスケーリングの割合szを設定すればよい。
ゆえに、CPU111は、画面座標系のZd軸上の最大値1を、操作者Aの奥行き方向の操作範囲lzで割り、この結果を、奥行き方向のスケーリングの割合szとする。このときこのszは、次式(12)で表される。
sz=1/lz……(12)
このようにしてCPU111は、スケーリングの割合szを設定する。この結果、GUI画面130では、操作者Aが容易に手の届く範囲内で手を奥行き方向に動かすだけで、ポインタPoをGUI画面130の最奥にまで移動させることができる。
かくして、GUI画面130では、操作者Aが容易に手の届く範囲内で手を上下左右、及び手前から奥に動かすだけで、ポインタPoをGUI画面130の上下左右、及び手前から奥までの隅々に移動させることができる。
さらに、CPU111は、操作者が複数存在する場合には、操作者ごとに、上述したようにしてポインタPoの位置を算出するようになっている。
例えば、TV受像機101の前方に2人の操作者A及びBがいるとする。この場合、GUI画面130には、操作者Aの体の中心位置に対応する位置を中心に動くポインタPoAと、操作者Bの体の中心位置に対応する位置を中心に動くポインタPoBとが表示されることになる。
このとき、操作者AとBの各々が手を体の中心位置に近づけているとする。するとGUI画面130には、図14に示すように、操作者Aの近くにポインタPoAが表示され、操作者Bの近くにポインタPoBが表示される。
この結果、GUI画面130上に表示された複数のポインタPoA及びPoBのうち、どのポインタPoが自分の操作するポインタPoであるのかを、操作者A及びBの各々に対して容易に認識させることができる。
因みに、本実施の形態の概要で説明した表示制御装置1の認識部2、算出部3、制御部4及び判別部5の具体的なハードウェアの例が上述したTV受像機101のCPU111である。また概要で説明した所定の関数が、上述したスケーリングの割合sx、sy、szである。
[1−2−4.ポインタ表示処理手順]
ここで、ポインタPoの表示に係わる処理の手順(これをポインタ表示処理手順とも呼ぶ)について説明する。因みに、このポインタ表示処理手順は、TV受像機101のCPU111が、不揮発性メモリ112に書き込まれているプログラムに従って実行するポインタ表示処理の手順である。
CPU111は、例えば、GUI画面130を表示させると共に、図15に示すポインタ表示処理手順RT1を開始して、ステップSP1に移る。
ステップSP1において、CPU111は、ステレオカメラ102により撮像されたカメラ画像から人物の顔が検出されるまで待ち受ける。
ここで、人物の顔が検出されると、CPU111は、このステップSP1で肯定結果を得て、ステップSP2に移る。
ステップSP2においてCPU111は、検出された顔の顔領域をもとに、この人物の肩幅、腕の長さ、肘から手先までの長さを得て、次のステップSP3に移る。ステップSP3においてCPU111は、ステップSP1で検出された顔がまだカメラ画像に含まれているか否かを判別する。
ここで、先に検出された顔がカメラ画像に含まれていないことにより否定結果を得ると、このことは、例えば、TV受像機101の前方を人物が単に通り過ぎたこと、つまりこの人物が操作者ではないことを意味する。このときCPU111は、ステップSP1に戻り、再びカメラ画像から人物の顔が検出されるまで待ち受ける。
これに対して、先に検出された顔がカメラ画像にまだ含まれていることによりこのステップSP3で肯定結果を得ると、CPU111は、ステップSP4に移る。ステップSP4においてCPU111は、カメラ画像から、顔が検出されている操作者の手が検出されているか否かを判別する。
ここで、否定結果を得ると、このことは、例えば、この操作者の手がステレオカメラ102の撮像範囲外に位置していることを意味する。このときCPU111は、ステップSP3に戻る。
これに対して、カメラ画像からこの操作者の手が検出されていることによりこのステップSP4で肯定結果を得ると、CPU111は、ステップSP5に移る。
ステップSP5においてCPU111は、操作者の顔の中心位置と大きさ、肩幅、腕の長さ、肘から手先までの長さなどをもとに、操作者の操作範囲と操作者の体の中心位置(bx、by)をもとめて、次のステップSP6に移る。
ステップSP6においてCPU111は、操作者の体の中心位置(bx、by)を原点とする操作者座標での操作者の手の位置(h’x、h’y)に対するスケーリングの割合sx、syを設定する。またCPU111は、操作者の体から手までの距離h’zに対するスケーリングの割合szを設定する。
このようにしてスケーリングの割合sx、sy、szを設定した後、CPU111は、次のステップSP7に移る。ステップSP7においてCPU111は、設定したスケーリングの割合sx、sy、szを用いて、操作者の手の位置(h’x、h’y)及び操作者の体から手までの距離h’zに対してスケーリングを行うことで、ポインタPoの位置(px、py、pz)を算出する。
このようにしてポインタPoの位置を算出した後、CPU111は、次のステップSP8に移る。ステップSP8においてCPU111は、GUI画面130上の、ステップSP8で算出した位置にポインタPoを表示させ、再びステップSP3に戻る。
このようなポインタ表示処理手順RT1にしたがって、CPU111は、ポインタPoの表示を制御するようになっている。
[1−2−5.動作及び効果]
以上の構成において、TV受像機101のCPU111は、ステレオカメラ102で撮像したカメラ画像から、TV受像機101の前方にいる操作者の顔と手を検出する。
次にCPU111は、カメラ画像から検出した操作者の顔の位置と大きさをもとに、画像座標系での、操作者の体の大きさと中心位置(bx、by)をもとめる。
このとき、この画像座標系は、画面座標系のXd−Yd平面と同一の座標系に設定されている。ゆえにカメラ画像内での位置は、GUI画面130のXd−Yd平面上の位置に対応する。
さらにCPU111は、操作者の体の中心位置(bx、by)を操作者座標系の原点として、この原点からの操作者の手の位置(h’x、h’y)をもとめる。さらにCPU111は、この位置(h’x、h’y)を所定の割合(sx、sy)でスケーリングした後、画面座標系のXd−Yd平面上の位置に戻す。
そしてCPU111は、このようにして得た位置をポインタPoの表示位置(px、py)とする。
このように、CPU111は、画面座標系のXd−Yd平面上での操作者の体の中心位置はそのままに、この中心位置を操作者座標系の原点として、この原点からの手の位置をもとに、ポインタPoの表示位置を算出するようにした。
こうすることで、例えば操作者が複数存在する場合に、GUI画面130上に、複数の操作者の各々の体の中心位置に対応する位置を中心に動くポインタPoを表示させることができる。この結果、GUI画面130上に複数のポインタPoが表示されていても、複数の操作者の各々に対して、どのポインタが自分の操作するポインタPoであるのかを容易に認識させることができる。
またCPU111は、操作者の手が容易に届く上下左右方向の範囲(操作範囲)を判別する。そしてCPU111は、この範囲とGUI画面130の上下左右方向の大きさをもとに、この範囲の端まで手を動かしたときに、ポインタPoがGUI画面130の端に移動するようにスケーリングの割合を設定する。
こうすることで、操作者が容易に手の届く範囲内で手を動かすだけで、ポインタPoをGUI画面130の隅々にまで移動させることができる。
さらにCPU111は、カメラ画像から検出したステレオカメラ102から操作者の顔までの距離と手までの距離をもとに、操作者の体から手までの距離h’zを得る。さらにCPU111は、この距離h’zを所定の割合szでスケーリングして、これを画面座標系のZd軸上の位置とする。
ここでCPU111は、操作者の手が容易に届く奥行き方向の範囲(操作範囲)を判別する。そしてCPU111は、この範囲とGUI画面130の奥行き方向の大きさをもとに、この範囲の最奥まで手を伸ばしたときに、ポインタPoがGUI画面130の最奥に移動するようにスケーリングの割合を設定する。
こうすることで、操作者が容易に手の届く範囲内で手を動かすだけで、ポインタPoをGUI画面130の隅々にまで移動させることができる。
以上の構成によれば、TV受像機101は、例えば操作者が複数存在する場合に、GUI画面130上に、複数の操作者の各々の体の中心位置に対応する位置を中心に動くポインタPoを表示させることができる。この結果、GUI画面130上に複数のポインタPoが表示されていても、複数の操作者の各々に対して、どのポインタPoが自分の操作するポインタPoであるのかを容易に認識させることができる。またTV受像機101は、操作者が容易に手の届く範囲内で手を動かすだけで、ポインタPoをGUI画面130の隅々にまで移動させることができる。かくして、TV受像機101は、同時に操作する操作者の数に依らず良好な操作性を得ることができる。
<2.他の実施の形態>
[2−1.他の実施の形態1]
尚、上述した実施の形態の具体例では、操作者の体の左右方向がカメラ座標系のXc軸に対して平行(すなわち体の前後方向がカメラ座標系のZc軸に対して平行)であることを前提として、ポインタPoの位置(px、py、pz)を算出した。
ここで、図16に示すように、操作者の体の前後方向がカメラ座標系のZc軸に対して角度θだけ傾いている場合のポインタPoの位置(px、py、pz)の算出方法について説明する。
CPU111は、例えば、カメラ画像から検出した操作者の顔領域内で、目や口の位置が左右どちら側に寄っているかなどにより顔の向きを検出する。そしてこの顔の向きを、体の傾きとして、この傾きをZc軸に対する傾き角度θとして得る。
次にCPU111は、この操作者の体が−θだけ回転して、体の左右方向がカメラ座標系のXc軸に対して平行になったときの画像座標系での手の位置を推定する。
ここで、このときの画像座標系での手の位置を座標h’’x、h’’yとして、さらにステレオカメラ102から操作者の手までの距離をh’’zとする。そしてステレオカメラ102がピンホールカメラであると仮定すると、このh’’xは、次式(13)により表される。またh’’yは、次式(14)により表され、さらにh’’zは、次式(15)により表される。
h’’x=(1/αh’’z)×(cosθ(αhzhx−αbzbx)
+sinθ(hz−bz)+αbzbx)……(13)
h’’y=hy……(14)
h’’z=sinθ(αhzhx−αbzbx)−cosθ(bz−hz)
+bz……(15)
ここでαは、焦点距離をf(単位は例えばm)、ステレオカメラ102のイメージセンサの横幅をw(単位は例えばm)とすると、次式(16)により表される。
α=w/2f……(16)
そしてCPU111は、このようにして推定したh’’x、h’’y、h’’zから、h’x、h’y、h’zを算出する。このときh’xは、次式(17)により表される。またh’yは、次式(18)により表される。さらにh’zは、次式(19)により表される。
h’x=h’’x−bx……(17)
h’y=h’’y−by……(18)
h’z=bz−h’’z……(19)
そしてCPU111は、このようにして得られたh’x、h’y、h’zの各々を、上述した実施の形態の式(3)、式(4)、式(10)に代入することで、ポインタPoの位置(px、py、pz)を算出する。
こうすることで、操作者が例えばステレオカメラ102の撮像範囲の隅にいるなどして、操作者の体の前後方向がカメラ座標系のZc軸に対して傾いている場合であっても、この傾きを考慮した位置にポインタPoを表示させることができる。
尚、体の傾きの判別方法については、上述した顔の向きから判別する方法に限らず、他の既存の判別方法を用いるようにしてもよい。
[2−2.他の実施の形態2]
また上述した実施の形態の具体例では、操作者座標系での操作者の手の位置に対するスケーリングの割合sx、sy、szは、操作範囲内で一定とした。これに限らず、スケーリングの割合sx、sy、szを操作範囲内で変化させるようにしてもよい。
ここで、左右方向のスケーリングの割合sxを、操作者座標系の原点からの操作者の手の左右方向の位置h’xに応じて変化させるとする。この場合、例えば、図17に示すように、h’xが、原点からlx/6までの範囲にある場合には、スケーリングの割合sx=1とする。
さらにh’xが、lx/3からlx/2(すなわち操作範囲lxの端)までの範囲にある場合には、sx=sx(すなわち(|bx|+1)/(lx/2))とする。
さらにh’xが、lx/6からlx/3までの範囲にある場合には、h’xが大きくなるにつれて、sxが1からsxまで徐々に増加するようにする。この場合、sxが連続的に変化するような関数を用意することが望ましい。
このように、操作者の手が体の中心位置に近いときには、スケーリングの割合sxを1として、遠いときには、スケーリングの割合sxをsx(すなわち(|bx|+1)/(lx/2))とする。
こうすることで、操作者の手が体の中心位置に近いときには、操作者の手の移動量とポインタPoの移動量とが一致することになり、ポインタPoの動きが細かくなる。これにより操作者が自分の体の近くでポインタPoを操作するときの操作性を向上させることができる。
また操作者の手が体の中心位置から遠いときには、操作者の手の移動量に対してポインタPoの移動量が大きくなる。これによりポインタPoをGUI画面130の隅にまで移動させることができる。
尚、ここでは、左右方向のスケーリングの割合sxの変化について述べたが、上下方向、及び奥行き方向のスケーリングの割合sy、szについても同様に変化させるようにしてもよい。
[2−3.他の実施の形態3]
さらに上述した実施の形態の具体例では、TV受像機101が、人間の平均的な顔と体の大きさの関係をもとに、カメラ画像から検出した操作者の顔領域の大きさから、操作者の体の大きさを推定して、操作範囲を自動的に判別するようにした。
これに限らず、カメラ画像に含まれる操作者の顔画像から、操作者の年齢を推定して、この年齢の人間の平均的な顔と体の大きさの関係をもとに、操作者の体の大きさを推定して、操作範囲を判別するようにしてもよい。
この場合、操作者が子供であれば、大人と比べて、顔の大きさに対する体の大きさが小さく、結果として操作範囲が狭くなる。このようにすることで、操作者の実際の体の大きさを一段と的確に推定することができ、結果として、一段と操作性を向上させることができる。
尚、顔画像から人物の年齢(年代)を判別する方法については、種々のアルゴリズムが知られている。例えば、顔画像から、顔の形状や色、髪型、皺、目や口の位置などの複数の特徴量を検出する。さらにこれら複数の特徴量を所定数のグループに分類して、グループごとに、予め用意された年代ごとの特徴量と比較することで年代を判別する。そしてグループごとに判別された年代のうち、例えば、最も多く判別された年代を、この顔画像の人物の年代と判別する。
またこれに限らず、カメラ画像を画像解析することにより、操作者の体の領域(これを体領域とも呼ぶ)を検出することで、実際の体の大きさを認識して、操作範囲を判別するようにしてもよい。
さらに上述した実施の形態の具体例では、奥行き方向の操作範囲lzを、操作者が手を前方に伸ばしたときの体から手先まで(すなわち腕の長さW3)の範囲としたが、腕の長さW3/√2の範囲を、奥行き方向の操作範囲lzとしてもよい。
ここで、腕の長さW3を√2で割る理由は、操作者が操作範囲lx、lyの四隅に手を伸ばしたときに手が届く範囲を奥行き方向の操作範囲lzとする為である。
さらにこれに限らず、肘から手先までの長さW2、もしくはW2/√2の範囲を奥行き方向の操作範囲lzとしてもよい。
さらに上述した実施の形態の具体例では、上腕を下ろした状態で操作者の手が届く範囲を操作範囲lx、lyとしたが、例えば、腕を上下左右に伸ばして届く範囲を操作範囲lx、lyとしてもよい。
このように操作範囲lx、ly、lzについては、種々の方法で判別するようにしてもよい。
またこのように操作範囲を自動的に判別するのではなく、操作者の各々に手動で設定させるようにしてもよい。
この場合、例えば、操作者に、所望の操作範囲lx、ly、lzを指定する為のジェスチャ操作を行わせる。具体的には、操作者が、手前側と奥側とでそれぞれ、操作範囲lx及びlyの四隅に対応する計8箇所の位置で、特定のジェスチャ操作をする。特定のジェスチャ操作は、例えば、ジャンケンのパー、グー、パーのように開いた手を握ってまた開くようなジェスチャ操作とする。
CPU111は、特定のジェスチャ操作が行われた8箇所の位置で表される空間内を、この操作者の操作範囲lx、ly、lzとする。
そしてCPU111は、この操作範囲lx、ly、lzを、操作者の顔画像と対応付けて、操作範囲データとして不揮発性メモリ112に記憶させる。
これにより、CPU111は、以降、この操作者をステレオカメラ102で捉えた場合には、この操作者の顔画像に対応する操作範囲データを不揮発性メモリ112から読み出して、操作範囲lx、ly、lzを設定する。
このようにすれば、操作者の各々が自分の手を動かし易い範囲を操作範囲として設定することができ、かくしてポインタPoを操作するときの操作性をより一層向上させることができる。
また、例えば、操作者が、手前側と奥側とでそれぞれ、操作範囲lx及びlyを示す四角形を描くジェスチャ操作をして、CPU111が、手前側の四角形と奥側の四角形とで表される空間内を、この操作者の操作範囲lx、ly、lzとしてもよい。
要は、操作範囲を表す空間を指定するジェスチャ操作を操作者に行わせればよく、少なくとも空間の対角線上の2点を指定するジェスチャ操作を行わせればよい。
[2−4.他の実施の形態4]
さらに上述した実施の形態の具体例では、ステレオカメラ102で撮像したカメラ画像から操作者の手の位置を検出して、この手の位置をもとにポインタPoのGUI画面130上での表示位置を算出するようにした。
これに限らず、操作者に所定のコントローラを持たせて、このコントローラから発せられる信号(例えば光信号)をもとに、コントローラの位置を検出して、このコントローラの位置をもとにポインタPoのGUI画面130上での表示位置を算出するようにしてもよい。
[2−5.他の実施の形態5]
また上述した実施の形態の具体例では、TV受像機101に対して、ステレオカメラ102が外部接続されるようにした。これに限らず、TV受像機101にステレオカメラ102を内蔵させるようにしてもよい。
またステレオカメラ102に限らず、赤外線カメラや通常の単眼カメラをTV受像機101に接続、もしくは内蔵させるようにしてもよい。因みに、単眼カメラの場合、奥行き方向の情報が欠落することになるので、顔と手の対応関係を判別する精度が低下するが、ステレオカメラと比して簡易な構成とすることができる。
[2−6.他の実施の形態6]
さらに上述した実施の形態の具体例では、上下左右方向にくわえて奥行き方向を仮想的に有する3次元画面としてのGUI画面130に本発明を適用するようにした。これに限らず、ポインタ操作し得る画面であれば、上下左右方向のみの2次元画面に本発明を適用してもよく、また適用することができる。
このように2次元画面に本発明を適用する場合、必ずしもステレオカメラ102が必要ではなく、通常の単眼カメラを用いることができる。またこの場合、上述した実施の形態から、奥行き方向の概念を取り除くだけでよい。
[2−7.他の実施の形態7]
さらに、上述した実施の形態の具体例では、表示制御装置としてのTV受像機101に、認識部、算出部、制御部、判別部としてのCPU111を設けるようにした。
本発明はこれに限らず、同様の機能を有するのであれば、上述したTV受像機101の各機能部(認識部、算出部、制御部、判別部)を、他の種々のハードウェアもしくはソフトウェアにより構成するようにしてもよい。
さらに上述した実施の形態の具体例では、TV受像機101とステレオカメラ102とで構成される多人数同時操作システム100に本発明を適用するようにした。これに限らず、同時に複数の操作者で操作し得るシステムであれば、この他種々のシステムに適用するようにしてもよく、また適用することができる。例えば、パーソナルコンピュータとディスプレイとステレオカメラとで構成されるシステムなどに適用するようにしてもよい。
[2−8.他の実施の形態8]
さらに上述した実施の形態の具体例では、各種処理を実行するためのプログラムを、TV受像機101の不揮発性メモリ112に書き込んでおくようにした。
これに限らず、このプログラムを例えば光ディスク、メモリカードなどの記録媒体に書き込んでおき、TV受像機101のCPU111が、この記憶媒体からプログラムを読み出すようにしてもよい。この場合、例えば、TV受像機101の外部インタフェース110に記録媒体のドライブを接続するようにする。
またTV受像機101に、ネットワークインタフェースを設けて、このプログラムを、ネットワークインタフェース経由でダウンロードして不揮発性メモリ112にインストールするようにしてもよい。
[2−9.他の実施の形態9]
さらに本発明は、上述した実施の形態の概要及び具体例と他の実施の形態とに限定されるものではない。すなわち本発明は、上述した実施の形態の概要及び具体例と他の実施の形態の一部または全部を任意に組み合わせた形態、もしくは一部を抽出した形態にもその適用範囲が及ぶものである。
さらに上述した実施の形態の概要及び具体例と他の実施の形態は一例であり、本発明の要旨を逸脱しない範囲であれば、この他、種々の形態に本発明を適用するようにしてもよく、また適用することができる。
本発明は、例えば、複数の操作者が同時に操作し得るGUIを実装するコンピュータで広く利用することができる。
1……表示制御装置、2……認識部、3……算出部、4……制御部、5……判別部、100……多人数同時操作システム、101……TV受像機、102……ステレオカメラ、111……CPU、119……ディスプレイ、121……撮像部、130……GUI画面、Po……ポインタ。

Claims (10)

  1. 操作者の位置と当該操作者の操作手段の位置とを認識する認識部と、
    画面に設定された画面座標系での上記操作者の位置を操作者座標系の原点とし、当該操作者座標系の原点からの上記操作手段の位置に所定の関数を乗じて、当該操作手段に対応する表示情報の画面座標系での位置を算出する算出部と、
    上記算出部が算出した上記画面座標系での位置に、上記表示情報を表示させる制御部と
    を具える表示制御装置。
  2. 上記認識部は、
    カメラ画像から上記操作者の位置と上記操作手段の位置とを認識し、
    上記算出部は、
    上記画面座標系と同一座標系として設定された上記カメラ画像の画像座標系での上記操作者の位置を操作者座標系の原点とし、当該操作者座標系の原点からの上記操作手段の位置に所定の関数を乗じて、当該操作手段に対応する表示情報の画面座標系での位置を算出する
    請求項1に記載の表示制御装置。
  3. さらに上記操作手段の操作範囲を判別する判別部を具え、
    上記算出部は、
    上記判別部により判別された操作範囲と上記画面のサイズとに基づく関数を、上記操作者座標系の原点からの上記操作手段の位置に乗じる
    請求項2に記載の表示制御装置。
  4. 上記操作手段の位置は、上記操作者の手の位置であり
    上記認識部は、
    上記カメラ画像から上記操作者の体の大きさを認識し、
    上記判別部は、
    上記認識部により認識された上記操作者の体の大きさをもとに、上記操作者の位置から手が届く範囲を推定して、当該範囲を上記操作手段の操作範囲とする
    請求項3に記載の表示制御装置。
  5. 上記認識部は、
    上記カメラ画像から上記操作者の顔を認識し、
    上記判別部は、
    上記認識部により認識された上記操作者の顔から当該操作者の年齢を推定して、当該年齢をもとに、当該顔の大きさから体の大きさを推定する
    請求項4に記載の表示制御装置。
  6. 上記認識部は、
    上記カメラ画像から上記操作手段によるジェスチャ操作を認識し、
    上記判別部は、
    上記認識部により上記操作範囲を指定する為のジェスチャ操作が認識されると、当該ジェスチャ操作により示された範囲を上記操作範囲とする
    請求項3に記載の表示制御装置。
  7. 上記画面座標系は、上下左右方向にくわえて奥行き方向を有する3次元座標系であり、
    上記認識部は、
    カメラ画像から上記操作者の位置及び体の大きさと、上記操作手段の位置とにくわえて、当該操作者の位置から当該操作手段までの距離を認識し、
    上記算出部は、
    上記画像座標系での上記操作者の位置を操作者座標系の原点とし、当該操作者座標系の原点からの上記操作手段の位置に所定の関数を乗じて、当該操作手段に対応する表示情報の画面座標系での上下左右方向の位置を算出すると共に、上記操作者の位置から上記操作手段までの距離に所定の関数を乗じて、当該操作手段に対応する表示情報の画面座標系での奥行き方向の位置を算出し、
    上記判別部は、
    上記認識部により認識された上記操作者の体の大きさをもとに上記操作者の位置から手が届く上下左右方向の範囲と奥行き方向の範囲を推定して、当該範囲を上記操作手段の操作範囲とする
    請求項4に記載の表示制御装置。
  8. 上記認識部は、
    カメラ画像から上記操作者の腕の長さを認識し、
    上記判別部は、
    上記操作範囲の奥行き方向の範囲を、腕の長さ/√2の範囲とする
    請求項7に記載の表示制御装置。
  9. 情報処理装置が、
    操作者の位置と当該操作者の操作手段の位置とを認識し、
    画面に設定された画面座標系での上記操作者の位置を操作者座標系の原点とし、当該操作者座標系の原点からの上記操作手段の位置に所定の関数を乗じて、当該操作手段に対応する表示情報の画面座標系での位置を算出し、
    算出した上記画面座標系での位置に、上記表示情報を表示させる
    表示制御方法。
  10. コンピュータに、
    操作者の位置と当該操作者の操作手段の位置とを認識する認識ステップと、
    画面に設定された画面座標系での上記操作者の位置を操作者座標系の原点とし、当該操作者座標系の原点からの上記操作手段の位置に所定の関数を乗じて、当該操作手段に対応する表示情報の画面座標系での位置を算出する算出ステップと、
    上記算出ステップで算出した上記画面座標系での位置に、上記表示情報を表示させる表示ステップと
    を実行させるための表示制御プログラム。
JP2009204958A 2009-09-04 2009-09-04 情報処理装置、表示制御方法及び表示制御プログラム Expired - Fee Related JP5614014B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2009204958A JP5614014B2 (ja) 2009-09-04 2009-09-04 情報処理装置、表示制御方法及び表示制御プログラム
US12/806,966 US9342142B2 (en) 2009-09-04 2010-08-25 Display control apparatus, display control method, and display control program
CN2010102667064A CN102012778A (zh) 2009-09-04 2010-08-27 显示控制设备、显示控制方法以及显示控制程序
US15/095,308 US9830004B2 (en) 2009-09-04 2016-04-11 Display control apparatus, display control method, and display control program
US15/784,314 US10606380B2 (en) 2009-09-04 2017-10-16 Display control apparatus, display control method, and display control program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009204958A JP5614014B2 (ja) 2009-09-04 2009-09-04 情報処理装置、表示制御方法及び表示制御プログラム

Publications (3)

Publication Number Publication Date
JP2011054118A true JP2011054118A (ja) 2011-03-17
JP2011054118A5 JP2011054118A5 (ja) 2012-10-11
JP5614014B2 JP5614014B2 (ja) 2014-10-29

Family

ID=43647353

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009204958A Expired - Fee Related JP5614014B2 (ja) 2009-09-04 2009-09-04 情報処理装置、表示制御方法及び表示制御プログラム

Country Status (3)

Country Link
US (3) US9342142B2 (ja)
JP (1) JP5614014B2 (ja)
CN (1) CN102012778A (ja)

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013206272A (ja) * 2012-03-29 2013-10-07 Sony Corp 情報処理装置、情報処理方法及びコンピュータプログラム
WO2013175845A1 (en) * 2012-05-23 2013-11-28 Kabushiki Kaisha Toshiba Information processing apparatus, information processing method, and program
WO2013175844A1 (en) * 2012-05-23 2013-11-28 Kabushiki Kaisha Toshiba Information processing apparatus, information processing method, and program
JP2014203417A (ja) * 2013-04-10 2014-10-27 コニカミノルタ株式会社 制御装置及び操作制御方法並びに操作制御プログラム
JP5709227B2 (ja) * 2011-04-28 2015-04-30 Necソリューションイノベータ株式会社 情報処理装置、情報処理方法及びプログラム
JP5769277B2 (ja) * 2011-04-27 2015-08-26 Necソリューションイノベータ株式会社 入力装置、入力方法及びプログラム
JP5928757B2 (ja) * 2012-11-06 2016-06-01 株式会社ソニー・インタラクティブエンタテインメント 情報処理装置
WO2016103769A1 (ja) * 2014-12-26 2016-06-30 株式会社ネクステッジテクノロジー 操作入力装置、操作入力方法及びプログラム
JP2017004553A (ja) * 2016-08-22 2017-01-05 ソニー株式会社 情報処理装置、情報処理方法及びコンピュータプログラム
WO2019054037A1 (ja) * 2017-09-12 2019-03-21 ソニー株式会社 情報処理装置、情報処理方法、およびプログラム
JP2019164440A (ja) * 2018-03-19 2019-09-26 株式会社リコー 情報処理装置及び情報処理方法
JP2019200566A (ja) * 2018-05-16 2019-11-21 株式会社ネクステッジテクノロジー 操作入力装置、操作入力方法及びプログラム

Families Citing this family (70)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2455841A3 (en) * 2010-11-22 2015-07-15 Samsung Electronics Co., Ltd. Apparatus and method for selecting item using movement of object
WO2012129669A1 (en) * 2011-03-28 2012-10-04 Gestsure Technologies Inc. Gesture operated control for medical information systems
US9189825B2 (en) * 2011-04-12 2015-11-17 Lg Electronics Inc. Electronic device and method for displaying stereoscopic image
JP5298161B2 (ja) * 2011-06-13 2013-09-25 シャープ株式会社 操作装置及び画像形成装置
US11048333B2 (en) * 2011-06-23 2021-06-29 Intel Corporation System and method for close-range movement tracking
DE102011112618A1 (de) * 2011-09-08 2013-03-14 Eads Deutschland Gmbh Interaktion mit einem dreidimensionalen virtuellen Szenario
CN102999152B (zh) * 2011-09-09 2016-06-29 康佳集团股份有限公司 一种手势动作识别方法和系统
US9142182B2 (en) * 2011-10-07 2015-09-22 Lg Electronics Inc. Device and control method thereof
TWI437467B (zh) 2011-10-11 2014-05-11 Ind Tech Res Inst 顯示控制裝置及顯示控制方法
JP2013097593A (ja) * 2011-11-01 2013-05-20 Sony Corp 情報処理装置、情報処理方法及びプログラム
US9164579B2 (en) * 2011-11-15 2015-10-20 Lg Electronics Inc. Electronic device for granting authority based on context awareness information
US8847881B2 (en) * 2011-11-18 2014-09-30 Sony Corporation Gesture and voice recognition for control of a device
EP2788839A4 (en) * 2011-12-06 2015-12-16 Thomson Licensing METHOD AND SYSTEM FOR RESPONDING TO USER GESTURES FOR SELECTION OF OBJECTS DISPLAYED IN THREE DIMENSIONS
US8638989B2 (en) 2012-01-17 2014-01-28 Leap Motion, Inc. Systems and methods for capturing motion in three-dimensional space
US9679215B2 (en) 2012-01-17 2017-06-13 Leap Motion, Inc. Systems and methods for machine control
US8693731B2 (en) 2012-01-17 2014-04-08 Leap Motion, Inc. Enhanced contrast for object detection and characterization by optical imaging
US9070019B2 (en) 2012-01-17 2015-06-30 Leap Motion, Inc. Systems and methods for capturing motion in three-dimensional space
US11493998B2 (en) 2012-01-17 2022-11-08 Ultrahaptics IP Two Limited Systems and methods for machine control
US9501152B2 (en) 2013-01-15 2016-11-22 Leap Motion, Inc. Free-space user interface and control using virtual constructs
US10691219B2 (en) 2012-01-17 2020-06-23 Ultrahaptics IP Two Limited Systems and methods for machine control
US20150253428A1 (en) 2013-03-15 2015-09-10 Leap Motion, Inc. Determining positional information for an object in space
JP2013207356A (ja) * 2012-03-27 2013-10-07 Sony Corp 情報処理装置、情報処理方法およびプログラム
TWI454966B (zh) * 2012-04-24 2014-10-01 Wistron Corp 手勢控制方法及手勢控制裝置
US8994650B2 (en) 2012-04-27 2015-03-31 Qualcomm Incorporated Processing image input to communicate a command to a remote display device
TW201405443A (zh) 2012-07-17 2014-02-01 Wistron Corp 手勢輸入系統及方法
TWI475496B (zh) * 2012-10-16 2015-03-01 Wistron Corp 手勢控制裝置及於手勢控制裝置中設定及取消手勢操作區域之方法
US9285893B2 (en) 2012-11-08 2016-03-15 Leap Motion, Inc. Object detection and tracking with variable-field illumination devices
TWI488092B (zh) 2012-12-07 2015-06-11 Pixart Imaging Inc 光學式觸控裝置及其操作方法
US10609285B2 (en) 2013-01-07 2020-03-31 Ultrahaptics IP Two Limited Power consumption in motion-capture systems
US9465461B2 (en) 2013-01-08 2016-10-11 Leap Motion, Inc. Object detection and tracking with audio and optical signals
US9459697B2 (en) 2013-01-15 2016-10-04 Leap Motion, Inc. Dynamic, free-space user interactions for machine control
US10241639B2 (en) 2013-01-15 2019-03-26 Leap Motion, Inc. Dynamic user interactions for display control and manipulation of display objects
JP2014137627A (ja) * 2013-01-15 2014-07-28 Sony Corp 入力装置、出力装置および記憶媒体
SE536902C2 (sv) * 2013-01-22 2014-10-21 Crunchfish Ab Skalbar inmatning från spårat objekt i beröringsfritt användargränssnitt
CN104063041B (zh) * 2013-03-21 2018-02-27 联想(北京)有限公司 一种信息处理方法及电子设备
US10620709B2 (en) 2013-04-05 2020-04-14 Ultrahaptics IP Two Limited Customized gesture interpretation
US9916009B2 (en) 2013-04-26 2018-03-13 Leap Motion, Inc. Non-tactile interface systems and methods
US9747696B2 (en) 2013-05-17 2017-08-29 Leap Motion, Inc. Systems and methods for providing normalized parameters of motions of objects in three-dimensional space
CN103399629B (zh) * 2013-06-29 2017-09-19 华为技术有限公司 获取手势屏幕显示坐标的方法和装置
US10281987B1 (en) 2013-08-09 2019-05-07 Leap Motion, Inc. Systems and methods of free-space gestural interaction
US9721383B1 (en) 2013-08-29 2017-08-01 Leap Motion, Inc. Predictive information for free space gesture control and communication
US9632572B2 (en) 2013-10-03 2017-04-25 Leap Motion, Inc. Enhanced field of view to augment three-dimensional (3D) sensory space for free-space gesture interpretation
US9996638B1 (en) 2013-10-31 2018-06-12 Leap Motion, Inc. Predictive information for free space gesture control and communication
US9134764B2 (en) * 2013-12-20 2015-09-15 Sony Corporation Apparatus and method for controlling a display based on a manner of holding the apparatus
KR102215072B1 (ko) * 2014-01-03 2021-02-10 삼성전자주식회사 디스플레이 장치 및 이의 제어 방법
US9613262B2 (en) 2014-01-15 2017-04-04 Leap Motion, Inc. Object detection and tracking for providing a virtual device experience
US20150309681A1 (en) * 2014-04-23 2015-10-29 Google Inc. Depth-based mode switching for touchless gestural interfaces
CN104317385A (zh) * 2014-06-26 2015-01-28 青岛海信电器股份有限公司 一种手势识别方法和系统
CN204480228U (zh) 2014-08-08 2015-07-15 厉动公司 运动感测和成像设备
CN105487646A (zh) * 2014-09-16 2016-04-13 洪永川 一种手势遥控智能终端系统
CN105407371A (zh) * 2014-09-16 2016-03-16 洪永川 一种电视系统
CN105407262A (zh) * 2014-09-16 2016-03-16 洪永川 一种摄像头
CN105491209A (zh) * 2014-09-16 2016-04-13 洪永川 一种智能终端系统
CN105491426A (zh) * 2014-09-16 2016-04-13 洪永川 一种手势遥控电视系统
CN105404387A (zh) * 2014-09-16 2016-03-16 洪永川 手势遥控智能终端系统
CN105491425A (zh) * 2014-09-16 2016-04-13 洪永川 识别手势及遥控电视的方法
CN105630142A (zh) * 2014-11-07 2016-06-01 中兴通讯股份有限公司 一种发布和传递识别信息的方法和装置及信息识别系统
US11061540B2 (en) * 2015-01-21 2021-07-13 Logmein, Inc. Remote support service with smart whiteboard
US9696795B2 (en) 2015-02-13 2017-07-04 Leap Motion, Inc. Systems and methods of creating a realistic grab experience in virtual reality/augmented reality environments
CN108369477B (zh) * 2015-12-22 2021-10-29 索尼公司 信息处理装置、信息处理方法和程序
US10537814B2 (en) * 2015-12-27 2020-01-21 Liwei Xu Screen coding methods and camera based game controller for video shoot game
JP6340464B1 (ja) * 2017-09-27 2018-06-06 株式会社Cygames プログラム、情報処理方法、情報処理システム、頭部装着型表示装置、情報処理装置
US11875012B2 (en) 2018-05-25 2024-01-16 Ultrahaptics IP Two Limited Throwable interface for augmented reality and virtual reality environments
CN109520415A (zh) * 2018-09-18 2019-03-26 武汉移动互联工业技术研究院有限公司 通过摄像头实现六自由度传感的方法及系统
US20200167005A1 (en) * 2018-11-28 2020-05-28 Seiko Epson Corporation Recognition device and recognition method
CN111949111B (zh) * 2019-05-14 2022-04-26 Oppo广东移动通信有限公司 交互控制方法、装置、电子设备及存储介质
CN111949134A (zh) * 2020-08-28 2020-11-17 深圳Tcl数字技术有限公司 人机交互方法、设备及计算机可读存储介质
TWI813907B (zh) * 2020-09-30 2023-09-01 優派國際股份有限公司 觸控顯示裝置及其操作方法
CN112731030A (zh) * 2020-12-23 2021-04-30 深圳市优必选科技股份有限公司 一种电子元器件的检测方法、装置、终端设备及存储介质
CN114911384B (zh) * 2022-05-07 2023-05-12 青岛海信智慧生活科技股份有限公司 镜子显示器及其远程控制方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000267800A (ja) * 1999-01-12 2000-09-29 Takenaka Komuten Co Ltd 動作認識装置
JP2004258714A (ja) * 2003-02-24 2004-09-16 Toshiba Corp 画像表示装置
JP2007072564A (ja) * 2005-09-05 2007-03-22 Sony Computer Entertainment Inc マルチメディア再生装置、メニュー操作受付方法およびコンピュータプログラム
WO2009018161A1 (en) * 2007-07-27 2009-02-05 Gesturetek, Inc. Enhanced camera-based input
WO2009108894A1 (en) * 2008-02-27 2009-09-03 Gesturetek, Inc. Enhanced input using recognized gestures

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4272711B2 (ja) * 1995-05-15 2009-06-03 キヤノン株式会社 画像生成方法及び装置
JP3968477B2 (ja) * 1997-07-07 2007-08-29 ソニー株式会社 情報入力装置及び情報入力方法
US7227526B2 (en) * 2000-07-24 2007-06-05 Gesturetek, Inc. Video-based image control system
JP4241763B2 (ja) * 2006-05-29 2009-03-18 株式会社東芝 人物認識装置及びその方法
US8060841B2 (en) * 2007-03-19 2011-11-15 Navisense Method and device for touchless media searching
US8233677B2 (en) * 2007-07-04 2012-07-31 Sanyo Electric Co., Ltd. Image sensing apparatus and image file data structure
JP5412812B2 (ja) 2007-12-07 2014-02-12 ソニー株式会社 入力装置、制御装置、制御システム、及びハンドヘルド装置
US20090201249A1 (en) * 2007-12-07 2009-08-13 Sony Corporation Input apparatus, control apparatus, control system, and handheld apparatus
US8126221B2 (en) * 2008-02-14 2012-02-28 Ecole Polytechnique Federale De Lausanne (Epfl) Interactive device and method for transmitting commands from a user
CN101344816B (zh) * 2008-08-15 2010-08-11 华南理工大学 基于视线跟踪和手势识别的人机交互方法及装置
US8145594B2 (en) * 2009-05-29 2012-03-27 Microsoft Corporation Localized gesture aggregation

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000267800A (ja) * 1999-01-12 2000-09-29 Takenaka Komuten Co Ltd 動作認識装置
JP2004258714A (ja) * 2003-02-24 2004-09-16 Toshiba Corp 画像表示装置
JP2007072564A (ja) * 2005-09-05 2007-03-22 Sony Computer Entertainment Inc マルチメディア再生装置、メニュー操作受付方法およびコンピュータプログラム
WO2009018161A1 (en) * 2007-07-27 2009-02-05 Gesturetek, Inc. Enhanced camera-based input
WO2009108894A1 (en) * 2008-02-27 2009-09-03 Gesturetek, Inc. Enhanced input using recognized gestures

Cited By (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9323339B2 (en) 2011-04-27 2016-04-26 Nec Solution Innovators, Ltd. Input device, input method and recording medium
JP5769277B2 (ja) * 2011-04-27 2015-08-26 Necソリューションイノベータ株式会社 入力装置、入力方法及びプログラム
JP5709227B2 (ja) * 2011-04-28 2015-04-30 Necソリューションイノベータ株式会社 情報処理装置、情報処理方法及びプログラム
US9329673B2 (en) 2011-04-28 2016-05-03 Nec Solution Innovators, Ltd. Information processing device, information processing method, and recording medium
US10037078B2 (en) 2012-03-29 2018-07-31 Sony Corporation Information processing apparatus, information processing method, and computer program
US10437324B2 (en) 2012-03-29 2019-10-08 Sony Corporation Information processing apparatus, information processing method, and computer program
JP2013206272A (ja) * 2012-03-29 2013-10-07 Sony Corp 情報処理装置、情報処理方法及びコンピュータプログラム
JP2013246514A (ja) * 2012-05-23 2013-12-09 Toshiba Corp 情報処理装置、情報処理方法、およびプログラム
WO2013175844A1 (en) * 2012-05-23 2013-11-28 Kabushiki Kaisha Toshiba Information processing apparatus, information processing method, and program
WO2013175845A1 (en) * 2012-05-23 2013-11-28 Kabushiki Kaisha Toshiba Information processing apparatus, information processing method, and program
JP5928757B2 (ja) * 2012-11-06 2016-06-01 株式会社ソニー・インタラクティブエンタテインメント 情報処理装置
JPWO2014073384A1 (ja) * 2012-11-06 2016-09-08 株式会社ソニー・インタラクティブエンタテインメント 情報処理装置
JP2014203417A (ja) * 2013-04-10 2014-10-27 コニカミノルタ株式会社 制御装置及び操作制御方法並びに操作制御プログラム
JPWO2016103769A1 (ja) * 2014-12-26 2017-11-02 株式会社ネクステッジテクノロジー 操作入力装置、操作入力方法及びプログラム
US9836130B2 (en) 2014-12-26 2017-12-05 Nextedge Technology K.K. Operation input device, operation input method, and program
WO2016103769A1 (ja) * 2014-12-26 2016-06-30 株式会社ネクステッジテクノロジー 操作入力装置、操作入力方法及びプログラム
JP2017004553A (ja) * 2016-08-22 2017-01-05 ソニー株式会社 情報処理装置、情報処理方法及びコンピュータプログラム
WO2019054037A1 (ja) * 2017-09-12 2019-03-21 ソニー株式会社 情報処理装置、情報処理方法、およびプログラム
JP2019164440A (ja) * 2018-03-19 2019-09-26 株式会社リコー 情報処理装置及び情報処理方法
JP2019200566A (ja) * 2018-05-16 2019-11-21 株式会社ネクステッジテクノロジー 操作入力装置、操作入力方法及びプログラム
JP7186999B2 (ja) 2018-05-16 2022-12-12 株式会社ネクステッジテクノロジー 操作入力装置、操作入力方法及びプログラム

Also Published As

Publication number Publication date
JP5614014B2 (ja) 2014-10-29
US20110057875A1 (en) 2011-03-10
US9830004B2 (en) 2017-11-28
CN102012778A (zh) 2011-04-13
US10606380B2 (en) 2020-03-31
US9342142B2 (en) 2016-05-17
US20160224128A1 (en) 2016-08-04
US20180046263A1 (en) 2018-02-15

Similar Documents

Publication Publication Date Title
JP5614014B2 (ja) 情報処理装置、表示制御方法及び表示制御プログラム
JP6057396B2 (ja) 3次元ユーザインタフェース装置及び3次元操作処理方法
US8933882B2 (en) User centric interface for interaction with visual display that recognizes user intentions
TWI649675B (zh) Display device
JP5936155B2 (ja) 3次元ユーザインタフェース装置及び3次元操作方法
JP4608326B2 (ja) 指示動作認識装置及び指示動作認識プログラム
US20140139429A1 (en) System and method for computer vision based hand gesture identification
CN103150009B (zh) 信息处理装置和信息处理方法
CN111353930B (zh) 数据处理方法及装置、电子设备及存储介质
KR20120068253A (ko) 사용자 인터페이스의 반응 제공 방법 및 장치
US20150339859A1 (en) Apparatus and method for navigating through volume image
WO2021154558A1 (en) Augmented reality map curation
KR101330531B1 (ko) 3차원 카메라를 이용한 가상 터치 방법 및 장치
JP2004265222A (ja) インタフェース方法、装置、およびプログラム
TW201606574A (zh) 操作畫面顯示裝置、操作畫面顯示方法以及非暫時性之記錄媒體
JP2017191426A (ja) 入力装置、入力制御方法、コンピュータプログラム、及び記憶媒体
JP4563723B2 (ja) 指示動作認識装置及び指示動作認識プログラム
JP6632298B2 (ja) 情報処理装置、情報処理方法及びプログラム
JP6643825B2 (ja) 装置及び方法
JP2000306106A (ja) 3次元有向体の定位方法及び画像処理装置
JP2021189659A (ja) 情報処理装置及びユーザの入力操作に基づく情報処理方法並びに該方法を実行するためのコンピュータプログラム
CN106095088B (zh) 一种电子设备及其图像处理方法
US20230343052A1 (en) Information processing apparatus, information processing method, and program
JP2024100835A (ja) 拡張現実マップキュレーション
JP2018109911A (ja) 表示装置、指示検出装置及び画像表示方法

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120828

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120828

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130523

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130611

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130806

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20140225

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140516

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20140526

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20140812

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140825

R151 Written notification of patent or utility model registration

Ref document number: 5614014

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees