JP3529510B2 - 情報入力装置および情報入力装置の制御方法 - Google Patents

情報入力装置および情報入力装置の制御方法

Info

Publication number
JP3529510B2
JP3529510B2 JP25041895A JP25041895A JP3529510B2 JP 3529510 B2 JP3529510 B2 JP 3529510B2 JP 25041895 A JP25041895 A JP 25041895A JP 25041895 A JP25041895 A JP 25041895A JP 3529510 B2 JP3529510 B2 JP 3529510B2
Authority
JP
Japan
Prior art keywords
light
rod
shaped object
image
reflected
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.)
Expired - Fee Related
Application number
JP25041895A
Other languages
English (en)
Other versions
JPH0991079A (ja
Inventor
俊一 沼崎
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.)
Toshiba Corp
Original Assignee
Toshiba 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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP25041895A priority Critical patent/JP3529510B2/ja
Priority to US08/614,502 priority patent/US5900863A/en
Publication of JPH0991079A publication Critical patent/JPH0991079A/ja
Application granted granted Critical
Publication of JP3529510B2 publication Critical patent/JP3529510B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、電子機器などを操
作するための情報入力装置に関し、またこの情報入力装
置の制御方法に関する。
【0002】
【従来の技術】従来、パーソナルコンピュータなどに対
する、文字情報以外の情報入力にはマウスなどのポイン
ティングデバイスが多く用いられている。ポインティン
グデバイスは、コンピュータに位置情報を簡単に入力す
るための装置で、様々な形態の装置がある。最もポピュ
ラーなのがマウスである。これは、装置の中に、自由な
方向に回転できるように支持された球が入っていて、マ
ウスを机上に置くと球の1点が机に接するようになって
いる。マウスを前後左右に動かすことによって、中の球
がマウス本体に対して回転し、その回転量を2つの方向
で機械的もしくは光学的に検出し、コンピュータに送っ
ている。コンピュータ側では、送られてきた移動量の情
報から、画面上のカーソルを動かす方向と距離を決定
し、カーソルを再表示させる。
【0003】マウス以外にも、タッチパッド、トラック
ボール、小型ジョイスティック、タッチパネル、ペンデ
バイスなどさまざまなポインティングデバイスが、電子
機器の入力装置として、実現されている。
【0004】
【発明が解決しようとする課題】マウスは簡便に位置情
報を入力することができるが、いくつかの欠点を持って
いる。まず、マウスを操作するためには机上のようなあ
る程度の広さを持った平らな面が必要である。従って、
平らな面を確保できないような場所、状態での使用は難
しい。
【0005】例えば、携帯パソコンを会社や自宅から持
ち出して、屋外で使用しようとするときは、マウスを操
作できる平面があるところを探さなくては快適に使用す
ることができない。
【0006】例えば、電車や車の中で座っていて、膝の
上にパソコンを置き使用するのには不便である。また、
単に社内、自宅内で持ち歩くときでも、マウスごと移動
させるのは面倒である。また、机の上で使うときでも、
ごちゃごちゃと書類が散乱していれば、まず机の上を整
理する必要がある。
【0007】現在はマウス以外のポインティングデバイ
スを搭載した携帯パソコンも増えている。マウスの替わ
りにトラックボールやタッチパッド、小型のジョイステ
ィックなどを利用する。トラックボールは、ボールを指
で動かし、その回転方向・量をカーソル移動方向・量に
変換し入力する。タッチパッドは様々な方式があるが、
指先でパッドに触ることで、その位置を検出できるよう
になっている。通常は、パッドをなでるように指を動か
すと、その移動方向・量をカーソル移動方向・量に変換
して入力する。
【0008】小型のジョイスティックは、キーボードの
「G」と「H」と「B」の間の隙間に小型のレバー状の
ものがついており、これを任意方向に傾けると、その傾
き方向と大きさをカーソル移動方向・量に変換して入力
する、方法を採るものが製品化されている。
【0009】マウス、トラックボール、タッチパッド、
小型ジョイスティックなどによるポインティングは、基
本的に、 (1)現在のカーソル位置の把握 (2)カーソルの移動目標位置の決定 (3)移動方向・量の確認 (4)移動方向・量の入力 というプロセスに従って行われる。ここで(1)(2)
の順序は逆のこともありうる。また、(3)(4)のプ
ロセスは1回だけで終了するものではなく、カーソル移
動中も、常に移動方向・量の修正を続けている。
【0010】ここで、操作者の手の動きに注目してみる
と、マウスと、それ以外のポインティングデバイスの間
では違いがある。マウスを用いてポインティングする場
合は、マウスの位置と、カーソルの位置はほぼ対応づい
ている。もっとも、マウスをいったん持ち上げて、移動
させればその時点でマウス位置とカーソル位置の関係は
変わるし、カーソルの速度を加速させる機能の付いたマ
ウスドライバを用いた場合も、マウス位置とカーソル位
置の関係は完全には対応しない。しかし、短い操作単位
で考えれば、マウスの位置と、カーソルの位置はほぼ対
応づいていると言っていい。つまり、カーソルを動かす
ときにカーソルの動きと同じようにマウスを持っている
手を動かせばよい。
【0011】これに比べて、トラックボール、タッチパ
ッド、小型ジョイスティックの場合は、カーソルの動き
と手の動きは対応づいていない。トラックボールは、ボ
ールの回転方向・量をカーソル移動方向・量に対応づけ
ているが、ある程度以上の距離をカーソル移動する場合
は、ボールを何回か回すことになる。つまり手の動きは
往復運動をする。タッチパネルも同様である。小型ジョ
イスティックの場合は、レバーの傾き方向・量をカーソ
ル移動方向・量に対応づけるため、カーソルの動きと手
の動きは似ていない。つまり、カーソルが等速で動いて
いるとき、手は静止しているし、カーソル位置を微調整
するときは、レバーを小刻みに動かすことになる。
【0012】これらの違いは、上記(3)(4)のプロ
セスの繰り返しにおいて現れる。(3)(4)の繰り返
しでは、まず大まかなカーソル移動を行い、次第に細か
な移動を制御するという順序をたどることが多い。大ま
かなカーソル移動において、マウスを使う場合は、マウ
スの移動量とカーソルの移動量の比をだいたいの感覚で
掴んでおけば、かなり高速に行うことができる。それに
比べて、トラックボールやタッチパッドの場合は、移動
距離が大きい場合は、ボールを何度か回す、あるいはパ
ッドを何度かなぞる、という動作をしなくてはならな
い。また小型ジョイスティックの場合は、レバーを傾け
て、カーソルを動かしながら、カーソルの動きを監視
し、目標に近づいたら、レバーの傾きをゆるめるという
動作をしなくてはならない。細かな移動を制御する場
合、マウスを使用するときは、カーソルを動かしたい方
向に動かしたいだけ、マウスを動かせばよい。タッチパ
ッドの場合も同様であるが、指とパッドの摩擦であまり
細かい移動をスムーズに行うことは難しい。また細かい
移動をスムーズにするために、指とパッドが軽く触れる
ように操作すると、時として指がパッドから離れてしま
い、クリック入力を誤ってしてしまうこともある。また
小型ジョイスティックの場合は、細かく移動する度に、
レバーをちょっと倒してすぐ戻す、という動作を繰り返
さなくてはならず、時間がかかってしまう。概して、操
作性はマウスの方が優れているが携帯性に劣るし、携帯
性に勝るタッチパッド、トラックボール、小型ジョイス
ティックは操作性に劣る、と言うことができる。
【0013】またマウスを用いずにポインティングする
ために、透明タッチパネルを使うこともできる。指で押
したときにその位置を検出できる透明タッチパネルを、
ディスプレイ上に重ねれば、直接画面上の任意の点を指
示できる環境が実現できる。これは前記(1)〜(4)
のプロセスのほとんどを省略でき、 (1)ポインティングしたい位置を確認する (2)その場所を指でタッチする というシンプルなプロセスで実現できる。しかし、問題
点も多い。まず指で直接画面を押すので、押すときには
画面のその部分、および周辺が見にくくなる。また、そ
のために指の大きさより細かい精度でのポインティング
は原理的に難しい。さらに直接触るので、画面が汚れや
すいという問題もある。ドラッグをするために画面の上
を指でなぞるというのは汚れの面でも、指先の摩擦の感
触の面でも抵抗がある。ドラッグに関しては、1回のタ
ッチでアイコンなどを拾い、2回目のタッチで別の場所
へドロップすることもできるが、指がタッチパネルに触
れていないときはその位置を検出できないので、アイコ
ンを引きずって見せるという、視覚的な効果は出せな
い。実際、銀行のATMの操作パネルなど、大きなボタ
ンを押すものによく用いられ、一部のワープロに採用さ
れている以外は、携帯パソコンなどへの搭載はあまりな
されていない。
【0014】タッチパネルではペンデバイスと併用する
ものもあり、パーソナルな電子機器への入力方法として
はこちらの方がポピュラーである。これはペンコンピュ
ータやPDA(パーソナル・デジタル・アシスタント)
の入力インタフェースとして、数多く商品化している。
ペンを併用すると、指でタッチするのとは異なり、細か
いポインティングも可能であるし、画面が汚れることも
なく、ドラッグなどの作業も快適に行える。さらに、手
書き文字などの入力が好適に行えるという特徴も持って
いる。しかし、これはペンを手に持たなくてはならな
い、という欠点がある。ペンだけで全ての操作が行える
ようなPDAには良いが、携帯パソコンのようにキーボ
ードを併用する場合は、いちいち画面をポインティング
するためにペンを持つというのは面倒である。またPD
Aなどにおいても、文字入力をするならともかく、画面
の操作だけで終わるような、情報検索のような作業をす
るのにもいちいちペンを取り出さなくてはならないのは
操作上の負担になる。また、ペンはなくなる可能性があ
り、またなくならないように線でつながったペンは使い
づらい。
【0015】全く別のアプローチとして、画像処理によ
って手の形、位置を認識し、入力手段とする方法も試み
られている。これが実現すれば、画面を指差すだけでポ
インティングが可能なので、カーソルの動きと指の動き
はマウス程度に対応し、タッチパッド、トラックボー
ル、小型ジョイスティックなどに比べて、操作しやす
い。加えて、マウスのように平面を必要としないので、
どこでも操作することができる。またタッチパネルのよ
うに画面を汚すこともなく、ペンデバイスのようなもの
をいちいち手に取る必要もない。処理が簡単なものとし
て、色マーカーを付けた手を撮像し、マーカー部分を検
出する方法が考えられるが、この方法は動作測定・分析
装置などの特定用途で製品化されることが多い。携帯パ
ソコンのポインティング手段として応用できなくはない
が、画像処理ハードウエアが高価である、マーカーと同
じ色が服などにあると誤動作する、マーカーを付けるの
が面倒などといった問題点があり、適しているとは考え
にくい。何も付けない裸の手の画像から手の形状や指先
の位置を認識して、ポインティングに利用するシステム
は、研究レベルではいくつか試作されている。しかしこ
れらは、手の画像を背景から容易に切り出せるような環
境でしか適切に動作させることができず、複雑でかつ動
きのある背景の下で手の形を切り出すのは非常に難し
い。
【0016】以上述べたように、現在実現されているポ
インティング技術はどれも一長一短であり、特に携帯パ
ソコンなどを屋外に持ち出して自由に使用したいとき、
それに適したポインティング手段が十分あるとは言いが
たい。本発明において、携帯パソコンに使用して、その
自由度を十分発揮できるようなポインティング方法及び
装置を実現する。
【0017】
【課題を解決するための手段】本発明は、 変調光を出
力するための発光手段と、前記発光手段によって出力さ
れた変調光であって物体に反射した前記変調光を受ける
ための受光素子を配列してなる受光手段と、前記受光手
段の各受光素子で受けた変調光の成分を取り出すための
変調光成分取得手段と、前記変調光の成分に応じて前記
各受光素子が前記物体を捉える領域の大きさごとに反射
受光量を求める反射受光量取得手段と、前記反射受光量
を画素値とした前記物体の反射受光画像を生成する反射
受光画像生成手段と、前記反射受光画像の各ラインごと
に画素値をスキャンすることによって、棒状物体の部分
画像を検出する棒状物体検出手段と、前記棒状物体の部
分画像を構成する一番左上の画素(1,1)から一番右
下の画素(n,n)までの画像のうち、(1,k)から
(n,k)までの画素値に定数を乗じて修正した(1,
1)から(n,k)までの画素値の合計が、所定の閾値
を満たすような該定数とkを求めることにより、(1,
1)から(n,k)までの画像を切り出す棒状物体先端
切り出し手段と、前記棒状物体先端切り出し手段により
切り出された画像の画素値もとに、(1,1)から
(n,k)までの画素の重心を前記棒状物体の重心とし
て求める重心検出手段とを有することを特徴とする情報
入力装置である。
【0018】また、変調光を出力するための発光手段
と、この発光手段によって出力された変調光であって物
体に反射した前記変調光を受けるための受光手段と、こ
の受光手段で受けた変調光の成分を取り出すための手段
と、この手段で取り出した変調光の成分から反射受光量
を求めるための手段と、この手段で求めた反射受光量を
画素値とした前記物体の反射受光画像を生成する手段
と、この手段で生成された反射受光画像から棒状物体の
部分画像を検出する棒状物体検出手段と、この手段で検
出された部分画像から棒状物体の先端を切り出す棒状物
体先端切り出し手段と、この棒状物体先端切り出し手段
によって切り出された画像をもとに、前記棒状物体の重
心として求める重心検出手段とを有する情報入力装置の
処理方法であって、前記棒状物体検出手段は、反射受光
画像の各ラインごとに画素値をスキャンすることによっ
て、棒状物体の部分画像を検出し、前記棒状物体先端切
り出し手段は、棒状物体の部分画像を構成する一番左上
の画素(1,1)から一番右下の画素(n,n)までの
画像のうち、(1,k)から(n,k)までの画素値に
定数を乗じて修正した(1,1)から(n,k)までの
画素値の合計が、所定の閾値を満たすような該定数とk
を求めることにより、(1,1)から(n,k)までの
画像を切り出し、前記重心検出手段は、切り出された画
像をもとに、(1,1)から(n,k)までの画素の重
心を前記棒状物体の重心として求めることを特徴とする
情報入力装置の制御方法である。
【0019】
【0020】
【0021】このように、本発明では、装置を付けない
裸の手指で、画面を指さし、動かすことで、電子機器の
操作ができる環境を提供する。例えば、携帯パソコンを
使用しているときには、キーボードから手を少し浮かせ
て画面を指さし、動かすことで、画面内のカーソルを制
御できる。また、指を指文字のように決められた動きに
従って動かすことでコマンドを発生させることもでき
る。
【0022】しかし、CCDエリアイメージセンサなど
で撮像した手の画像を認識する、といった手法は取らな
い。本発明では、この環境を実現するために、発光部と
受光部を組み合わせる。すなわち、操作者の手に光を当
て、手指からの反射光を受光部で受ける。この受光部は
複数用意しておき、例えばアレイ状に並べておく。受光
部の前方には受光レンズ系があり、これにより各受光部
は指向性を持ち、ある方向のある範囲からの光を受け
る。ある受光部は手からの反射光を受け、ある受光部は
その指向性のある方向に手がなかったため反射光を受け
ない。
【0023】また、各々の受光部の指向性のある方向に
ある手指の距離や、そこが手指の端なのか真ん中なの
か、などによって、その受光量が異なる。この系での受
光量は、光を反射する物体の距離の4乗に反比例するの
で、手の後ろに体があるような場合でも、手からの反射
か、体からの反射かは、その受光量によって十分弁別で
きる。従って、これらの受光部からの出力は、手指の位
置や形を反映している。従って、これらの出力を処理す
ることによって指先の位置を求め、ポインティング情報
として利用することができる。
【0024】しかし、受光部には発光部の手指による反
射光だけでなく、太陽や電灯などの光も入射してくる。
これらの影響を排し、受光部からの光だけを取り出さな
くては正確な情報は得られない。そのために、発光部は
変調光を出力する。受光部あるいはそれ以降のアナログ
処理部において、その変調成分だけを取り出すことで、
正確に手指からの反射光だけを取り出すことができる。
【0025】このようにして取り出した出力は、各々の
受光量を画素値とすれば、画像のように扱うことができ
る。従って、画像処理によって、その出力を処理し、指
先の情報を得ることができる。しかしこの画像はCCD
エリアイメージセンサなどで撮像した画像とは違い、近
くにある手の形状だけを表し、後ろの方にある背景は画
像には現れない。操作するときは指を1本伸ばしている
と仮定すると、画像の中から、ほぼ上方に向かって伸び
ている、細長い部分を取り出し、その先端部などの特徴
点を取り出せばそれが指先であると判断することができ
る。これは、粗い画像でしかないが、指先が(画素の大
きさに比べて)微少に動いたことが、各画素の画素値の
微少な変化に反映されるので、これらを反映する特徴量
を用いれば、画素数以上のポインティングが可能にな
る。
【0026】また、マウスのボタンに対応する機能も様
々な方法で実現できる。上述の画像の処理によりカーソ
ル位置が求められたとき、そのカーソルの静止状態を検
出するようにしておき、カーソルが一定時間静止したと
きにクリックが行われたようにすることができる。ま
た、指の受光センサからの距離に反映した特徴量を計算
し、その変化を見ることで、「押す」(近づいて、遠ざ
かる)という動作を検出することができる。従って、
「押す」という動作をクリック動作に関連づけることも
できる。さらに、他にボタンを用意しておきこれをマウ
スのボタンと同様に利用することもできる。この場合は
右手でカーソルを動かし、左手でボタンを押すというよ
うに両手で操作できる環境では便利である。
【0027】以上のようにして、裸の手指を画面に向け
て指さすだけで、ポインティングできる環境が実現でき
る。またその指先の動きを追跡することで、ジェスチャ
ーによるコマンド入力も実現できる。さらに、画像処理
をさらに工夫すれば、指先位置だけでなく手の形や向
き、距離などの情報も得ることができ、さらに複雑な情
報を入力することも可能である。
【0028】
【発明の実施の形態】これより本発明について、実施例
を用いて詳細に説明する。図1は本発明の実施例の全体
構成を表している。使用者は発光部の光が当たって受光
部に返っていくような位置に手を差し出し、その指先を
動かすことで、2次元情報を入力できる。操作のイメー
ジを図2に示す。ここでは、使用者はブック型などの小
型パソコンを使用している。使用者は、キーボードを操
作している手を、キーボードよりやや情報に持ち上げ
(図では分かりづらいが、画面に触れてはいない)、指
先を動かすことによって、画面内のカーソルの動きを制
御することができる。この図ではカーソルが左上のメニ
ュー上にあり、このメニューが反転表示されている。本
体とディスプレイのつなぎ目あたり、キーボードのすこ
し上にある2つの丸い物体はレンズであり、それぞれの
奥に後述する発光部、受光部が配置されている。
【0029】図1に戻って、その詳細を説明する。全体
の構成は大まかに分けて、発光部119と発光駆動回路
118、受光素子アレイ101、アナログスイッチ10
2、アナログ信号処理部103、A/D変換器109、
デジタル信号処理部110、およびそれらを制御する制
御部117から成る。
【0030】各構成要素について詳しく説明する。ま
ず、LEDなどの発光部119が発光して操作者の手1
22を照らす。この発光部は発光駆動回路118によっ
て変調発光される。この変調光を図3の301に示す。
変調光は操作者の手122に反射して、その一部が受光
光学系120を経て、受光部に捉えられる。ここでは受
光部はフォトダイオードをアレイ状に並べた受光素子ア
レイ101を用いる。この受光素子アレイからの複数の
出力をアナログスイッチ102で選択してアナログ信号
処理部103に導く。アナログ信号処理部103はI/
V変換アンプ104、プリアンプ105、バンドパスフ
ィルタ106、絶対値回路107、積分器108で構成
される。フォトダイオードは光により電流を発生させる
ため、まず電流−電圧(I/V)変換を行い、プリアン
プ105でもう1段増幅する。受光素子アレイ101に
はLEDの手による反射光だけでなく、太陽光や白熱
灯、蛍光灯のような電灯の光などが入射し、これはノイ
ズとなる。バンドパスフィルタ106はこれらのノイズ
成分を遮断し、変調光成分だけを通過させる。バンドパ
スフィルタ106の出力を絶対値回路107、積分器1
08を通過させることにより、手によって反射した変調
光の強さに応じた信号123を取り出すことができる。
【0031】ここで、アナログ信号処理部103の各部
での信号を図3に表す。まず、発光部からは、ある周波
数のパルス光がある時間間隔をおいて、繰り返し出力さ
れる。アナログ信号処理部103の入力部においては、
太陽光のような定常的な外光、蛍光灯のような周期的な
外光の成分がノイズとして乗っているので302のよう
になっている。バンドパスフィルタ106を通過させる
と、ノイズは除かれ、変調されたパルス成分だけが取り
出され、303のようになる。これを絶対値回路に通し
た波形が304、積分器の出力が305である。受光量
の大きさが変われば、303の波形の振幅が変わるの
で、305における積分後の信号レベルが変わる。従っ
て、変調されたパルス光の反射光の大きさだけが忠実に
取り出せる。
【0032】この図ではある周波数のパルスを複数発光
して一つの受光部の出力を得ているが、S/Nの性能を
許容できるならば、代わりに短パルスを用いても良い。
この変調光の強さに応じた信号をA/D変換器109で
デジタルデータに変換する。アナログスイッチ102の
切り替えが一巡し、全ての受光部からの出力をA/D変
換し終わったところで、1フレーム分のデータができあ
がる。以下の説明において、一つの受光素子に対して、
その出力がアナログ処理されて(ノイズ成分を除去され
て)、A/D変換された後の値を、その受光部の反射受
光量と呼ぶことにする。
【0033】ここで受光部の数はそれ程多くなくても良
い。同じ受光センサアレイであるCCDなどは数十万画
素程度のフォトダイオードを集積化しているが、ここで
はそれほどの数は必要としない。それよりも、各々の受
光部で反射受光量を正確に捉えられることが大事であ
る。本発明の受光系の目的は、対象物を正確に撮像する
ことにあるのではなく、指先の位置を検出するのに十分
な情報を捉えることにある。本実施例では20×26に
受光部を並べている。1つの受光部当たり、操作空間内
で約10mm四方の範囲からの光を捉える。従って、全
部で200mm×260mmの空間をカバーする。操作
者はこの空間内に指先が入るようにして動かすことによ
って、カーソルを動かすことができる。図4は、この受
光素子アレイが捉える領域の一部とそこにある操作者の
手を表したものである。マスの1つが、1つの受光素子
が捉える領域である。10mmという数字は、指の幅を
超えないできるだけ大きな値であり、任意の受光部に対
し、適当な指の位置で、その捉える領域が指先で占めら
れるようできる。図4ではマス403がこれに相当す
る。この条件が満たされないと、後述するように、指の
動きに伴ってカーソルがスムーズに動かない。そして反
射受光量は、その捉える領域を手指がどのくらい占めて
いるか、またその距離、によって決まる。
【0034】従って、捉える領域を手指が全て占めてい
れば、反射受光量は大きいし、半分程度占めていれば反
射受光量はその半分になることになる。マス403に対
応する受光素子の反射受光量は大きく、マス404に対
応する受光素子の反射受光量は403の半分程度とな
る。図5は図4の各マスに対応する反射受光量を垂直軸
にとって表したものである。各受光部の反射受光量を画
素値とすれば、これは粗い濃淡画像になるが、これを以
下で反射受光画像と呼ぶことにする。
【0035】次にこのデータを処理して指先を求めるの
がデジタル処理部110である。通常の操作状態では、
操作者の手は指示する指(一般的には人差し指)を上に
伸ばした形になっており、その上方には変調光を反射す
る物体は存在しない。厳密には、操作者の頭などが変調
光を反射しているわけであるが、前述したとおり、反射
受光量は距離の4乗に反比例するので、手までの距離の
4倍の距離に頭があっても、その反射受光量は256分
の1になってしまい、影響はほとんどない。手の距離の
2倍だったとしても、16分の1になり、あるしきい値
を設ければ十分に取り除ける。
【0036】図6に示すように、反射受光画像606を
上部から水平にスキャンしていくと、あるところまでは
画素値が0に近い画素ばかりであるが(601〜60
2)、あるところまで来ると、ごく一部だけに大きな画
素値が現れる。そのような水平ラインがいくつか続き、
しかも大きな画素値が現れる画素の横方向の位置がほぼ
同じであれば(603〜605)、細長い物体が縦に存
在していると分かる。つまり伸ばした指が存在していれ
ば、それを検出することができる。次にその指先部分か
らポインティングに利用する特徴点を抽出する。
【0037】一般的には指の先端を使うのが良いと思わ
れがちであるが、ここでは1画素の大きさが大きく、反
射受光画像の指先付近は、図7のようになっているの
で、単純に指先が存在している座標701を使うとポイ
ンティングの精度は画素の数と同じになってしまう(こ
こでは、20×26ポイント)。ちなみにこの図に現れ
ている格子は、そのひとマスからの反射光が1つの受光
部に入射することを表している。ここでは実際の画素の
数よりはるかに細かい精度で指先の位置を検出する。
【0038】本実施例では、指先端ではなくて、図のX
印702の位置を画素以上の分解能で求め、これを特徴
点としてポインティングに用いる。これは指先の一部分
の(像の)重心である。この重心を粗い反射受光画像か
らどのように抽出するかを説明する。
【0039】デジタル信号処理部110は棒状物体検出
部111、棒状物体先端切り出し部112および重心検
出部113から成る。棒状物体検出部111では、縦方
向に伸びた棒状の物体、すなわち操作者の手の中で上方
に伸びた指(通常は人差し指)を検出する。次に、棒状
物体先端切り出し部112では、縦方向に伸びた棒状の
物体(人差し指)の上部先端を切り出し、後の重心検出
部113でその切り出した部分の重心を求める。この
時、画素単位で切り出してしまうと、画素が粗いため切
り出し部分の画素値合計が大きく変動してしまい、検出
された重心の精度が悪くなる。従って、棒状物体先端切
り出し部112では、切り出し部分の画素値合計がある
条件を満足するように一部画素値を修正しながら切り出
す。
【0040】さらに各部について詳しく説明する。ま
ず、棒状物体検出部111について述べる。ここでは、
使用者が操作をするために指を出したとき、指示する指
(通常は人差し指)が、反射受光画像の上方向に伸びて
いる、と仮定している。従って、この仮定に合わない形
状で手を出すと(例えば、グーで差すなど)正常に検出
できない恐れはある。
【0041】まず、反射受光画像606を、上方から水
平方向にスキャンしていく。指先が、反射受光画像の上
端になければ、通常は上の方は、1ライン全ての画素が
ほぼ0に近い画素値を持つ(601〜602)。水平方
向の1ラインの中で、部分的に画素値が大きくなるとこ
ろがあった場合(603)、そのその位置と、そのライ
ンを覚えておく。これを数ライン繰り返し(604、6
05)、部分的に画素値が大きくなるところが数ライン
の中で一致すれば、そこに縦方向に伸びた棒状の物体
(例えば、人差し指)があると判定できる。そして、伸
ばした指がありそうな所を、大きめに囲う。この部分画
像について、さらに以下の処理を行う。
【0042】ここからは、棒状物体先端切り出し部11
2での処理である。図8の801がもともとの反射受光
画像であり、802は棒状物体検出部111で、この中
に指先があると判定された部分画像である。一番左上の
画素値をP(1,1)とし右上をP(n,1)、左下を
P(1,n)、右下をP(n,n)とする。ここで、あ
るしきい値THを設定しておき、
【0043】
【数1】 となるような、k、aを求める。次にaを用いて、P
(1,k)〜P(n,k)の画素値を修正する。つま
り、古い画素値をP’(1,k)〜P’(n,k)とし
たとき、
【0044】
【数2】 とする。この修正されたP(1,k)〜P(n,k)を
含む、P(1,1)〜P(n,k)が切り出された部分
803となる。803の上部2行は802の上部2行と
同じであり、803の最下行は802の3行目のそれぞ
れの画素値にaを乗じて修正されている。次に重心検出
部において、切り出されたP(1,1)〜P(n,k)
を使って、重心(xx,yy)は次の式を満たすように
決定される。
【0045】
【数3】
【0046】
【数4】
【0047】ここで求められた(xx,yy)は、図4
の絵の中の伸ばした指のうち上方からある長さだけ切り
取ったもの(切り取る長さがしきい値THと関連する)
の像の重心とほぼ一致する。ここでは通常のTV画像に
比べて画素が粗いため、切り取る長さを一定に保つため
に、上記のような修正が必要になる。ここでは、各画素
の値P(x,y)が精度良く求まれば求まるほど、(x
x,yy)の値も精度良く求められる。
【0048】ここで、P(1,k)〜P(n,k)の値
を上のように修正した理由を述べる。もし、P(1,
k)〜P(n,k)の値を修正しないで、(xx,y
y)を計算したらどうなるかを図9を用いて考えてみ
る。今、仮に水平ラインで一部だけ大きい画素値が現れ
るところから、3画素分下がったところまで(斜線部
分)計算に用いるとすると、指が(a)から(b)のよ
うに移動したとき、指の位置変化に比べて、(xx,y
y)の位置の変化が大きくなってしまう。逆に図10
(a)と(b)は指の位置変化に比べて(xx,yy)
の位置の変化が小さくなってしまう。
【0049】つまり、実際の指の位置と計算された(x
x,yy)の値に、線形性がなくなってしまう。従っ
て、上述のように、まず重心を計算するときの全画素の
画素値の合計が一定になるように補正をしてから重心の
計算をしなくてはならない。
【0050】前述したが、任意の受光部に対し、適当な
指の位置で、その捉える領域が指先で占められるような
条件を満たさなくてはならない理由についてここで述べ
る。もし、画素の捕らえる領域の幅が、指の幅より小さ
くなってしまうと、図11のように、ある範囲において
は指を動かしているにも関わらず、(xx,yy)は動
かない、という状況が発生してしまう。そうすると、上
述したのと同様に、実際の指の位置と(xx,yy)の
値に線形性がなくなってしまう。
【0051】以上で求められた座標(xx,yy)を使
って、画面のカーソルを制御する。(xx,yy)と画
面内のカーソル位置を対応づけておけば、指を差し出し
たときその場所に対応した場所にカーソルが表示され
る。また指を動かせばカーソルも動く。指を引っ込めれ
ば、カーソルは消える。ただこれだけでは、マウスのボ
タンに対応するものがない。マウスのボタンを押す(ク
リックする)代わりにここでは、カーソルを静止させ
る。すなわち、重心点静止状態検出部114が重心点の
動き(カーソル位置に対応している)を監視しており、
ある一定時間での移動距離がしきい値以下だった場合、
カーソルが静止状態であったと判定し、クリック信号1
23を出力する。プルダウンメニューの中から1つを選
択する作業を考えてみる。まず指を差し出すことでカー
ソルが現れるので、まず操作者は指を動かして、カーソ
ルをメニューの項目の所へ動かす。カーソルをメニュー
項目の上に移動させて一定時間静止させると、プルダウ
ンメニューが現れる。ここでさらに指を下方に動かす
と、メニューを反転させながらカーソルが動く。希望の
メニューの所でまたカーソルを静止させると、そのメニ
ューコマンドが起動される。マウスなどを用いるときは
マウスを操作していないときは常にカーソルは静止して
いるため、この方法では誤操作が多いように一見思える
かもしれない。
【0052】しかし、本実施例においては、指を差し出
してないときはカーソルは現れていないし、指を出すと
きはある目的を持っているため(あのメニューを選択し
よう、など)、目標の場所にカーソルが到達する前にカ
ーソルが静止することはあまりない。従って、本実施例
においては、カーソルを静止させることでクリック動作
を代用することは自然である。
【0053】次に、デジタル信号処理部における処理の
流れを図18〜20に示したフローチャートを用いて説
明する。ここでは、上で述べたよりもやや細かい工夫が
施されているところもあるが、それらも含めて以下で説
明する。このフローチャートをそのままプログラムにす
れば、デジタル信号処理部をソフトウエアで実現するこ
とができる。もちろん、ハードウエアで構成することも
可能であるし、ソフトウエア、ハードウエア両方で構成
されることもあり得る。
【0054】図19は棒状物体検出部の処理を表してい
る。ここでは既に述べたように、反射受光画像を水平方
向にスキャンしながら、部分的に画素値が大きくなると
ころを見つけ、これが複数ラインで、近い位置に現れる
と、棒状物体があると判断する。この部分的に画素値が
大きくなるところ(以下で部分画素列と呼ぶ)、および
部分画素列の複数の集まりで、まだ棒状物体とは判断さ
れてはいないが棒状物体になる可能性のあるものを棒状
物体候補と呼ぶ。水平方向にスキャンしていくと、棒状
物体候補が見つかり、スキャンが進むにつれその中から
棒状物体が検出される。
【0055】まず、この棒状物体候補の情報を格納して
おく構造体を複数用意する(1901)。ここでは構造
体名はinfoStick[n]とする([n]がつい
ているのは複数あるから)。複数用意するのは、棒状物
体候補は必ずしも1つではなく複数現れる可能性もある
からである。この構造体は5つのメンバーを持ち、その
うち2つは配列である。図21の2102にも示すよう
に、メンバーは、 ystart:棒状物体が始まったラインのy座標、 xstart[i]:棒状物体候補の上からiライン目
(最上段は0ライン)の部分画素列の始まりのx座標、 xend[i]:棒状物体候補の上からiライン目(最
上段は0ライン)の部分画素列の終わりのx座標、 length:棒状物体候補の縦方向の長さ(部分画素
列の数)、 status:現在の状態(STICK、NOSTIC
K、EXTENDEDの3つの値を取る。詳細は後
述。)、をそれぞれ表す。始まりのx座標、終わりのx
座標は、複数のラインにそれぞれあるので、これらは配
列となっている。
【0056】以下で処理を説明していくが、わかりやす
いように図21を併用しながら述べる。2101は反射
受光画像を表しており、各画素の色の濃さは画素値の大
きさを表している。また上部と左部の数字はそれぞれx
座標、y座標を示している。2102には前述の構造体
の概要を表す。右側の2103〜2105は処理の途中
での構造体の内容である。
【0057】水平ラインをスキャンしていき、条件を満
たす(ここでは、画素値がs以上の画素が、c個以上連
続しない)部分画素列が見つかると(1902)、これ
までの棒状物体候補に統合するか(1907)、新規に
棒状物体候補にする(1906)。1番始めに見つかっ
た部分画素列は必ず新規棒状物体候補になる。例えば、
図21では、y=3のラインをスキャンしているとき
に、始めて部分画素列が見つかり、これを新規棒状物体
候補として登録する(2103)。
【0058】このラインのy座標、すなわち3をinf
oStick[0].ystartに入れる。部分画素
列の長さは1なので、infoStick[0].xs
tart[0]、infoStick[0].xend
[0]ともに6を代入する。
【0059】新規なので、infoStick[0].
lengthは1とし、infoStick[0].s
tatusにはEXTENDEDを格納する(新規登録
でもEXTENDEDを使う。理由は後述)。
【0060】y=4のラインのスキャンで見つかった部
分画素列は今度は、既にある棒状物体候補とつながる。
つながるかどうかの判断は、棒状物体候補の最後のライ
ンの部分画素列と新たな部分画素列のx方向の位置関係
で決める。
【0061】この場合はinfoStick[0].x
start[0]=6,infoStick[0].x
end[0]=6である。新たな部分画素列のx座標は
5〜7なので、これらはつながっていると判断する。そ
の結果、新たな部分画素列につながっていると判断され
た棒状物体候補の情報を更新する(2104)。
【0062】新たな部分画素列の(x方向の)位置を下
式で代入し、infoStick[0].xstart
[1]=5,infoStick[0].xend
[1]=7。
【0063】棒状物体候補の長さを1増やす。 infoStick[0].length=2 さらに、y=5のラインで見つかった部分画素列を先の
棒状物体候補にさらにつなげると、2105のようにな
る。ここでdを3とすると、1908の条件式が成り立
ち、棒状物体が決定され、次の処理へ移る(190
9)。この条件が満たされるまで繰り返され、条件が満
たされる前に1画面分のスキャンが終了してしまった
ら、棒状物体は検出できなかったことになる。
【0064】上の説明では、infoStick
[n].statusの使い方の説明が不十分なので、
次にこれについて説明する。これは、STICK、NO
STICK、EXTENDEDの3つの値を取りうる。
【0065】NOSTICKは、その構造体が棒状物体
候補でないことを表す(つまり、一番はじめは全ての構
造体のstatusメンバーはNOSTICKになって
いる)。STICKはその構造体が棒状物体候補である
ことを表す。
【0066】EXTENDEDの場合も棒状物体候補で
あるがこの値の用い方は少し異なる。新たな水平ライン
のスキャンを始めるとき、全ての棒状物体候補はSTI
CKを持つ。1ラインのスキャンの中で新たに見つけら
れた部分画素列とつながった棒状物体候補はEXTEN
DEDに変わる。1ラインのスキャンが終了したとき、
まだSTICKになったままの棒状物体候補は、そのラ
イン上のどの部分画素列ともつながっていないことにな
り、棒状物体候補でなくなったと考える。
【0067】従って、1ラインのスキャンが終わると、
STICKになったままの棒状物体候補はNOSTIC
Kに変え、EXTENDEDを持つ棒状物体候補だけに
再びSTICKを与える。この処理により図22の22
01のように、浮いた部分画素列(ノイズである場合も
考えられる)は、いったんは棒状物体候補としてinf
oStick[0]に登録されるが(2203)、画素
列がとぎれた時点で棒状物体候補から外される(220
4、実際には1903の処理で削除される)。
【0068】本来の指先部分はinfoStick
[1]で登録されている。棒状物体候補から外すために
statusをNOSTICKに変えているだけであ
る。これで次のスキャン時の1905での判断時には、
STICKを持つ構造体だけを見るので、NOSTIC
Kになった構造体は無視される。またこのように一度使
われた構造体も、NOSTICKになれば、再び新規棒
状物体の登録に用いることができメモリを節約できる。
【0069】このような処理を行うことでノイズから受
ける影響を少なくすることができる。1905において
は、STICKを持つ構造体に対してだけ、つながるか
どうかの判断を行う。また、新規棒状物体候補を登録す
るときにはNOSTICKを持つ構造体を探し、そこに
新しい情報を格納する。
【0070】図20は棒状物体先端切り出し部、および
重心検出部の処理を表す。図19の1908での条件が
満たされると、図20の2001に処理が移る。200
2では、棒状物体の先端を切り出すためのパラメータT
Hを求めている。このしきい値は固定でも良いが、20
01のように棒状物体の先端部の大きさや画素値によっ
て決めても良い。ここで挙げた式を用いると、指の太さ
が違ったり、距離が違ったりして、画素値が変動して
も、切り出した先端部の縦横方向の長さの差がそれ程大
きくならない。棒の太さ(1ラインの画素値合計。0ラ
イン目は先端なので太さを表さないことが多いので計算
から除く)と1画素の最大値との比を求めて、TH(切
り出し部分の全画素値合計)と最大画素値の比がこれの
2乗になるようにしている。これ以外の計算方法でTH
を求めることも可能である。
【0071】2003では、2002で求められたTH
を用いて、式1で述べたa、kを求める。式1では矩形
領域で計算しているが、ここでは、各ラインの部分画素
列だけを用いて計算している。これにより、矩形内の棒
状物体と関係のないところにノイズがあるような場合の
影響を小さくできる(例えば図23のように指が斜め方
向を向いているとき、2301のようなノイズの影響を
受けない)。2003で求めたaをkライン目の各画素
値に乗ずる。2002から2004までの処理が棒状物
体先端切り出し部である。a、kと修正された画素値を
用いて、2005において重心を計算する。基本的に
は、kライン目までの部分画素列の中の、各画素値とx
座標の積を全て足してTH(これは各画素値の合計に等
しい)で割ったものが重心のx座標であり、各画素値と
y座標の積を全て足してTH(これは各画素値の合計に
等しい)で割ったものが重心のy座標である。ここで
は、xsum[i]が分かっているので、これにy座標
(infoStick[n].ystart+i)を掛
けたものの積をTHで割って重心のy座標を求めている
(もちろん、xsum[k]は修正された画素値で再計
算される)。xpsum[i]はiライン目の部分画素
列の各画素値とそのx座標の積を全て足したものであ
り、2005に示した式で重心のx座標が求められる。
【0072】以上述べた、実施例により、ノートパソコ
ン、PDAなど携帯型情報機器により好適な入力環境、
すなわち指を差し出して動かすだけでカーソル制御を行
える環境を実現することができた。
【0073】次に、この実施例を基本とした、いくつか
の別の実施例について説明する。ここで、さらに低コス
ト化、小型化のための実施例を述べる。ここでは受光セ
ンサとアナログスイッチ、アナログ信号処理部、A/D
変換部が集積されて1チップ化されている。
【0074】このICの概要を図12に示す。ここでは
フォトダイオード1201とMOSスイッチ1202で
1画素分を構成し、縦横に配列する。縦に並んだ画素の
MOS出力をまとめ、縦1列分の出力をさらに後段のM
OSスイッチ1203を介してまとめて後段のアナログ
信号処理回路1206に導いている。
【0075】そして、後段のMOSスイッチ1203を
X駆動回路1204で制御し、各画素のMOSスイッチ
のゲートは横1列で共通化し、これらをY駆動回路12
05で制御している。つまり、X駆動回路1204が制
御する制御線のうち1本だけをONにし、Y駆動回路1
205が制御する制御線のうち1本だけをONにすれ
ば、ただ1つのフォトダイオードの出力が後段のアナロ
グ処理回路1206に導かれる。
【0076】アナログ信号処理回路1206はI/V変
換アンプ1207、プリアンプ1208、バンドパスフ
ィルタ1209、絶対値回路1210、積分回路121
1からなっており、これらの働きは前述の実施例とほぼ
同じである。A/D変換部1212で変換されたデジタ
ルデータが出力端子1214より出力される。制御部1
213は外部からの制御信号1215をもとに、X駆動
回路1204、Y駆動回路1205の制御、A/D変換
器1212のタイミング制御、積分回路1211のリセ
ット(放電)動作制御などを行う。
【0077】このようにセンサ部を集積化することによ
り、装置全体を小型化することができるだけでなく、対
ノイズ性能を向上させることができる。このICを用い
れば、あとはデジタル信号処理を行うIC(CPU、D
SP、専用LSIなど)と組み合わせ、全体でも数個の
ICで本入力装置を構成することができる。また、デジ
タル信号処理を、本入力装置を組み込む携帯パソコン
(あるいはPDAなど)のCPUに行わせることにすれ
ば、センサICとインタフェース用のICのみで本入力
装置を構成することもでき、さらに低コスト化、小型化
できる。
【0078】また別のセンサICの例として図13のよ
うなものもある。これはアナログ信号処理回路を複数持
ち、受光素子アレイを分けて同時に処理している。アレ
イ型に並んだ受光素子を左右2つに分け、それぞれにア
ナログ信号処理回路を設けている。アナログ信号処理部
は図12と同様に、I/V変換アンプ、プリアンプ、バ
ンドパスフィルタ、絶対値回路、積分器から成ってい
る。またX駆動回路1301から出ているゲート信号は
1本につき、2つに分けた受光素子アレイのそれぞれの
1つずつの後段MOSスイッチを同時に制御する。
【0079】つまり、X駆動回路1301、Y駆動回路
1302それぞれが1本づつの制御線をONにすれば、
左半分にある1つの受光素子の出力が第1のアナログ信
号処理回路1304に導かれ、右半分にある1つの受光
素子の出力が第2のアナログ信号処理回路1303に導
かれる。
【0080】この2つのアナログ信号処理回路が所定の
出力を出したとき、それぞれの出力をサンプルホールド
回路1305、1306でラッチし、これをマルチプレ
クサ1307に入力し、時分割でA/D変換する。
【0081】制御部1309は図12で説明したほか
に、サンプルホールド回路1305、1306、マルチ
プレクサ1307のコントロールも行う。このようにア
ナログ信号処理回路を複数持ち、並列処理させることの
一番の効果は省電力化である。1回の発光で2つの受光
素子出力を処理できるため、発光回数が半分になる。こ
れは発光に必要な電力を半分に減らせることを意味して
いる。
【0082】図13では、2分割した例を述べたが、も
ちろんいくつに分割して並行処理させてもかまわない
し、それだけ発光電流を節約できる。このようなフォト
ダイオードをアレイ状にした受光センサとしては、似た
ようなものに、CCDエリアイメージセンサがある。受
光するだけであれば、広く普及しているCCDエリアイ
メージセンサを用いることもできるが、これはある一定
時間チャージした電荷を30分の1秒毎に順番に取り出
す構造をしており、本実施例のように変調された光を捉
える場合、その変調成分を取り出すことはできない。そ
れに、前述したように伸ばした指の位置を求めるという
だけの目的であれば、CCDエリアイメージセンサのよ
うに多くのフォトダイオードを集積化する必要もなく、
またCCDエリアイメージセンサほど高速動作を要求さ
れないので省電力化でも有利である。
【0083】次に、デジタル信号処理が異なる例を説明
する。先の実施例では指先の画像から、その先端部分を
切り出し、その重心を求めただけであった。重心は指の
左右上下方向の移動に伴い変化する特徴量であるが、こ
こでは、さらに奥行き方向の動き(受光系に近づく/遠
ざかる)を反映した特徴量を捕らえる。これまでの実施
例では、2次元情報を入力するのみであったが、奥行き
方向の情報を捉えることができれば、2次元情報+αあ
るいは3次元情報を入力することができる。
【0084】例えば、奥行き方向の動きを監視してお
き、ボタンを押すように、少し近づいて少し戻るという
奥行き方向の動きを検出した場合に、マウスのクリック
に対応する信号を発生させることができる。これによ
り、指でカーソルを動かし、「押す」動作をすること
で、メニューを選択をさせたりすることができる。
【0085】また、厳密に指までの距離を入力すること
はできないが、相対的に「近づいた」「遠ざかった」と
いう検出はできるので、表示でのフィードバックと組み
合わせれば3次元位置情報を入力することができる。
【0086】受光量は反射物体までの距離の4乗に反比
例することは前述した。従って、指が奥行き方向に動く
と、指からの反射光を受光している受光素子の受光量が
増減する。また1つの受光素子の出力だけでなく、指の
占める画素の数も増える。この様子を図14に示す。
(a)→(b)のように指が近づいてくると、手指の形
の反射受光画像全体に対する相対的な大きさが大きくな
る。
【0087】従って、3行目の水平1ライン1401に
ついて1.1画素程度の範囲を指が占めていたのに対
し、(b)では1.5画素程度の範囲を指が占めており
(1402)、3行目1ラインの画素値合計が大きくな
っていることが分かる。また占める範囲が広がるだけで
なく、指の距離が近くなるので、捉える領域全てを指が
占めている1403、1404のような画素も、(b)
の方がその画素値は大きくなっている。前述のように受
光量は反射物体までの距離の4乗に反比例するので、例
えば距離が10cmから9cmに近くなったとすると、
画素値はほぼ1.5倍になっている。
【0088】この図から、水平1ラインでの画素値合計
の大きさが、指までの距離を反映していることが分か
る。この実施例でのデジタル信号処理部(図15全体)
は、棒状物体検出部1501、水平1ライン総画素値検
出部1502、棒状物体先端切り出しパラメータ演算部
1503、棒状物体先端切り出し部1504、重心検出
部1505から成る。まず、反射受光画像1506が入
力されると、棒状物体検出部1501が指先を検出す
る。これは図1の棒状物体検出部111と働きは同じで
ある。次に棒状物体検出部1501で検出された部分画
像1507の各水平ラインの画素値合計を演算する。
【0089】棒状物体先端切り出しパラメータ演算部1
503では、この画素値合計から、棒状物体先端切り出
し部1504で用いるしきい値THを計算する。棒状物
体先端切り出し部では、棒状物体先端切り出しパラメー
タ演算部で計算されたTHを受け取り(1508)、図
1のそれと同様に、先端部を切り出す。重心検出部15
05もその働きは図1のそれと同じである。そしてこの
重心データ1509と切り出しパラメータ1510の両
方が特徴量として出力される。
【0090】このデジタル信号処理部の効果は距離に対
応した信号が得られるだけではない。THが一定だと、
指が近いほど、すなわち水平1ラインの総画素値が大き
くなると切り出された部分の垂直方向の1ラインあたり
の画素値合計は小さくなる。ポインティングの精度を高
く保つためには、切り出された部分の1ラインあたりの
画素値合計が縦でも横でも同じ程度が望ましい。
【0091】従って、水平1ラインあたりの画素値合計
から、垂直1ラインあたりの総画素値も同程度になるよ
うにTHを決める方が望ましい。また先に述べた、マウ
スのクリックとしての動作だけを行わせるのであれば、
棒状物体先端切り出しパラメータ演算部1503の後に
図示しないクリック動作検出部を設け、これが切り出し
パラメータを監視しており、「押す」動作を検出したと
きにクリック信号を出力するようにすればよい。
【0092】「押す」だけでなく、様々な指先のジェス
チャーをコマンドとして利用することも効果的である。
図17に示す実施例では操作者の指の動きを認識して入
力情報として利用する者である。例えばあるアイコンの
上にカーソルを移動させて、チェックマークの形「#」
に指を動かすと、そのアイコンに関連づけられたコマン
ドが起動する、または、円を描くとその中のオブジェク
トが選択される、といった具合に利用することができ
る。
【0093】センサ部1701は図1の受光素子アレイ
101とアナログスイッチ102に相当する。アナログ
信号処理部1702、A/D変換器1703、デジタル
信号処理部1704は図1のそれと働きは同じであり、
重心データ1705を出力する。発光部もあるがここで
は図示しない。重心点動き検出部1706は重心点の動
きを監視しており、あらかじめ登録された動きが合った
場合にそれに対応する信号1707を出力する。
【0094】次に、重心データとボタンの状態とを関連
づけて、入力情報とする実施例について説明する。例え
ば、指を動かしてカーソルをあるメニューの上に動かし
たところで、ボタンを押すとメニューが選択される、ま
たは、あるアイコンの上でボタンを押したまま、さらに
指を動かすとアイコンを移動できるなど、マウスのボタ
ンの同じように用いてクリックやドラッグなどの操作が
できるようになる。
【0095】この実施例の構成は図16に示される。セ
ンサ部1601は図1の受光素子アレイ101とアナロ
グスイッチ102に相当する。アナログ信号処理部16
02、A/D変換器1603、デジタル信号処理部16
04は図1のそれと働きは同じであり、重心データ16
05を出力する。発光部もあるがここでは図示しない。
ボタン1606は操作者の画面を差している手と反対の
手で押しやすい所に配置されており、ボタン状態検出部
1607が押されたかどうか、押され続けているかどう
か、といったボタンの状態を検出し、その状態を表す信
号1608を出力する。図示しないコンピュータ側では
これら両者の出力を参考にして、カーソルを動かした
り、アイコンを起動したり、ドラッグしたりする。これ
により、指を静止させたり、「押す」動作をさせるより
は、高速にクリック操作などをすることができる。ま
た、操作したという確実な実感を操作者に与えることも
できる。
【0096】これは、両手が自由に使えるような場合に
有効である。腕時計型のPDAを左腕に装着して右手で
カーソル操作したり、小型のPDAを左手に持って右手
でカーソル操作するような場合は、片手でクリック操作
ができる方が望ましい。また、ブックパソコンのような
場合、このボタンをキーボードのキーで代用することも
できる。
【0097】例えば、スペースバーを使った場合、通常
はスペースの入力として働くようにしておき、指を差し
てカーソル表示させているときにスペースキーが押され
た場合は、クリック、ドラッグとして働くようにする。
【0098】また、少し違う使い方になるが、ボタンを
押したときにだけこの情報入力装置が動作するようにす
ることもできる。すなわち、カーソル操作をしたいとき
はボタンを押しながら指を差して動かすことになる。こ
うすることにより、カーソル操作する意志がないのに操
作領域に指が入ってしまい誤動作するのを防ぐことがで
きる。また、そのため操作領域をキーボードのホームポ
ジションのごく近いところに設定し、最小限の手の動き
で操作領域に手が入るようにすることもできる。またボ
タンが押されたときだけ、発光部が発光するので、消費
電力を節約することもできる。
【0099】最後に、2つ、この入力装置を備えた携帯
情報機器のイメージを載せる。図18は片手で持てるP
DAである。本入力装置は外側には発光、受光できるだ
けの窓があればよいので、スペースを有効に使える。こ
こでは、1801が発光部、受光部の窓である。窓の前
で指1803を動かせば、画面内のカーソル1804の
位置を制御できる。窓がこれだけ小さいので、残りのス
ペースを大きな表示部1802として使える。
【0100】図24は、本入力装置が付いた腕時計型の
PDAである。やはり指2401の動きでカーソル24
02を制御することができる。2403、2404が発
光部、受光部の窓である。これだけ本体が小さいともは
やペンを格納するスペースさえなく、本入力装置による
入力の好適さは言うまでもないことである。また、目と
表示装置の間からずらしたところに操作空間を配せば、
指によって表示が見にくくなるということもない。
【0101】
【発明の効果】本発明により、マウスのように操作する
ための平面を必要としないポインティング環境を実現で
きる。また、マウスのように指の動きとカーソルの動き
が一致するため、トラックボールやタッチパッドや小型
ジョイスティックよりも素早く、正確にポインティング
することができる。またこれらに不向きなジェスチャー
入力も実現できる。
【0102】また、タッチパネルを指で押す方式のよう
に、画面が汚れることもなく、ペンデバイスのように、
いちいち手に装置を持つ必要もない。これらの特徴を総
合すると、携帯パソコンを操作するに当たり、既存のポ
インティング装置よりも快適な操作環境を実現すること
ができる。
【0103】またPDAのようなさらに小型の電子機器
に対する操作もより手軽に行えるようになる。さらにペ
ンを収納するスペースもなく、指で触るには画面が小さ
すぎるような、腕時計ほどの小型のPDAを考えた場
合、本発明は既存のポインティングデバイスに比べはる
かに快適な環境を提供しうる。
【0104】また本発明の受光部は指先の位置を求める
のに必要最小限の受光アレイで実現している。従って、
CCDのように高い集積度で受光アレイを作る必要がな
く、低コストで生産することができる。
【図面の簡単な説明】
【図1】 本発明の構成を表す図である。
【図2】 本発明の情報入力装置を搭載した携帯型パソ
コンを操作しているイメージ図である。
【図3】 アナログ信号処理部の各部での信号を表す図
である。
【図4】 受光素子アレイが捉える領域の一部と操作者
の手の関係を表す図である。
【図5】 反射受光画像をその画素値を垂直軸に取り表
したグラフを表す図である。
【図6】 反射受光画像の水平ラインをスキャンした様
子を表す図である。
【図7】 本発明で検出する特徴量を説明する図であ
る。
【図8】 反射受光画像と、指先が含まれる部分画像
と、切り出された先端部画像を示す図である。
【図9】 棒状物体先端切り出し部がなかったときに、
指先の動きと重心の動きに線形性がなくなる例の図であ
る。
【図10】 棒状物体先端切り出し部がなかったとき
に、指先の動きと重心の動きに線形性がなくなる例の図
である。
【図11】 1画素の捉える範囲が大きすぎる場合に、
指先の動きと重心の動きの線形例がなくなる例の図であ
る。
【図12】 受光素子アレイ、アナログスイッチ、アナ
ログ信号処理部、A/D変換部を集積したICの構成を
表す図である。
【図13】 アナログ信号処理を並列に行う、センサ部
ICを示す図である。
【図14】 指までの距離が変わったときの受光画像の
変化を説明する図である。
【図15】 指までの距離の変化を捉えるための、デジ
タル信号処理部の図である。
【図16】 重心点とボタン状態を関連づける情報入力
装置の構成の一部の図である。
【図17】 指の動きをコマンドに変換できる情報入力
装置の構成の一部の図である。
【図18】 本入力装置を搭載した小型PDAの外観を
表す図である。
【図19】 棒状物体検出部の処理を表す図である。
【図20】 棒状物体先端切り出し部および重心検出部
の処理を表す図である。
【図21】 棒状物体候補を格納する構造体の図であ
る。
【図22】 反射受光画像にノイズが乗っている場合の
棒状物体候補の変遷の様子を表す図である。
【図23】 棒状物体の先端近くにノイズが乗っている
場合にその影響を除くことができることを説明する図で
ある。
【図24】本入力装置を搭載した腕時計型のPDAの外
観を表す図である。
【符号の説明】
101 受光素子アレイ 102 アナログスイッチ 103 アナログ信号処理部 104 I/V変換アンプ 105 プリアンプ 106 バンドパスフィルタ 107 絶対値回路 108 積分器 109 A/D変換器 110 デジタル信号処理部 111 棒状物体検出部 112 棒状物体先端切り出し部 113 重心検出部 114 重心点静止状態検出部 117 制御部 118 発光駆動回路 119 発光部 1201 フォトダイオード 1202 前段MOSスイッチ 1203 後段MOSスイッチ 1204 X駆動回路 1205 Y駆動回路 1307 マルチプレクサ 1502 水平1ライン総画素演算部 1503 棒状物体先端切り出しパラメータ演算部 1606 ボタン 1607 ボタン状態検出部 1706 重心点動き検出部 2102 棒状物体候補を格納しておく構造体 2103〜2105 棒状物体候補を格納する構造体の
値の変化の例
フロントページの続き (56)参考文献 特開 平7−200143(JP,A) 特開 平7−146770(JP,A) 特開 昭56−130608(JP,A) 特開 昭63−233312(JP,A) 特開 平6−83523(JP,A) 特開 昭61−199178(JP,A) 特開 平7−146752(JP,A) (58)調査した分野(Int.Cl.7,DB名) G06F 3/00,3/03 - 3/037 G06T 1/00,11/60 - 13/00 G06T 15/70,17/40 - 17/50 G01C 3/00 - 3/32

