(57)【特許請求の範囲】
【請求項１】
キー入力装置であって、
前記キー入力装置が机上に近接して配置されると、机上に配置された使用者の手指の正面画像を連続的に撮影するイメージセンサーと、
前記イメージセンサーによって撮影された正面画像から使用者の各手指の２次元位置及び手指や爪の大きさを検出する手指位置検出部と、
前記手指位置検出部が検出した使用者の手指が机上に接触して静止した場合に、その時点の使用者の手指の位置及び手指や爪の大きさを、各列のキーのイメージセンサーからの距離が異なる使用者固有の形状をした仮想キーボード上のホームポジションとして検出するホームポジション検出部と、
前記手指位置検出部が検出した使用者の手指が前記仮想キーボード上のキーを打鍵したことを検出する打鍵動作検出部と、
打鍵動作があった位置に該当する前記仮想キーボード上のキーのコードを生成するキーコード生成部とを備え、
前記手指位置検出部は、
前記ホームポジションにおける手指の２次元位置及び手指や爪の大きさと、前記ホームポジションから手指が移動した後の手指の２次元位置及び手指や爪の大きさとを比較することで、移動後の手指の前記仮想キーボード上の位置を算出するように構成されている、キー入力装置。
【請求項２】
前記イメージセンサーは、水平方向に撮影するように構成されており、
前記手指位置検出部は、垂直面における手指の位置を検出するように構成されている、請求項１に記載のキー入力装置。
【請求項３】
前記ホームポジション検出部が検出したキー入力に有効な手指が片手か両手かを判定する片手か両手かの判定部、
を有することで、その判定結果によって現在手指が置かれている机上の前記仮想キーボードがＱＷＥＲＴＹキーボード等のアルファニューメリックキーボードか数値入力のためのテンキーボードかを自動的に切り替えることを特徴とする請求項１または２に記載のキー入力装置。
【請求項４】
前記イメージセンサーが撮影する領域の少なくとも一部を照明するライト照射部、
を有することを特徴とする請求項１から３のいずれかに記載のキー入力装置。
【請求項５】
請求項１から４のいずれかに記載のキー入力装置を備えた携帯端末。
【請求項６】
イメージセンサーを有する携帯端末を入力装置として機能させるためのプログラムであって、前記プログラムは、前記携帯端末に、
前記携帯端末が机上に近接して配置されると、前記イメージセンサーを用いて、机上に配置された使用者の手指の正面画像を連続的に撮影するステップと、
前記撮影された正面画像から使用者の各手指の２次元位置及び手指や爪の大きさを検出するステップと、
前記使用者の手指が机上に接触して静止した場合に、その時点の使用者の手指の位置及び手指や爪の大きさを、各列のキーのイメージセンサーからの距離が異なる使用者固有の形状をした仮想キーボード上のホームポジションとして検出するステップと、
前記使用者の手指が前記仮想キーボード上のキーを打鍵したことを検出するステップと、
打鍵動作があった位置に該当する前記仮想キーボード上のキーのコードを生成するステップとを実行させ、
前記手指の２次元位置及び手指や爪の大きさを検出するステップは、
前記ホームポジションにおける手指の２次元位置及び手指や爪の大きさと、前記ホームポジションから手指が移動した後の手指の２次元位置及び手指や爪の大きさとを比較することで、移動後の手指の前記仮想キーボード上の位置を算出するステップを含む、プログラム。
【請求項７】
前記プログラムは、前記携帯端末に、
前記イメージセンサーを用いて、水平方向に撮影するステップと、
垂直面における手指の位置を検出するステップとを実行させる、請求項６に記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】  本発明は、大きなハードキーボードを持たないウェアラブルなハンドヘルド機器に関し、たとえば携帯電話、スマートフォン、タブレット端末等に好適なものであり、光学的に手指の動きを検出してキー入力を実現する仮想キーボードに関するものである。ウェアラブルなハンドヘルド機器を総称して携帯端末と書く。
【背景技術】
【０００２】  多くの携帯電話は少ないキーを用いて片手で複数回の打鍵をすることで１回のキー入力を実現している。また多くのスマートフォンやタブレット端末においては表示画面上に小さなソフトキーボードを表示し、かつタッチパネルを設けることによりキー入力を実現している。仮想キーボードとして実用化されているものには、レーザー光でソフトキーボードを机上に投影して手指によってキー入力を実現する機器がある。また特許文献１では机上にソフトキーボードを投影せずに、手指の動きをイメージセンサーで検出する技術が開示されている。また特許文献２では２台の撮影手段を設けることで手指の３次元位置を検出する技術が開示されている。また特許文献３では特殊な３次元センサーを用いて指の３次元位置を検出する技術が開示されている。また非特許文献１では手指の関節の位置を検出することで手指の位置や打鍵動作を検出する技術が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】  特開平６−８３５１２号公報
【特許文献２】  特開２００３−２８８１５６号公報
【特許文献３】  特開２００４−５００６５７号公報
【非特許文献】
【０００４】
【非特許文献１】  Ｈａｆｉｚ  ＡｄｎａｎＨａｂｉｂ  ａｎｄ  Ｍｕｉｄ  Ｍａｆｔｉ，“Ｒｅａｌ  Ｔｉｍｅ  Ｍｏｎｏ  Ｖｉｓｉｏｎ  Ｇｅｓｔｕｒｅ  Ｂａｓｅｄ  Ｖｉｒｔｕａｌ  Ｋｅｙｂｏａｒｄ  Ｓｙｓｔｅｍ”，ＩＥＥＥ  Ｔｒａｎｓａｃｔｉｏｎ  ｏｎ  Ｃｏｎｓｕｍｅｒ  Ｅｌｅｃｔｒｏｎｉｃｓ，  Ｖｏｌ．５２，Ｉｓｓｕｅ４，Ｎｏｖ．２００６
【発明の概要】
【発明が解決しようとする課題】
【０００５】  パーソナルコンピュータが普及し、ＱＷＥＲＴＹキーボードなどの標準的なハードキーボードで両手を使ってアルファベット等のキー入力をすることが一般的になっている。またＱＷＥＲＴＹキーボードに付随するテンキーボードを使って数字を入力することも一般的である。熟練した使用者は、これらのハードキーボードを目で見ずに高速なキー入力であるタッチタイピングができる。しかしながら携帯端末においては、小型の外形サイズと高速なキー入力を両立させる手段がなかった。【０００６】  多くの携帯電話は少ないキーしか搭載されておらず、また多くのスマートフォンやタブレット端末においては、表示画面上に表示するソフトキーボードが通常のハードキーボードよりもキーの間隔が狭いために１０本の手指を使った高速なキー入力は困難である。小型のハードキーボードを一体化している機器もあるが、やはりキーの間隔が狭いために２本の手指での入力が限度であり高速なキー入力は困難である。外付けの大きなハードキーボードを使えば高速なキー入力は可能であるが、そのような外付け機器を持ち運びするのは、せっかくのハンドヘルドな携帯端末の特性を損なうことになる。【０００７】  レーザー光を使って仮想キーボードを机上に投影し、イメージセンサーで手指の動きを検出してキー入力を実現する機器があるが、投影機器が大きいため持ち運びする上でやはりウエアラブルとは言いがたい。【０００８】  また特許文献１では机上にソフトキーボードを投影せずにイメージセンサーで手指の動きを検出する技術が開示されているが、ウエアラブルにするための技術については言及がない。【０００９】  また特許文献２では２台のカメラで手指の３次元位置を検出する技術が開示されている。１台のカメラでも可能としているが、その具体的な実現手段については言及がない。【０００１０】  また特許文献３では特殊な３次元センサーを用いて指の３次元位置を検出する技術が開示されている。しかしこのセンサーを容易には入手することができず、またセンサーから指までの距離の分解能が１ｃｍ程度とのことであり実用性に疑問がある。【０００１１】  また非特許文献１では手指の関節の位置を検出することで手指の位置や打鍵動作を検出する技術が開示されている。この方法の場合通常のハードキーボードと同様に、指先をほぼ垂直に立てて机上を打鍵する必要がある。通常のハードキーボードの場合はキートップのバネ性によって打鍵による手指への衝撃は緩和されるが、机上を打鍵する場合は衝撃が直接関節に伝わり、手指や腕の痛みや疲れが大きくなり使用する上で負担が大きい。【００１２】  長時間キー入力をしても手指や腕が疲れにくいハードキーボードとして人間工学（エルゴノミクス）キーボードが開発されているが、仮想キーボードの場合そのようなキー入力装置は開発されてこなかった。【００１３】  本発明の目的は、以上のような欠点をなくし、携帯端末のウェアラブル性を損なうことなく、手指や腕の疲れを軽減でき、高速なキー入力を、安価なイメージセンサーを使用して実現することを目的とする。
【課題を解決するための手段】
【００１４】  上記の課題を解決するために、本発明のキー入力装置は、机上に配置された使用者の手指を連続的に撮影するイメージセンサーと、前記イメージセンサーによって撮影された画像から使用者の各手指の位置を検出する手指位置検出部と、前記手指位置検出部が検出した使用者の手指が机上に接触して静止した場合に、その時点の使用者の手指の位置を、各列のキーのイメージセンサーからの距離が異なる使用者固有の形状をした仮想キーボード上のホームポジションとして記憶するホームポジション検出部と、前記手指位置検出部が検出した使用者の手指が前記仮想キーボード上のキーを打鍵したことを検出する打鍵動作検出部と、打鍵動作があった位置に該当する前記仮想キーボード上のキーのコードを生成するキーコード生成部と、を有することを特徴とする。【００１５】  このように構成することで、携帯端末のウエアラブル性を損なうことなく、使用者は手指や腕の疲れを軽減できる自分に最適な位置や形状を持った仮想キーボードを使用して、両手を使った高速キー入力が可能になる。通常のハードキーボードは各行のキーが横方向に一直線に並んでいるために長さの違う各指をキーボードに対して指先がほぼ垂直になるように構える必要があるが、この構成であれば、例えば全ての指をまっすぐ伸ばした状態で構えることも可能である。この場合、仮想キーボードの各行のキーは横方向に一直線に並んでおらず、多くの使用者は中指が一番長いため、中指のホームポジションに該当するキー（ＱＷＥＲＴＹキーボードであればＤキーとＫキー）の列のキーが他の列のキーよりもイメージセンサーに近い位置にあるような使用者の手指に最適な形状の仮想キーボードになる。そして指を楽に伸ばしているために、指の腹（指紋のある部分）で打鍵することになる。通常のハードキーボードであれば指の腹で打鍵すると手前のキーも同時に打鍵してしまう２重打鍵になりやすいが、仮想キーボードであることから指先位置のキーだけが入力されたとして処理できる。指の腹で打鍵をすることで指関節等への衝撃は非常に軽減される。この特性は携帯端末以外のキー入力が必要な機器にも適用して効果を発揮する。【００１６】  また、本発明のキー入力装置は、前記手指位置検出部は、撮影された画像上の手指の２次元位置情報と、撮影された画像上の手指や爪の大きさの情報から、手指の仮想キーボード上の位置を算出する、ことを特徴とする。【００１７】  このように構成することで、イメージセンンサーで得られた２次元画像上の手指の２次元位置情報に加えて、手指画像の大きさという情報を導入し、入力情報を３次元にすることができる。手指がホームポジションに配置されたときの手指画像の大きさを基準とし、そこからの相対的な移動距離を手指の大きさの変化から算出することができる。【００１８】  また本発明のキー入力装置は、イメージセンサーは、机上に近接して配置されて机上の手指の正面画像を撮影することを特徴とする【００１９】  このように構成することで、机上の手指が机上から離れた高さ距離を測定しやすくするとともに、机上の手指の２次元位置の相対変化距離を計算しやすくできる。また打鍵動作を判定する上において、打鍵動作をした手指とその他の手指の机上からの高さの違いが画像の分析から容易に判別できる。【００２０】  また、本発明のキー入力装置は、前記仮想キーボードを携帯端末のディスプレイ上に表示するキーボード表示部と、前記手指位置検出部が検出した机上に配置された使用者の手指の現在の位置をこれに重畳して表示する手指検出位置表示部と、前記キーボード表示部が表示するキーボード及びその周辺の面積の中で前記イメージセンサーが撮影している領域を明示する撮影領域表示部、を有することを特徴とする。【００２１】  このように構成することで、使用者はキー配列を確認することができ、またキー入力装置が検出している手指の現在位置を確認することができる。ゆっくりキー入力する場合には、自分が次に入力しようとしているキーの上に、キー入力装置の検出した手指の位置が表示されたことを確認してから打鍵動作をすれば、誤りなくキー入力ができる。また使用者は自分が入力しようとしている仮想キーボードの全体をイメージセンサーが撮影できているかどうかを確認できる。仮想キーボードの一部分がイメージセンサーの撮像範囲外になっていた場合、手指の間隔やイメージセンサーとの距離を調整することで修正できる。【００２２】  また、本発明のキー入力装置は、前記ホームポジション検出部が検出したキー入力に有効な手指が片手か両手かを判定する片手か両手かの判定部、を有することで、その判定結果によって現在手指が置かれている机上の前記仮想キーボードがＱＷＥＲＴＹキーボード等のアルファニューメリックキーボードか数値入力のためのテンキーボードかを自動的に切り替えることを特徴とする。【００２３】  このように構成することで、使用者はキー入力装置に対して何の操作もする必要がなくキーボードの種類を瞬時に切り替えることができる。例えば左手をグーの形に握ってしまえばキー入力装置は左手が有効でないことを容易に検出できる。【００２４】  また、本発明のキー入力装置は、前記イメージセンサーが撮影する領域の少なくとも一部を照明するライト照射部、を有することを特徴とする【００２５】  このように構成することで、イメージセンサーが撮影する手指や爪の輪郭をより明瞭に検出できることから、手指の大きさの測定精度を向上させることができる。また暗い環境でも本キー入力装置が使えるようになる。【００２６】  また、本発明の携帯端末は前記いずれかのキー入力装置を有することを特徴とする。
【発明の効果】
【００２７】  日々多くの文字をキー入力する仕事の従事者には、腱鞘炎や肩こりなどに悩まされている人が多い。またそのような仕事の従事者はキーボードを見ずにタッチタイピングができる人がほとんどであり、本発明を容易に使いこなして症状が改善される可能性が高い。
【図面の簡単な説明】
【００２８】
【図１Ａ】以下の説明で使用する３次元空間の表記の説明図である。
【図１Ｂ】以下の説明で使用する仮想キーボードの行方向と列方向の説明図である。
【図２Ａ】本発明のシステム斜視図である。
【図２Ｂ】図２Ａにおいて手指を楽な姿勢で構えた場合のシステム斜視図である。
【図３Ａ】図２Ｂのように手指を楽な姿勢で構えた場合の仮想キーボードの図である。
【図３Ｂ】図２Ｂのように手指を楽な姿勢で構えた場合の仮想キーボードの図で、通常のハードキーボードのように一列のキートップを斜めに配置した例である。
【図４】本発明の説明図である。
【図５Ａ】本発明のイメージセンサーが撮影する手指の正面画像のイメージ図である。手指は通常のハードキーボード上に置く場合の構えである。
【図５Ｂ】図５Ａにおいて右手だけが仮想キーボードの１行分イメージセンサーに近づいたイメージ図である。
【図６Ａ】本発明のイメージセンサーが撮影する手指の正面画像のイメージ図である。手指は楽な姿勢の構えである。
【図６Ｂ】図６Ａにおいて右手だけが仮想キーボードの１行分イメージセンサーから遠ざかり、その中指が打鍵をしたイメージ図である。
【図７】本発明の機能的構成の一例を示す機能ブロック図である。
【図８】本発明の機能的構成の別の一例を示す機能ブロック図である。
【図９】ホームポジションに静止したキー入力に有効な手指が片手か両手かを検出する上において、図３が両手であることに対して、片手であることを入力する方法の一例の説明図である。
【図１０】テンキーボード上のホームポジションに置かれた手指の説明図である。手指は通常のハードキーボード上に置く場合の構えである。
【図１１】ディスプレイ上に表示される仮想キーボードに、机上に配置された手指の現在の検出位置を重ねて表示する方法の一例の説明図である。
【図１２】ディスプレイ上に仮想キーボード、イメージセンサーが捉えた手指の画像及び入力済み文字列を表示する方法の一例の説明図である。
【図１３】手指の位置と大きさを測定する方法の一例の説明図である。
【図１４】手指の仮想キーボード上のＸＹ座標を計算する方法の一例の説明図である。
【図１５】数式１の説明図である。
【図１６Ａ】打鍵動作検出方法の一例の説明図である。
【図１６Ｂ】打鍵動作検出方法の一例の説明図である。
【図１７】本発明のハードウエアブロック図の一例である。
【発明を実施するための形態】
【００２９】  以下、本発明の実施形態について図面を参照して説明する。
図１Ａは以下の説明で使用する３次元空間の表記の説明図である。イメージセンサー２０のある位置を原点とし、机上の平面をＸＹ平面、机上からの高さ方向をＺ軸として説明する。ただしこれは座標軸の方向だけを示すものであり、イメージセンサー２０で撮影した画像についての説明では、Ｘ軸の座標は画素番号で表され、画像上の手指の大きさはそれが占める画素数で表される。また図１Ａの位置関係からイメージセンサー２０が撮影した手指の向きを手指の正面画像と呼ぶ。また図１Ｂは以下の説明で使用する仮想キーボードの行方向と列方向の定義の説明図である。イメージセンサーと遠近の方向を列方向とする。
【００３０】  図２Ａは本発明のシステム斜視図の例である。机上に置かれた携帯端末と使用者の手指を示している。携帯端末１０の側面に実装されて机上に近接して配置されたイメージセンサー２０で取得された机上の画像は、その一部がディスプレイ３０上の画像表示部３３に表示される。使用者は自分の手指の正面画像を見て自分の左手５０Ａと右手５１Ａがイメージセンサー２０の撮影範囲内に収まっているかどうかを確認でき、イメージセンサー２０の水平方向画角である直線２１と直線２２の間に両手の手指を収めることができる。
【００３１】  ライト４０は、より鮮明に手指や爪の輪郭を検出できるように直線４１と直線４２の範囲を照明する。キーボード表示部３２にはキー入力装置が検出している手指検出位置が仮想キーボードに重ねて表示されている。これを見て使用者はより正確に打鍵することができる。入力済み文字列の表示部３１には、これまでにキー入力装置が生成したキーコードから得られた使用者が入力した文字列が表示されている。
【００３２】  図２Ｂは図２Ａにおいて使用者が手指を楽な姿勢で構えたシステム斜視図の例である。イメージセンサー２０は携帯端末１０のディスプレイ３０のある面に実装されていて自分撮り用カメラと共用している。通常のハードキーボードではキートップが横方向に一直線に並んでいるため、このように楽な姿勢で構えた場合、各手指の長さが異なるため正しく打鍵ができない。また打鍵した場合に周囲のキーを同時に押してしまう。本発明では、図２Ａのように通常のハードキーボードに対するように手指を構える場合から、図２Ｂのように十分楽な姿勢で構える場合まで、本発明の使用者の熟練度に応じて自由に選択できる。
【００３３】  図３Ａは図２Ｂのように手指を楽な姿勢で構えた場合の仮想キーボード６０Ａの図である（本図でも以降の図でも仮想キーボードは図示しているだけで実際には存在しない）。指の長さに合わせて各列のキーのイメージセンサーからの距離が変わる。手指の姿勢によって使用者は仮想キーボードの形状を自由に設定できるため、自分に合った人間工学キーボードが構成できる。図では一体的な仮想キーボードであるが、左右の手を通常のハードキーボードを使用するときよりも離すことで、中央で分離した仮想キーボードにすることができ、腕や手指への負担をさらに減らすことができる。なお親指は基本的にスペースキーを押すだけなので、仮想キーボード上のどの位置で親指が打鍵をしてもスペースキーが押されたとして入力するようにもできる。
【００３４】  図３Ｂは図２Ｂのように手指を楽な姿勢で構えた場合の仮想キーボード６０Ｂの図で、通常のハードキーボードのように一列のキートップを斜めに配置した例である。親指はどの位置で打鍵してもスペースキーと見なされるのでスペースキーのキートップは図示されていない。使用者が図３Ａと図３Ｂのどちらの形状の仮想キーボードを使用するかは使用者があらかじめキー入力装置に入力する。あるいは打鍵があった位置情報を統計処理し、尤もらしい仮想キーボードの形状をキー入力装置が算出する。あるいは後で述べる初期文字列による学習によって設定する方法もある。
【００３５】  図４は本発明の説明図である。上記のように仮想キーボードを自由に設定できる原理と、キー入力装置がイメージセンサーと手指の間の距離変化を検出する原理を示している（距離変化の具体的な計算方法は図１４で説明する）。仮想キーボード６０Ｃのホームポジション上に置かれた左手５０Ｂと右手５１Ｂは、携帯端末１０の側面に実装されて机上に近接して配置されたイメージセンサー２０の水平方向画角である直線２１と直線２２の範囲に置かれている。
【００３６】  この図４はイメージセンサー２０の水平方向画角が９０度、画素数はＶＧＡで水平方向画素数が６４０の例であり、水平方向画素番号は１から６４０として表現している。右手がホームポジション５１Ｂから１行上のキー位置５１Ｅに移動した場合について図示している。ホームポジション５１Ｂでの親指を除く右手の４本の指の左端を写す画素２５は画素番号２７７、右端を写す画素２６は画素番号１４７である。１段上のキー位置５１Ｅに移動したときの親指を除く右手の４本の指の左端を写す画素２７は画素番号２８２、右端を写す画素２８は画素番号１３７である。
【００３７】  従ってこの手指の移動によってイメージセンサーが写す親指を除く右手の４本の指の幅は１５画素広くなる。図示できないが１本の手指の幅は約３画素広くなる。イメージセンサーの画素数をＶＧＡよりも多くすることでさらに多くの画素数の変化が得られる。この図４は通常のハードキーボード上に一直線に手指を構えた場合と同様の手指配置例を示しているが、以上の前後移動の検出原理から、ホームポジションに手指が楽な姿勢で構えられた場合においても、その時点の手指の幅を基準として、前後に動いたときの手指の幅の変化を測定することで移動距離を検出できる。
【００３８】  手指がホームポジション上にあることを決定するには、例えば画像上の手指が１０フレームにわたって、上下左右の移動も手指の幅の変化も平均して１画素未満で略静止した時点をホームポジションとする。その時に手指が通常のハードキーボード上に一直線に構えられているか、あるいは楽な姿勢で構えられているかは区別する必要はなく、その時点の手指の幅を基準として、そこからの手指の幅の変化で前後移動の距離を測定することで手指が置かれたキーを決定することが本発明の要点である。
【００３９】  使用者によって想定している仮想キーボードのキートップのピッチは異なるが、ホームポジションに手指が置かれたときに、その手指のピッチの平均値はキートップのピッチに相当する。従ってキー入力装置は検出した手指の間隔からキートップの左右ピッチを決定できる。また各キートップは略正方形であるため、手指がどれだけ前後に移動したら使用者が想定している仮想キーボードの１行分移動したかは決定できる。
【００４０】  図４のθは水平方向画角の画素番号１から手指がある画素番号までの角度である。図からわかるように水平方向画素番号がわかれば角度θがわかる。この関係は図１３の説明で使用する。また図４の水平方向画素番号はイメージセンサーのレンズの収差などによるひずみは無視して等間隔に割りふっている。この対策も図１３で説明する。
【００４１】  図５Ａは本発明のイメージセンサーが撮影する手指の正面画像のイメージ図である。ホームポジションにある左手５０Ｃと右手５１Ｃの正面画像を示している。手指は通常のハードキーボード上に置く場合の構えある。右手の親指を除く４本の指を輪郭線８０Ａで囲っている。
【００４２】  図５Ｂは図５Ａの右手だけが仮想キーボードの１行分イメージセンサーに近づいたイメージ図である。外形サイズが大きくなった右手５１Ｄとその輪郭線８０Ｂを示している。図４ではこの手指の前後移動でのイメージセンサーが撮影する外形サイズの変化を水平方向の画素数だけで説明したが、この図５Ａ、図５Ｂからわかるように実際には面積変化であり、従ってこの情報を用いればさらに前後移動距離の識別が容易となる。
【００４３】  図６Ａも本発明のイメージセンサーが撮影する手指の正面画像のイメージ図である。手指は楽な姿勢の構えである。ホームポジションにある左手５２Ｃと右手５３Ｃの手指画像を示している。また８１Ａ、８１Ｂ、８１Ｃは手指画像から輪郭を抽出された中指の幅を示している。
【００４４】  図６Ｂは図６Ａの右手だけが仮想キーボードの１行分イメージセンサーから遠ざかり、その中指が打鍵をしたイメージ図である。図６Ａの右手５３Ｃの外形サイズが小さくなった右手５３Ｄと、打鍵動作をした中指の幅８１Ｄ、８１Ｅ、８１Ｆを示している。このように手指の幅の変化は１点ではなく複数の点で捉えることができ、平均値をとることで測定精度を高めることができる。
【００４５】  この図６Ｂでは打鍵動作をしている右手の中指は机上にタッチし、その他の手指は机上から離れている。また打鍵動作をしていない左手は机上にタッチしたままである。このように打鍵動作をしていない側の手指は、机上にタッチした楽な姿勢のままで配置させても打鍵動作の検出に支障はない。またこの図６Ｂからわかるように、イメージセンサーを机上に近接した位置に置いて手指の正面画像を撮影することによって、打鍵動作をした手指とその他の手指の机上からの高さの違いが画像の分析から容易に判別できる。
【００４６】  図５Ａように通常のハードキーボード上に一直線に手指をホームポジションに構えた場合と、図６Ａのように楽な姿勢で手指をホームポジションに構えた場合を比較して、イメージセンサーが撮影する画像からは指先の位置が左右に一直線であるのか、そうでないのかはほとんど識別できない。このことを逆に利用して、これらを同等の取り扱いとし、ホームポジションにおける各手指や爪などの画像の大きさを基準とし、そこからの大きさの変化から手指の相対的な前後移動距離を計算することで仮想キーボード上の手指の位置を検出することができる。このことによって、使用者の手指の構えの個性を全て吸収でき、手指や腕が疲れにくい人間工学キーボードとしての機能が実現できる。
【００４７】  またイメージセンサーの画角を広げるか、あるいは複数のイメージセンサーを用いることで、一般の人間工学キーボードのように両手を離して配置することも可能である。複数のイメージセンサーを使った場合、３Ｄ画像としての手指の前後位置情報も活用できる。
【００４８】  図７は本発明の機能的構成の一例を示す機能ブロック図である。キー入力装置１２を携帯端末１０の外付け機器あるいは内蔵モジュールとして構成している。カメラモジュール９０内の机上に近接して配置されたイメージセンサー２０で撮影された手指画像は、カメラモジュール内のＤＳＰ２９の手指、爪の輪郭特徴抽出部７０で分析される。
【００４９】  キー入力プロセッサ１３は、ＤＳＰ２９から手指の輪郭等の特徴データを受け取り、手指位置検出部７１から片手か両手かの判定部７７までの全てをソフトウェアプログラムで実行する。手指位置検出部７１は手指の輪郭情報から各手指の画像上のＸＺ平面上の位置と手指の大きさを計算する。ホームポジション検出部７２は例えば全ての手指が所定の時間机上で略静止した場合にそのときの手指の位置を仮想キーボード上のホームポジションとして手指位置検出部７１にフィードバックする。ホームポジション検出部７２がホームポジションを検出して初めて、手指位置検出部７１は手指の仮想キーボード上の位置を確定でき、ホームポジションからの手指の移動距離を計算できる（詳しくは図１４で説明する）。
【００５０】  打鍵動作検出部７３は、各手指の指先の机上からの高さを調べ、打鍵動作があったかどうかを判定する。また左手でＳＨＩＦＴキーを押下した状態のまま右手で他のキーを打鍵するような場合も、ＳＨＩＦＴキーを押下状態の手指と打鍵動作をした手指の両方を、複数フレームの画像を分析することで検出する。打鍵動作をした手指が机上にタッチしている画像フレームに対して、押下状態の手指はこれを包含して前後の画像フレームまで机上にタッチしていることから判別は可能である。
【００５１】  ６キー／秒程度で高速キー入力をした場合、打鍵動作で手指が机上にタッチしている時間は１００ｍ秒以下である。これを捉えるにはイメージセンサーは２０フレーム／秒以上のフレーム数で撮影する必要があるが、４０フレーム／秒以上で撮影することで、ＳＨＩＦＴ操作等の押下状態の検出が容易になる。
【００５２】  キーコード生成部７４では打鍵動作があった位置に該当するキーコードを生成して携帯端末１０のホストプロセッサ１１に送る。
手指位置検出部７１とホームポジション検出部７２の検出結果と、キーコード生成部７４が生成したキーコードは、初期文字列による学習部７５、文字入力中の学習部７６並びに片手か両手かの判定部７７に送られ、これらの学習や判定のための入力情報となる。またこれらの学習や判定の結果は前記各検出部にフィードバックされ、検出パラメータが調整されて検出精度を向上させる。
【００５３】  初期文字列による学習部７５は、キー入力装置１２を使用する前に、使用者に所定の文字列を入力してもらい、その打鍵位置情報から各検出部の検出パラメータを調整する。文字入力中の学習部７６は、打鍵動作があった手指の座標と手指位置検出部７１が計算した仮想キーボード上のキートップの中心の座標とがどれだけずれているかの統計を取り、順次仮想キーボードのキーの座標を修正してゆく。
【００５４】  ホストプロセッサ１１は入力キー受付部７８でキーを受け付け、それが有効な文字コードであればディスプレイ３０上の入力済み文字列の表示部３１に表示する。またホストプロセッサ１１は机上の手指位置検出部７１の検出結果も受け取り、ディスプレイ３０上のキーボード表示部３２上に重畳して手指検出位置表示６２を表示する。
【００５５】  図８は本発明の機能的構成の別の一例を示す機能ブロック図である。携帯端末１０のプロセッサ１４で全ての処理をする場合の例である。携帯端末１０に実装されて机上に近接して配置されたイメージセンサー２０で撮影された画像は携帯端末のプロセッサ１４に取り込まれる。プロセッサでは指、爪の輪郭特徴抽出部７０から片手か両手かの判定部７７までの全ての処理が実施される。プロセッサ１４はＣＰＵとＤＳＰを含む複数のプロセッサで構成することで必要な処理能力は確保できる。検出結果をディスプレイ３０に表示する。
【００５６】  ライト照射部４０は机上の手指を照明し、イメージセンサー２０が撮影する手指や爪の輪郭等を鮮明にするとともに、暗い環境でもキー入力を可能にする。マイク４５は例えば使用者が手指をホームポジションに配置したことの情報を音声で携帯端末に入力するような場合に使用できる。スピーカ４６はキー入力のクリック音を出力することで、携帯端末がキー入力を受け付けたことを使用者に知らせることができる。
【００５７】  図９はホームポジションに静止したキー入力に有効な手指が片手か両手かを判定する上において、図５Ａが両手であることに対して、片手であることを入力する方法の一例の説明図である。左手５０Ｄをこのように握りしめることで、ＱＷＥＲＴＹキーボードの両手キー入力のために配置した場合の手指の画像とは明確に異なる特徴を持った画像をキー入力装置に与えることができる。例えば爪の輪郭画像が得られないことを検出することで識別できる。
【００５８】  図１０はテンキーボード上のホームポジションに置かれた手指の説明図である。手指は通常のハードキーボード上に置く場合の構えである。仮想のテンキーボード６０Ｄ上のホームポジションに右手５１Ｆを配置している。図３Ａに示すような仮想ＱＷＥＲＴＹキーボードから、このような仮想テンキーボードに、図９のように左手を握りしめることで瞬時に切り替えることができる。
【００５９】  図１１はディスプレイ上に表示される仮想キーボードに、机上に配置された手指の現在の検出位置を重ねて表示する方法の説明図である。キーボード表示部３２に表示されたキーボード表示６１の上に、手指検出位置表示６２Ａとその中心を示す手指中心位置表示６３Ａを重ねて表示している。もし左手人差し指の位置が手指検出位置表示６２Ｂのように２つ以上のキートップにまたがった状態で打鍵をした場合、通常のハードキーボードであれば２重打鍵になってしまうが、本キー入力装置であれば手指中心位置表示６３Ｂが置かれたＦキーが入力される。このように仮想キーボードの場合、手指の位置ずれに対して通常のハードキーボードよりも余裕があり、キー入力装置の手指検出位置に誤差があっても誤入力になりにくいという特徴がある。
【００６０】  イメージセンサーが撮影している範囲は撮影領域表示６４Ａと６４Ｂで示される。使用者はこれを見て仮想キーボードの使用する範囲が撮影領域に収まっているかどうかを確認できる。手指をイメージセンサーから離すほど、また手指の間隔を狭めるほど、イメージセンサーの水平方向画角内に収まりやすく、仮想キーボードの撮影可能範囲は広がる。
【００６１】  図１２はディスプレイ上に仮想キーボード、イメージセンサーが捉えた手指の画像及び入力済み文字列を表示する方法の一例の説明図である。ディスプレイ３０に表示される入力済み文字列表示部３１、キーボード表示部３２、手指画像表示部３３を示している。
【００６２】  図１３は手指の位置と大きさを測定する方法の一例の説明図である。図６Ｂで打鍵をしている右手中指だけを取り出して説明する。まず中指の輪郭８２を抽出する。正面から照明している場合、手指は明るく、それ以外は暗い画像として得られるので、その濃度値が急激に変化する部分を微分演算等で取り出すことで手指の輪郭は抽出できる。この輪郭の最下点のＺ座標であるＺＰを右手中指の画像の中での机上の高さとする（打鍵をしているので実際には机上に接触している）。
【００６３】ＺＰを起点にして、そこからの所定の高さＺ１、Ｚ２ないしＺｎのｎ個の高さにおいて、指の左右の輪郭の水平幅８３を求め、その中点８４を求める。このようにしてｎ個の中点を求め、これらｎ個の点から最小二乗法で回帰直線８５を求める。この直線と指の輪郭が交わった点８６を画像上の中指のＸ座標ＸＰとする。Ｘ座標を単に輪郭線の最下点としない理由は、打鍵をしている指先は平坦になるため、最下点が多く存在する場合があるからである。
【００６４】  さらにＺ軸のｎ個の所定の高さと回帰直線８５が交わるｎ個の点を通り、回帰直線８５に直行する直線を引く。この直線が中指の輪郭８２で切り取られる線分８７が高さＺｎにおける中指の径になる。このようにしてｎ個の径を求め、その平均値を中指の平均径（画素数）とする。
【００６５】  以上の手順で中指の位置と大きさ（この場合平均径）が求まる。他の指も同様にして求めることができるが、重要なのは打鍵動作をした手指の座標なので、例えば先に全ての手指の輪郭の最下点を求め、それらのＺ軸上の位置関係から打鍵動作をしていると判断された指があれば、その手指のみ上記手順で座標と大きさを求める、という方法で計算時間が短縮できる。
【００６６】  ここで求めた中指のＸ座標であるＸＰはあくまで画像上の水平方向画素番号であり、また手指の平均径は画像上の手指が占める画素数である。従ってこれをもとに仮想キーボード上のＸＹ座標を求める必要がある。
【００６７】  図１４は手指の仮想キーボード上のＸＹ座標を計算する方法の一例である。ホームポジションにある左手５２Ｄが仮想キーボード上を移動して左手５２Ｅ（打鍵する中指だけを図示）まで斜めにイメージセンサーに近づいた図である。
【００６８】  イメージセンサーの水平方向画角をα、水平方向画素数をＮ（図示なし）とする。また左手中指の実際の平均径をＤｍｍ（図示なし）、中指画像の平均径（画素数）をｄ（図示なし）とする。ホームポジションＰ１における左手中指画像の平均径（画素数）をｄ１、水平方向画角の左端からの角度をθ１とする。この左手中指が机上を打鍵位置Ｐ２に移動し、そのときの平均径（画素数）がｄ２、角度がθ２になったとする。
【００６９】  水平方向画角の左端からの角度は、図４で示したように水平方向画素番号と対応が取れるので、イメージセンサーのレンズの収差などによるひずみの補正も含めて、角度と水平方向画素番号との変換表をキー入力装置内のメモリーに記憶しておけば、画素番号から角度は直ちに求まる。この変換表は、水平方向画素番号は整数で画素数分だけ設け、これに対応する角度は少数点以下まで記憶しておく。手指位置は図１３の説明のように回帰直線８５で求めることから画素番号は小数点以下まで求まる。従ってその画素番号の小数点以下を切り捨てた画素番号と切り上げた画素番号に対応する２つの角度を変換表から求め、画素番号の小数点以下の値から比例計算すれば角度の近似値が得られる。このようにすれば水平方向画素数分の小さな変換表で精度のよい角度が少ない計算時間で求まる。
【００７０】  このようにして画像上の手指の（図１３で求めた）水平方向画素番号から角度θ１、θ２は求めることができる。従ってイメージセンサーからの距離Ｌ１、Ｌ２が求まれば左手中指のホームポジションからの移動ベクトルＶが求まる。Ｌ１、Ｌ２は近似的に次の数式１のＬから求めることができる（この数式１は図１５で説明する）。
【００７１】
【数１】
0004846871.tif 000002
【００７２】  さらに三角関数の近似を用いると次の数式２のＬから求めることができる。
【００７３】
【数２】
0004846871.tif 000003
【００７４】  この式に中指画像の平均径（画素数）ｄ１、ｄ２を代入すると手指までの距離Ｌ１、Ｌ２が求まり、結果として移動ベクトルＶが求まる。このＶから仮想キーボード上の手指の前後移動距離と左右移動距離が計算できる。仮想キーボードのキーの間隔はホームポジションにおける手指の間隔と等しく、またキーは正方形（あるいは高さと幅が等しい菱形）として支障はない。以上から打鍵動作があった位置の仮想キーボード上のキーが決定できる。
【００７５】  ここで課題になるのは、実際の手指の平均径をＤと置いたが、この値はイメージセンサーでは測定できない。Ｄの値を決定する手段はいくつかある。一つの方法としては、使用者が想定している仮想キーボードのキー間隔（ｍｍ）をあらかじめキー入力装置に初期設定してもらうことで解決できる。ホームポジションにおける各手指の平均間隔（画素数）がキー間隔（ｍｍ）に相当することから、その画像上の各手指の平均径（画素数）から実際の手指の径（ｍｍ）は決定できる。
【００７６】  次に仮想キーボード上を１行分手指が移動した場合にどれくらい手指画像の平均径（画素数）が変化するか数式２を用いて逆算してみる。手指の実際の平均径Ｄを１５ｍｍ、イメージセンサーの水平方向画角αをπ／２（即ち９０度）、水平方向画素数Ｎを６４０とする。ホームポジションにおける手指とイメージセンサーとの距離Ｌを２５０ｍｍとする。これらを数式２に代入すると手指画像の平均径（画素数）ｄは約２４．５であることがわかる。仮想キーボードのキーピッチを１９ｍｍとし、手指がホームポジションから１行分メージセンサーに近づき、その距離Ｌが２３１ｍｍになったとする。これを数式２に代入すると手指画像の平均径（画素数）ｄは約２６．５になる。従って仮想キーボード上を１行分移動することで手指画像の平均径（画素数）は約２画素増えることになる。
【００７７】  手指画像の平均径（画素数）はＺ軸方向の種々高さでの径の平均値を用いることで、ノイズの影響を考慮しても２画素の差は十分検出できる。またホームポジションと打鍵位置という２つの画像だけで説明したが、フレーム周波数を高くし、手指が移動中の打鍵前後の手指画像の平均径（画素数）の情報も使用することで、さらに精度を向上できる。
【００７８】  図１５は数式１の説明図である。距離Ｌだけ離れた位置に手指の実際の平均径Ｄがある二等辺三角形の図である。角度βは、水平方向画角α、水平方向画素数Ｎ及び手指画像の平均径（画素数）ｄを用いて近似的に次の数式３で表すことができる。
【００７９】
【数３】
0004846871.tif 000004
【００８０】  これは、水平方向画素数Ｎの内で手指画像の平均径（画素数）ｄが占める割合が、水平方向画角αの内で図のβが占める割合に近似するからである。さらに図の底辺に垂直な線分Ａの長さは、次の数式４で表される。
【００８１】
【数４】
0004846871.tif 000005
【００８２】  手指の実際の平均径Ｄを近似値であるＡで代用すれば数式１になる。この図４は手指の平均径Ｄを大きく書いてあるが、実際には距離Ｌに比べて十分小さいことからＡで代用しても誤差は小さい。
【００８３】  図１６Ａ、図１６Ｂは打鍵動作検出方法の一例の説明図である。図１６Ａのホームポジションにある手指５３Ｃは机上に全ての指先が接触しており、そのときの各指の輪郭からＺ軸上の高さを記憶しておいて判定に用いる。中指のホームポジションでの高さはＺＨであり、これをもとに閾値ＺＨ＋ａとＺＨ＋ｂを設ける。これらの閾値は中指が仮想キーボード上を１行分イメージセンサーから離れて打鍵をする場合の閾値であり、打鍵は中指の最下点がＺＨ＋ａよりも下にあることを条件とする。また同時に中指以外の指はＺＨ＋ｂよりも上にあることを条件とする。ホームポジションから移動して打鍵動作をした図１６Ｂの手指５３Ｄはこの条件を満たしている。
【００８４】  ハードキーボードのキートップは打鍵をしたときに数ミリの沈み込みがあり、これに慣れた使用者は打鍵した指以外の指を浮かせる癖がついている。これを利用して二つの閾値を設け、打鍵動作の検出精度を上げている。このように本発明の場合イメージセンサーを机上に近接して配置しているため、手指が前後に移動してもＺ軸上の変化は微小であり、ホームポジションでの各手指のＺ軸上の高さをもとに打鍵動作の検出は容易である。
【００８５】  図１７はハードウエアブロック図の一例であり、図８の機能ブロック図の機能を構成している。図８の指、爪の輪郭特徴抽出部７０から片手か両手かの判定部７７までの機能部はプロセッサ１４のＲＯＭ１７に書き込まれたソフトウエアプログラム１８で実現しており、ＤＳＰ１５とＣＰＵ１６に読み込まれて実行される。
【符号の説明】
【００８６】１０  携帯端末
１１  ホストプロセッサ
１２  キー入力装置
１３  キー入力プロセッサ
１４  プロセッサ
１５  ＤＳＰ
１６  ＣＰＵ
１７  ＲＯＭ
１８  プログラム
２０  机上に近接して配置されるイメージセンサー
２１、２２  イメージセンサーの水平方向画角の範囲
２３、２４、２５，２６，２７，２８  ＶＧＡ画像の水平方向画素番号の指定位置
２９  ＤＳＰ
３０  ディスプレイ
３１  入力済み文字列の表示部
３２  キーボード表示部
３３  手指画像表示部
４０  ライト照射部
４１、４２  ライトの水平方向照射範囲
４５  マイク
４６  スピーカ
５０Ａ、５０Ｂ、５０Ｃ  一直線上に並んだ仮想キーボード上に配置した左手画像
５０Ｄ  にぎりしめた左手画像
５１Ａ、５１Ｂ、５１Ｃ、５１Ｄ、５１Ｅ、５１Ｆ  一直線上に並んだ仮想キーボード上に配置した右手画像
５２Ａ、５２Ｂ、５２Ｃ、５２Ｄ、５２Ｅ  楽な姿勢で仮想キーボード上に配置した左手画像
５３Ａ、５３Ｂ、５３Ｃ、５３Ｄ  楽な姿勢で仮想キーボード上に配置した右手画像
６０Ａ、６０Ｂ、６０Ｃ  仮想ＱＷＥＲＴＹキーボード
６０Ｄ  仮想テンキーボード
６１  キーボード表示
６２、６２Ａ、６２Ｂ  手指検出位置表示
６３Ａ、６３Ｂ  手指中心位置表示
６４Ａ、６４Ｂ  撮影領域表示
７０  指、爪の輪郭特徴抽出部
７１  手指位置検出部
７２  ホームポジション検出部
７８  打鍵動作検出部
７４  キーコード生成部
７５  初期文字列による学習部
７６  文字入力中の学習部
７７  片手か両手かの判定部
７８  入力キー受付部
８０Ａ、８０Ｂ  ４本の手指の輪郭線
８１Ａ、８１Ｂ、８１Ｃ、８１Ｄ、８１Ｅ、８１Ｆ  手指画像の幅
８２  中指の輪郭線
８３  輪郭の水平幅
８４  輪郭の水平幅の中点
８５  ｎ個の中点の回帰直線
８６  画像上の中指の位置
８７  中指の径
９０  カメラモジュール
Ｄ    中指の実際の径（ｍｍ）
ｄ１、ｄ２  中指画像の平均径（画素数）
Ｌ１、Ｌ２  中指のイメージセンサーからの距離
Ｐ１、Ｐ２  仮想キーボード上の中指の位置
Ｖ    中指の移動ベクトル
ＸＰ、ＺＰ、ＺＨ  中指の座標
α    イメージセンサーの水平方向画角
θ、θ１、θ２  水平方向画角の左端から手指がある位置までの角度
β、Ａ  数式１の説明用記号
【要約】
【課題】携帯端末のウエアラブル性を損なうことなく、手指や腕の疲れを軽減でき、高速なキー入力を、安価なイメージセンサーを使用して実現するキー入力装置を提供する。
【解決手段】机上に配置された使用者の手指を連続的に撮影するイメージセンサー２０と、前記イメージセンサーによって撮影された画像から使用者の各手指の位置を検出する手指位置検出部７１と、前記手指位置検出部が検出した使用者の手指が机上に接触して静止した場合に、その時点の使用者の手指の位置を、各列のキーのイメージセンサーからの距離が異なる使用者固有の形状をした仮想キーボード上のホームポジションとして記憶するホームポジション検出部７２と、前記手指位置検出部が検出した使用者の手指が前記仮想キーボード上のキーを打鍵したことを検出する打鍵動作検出部７３と、打鍵動作があった位置に該当する前記仮想キーボード上のキーのコードを生成するキーコード生成部７４と、を有することを特徴とする。
【選択図】図８【図１Ａ】
0004846871.tif 000006
【図１Ｂ】
0004846871.tif 000007
【図２Ａ】
0004846871.tif 000008
【図２Ｂ】
0004846871.tif 000009
【図３Ａ】
0004846871.tif 000010
【図３Ｂ】
0004846871.tif 000011
【図４】
0004846871.tif 000012
【図５Ａ】
0004846871.tif 000013
【図５Ｂ】
0004846871.tif 000014
【図６Ａ】
0004846871.tif 000015
【図６Ｂ】
0004846871.tif 000016
【図７】
0004846871.tif 000017
【図８】
0004846871.tif 000018
【図９】
0004846871.tif 000019
【図１０】
0004846871.tif 000020
【図１１】
0004846871.tif 000021
【図１２】
0004846871.tif 000022
【図１３】
0004846871.tif 000023
【図１４】
0004846871.tif 000024
【図１５】
0004846871.tif 000025
【図１６Ａ】
0004846871.tif 000026
【図１６Ｂ】
0004846871.tif 000027
【図１７】
0004846871.tif 000028