(57)【特許請求の範囲】
【請求項１】
コンピュータ操作者の顔領域を撮像する撮像手段と、
該撮像手段により撮像された顔領域の第１座標系を設定する第１座標系設定手段と、
前記撮像手段により撮像された顔領域における目領域の第２座標系を設定する第２座標系設定手段と、
前記目領域の移動に伴って、これに追随し遅延して移動する第３座標系を得る第1遅延手段と、
前記目領域の移動に伴って、これに追随し遅延して移動するとともに前記第1遅延手段より遅延時間が小さい第４座標系を得る第２遅延手段と、
前記第３座標系での虹彩中心の移動量と移動速度を算出する第１算出手段と、
前記第４座標系での虹彩中心の移動量と移動速度を算出する第２算出手段と、
前記第３座標系と前記第４座標系の原点間距離に基づく動作判別を行う判別手段と、
該判別手段からの信号に基づき頭部による左右方向指示を判定する第１判定手段と、
前記判別手段からの信号に基づき眼球による左右方向指示を判定する第２判定手段と、
前記判別手段からの信号に基づき頭部による上下方向指示を判定する第３判定手段と、
前記判別手段からの信号に基づき眼球による上下方向指示を判定する第４判定手段と、
よりなることを特徴とする方向指示装置
【請求項２】
前記第１遅延手段が、前記第２座標系の原点座標をローパスフィルタ処理する第1ローパスフィルタよりなり、前記第２遅延手段が、前記第２座標系の原点座標をローパスフィルタ処理する、前記第１ローパスフィルタより遅延時間が小さい第２ローパスフィルタよりなることを特徴とする請求項１記載の方向指示装置
【請求項３】
コンピュータ操作者の顔領域を撮像するステップと、
該ステップにより撮像された顔領域の第１座標系を設定するステップと、
撮像された顔領域における目領域画像の第２座標系を設定するステップと、
前記目領域の移動に伴って、これに追随し遅延して移動する第３座標系を得るステップと、
前記目領域の移動に伴って、これに追随し遅延して移動するとともに前記第３座標系より遅延時間が小さい第４座標系を得るステップと、
前記第３座標系での虹彩中心の移動量と移動速度を算出するステップと、
前記第４座標系での虹彩中心の移動量と移動速度を算出するステップと、
前記第３座標系と前記第４座標系の原点間距離に基づく動作判別を行うステップと、
前記動作判別に基づき頭部による左右方向指示を判定するステップと、
前記動作判別に基づき眼球による左右方向指示を判定するステップと、
前記動作判別に基づき頭部による上下方向指示を判定するステップと、
前記動作判別に基づき眼球による上下方向指示を判定するステップと、
よりなることを特徴とする方向指示方法
【請求項４】
前記第３座標系を得るステップは、前記第２座標系の原点座標をローパスフィルタ処理する第1ローパスフィルタにてなされ、前記第４座標系を得るステップは、前記第２座標系の原点座標をローパスフィルタ処理する、前記第１ローパスフィルタより遅延時間が小さい第２ローパスフィルタにてなされることを特徴とする請求項３記載の方向指示方法
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンピュータに内蔵されている撮像装置でコンピュータ操作者の顔画像を連続的に取得し、頭部または眼球の上下左右回転運動に基づいて、コンピュータに指示方向、例えば画面の右方向又は左方向、上方向又は下方向を指示する方向指示装置及び方向指示方法に関する。
【背景技術】
【０００２】
コンピュータ画面内でカーソル等を移動させる方法として、マウス、指、音声が広く用いられている。最近は、頭部や眼球の運動をカメラで捉え、その動きに応じて位置を指示する入力装置も知られている（特許文献１）。
【０００３】
特許文献１には、3点の視標注視により近赤外光の角膜反射像や眼球表面上の毛細血管の分岐点のような特徴点から眼球回転中心を決定する発明が開示されている。この先行発明は、視線方向を計算するという構造であり、角膜反射像の結像位置に依存して極端に視線計測精度が低下する、毛細血管の分岐点を用いる場合には画像処理による安定した特徴点抽出が困難、眼球形状の個人差による視線計測精度の低下、さらに眼球回転中心の決定には眼球と視標までの距離が必要という問題がある。
【０００４】
また、個人パラメータが不要で3点注視により眼球回転中心を推定する方法に基づき、視覚対象となる平面上の最少3点の視標を順に注視したときの瞳孔中心位置から注視点推定に必要なパラメータを決定する視線計測方法も公知である（特許文献２）。しかし、この公報に開示の発明においても、位置決め精度が十分ではなく、改良の余地が残されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１２−２９９４０号
【特許文献２】特開２０１４−５２７５８号
【発明の概要】
【発明が解決しようとする課題】
【０００６】
本発明は、前述の事情に鑑みてなされたものであり、コンピュータに内蔵されたカメラで操作者の顔画像を連続的に取得し、目領域を含む画像に対して適切にローパスフィルタリング処理を施すことで、頭部又は眼球の上下左右回転運動により、コンピュータに指示方向を精度良く伝達する装置を提供する。特に、ローパスフィルタLPFの遅延特性（位相特性）を活用して、方向指示精度の向上を図るものである。
【課題を解決するための手段】
【０００７】
本発明に係る方向指示装置は、コンピュータ操作者の顔領域を撮像する撮像手段と、該撮像手段により撮像された顔領域の第１座標系を設定する第１座標系設定手段と、前記撮像手段により撮像された顔領域における目領域の第２座標系を設定する第２座標系設定手段と、前記目領域の移動に伴って、これに追随し遅延して移動する第３座標系を得る第1遅延手段と、前記目領域の移動に伴って、これに追随し遅延して移動するとともに前記第1遅延手段より遅延時間が小さい第４座標系を得る第２遅延手段と、前記第３座標系での虹彩中心の移動量と移動速度を算出する第１算出手段と、前記第４座標系での虹彩中心の移動量と移動速度を算出する第２算出手段と、前記第３座標系と前記第４座標系の原点間距離に基づく動作判別を行う判別手段と、該判別手段からの信号に基づき頭部による左右方向指示を判定する第１判定手段と、前記判別手段からの信号に基づき眼球による左右方向指示を判定する第２判定手段と、前記判別手段からの信号に基づき頭部による上下方向指示を判定する第３判定手段と、前記判別手段からの信号に基づき眼球による上下方向指示を判定する第４判定手段と、よりなるものである。
【０００８】
本発明に係る方向指示装置においては、前記第１遅延手段が、前記第２座標系の原点座標をローパスフィルタ処理する第1ローパスフィルタよりなり、前記第２遅延手段が、前記第２座標系の原点座標をローパスフィルタ処理する、前記第１ローパスフィルタより遅延時間が小さい第２ローパスフィルタよりなるものとすることができる。
【０００９】
本発明に係る方向指示方法は、コンピュータ操作者の顔領域を撮像するステップと、該ステップにより撮像された顔領域の第１座標系を設定するステップと、撮像された顔領域における目領域画像の第２座標系を設定するステップと、前記目領域の移動に伴って、これに追随し遅延して移動する第３座標系を得るステップと、前記目領域の移動に伴って、これに追随し遅延して移動するとともに前記第３座標系より遅延時間が小さい第４座標系を得るステップと、前記第３座標系での虹彩中心の移動量と移動速度を算出するステップと、前記第４座標系での虹彩中心の移動量と移動速度を算出するステップと、前記第３座標系と前記第４座標系の原点間距離に基づく動作判別を行うステップと、前記動作判別に基づき頭部による左右方向指示を判定するステップと、前記動作判別に基づき眼球による左右方向指示を判定するステップと、前記動作判別に基づき頭部による上下方向指示を判定するステップと、前記動作判別に基づき眼球による上下方向指示を判定するステップと、
よりなるものである。
【００１０】
本発明に係る方向指示方法において、前記第３座標系を得るステップは、前記第２座標系の原点座標をローパスフィルタ処理する第1ローパスフィルタにてなされ、前記第４座標系を得るステップは、前記第２座標系の原点座標をローパスフィルタ処理する、前記第１ローパスフィルタより遅延時間が小さい第２ローパスフィルタにてなされるものとすることができる。
【発明の効果】
【００１１】
本発明によれば、操作者がコンピュータの画面上、上下左右に配置されたマークを見ながら、又はマークが表示されないときは、画面の上下左右部分を見ながら、その頭部または眼球を上下左右運動させることにより、コンピュータに指示方向を精度良く伝達することができ、画面を指示に従って上下左右方向にスクロールすることができる。両手が使えない障害者又は両手がふさがっていて使えない状態にある者が、キーボードやマウスによらず画面の操作することができる。
【図面の簡単な説明】
【００１２】
【図１】本発明に係る方向指示装置の使用状態を説明するための斜視図である。
【図２】本発明に係る方向指示装置の構成を示すブロック図である。
【図３】ユーザーの顔を撮影したカメラ画像のイメージ図である。
【図４】OpenCVによる顔領域抽出を説明するための図である。
【図５】OpenCVによる目領域抽出を説明するための図である。
【図６】LPFによる目領域抽出を説明するための図である。
【図７】頭部回転時の目領域の違いを説明するための図である。
【図８】頭部回転時の目領域の位置関係を説明するための図である。
【図９】眼球回転時の目領域の位置関係を説明するための図である。
【図１０】頭部回転時の虹彩の移動を説明するための図である。
【図１１】眼球回転時の虹彩の移動を説明するための図である。
【図１２】頭部回転運動（右指示）における虹彩中心の左右方向の移動量xeを表すグラフである。
【図１３】頭部回転運動（右指示）における虹彩中心の左右方向の移動速度xdを表すグラフである。
【図１４】頭部回転運動（左指示）における虹彩中心の左右方向の移動量xeを表すグラフである。
【図１５】頭部回転運動（左指示）における虹彩中心の左右方向の移動速度xdを表すグラフである。
【図１６】眼球回転運動（右指示）における虹彩中心の左右方向の移動量xeを表すグラフである。
【図１７】眼球回転運動（右指示）における虹彩中心の左右方向の移動速度xdを表すグラフである。
【図１８】眼球回転運動（左指示）における虹彩中心の左右方向の移動量xeを表すグラフである。
【図１９】眼球回転運動（左指示）における虹彩中心の左右方向の移動速度xdを表すグラフである。
【図２０】本発明に係る方向指示方法の前処理部分を示すフローチャートである。
【図２１】本発明に係る方向指示方法の左右方向指示の判定のための処理部分を示すフローチャートである。
【図２２】本発明に係る方向指示方法の上下方向指示の判定のための処理部分を示すフローチャートである。
【発明を実施するための形態】
【００１３】
図１において、１はコンピュータ、２は、このコンピュータ１の操作者（以下ユーザーという）、３はコンピュータ１の画面上方中央に設けられたカメラ（撮像手段）でユーザー２の頭部及び顔の写真を撮影する。このカメラ３の画像から、目すなわち眼球の虹彩中心の２次元座標を求め、その移動量からユーザー２が指示した上下左右方向を判別する。
【００１４】
４は、コンピュータ１の画面内に設定された５つのマークで、画面の中央、左右及び上下に配置されている。ユーザー２が、例えば中央に位置しているマーク４に視線を合わせ、視線（破線で示す）を右側のマーク４に移動させたあと、再び中央のマーク４に戻せば、画面を右方向にスクロールすることができ、視線を左側のマーク４に移動させたあと、再び中央のマーク４に戻せば、画面を左方向にスクロールすることができる。同様に、視線を中央のマーク４から上又は下のマーク４に移動させれば画面を上又は下にスクロールすることができる。また、視線を移動させずに、頭部をマークの方向に上下左右に回転させることによっても、同様の操作を実現することができる。なお実際には、画面上にマーク４を表示させることなく、画面の中央、左右、上下に視線を移動、又は頭部を回転させることによっても同様の操作を行うことができる。
【００１５】
このようにして視線の移動又は頭部の回転で画面を上下左右にスクロールすることができ、左右に画面を移動させる場合、例えば画面に書物のページを表示して、これを頭又は視線の動きのみで、ページをめくるなどの操作が可能となる。なおコンピュータ１は、ノートパソコン、タブレット及びスマートフォン等を含む。
【００１６】
本実施形態に係る方向指示装置の構成においては以下のパラメータが使用される。
αx,αy： 虹彩中心の移動が、頭部回転と眼球回転のどちらによって起きたか判定するための閾値。これらの値を小さく設定すると、眼球よりも頭部の動きを優先して方向を指示する。逆に、大きく設定すると、眼球の動きを優先して方向を指示する。指示動作の優先度を決めるパラメータである。
βx1,βy1：ユーザーが、頭部で方向指示をしたか否かを判別するときに用いる虹彩中心の移動量に対する閾値。これらの値を小さく設定すると、頭部をわずかに動かしただけでも、コンピュータに方向を指示することができる。ただし、その分、意図しない方向指示の頻度が増える。したがって、頭部を大きく動かしたときだけ指示させたい場合には、これらの値を大きく設定する。
βx2,βy2：ユーザーが頭部で方向指示をしたか否かを判別するときに用いる虹彩中心の移動速度に対する閾値。これらの値を小さく設定すると、頭部をゆっくり動かしても方向指示することが可能になる。ただし、その分、意図しない指示の頻度が増える。したがって、頭部を速く動かしたときだけ指示させたい場合には、これらの値を大きく設定する。
βx3,βy3：ユーザーが眼球で方向指示をしたか否かを判別するときに用いる虹彩中心の移動量に対する閾値。これらの値を小さく設定すると、眼球をわずかに動かしただけでも方向指示することが可能になる。ただし、その分、意図しない方向指示の頻度が増える。したがって、眼球を大きく動かしたときだけ指示させたい場合には、これらの値を大きく設定する。
βx4,βy4：ユーザーが眼球で方向指示をしたか否かを判別するときに用いる虹彩中心の移動速度に対する閾値。これらの値を小さく設定すると、眼球をゆっくり動かしても方向指示することが可能になる。ただし、その分、意図しない方向指示の頻度が増える。したがって、眼球を速く動かしたときだけ指示させたい場合には、これらの値を大きく設定する。
Lx,Ly：頭部と眼球の動作判別で用いるデータ長。この値を大きく設定すると、頭部および眼球を比較的長い時間かけて動かしたときだけ、方向を指示する。意図しない頭部および眼球運動による方向指示を避けたい場合は、これらの値を大きく設定する。
Nx,Ny： 方向指示の判定で用いるデータ長。この値を大きく設定すると、頭部および眼球を比較的長い時間かけて動かしたときだけ、方向を指示する。意図しない頭部および眼球運動による方向指示を避けたい場合は、これらの値を大きく設定する。
Mx,My ：方向指示の判定で用いるデータ長。この値を大きく設定すると、頭部および眼球を比較的長い時間かけて大きく動かしたときだけ、方向を指示する。意図しない頭部および眼球運動による方向指示を避けたい場合は、これらの値を大きく設定する。
【００１７】
図２において、３は、ユーザー２の目及び顔領域を撮像する前述のカメラで、撮像された画像のイメージ図を図３に示す。５は、カメラ３により撮像された顔領域の第１座標系０を設定する第１座標系設定手段であり、OpenCV（Open Source Computer Vision Library）等の既存ライブラリを利用して、カメラ画像から顔領域を抽出し、左上コーナーを原点とする第１座標系O（X軸、Y軸）を設定する（図４）。６は、カメラ３により撮像された画像のうち目領域の第２座標系O'として設定する第２座標系設定手段で、同様にOpenCV等の既存ライブラリを利用して、顔領域から目領域を抽出し、左上コーナーを原点とする第２座標系O'（Xo軸、Yo軸）を設定する（図５）。
【００１８】
７は、第２座標系O'の原点座標を、目領域の移動に伴って、これに追随かつ遅延して移動する第３座標系O1を得る第1遅延手段で、例えば第２座標系O'の原点座標をローパスフィルタ処理する第１ローパスフィルタLPF1にて構成することができる。８は、同様に第２座標系O’の原点座標を、目領域の移動に伴って、これに追随かつ遅延して移動するとともに第1遅延手段７より遅延時間が小さい第４座標系O2を得る第２遅延手段で、例えば第２座標系O'の原点座標をローパスフィルタ処理する、第１ローパスフィルタLPF1より遅延時間が小さい第２ローパスフィルタLPF2にて構成することができる。
【００１９】
第１、第２ローパスフィルタLPF1、LPF2の関係は、第1ローパスフィルタLPF1が遅延時間の大きなローパスフィルタ（カットオフ周波数が低いローパスフィルタ）であり、第２ローパスフィルタLPF2が遅延時間の小さいローパスフィルタ（カットオフ周波数が高いローパスフィルタ）である。第１、第２ローパスフィルタLPF1、LPF2による目領域抽出を図６に、頭部回転時における目領域の違いを図７に示す。第１、第２ローパスフィルタLPF1、LPF2のそれぞれのカットオフ周波数は、例えば4.5Hz、10Hzとすることができる。
【００２０】
第１、第２ローパスフィルタLPF1、LPF2のカットオフ周波数をこのような関係に設定すれば、ユーザー２が頭部を回転させたとき、図７に示すように第３座標系O1の移動速度が、第４座標系O2のそれより遅延する。第1ローパスフィルタLPF1で処理すると目領域を示す矩形の枠が滑らかにゆっくりと動き（ゆっくり動かすことで、頭部回転による方向指示検出を可能にしている）、他方第２ローパスフィルタLPF2で処理すると正方形の枠（第４座標系O2）は比較的早く動くのである。頭部回転時における目領域の位置関係を図８に、眼球回転時における目領域の位置関係を図９に示す。
【００２１】
９は、第３座標系O1での虹彩中心の移動量と移動速度を算出する第１算出手段であり、画像の２値化、膨張収縮によるノイズ除去処理、ラベリング処理技術を用いて第３座標系O1に対して、虹彩中心のx1座標の値x1cおよびy1座標値の値y1cを求める。
【００２２】
１０は、第４座標系O2での虹彩中心の移動量と移動速度を算出する第２算出手段であり、同様に画像の２値化、膨張収縮によるノイズ除去処理、ラベリング処理技術を用いて第４座標系O2に対しても、虹彩中心のx2座標の値x2cおよびy2座標値の値y2cを求める。
【００２３】
１１は、第３座標系O1と第４座標系O2の原点間距離に基づく動作判別を行う判別手段であり、x1座標の値x1cとy1座標の値y1cにローカットフィルタを適用し、それぞれをxe1とye1とおく。これにより、値x1cおよびy1cのバイアス成分が除去され、虹彩の左右または上下方向の移動量が得られる。さらに、値x1cおよびy1cに微分フィルタを適用し、それぞれを値xd1およびyd1とおく。これにより虹彩の左右方向および上下方向の移動速度が得られる。同様に、x2座標の値x2cおよびy2座標の値y2cに対して、ローカットフィルタと微分フィルタを適用して、それぞれ値xe2と値xd2および値ye2と値yd2を求める。
【００２４】
さらに、第3座標系O1と第4座標系O2の原点のx軸方向の偏差Dx=|Xo1-Xo2|を計算する。Dx≧αxの状態がLxサンプル連続して起きた場合、移動量xe=xe1、 移動速度xd=xd1 と設定し（この後、頭部で左右に方向指示した場合の処理に移る）、そうでなければ、移動量xe=xe2、 移動速度xd=xd2 と設定する（この後、眼球で左右に方向指示した場合の処理に移る）。同様にして、第3座標系O1と第4座標系O2の原点のy軸方向の偏差Dy=|Yo1-Yo2|を計算する。Dy≧αyの状態がLyサンプル連続して起きた場合、移動量ye=ye1、 移動速度yd=yd1 と設定し（この後、頭部で上下に方向指示した場合の処理に移る）、そうでなければ、移動量ye=ye2、 移動速度yd=yd2 と設定する（この後、眼球で上下に方向指示した場合の処理に移る）。
【００２５】
１２は、判別手段１１からの信号に基づき頭部による左右方向指示を判定する第１判定手段であり、頭部による指示の有無の判定を行う。すなわち、過去Nxサンプルの間に、|xe|≧βx1、 |xd|≧βx2 の状態がそれぞれMx回連続して起きた場合、頭部で方向指示した可能性ありと判定し、そうでなければ、指示なしと判定する。ここで、頭部で指示方向した可能性ありと判定された場合で、移動速度xdがxd≧βx2の状態からxd≦-βx2に転じていれば、右を指示したと判定し、逆に、xd≦-βx2の状態からxd≧βx2に転じていれば、左を指示したと判定する。いずれにも該当しない場合は、方向指示なしと判定する。図１０に頭部回転時における虹彩の移動状態を、図１１に眼球回転時における虹彩の移動状態を示す。図１２に、虹彩中心の左右方向の移動量xeを、図１３に、虹彩中心の左右方向の移動速度xdを示し、右指示と判定した例である。左指示と判定した同様の例を、図１４及び図１５に示す。
【００２６】
１３は、判別手段１１からの信号に基づき目（眼球）による左右方向指示を判定する第２判定手段であり、眼球による指示の有無の判定を行う。すなわち、過去Nxサンプルの間に、|xe|≧βx3、 |xd|≧βx4 の状態がそれぞれMx回連続して起きた場合、眼球で方向指示した可能性ありと判定し、そうでなければ、指示なしと判定する。ここで、眼球で指示方向した可能性ありと判定された場合に、移動速度xdがxd≧βx4の状態からxd≦-βx4に転じていれば、右を指示したと判定し、逆に、xd≦-βx4の状態からxd≧βx4に転じていれば、左を指示したと判定する。いずれにも該当しない場合は、方向指示なしと判定する。図１６に、眼球回転時における虹彩中心の左右方向の移動量xeを、図１７に、眼球回転時における虹彩中心の左右方向の移動速度xdを示し、右指示と判定した例である。左指示と判定した同様の例を、図１８及び図１９に示す。
【００２７】
１４は、判別手段１１からの信号に基づき頭部による上下方向指示を判定する第３判定手段であり、頭部による指示の有無を判定する。すなわち、過去Nyサンプルの間に、|ye|≧βy1、 |yd|≧βy2 の状態がそれぞれMy回連続して起きた場合、頭部で方向指示した可能性ありと判定し、そうでなければ、指示なしと判定する。ここで、頭部で指示方向した可能性ありと判定された場合に、移動速度ydがyd≧βy2の状態からyd≦-βy2に転じていれば、下を指示したと判定し、逆に、yd≦-βy2の状態からyd≧βy2に転じていれば、上を指示したと判定する。いずれにも該当しない場合は、方向指示なしと判定する。
【００２８】
１５は、判別手段１１からの信号に基づき眼球による上下方向指示の第４判定手段であり、眼球による指示の有無の判定を行う。すなわち、過去Nyサンプルの間に、|ye|≧βy3、 |yd|≧βy4 の状態がそれぞれMy回連続して起きた場合、眼球で方向指示した可能性ありと判定し、そうでなければ、指示なしと判定する。ここで、眼球で指示方向した可能性ありと判定された場合に、移動速度ydがyd≧βy4の状態からyd≦-βy4に転じていれば、下を指示したと判定し、逆に、yd≦-βy4の状態からyd≧βy4に転じていれば、上を指示したと判定する。いずれにも該当しない場合は、方向指示なしと判定する。
【００２９】
次に本発明に係る方向指示方法を、図２０を用いてステップ（以下ステップをSで示す）順に説明する。
【００３０】
S1：前述のパラメータを設定する。
【００３１】
S2:カメラ３によりユーザー２の顔画像（図３）を撮像し読み込む。サンプリング周波数は30Hzとすることができる。
【００３２】
S3:顔領域の抽出及び第1座標系O（X軸、Y軸）を設定する。すなわち、OpenCV等の既存ライブラリを利用して、カメラ画像から顔領域を抽出し、左上コーナーを原点とする第1座標系O（X軸、Y軸）を設定する（図４）。
【００３３】
S4:目領域の抽出及び第2座標系O’（X軸、Y軸）を設定する。すなわちOpenCV等の既存ライブラリを利用して、カメラ画像の顔領域から目領域を抽出し、左上コーナーを原点とする第2座標系O'の原点座標（Xo軸、Yo軸）を設定する（図５）。
【００３４】
S5:第1遅延手段７である第1ローパスフィルタLPF1による目領域の再設定及びその第3座標系O1(x1軸、y1軸)の設定を行う。すなわち、S2における第２座標系O’の原点座標Xo、Yoに第1ローパスフィルタLPF1を適用して、第3座標系O1の座標原点(Xo1、Yo1)を決定する。
【００３５】
S6: 第２遅延手段８である第２ローパスフィルタLPF2による目領域の再設定及びその第4座標系O2(x2軸、y2軸)の設定を行う。すなわち、S2における第２座標系O’の原点座標Xo、Yoに第２ローパスフィルタLPF2を適用して、第４座標系O2の座標原点(Xo2、Yo2)を決定する。
【００３６】
なおS5、S6においては、第１、第２遅延手段７，８として第1、第２ローパスフィルタLPF1,LPF2を使用した場合につき説明したが、このようなローパスフィルタを使うことなく、遅延させることもできる。すなわちS5において「第２座標系O'の原点座標Xo,Yoに第１ローパスフィルタLPF1を適用して、第３座標系O1の座標原点(Xo1,Yo1)を決定」とあるのを「N1サンプル前のO'の原点座標Xo,Yoを第３座標系O1の座標原点(Xo1,Yo1)として決定」と置き換え、かつ、S6において、「第２座標系O'の原点座標Xo,Yoに第２ローパスフィルタLPF2を適用して、第４座標系O2の座標原点(Xo2,Yo2)を決定」とあるのを「N2サンプル前の第２座標系O'の原点座標Xo,Yoを第４座標系O2の座標原点(Xo2,Yo2)として決定」と置き換える方法をとればよい。ここで遅延量（遅延サンプル数）を表す設定パラメータN1,N2の関係を、N1>N2と設定するのである。例えばN1=5，N2=0とした場合，方向判別率が50%程度であった。
【００３７】
SA：S5による第3座標系O1から、左右方向の判定を行う処理に続くステップである。
SB：S5による第3座標系O1から、上下方向の判定を行う処理に続くステップである。
SC：S6による第4座標系O2から、左右方向の判定を行う処理に続くステップである。
SD：S6による第4座標系O2から、上下方向の判定を行う処理に続くステップである。
【００３８】
次に、左右方向を判定する処理SA、SCに続くステップを、図２１を参照して説明する。
【００３９】
S7: SAに続き、画像の２値化、膨張収縮によるノイズ除去処理、ラベリング処理技術を用いて、第3座標系O1に対して、虹彩中心のx1座標の値x1cを求める。
【００４０】
S8: SCに続き、画像の２値化、膨張収縮によるノイズ除去処理、ラベリング処理技術を用いて、第4座標系O2に対して、虹彩中心のx2座標の値x2cを求める。
【００４１】
S9:S91、S92、S93及びS94よりなる。
S91:S7に続き、値x1cにローカットフィルタを適用し移動量xe1とする。
S92:S7に続き、値x1cに微分フィルタを適用し移動速度xd1とする。
S93:S8に続き、値x2cにローカットフィルタを適用し移動量xe2とする。
S94:S8に続き、値x2cに微分フィルタを適用し移動速度xd2とする。
【００４２】
S10:S91ないしS94の結果に基づいて、第３ 座標系O1と第4座標系O2の原点のx軸方向の偏差Dx=|Xo1-Xo2|を計算 する。
【００４３】
S11:偏差Dx計算の結果、Dx≧αxの状態がLxサンプル連続して起きたか、そうでないかを判断する。
【００４４】
S12:Dx≧αxの状態がLxサンプル連続して起きたと判断された場合、移動量xe=xe1、移動速度 xd=xd1 と設定する。この後、頭部で方向指示した場合の処理に移る。
【００４５】
S13: Dx≧αxの状態がLxサンプル連続して起きていないと判断された場合、移動量xe=xe2、 移動速度xd=xd2 と設定し、この後、眼球で方向指示した場合の処理に移る。
【００４６】
S14: S12に続き、頭部で方向指示した場合の処理に移る。すなわち、過去Nxサンプルの間に、|xe|≧βx1、|xd|≧βx2 の状態がそれぞれMx回連続して起きているか否かを判定する。
【００４７】
S15:S14で、|xe|≧βx1、|xd|≧βx2 の状態がそれぞれMx回連続して起きていると判定された場合、さらに移動速度xdがxd≧βx2の状態からxd≦-βx2に転じているか否かを判定し、転じていると判定したときは右指示と判定する。
【００４８】
S16: S15で、移動速度xdがxd≧βx2の状態からxd≦-βx2に転じていると判定されない場合において、さらにxd≦-βx2の状態からxd≧βx2に転じていと判定されたときは、左を指示したと判定する。
【００４９】
S14において、|xe|≧βx1、xd|≧βx2 の状態がそれぞれMx回連続して起きていると判定されなかった場合及びS16においてxd≦-βx2の状態からxd≧βx2に転じていると判定されなかった場合は、いずれも方向指示なしと判定する。
【００５０】
S17:S13に続き、眼球で方向指示した場合の処理に移る。すなわち、過去Nxサンプルの間に、|xe|≧βx3、|xd|≧βx4の状態がそれぞれMx回連続して起きているか否かを判定する。
【００５１】
S18: S17で、|xe|≧βx3、|xd|≧βx4の状態がそれぞれMx回連続して起きていると判定された場合、さらに、xdがxd≧βx4の状態からxd≦-βx4に転じているか否かを判定し、転じていると判定したときは右指示と判定する。
【００５２】
S19: S18で、移動速度xdがxd≧βx4の状態からxd≦-βx4に転じていると判定されない場合において、さらにxd≦-βx4の状態からxd≧βx4に転じていると判定されたときは、左を指示したと判定する。
【００５３】
S17において、過去Nxサンプルの間に、|xe|≧βx3、 |xd|≧βx4の状態がそれぞれMx回連続して起きていると判定されなかった場合及びS19においてxd≦-βx4の状態からxd≧βx4に転じていると判定されなかった場合は、いずれも方向指示なしと判定する。
【００５４】
次に、上下方向を判定する処理SB、SDに続くステップを、図２２を参照して説明する。
【００５５】
S7’: SBに続き、画像の２値化、膨張収縮によるノイズ除去処理、ラベリング処理技術を用いて、第3座標系O1に対して、虹彩中心のy1座標の値y1cを求める。
【００５６】
S8’: SDに続き、画像の２値化、膨張収縮によるノイズ除去処理、ラベリング処理技術を用いて、第４座標系O2に対して、虹彩中心のy2座標の値y2cを求める。
【００５７】
S9’:S91’、S92’、S93’及びS94’よりなる。
S91’:S7’に続き、値y1cにローカットフィルタを適用し移動量ye1とする。
S92’:S7’に続き、値y1cに微分フィルタを適用し移動速度yd1とする。
S93’:S8’に続き、値y2cにローカットフィルタを適用し移動量ye2とする。
S94’:S8’に続き、値y2cに微分フィルタを適用し移動速度yd2とする。
【００５８】
S10’:S91’ないしS94’の結果に基づいて、第３ 座標系O1と第４座標系O2の原点のy軸方向の偏差Dy=|Yo1-Yo2|を計算 する。
【００５９】
S11’:偏差Dy計算の結果、Dy≧αyの状態がLyサンプル連続して起きたか、そうでないかを判断する。
【００６０】
S12’:Dy≧αyの状態がLxサンプル連続して起きたと判断された場合、移動量ye=ye1、 移動速度yd=yd1 と設定する。この後、頭部で方向指示した場合の処理に移る。
【００６１】
S13’: Dy≧αyの状態がLyサンプル連続して起きていないと判断された場合、移動量ye=ye2、移動速度 yd=yd2 と設定し、この後、眼球で方向指示した場合の処理に移る。
【００６２】
S14’: S12’に続き、頭部で方向指示した場合の処理に移る。すなわち、過去Nyサンプルの間に、|ye|≧βy1、|yd|≧βy2 の状態がそれぞれMy回連続して起きているか否かを判定する。
【００６３】
S15’:S14’で、|ye|≧βy1、|yd|≧βy2 の状態がそれぞれMy回連続して起きていると判定された場合、さらに移動速度ydがyd≧βy2の状態からyd≦-βy2に転じているか否かを判定し、転じていると判定したときは下指示と判定する。
【００６４】
S16’: S15’で、移動速度ydがyd≧βy2の状態からxd≦-βy2に転じていないと判定された場合において、さらにyd≦-βx2の状態からyd≧βy2に転じていると判定されたときは、上を指示したと判定する。
【００６５】
S14’において、|ye|≧βy1、|yd|≧βy2 の状態がそれぞれMx回連続して起きていると判定されなかった場合及びS16’においてyd≦-βy2の状態からyd≧βy2に転じていると判定されなかった場合は、いずれも方向指示なしと判定する。
【００６６】
S17’:S13’に続き、眼球で方向指示した場合の処理に移る。すなわち、過去Nyサンプルの間に、|ye|≧βy3、 |yd|≧βy4の状態がそれぞれMy回連続して起きているか否かを判定する。
【００６７】
S18’: S17’で、|ye|≧βy3、|xd|≧βy4の状態がそれぞれMy回連続して起きていると判定された場合、さらに、移動速度ydがyd≧βy4の状態から移動速度yd≦-βy4に転じているか否かを判定し、転じていると判定したときは下指示と判定する。
【００６８】
S19’:S18’で、移動速度ydがyd≧βy4の状態からyd≦-βy4に転じていると判定されなかった場合において、さらにyd≦-βy4の状態からyd≧βy4に転じていると判定されたときは、上を指示したと判定する。
【００６９】
S17’において、過去Nyサンプルの間に、|ye|≧βy3、 |yd|≧βx4の状態がそれぞれMy回連続して起きていると判定されなかった場合及びS19’においてyd≦-βy4の状態からyd≧βy4に転じていると判定されなかった場合は、いずれも方向指示なしと判定する。
【００７０】
次に、判定精度の検証結果を示す。
a.被験者：３名
b.検証内容：眼球運動で左右１０回ずつ方向指示、頭部回転で左右１０回ずつ方向指示の計40試行した。
c.検証方法：（１）第１、第２遅延手段として第１、第２ローパフフィルタLPF1,LPS2を使用した場合（本発明方法）及び（２）ローパスフィルタを使わない従来方法による場合において、方向指示の判別率を比較した。
d.検証結果:３名の方向判別率（平均値）
（１）本発明方法：眼球運動８１%、頭部回転９８%
（２）従来方法：眼球運動８１%、頭部回転0%
検証の結果、眼球回転運動では、本発明では従来方法とほぼ同じ判別率が得られ、頭部回転運動では本発明による方向判別率の方が格段に優れていることが分かった。
【００７１】
なお検証実験では、意図的に、目の大きい者（目がよく開いている常態にある者）と目の細い者（目があまり開いていない常態にある者）を1名ずつ選んだ。目の大きさを表す指標として、開眼度A＝（目の高さ）/（目の長さ）を用いると、以下の通りである。
・被験者１：A=0.39（目が大きい者）
・被験者２：A=0.34
・被験者３：A=0.28（目が細い者）
実験の結果、目の大きい者の方が、高い判別率が得られることが分かった。被験者１にあっては、眼球運動１００%、頭部回転１００%の判別率であり、他方、被験者３にあっては、眼球運動５５%、頭部回転９５%の判別率であった。
【符号の説明】
【００７２】
１      コンピュータ
２      ユーザー（操作者）
３      カメラ（撮像手段）
４      マーク  
５      第1座標系設定手段
６      第２座標系設定手段
７      第１遅延手段
８      第２遅延手段
９      第１算出手段
１０    第２算出手段
１１    判別手段
１２    第１判定手段
１３    第２判定手段
１４    第３判定手段
１５    第４判定手段
【図１】
0006346547.tif 000002
【図２】
0006346547.tif 000003
【図３】
0006346547.tif 000004
【図４】
0006346547.tif 000005
【図５】
0006346547.tif 000006
【図６】
0006346547.tif 000007
【図７】
0006346547.tif 000008
【図８】
0006346547.tif 000009
【図９】
0006346547.tif 000010
【図１０】
0006346547.tif 000011
【図１１】
0006346547.tif 000012
【図１２】
0006346547.tif 000013
【図１３】
0006346547.tif 000014
【図１４】
0006346547.tif 000015
【図１５】
0006346547.tif 000016
【図１６】
0006346547.tif 000017
【図１７】
0006346547.tif 000018
【図１８】
0006346547.tif 000019
【図１９】
0006346547.tif 000020
【図２０】
0006346547.tif 000021
【図２１】
0006346547.tif 000022
【図２２】
0006346547.tif 000023