操作情報処理装置、方法及びプログラム
【課題】装置が、ユーザの意図を正しく反映しない操作を実行してしまうという問題がある。
【解決手段】操作情報処理装置は、表示手段に表示される表示物である文章が縦書きか横書きかの区別情報の取得と、前記文章をユーザが見ることができる位置に存在する前記ユーザの顔または目を撮像する撮像手段によって撮像された画像入力と、前記画像からの前記ユーザの顔または目の動作の検出と、を行ない、前記区別情報が縦書きの場合は前記動作のうち横方向の動きを抽出し、前記区別情報が横書きの場合は前記動作のうち縦方向の動きを抽出して出力する検出手段と、前記検出手段が出力した動きによって決定される所定の操作指示を、前記操作指示を実行する操作手段に送信する処理手段と、を備える。
【解決手段】操作情報処理装置は、表示手段に表示される表示物である文章が縦書きか横書きかの区別情報の取得と、前記文章をユーザが見ることができる位置に存在する前記ユーザの顔または目を撮像する撮像手段によって撮像された画像入力と、前記画像からの前記ユーザの顔または目の動作の検出と、を行ない、前記区別情報が縦書きの場合は前記動作のうち横方向の動きを抽出し、前記区別情報が横書きの場合は前記動作のうち縦方向の動きを抽出して出力する検出手段と、前記検出手段が出力した動きによって決定される所定の操作指示を、前記操作指示を実行する操作手段に送信する処理手段と、を備える。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、操作情報処理装置、方法及びプログラムに関する。
【背景技術】
【0002】
マウスなどのポインティングデバイスは、PC(Personal computer)などコンピュータの入力装置として、主に画面上に表示されるポインタやアイコンなどを操作するために用いられている。
【0003】
また、ポインティングデバイスは、ディスプレイに映し出されるポインタやアイコン、ボタン等に対して直感的な入力操作を提供するGUI(Graphical User Interface)環境において、ポインタの移動やボタンの押下といった操作を要求するために用いられている。
【0004】
しかし、ポインティングデバイスは、ユーザが直接自らの手を用いて操作する必要があるため、身体的障害、怪我等により手が不自由な操作者が操作するのに不便であるという問題があった。
【0005】
このような問題点を解決する技術の一例が特許文献1に記載されている。特許文献1に記載のポインティングデバイスを実現する動体検出装置は、動体の動きに対応する物理量を時系列的に受け付ける受付手段と、該受付手段が所定時間にわたって受け付けた物理量を所定の座標系における座標に変換する変換手段と、該変換手段が変換した前記座標の変動に基づいて前記動体の動きを検出する手段とを備え、前記変換手段が変換した複数の座標を記憶する手段と、前記複数の座標が包含される前記座標系上の空間を算出する算出手段と、前記空間が算出された後に前記受付手段が受け付けた物理量を変換した座標が、前記空間に包含されるか否かを判断する手段と、前記空間に包含されると判断した場合、前記動体は停止していると判断する手段とを備える。
【0006】
また、別の一例が特許文献2に記載されている。特許文献2記載のポインタ制御信号発生方法は、ポインティングデバイスからの信号によりディスプレイに表示されるポインタの位置制御インタフェース及びポインタ位置と関連づけられたユーザの押しボタンによる動作指示をソフトウエアに伝達するインタフェースを有するシステムに対し制御信号を発生する方法であって、頭部の移動を検知し移動量情報を作成するステップと、左眼及び右眼の開閉を検出し開閉情報を作成するステップと、左右の眼の開閉情報をポインティングデバイスの左右の押しボタンスイッチの押下状態情報に対応づけるステップと、前記移動量情報及び押下状態情報を制御信号として出力するステップとからなる。
【先行技術文献】
【特許文献】
【0007】
【特許文献1】特許第4411387号
【特許文献2】特開2005−352580
【発明の概要】
【発明が解決しようとする課題】
【0008】
上述の特許文献記載の技術は、表示画面に表示されるコンテンツ等表示物に関わらず、専らユーザの顔または目の動きのみによって、ポインティングデバイス等に関する操作内容を決定する。したがって、装置が、ユーザの意図を正しく反映しない操作を実行してしまうという問題がある。
【0009】
このため、本発明の目的は、ユーザの意図を正しく反映した操作を実行する操作情報処理装置、方法及びプログラムを提供することである。
【課題を解決するための手段】
【0010】
かかる目的を達成するため、本発明の一形態は、操作情報処理装置であって、表示手段に表示される表示物である文章が縦書きか横書きかの区別情報の取得と、前記文章をユーザが見ることができる位置に存在する前記ユーザの顔または目を撮像する撮像手段によって撮像された画像入力と、前記画像からの前記ユーザの顔または目の動作の検出と、を行ない、前記区別情報が縦書きの場合は前記動作のうち横方向の動きを抽出し、前記区別情報が横書きの場合は前記動作のうち縦方向の動きを抽出して出力する検出手段と、前記検出手段が出力した動きによって決定される所定の操作指示を、前記操作指示を実行する操作手段に送信する処理手段と、を備える。
【0011】
また、本発明によれば、表示手段に表示される表示物である文章が縦書きか横書きかの区別情報の取得と、前記文章をユーザが見ることができる位置に存在する前記ユーザの顔または目を撮像する撮像手段によって撮像された画像入力と、前記画像からの前記ユーザの顔または目の動作の検出と、を行ない、前記区別情報が縦書きの場合は前記動作のうち横方向の動きを抽出し、前記区別情報が横書きの場合は前記動作のうち縦方向の動きを抽出して出力する検出ステップと、前記検出手段が出力した動きによって決定される所定の操作指示を、前記操作指示を実行する操作手段に送信する処理ステップと、をコンピュータに実行させる操作情報処理プログラムが提供される。
【0012】
また、本発明によれば、表示手段に表示される表示物である文章が縦書きか横書きかの区別情報の取得と、前記文章をユーザが見ることができる位置に存在する前記ユーザの顔または目を撮像する撮像手段によって撮像された画像入力と、前記画像からの前記ユーザの顔または目の動作の検出と、を行ない、前記区別情報が縦書きの場合は前記動作のうち横方向の動きを抽出し、前記区別情報が横書きの場合は前記動作のうち縦方向の動きを抽出して出力する検出ステップと、前記検出手段が出力した動きによって決定される所定の操作指示を、前記操作指示を実行する操作手段に送信する処理ステップと、を行なう操作情報処理方法が提供される。
【発明の効果】
【0013】
本発明によれば、ユーザの意図を正しく反映した操作を実行する操作情報処理装置、方法及びプログラムが提供される。
【図面の簡単な説明】
【0014】
【図1】第一の実施の形態の概要を説明するための概略図である。
【図2】第一の実施の形態の操作情報処理装置80のブロック図の一例を示す図である。
【図3】第一の実施の形態の検出制御部100の機能を説明するための図である。
【図4】第一の実施の形態の操作条件記憶部30の一例を示す図である。
【図5】第一の実施の形態の操作条件記憶部30の一例を示す図である。
【図6】第一の実施の形態の動作の一例を示す図である。
【図7】第二、第三の実施の形態の操作情報処理装置80のブロック図の一例を示す図である。
【図8】第二の実施の形態の表示部50の一例を示す図である。
【図9】第二の実施の形態の動作の一例を示す図である。
【図10】第三の実施の形態の動作の一例を示す図である。
【発明を実施するための形態】
【0015】
まず、図1を用いて、本発明の概要の一例について説明する。
【0016】
図1の操作情報処理装置80には、カメラ等の撮像部40とディスプレイ等の表示部50とが接続される。ユーザに使用されている表示部50には文章、アイコンなどコンテンツが表示される。撮像部40はユーザの顔全体または目の部分のみあるいはその両方を撮像し、操作情報処理装置80へ撮像画像を送信する。表示部50に文章が表示されている場合、操作情報処理装置80はユーザの顔全体または目の部分のみあるいはその両方の動きの検出制御を行う。具体的には、操作情報処理装置80は、文章が縦(横)書きである場合には、ユーザの顔または目の動きのうち横(縦)方向のみを抽出する。操作情報処理装置80は、抽出した動きによって決定される所定の操作指示を操作実行部70に送信する。
【0017】
このような構成によれば、本発明にかかる操作情報処理装置80はユーザの意図を正しく反映した操作を実行することができる。本発明は、文章が横(縦)書きである場合にはユーザの目は横(縦)方向に頻繁に動くため、横(縦)方向の動きを無視して縦(横)方向の動きのみを検出して所定操作と対応付けることにより、ユーザの意図を正しく反映しやすい操作情報処理装置、方法、及びプログラムを提供することができる。
【0018】
以下、本発明の実施の形態について、図面を用いて説明する。
すべての図面において、同様な構成要素には同様の符号を付し、適宜説明を省略する。
【0019】
なお、各実施形態の操作情報処理装置80を構成する各部は、制御部、メモリ、メモリにロードされたプログラム、プログラムを格納するハードディスク等の記憶ユニット、ネットワーク接続用インターフェースなどからなり、ハードウェアとソフトウェアの任意の組合せによって実現される。そして特に断りのない限り、その実現方法、装置は限定されない。
【0020】
制御部はCPU(Central Processing Unit)などからなり、オペレーティングシステムを動作させて操作情報処理装置80の全体を制御するとともに、例えばドライブ装置などに装着された記録媒体からメモリにプログラムやデータを読み出し、これにしたがって各種の処理を実行する。
【0021】
記録媒体は、例えば光ディスク、フレキシブルディスク、磁気光ディスク、外付けハードディスク、半導体メモリ等であって、コンピュータプログラムをコンピュータ読み取り可能に記録する。また、コンピュータプログラムは、通信網に接続されている図示しない外部コンピュータからダウンロードされても良い。
【0022】
また、各実施形態の説明において利用するブロック図は、ハードウェア単位の構成ではなく、機能単位のブロックを示している。これらの機能ブロックはハードウェア、ソフトウェアの任意の組み合わせによって実現される。また、これらの図においては、各実施形態の構成部は物理的に結合した一つの装置により実現されるよう記載されている場合もあるが、その実現手段はこれに限定されない。すなわち、二つ以上の物理的に分離した装置を有線または無線で接続し、これら複数の装置により、各実施形態のシステムを実現してもよい。
【0023】
<実施形態1>以下、第一の実施の形態の構成例について説明する。
図2に、本実施の形態の操作情報処理装置80のブロック図の一例を示す。
【0024】
操作情報処理装置80は、検出部10、処理部20を備える。さらに、操作条件記憶部30、表示制御部60、操作実行部70、撮像部40、表示部50を備えても良い。
【0025】
表示部50は、液晶ディスプレイ、有機EL(Electro-Luminescence)ディスプレイ、CRT(Cathode Ray Tube)等の表示装置である。表示部50には、マウスポインタやブラウザ、各種コンテンツなどの表示物が表示される。
【0026】
表示制御部60は、表示部50に表示されるコンテンツなどの表示物が文章である場合、その文章が縦書きか横書きかを区別し、検出部10に当該区別情報を送信する機能を有する。表示制御部60は、例えば、ブラウザに表示されるHTML(Hyper Text Markup Language)文章の書式タグを定期的に取得することで、表示されている文章が縦書きか横書きかを判定することができる。表示制御部60は、表示部50に複数のウィンドウが表示されている場合には、トップのウィンドウに表示される文章の書式のみを取得するようにしても良い。表示制御部60は、表示部50に表示される文章が縦書きであるか横書きであるかの区別情報を検出部10に受け渡す。なお、区別情報は後述する検出部10が生成するように構成されていても良い。
【0027】
検出部10は、図示しない検出制御部100、顔検出部101、顔動作検出部102、目検出部103、目動作検出部104を備える。
【0028】
顔検出部101は、撮像部40によって撮影されたユーザの顔を検出する。顔検出部101の行なう顔検出は種々の方法で行なうことができる。例えば、顔検出部101は、撮像部40で撮像されたエリアの中で、予め用意した人物の顔の向きに関する輪郭情報、まゆげ、目、鼻、口などのパーツ情報、色情報等のモデルパターンを用い、これらと特徴が近い領域をテンプレートマッチングを用いて検出することで顔および顔の向きを検出することができる。あるいは、顔検出部101は、肌の色に近い領域を検出し、その領域を顔として検出する手法、または、ニューラルネットワークを使って教師信号による学習を行い、顔らしい領域を顔として検出する手法を用いても良い。あるいは、顔検出部101は、顔や額にマーカを取り付け、撮像部40にてマーカの位置を検出しても良い。
【0029】
顔動作検出部102は、顔検出部101によって検出された顔の動きを判定する機能を有する。顔動作検出部102の行なう顔の動き検出は種々の方法で行なうことができる。例えば顔動作検出部102は、顔検出部101によって検出された顔の向きに関するデータを連続して取得し、顔の向きが上下や左右に変化していることを検出する。この際、顔動作検出部102は、両目の位置、大きさなどの情報を合わせて用いることで顔の向きを判定しても良い。例えば、顔動作検出部102は両目の位置が略平行で大きさも略同一である場合には、ユーザが正面を向いていると判定し、片方の目が小さい場合には顔が左右の一方を向いていると判定しても良い。あるいは、顔動作検出部102は鼻パーツ等の向きが変化していることを検出して、顔の動きを判定しても良い。あるいは、顔動作検出部102は前述した顔や額に取り付けたマーカの変化量を検出して、顔の動きを判定しても良い。顔動作検出部102は、一定時間ユーザの顔の動きを撮影し、上記のマッチングを連続してあるいは一定時間毎に行ない時系列データを得ることで、顔が上下左右、斜めに動いている状態を判定することができる。
【0030】
目検出部103は、撮像部40によって撮影された操作情報処理装置80のユーザの目を検出する。目検出部103の行なう目検出は種々の方法で行なうことができる。例えば、目検出部103は、撮像部40で撮像された眼球画像からテンプレートマッチング等により虹彩あるいは瞳孔のエッジ部を抽出して円近似を行ない、当該円の中心点を算出して目の位置として検出しても良い。
【0031】
目動作検出部104は、目検出部103によって検出された目の動きを判定する機能を有する。目動作検出部104の行なう目の動き検出は種々の方法で行なうことができる。例えば、目動作検出部104は、前述のように虹彩あるいは瞳孔のエッジ部を抽出して円近似を行ない、当該円の中心点を算出して目の位置として検出された目の位置データを取得し、その中心点の変位量から視線方向を検出しても良い。この際、目動作検出部104は、目の調整微動を無視するために、一定以上の変位量を検知した場合にのみ視線方向が変化したと判定してもよい。また、目動作検出部104は、一定時間ユーザの目の動きを撮影し、上記のマッチングを連続してあるいは一定時間毎に行ない時系列データを得ることで、視線が上下左右、斜め方向に動いている状態を判定することができる。
【0032】
検出制御部100は、表示制御部60によって取得される文章の書式に関する区別情報を基に、上述の顔動作検出部102、目動作検出部104の検出を制御する。具体的には、区別情報が縦書きである場合、検出制御部100は、顔動作検出部102、目動作検出部104が縦方向の動き検出を中止し、横方向の動きのみを検出するよう制御する。また、区別情報が横書きである場合、検出制御部100は、顔動作検出部102、目動作検出部104が横方向の動き検出を中止し、縦方向の動きのみを検出するよう制御する。なお、区別情報は検出制御部100が表示制御部60から表示データを入力して生成し、当該区別情報を基に上述の顔動作検出部102、目動作検出部104の検出制御を行なっても良い。
【0033】
図3を用いて検出制御部100の機能を説明する。図3は、表示部50を見ているユーザの目が向いているあるいは顔の正面が向いている、表示部50内の点が座標(x1、y1)から座標(x2、y2)に移動したことを示している。ここで、座標系の取り方は特段限定されるものではないが、ここでは通常のユークリッド座標系を用い、横方向をx軸、縦方向をy軸として説明する。
【0034】
検出制御部100は、表示部50に表示されている文章が横書きであることを表示制御部60から取得した場合、顔動作検出部102、目動作検出部104が横方向の動きを検出しないよう制御する。すなわち、検出制御部100は、横方向の動きx2−x1(x座標の始点x1から終点x2への動きを示す。以下同様。)と縦方向の動きy2−y1(y座標の始点y1から終点y2への動きを示す。以下同様。)のうち、y方向の動きy2−y1のみを検出する。そして、検出制御部100は、縦方向の動きy2−y1を検出結果として後述の処理部20に受け渡す。
【0035】
また、検出制御部100は、表示部50に表示されている文章が縦書きであることを表示制御部60から取得した場合、顔動作検出部102、目動作検出部104が縦方向の動きを検出しないよう制御する。すなわち、検出制御部100は、横方向の動きx2−x1と縦方向の動きy2−y1のうち、縦方向の動きx2−x1のみを検出する。そして、検出制御部100は横方向の動きx2−x1を検出結果として後述の処理部20に受け渡す。
【0036】
なお、上記検出の制御はあくまでもユーザの顔または目の移動に対し行なわれるものであって、検出制御部100は、ユーザの目の開閉に関する動作に関してはフィルタをかけることなく動作をそのまま検出することとしても良い。
【0037】
また、検出制御部100は、所定時間に所定距離以上顔や目が移動した場合のみ検出部10の検出対象としても良い。例えば所定時間内(600ミリ秒など。特段制限はない。)に所定の距離(1cmなど。特段制限はない。)以上、顔や目の移動が行われた場合のみ検出対象となるように検出制御部100が顔動作検出部102、目動作検出部104を制御しても良い。これにより、検出部10は、ユーザによって顔や目の意図しない微動や動作を検出することを防止することができる。
【0038】
処理部20は、検出部10によって検出された顔または目の動作の種類(動作が動きである場合には大きさ、方向、時間等を含む。)に応じて後述の操作条件記憶部30を参照し、動作に応じた所定操作指示を操作実行部70に送信する機能を有する。所定操作とは、例えば後述の表示部50に表示される表示物であるマウスポインタの移動やクリック、画面のスクロール、モード切替、その他コンピュータへの各種操作である。処理部20は、検出部10によって検出された顔または目の動作の種類を検出部10から取得し、操作条件記憶部30を参照する。そして、処理部20は、操作条件記憶部30で定義されている条件が満たされたと判定したとき、当該条件に対応する所定の処理操作指示を操作実行部70に送信する。なお、操作条件は操作条件記憶部30の代わりに処理部20が有していても良い。また、処理部20が、検出部10から得たユーザの顔または目の動作から演算して操作指示を生成し、操作実行部70に出力することにしても良い。
【0039】
操作条件記憶部30は、顔または目の動作と所定操作とを対応付けて記憶する。ここで、顔または目の動作とは、ユーザの顔全体または目の部分のみあるいはその両方の動き、その他動作である。ここで、動きとは、始点と終点とが定まる顔全体または目の部分のみあるいはその両方の、一定距離以上の移動等である。例えば、顔の正面または目の視点が一定時間ある位置に留まる場合に、その位置が始点または終点である。具体的には、顔検出部101や目検出部103がユーザの顔の正面の位置または目の視点の位置と、その位置に留まる時間とを検出することでユーザの動きの始点と終点とを検出しても良い。また、その他動作とは、目の瞬きやテンプレートマッチングによって判定される顔の左右動等である。操作条件記憶部30は、例えば、上述した目の向いているあるいは顔の正面が向いている、表示部50内の点の座標位置の変化が所定時間以内に行われた場合を動作として記憶するとともに、当該動作に対する所定操作を対応付けて記憶している。
【0040】
図4は、操作条件記憶部30の一例を示す図である。ここでは操作条件記憶部30は、「目の動作」列、「操作」列を有する。なお、後述のとおり操作条件記憶部30は、「目の動作」列の代わりに「顔の動作」列を設けてもよいし、「目の動作」列とともに「顔の動作」列を設けてもよい。以下では、図4の操作条件記憶部30を例に説明する。
【0041】
「目の動作」列は、横あるいは縦方向の目の位置の移動が所定時間内に行われた場合や目の開閉状態を目の動作として格納する。例えば、「y2−y1:5cm以上:600ミリ秒以内」は、ユーザの目が600ミリ秒以内に1cm以上縦方向に移動した状態を示す。また、「x2−x1:5cm以上:600ミリ秒以内」は、ユーザの目が600ミリ秒以内に5cm以上横方向に移動した状態を示す。また、「左目を一秒間閉じて開く」はユーザが左目を一秒間閉じて開くことを示す。
【0042】
「操作」列は、「目の動作」列の動作がユーザによって行なわれた場合に、それに対応して処理部20が操作実行部70に出力する操作指示の内容を格納する。例えば、図4を参照すると、「目の動作」列が「y2−y1:5cm以上:600ミリ秒以内」である場合、それに対応する「操作」列は「c*(y2−y1):画面をスクロール」である。これは、ユーザの目の動作が600ミリ秒以内に縦方向に5cm以上y2−y1だけ動いた場合に、c*(y2−y1)だけ画面を縦方向にスクロールするための操作指示を、処理部20が操作実行部70に出力することを示す。ここでcは定数である。また、ユーザがパラメータとしてcを任意に設定可能である。
【0043】
また、図4において「目の動作」列の「左目を一秒間閉じて開く」に対応する「操作」列は「マウス左クリック」である。これは、ユーザの目の動作が1秒間左目を閉じてから開くものである場合にマウスの左クリックを意味する操作指示を処理部20が操作実行部70に出力することを示す。また、「目の動作」列の「両目を5秒間閉じる」に対応する「操作」列は「検出機能中止」である。これは、ユーザが両目を5秒間閉じた場合に検出部10の検出機能の中止を意味する操作指示を処理部20が操作実行部70に出力することを意味する。同様に、処理部20は、「目の動作」列が「両目瞬きを三回繰り返す」である場合、それに対応するマウスとペンタブレットのモードの切替えを意味する操作指示を操作実行部70に出力する。処理部20は、「目の動作」列が「ペンタブレット状態で右目を2秒閉じる」である場合、それに対応するペンタブレットの筆圧の変更を意味する操作指示を操作実行部70に出力する。処理部20は、「目の動作」列が「ペンタブレット状態で右目を閉じながら左目を移動」である場合にはそれに対応するポインティング先への描画操作指示を操作実行部70に出力する。
【0044】
なお、「目の動作」列の内容について、上述の目の動作の内容、目の移動距離、動作を行う所定時間、それらに対応する操作等はユーザが適宜設定可能としても良い。例えば、操作条件記憶部30は、「目の動作」列「y2−y1:5cm以上:600ミリ秒以内」に対応する「操作」列を「c*(x2−x1):マウスポインタを動かす」とし、マウスのポインタ移動を所定操作として記憶できるようにしても良い。
【0045】
また、ユーザは、図示しない入力手段を介して、あるいは予め、操作条件記憶部30の「目の動作」列を複数設けても良いし、それら複数の動作に対応する「操作」列の内容も適宜変更可能としても良い。例えば、ユーザは、操作条件記憶部30の「目の動作」列を2列設け、そのうちの1つを「左目を閉じる」とし、それに対応する他の1つを「右目の視線を動かす:1cm以上」とし、それに対応する「操作」列の1つを「ドラッグ」とすることができる。これにより、ユーザが左目を閉じて右目の視線を1cm以上動かした場合には、マウスのドラッグを意味する操作指示を処理部20が操作実行部70に出力するようにしても良い。
【0046】
なお、ユーザは、図示しない入力手段を介して、あるいは予め、操作条件記憶部30の「目の動作」列の代わりに顔の動作を格納する「顔の動作」列を設けても良い。この場合には上述の「目の動作」列の場合と同様に、「顔の動作」列にはユーザの顔動作が格納され、「操作」列には顔の動作に対応する所定操作が格納される。この場合には、処理部20が、顔の動作に対応する所定操作指示を操作実行部70に出力する。
【0047】
図5は操作条件記憶部30の他の一例を示す図である。図5のように操作条件記憶部30は、「目の動作」列とともに顔の動作を格納する「顔の動作」列を設けても良い。この場合には、操作条件記憶部30は、目の動作と顔の動作の両方の検出結果と所定操作とを対応付けることが可能である。例えば、操作条件記憶部30は、「目の動作」列の一つを「左目を閉じる」とし、それに対応する「顔の動作」列の一つを「顔を左右に動かす」とし、それらの条件を「and」とし、それに対応する「操作」列の一つを「ブラウザの戻る」とすることができる。これにより、ユーザが左目を閉じながら顔を左右に振ればブラウザの戻る機能が操作実行部70により実行されるようにすることが可能である。また、図5の2行目のように、操作条件記憶部30は、「目の動作」列と「顔の動作」列をともに「x2−x1:1cm以上:600ミリ秒以内」とし、条件列を「or」とすることもできる。この場合、目の動作と顔の動作のどちらか一方で600ミリ秒以内に1cm以上の顔の動きが検出された場合に条件が満たされたと処理部20が判定し、これに対応する所定操作指示を操作実行部70に出力するようにしても良い。
【0048】
撮像部40は、CCD(Charge Coupled Device)カメラ、アナログまたはデジタルのビデオカメラ等であって、ユーザの顔の全体または目の部分のみ、あるいはその両方を撮影する機能を有するよう構成される。なお、操作情報処理装置80は、顔検出用撮像装置と目検出用撮像装置とを別個に備えても良い。また、撮像部40は、後述の表示部50の上部などのユーザを撮影しやすい位置に設置されることが望ましいが、表示部50上の文章を見ることができる位置にいるユーザを撮像できるならばその設置箇所は制限されない。また、撮像部40はユーザ位置検出機能をさらに備えており、撮像部40がユーザの位置を検出してユーザ方向を自動的に向くように構成されてもよい。
【0049】
操作実行部70は、処理部20の操作指示を受け、当該操作指示に対応する所定の操作を実行する。例えば、操作実行部70は、OS(Operating System)が一般的にマウス等からユーザの操作指示(アイコン、ボタン等の選択、スクロールバーのドラッグ、コマンド等)を入力する代わりに、操作指示を処理部20から取得し、当該操作指示に対応する所定操作を実行する。すなわち、操作実行部70は処理部20から操作指示を受け付けるように拡張されたOSが一般的に備える操作コマンド実行部あるいはユーザインタフェース部等である。
【0050】
次に、本実施の形態における発明の動作について図6を用いて説明する。まず、表示部50に表示される文章を見ることが可能な位置にいるユーザを撮像する撮像部40がユーザの顔全体または目の部分のみあるいはそれら両方を撮像し、撮像画像を検出部10へ送信する(図6のS1)。表示部50に文章が表示されているとき、表示制御部60は表示部50に表示されている文章が縦書きか横書きであるかの区別情報を検出部10へ送信する(図6のS2)。次に検出部10は当該区別情報を基に、検出方法を変更する(図6のS3)。具体的には、区別情報が縦書きである場合には、上述の方法によって顔動作検出部102または目動作検出部104は横方向の動きのみを抽出し、区別情報が横書きである場合には縦方向の動きのみを抽出する。次に、検出部10は検出した結果を処理部20へ送信する(図6のS4)。処理部20は操作条件記憶部30に格納された条件を参照し、受信した検出結果に対応する所定操作指示を操作実行部70に送信する(図6のS5)。
【0051】
次に図6を用いて具体例を基に動作を説明する。ここでは、操作条件記憶部30が図4に示すものである場合であって、ユーザがブラウザに表示された文章を閲覧している場合を例に説明する。まず、撮像部40は表示部50に表示された文章を読んでいるユーザを撮像し、撮像画像を検出部10へ送信する(図6のS1)。ここで、文章が横書きである場合、表示制御部60は表示されている文章が横書きであることを示す区別情報を検出部10に送信する(図6のS2)。検出部10は、区別情報が横書きであることを取得した場合、ユーザの縦方向の動きのみを検出する(図6のS3)。したがって、ユーザが目を左右横方向に動かした場合、検出部10は縦方向の動きのみを検出するため、当該ユーザの目の動きは検出されずに無視される。これに対し、ユーザが目を上下縦方向に、例えば600ミリ秒以内に10cm動かした場合、検出部10は縦方向の動きのみを検出するため、当該ユーザの目の上下動は検出部10によって検出される。そして、検出部10はこの検出結果を処理部20へ送信する(図6のS4)。処理部20は操作条件記憶部30を参照する。ここでは、操作条件記憶部30が図4に記載されたものであるため、ユーザが目を600ミリ秒以内に10cm縦方向に動かした場合には「目の動作」列の「y2−y1:5cm以上:600ミリ秒以内」の条件を満たすことになる。そこで、処理部20はこれに対応する「C*(y2−y1):画面スクロール」(例えばCを1とすれば、画面を10cmスクロール)を操作指示として操作実行部70に送信する(図6のS5)。
【0052】
本実施の形態では、ユーザの意図を正しく反映した操作を実行する操作情報処理装置80、方法、及びプログラムが提供される。特に、文章が横(縦)書きである場合にはユーザの顔や目は横(縦)方向に頻繁に動くため、横(縦)方向の動きを無視し縦(横)方向の動きのみを検出して所定操作と対応付けることにより、ユーザの意図を正しく反映した操作を実行することができる。
【0053】
<実施形態2>本実施の形態の操作情報処理装置80は実施形態1を基本とし、以下の点で相違する。まず、本実施形態の概要の一例について説明する。
【0054】
本実施形態の操作情報処理装置80は、ユーザの注目する表示物が文章であるか否かを判定し、文章である場合にはその文章が縦書きか横書きかに応じて、ユーザの顔または目の動作の検出を制御する。
【0055】
これによれば、ユーザの注目する文章の書式に応じてユーザの顔または目の検出制御を行うことが可能である。
【0056】
以下に、本実施形態の操作情報処理装置80の構成について説明する。
【0057】
図7に、本実施形態のブロック図の一例を示す。操作情報処理装置80は、検出部10、判定部200、処理部20、を備える。操作情報処理装置80は、さらに、操作条件記憶部30、表示制御部60、操作実行部70、撮像部40、表示部50を備えても良い。処理部20、操作条件記憶部30、表示制御部60、操作実行部70、撮像部40、表示部50については第一の実施の形態と概略同様であるから詳細説明は省略する。
【0058】
判定部200は、図示しない目検出部103、目動作検出部104、検出制御部100を備える。目検出部103、目動作検出部104の構成、動作は第一の実施の形態と同様であるから詳細説明は省略する。本実施の形態における判定部200は、ユーザが表示部50上のどの位置に注目しているかを示す注目点を検出するよう構成される。ここで、注目点の算出は種々の公知の方法で行なうことができるので説明を省略する。検出制御部100は、例えば、一定時間間隔毎に目検出部103を起動させ、目検出部103はユーザの注目点がどこにあるかの位置情報を取得する。あるいは、検出制御部100は、目動作検出部104によりユーザの目の移動が所定距離以上行なわれたことを契機にして目検出部103を起動させ、目検出部103はユーザの注目点がどこにあるかの位置情報を取得する。
【0059】
判定部200は、ユーザの注目点の位置情報を取得するとともに、表示制御部60から表示部50に表示されている1以上の表示物の情報をあわせて取得するよう構成される。ここで表示物の情報とは、例えば、表示物の種類が文章であるか否かを示す種類情報、表示物の種類が文章である場合には文章が縦書きか横書きかを示す区別情報、表示部50上の表示物が存在する位置情報などである。なお、表示物の情報は判定部200が表示制御部60から表示データを入力して直接生成しても良い。
【0060】
判定部200は、ユーザの注目点の位置情報と当該注目点位置にある表示物の情報とを比較し、ユーザの注目点位置にある表示物の種類を判定する。判定方法は特段制限されるものではないが、図8を用いて一例を説明する。図8は表示部50の画面例であり、座標(a1、b1)と(a2、b2)で規定される矩形内には表示物1である文章が表示されており、座標(c1、d1)と(c2、d2)で規定される矩形内には表示物2である文章以外の表示物が表示されていることを示している。また、座標(x1、y1)はある時点におけるユーザの注目点であり、(x2、y2)は別の時点におけるユーザの注目点を示している。
【0061】
ユーザの注目点が座標(x1、y1)にある場合を説明する。判定部200は、ユーザの注目点が座標(x1、y1)にあることを取得するとともに、座標(a1、b1)と(a2、b2)で規定される矩形内には文章が表示されていることを表示制御部60から取得する。
【0062】
判定部200は、a1<x1<a2、b1<y1<b2であることを算出し、ユーザの注目点である座標(x1、y1)が座標(a1、b1)と(a2、b2)で規定される矩形内にあることから、ユーザの注目点が表示物1である文章上にあることを判定する。この場合、ユーザは文章に注目していることになるので、判定部200はさらに表示物1の文章が縦書きか横書きであるかの区別情報を表示制御部60からあわせて取得して、当該区別情報を検出部10に送信する。
【0063】
ユーザの注目点が座標(x2、y2)にある場合には同様のステップにより判定部200はユーザの注目点が文章以外の表示物2の上にあることを判定する。この場合、当該判定結果は検出部10に送信しない。
【0064】
検出部10は、図示しない検出制御部100、顔検出部101、顔動作検出部102、目検出部103、目動作検出部104を備える。これら各々の検出部の構成、動作については第一の実施の形態と概略同様であるため詳細を省略する。本実施の形態における検出部10は、判定部200から区別情報を取得し、当該区別情報に応じて検出方法を変更するように構成される。具体的には、ユーザの注目点が文章上にあり、文章が縦(横)書きである旨の区別情報を取得した場合には、ユーザの顔または目の動きのうち横(縦)方向の動きのみを検出部10が検出する。一方、検出部10は、判定部200から区別情報を受信しない場合にはフィルタをかけることなくユーザの動作をそのまま検出する。したがって、検出部10はユーザが文章を見ている場合だけ検出の制御を行うことが可能である。また、検出部10は、表示部50上に複数の文章が表示されている場合には、文章の書式に応じた制御が可能である。例えば、検出部10は、表示部50上に縦書きの文章と横書きの文章とが同時に表示されている場合、ユーザが縦書きの文章に注目しているときにはユーザの顔全体または目の部分のみの動きのうち横方向の動きのみを検出する。検出部10は、ユーザが横書きの文章に注目しているときにはユーザの顔全体または目の部分のみの動きのうち縦方向の動きのみを検出する。
【0065】
以降は、実施形態1と同様に処理部20が操作条件記憶部30を参照し、操作実行部70に操作指示を送信するので詳細説明を省略する。
【0066】
図9は、本実施の形態における操作情報処理装置80の動作フローを示す。判定部200は、撮像部40から得たユーザの目の画像から、表示部50上の注目点座標を検出する(図9のS1)。具体的には、検出制御部100は、一定時間間隔毎に目検出部103を起動させ、目検出部103はユーザの注目点がどこにあるかの位置情報を取得する。あるいは、検出制御部100は、目動作検出部104によりユーザの目の移動が所定距離以上行なわれたことを契機にして、目検出部103を起動させ、目検出部103がユーザの注目点がどこにあるかの位置情報を取得しても良い。判定部200は、当該検出結果と表示制御部60からの表示物の情報とを基に、注目点にある表示物が文章か文章以外の表示物であるかを判定する。判定部200は、注目点にある表示物が文章以外である場合には、区別情報を検出部10に送信しない(図9のS2)。一方、判定部200は、注目点にある表示物が文章である場合には、文章が縦書きか横書きであるかの区別情報を表示制御部60から取得するとともに検出部10へその区別情報を送信する(図9のS3)。検出部10は判定部200から区別情報を取得したか否かを判定する。検出部10は判定部200から区別情報を取得した場合(図9のS4のY)であって、文章が縦(横)書きであるとの区別情報を受けた場合にはユーザの顔全体または目の部分の動きのうち横(縦)方向の動きのみを検出し、処理部へ検出結果を送信する(図9のS5)。一方、検出部10は、判定部200から区別情報を取得しない場合(図9のS4のN)検出部10はフィルタをかけることなくユーザの動作をそのまま検出して、処理部へ検出結果を送信する(図9のS6)。処理部20は、検出部10からの検出内容を取得し、操作条件記憶部30の内容を参照して操作実行部70に操作実行指示を行なう(図9のS7)。
【0067】
本実施の形態では、ユーザの意図を正しく反映した操作を実行する操作情報処理装置、方法、及びプログラムが提供される。特に表示部50上のユーザの注目している位置にある表示物に応じて検出部10がユーザの顔や目の動作検出を決定するため、ユーザの意図を正しく反映した操作を実行することができる。
【0068】
<実施形態3>本実施の形態の操作情報処理装置80は実施形態2を基本とし、以下の点で相違する。まず、本実施形態の概要の一例について説明する。
【0069】
本実施形態の操作情報処理装置80は、ユーザの注目する表示物が文章であるか否かを判定し、文章である場合にはその文章が縦書きか横書きかに応じてユーザの顔または目の動きの検出を検出部10が制御する。この際、検出部10は、ユーザの注目する表示物が文章である場合にはユーザの目の部分の動き検出を中止し、顔全体の動き検出のみを行う。その際、文章が縦書きである場合には顔全体の動きのうち横方向の動きのみを抽出し、文章が横書きである場合には顔全体の動きのうち縦方向の動きのみを抽出する。
【0070】
本実施形態の操作情報処理装置80の構成については、検出部10の機能を除き実施形態2と概略同様であるから検出部10の機能のみを説明する。
【0071】
検出部10は、検出制御部100、顔検出部101、顔動作検出部102、目検出部103、目動作検出部104を備える。これら各々の検出部の機能・構成については第一の実施の形態と概略同様であるため詳細説明は省略する。本実施の形態において検出制御部100は、ユーザの注目点が文章である旨の判定結果を判定部200から取得すると、目動作検出部104の検出機能を中止するよう制御する。これにより、ユーザが文章に注目している場合、検出部10は目の部分の動き検出を行わず、顔全体の動き検出を行う。ここで、検出部10は目検出部103の検出を必ずしも中止する必要はない。つまり、目の動作のうち、目の動きのみを検出せず、その他動作(目が瞬きしているかどうかなどの目の開閉状態)は検出し続けることにしても良い。この場合、例えば、検出部10は両目を5秒間閉じることを検出し、当該結果を処理部20に送ることが可能である。したがって図4の操作条件記憶部30を例にとれば、「両目を5秒間閉じる」に対応する「検出機能中止」を処理部20が操作実行部70に送信することによって、操作実行部70が検出部10自体の機能を中止する操作を行なうことも可能である。
【0072】
図10は、本実施の形態における操作情報処理装置80の動作フローを示す。図10の動作フローにおいて、S4までは実施形態2と同様であるから詳細説明を省略する。S4以降について説明する。検出部10は判定部200から区別情報を取得したか否かを判定する。検出部10は、判定部200から区別情報を取得した場合(図10のS4のY)であって、文章が縦(横)書きであるとの区別情報を判定部200から取得した場合には、ユーザの目の部分の動きの検出を中止し、顔全体の動きのうち横(縦)方向の動きのみを検出して処理部20に送信する(図10のS5)。一方、検出部10は、判定部200から区別情報を取得しない場合(図10のS4のN)、検出部10はフィルタをかけることなくユーザの動作をそのまま検出して、処理部へ検出結果を送信する(図10のS6)。処理部20は、検出部10からの検出内容を取得し、操作条件記憶部30の内容を参照して操作実行部70に操作実行指示を行なう(図10のS7)。
【0073】
次に図10を用いて具体例をもとに動作を説明する。ここでは、操作条件記憶部30が図5に示すものである場合について、ユーザがブラウザに表示された横書き文章を閲覧している場合を例に説明する。まず、撮像部40は表示部50に表示されたコンテンツを見ているユーザを撮像し、撮像画像を判定部200へ配信する。判定部200は、表示部50上のユーザの注目点情報を取得するとともに、表示制御部60から表示物の情報を取得し、表示部50上のユーザの注目点にある表示物が文章か否かを判定して検出部10に送信する。本例の場合、ユーザの注目しているコンテンツが文章であって横書きであると判定部200が判定するため、判定部200はその区別情報を検出部10に送信する(図10のS3)。検出部10は、文章の区別情報が横書きであることを取得した場合、ユーザの目の部分の動き検出を中止して顔全体の縦方向の動きのみを検出し、検出結果を処理部20へ送信する(図10のS4、S5)。したがって、ユーザが目のみを上下左右等に動かした場合、検出部10はユーザの目の動きは検出しない。これに対しユーザが顔全体を上下縦方向に、例えば600ミリ秒以内に10cm動かした場合、ユーザの顔の上下の動きが検出部10によって検出される。そして、検出部10はこの検出結果を処理部20へ送信する(図10のS5)。処理部20は操作条件記憶部30を参照する。ここでは、操作条件記憶部30が図5に記載されたものであるため、ユーザが顔を600ミリ秒以内に10cm縦方向に動かした場合には「顔の動作」列の「y2−y1:5cm以上:600ミリ秒以内」の条件を満たすことになる。そこで、処理部20はこれに対応する「C*(y2−y1):画面スクロール」(例えばCを1とすれば、画面を10cmスクロール)を操作指示として操作実行部70に送信する(図10のS7)。
【0074】
本実施の形態では、ユーザの意図を正しく反映した操作を実行する操作情報処理装置、方法、及びプログラムが提供される。特に、表示部50上のユーザの注目する表示物が文章である場合、検出部10はユーザの目の部分の動き検出を中止して顔全体の動き検出のみを行い、文章が縦(横)書きである場合には顔全体の動きのうち横(縦)方向の動きのみを抽出する。このように、ユーザが文章を読む場合に頻繁に動く目の部分の動きを検出することなく、顔全体の横(縦)方向の動きのみを検出して所定操作と対応付けるため、ユーザの意図を正しく反映した操作を実行することができる。
【0075】
以上、実施形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解しうる様々な変更をすることができる。
【符号の説明】
【0076】
10 検出部
20 処理部
30 操作条件記憶部
40 撮像部
50 表示部
60 表示制御部
70 操作実行部
80 操作情報処理装置
100 検出制御部
101 顔検出部
102 顔動作検出部
103 目検出部
104 目動作検出部
200 判定部
【技術分野】
【0001】
本発明は、操作情報処理装置、方法及びプログラムに関する。
【背景技術】
【0002】
マウスなどのポインティングデバイスは、PC(Personal computer)などコンピュータの入力装置として、主に画面上に表示されるポインタやアイコンなどを操作するために用いられている。
【0003】
また、ポインティングデバイスは、ディスプレイに映し出されるポインタやアイコン、ボタン等に対して直感的な入力操作を提供するGUI(Graphical User Interface)環境において、ポインタの移動やボタンの押下といった操作を要求するために用いられている。
【0004】
しかし、ポインティングデバイスは、ユーザが直接自らの手を用いて操作する必要があるため、身体的障害、怪我等により手が不自由な操作者が操作するのに不便であるという問題があった。
【0005】
このような問題点を解決する技術の一例が特許文献1に記載されている。特許文献1に記載のポインティングデバイスを実現する動体検出装置は、動体の動きに対応する物理量を時系列的に受け付ける受付手段と、該受付手段が所定時間にわたって受け付けた物理量を所定の座標系における座標に変換する変換手段と、該変換手段が変換した前記座標の変動に基づいて前記動体の動きを検出する手段とを備え、前記変換手段が変換した複数の座標を記憶する手段と、前記複数の座標が包含される前記座標系上の空間を算出する算出手段と、前記空間が算出された後に前記受付手段が受け付けた物理量を変換した座標が、前記空間に包含されるか否かを判断する手段と、前記空間に包含されると判断した場合、前記動体は停止していると判断する手段とを備える。
【0006】
また、別の一例が特許文献2に記載されている。特許文献2記載のポインタ制御信号発生方法は、ポインティングデバイスからの信号によりディスプレイに表示されるポインタの位置制御インタフェース及びポインタ位置と関連づけられたユーザの押しボタンによる動作指示をソフトウエアに伝達するインタフェースを有するシステムに対し制御信号を発生する方法であって、頭部の移動を検知し移動量情報を作成するステップと、左眼及び右眼の開閉を検出し開閉情報を作成するステップと、左右の眼の開閉情報をポインティングデバイスの左右の押しボタンスイッチの押下状態情報に対応づけるステップと、前記移動量情報及び押下状態情報を制御信号として出力するステップとからなる。
【先行技術文献】
【特許文献】
【0007】
【特許文献1】特許第4411387号
【特許文献2】特開2005−352580
【発明の概要】
【発明が解決しようとする課題】
【0008】
上述の特許文献記載の技術は、表示画面に表示されるコンテンツ等表示物に関わらず、専らユーザの顔または目の動きのみによって、ポインティングデバイス等に関する操作内容を決定する。したがって、装置が、ユーザの意図を正しく反映しない操作を実行してしまうという問題がある。
【0009】
このため、本発明の目的は、ユーザの意図を正しく反映した操作を実行する操作情報処理装置、方法及びプログラムを提供することである。
【課題を解決するための手段】
【0010】
かかる目的を達成するため、本発明の一形態は、操作情報処理装置であって、表示手段に表示される表示物である文章が縦書きか横書きかの区別情報の取得と、前記文章をユーザが見ることができる位置に存在する前記ユーザの顔または目を撮像する撮像手段によって撮像された画像入力と、前記画像からの前記ユーザの顔または目の動作の検出と、を行ない、前記区別情報が縦書きの場合は前記動作のうち横方向の動きを抽出し、前記区別情報が横書きの場合は前記動作のうち縦方向の動きを抽出して出力する検出手段と、前記検出手段が出力した動きによって決定される所定の操作指示を、前記操作指示を実行する操作手段に送信する処理手段と、を備える。
【0011】
また、本発明によれば、表示手段に表示される表示物である文章が縦書きか横書きかの区別情報の取得と、前記文章をユーザが見ることができる位置に存在する前記ユーザの顔または目を撮像する撮像手段によって撮像された画像入力と、前記画像からの前記ユーザの顔または目の動作の検出と、を行ない、前記区別情報が縦書きの場合は前記動作のうち横方向の動きを抽出し、前記区別情報が横書きの場合は前記動作のうち縦方向の動きを抽出して出力する検出ステップと、前記検出手段が出力した動きによって決定される所定の操作指示を、前記操作指示を実行する操作手段に送信する処理ステップと、をコンピュータに実行させる操作情報処理プログラムが提供される。
【0012】
また、本発明によれば、表示手段に表示される表示物である文章が縦書きか横書きかの区別情報の取得と、前記文章をユーザが見ることができる位置に存在する前記ユーザの顔または目を撮像する撮像手段によって撮像された画像入力と、前記画像からの前記ユーザの顔または目の動作の検出と、を行ない、前記区別情報が縦書きの場合は前記動作のうち横方向の動きを抽出し、前記区別情報が横書きの場合は前記動作のうち縦方向の動きを抽出して出力する検出ステップと、前記検出手段が出力した動きによって決定される所定の操作指示を、前記操作指示を実行する操作手段に送信する処理ステップと、を行なう操作情報処理方法が提供される。
【発明の効果】
【0013】
本発明によれば、ユーザの意図を正しく反映した操作を実行する操作情報処理装置、方法及びプログラムが提供される。
【図面の簡単な説明】
【0014】
【図1】第一の実施の形態の概要を説明するための概略図である。
【図2】第一の実施の形態の操作情報処理装置80のブロック図の一例を示す図である。
【図3】第一の実施の形態の検出制御部100の機能を説明するための図である。
【図4】第一の実施の形態の操作条件記憶部30の一例を示す図である。
【図5】第一の実施の形態の操作条件記憶部30の一例を示す図である。
【図6】第一の実施の形態の動作の一例を示す図である。
【図7】第二、第三の実施の形態の操作情報処理装置80のブロック図の一例を示す図である。
【図8】第二の実施の形態の表示部50の一例を示す図である。
【図9】第二の実施の形態の動作の一例を示す図である。
【図10】第三の実施の形態の動作の一例を示す図である。
【発明を実施するための形態】
【0015】
まず、図1を用いて、本発明の概要の一例について説明する。
【0016】
図1の操作情報処理装置80には、カメラ等の撮像部40とディスプレイ等の表示部50とが接続される。ユーザに使用されている表示部50には文章、アイコンなどコンテンツが表示される。撮像部40はユーザの顔全体または目の部分のみあるいはその両方を撮像し、操作情報処理装置80へ撮像画像を送信する。表示部50に文章が表示されている場合、操作情報処理装置80はユーザの顔全体または目の部分のみあるいはその両方の動きの検出制御を行う。具体的には、操作情報処理装置80は、文章が縦(横)書きである場合には、ユーザの顔または目の動きのうち横(縦)方向のみを抽出する。操作情報処理装置80は、抽出した動きによって決定される所定の操作指示を操作実行部70に送信する。
【0017】
このような構成によれば、本発明にかかる操作情報処理装置80はユーザの意図を正しく反映した操作を実行することができる。本発明は、文章が横(縦)書きである場合にはユーザの目は横(縦)方向に頻繁に動くため、横(縦)方向の動きを無視して縦(横)方向の動きのみを検出して所定操作と対応付けることにより、ユーザの意図を正しく反映しやすい操作情報処理装置、方法、及びプログラムを提供することができる。
【0018】
以下、本発明の実施の形態について、図面を用いて説明する。
すべての図面において、同様な構成要素には同様の符号を付し、適宜説明を省略する。
【0019】
なお、各実施形態の操作情報処理装置80を構成する各部は、制御部、メモリ、メモリにロードされたプログラム、プログラムを格納するハードディスク等の記憶ユニット、ネットワーク接続用インターフェースなどからなり、ハードウェアとソフトウェアの任意の組合せによって実現される。そして特に断りのない限り、その実現方法、装置は限定されない。
【0020】
制御部はCPU(Central Processing Unit)などからなり、オペレーティングシステムを動作させて操作情報処理装置80の全体を制御するとともに、例えばドライブ装置などに装着された記録媒体からメモリにプログラムやデータを読み出し、これにしたがって各種の処理を実行する。
【0021】
記録媒体は、例えば光ディスク、フレキシブルディスク、磁気光ディスク、外付けハードディスク、半導体メモリ等であって、コンピュータプログラムをコンピュータ読み取り可能に記録する。また、コンピュータプログラムは、通信網に接続されている図示しない外部コンピュータからダウンロードされても良い。
【0022】
また、各実施形態の説明において利用するブロック図は、ハードウェア単位の構成ではなく、機能単位のブロックを示している。これらの機能ブロックはハードウェア、ソフトウェアの任意の組み合わせによって実現される。また、これらの図においては、各実施形態の構成部は物理的に結合した一つの装置により実現されるよう記載されている場合もあるが、その実現手段はこれに限定されない。すなわち、二つ以上の物理的に分離した装置を有線または無線で接続し、これら複数の装置により、各実施形態のシステムを実現してもよい。
【0023】
<実施形態1>以下、第一の実施の形態の構成例について説明する。
図2に、本実施の形態の操作情報処理装置80のブロック図の一例を示す。
【0024】
操作情報処理装置80は、検出部10、処理部20を備える。さらに、操作条件記憶部30、表示制御部60、操作実行部70、撮像部40、表示部50を備えても良い。
【0025】
表示部50は、液晶ディスプレイ、有機EL(Electro-Luminescence)ディスプレイ、CRT(Cathode Ray Tube)等の表示装置である。表示部50には、マウスポインタやブラウザ、各種コンテンツなどの表示物が表示される。
【0026】
表示制御部60は、表示部50に表示されるコンテンツなどの表示物が文章である場合、その文章が縦書きか横書きかを区別し、検出部10に当該区別情報を送信する機能を有する。表示制御部60は、例えば、ブラウザに表示されるHTML(Hyper Text Markup Language)文章の書式タグを定期的に取得することで、表示されている文章が縦書きか横書きかを判定することができる。表示制御部60は、表示部50に複数のウィンドウが表示されている場合には、トップのウィンドウに表示される文章の書式のみを取得するようにしても良い。表示制御部60は、表示部50に表示される文章が縦書きであるか横書きであるかの区別情報を検出部10に受け渡す。なお、区別情報は後述する検出部10が生成するように構成されていても良い。
【0027】
検出部10は、図示しない検出制御部100、顔検出部101、顔動作検出部102、目検出部103、目動作検出部104を備える。
【0028】
顔検出部101は、撮像部40によって撮影されたユーザの顔を検出する。顔検出部101の行なう顔検出は種々の方法で行なうことができる。例えば、顔検出部101は、撮像部40で撮像されたエリアの中で、予め用意した人物の顔の向きに関する輪郭情報、まゆげ、目、鼻、口などのパーツ情報、色情報等のモデルパターンを用い、これらと特徴が近い領域をテンプレートマッチングを用いて検出することで顔および顔の向きを検出することができる。あるいは、顔検出部101は、肌の色に近い領域を検出し、その領域を顔として検出する手法、または、ニューラルネットワークを使って教師信号による学習を行い、顔らしい領域を顔として検出する手法を用いても良い。あるいは、顔検出部101は、顔や額にマーカを取り付け、撮像部40にてマーカの位置を検出しても良い。
【0029】
顔動作検出部102は、顔検出部101によって検出された顔の動きを判定する機能を有する。顔動作検出部102の行なう顔の動き検出は種々の方法で行なうことができる。例えば顔動作検出部102は、顔検出部101によって検出された顔の向きに関するデータを連続して取得し、顔の向きが上下や左右に変化していることを検出する。この際、顔動作検出部102は、両目の位置、大きさなどの情報を合わせて用いることで顔の向きを判定しても良い。例えば、顔動作検出部102は両目の位置が略平行で大きさも略同一である場合には、ユーザが正面を向いていると判定し、片方の目が小さい場合には顔が左右の一方を向いていると判定しても良い。あるいは、顔動作検出部102は鼻パーツ等の向きが変化していることを検出して、顔の動きを判定しても良い。あるいは、顔動作検出部102は前述した顔や額に取り付けたマーカの変化量を検出して、顔の動きを判定しても良い。顔動作検出部102は、一定時間ユーザの顔の動きを撮影し、上記のマッチングを連続してあるいは一定時間毎に行ない時系列データを得ることで、顔が上下左右、斜めに動いている状態を判定することができる。
【0030】
目検出部103は、撮像部40によって撮影された操作情報処理装置80のユーザの目を検出する。目検出部103の行なう目検出は種々の方法で行なうことができる。例えば、目検出部103は、撮像部40で撮像された眼球画像からテンプレートマッチング等により虹彩あるいは瞳孔のエッジ部を抽出して円近似を行ない、当該円の中心点を算出して目の位置として検出しても良い。
【0031】
目動作検出部104は、目検出部103によって検出された目の動きを判定する機能を有する。目動作検出部104の行なう目の動き検出は種々の方法で行なうことができる。例えば、目動作検出部104は、前述のように虹彩あるいは瞳孔のエッジ部を抽出して円近似を行ない、当該円の中心点を算出して目の位置として検出された目の位置データを取得し、その中心点の変位量から視線方向を検出しても良い。この際、目動作検出部104は、目の調整微動を無視するために、一定以上の変位量を検知した場合にのみ視線方向が変化したと判定してもよい。また、目動作検出部104は、一定時間ユーザの目の動きを撮影し、上記のマッチングを連続してあるいは一定時間毎に行ない時系列データを得ることで、視線が上下左右、斜め方向に動いている状態を判定することができる。
【0032】
検出制御部100は、表示制御部60によって取得される文章の書式に関する区別情報を基に、上述の顔動作検出部102、目動作検出部104の検出を制御する。具体的には、区別情報が縦書きである場合、検出制御部100は、顔動作検出部102、目動作検出部104が縦方向の動き検出を中止し、横方向の動きのみを検出するよう制御する。また、区別情報が横書きである場合、検出制御部100は、顔動作検出部102、目動作検出部104が横方向の動き検出を中止し、縦方向の動きのみを検出するよう制御する。なお、区別情報は検出制御部100が表示制御部60から表示データを入力して生成し、当該区別情報を基に上述の顔動作検出部102、目動作検出部104の検出制御を行なっても良い。
【0033】
図3を用いて検出制御部100の機能を説明する。図3は、表示部50を見ているユーザの目が向いているあるいは顔の正面が向いている、表示部50内の点が座標(x1、y1)から座標(x2、y2)に移動したことを示している。ここで、座標系の取り方は特段限定されるものではないが、ここでは通常のユークリッド座標系を用い、横方向をx軸、縦方向をy軸として説明する。
【0034】
検出制御部100は、表示部50に表示されている文章が横書きであることを表示制御部60から取得した場合、顔動作検出部102、目動作検出部104が横方向の動きを検出しないよう制御する。すなわち、検出制御部100は、横方向の動きx2−x1(x座標の始点x1から終点x2への動きを示す。以下同様。)と縦方向の動きy2−y1(y座標の始点y1から終点y2への動きを示す。以下同様。)のうち、y方向の動きy2−y1のみを検出する。そして、検出制御部100は、縦方向の動きy2−y1を検出結果として後述の処理部20に受け渡す。
【0035】
また、検出制御部100は、表示部50に表示されている文章が縦書きであることを表示制御部60から取得した場合、顔動作検出部102、目動作検出部104が縦方向の動きを検出しないよう制御する。すなわち、検出制御部100は、横方向の動きx2−x1と縦方向の動きy2−y1のうち、縦方向の動きx2−x1のみを検出する。そして、検出制御部100は横方向の動きx2−x1を検出結果として後述の処理部20に受け渡す。
【0036】
なお、上記検出の制御はあくまでもユーザの顔または目の移動に対し行なわれるものであって、検出制御部100は、ユーザの目の開閉に関する動作に関してはフィルタをかけることなく動作をそのまま検出することとしても良い。
【0037】
また、検出制御部100は、所定時間に所定距離以上顔や目が移動した場合のみ検出部10の検出対象としても良い。例えば所定時間内(600ミリ秒など。特段制限はない。)に所定の距離(1cmなど。特段制限はない。)以上、顔や目の移動が行われた場合のみ検出対象となるように検出制御部100が顔動作検出部102、目動作検出部104を制御しても良い。これにより、検出部10は、ユーザによって顔や目の意図しない微動や動作を検出することを防止することができる。
【0038】
処理部20は、検出部10によって検出された顔または目の動作の種類(動作が動きである場合には大きさ、方向、時間等を含む。)に応じて後述の操作条件記憶部30を参照し、動作に応じた所定操作指示を操作実行部70に送信する機能を有する。所定操作とは、例えば後述の表示部50に表示される表示物であるマウスポインタの移動やクリック、画面のスクロール、モード切替、その他コンピュータへの各種操作である。処理部20は、検出部10によって検出された顔または目の動作の種類を検出部10から取得し、操作条件記憶部30を参照する。そして、処理部20は、操作条件記憶部30で定義されている条件が満たされたと判定したとき、当該条件に対応する所定の処理操作指示を操作実行部70に送信する。なお、操作条件は操作条件記憶部30の代わりに処理部20が有していても良い。また、処理部20が、検出部10から得たユーザの顔または目の動作から演算して操作指示を生成し、操作実行部70に出力することにしても良い。
【0039】
操作条件記憶部30は、顔または目の動作と所定操作とを対応付けて記憶する。ここで、顔または目の動作とは、ユーザの顔全体または目の部分のみあるいはその両方の動き、その他動作である。ここで、動きとは、始点と終点とが定まる顔全体または目の部分のみあるいはその両方の、一定距離以上の移動等である。例えば、顔の正面または目の視点が一定時間ある位置に留まる場合に、その位置が始点または終点である。具体的には、顔検出部101や目検出部103がユーザの顔の正面の位置または目の視点の位置と、その位置に留まる時間とを検出することでユーザの動きの始点と終点とを検出しても良い。また、その他動作とは、目の瞬きやテンプレートマッチングによって判定される顔の左右動等である。操作条件記憶部30は、例えば、上述した目の向いているあるいは顔の正面が向いている、表示部50内の点の座標位置の変化が所定時間以内に行われた場合を動作として記憶するとともに、当該動作に対する所定操作を対応付けて記憶している。
【0040】
図4は、操作条件記憶部30の一例を示す図である。ここでは操作条件記憶部30は、「目の動作」列、「操作」列を有する。なお、後述のとおり操作条件記憶部30は、「目の動作」列の代わりに「顔の動作」列を設けてもよいし、「目の動作」列とともに「顔の動作」列を設けてもよい。以下では、図4の操作条件記憶部30を例に説明する。
【0041】
「目の動作」列は、横あるいは縦方向の目の位置の移動が所定時間内に行われた場合や目の開閉状態を目の動作として格納する。例えば、「y2−y1:5cm以上:600ミリ秒以内」は、ユーザの目が600ミリ秒以内に1cm以上縦方向に移動した状態を示す。また、「x2−x1:5cm以上:600ミリ秒以内」は、ユーザの目が600ミリ秒以内に5cm以上横方向に移動した状態を示す。また、「左目を一秒間閉じて開く」はユーザが左目を一秒間閉じて開くことを示す。
【0042】
「操作」列は、「目の動作」列の動作がユーザによって行なわれた場合に、それに対応して処理部20が操作実行部70に出力する操作指示の内容を格納する。例えば、図4を参照すると、「目の動作」列が「y2−y1:5cm以上:600ミリ秒以内」である場合、それに対応する「操作」列は「c*(y2−y1):画面をスクロール」である。これは、ユーザの目の動作が600ミリ秒以内に縦方向に5cm以上y2−y1だけ動いた場合に、c*(y2−y1)だけ画面を縦方向にスクロールするための操作指示を、処理部20が操作実行部70に出力することを示す。ここでcは定数である。また、ユーザがパラメータとしてcを任意に設定可能である。
【0043】
また、図4において「目の動作」列の「左目を一秒間閉じて開く」に対応する「操作」列は「マウス左クリック」である。これは、ユーザの目の動作が1秒間左目を閉じてから開くものである場合にマウスの左クリックを意味する操作指示を処理部20が操作実行部70に出力することを示す。また、「目の動作」列の「両目を5秒間閉じる」に対応する「操作」列は「検出機能中止」である。これは、ユーザが両目を5秒間閉じた場合に検出部10の検出機能の中止を意味する操作指示を処理部20が操作実行部70に出力することを意味する。同様に、処理部20は、「目の動作」列が「両目瞬きを三回繰り返す」である場合、それに対応するマウスとペンタブレットのモードの切替えを意味する操作指示を操作実行部70に出力する。処理部20は、「目の動作」列が「ペンタブレット状態で右目を2秒閉じる」である場合、それに対応するペンタブレットの筆圧の変更を意味する操作指示を操作実行部70に出力する。処理部20は、「目の動作」列が「ペンタブレット状態で右目を閉じながら左目を移動」である場合にはそれに対応するポインティング先への描画操作指示を操作実行部70に出力する。
【0044】
なお、「目の動作」列の内容について、上述の目の動作の内容、目の移動距離、動作を行う所定時間、それらに対応する操作等はユーザが適宜設定可能としても良い。例えば、操作条件記憶部30は、「目の動作」列「y2−y1:5cm以上:600ミリ秒以内」に対応する「操作」列を「c*(x2−x1):マウスポインタを動かす」とし、マウスのポインタ移動を所定操作として記憶できるようにしても良い。
【0045】
また、ユーザは、図示しない入力手段を介して、あるいは予め、操作条件記憶部30の「目の動作」列を複数設けても良いし、それら複数の動作に対応する「操作」列の内容も適宜変更可能としても良い。例えば、ユーザは、操作条件記憶部30の「目の動作」列を2列設け、そのうちの1つを「左目を閉じる」とし、それに対応する他の1つを「右目の視線を動かす:1cm以上」とし、それに対応する「操作」列の1つを「ドラッグ」とすることができる。これにより、ユーザが左目を閉じて右目の視線を1cm以上動かした場合には、マウスのドラッグを意味する操作指示を処理部20が操作実行部70に出力するようにしても良い。
【0046】
なお、ユーザは、図示しない入力手段を介して、あるいは予め、操作条件記憶部30の「目の動作」列の代わりに顔の動作を格納する「顔の動作」列を設けても良い。この場合には上述の「目の動作」列の場合と同様に、「顔の動作」列にはユーザの顔動作が格納され、「操作」列には顔の動作に対応する所定操作が格納される。この場合には、処理部20が、顔の動作に対応する所定操作指示を操作実行部70に出力する。
【0047】
図5は操作条件記憶部30の他の一例を示す図である。図5のように操作条件記憶部30は、「目の動作」列とともに顔の動作を格納する「顔の動作」列を設けても良い。この場合には、操作条件記憶部30は、目の動作と顔の動作の両方の検出結果と所定操作とを対応付けることが可能である。例えば、操作条件記憶部30は、「目の動作」列の一つを「左目を閉じる」とし、それに対応する「顔の動作」列の一つを「顔を左右に動かす」とし、それらの条件を「and」とし、それに対応する「操作」列の一つを「ブラウザの戻る」とすることができる。これにより、ユーザが左目を閉じながら顔を左右に振ればブラウザの戻る機能が操作実行部70により実行されるようにすることが可能である。また、図5の2行目のように、操作条件記憶部30は、「目の動作」列と「顔の動作」列をともに「x2−x1:1cm以上:600ミリ秒以内」とし、条件列を「or」とすることもできる。この場合、目の動作と顔の動作のどちらか一方で600ミリ秒以内に1cm以上の顔の動きが検出された場合に条件が満たされたと処理部20が判定し、これに対応する所定操作指示を操作実行部70に出力するようにしても良い。
【0048】
撮像部40は、CCD(Charge Coupled Device)カメラ、アナログまたはデジタルのビデオカメラ等であって、ユーザの顔の全体または目の部分のみ、あるいはその両方を撮影する機能を有するよう構成される。なお、操作情報処理装置80は、顔検出用撮像装置と目検出用撮像装置とを別個に備えても良い。また、撮像部40は、後述の表示部50の上部などのユーザを撮影しやすい位置に設置されることが望ましいが、表示部50上の文章を見ることができる位置にいるユーザを撮像できるならばその設置箇所は制限されない。また、撮像部40はユーザ位置検出機能をさらに備えており、撮像部40がユーザの位置を検出してユーザ方向を自動的に向くように構成されてもよい。
【0049】
操作実行部70は、処理部20の操作指示を受け、当該操作指示に対応する所定の操作を実行する。例えば、操作実行部70は、OS(Operating System)が一般的にマウス等からユーザの操作指示(アイコン、ボタン等の選択、スクロールバーのドラッグ、コマンド等)を入力する代わりに、操作指示を処理部20から取得し、当該操作指示に対応する所定操作を実行する。すなわち、操作実行部70は処理部20から操作指示を受け付けるように拡張されたOSが一般的に備える操作コマンド実行部あるいはユーザインタフェース部等である。
【0050】
次に、本実施の形態における発明の動作について図6を用いて説明する。まず、表示部50に表示される文章を見ることが可能な位置にいるユーザを撮像する撮像部40がユーザの顔全体または目の部分のみあるいはそれら両方を撮像し、撮像画像を検出部10へ送信する(図6のS1)。表示部50に文章が表示されているとき、表示制御部60は表示部50に表示されている文章が縦書きか横書きであるかの区別情報を検出部10へ送信する(図6のS2)。次に検出部10は当該区別情報を基に、検出方法を変更する(図6のS3)。具体的には、区別情報が縦書きである場合には、上述の方法によって顔動作検出部102または目動作検出部104は横方向の動きのみを抽出し、区別情報が横書きである場合には縦方向の動きのみを抽出する。次に、検出部10は検出した結果を処理部20へ送信する(図6のS4)。処理部20は操作条件記憶部30に格納された条件を参照し、受信した検出結果に対応する所定操作指示を操作実行部70に送信する(図6のS5)。
【0051】
次に図6を用いて具体例を基に動作を説明する。ここでは、操作条件記憶部30が図4に示すものである場合であって、ユーザがブラウザに表示された文章を閲覧している場合を例に説明する。まず、撮像部40は表示部50に表示された文章を読んでいるユーザを撮像し、撮像画像を検出部10へ送信する(図6のS1)。ここで、文章が横書きである場合、表示制御部60は表示されている文章が横書きであることを示す区別情報を検出部10に送信する(図6のS2)。検出部10は、区別情報が横書きであることを取得した場合、ユーザの縦方向の動きのみを検出する(図6のS3)。したがって、ユーザが目を左右横方向に動かした場合、検出部10は縦方向の動きのみを検出するため、当該ユーザの目の動きは検出されずに無視される。これに対し、ユーザが目を上下縦方向に、例えば600ミリ秒以内に10cm動かした場合、検出部10は縦方向の動きのみを検出するため、当該ユーザの目の上下動は検出部10によって検出される。そして、検出部10はこの検出結果を処理部20へ送信する(図6のS4)。処理部20は操作条件記憶部30を参照する。ここでは、操作条件記憶部30が図4に記載されたものであるため、ユーザが目を600ミリ秒以内に10cm縦方向に動かした場合には「目の動作」列の「y2−y1:5cm以上:600ミリ秒以内」の条件を満たすことになる。そこで、処理部20はこれに対応する「C*(y2−y1):画面スクロール」(例えばCを1とすれば、画面を10cmスクロール)を操作指示として操作実行部70に送信する(図6のS5)。
【0052】
本実施の形態では、ユーザの意図を正しく反映した操作を実行する操作情報処理装置80、方法、及びプログラムが提供される。特に、文章が横(縦)書きである場合にはユーザの顔や目は横(縦)方向に頻繁に動くため、横(縦)方向の動きを無視し縦(横)方向の動きのみを検出して所定操作と対応付けることにより、ユーザの意図を正しく反映した操作を実行することができる。
【0053】
<実施形態2>本実施の形態の操作情報処理装置80は実施形態1を基本とし、以下の点で相違する。まず、本実施形態の概要の一例について説明する。
【0054】
本実施形態の操作情報処理装置80は、ユーザの注目する表示物が文章であるか否かを判定し、文章である場合にはその文章が縦書きか横書きかに応じて、ユーザの顔または目の動作の検出を制御する。
【0055】
これによれば、ユーザの注目する文章の書式に応じてユーザの顔または目の検出制御を行うことが可能である。
【0056】
以下に、本実施形態の操作情報処理装置80の構成について説明する。
【0057】
図7に、本実施形態のブロック図の一例を示す。操作情報処理装置80は、検出部10、判定部200、処理部20、を備える。操作情報処理装置80は、さらに、操作条件記憶部30、表示制御部60、操作実行部70、撮像部40、表示部50を備えても良い。処理部20、操作条件記憶部30、表示制御部60、操作実行部70、撮像部40、表示部50については第一の実施の形態と概略同様であるから詳細説明は省略する。
【0058】
判定部200は、図示しない目検出部103、目動作検出部104、検出制御部100を備える。目検出部103、目動作検出部104の構成、動作は第一の実施の形態と同様であるから詳細説明は省略する。本実施の形態における判定部200は、ユーザが表示部50上のどの位置に注目しているかを示す注目点を検出するよう構成される。ここで、注目点の算出は種々の公知の方法で行なうことができるので説明を省略する。検出制御部100は、例えば、一定時間間隔毎に目検出部103を起動させ、目検出部103はユーザの注目点がどこにあるかの位置情報を取得する。あるいは、検出制御部100は、目動作検出部104によりユーザの目の移動が所定距離以上行なわれたことを契機にして目検出部103を起動させ、目検出部103はユーザの注目点がどこにあるかの位置情報を取得する。
【0059】
判定部200は、ユーザの注目点の位置情報を取得するとともに、表示制御部60から表示部50に表示されている1以上の表示物の情報をあわせて取得するよう構成される。ここで表示物の情報とは、例えば、表示物の種類が文章であるか否かを示す種類情報、表示物の種類が文章である場合には文章が縦書きか横書きかを示す区別情報、表示部50上の表示物が存在する位置情報などである。なお、表示物の情報は判定部200が表示制御部60から表示データを入力して直接生成しても良い。
【0060】
判定部200は、ユーザの注目点の位置情報と当該注目点位置にある表示物の情報とを比較し、ユーザの注目点位置にある表示物の種類を判定する。判定方法は特段制限されるものではないが、図8を用いて一例を説明する。図8は表示部50の画面例であり、座標(a1、b1)と(a2、b2)で規定される矩形内には表示物1である文章が表示されており、座標(c1、d1)と(c2、d2)で規定される矩形内には表示物2である文章以外の表示物が表示されていることを示している。また、座標(x1、y1)はある時点におけるユーザの注目点であり、(x2、y2)は別の時点におけるユーザの注目点を示している。
【0061】
ユーザの注目点が座標(x1、y1)にある場合を説明する。判定部200は、ユーザの注目点が座標(x1、y1)にあることを取得するとともに、座標(a1、b1)と(a2、b2)で規定される矩形内には文章が表示されていることを表示制御部60から取得する。
【0062】
判定部200は、a1<x1<a2、b1<y1<b2であることを算出し、ユーザの注目点である座標(x1、y1)が座標(a1、b1)と(a2、b2)で規定される矩形内にあることから、ユーザの注目点が表示物1である文章上にあることを判定する。この場合、ユーザは文章に注目していることになるので、判定部200はさらに表示物1の文章が縦書きか横書きであるかの区別情報を表示制御部60からあわせて取得して、当該区別情報を検出部10に送信する。
【0063】
ユーザの注目点が座標(x2、y2)にある場合には同様のステップにより判定部200はユーザの注目点が文章以外の表示物2の上にあることを判定する。この場合、当該判定結果は検出部10に送信しない。
【0064】
検出部10は、図示しない検出制御部100、顔検出部101、顔動作検出部102、目検出部103、目動作検出部104を備える。これら各々の検出部の構成、動作については第一の実施の形態と概略同様であるため詳細を省略する。本実施の形態における検出部10は、判定部200から区別情報を取得し、当該区別情報に応じて検出方法を変更するように構成される。具体的には、ユーザの注目点が文章上にあり、文章が縦(横)書きである旨の区別情報を取得した場合には、ユーザの顔または目の動きのうち横(縦)方向の動きのみを検出部10が検出する。一方、検出部10は、判定部200から区別情報を受信しない場合にはフィルタをかけることなくユーザの動作をそのまま検出する。したがって、検出部10はユーザが文章を見ている場合だけ検出の制御を行うことが可能である。また、検出部10は、表示部50上に複数の文章が表示されている場合には、文章の書式に応じた制御が可能である。例えば、検出部10は、表示部50上に縦書きの文章と横書きの文章とが同時に表示されている場合、ユーザが縦書きの文章に注目しているときにはユーザの顔全体または目の部分のみの動きのうち横方向の動きのみを検出する。検出部10は、ユーザが横書きの文章に注目しているときにはユーザの顔全体または目の部分のみの動きのうち縦方向の動きのみを検出する。
【0065】
以降は、実施形態1と同様に処理部20が操作条件記憶部30を参照し、操作実行部70に操作指示を送信するので詳細説明を省略する。
【0066】
図9は、本実施の形態における操作情報処理装置80の動作フローを示す。判定部200は、撮像部40から得たユーザの目の画像から、表示部50上の注目点座標を検出する(図9のS1)。具体的には、検出制御部100は、一定時間間隔毎に目検出部103を起動させ、目検出部103はユーザの注目点がどこにあるかの位置情報を取得する。あるいは、検出制御部100は、目動作検出部104によりユーザの目の移動が所定距離以上行なわれたことを契機にして、目検出部103を起動させ、目検出部103がユーザの注目点がどこにあるかの位置情報を取得しても良い。判定部200は、当該検出結果と表示制御部60からの表示物の情報とを基に、注目点にある表示物が文章か文章以外の表示物であるかを判定する。判定部200は、注目点にある表示物が文章以外である場合には、区別情報を検出部10に送信しない(図9のS2)。一方、判定部200は、注目点にある表示物が文章である場合には、文章が縦書きか横書きであるかの区別情報を表示制御部60から取得するとともに検出部10へその区別情報を送信する(図9のS3)。検出部10は判定部200から区別情報を取得したか否かを判定する。検出部10は判定部200から区別情報を取得した場合(図9のS4のY)であって、文章が縦(横)書きであるとの区別情報を受けた場合にはユーザの顔全体または目の部分の動きのうち横(縦)方向の動きのみを検出し、処理部へ検出結果を送信する(図9のS5)。一方、検出部10は、判定部200から区別情報を取得しない場合(図9のS4のN)検出部10はフィルタをかけることなくユーザの動作をそのまま検出して、処理部へ検出結果を送信する(図9のS6)。処理部20は、検出部10からの検出内容を取得し、操作条件記憶部30の内容を参照して操作実行部70に操作実行指示を行なう(図9のS7)。
【0067】
本実施の形態では、ユーザの意図を正しく反映した操作を実行する操作情報処理装置、方法、及びプログラムが提供される。特に表示部50上のユーザの注目している位置にある表示物に応じて検出部10がユーザの顔や目の動作検出を決定するため、ユーザの意図を正しく反映した操作を実行することができる。
【0068】
<実施形態3>本実施の形態の操作情報処理装置80は実施形態2を基本とし、以下の点で相違する。まず、本実施形態の概要の一例について説明する。
【0069】
本実施形態の操作情報処理装置80は、ユーザの注目する表示物が文章であるか否かを判定し、文章である場合にはその文章が縦書きか横書きかに応じてユーザの顔または目の動きの検出を検出部10が制御する。この際、検出部10は、ユーザの注目する表示物が文章である場合にはユーザの目の部分の動き検出を中止し、顔全体の動き検出のみを行う。その際、文章が縦書きである場合には顔全体の動きのうち横方向の動きのみを抽出し、文章が横書きである場合には顔全体の動きのうち縦方向の動きのみを抽出する。
【0070】
本実施形態の操作情報処理装置80の構成については、検出部10の機能を除き実施形態2と概略同様であるから検出部10の機能のみを説明する。
【0071】
検出部10は、検出制御部100、顔検出部101、顔動作検出部102、目検出部103、目動作検出部104を備える。これら各々の検出部の機能・構成については第一の実施の形態と概略同様であるため詳細説明は省略する。本実施の形態において検出制御部100は、ユーザの注目点が文章である旨の判定結果を判定部200から取得すると、目動作検出部104の検出機能を中止するよう制御する。これにより、ユーザが文章に注目している場合、検出部10は目の部分の動き検出を行わず、顔全体の動き検出を行う。ここで、検出部10は目検出部103の検出を必ずしも中止する必要はない。つまり、目の動作のうち、目の動きのみを検出せず、その他動作(目が瞬きしているかどうかなどの目の開閉状態)は検出し続けることにしても良い。この場合、例えば、検出部10は両目を5秒間閉じることを検出し、当該結果を処理部20に送ることが可能である。したがって図4の操作条件記憶部30を例にとれば、「両目を5秒間閉じる」に対応する「検出機能中止」を処理部20が操作実行部70に送信することによって、操作実行部70が検出部10自体の機能を中止する操作を行なうことも可能である。
【0072】
図10は、本実施の形態における操作情報処理装置80の動作フローを示す。図10の動作フローにおいて、S4までは実施形態2と同様であるから詳細説明を省略する。S4以降について説明する。検出部10は判定部200から区別情報を取得したか否かを判定する。検出部10は、判定部200から区別情報を取得した場合(図10のS4のY)であって、文章が縦(横)書きであるとの区別情報を判定部200から取得した場合には、ユーザの目の部分の動きの検出を中止し、顔全体の動きのうち横(縦)方向の動きのみを検出して処理部20に送信する(図10のS5)。一方、検出部10は、判定部200から区別情報を取得しない場合(図10のS4のN)、検出部10はフィルタをかけることなくユーザの動作をそのまま検出して、処理部へ検出結果を送信する(図10のS6)。処理部20は、検出部10からの検出内容を取得し、操作条件記憶部30の内容を参照して操作実行部70に操作実行指示を行なう(図10のS7)。
【0073】
次に図10を用いて具体例をもとに動作を説明する。ここでは、操作条件記憶部30が図5に示すものである場合について、ユーザがブラウザに表示された横書き文章を閲覧している場合を例に説明する。まず、撮像部40は表示部50に表示されたコンテンツを見ているユーザを撮像し、撮像画像を判定部200へ配信する。判定部200は、表示部50上のユーザの注目点情報を取得するとともに、表示制御部60から表示物の情報を取得し、表示部50上のユーザの注目点にある表示物が文章か否かを判定して検出部10に送信する。本例の場合、ユーザの注目しているコンテンツが文章であって横書きであると判定部200が判定するため、判定部200はその区別情報を検出部10に送信する(図10のS3)。検出部10は、文章の区別情報が横書きであることを取得した場合、ユーザの目の部分の動き検出を中止して顔全体の縦方向の動きのみを検出し、検出結果を処理部20へ送信する(図10のS4、S5)。したがって、ユーザが目のみを上下左右等に動かした場合、検出部10はユーザの目の動きは検出しない。これに対しユーザが顔全体を上下縦方向に、例えば600ミリ秒以内に10cm動かした場合、ユーザの顔の上下の動きが検出部10によって検出される。そして、検出部10はこの検出結果を処理部20へ送信する(図10のS5)。処理部20は操作条件記憶部30を参照する。ここでは、操作条件記憶部30が図5に記載されたものであるため、ユーザが顔を600ミリ秒以内に10cm縦方向に動かした場合には「顔の動作」列の「y2−y1:5cm以上:600ミリ秒以内」の条件を満たすことになる。そこで、処理部20はこれに対応する「C*(y2−y1):画面スクロール」(例えばCを1とすれば、画面を10cmスクロール)を操作指示として操作実行部70に送信する(図10のS7)。
【0074】
本実施の形態では、ユーザの意図を正しく反映した操作を実行する操作情報処理装置、方法、及びプログラムが提供される。特に、表示部50上のユーザの注目する表示物が文章である場合、検出部10はユーザの目の部分の動き検出を中止して顔全体の動き検出のみを行い、文章が縦(横)書きである場合には顔全体の動きのうち横(縦)方向の動きのみを抽出する。このように、ユーザが文章を読む場合に頻繁に動く目の部分の動きを検出することなく、顔全体の横(縦)方向の動きのみを検出して所定操作と対応付けるため、ユーザの意図を正しく反映した操作を実行することができる。
【0075】
以上、実施形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解しうる様々な変更をすることができる。
【符号の説明】
【0076】
10 検出部
20 処理部
30 操作条件記憶部
40 撮像部
50 表示部
60 表示制御部
70 操作実行部
80 操作情報処理装置
100 検出制御部
101 顔検出部
102 顔動作検出部
103 目検出部
104 目動作検出部
200 判定部
【特許請求の範囲】
【請求項1】
表示手段に表示される表示物である文章が縦書きか横書きかの区別情報の取得と、前記文章をユーザが見ることができる位置に存在する前記ユーザの顔または目を撮像する撮像手段によって撮像された画像入力と、前記画像からの前記ユーザの顔または目の動作の検出と、を行ない、前記区別情報が縦書きの場合は前記動作のうち横方向の動きを抽出し、前記区別情報が横書きの場合は前記動作のうち縦方向の動きを抽出して出力する検出手段と、
前記検出手段が出力した動きによって決定される所定の操作指示を、前記操作指示を実行する操作手段に送信する処理手段と、を備える操作情報処理装置。
【請求項2】
前記画像から前記ユーザの視線の前記表示手段の表示面内の注目点を検出し、前記注目点に表示されている表示物が文章である場合に前記区別情報を取得して前記区別情報を前記検出手段に送信し、前記注目点に表示されている表示物が文章でない場合に前記区別情報を送信しない判定手段を備え、
前記検出手段は、前記区別情報を前記判定手段から受信した場合に、前記区別情報が縦書きの場合は前記動作のうち横方向の動きを抽出し、前記区別情報が横書きの場合は前記動作のうち縦方向の動きを抽出して出力し、前記区別情報を受信しない場合は、前記動作を出力する請求項1に記載の操作情報処理装置。
【請求項3】
前記検出手段は、前記区別情報を受信した場合には前記ユーザの顔の動きのみを抽出し、前記区別情報を受信しない場合は前記ユーザの目のみ、または、顔及び目の動作を抽出する請求項2に記載の操作情報処理装置。
【請求項4】
前記検出手段が出力した動作と所定の操作指示とを対応付けて格納する操作条件記憶手段と、
前記表示手段と、
前記表示手段の表示面近傍に備え付けられた前記撮像手段と、
前記表示手段に前記表示物を表示し、前記表示物が文章である場合に前記区別情報を出力する表示制御手段と、
前記操作手段と、
前記検出手段が出力した動きに対応付けられて前記操作条件記憶手段に格納されている所定の操作指示を、前記操作手段に送信する前記処理手段と、を備える、請求項1乃至3の何れかの操作情報処理装置。
【請求項5】
表示手段に表示される表示物である文章が縦書きか横書きかの区別情報の取得と、前記文章をユーザが見ることができる位置に存在する前記ユーザの顔または目を撮像する撮像手段によって撮像された画像入力と、前記画像からの前記ユーザの顔または目の動作の検出と、を行ない、前記区別情報が縦書きの場合は前記動作のうち横方向の動きを抽出し、前記区別情報が横書きの場合は前記動作のうち縦方向の動きを抽出して出力する検出ステップと、
前記検出ステップにおいて出力した動きによって決定される所定の操作指示を、前記操作指示を実行する操作手段に送信する処理ステップと、をコンピュータに実行させる操作情報処理プログラム。
【請求項6】
前記画像から前記ユーザの視線の前記表示手段の表示面内の注目点を検出し、前記注目点に表示されている表示物が文章である場合に前記区別情報を取得し、前記注目点に表示されている表示物が文章でない場合に前記区別情報を取得しない判定ステップと、
前記判定ステップにおいて、前記区別情報を取得した場合に、前記区別情報が縦書きの場合は前記動作のうち横方向の動きを抽出し、前記区別情報が横書きの場合は前記動作のうち縦方向の動きを抽出して出力し、前記区別情報を取得しない場合は、前記動作を出力する前記検出ステップと、
を前記コンピュータに実行させる請求項5に記載の操作情報処理プログラム。
【請求項7】
前記判定ステップにおいて、前記区別情報を取得した場合には前記ユーザの顔の動きのみを抽出し、前記区別情報を取得しない場合は前記ユーザの目のみ、または、顔及び目の動作を抽出する前記検出ステップを、前記コンピュータに実行させる請求項6に記載の操作情報処理プログラム。
【請求項8】
表示手段に表示される表示物である文章が縦書きか横書きかの区別情報の取得と、前記文章をユーザが見ることができる位置に存在する前記ユーザの顔または目を撮像する撮像手段によって撮像された画像入力と、前記画像からの前記ユーザの顔または目の動作の検出と、を行ない、前記区別情報が縦書きの場合は前記動作のうち横方向の動きを抽出し、前記区別情報が横書きの場合は前記動作のうち縦方向の動きを抽出して出力する検出ステップと、
前記検出ステップにおいて出力した動きによって決定される所定の操作指示を、前記操作指示を実行する操作手段に送信する処理ステップと、を有する操作情報処理方法。
【請求項9】
前記画像から前記ユーザの視線の前記表示手段の表示面内の注目点を検出し、前記注目点に表示されている表示物が文章である場合に前記区別情報を取得し、前記注目点に表示されている表示物が文章でない場合に前記区別情報を取得しない判定ステップと、
前記判定ステップにおいて、前記区別情報を取得した場合に、前記区別情報が縦書きの場合は前記動作のうち横方向の動きを抽出し、前記区別情報が横書きの場合は前記動作のうち縦方向の動きを抽出して出力し、前記区別情報を取得しない場合は、前記動作を出力する前記検出ステップと、
を有する請求項8に記載の操作情報処理方法。
【請求項10】
前記判定ステップにおいて、前記区別情報を取得した場合には前記ユーザの顔の動きのみを抽出し、前記区別情報を取得しない場合は前記ユーザの目のみ、または、顔及び目の動作を抽出する前記検出ステップを有する請求項9に記載の操作情報処理方法。
【請求項1】
表示手段に表示される表示物である文章が縦書きか横書きかの区別情報の取得と、前記文章をユーザが見ることができる位置に存在する前記ユーザの顔または目を撮像する撮像手段によって撮像された画像入力と、前記画像からの前記ユーザの顔または目の動作の検出と、を行ない、前記区別情報が縦書きの場合は前記動作のうち横方向の動きを抽出し、前記区別情報が横書きの場合は前記動作のうち縦方向の動きを抽出して出力する検出手段と、
前記検出手段が出力した動きによって決定される所定の操作指示を、前記操作指示を実行する操作手段に送信する処理手段と、を備える操作情報処理装置。
【請求項2】
前記画像から前記ユーザの視線の前記表示手段の表示面内の注目点を検出し、前記注目点に表示されている表示物が文章である場合に前記区別情報を取得して前記区別情報を前記検出手段に送信し、前記注目点に表示されている表示物が文章でない場合に前記区別情報を送信しない判定手段を備え、
前記検出手段は、前記区別情報を前記判定手段から受信した場合に、前記区別情報が縦書きの場合は前記動作のうち横方向の動きを抽出し、前記区別情報が横書きの場合は前記動作のうち縦方向の動きを抽出して出力し、前記区別情報を受信しない場合は、前記動作を出力する請求項1に記載の操作情報処理装置。
【請求項3】
前記検出手段は、前記区別情報を受信した場合には前記ユーザの顔の動きのみを抽出し、前記区別情報を受信しない場合は前記ユーザの目のみ、または、顔及び目の動作を抽出する請求項2に記載の操作情報処理装置。
【請求項4】
前記検出手段が出力した動作と所定の操作指示とを対応付けて格納する操作条件記憶手段と、
前記表示手段と、
前記表示手段の表示面近傍に備え付けられた前記撮像手段と、
前記表示手段に前記表示物を表示し、前記表示物が文章である場合に前記区別情報を出力する表示制御手段と、
前記操作手段と、
前記検出手段が出力した動きに対応付けられて前記操作条件記憶手段に格納されている所定の操作指示を、前記操作手段に送信する前記処理手段と、を備える、請求項1乃至3の何れかの操作情報処理装置。
【請求項5】
表示手段に表示される表示物である文章が縦書きか横書きかの区別情報の取得と、前記文章をユーザが見ることができる位置に存在する前記ユーザの顔または目を撮像する撮像手段によって撮像された画像入力と、前記画像からの前記ユーザの顔または目の動作の検出と、を行ない、前記区別情報が縦書きの場合は前記動作のうち横方向の動きを抽出し、前記区別情報が横書きの場合は前記動作のうち縦方向の動きを抽出して出力する検出ステップと、
前記検出ステップにおいて出力した動きによって決定される所定の操作指示を、前記操作指示を実行する操作手段に送信する処理ステップと、をコンピュータに実行させる操作情報処理プログラム。
【請求項6】
前記画像から前記ユーザの視線の前記表示手段の表示面内の注目点を検出し、前記注目点に表示されている表示物が文章である場合に前記区別情報を取得し、前記注目点に表示されている表示物が文章でない場合に前記区別情報を取得しない判定ステップと、
前記判定ステップにおいて、前記区別情報を取得した場合に、前記区別情報が縦書きの場合は前記動作のうち横方向の動きを抽出し、前記区別情報が横書きの場合は前記動作のうち縦方向の動きを抽出して出力し、前記区別情報を取得しない場合は、前記動作を出力する前記検出ステップと、
を前記コンピュータに実行させる請求項5に記載の操作情報処理プログラム。
【請求項7】
前記判定ステップにおいて、前記区別情報を取得した場合には前記ユーザの顔の動きのみを抽出し、前記区別情報を取得しない場合は前記ユーザの目のみ、または、顔及び目の動作を抽出する前記検出ステップを、前記コンピュータに実行させる請求項6に記載の操作情報処理プログラム。
【請求項8】
表示手段に表示される表示物である文章が縦書きか横書きかの区別情報の取得と、前記文章をユーザが見ることができる位置に存在する前記ユーザの顔または目を撮像する撮像手段によって撮像された画像入力と、前記画像からの前記ユーザの顔または目の動作の検出と、を行ない、前記区別情報が縦書きの場合は前記動作のうち横方向の動きを抽出し、前記区別情報が横書きの場合は前記動作のうち縦方向の動きを抽出して出力する検出ステップと、
前記検出ステップにおいて出力した動きによって決定される所定の操作指示を、前記操作指示を実行する操作手段に送信する処理ステップと、を有する操作情報処理方法。
【請求項9】
前記画像から前記ユーザの視線の前記表示手段の表示面内の注目点を検出し、前記注目点に表示されている表示物が文章である場合に前記区別情報を取得し、前記注目点に表示されている表示物が文章でない場合に前記区別情報を取得しない判定ステップと、
前記判定ステップにおいて、前記区別情報を取得した場合に、前記区別情報が縦書きの場合は前記動作のうち横方向の動きを抽出し、前記区別情報が横書きの場合は前記動作のうち縦方向の動きを抽出して出力し、前記区別情報を取得しない場合は、前記動作を出力する前記検出ステップと、
を有する請求項8に記載の操作情報処理方法。
【請求項10】
前記判定ステップにおいて、前記区別情報を取得した場合には前記ユーザの顔の動きのみを抽出し、前記区別情報を取得しない場合は前記ユーザの目のみ、または、顔及び目の動作を抽出する前記検出ステップを有する請求項9に記載の操作情報処理方法。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【公開番号】特開2011−243141(P2011−243141A)
【公開日】平成23年12月1日(2011.12.1)
【国際特許分類】
【出願番号】特願2010−117121(P2010−117121)
【出願日】平成22年5月21日(2010.5.21)
【出願人】(390001395)NECシステムテクノロジー株式会社 (438)
【Fターム(参考)】
【公開日】平成23年12月1日(2011.12.1)
【国際特許分類】
【出願日】平成22年5月21日(2010.5.21)
【出願人】(390001395)NECシステムテクノロジー株式会社 (438)
【Fターム(参考)】
[ Back to top ]