Claims (2)

    (57)【特許請求の範囲】
  1. 【請求項1】 変調光を出力するための発光手段と、前記 発光手段によって出力された変調光であって物体に
    反射した前記変調光を受けるための受光素子を配列して
    なる受光手段と、前記 受光手段の各受光素子で受けた変調光の成分を取り
    出すための変調光成分取得手段と、前記 変調光の成分に応じて前記各受光素子が前記物体を
    捉える領域の大きさごとに反射受光量を求める反射受光
    量取得手段と、前記 反射受光量を画素値とした前記物体の反射受光画像
    を生成する反射受光画像生成手段と、前記反射受光画像の各ラインごとに画素値をスキャンす
    ることによって、棒状物体の部分画像を検出する棒状物
    体検出手段と、 前記棒状物体の部分画像を構成する一番左上の画素
    (1,1)から一番右下の画素(n,n)までの画像の
    うち、(1,k)から(n,k)までの画素値に定数を
    乗じて修正した(1,1)から(n,k)までの画素値
    の合計が、所定の閾値を満たすような該定数とkを求め
    ることにより、(1,1)から(n,k)までの画像を
    切り出す棒状物体先端切り出し手段と、 前記棒状物体先端切り出し手段により切り出された画像
    の画素値もとに、(1,1)から(n,k)までの画素
    の重心を前記棒状物体の重心として求める重心検出手段
    とを有することを特徴とする情報入力装置。
  2. 【請求項2】 変調光を出力するための発光手段と、 この発光手段によって出力された変調光であって物体に
    反射した前記変調光を受けるための受光手段と、 この受光手段で受けた変調光の成分を取り出すための手
    段と、 この手段で取り出した変調光の成分から反射受光量を求
    めるための手段と、 この手段で求めた反射受光量を画素値とした前記物体の
    反射受光画像を生成する手段と、この手段で生成された反射受光画像から棒状物体の部分
    画像を検出する棒状物体検出手段と、 この手段で検出された部分画像から棒状物体の先端を切
    り出す棒状物体先端切り出し手段と、 この棒状物体先端切り出し手段 によって切り出された画
    像をもとに、前記棒状物体の重心として求める重心検出
    手段とを有する情報入力装置の処理方法であって、前記棒状物体検出手段は、反射受光画像の各ラインごと
    に画素値をスキャンすることによって、棒状物体の部分
    画像を検出し、 前記棒状物体先端切り出し手段は、棒状物体の部分画像
    を構成する一番左上の画素(1,1)から一番右下の画
    素(n,n)までの画像のうち、(1,k)から(n,
    k)までの画素値に定数を乗じて修正した(1,1)か
    ら(n,k)までの画素値の合計が、所定の閾値を満た
    すような該定数とkを求めることにより、(1,1)か
    ら(n,k)までの画像を切り出し、 前記重心検出手段は、切り出された画像をもとに、
    (1,1)から(n,k)までの画素の重心を前記棒状
    物体の重心として求めることを特徴とする情報入力装置
    の制御方法。
