(57)【要約】【課題】指示体が近接した位置に表示されるキーをユーザに報知する入力装置を提供する。【解決手段】情報処理装置３０１は、オブジェクトが表示されるタッチパネル（３０７）を備える。情報処理装置３０１は、タッチパネル（３０７）に接近する指示体を、該指示体がタッチパネル３０７に接触する前の近接状態において検出する近接度検出部２０２と、検出した指示体に最も近接する位置に表示されるオブジェクトを特定する近接オブジェクト特定部２１１と、オブジェクト毎に異なる報知形態を定義する報知情報を記憶する報知テーブルと、近接オブジェクト特定部２１１が特定したオブジェクトの報知情報を報知テーブルから取得して、該オブジェクトを選択したことを、出力部２２０により該報知情報に応じて報知させる報知指示部２１４と、を備える。【選択図】図３
2017054443.tif 000002
【特許請求の範囲】
【請求項１】
１以上のオブジェクトが表示されるタッチパネルと、
前記タッチパネルに接近する指示体を、該指示体が前記タッチパネルに接触する前の近接状態において検出する検出手段と、
検出した前記指示体に最も近接する位置に表示される前記オブジェクトを特定する特定手段と、
前記オブジェクト毎に異なる報知形態を定義する報知情報を記憶する記憶手段と、
前記特定手段が特定した前記オブジェクトの報知情報を前記記憶手段から取得して、選択した該オブジェクトを、所定の報知手段により該報知情報に応じて報知させる報知指示手段と、を備えることを特徴とする、
情報処理装置。
【請求項２】
前記検出手段で検出した前記指示体の種別を判定する判定手段を備えており、
前記記憶手段は、前記オブジェクト毎に、前記指示体の種別に応じて前記報知情報を記憶しており、
前記報知指示手段は、前記特定手段が特定した前記オブジェクト及び前記判定手段が判定した前記指示体の種別に応じた前記報知情報を取得することを特徴とする、
請求項１記載の情報処理装置。
【請求項３】
前記判定手段は、前記検出手段が複数の指示体を検出した場合に、動いている指示体が１つであれば該指示体の、動いている指示体が１つではなく且つ接近中の指示体が１つであれば該指示体の、動いている指示体が１つではなく且つ接近中の指示体がゼロであれば前記タッチパネルに最も接近している指示体の、種別を判定することを特徴とする、
請求項２記載の情報処理装置。
【請求項４】
前記判定手段は、前記指示体の太さ及び該指示体の向きに応じて、前記指示体の種別を判定することを特徴とする、
請求項２又は３記載の情報処理装置。
【請求項５】
前記判定手段は、前記指示体が指であるか、スタイラスであるか、指であれば左右いずれの指であるかを判定することを特徴とする、
請求項２〜４のいずれか１項記載の情報処理装置。
【請求項６】
前記オブジェクトは１以上のキーにより構成されるソフトウェアキーボードであり、
前記記憶手段は、前記オブジェクトのキー毎に異なる報知形態の前記報知情報を記憶しており、
前記特定手段は、前記指示体に最も近接する位置に表示されるキーを特定し、
前記報知指示手段は、前記特定手段が特定した前記キーの報知情報を前記記憶手段から取得することを特徴とする、
請求項１〜５のいずれか１項記載の情報処理装置。
【請求項７】
前記報知指示手段は、前記ソフトウェアキーボードのホームポジションに位置するキーの報知情報に応じた報知がユーザに知覚でき、他の位置のキーの報知情報に応じた報知がユーザに知覚できないように、前記所定の報知手段により報知することを特徴とする、
請求項６記載の情報処理装置。
【請求項８】
１以上のオブジェクトが表示されるタッチパネル及び前記オブジェクト毎に異なる報知形態を定義する報知情報を記憶する記憶手段を備える情報処理装置により実行される方法であって、
前記タッチパネルに接近する指示体を、該指示体が前記タッチパネルに接触する前の近接状態において検出して、
検出した指示体に最も近接する位置に表示される前記オブジェクトの報知情報を前記記憶手段から取得して、選択した該オブジェクトを、所定の報知手段により該報知情報に応じて報知することを特徴とする、
入力制御方法。
【請求項９】
１以上のオブジェクトが表示されるタッチパネルを有するコンピュータを、
前記タッチパネルに接近する指示体を、該指示体が前記タッチパネルに接触する前の近接状態において検出する検出手段、
検出した前記指示体に最も近接する位置に表示される前記オブジェクトを特定する特定手段、
前記オブジェクト毎に異なる報知形態を定義する報知情報を記憶する記憶手段、
前記特定手段が特定した前記オブジェクトの報知情報を前記記憶手段から取得して、選択した該オブジェクトを、所定の報知手段により該報知情報に応じて報知させる報知指示手段、
として機能させるためのコンピュータプログラム。
【請求項１０】
請求項９記載のコンピュータプログラムを記憶するコンピュータにより読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、タッチパネルを用いた入力装置に関する。
【背景技術】
【０００２】
表示装置であるディスプレイに位置検出装置であるタッチパッドを組み合わせて構成されるタッチパネルは、ユーザが指やスタイラス等の指示体によりディスプレイの表示面をタッチ操作することで種々の指示を受け付ける。ディスプレイには、アプリケーションプログラムに関連付けられるアイコン、テンキー型のソフトウェアキーボード、ｑｗｅｒｔｙ型のソフトウェアキーボード等のオブジェクトが表示される。テンキー型やｑｗｅｒｔｙ型等のソフトウェアキーボードは、複数のキー（これもオブジェクトである）の組み合わせで構成される。
【０００３】
テンキー型やｑｗｅｒｔｙ型等のソフトウェアキーボードをタッチ操作する場合、タッチ面の感触がすべて一様であるために、ユーザは、どのキーをタッチ操作しているのかを判別することができない。そのためにユーザは、キーを見ずにタッチ操作を行う、いわゆるブラインドタッチを行うことが困難である。特許文献１は、指示体がタッチパネルに近接したことを検出して、指示体に最も近いタッチパネル上の位置である近接位置を報知する入力装置を開示する。ユーザは、タッチパネルをタッチする前に、タッチパネル上の指示体の近接位置を確認できるために、タッチパネルを直視しなくともタッチ操作を行うことができるようになる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１４−９９０２６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
従来の入力装置は、指示体の近接状態に応じて近接位置をユーザに報知するが、近接位置に表示されるキーの種類をユーザが判別することはできない。物理的なｑｗｅｒｔｙ型のキーボードでは、通常、ユーザは、ホームポジションを基準にしてブラインドタッチを行う。そのために、ユーザがソフトウェアキーボードのホームポジションに表示されるキーを判別することは、ソフトウェアキーボードのブラインドタッチを行う上で重要である。
【０００６】
本発明は、上記の問題を解決するために、指示体が近接した位置に表示されるオブジェクトをユーザに報知する入力装置を提供することを主たる課題とする。
【課題を解決するための手段】
【０００７】
上記課題を解決する本発明の情報処理装置は、１以上のオブジェクトが表示されるタッチパネルと、前記タッチパネルに接近する指示体を、該指示体が前記タッチパネルに接触する前の近接状態において検出する検出手段と、検出した前記指示体に最も近接する位置に表示される前記オブジェクトを特定する特定手段と、前記オブジェクト毎に異なる報知形態を定義する報知情報を記憶する記憶手段と、前記特定手段が特定した前記オブジェクトの報知情報を前記記憶手段から取得して、選択した該オブジェクトを、所定の報知手段により該報知情報に応じて報知させる報知指示手段と、を備えることを特徴とする。
【発明の効果】
【０００８】
本発明によれば、オブジェクト毎に異なる報知形態が定義されるために、ユーザは、指示体が近接した位置に表示されるオブジェクトを、オブジェクトを見ずに知ることができる。
【図面の簡単な説明】
【０００９】
【図１】（ａ）、（ｂ）は情報処理装置の外観図。
【図２】情報処理装置のハードウェア構成図。
【図３】情報処理装置の機能ブロック図。
【図４】入力制御処理を表すフローチャート。
【図５】（ａ）、（ｂ）、（ｃ）は指示体の種別の判定処理を表すフローチャート。
【図６】報知テーブルの例示図。
【図７】（ａ）、（ｂ）、（ｃ）はブラインドタッチを行う場合の説明図。
【図８】（ａ）、（ｂ）はブラインドタッチを行う場合の説明図。
【発明を実施するための形態】
【００１０】
以下、図面を参照して実施形態を詳細に説明する。ただし、本実施形態に記載されている構成要素はあくまでも例示であり、本発明の範囲をそれらのみに限定するものではない。
【００１１】
（構成）
図１は、本実施形態の入力装置を搭載する情報処理装置の外観図である。図１（ａ）は、情報処理装置３０１の表示面を備える面（前面）から見た前面図であり、図１（ｂ）は、情報処理装置３０１の背面図である。本実施形態の情報処理装置３０１は、例えばスマートフォンやタブレット端末により実現される。
【００１２】
情報処理装置３０１は、タッチパネル３０７及び物理ボタン３０６を備える。タッチパネル３０７は、表示装置であるディスプレイの表示面に、位置検出装置である透明シート状のタッチパッドを貼り付けて構成される。タッチパネル３０７は、例えば静電容量方式であり、非接触の近接状態でユーザの指やスタイラス等の指示体を検出可能である。ディスプレイ部分は、液晶、有機ＥＬ、電子ペーパ等のＦＰＤ（Flat Panel Display）で構成される。ディスプレイには、所定の処理に関連づけされた１以上のオブジェクトが表示される。情報処理装置３０１は、タッチパネル３０７で検出した指示体のタッチ位置に表示されるオブジェクトに関連付けられた処理を実行することができる。
【００１３】
物理ボタン３０６は、電源ボタン、音量ボタン、ホームボタン等の機能が割り当てられた入力インタフェースである。図１の例では、物理ボタン３０６が情報処理装置３０１の筐体の前面、側面、及び上面に設けられるが、物理ボタン３０６の配置はこの限りではない。情報処理装置３０１は、物理ボタン３０６が操作されると、操作された物理ボタン３０６に割り当てられた機能に応じて処理を行う。
【００１４】
情報処理装置３０１は、第１振動子３１５及び第２振動子３１６を内蔵する。第１振動子３１５及び第２振動子３１６は、情報処理装置３０１内部で離れた位置に設けられる。そのために、情報処理装置３０１を把持するユーザは、情報処理装置３０１の振動位置の違いを知覚することができる。
【００１５】
図２は、情報処理装置３０１のハードウェア構成図である。情報処理装置３０１は、ＣＰＵ（Central Processing Unit）３０２、ＲＯＭ（Read Only Memory）３０３、及びＲＡＭ（Random Access Memory）３０４を備える。ＣＰＵ３０２は、ＲＯＭ３０３からコンピュータプログラムを読み出し、ＲＡＭ３０４を作業領域にして実行することで、情報処理装置３０１による各種処理を制御する。情報処理装置３０１は、ＣＰＵ３０２、ＲＯＭ３０３、ＲＡＭ３０４、及び上記した物理ボタン３０６、タッチパネル３０７、第１振動子３１５、第２振動子３１６の他に、内部メモリ３０５、バッテリ３１４、加速度センサ３１７、及びスピーカ３１８を備える。これらの構成要素は、バスにより通信可能に接続される。情報処理装置３０１は、外部メモリ３０９が所定のインタフェースを介して接続される。
【００１６】
内部メモリ３０５及び外部メモリ３０９は、アプリケーションプログラム、処理に用いるデータ等を記憶する。ＣＰＵ３０２は、内部メモリ３０５又は外部メモリ３０９からアプリケーションプログラムを読み込んで実行する。バッテリ３１４は、外部電源により充電され、情報処理装置３０１の各部に電力を供給する。バッテリ３１４は、電源ボタンである物理ボタン３０６が操作されることで電力の供給開始及び停止を行う。加速度センサ３１７は、情報処理装置３０１の筐体の加速度を検出する。スピーカ３１８は、音出力を行う。スピーカ３１８は、複数設けられていてもよい。その場合、発音の位相差や発音タイミングの相違により、ユーザに発音位置の違いを知覚させることができる。
【００１７】
図３は、情報処理装置３０１の機能ブロック図である。この機能ブロックは、本実施形態の情報処理装置３０１の入力制御を行う機能のみを表す。各機能ブロックは、ＣＰＵ３０２がコンピュータプログラムを実行することで実現される。情報処理装置３０１は、入力部２００、制御部２１０、及び出力部２２０として機能する。
【００１８】
入力部２００は、入力検知部２０１、近接度検出部２０２、タッチ判定部２０３、及び加速度判定部２０４を有する。入力部２００は、入力情報を制御部２１０に送信する。入力検知部２０１は、物理ボタン３０６から入力される信号を取得して、信号に応じたイベント種別情報を入力情報として制御部２１０に送信する。近接度検出部２０２は、タッチパネル３０７の静電容量の変化により、近接する指示体をタッチパネル３０７に接触する前に検出して、その近接する位置や数等を表す近接度情報を入力情報として制御部２１０に送信する。タッチ判定部２０３は、タッチパネル３０７への指示体のタッチ位置に応じて、タッチ操作の有無、タッチ位置等を表すタッチ入力情報を入力情報として制御部２１０に送信する。加速度判定部２０４は、加速度センサ３１７による情報処理装置３０１の筐体の加速度の検出結果を所定の周期で取得し、取得した検知結果を入力情報として制御部２１０に送信する。
【００１９】
制御部２１０は、入力部２００から入力される各種の入力情報に基づいて、出力部２２０に出力を指示する。制御部２１０は、近接オブジェクト特定部２１１、姿勢判定部２１２、指示体判定部２１３、報知指示部２１４、及び入力イベント判定部２１５を有する。
【００２０】
近接オブジェクト特定部２１１は、近接度検出部２０２から送信される近接度情報に基づいて、指示体に最も近接する位置に表示されるオブジェクトを選択する。姿勢判定部２１２は、加速度判定部２０４から送信される加速度センサ３１７の検出結果に基づいて、情報処理装置３０１の筐体の傾きや向き等の姿勢を判定する。指示体判定部２１３は、近接度検出部２０２から送信される近接度情報に基づいて、指示体の向き、形状等を検出して、指示体の種別（指、スタイラス等）を判定する。指示体の種別の判定の詳細については後述する。
【００２１】
報知指示部２１４は、姿勢判定部２１２、指示体判定部２１３の各々の判定結果に基づいて、近接オブジェクト特定部２１１で選択されたオブジェクトに関する報知指示情報を、出力部２２０に送信する。
【００２２】
入力イベント判定部２１５は、入力検知部２０１から送信されるイベント種別情報に応じた処理をＣＰＵ３０２に指示する。また入力イベント判定部２１５は、タッチ判定部２０３から送信されるタッチ入力情報に基づいて、タッチ操作されたオブジェクトを判定し、該オブジェクトに関連づけされた処理をＣＰＵ３０２に指示する。
【００２３】
出力部２２０は、発音部２２１及び振動部２２２を有する。出力部２２０は、報知指示部２１４から送信される報知指示情報に基づいて、発音部２２１及び振動部２２２の少なくとも一方により、指示体に最も近接する位置に表示されるオブジェクトに関する報知を行う。発音部２２１は、スピーカ３１８により音による報知を行う。振動部２２２は、第１振動子３１５及び第２振動子３１６を用いて振動による報知を行う。
【００２４】
（入力制御処理）
図４、図５は、このような構成の情報処理装置３０１による入力制御処理を表すフローチャートである。この処理は、指示体がタッチパネル３０７に接近したときに、指示体の近傍に表示されるオブジェクトをユーザに報知する処理である。この処理は、情報処理装置３０１が稼働中で、かつ、ソフトウェアキーボードが表示されている間に繰り返し行われる。本実施形態では、ｑｗｅｒｔｙ型、テンキー型、その他の可変型のキー配列のソフトウェアキーボードの操作時の入力制御について説明する。ソフトウェアキーボードは、１以上のキーの組み合わせで構成される。ソフトウェアキーボード及び各キーは、いずれも指示体により操作されるオブジェクトである。本実施形態では、アプリケーションにおいて文字入力機能が呼び出され、ソフトウェアキーボードが表示された時点で、図４のフローチャートの処理が開始される。
【００２５】
近接度検出部２０２は、タッチパネル３０７への指示体の接近を検出する（Ｓ５０１）。制御部２１０は、すでに指示体に近接するオブジェクトをユーザに報知しているか否かについて判定する（Ｓ５０２）。報知中である場合（Ｓ５０２：Y）、制御部２１０は、出力部２２０に報知の停止を指示する。これにより出力部２２０は、既に行っている報知を停止する（Ｓ５０３）。
【００２６】
報知の停止後、或いは報知中ではない場合（Ｓ５０２：N）、姿勢判定部２１２は、情報処理装置３０１の姿勢に基づいて、情報処理装置３０１がユーザに把持された手持ち状態であるか否かを判定する（Ｓ５０４）。姿勢判定部２１２は、加速度判定部２０４が加速度センサ３１７から所定の周期で取得する筐体の加速度の検出結果に応じて、手持ち状態か否かの判定を行う。例えば、所定の期間、検出された加速度が一様な値であれば、姿勢判定部２１２は、情報処理装置３０１が机上等に置かれて静止していると判定する。所定の期間、加速度が一様な値でなければ、姿勢判定部２１２は、情報処理装置３０１が手持ち状態にあると判定する。手持ち状態にない場合（Ｓ５０４：N）、制御部２１０は、Ｓ５０１の処理に戻り、Ｓ５０１以降の処理を繰り返し行う。
【００２７】
手持ち状態にある場合（Ｓ５０４：Y）、指示体判定部２１３は、近接度検出部２０２から送信される近接度情報に基づいて、近接度検出部２０２で検出した指示体の種別を判定する（Ｓ５０５）。指示体判定部２１３は、指示体が指であるか、スタイラスであるか、指であれば左右いずれの指であるかを判定する。指示体の種別の判定処理の詳細は後述する。指示体の種別が判定できなかった場合（Ｓ５０５：NG）、制御部２１０は、Ｓ５０１の処理に戻り、Ｓ５０１以降の処理を繰り返し行う。
【００２８】
指示体の種別を判定した場合（Ｓ５０５：OK）、近接オブジェクト特定部２１１は、判定した指示体の近傍に表示されるオブジェクトを特定する（Ｓ５０６）。これにより近接オブジェクト特定部２１１は、指示体の先端に最も近接して表示されるオブジェクトを、報知対象オブジェクトとして特定する。具体的に近接オブジェクト特定部２１１は、指示体の先端が示すタッチパネル３０７上の位置情報（二次元座標）を取得し、表示中の画像の構成部品であるオブジェクトのうち、取得した座標を包含する、あるいは取得した座標に最も近いオブジェクトを特定する。本実施形態において、報知対象オブジェクトとして特定されるオブジェクトの代表例はソフトウェアキーボードを構成するキーに当たる矩形オブジェクトのいずれかである。ただし、必ずしも矩形である必要が無いのは言うまでも無いことである。なお、指示体の先端がソフトウェアキーボードから所定の距離より離れている（例えば、入力欄などキーボードではない場所を操作している）場合には、キーではないオブジェクトが報知対象オブジェクトとして適切なキーは存在しないとみなしてしまってもよい。特定結果は、ＲＡＭ３０４に保持される。
【００２９】
報知指示部２１４は、表示されているソフトウェアキーボードのキー配列のタイプ（型）を判定する対象キー配列判定処理を行う（Ｓ５０７）。報知指示部２１４は、アプリケーションの実行状況や、ユーザによる事前の設定情報などから、その時点で表示されているソフトウェアキーボードのキー配列のタイプを示す情報を取得する。判定結果はＲＡＭ３０４に保持される。判定結果とＳ５０６で特定された報知対象オブジェクトの位置により、特定された報知対象オブジェクトがいずれの文字に相当するキーであるかが特定される。報知指示部２１４は、対象キー配列判定処理により、表示されているソフトウェアキーボードが、ｑｗｅｒｔｙ型、テンキー型、その他の可変型のキー配列のいずれであるか、及び、報知対象オブジェクトがいずれのキーであるかを判定する。判定結果はＲＡＭ３０４に保持される。
【００３０】
報知指示部２１４は、報知対象オブジェクトの報知情報を取得する（Ｓ５０８）。報知情報とは、報知対象オブジェクトがどのキーであるかと、その際に報知を行うか行わないか、行う場合の内容を表す情報との対応関係を含む情報である。報知指示部２１４は、取得した報知情報に基づいて、情報処理装置３０１に設定された動作モード（航空機モード、マナーモード等）で許可された範囲で報知対象オブジェクトの報知を行う（Ｓ５０９）。マナーモードであれば、情報処理装置３０１はバイブレーションでのみの報知を行い、通常モードであれば音声を含めた報知を行う。バイブレーションによる報知の場合、出力部２２０は、振動部２２２を用いて報知を行う。音声による報知の場合、出力部２２０は、発音部２２１を用いて報知を行う。
【００３１】
図６は、オブジェクト毎に異なる報知形態を定義する報知情報を表す報知テーブルの例示図である。報知テーブルは、例えばＲＯＭ３０３に記憶される。報知指示部２１４は、報知テーブル７００を参照して、報知対象オブジェクトを報知するための報知情報を取得する。報知テーブル７００は、指示体の種別と、ソフトウェアキーボードのタイプ、及び報知対象オブジェクトが対応するキーの組み合わせに基づいて、報知形態を定義する。この例では、指示体の種別は、左手指７０３、右手指７０４、スタイラス７０５である。オブジェクト（ソフトウェアキーボード）の種別７０６には、ｑｗｅｒｔｙ型、テンキー型、可変型がある。オブジェクト（ソフトウェアキーボード）は、さらにキー７０２の種別に分けて報知情報が設定される。ソフトウェアキーボードが１以上のキーにより構成されるため、報知テーブルは、キー毎に異なる報知形態を定義する報知情報を記憶する。報知指示部２１４は、Ｓ５０５の処理により判定した指示体の種別、及びＳ５０７の処理により判定したオブジェクトの種別、及びＳ５０６の処理により特定した報知対象オブジェクトに対応する要素７０１を報知情報として取得する。
【００３２】
本実施形態の報知情報は、２つの数値で定義される。要素７０１内の左の数値は第１振動子３１５の振動強度を、右の数値は第２振動子３１６の振動強度を表す。振動強度は、振動子の回転数もしくは回転時間である。また、スピーカ３１８による報知の場合、要素７０１内の右の数値及び左の数値が音階を表す。例えば「１」は「ド」の音であり、「２」は「レ」の音とする。また、右の音をオクターブ高い音、左の音をオクターブ低い音として、同じ音同士の発音で区別してもよい。例えば、指示体がスタイラス７０５、オブジェクトの種別７０６が可変型の場合、要素７０１内の数値は、「３・２」である。報知指示部２１４は、報知情報として「３・２」を取得し、オクターブ高い「ミ」とオクターブ低い「レ」の和音として出力するように発音部２２１に指示する。
【００３３】
本実施形態では、ソフトウェアキーボードのホームポジションをユーザに報知する。ｑｗｅｒｔｙ型のキーボードでは、「ｆ」キー及び「ｊ」キーがホームポジションになる。そのために報知テーブル７００では、ｑｗｅｒｔｙ型の「ｆ」キー及び「ｊ」キーの報知情報に、「０」以外の値が設定される。テンキー型のキーボードでは、「５」キーがホームポジションになる。そのために報知テーブル７００では、テンキー型の「５」キーの報知情報に、「０」以外の値が設定される。可変型のキーボードは、左手指又はスタイラスで操作される。そのために報知テーブル７００では、左手指７０３及びスタイラス７０５の報知情報に、「０」以外の値が設定される。このような設定のために、ホームポジションのキーが報知対象オブジェクトの場合にはユーザが報知を知覚でき、それ以外のキーが報知対象オブジェクトの場合にはユーザが報知を知覚できない。
【００３４】
出力部２２０による報知中、タッチ判定部２０３は、タッチパネル３０７へのタッチ操作の有無を判定する（Ｓ５１０）。報知中の所定時間内にタッチ操作がない場合（Ｓ５１０：N）、制御部２１０は、Ｓ５０１の処理に戻り、Ｓ５０１以降の処理を繰り返し行う。この際、指示体が移動して近接するオブジェクトが変更されることがある。この場合も制御部２１０は、Ｓ５０１の処理に戻り、Ｓ５０１以降の処理を繰り返し行う。Ｓ５１０の処理からＳ５０１の処理に戻る場合、出力部２２０は、報知中であるために、Ｓ５０３の処理により、報知が停止される。
【００３５】
所定時間内にタッチ操作がある場合（Ｓ５１０：Y）、報知指示部２１４は、報知対象オブジェクトの報知が不要になったと判定して、出力部２２０に報知の停止を指示する。これにより報知が停止する（Ｓ５１１）。また、入力イベント判定部２１５は、タッチ操作されたオブジェクトを判定し、該オブジェクトに関連づけされた処理をＣＰＵ３０２に指示する。これによりタッチ操作に応じた処理が実行される。
【００３６】
図５により、Ｓ５０５の指示体の種別の判定処理を説明する。
【００３７】
図５（ａ）は、指示体の種別の判定処理を表すフローチャートである。指示体判定部２１３は、近接度検出部２０２から送信される近接度情報に基づいて、タッチパネル３０７に近接する指示体の数を判定する（Ｓ５２１）。指示体判定部２１３は、指示体の数が１つであるか、複数であるかを判定する。指示体の数が複数である場合（Ｓ５２１：複数）、指示体判定部２１３は、優先指示体判定処理を行う（Ｓ５２２）。優先指示体判定処理は、複数の指示体から報知対象オブジェクトを決定する際の１つの指示体を特定する処理である。優先指示体判定処理による指示体の特定が失敗した場合（Ｓ５２２：NG）、指示体判定部２１３は、指示体の判定ができなかったと判定する（Ｓ５２６）。
【００３８】
指示体の数が１つである場合（Ｓ５２１：「１」）、又は優先指示体判定処理により１つの指示体を特定した場合（Ｓ５２２：OK）、指示体判定部２１３は、指示体種別判定処理を行う（Ｓ５２３）。指示体判定部２１３は、優先指示体判定処理で判定した指示体或いはＳ５２１で判定した１の指示体に対して指示体種別判定処理を行う。指示体種別判定処理は、該指示体が指であるかスタイラスであるかの判定と、指であれば左右いずれの指であるかの判定と、を含む処理である。
【００３９】
図５（ｂ）は、優先指示体判定処理を表すフローチャートである。指示体判定部２１３は、近接度検出部２０２から取得した近接度情報に基づいて、複数の指示体のうち、動いている指示体が１つであるかを判定する（Ｓ５４１）。動いている指示体が１つである場合（Ｓ５４１：Y）、指示体判定部２１３は、当該指示体を報知対象オブジェクトを決定する際の指示体に指定する（Ｓ５４２）。
【００４０】
動いている指示体が１つではない場合（Ｓ５４１：N）、指示体判定部２１３は、近接度情報に基づいて、接近中の指示体が１つであるかを判定する（Ｓ５４３）。接近中の指示体が１つである場合（Ｓ５４３：Y）、指示体判定部２１３は、当該指示体を報知対象オブジェクトを決定する際の指示体に指定する（Ｓ５４４）。
【００４１】
接近中の指示体が１つではない場合（Ｓ５４３：N）、指示体判定部２１３は、近接度情報に基づいて、接近中の指示体がゼロであるかを判定する（Ｓ５４５）。接近中の指示体がゼロである場合（Ｓ５４５：Y）、すなわちすべての指示体が停止している場合、指示体判定部２１３は、タッチパネル３０７に最も接近している指示体を報知対象オブジェクトを決定する際の指示体に指定する（Ｓ５４６）。接近中の指示体がゼロではない場合（Ｓ５４５：N）、すなわち接近中の指示体が複数ある場合、指示体判定部２１３は、報知対象オブジェクトを決定する際の指示体を特定できないとして、指示体の特定が失敗したと判定する（Ｓ５４７）。
【００４２】
なお、優先指示体判定処理は、情報処理装置３０１の構成によっては、複数の指示体を報知対象オブジェクトを決定する際の指示体としてもよい。例えば、振動子が複数のオブジェクトの各々に表示位置に対応して実装される場合、複数の指示体を報知対象オブジェクトを決定する際の指示体に指定し、それぞれの近接位置のオブジェクトに対応する振動子で報知を行う。
【００４３】
図５（ｃ）は、指示体種別判定処理を表すフローチャートである。指示体判定部２１３は、近接度検出部２０２から取得した近接度情報に基づいて、指示体の形状が一様な太さで構成されるかを判定する（Ｓ５６１）。指示体の形状が一様な太さである場合（Ｓ５６１：Y）、指示体判定部２１３は、指示体がスタイラスであると判定する（Ｓ５６２）。指示体判定部２１３は、判定結果をＲＡＭ３０４に保存する。
【００４４】
指示体の形状が一様な太さではない場合（Ｓ５６１：N）、指示体判定部２１３は、指示体が指であると判定する。指示体判定部２１３は、指の根本から指先への向きが右から左を向いているかを判定する（Ｓ５６３）。右から左へ向いている場合（Ｓ５６３：Y）、指示体判定部２１３は、指示体が右手の指であると判定する。左から右へ向いている場合（Ｓ５６３：N）、指示体判定部２１３は、指示体が左手の指であると判定する。指示体判定部２１３は、判定結果をＲＡＭ３０４に保存する。指示体判定部２１３は、例えばタッチパネル３０７の静電容量の変化により、指示体の太さ、向きを判定する。
【００４５】
本実施形態では、指示体がスタイラスであるか、左右のどちらの指であるかを判定しているが、指の場合には、指の種類（親指、人差し指、中指、薬指、小指）を判定してもよい。また、スタイラスの場合、スタイラスの種別を判定してもよい。その場合、報知テーブル７００は、指示体の種類に応じて、より詳細に設定される。
【００４６】
（運用形態）
以上のような構成の情報処理装置３０１により、ユーザがソフトウェアキーボードでブラインドタッチを行う場合について説明する。ユーザは、ブラインドタッチを行う場合に、ホームポジションを知る必要がある。そのために情報処理装置３０１は、ユーザに指示体がホームポジションにあることを以下のようにして報知する。
【００４７】
図７は、ｑｗｅｒｔ型のソフトウェアキーボードに対するブラインドタッチを行う場合の説明図である。図７では、ユーザは、ブラインドタッチにより「ｉ」キーをタッチする。ｑｗｅｒｔｙ型のソフトウェアキーボードでは、「ｆ」キー及び「ｊ」キーがホームポジションであるために、情報処理装置３０１は、指示体が「ｆ」キー又は「ｊ」キーに近接したことがわかるように、ユーザに報知を行う。
【００４８】
図７（ａ）は、情報処理装置３０１のタッチパネル３０７に表示されるｑｗｅｒｔｙ型のソフトウェアキーボードに、ユーザがタッチパネル３０７を見ずに指を近づけた近接状態を表す。図７（ａ）の状態では、ユーザは、例えばソフトウェアキーボードの位置と指の位置とを確認するために、ホームポジションを探している。ユーザは、左手１００によって情報処理装置３０１を把持する。指示体であるユーザの右手指１０１は、当初、「ｆ」キーの近傍にある。ユーザの左手指１０５は、「ｓ」キーの近傍で停止する。右手指１０１及び左手指１０５は、いずれもタッチパネル３０７に接触していない。
【００４９】
この状態で近接度検出部２０２は、タッチパネル３０７に近接する指示体として、右手指１０１及び左手指１０５を検出する（Ｓ５０１）。姿勢判定部２１２は、情報処理装置３０１が手持ち状態であると判定する（Ｓ５０４）。
【００５０】
指示体判定部２１３は、近接度検出部２０２から送信される近接度情報に基づいて、タッチパネル３０７に近接する指示体の数が複数であると判定する（Ｓ５２１：複数）。指示体判定部２１３は、優先指示体判定処理を実行する（Ｓ５２２）。左手指１０５が静止し、右手指１０１が動いているために（Ｓ５４１：Y）、指示体判定部２１３は、右手指１０１を優先指示体判定処理による指示体に特定する（Ｓ５４２）。指示体判定部２１３は、指示体種別判定処理を実行する（Ｓ５２３）。指示体種別判定処理により、指示体判定部２１３は、指示体が右手指１０１であると判定する（Ｓ５６１：N、Ｓ６３：Y、Ｓ５６４）。
【００５１】
近接オブジェクト特定部２１１は、指示体判定部２１３が特定した右手指１０１に近接する位置に表示されるオブジェクトである「ｆ」キーを報知対象オブジェクトに特定する（Ｓ５０６）。報知指示部２１４は、図６の報知テーブル７００を参照して、報知情報を取得する（Ｓ５０８）。指示体が右手指７０４であり、オブジェクトの種別がｑｗｅｒｔｙ型のソフトウェアキーボードであり、報知対象オブジェクトのキー７０２が「ｆ」キーであるために、報知指示部２１４は、報知情報「０・０」を取得する。報知情報「０・０」は、第１振動子３１５、第２振動子３１６、及びスピーカ３１８によるユーザが知覚可能な報知を指示していない。そのために図７（ａ）では、ユーザが知覚可能な報知は行われない。
【００５２】
図７（ｂ）は、ユーザがホームポジションを探し出した状態を表す。ユーザは、図７（ａ）の状態から右手指１０１を右方向に動かしている。右手指１０１の動きを検出する度に、情報処理装置３０１は、図４の処理を実行する。図７（ｂ）に示すように、右手指１０１が「ｊ」キーの近傍に移動すると、情報処理装置３０１は、図４のＳ５０１〜Ｓ５０８の処理を行う。Ｓ５０８の処理では、指示体が右手指７０４であり、オブジェクトの種別がｑｗｅｒｔｙ型のソフトウェアキーボードであり、報知対象オブジェクトのキー７０２が「ｊ」キーであるために、報知指示部２１４は、報知情報「０・１」を取得する。
【００５３】
報知指示部２１４は、振動部２２２に対して、第１振動子３１５を０単位、第２振動子３１６を１単位振動させることを指示する（Ｓ５０９）。情報処理装置３０１がマナーモード等でない場合、報知指示部２１４は、発音部２２１により、スピーカ３１８からオクターブ低い「ド」を発音させる。ユーザは、第１振動子３１５、第２振動子３１６、及びスピーカ３１８の出力により、右手指１０１がｑｗｅｒｔｙ型のソフトウェアキーボードのホームポジション上にあることを知覚する。
【００５４】
ホームポジションを知覚したユーザは、ブラインドタッチが可能になる。図７（ｃ）は、ユーザが、ｑｗｅｒｔ型のソフトウェアキーボードに対するブラインドタッチを行う状態を表す。ユーザは、ブラインドタッチにより「ｉ」キーをタッチしている。
【００５５】
図８は、可変型のソフトウェアキーボードに対するブラインドタッチを行う場合の説明図である。図８では、可変型のソフトウェアキーボードとテンキー型のソフトウェアキーボードとが、タッチパネル３０７に表示される。
【００５６】
図８（ａ）では、ユーザがタッチパネル３０７を見ずに、右手指８０３をテンキー型のソフトウェアキーボードに、左手指８０５を可変型のソフトウェアキーボードに接近させた近接状態を表す。ここでは、テンキー型のソフトウェアキーボードのタッチ操作により検索窓に「かながわ」が入力されている。ユーザは、「神奈川県」と入力する途中である。ユーザは、この後、可変型のソフトウェアキーボードに表示される予測変換候補から「神奈川県」を選択する。ユーザは、ブラインドタッチによって「神奈川県」のオブジェクト（キー）を見つける必要がある。
【００５７】
情報処理装置３０１は、指示体に近接する位置に表示されるオブジェクトが予測変換候補であった場合、当該オブジェクトの内容を変換候補８０４として、入力カーソルの近傍に、半透明で重畳表示する。図８（ａ）は、「わ」まで入力が完了した右手指８０３に対して、変換候補の選択を行う左手指８０５がタッチパネル３０７に接近した近接状態である。この状態で情報処理装置３０１は、図４の処理を実行する。Ｓ５０１〜Ｓ５０４の処理は、図７（ａ）と同様である。
【００５８】
Ｓ５０５の指示体の種別の判定処理では、指示体判定部２１３は、近接度検出部２０２から送信される近接度情報に基づいて、タッチパネル３０７に近接する指示体の数が複数であると判定する（Ｓ５２１：複数）。指示体判定部２１３は、優先指示体判定処理を実行する（Ｓ５２２）。左手指８０５及び右手指８０３はいずれも動いているために（Ｓ５４１：N）、指示体判定部２１３は、接近中の指示体を検出する。左手指８０５が接近中であるために（Ｓ５４３：Y）、指示体判定部２１３は、左手指８０５を優先指示体判定処理による指示体に特定する（Ｓ５４４）。その後、指示体判定部２１３は、指示体種別判定処理を実行して（Ｓ５２３）、指示体が左手指であると判定する（Ｓ５６１：N、Ｓ６３：N、Ｓ５６４）。
【００５９】
近接オブジェクト特定部２１１は、指示体判定部２１３が特定した左手指８０５に近接する位置に表示されるオブジェクトである「神奈川」キー８０２を報知対象オブジェクトに特定する（Ｓ５０６、Ｓ５０７）。報知指示部２１４は、図６の報知テーブル７００を参照して、報知情報を取得する（Ｓ５０８）。指示体が左手指７０３であり、オブジェクトの種別が可変型であり、報知特定オブジェクトである「神奈川」キーの下に他のキー（「神奈川県」）が表示されるために、報知指示部２１４は、報知情報「３・２」を取得する。
【００６０】
報知指示部２１４は、振動部２２２に対して、第１振動子３１５を３単位、第２振動子３１６を２単位振動させることを指示する（Ｓ５０９）。情報処理装置３０１がマナーモード等でない場合、報知指示部２１４は、発音部２２１により、スピーカ３１８から発音させる。ユーザは、第１振動子３１５、第２振動子３１６、及びスピーカ３１８の出力により、左手指８０５が予測変換候補の上にあると判別でき、「神奈川県」キー付近へ指を進めることができる。
【００６１】
この際、図８（ｂ）に示すように、右手指８０３が誤って可変型のソフトウェアキーボード付近に移動することがある。報知テーブル７００は、可変型のソフトウェアキーボードの右手指７０４の報知情報がすべて「０・０」に設定されている。そのために、第１振動子３１５、第２振動子３１６、及びスピーカ３１８による報知は行われない。そのために、この場合の誤報知を防止することができる。
【００６２】
以上、ホームポジションの報知によるブラインドタッチの方法を説明したが、ホームポジションには、任意のキーを用いることができる。その場合、報知テーブルに設定する指種別とキー種別を追加するだけでよい。ホームキーを通知することはブラインドタッチを可能とする一つの方法であるが、全てのキーが報知機能をもってもブラインドタッチを実現できる。その際、タッチしようとしている指のみがタッチする予定のキーを報知されることでブラインドタッチが容易になる。
【００６３】
［その他の実施形態］
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（又はＣＰＵ、ＭＰＵ等）がプログラムを読み出して実行する処理である。
【図１】
2017054443.tif 000003
【図２】
2017054443.tif 000004
【図３】
2017054443.tif 000005
【図４】
2017054443.tif 000006
【図５】
2017054443.tif 000007
【図６】
2017054443.tif 000008
【図７】
2017054443.tif 000009
【図８】
2017054443.tif 000010