JP25041895A 1995-03-16 1995-09-28 情報入力装置および情報入力装置の制御方法 Expired - Fee Related JP3529510B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP25041895A JP3529510B2 (ja) 1995-09-28 1995-09-28 情報入力装置および情報入力装置の制御方法
US08/614,502 US5900863A (en) 1995-03-16 1996-03-13 Method and apparatus for controlling computer without touching input device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP25041895A JP3529510B2 (ja) 1995-09-28 1995-09-28 情報入力装置および情報入力装置の制御方法

Publications (2)

Publication Number Publication Date
JPH0991079A JPH0991079A (ja) 1997-04-04
JP3529510B2 true JP3529510B2 (ja) 2004-05-24

Family

ID=17207600

Family Applications (1)

Application Number Title Priority Date Filing Date
JP25041895A Expired - Fee Related JP3529510B2 (ja) 1995-03-16 1995-09-28 情報入力装置および情報入力装置の制御方法

Country Status (1)

Country Link
JP (1) JP3529510B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104700603A (zh) * 2015-03-11 2015-06-10 四川和芯微电子股份有限公司 远程控制智能移动终端的系统

Families Citing this family (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3795647B2 (ja) * 1997-10-29 2006-07-12 株式会社竹中工務店 ハンドポインティング装置
US7663607B2 (en) 2004-05-06 2010-02-16 Apple Inc. Multipoint touchscreen
JPH11265249A (ja) 1998-03-17 1999-09-28 Toshiba Corp 情報入力装置および情報入力方法および記録媒体
JP3868621B2 (ja) 1998-03-17 2007-01-17 株式会社東芝 画像取得装置、画像取得方法、及び記録媒体
JP2000132317A (ja) * 1998-10-21 2000-05-12 Sharp Corp エリアセンサ及びエリアセンサを用いた入力装置
JP2001092590A (ja) * 1999-09-21 2001-04-06 Nec Corp 光学式ポインティングデバイス
JP3867039B2 (ja) * 2002-10-25 2007-01-10 学校法人慶應義塾 ハンドパターンスイッチ装置
GB0311177D0 (en) * 2003-05-15 2003-06-18 Qinetiq Ltd Non contact human-computer interface
US7313255B2 (en) * 2003-05-19 2007-12-25 Avago Technologies Ecbu Ip Pte Ltd System and method for optically detecting a click event
US7519223B2 (en) * 2004-06-28 2009-04-14 Microsoft Corporation Recognizing gestures and using gestures for interacting with software applications
JP4692159B2 (ja) * 2004-08-31 2011-06-01 パナソニック電工株式会社 ジェスチャースイッチ
CN100478862C (zh) * 2005-10-05 2009-04-15 索尼株式会社 显示装置和显示方法
JP2007128497A (ja) 2005-10-05 2007-05-24 Sony Corp 表示装置および表示方法
WO2007146785A2 (en) 2006-06-09 2007-12-21 Apple Inc. Touch screen liquid crystal display
CN104965621B (zh) 2006-06-09 2018-06-12 苹果公司 触摸屏液晶显示器及其操作方法
US9710095B2 (en) 2007-01-05 2017-07-18 Apple Inc. Touch screen stack-ups
JP4513830B2 (ja) * 2007-06-25 2010-07-28 ソニー株式会社 描画装置、及び描画方法
JP2007272927A (ja) * 2007-06-25 2007-10-18 Sony Corp 情報入出力装置、及び情報入出力方法
JP4697552B2 (ja) * 2008-04-18 2011-06-08 ソニー株式会社 画像表示装置および画像表示装置の駆動方法
JP4609543B2 (ja) * 2008-07-25 2011-01-12 ソニー株式会社 情報処理装置及び情報処理方法
JP2010238094A (ja) * 2009-03-31 2010-10-21 Sony Corp 操作入力装置および操作入力方法、並びにプログラム
US8804056B2 (en) 2010-12-22 2014-08-12 Apple Inc. Integrated touch screens
CN102841733B (zh) * 2011-06-24 2015-02-18 株式会社理光 虚拟触摸屏系统以及自动切换交互模式的方法
KR101916706B1 (ko) * 2011-09-30 2019-01-24 삼성전자주식회사 휴대단말기에서 터치 입력에 대응되게 표시화면을 스크롤링하는 방법 및 장치
CN103034362B (zh) 2011-09-30 2017-05-17 三星电子株式会社 移动终端中处理触摸输入的方法和设备
TWI567598B (zh) * 2012-10-03 2017-01-21 鴻海精密工業股份有限公司 觸控感應裝置及方法
JP6245690B2 (ja) * 2013-10-25 2017-12-13 シャープ株式会社 画像形成装置
JP6643825B2 (ja) * 2014-08-25 2020-02-12 キヤノン株式会社 装置及び方法
JP6089305B2 (ja) * 2014-09-26 2017-03-08 裕一朗 今田 ポインチング装置
JP6585218B1 (ja) 2018-03-28 2019-10-02 Eizo株式会社 表示システム及びプログラム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104700603A (zh) * 2015-03-11 2015-06-10 四川和芯微电子股份有限公司 远程控制智能移动终端的系统

Also Published As

Publication number Publication date
JPH0991079A (ja) 1997-04-04

Similar Documents

Publication Publication Date Title
JP3529510B2 (ja) 情報入力装置および情報入力装置の制御方法
US5900863A (en) Method and apparatus for controlling computer without touching input device
US8022928B2 (en) Free-space pointing and handwriting
KR100811015B1 (ko) 가상 입력 장치를 사용하여 데이터를 입력하는 방법 및 장치
JP3321053B2 (ja) 情報入力装置及び情報入力方法及び補正データ生成装置
KR101851264B1 (ko) 가상 멀티터치 마우스와 스타일러스 장치를 위한 시스템 및 그 방법
US7313255B2 (en) System and method for optically detecting a click event
US9494415B2 (en) Object position determination
US6151015A (en) Pen like computer pointing device
US9063577B2 (en) User input using proximity sensing
US20110298708A1 (en) Virtual Touch Interface
US20060028457A1 (en) Stylus-Based Computer Input System
JP2004318890A (ja) 指認識及びフィンガ・ナビゲーションを組み合わせるための画像入力システム及び装置
JP2000222097A (ja) 固体撮像装置
KR19980033069A (ko) 정보입력장치, 정보입력방법 및 고체촬상장치
JP2011521331A (ja) 光学ベゼル付き対話型入力装置
KR102300290B1 (ko) 카메라를 이용한 손가락 움직임 연동형 스마트 마우스 및 이를 이용한 마우스 커서의 제어방법
KR101053679B1 (ko) 입력 장치의 키 입력 및 포인트 입력 방법 및 이를 수행하는 입력 장치

Legal Events

Date Code Title Description
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: 20040217

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20040225

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080305

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090305

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees