(57)【要約】【課題】従来と比して一段と操作入力に対する応答性を向上させる。【解決手段】操作部の操作面に対する指示物の接触及び近接を検知し、当該検知結果をもとに、操作面に対する指示物の動きを検出して、当該指示物の動きから予測される操作入力に対応する処理を開始しておくようにしたことで、ユーザが実際に操作入力を行ってから対応する処理が完了するまでの時間を短縮することができる。【選択図】図１
2011170834.tif 000002
【特許請求の範囲】
【請求項１】
操作面に対する指示物の接触を検知する接触検知部と、
上記操作面に対する指示物の近接を検知する近接検知部と、
上記接触検知部による検知結果、及び上記近接検知部による検知結果をもとに、上記操作面に対する上記指示物の動きを検出し、検出した上記指示物の動きから予測される操作入力に対応する処理を開始する制御部と
を具える情報処理装置。
【請求項２】
上記制御部は、
検出された上記指示物の動きが所定の動きであったときに、当該指示物による操作入力が行われると予測する
請求項１に記載の情報処理装置。
【請求項３】
上記制御部は、
検出された上記指示物の動きが上記所定の動きであったときに、当該指示物を操作面に接触させる操作入力が行われると予測する
請求項２に記載の情報処理装置。
【請求項４】
上記制御部は、
上記指示物の移動速度及び移動方向に基づいて、上記所定の動きを判別する
請求項３に記載の情報処理装置。
【請求項５】
上記制御部は、
上記操作面に対して垂直方向に所定速度以上で上記指示物が近づいているときに、当該指示物を操作面に接触させる操作入力が行われると予測する
請求項４に記載の情報処理装置。
【請求項６】
上記制御部は、
上記操作面に対して斜め方向に所定速度以上で上記指示物が近づいているときに、当該指示物で操作面を払う操作入力が行われると予測する
請求項４に記載の情報処理装置。
【請求項７】
上記制御部は、
上記指示物の移動速度及び移動方向と、当該指示物の操作面までの距離から、当該指示物の動きが所定の動きであるかを判別する
請求項４に記載の情報処理装置。
【請求項８】
上記制御部は、
上記指示物の操作面までの距離が所定以下で、且つ当該操作面と平行な方向への指示物の移動速度が所定以下である場合に、当該指示物を操作面に接触させる操作入力が行われると予測する
請求項７に記載の情報処理装置。
【請求項９】
上記制御部は、
上記操作入力が行われると予測したとき、上記操作入力に対応する処理のうち、バックグラウンド処理が可能な処理を開始する
請求項１に記載の情報処理装置。
【請求項１０】
上記制御部は、
上記バックグラウンド処理を開始してから、所定時間経過しても、予測された上記操作入力が行われなかった場合、当該バックグラウンド処理を停止する
請求項９に記載の情報処理装置。
【請求項１１】
上記制御部は、
予測された上記操作入力が行われたときに、上記バックグラウンド処理以外の処理を実行する
請求項９に記載の情報処理装置。
【請求項１２】
接触検知部が操作面に対する指示物の接触を検知し、
近接検知部が上記操作面に対する指示物の近接を検知し、
上記接触検知部及び上記近接検知部による検知結果をもとに、上記操作面に対する上記指示物の動きを検出し、検出した上記指示物の動きから予測される操作入力に対応する処理を開始する
操作予測方法。
【請求項１３】
情報処理装置に対し、
接触検知部が操作面に対する指示物の接触を検知し、近接検知部が当該操作面に対する指示物の近接を検知する接触近接検知ステップと、
上記接触近接検知ステップでの検知結果をもとに、上記操作面に対する上記指示物の動きを検出し、検出した上記指示物の動きから予測される操作入力に対応する処理を開始する処理開始ステップと
を実行させるための操作予測プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、操作予測方法及び操作予測プログラムに関し、例えば、タッチパネルを有する情報処理装置に適用して好適なものである。
【背景技術】
【０００２】
昨今、タッチパネルを有する情報処理装置が広く普及している。タッチパネルを有する情報処理装置では、タッチパネルに対する指示物（指、タッチペンなど）の接触を検知し、これを操作入力として受け付け各種処理を実行するようになっている。
【０００３】
また近年、タッチパネルに対する指示物の接触にくわえて、タッチパネルから指示物までの距離も検知し得る情報処理装置が提案されている（例えば特許文献１参照）。
【０００４】
この情報処理装置では、タッチパネルと液晶パネルからなるタッチスクリーンに、複数の指示項目を表示させ、指がタッチスクリーンに或る距離まで近づくと、このとき指に最も近接する位置の指示項目を拡大表示させる。そして、この情報処理装置では、拡大表示させた指示項目に指が接触すると（すなわちこの指示項目が指でタッチされると）、指示項目に対応する処理を行う。
【０００５】
こうすることで、この情報処理装置では、タッチスクリーンの画面が小さくても、指示項目を容易に確認させることができると共に容易にタッチさせることができ、小型化と操作性の向上を両立させている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００９−１１６５８３公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
ところで近年、情報処理装置が扱うデータ量の増加などにともない、情報処理装置の処理負荷が増加する傾向にある。ゆえに、従来の情報処理装置では、例えば、タッチパネルに対する操作入力が行われてから、この操作入力に対応する処理の結果が出るまでに時間がかかってしまうことがあった。
【０００８】
例えば、タッチパネルに対して次の画像を表示する操作が行われてから、次の画像が表示されるまでに数秒かかるようなことがあった。
【０００９】
このように、従来の情報処理装置では、操作入力に対する応答性が必ずしも良好であるとは言えなかった。
【００１０】
本発明は以上の点を考慮してなされたもので、従来と比して一段と操作入力に対する応答性を向上させた情報処理装置、操作予測方法及び操作予測プログラムを提案しようとするものである。
【課題を解決するための手段】
【００１１】
かかる課題を解決するため本発明においては、操作面に対する指示物の接触を検知する接触検知部と、操作面に対する指示物の近接を検知する近接検知部と、接触検知部による検知結果、及び近接検知部による検知結果をもとに、操作面に対する指示物の動きを検出し、検出した指示物の動きから予測される操作入力に対応する処理を開始する制御部とを設けるようにした。
【００１２】
このように、操作面に対する指示物の動きから操作入力を予測して、当該操作入力に対応する処理を開始しておくようにしたことで、ユーザが実際に操作入力を行ってから対応する処理が完了するまでの時間を短縮することができる。
【発明の効果】
【００１３】
本発明によれば、操作面に対する指示物の動きから操作入力を予測して、当該操作入力に対応する処理を開始しておくようにしたことで、ユーザが実際に操作入力を行ってから対応する処理が完了するまでの時間を短縮することができる。かくして、従来と比して一段と操作入力に対する応答性を向上させた情報処理装置、操作予測方法及び操作予測プログラムを実現できる。
【図面の簡単な説明】
【００１４】
【図１】第１の実施の形態の概要となる情報処理装置の機能構成を示すブロック図である。
【図２】第１の実施の形態の具体例となる携帯端末の外観構成を示す略線図である。
【図３】携帯端末のハードウェア構成を示すブロック図である。
【図４】静電センサの出力値の変化を示す略線図である。
【図５】タッチ位置及び近接位置の検知の説明に供する略線図である。
【図６】タッチ位置及び近接位置の座標系の説明に供する略線図である。
【図７】タップするときの指の動きを示す略線図である。
【図８】タップの予測の説明に供する略線図である。
【図９】フリックするときの指の動きを示す略線図である。
【図１０】フリックの予測（１）の説明に供する略線図である。
【図１１】フリックの予測（２）の説明に供する略線図である。
【図１２】第１の実施の形態における操作予測処理手順を示すフローチャートである。
【図１３】第２の実施の形態における文字入力画面の構成を示す略線図である。
【図１４】キータッチの予測（１）の説明に供する略線図である。
【図１５】キータッチの予測（２）の説明に供する略線図である。
【図１６】第２の実施の形態における操作予測処理手順を示すフローチャートである。
【図１７】第３の実施の形態における携帯端末のハードウェア構成を示すブロック図である。
【図１８】押込タップするときの指の動きを示す略線図である。
【図１９】押込タップの予測の説明に供する略線図である。
【図２０】フリックするときの指の動きを示す略線図である。
【図２１】押圧力を利用したフリックの予測の説明に供する略線図である。
【図２２】ドラッグするときの指の動きを示す略線図である。
【図２３】押圧力を利用したドラッグの予測の説明に供する略線図である。
【図２４】押圧力を利用したキータッチの予測の説明に供する略線図である。
【図２５】第３の実施の形態における操作予測処理手順（１）を示すフローチャートである。
【図２６】第３の実施の形態における操作予測処理手順（２）を示すフローチャートである。
【図２７】今回の近接位置と前々回の近接位置とを用いたフリックの予測の説明に供する略線図である。
【発明を実施するための形態】
【００１５】
以下、発明を実施するための最良の形態（以下実施の形態とする）について説明する。尚、説明は以下の順序で行う。
１．第１の実施の形態
２．第２の実施の形態
３．第３の実施の形態
４．他の実施の形態
【００１６】
＜１．第１の実施の形態＞
［１−１．第１の実施の形態の概要］
まず、第１の実施の形態の概要を説明する。因みに、この概要を説明した後、第１の実施の形態の具体例の説明に移る。
【００１７】
図１において１は、情報処理装置を示す。この情報処理装置１には、操作面（例えばタッチパネルの操作面）に対する指示物の接触を検知する接触検知部２と、操作面に対する指示物の近接を検知する近接検知部３とが設けられている。
【００１８】
さらにこの情報処理装置１には、接触検知部２による検知結果、及び近接検知部３による検知結果をもとに、操作面に対する指示物の動きを検出し、検出した指示物の動きから予測される操作入力に対応する処理を開始する制御部４が設けられている。
【００１９】
このように情報処理装置１は、操作面に対する指示物の動きから操作入力を予測して、当該操作入力に対応する処理を開始しておくようにしたことで、ユーザが実際に操作入力を行ってから対応する処理が完了するまでの時間を短縮することができる。
【００２０】
より具体的には、制御部４は、検出された指示物の動きが所定の動きであったときに、当該指示物による操作入力が行われると予測する。
【００２１】
また制御部４は、検出された指示物の動きが所定の動きであったときに、当該指示物を操作面に接触させる操作入力が行われると予測する。
【００２２】
このとき制御部４は、例えば、指示物の移動速度及び移動方向に基づいて、所定の動きを判別する。
【００２３】
このとき、例えば、操作面に対して垂直方向に所定速度以上で指示物が近づいているときに、当該指示物を操作面に接触させる操作入力が行われると予測する。
【００２４】
またこのとき、例えば、操作面に対して斜め方向に所定速度以上で上記指示物が近づいているときに、当該指示物で操作面を払う操作入力が行われると予測する。
【００２５】
さらに制御部４は、例えば、指示物の移動速度及び移動方向と、当該指示物の操作面までの距離から、当該指示物の動きが所定の動きであるかを判別する。
【００２６】
このとき、例えば、指示物の操作面までの距離が所定以下で、且つ当該操作面と平行な方向への指示物の移動速度が所定以下である場合に、当該指示物を操作面に接触させる操作入力が行われると予測する。
【００２７】
さらに制御部４が、操作入力が行われると予測したとき、操作入力に対応する処理のうち、バックグラウンド処理が可能な処理を開始するようにしてもよい。
【００２８】
さらに制御部４が、バックグラウンド処理を開始してから、所定時間経過しても、予測された上記操作入力が行われなかった場合、当該バックグラウンド処理を停止するようにしてもよい。
【００２９】
さらに制御部４が、予測された操作入力が行われたときに、バックグラウンド処理以外の処理を実行するようにしてもよい。
【００３０】
このような構成でなる情報処理装置１の具体例について、以下、詳しく説明する。
【００３１】
［１−２．第１の実施の形態の具体例］
［１−２−１．携帯端末の外観構成］
次に、図２を用いて、上述した情報処理装置１の具体例である携帯端末１００の外観構成について説明する。
【００３２】
携帯端末１００は、片手で把持し得る程度の大きさでなる略扁平矩形状の筐体１０１を有している。
【００３３】
筐体１０１の前面１０１Ａの中央部には、長方形状のタッチスクリーン１０２が設けられている。タッチスクリーン１０２は、液晶パネルと、液晶パネルの表示面を覆う薄型透明のタッチパネルとで構成される。因みに、このタッチパネルは、例えば、静電容量式で、マルチタッチに対応する。
【００３４】
携帯端末１００は、このタッチスクリーン１０２に対する、指（タッチペンなどでも可）による接触操作及び近接操作を、操作入力として受け付けるようになっている。尚、接触操作とは、タッチスクリーンを指で触って行う操作（これをタッチ操作とも呼ぶ）であり、近接操作とは、タッチスクリーンを触らずに指を近づけて行う操作のことである。
【００３５】
さらにこの携帯端末１００の筐体１０１の前面１０１Ａには、タッチスクリーン１０２の近傍に、操作ボタン１０３も設けられている。
【００３６】
尚、この携帯端末１００は、長方形状のタッチスクリーン１０２が縦長となる向き（これを縦向きとも呼ぶ）でも、横長となる向き（これを横向きとも呼ぶ）でも使用できるようになっているが、以下では、縦向きで使用される場合を主に説明する。
【００３７】
［１−２−２．携帯端末のハードウェア構成］
次に図３を用いて、携帯端末１００のハードウェア構成について説明する。この携帯端末１００では、ＣＰＵ１１０が、不揮発性メモリ１１１に格納されているプログラムをＲＡＭ１１２に展開して読み込み、このプログラムに従って各種処理を実行すると共に各部を制御する。尚、ＣＰＵは、Central  Processing  Unitの略、ＲＡＭは、Random  Access  Memoryの略である。
【００３８】
ＣＰＵ１１０は、タッチスクリーン１０２に対してタッチ操作又は近接操作が行われたことを認識すると、この操作を操作入力として受け付け、この操作入力に応じた処理を実行する。
【００３９】
タッチスクリーン１０２は、各種情報を表示する表示デバイスである液晶パネル１０２Ａと、操作入力を受け付ける操作入力デバイスであるタッチパネル１０２Ｂとで構成される。
【００４０】
タッチパネル１０２Ｂは、上述したように、静電容量式のタッチパネルであり、操作面に対して格子状に配置された複数の静電センサ（図示せず）を有している。これら複数の静電センサの各々は、指などの導体が操作面に近づくことで変化する静電容量に応じて、出力値が変化する。
【００４１】
実際、図４に示すように、タッチパネル１０２Ｂの操作面に対して指が近づけられたとする。このとき、指の真下に位置する静電センサの出力値は、例えば、操作面と指との距離が３０ｍｍのときには「１０」、１５ｍｍのときには「２０」、５ｍｍのときには「４０」、操作面に指が接触したときには最大の「８０」と変化する。
【００４２】
ＣＰＵ１１０は、このように変化する各静電センサの出力値と、各静電センサの位置とをタッチパネル１０２Ｂから取得する。そしてＣＰＵ１１０は、これらをもとに、タッチパネル１０２Ｂの操作面上において、指が接触している部分、近接している部分、接触も近接もしていない部分を区別する。尚、ここでは、指が接触している部分を接触部分とも呼び、近接している部分を近接部分、接触も近接もしていない部分を非近接部分とも呼ぶ。
【００４３】
具体的に、ＣＰＵ１１０は、図５に示すように、タッチパネル１０２Ｂの操作面上において、静電センサの出力値が「５０」以上となる部分を、接触部分と判別する。またＣＰＵ１１０は、出力値が「２０」以上「５０」未満となる部分を、近接部分と判別し、出力値が「２０」未満となる部分を、非近接部分と判別する。
【００４４】
ＣＰＵ１１０は、このようにしてタッチパネル１０２Ｂの操作面上における接触部分、近接部分、非近接部分を判別することで、操作面に指が接触しているのか、それとも近接しているだけなのかなどを検知できる。また、操作面上のどの位置に指が接触しているのか、操作面上のどの位置に操作面からどの程度離れて指が近接しているのかを検知することもできる。
【００４５】
このとき、ＣＰＵ１１０は、接触部分が存在する場合には、例えばその重心又は中心（操作面上に接触している指の腹の重心又は中心）をタッチ位置として検知するようになっている。またＣＰＵ１１０は、近接部分のみが存在する場合には、例えばその重心又は中心（操作面に近接している指の腹の重心又は中心）を、近接位置として検知するようになっている。
【００４６】
尚、ＣＰＵ１１０は、図６に示すように、タッチパネル１０２Ｂの操作面の短辺に平行な軸をＸ軸、長辺に平行な軸をＹ軸、操作面に垂直な軸をＺ軸とし、操作面の例えば左下隅を原点とするＸＹＺ空間上の座標として、タッチ位置及び近接位置を検知するようになっている。
【００４７】
さらにＣＰＵ１１０は、一定時間ごとに、タッチパネル１０２Ｂから各静電センサの出力値を取得し、接触部分、近接部分、非近接部分を判別していくことで、これらをもとに、ＸＹＺ空間上でのタッチ位置及び近接位置の変移を検出する。
【００４８】
さらにＣＰＵ１１０は、これらの変移をもとに、タッチパネル１０２Ｂ上での指の動きを検出して、この動きをもとに、タッチスクリーン１０２に対するタッチ操作及び近接操作を認識する。そして、ＣＰＵ１１０は、これを操作入力として受け付け、操作入力に応じた処理を実行するようになっている。
【００４９】
またＣＰＵ１１０は、操作ボタン１０３に対する押下操作を認識すると、これを操作入力として受け付け、この操作入力に応じた処理を実行するようにもなっている。
【００５０】
ここで、例えば、タッチスクリーン１０２に、音楽データを再生する為の再生ボタンが表示された状態で、ユーザが、この再生ボタンをタップしたとする。
【００５１】
ＣＰＵ１１０は、このようなタッチ操作を、音楽データを再生する操作入力として受け付け、不揮発性メモリ１１１から、音楽データを読み出して再生部１１３に送る。
【００５２】
再生部１１３は、ＣＰＵ１１０の制御のもと、音楽データに対して、デコード処理、デジタアナログ変換処理、増幅処理などの再生処理を施すことで、音声信号を得、これをヘッドホン端子（図示せず）から出力する。
【００５３】
こうすることで、ヘッドホン端子に接続されたヘッドホンを介してユーザに音楽を聴かせることができる。
【００５４】
またこのときＣＰＵ１１０は、読み出した音楽データに対応する、ジャケット画像、曲タイトル、アーティスト名などの情報を取得して、これをタッチスクリーン１０２の液晶パネル１０２Ａに表示させる。こうすることで、再生中の音楽に関する情報をユーザに提示することができる。
【００５５】
さらに、例えば、タッチスクリーン１０２に、不揮発性メモリ１１１に記憶されている画像のうちの１枚が表示された状態で、ユーザが、この画像に対して、下方向へのフリックを行ったとする。尚、フリックとは、操作面を軽く払うタッチ操作のことである。
【００５６】
ＣＰＵ１１０は、このようなタッチ操作を、次の画像を表示する操作入力として受け付け、不揮発性メモリ１１１から、次の画像に対応する画像データを読み出して、この画像データに基づく画像を、液晶パネル１０２Ａに表示させる。
【００５７】
こうすることで、不揮発性メモリ１１１に記憶されている画像を順次ユーザに提示することができる。
【００５８】
また、例えば、タッチスクリーン１０２に、Ｗｅｂブラウザを起動する為のブラウザアイコンが表示された状態で、ユーザが、このブラウザアイコンをタップしたとする。
【００５９】
ＣＰＵ１１０は、このようなタッチ操作を、Ｗｅｂブラウザを起動する操作入力として受け付け、Ｗｅｂブラウザを起動する。
【００６０】
ここでＣＰＵ１１０は、液晶パネル１０２ＡにＷｅｂブラウザ画面を表示させると共に、ネットワークインタフェース１１４を介して、ネットワーク上のサーバからＷｅｂページのページデータを受信する。そしてＣＰＵ１１０は、このページデータに基づくページ画像を、Ｗｅｂブラウザ画面に表示させる。
【００６１】
こうすることで、Ｗｅｂブラウザ画面を介して、ユーザにＷｅｂページを閲覧させることができる。
【００６２】
さらに、例えば、タッチスクリーン１０２に、ソフトウェアキーボードが表示された状態で、ユーザが、ソフトウェアキーボードを構成する複数のキーのうちの１つをタップしたとする。
【００６３】
ＣＰＵ１１０は、このようなタッチ操作を、タップされたキーに対応する文字を入力する操作入力として受け付け、この文字を液晶パネル１０２Ａに表示させる。
【００６４】
こうすることで、タッチスクリーン１０２に表示したソフトウェアキーボードを介して、ユーザに文字入力させることができる。
【００６５】
因みに、本実施の形態の概要で説明した情報処理装置１の接触検知部２及び近接検知部３の具体的なハードウェアの例が上述した携帯端末１００のタッチパネル１０２Ｂである。また情報処理装置１の制御部４の具体的なハードウェアの例が携帯端末１００のＣＰＵ１１０である。
【００６６】
ところで、携帯端末１００は、タッチスクリーン１０２に近接している指の動きをもとに、タッチ操作を予測して、タッチ操作に対応する処理を、実際にタッチ操作が行われる前に開始するようになっている。
【００６７】
以下、タッチ操作の予測について詳しく説明する。
【００６８】
［１−２−３．タッチ操作の予測］
ＣＰＵ１１０は、上述したように、一定時間ごとにタッチパネル１０２Ｂから得られる各静電センサの出力値と位置をもとに、操作面上における、タッチ位置及び近接位置を、ＸＹＺ空間上の座標として検知するようになっている。
【００６９】
ここで、まず、タッチパネル１０２Ｂに近接している指の動き、すなわち近接位置の変移をもとに、タッチパネル１０２Ｂに対するタッチ操作の１つであるタップを予測する場合について説明する。
【００７０】
実際、ユーザは、タッチパネル１０２Ｂの操作面をタップする場合、図７に示すように、操作面に対して、指をほぼ垂直に下ろすようにしてタッチした後、この指を操作面から離す動作を素早く行う。
【００７１】
そこで、携帯端末１００は、操作面に対して、指をほぼ垂直に素早く下ろす動きを検出したときに、操作面をタップするときの予備動作が行われたと認識して、ユーザが、操作面をタップすると予測するようになっている。
【００７２】
具体的に、ＣＰＵ１１０は、図８に示すように、一定時間Ｔごとに近接位置を検知する。このとき、ＣＰＵ１１０は、前回の近接位置のＺ座標と、今回の近接位置のＺ座標とをもとに、Ｚ座標の変化量を算出する。この変化量は、一定時間Ｔ内での操作面と指との距離の変化量を表す。
【００７３】
そしてＣＰＵ１１０は、Ｚ座標の変化量をもとに、Ｚ座標の傾き（すなわちＺ座標の変化量／一定時間Ｔ）を算出する。この傾きは、その符号が「−」であれば、指が操作面に近づいていることを意味し、「＋」であれば、操作面から離れていっていることを意味する。さらにこの傾きは、その絶対値が、指が近づいていくとき及び離れていくときの速さを表す。
【００７４】
ゆえに、Ｚ座標の傾きから、指がどの程度の速さで、操作面に近づいているのか、また操作面から離れていっているのかがわかる。
【００７５】
さらに、ＣＰＵ１１０は、前回の近接位置のＸ座標及びＹ座標と、今回の近接位置のＸ座標及びＹ座標をもとに、一定時間Ｔ内での近接位置のＸＹ平面（すなわち操作面と平行な面）上での移動ベクトルを算出する。この移動ベクトルは、一定時間Ｔ内での操作面上での指の移動量と移動方向を表す。
【００７６】
ＣＰＵ１１０は、このようにして得られた、一定時間Ｔ内での近接位置のＺ座標の傾きと、ＸＹ平面上での移動ベクトルとをもとに、操作面に対して、タップするときの予備動作が行われたかどうかを判別する。
【００７７】
すなわち、ＣＰＵ１１０は、一定時間内での近接位置のＺ座標の傾きが「−」で絶対値が所定値以上であり、且つＸＹ平面上での指の移動量が所定量以下である場合に、タップするときの予備動作が行われたと判別する。
【００７８】
換言すれば、ＣＰＵ１１０は、指が、操作面と平行な方向にはほとんど移動することなく、一定以上の速さで、操作面に近づいている場合に、タップするときの予備動作が行われたと判別する。
【００７９】
実際、図８の例では、近接位置Ｐ１を検知した時点ｔ１から一定時間Ｔ経過後の、近接位置Ｐ２を検知した時点ｔ２で、Ｚ座標の傾きが「−」で絶対値が所定値以上であり、且つＸＹ平面上での移動量が所定量以下となる。
【００８０】
ゆえに、ＣＰＵ１１０は、この時点ｔ２で、タップするときの予備動作があったと判別して、近接位置Ｐ２のＸ座標及びＹ座標に対応する操作面上の位置がタップされると予測する。そしてＣＰＵ１１０は、このタップに対応する処理をこの時点ｔ２から開始する。
【００８１】
ここで、例えば、近接位置Ｐ２のＸ座標及びＹ座標に対応する操作面上の位置に、Ｗｅｂページのリンクが表示されているとする。
【００８２】
この場合、ＣＰＵ１１０は、時点ｔ２で、リンクがタップされることを予測すると、リンク先のＷｅｂページのページデータの受信を開始する。そしてＣＰＵ１１０は、受信したページデータをＲＡＭ１１２に記憶していく。
【００８３】
その後、ＣＰＵ１１０は、時点ｔ２から一定時間Ｔ経過後のｔ３でタッチ位置Ｐ３を検知することにより、タッチパネル１０２Ｂの操作面が実際にタッチされたと認識する。
【００８４】
さらにＣＰＵ１１０は、時点ｔ４〜ｔ６までの間、タッチされ続けていると認識した後、時点ｔ６から一定時間経過後のｔ７で近接位置Ｐ７を検知することにより、操作面から指が離されたと認識する。
【００８５】
ＣＰＵ１１０は、操作面から指が離されたこの時点ｔ７で、実際にリンクがタップされたと認識する。するとＣＰＵ１１０は、この時点ｔ７までにＲＡＭ１１２に記憶させたページデータを読み出し、このページデータに基づくリンク先のＷｅｂページを、Ｗｅｂブラウザ画面に表示させる。
【００８６】
このように、ＣＰＵ１１０は、実際にリンクがタップされる前の時点ｔ２で、操作面に近接している指の動きから、リンクがタップされることを予測して、リンク先のページデータの受信を開始するようにした。
【００８７】
こうすることで、従来のように、実際にリンクがタップされた時点ｔ７で、リンク先のページデータの受信を開始する場合と比して、実際にリンクがタップされた時点ｔ７から、リンク先のＷｅｂページが表示されるまでの時間を短縮できる。
【００８８】
尚、ＣＰＵ１１０は、例えば、実際にリンクがタップされる前に、ページデータの受信が完了したとしても、実際にリンクがタップされるまでは、リンク先のＷｅｂページを表示しないようになっている。
【００８９】
つまり、ＣＰＵ１１０は、リンクのタップに対応する処理（ページデータの受信＋Ｗｅｂページの表示）の中で、バックグラウンドで先に実行できる処理（ページデータの受信）のみを実行するようになっている。
【００９０】
こうすることで、万が一、予測が外れてリンクがタップされなかったにも関わらずリンク先のＷｅｂページを表示してしまうような状況を回避することができ、ユーザが不利益を被らないようになっている。
【００９１】
尚、ページデータの受信のように、ユーザには直接わからないように、バックグラウンドで先に実行できる処理をＢＧ（バックグラウンド）処理とも呼ぶ。またＷｅｂページの表示のように、ユーザに直接わかるように、フォアグラウンドで実行する処理をＦＧ（フォアグラウンド）処理とも呼ぶ。
【００９２】
さらにＣＰＵ１１０は、例えば、リンクのタップを予測した時点ｔ２から、所定時間経過しても、実際にタップが行われなかった場合には、予測が外れたとして、ページデータの受信を停止するようにもなっている。
【００９３】
こうすることで、予測が外れたにも関わらず、予測したタップに対応する処理を無駄に継続してしまうような状況を回避することができる。
【００９４】
次に、タッチパネル１０２Ｂに近接している指の動き、すなわち近接位置の変移をもとに、タッチパネル１０２Ｂに対するタッチ操作の１つであるフリックを予測する場合について説明する。
【００９５】
実際、ユーザは、タッチパネル１０２Ｂの操作面をフリックする場合、図９に示すように、操作面に対して、指を斜めに下ろすようにしてタッチした後、この指を操作面上で滑らせてから離す動作を素早く行う。
【００９６】
そこで、携帯端末１００は、操作面に対して、指を斜めに素早く下ろす動きを検出したときに、操作面をフリックするときの予備動作が行われたと認識して、ユーザが、操作面をフリックすると予測するようになっている。
【００９７】
具体的に、ＣＰＵ１１０は、タップを予測したときと同様、図１０及び図１１に示すように、一定時間Ｔごとに近接位置を検知する。このとき、ＣＰＵ１１０は、前回の近接位置のＺ座標と、今回の近接位置のＺ座標とをもとに、Ｚ座標の変化量を算出する。
【００９８】
そしてＣＰＵ１１０は、Ｚ座標の変化量をもとに、Ｚ座標の傾き（すなわちＺ座標の変化量／一定時間Ｔ）を算出する。この傾きから、指がどの程度の速さで、操作面に近づいているのか、また操作面から離れていっているのかがわかる。
【００９９】
さらに、ＣＰＵ１１０は、前回の近接位置のＸ座標及びＹ座標と、今回の近接位置のＸ座標及びＹ座標をもとに、一定時間Ｔ内での近接位置のＸＹ平面（すなわち操作面と平行な面）上での移動ベクトルを算出する。この移動ベクトルは、一定時間Ｔ内での操作面上での指の移動量と移動方向を表す。
【０１００】
ＣＰＵ１１０は、このようにして得られた、一定時間内での近接位置のＺ座標の傾きと、ＸＹ平面上での移動ベクトルとをもとに、操作面に対して、フリックするときの予備動作が行われたかどうかを判別する。
【０１０１】
すなわち、ＣＰＵ１１０は、一定時間Ｔ内での近接位置のＺ座標の傾きが「−」で絶対値が所定値以上であり、且つＸＹ平面上での指の移動量が所定量以上である場合に、フリックするときの予備動作が行われたと判別する。
【０１０２】
換言すれば、ＣＰＵ１１０は、指が、操作面と平行な方向に移動しながら、一定以上の速さで、操作面に近づいている場合に、フリックするときの予備動作が行われたと判別する。
【０１０３】
実際、図１０及び図１１の例では、近接位置Ｐ１を検知した時点ｔ１から一定時間Ｔ経過後の、近接位置Ｐ２を検知した時点ｔ２で、Ｚ座標の傾きが「−」で絶対値が所定値以上であり、且つＸＹ平面上での移動量が所定量以上となる。
【０１０４】
ゆえに、ＣＰＵ１１０は、この時点ｔ２で、フリックするときの予備動作があったと判別して、移動ベクトルが示す方向にフリックされると予測する。そしてＣＰＵ１１０は、このフリックに対応する処理をこの時点ｔ２から開始する。
【０１０５】
ここで、例えば、液晶パネル１０２Ａに、任意の画像が表示されているとする。この場合、ＣＰＵ１１０は、時点ｔ２で、移動ベクトルが示す方向にフリックされることを予測すると、ＢＧ処理として、画像データの読み出しを開始する。
【０１０６】
ここで、ＣＰＵ１１０は、例えば、操作面の上方向へのフリックを予測した場合、表示中の画像の前の画像に対応する画像データの読み出しを開始する。これに対して、例えば、操作面の下方向へのフリックを予測した場合、ＣＰＵ１１０は、表示中の画像の次の画像に対応する画像データの読み出しを開始する。そしてＣＰＵ１１０は、読み出した画像データをＲＡＭ１１２に記憶していく。
【０１０７】
その後、ＣＰＵ１１０は、時点ｔ２から一定時間経過後のｔ３でタッチ位置Ｐ３を検知することにより、タッチパネル１０２Ｂの操作面が実際にタッチされたと認識する。
【０１０８】
さらにＣＰＵ１１０は、時点ｔ４〜ｔ６までの間、タッチ位置が移動しながらタッチされ続けていると認識した後、時点ｔ６から一定時間経過後のｔ７で近接位置Ｐ７を検知することにより、操作面から指が離されたと認識する。
【０１０９】
ＣＰＵ１１０は、操作面から指が離されたこの時点ｔ７で、実際に任意の方向にフリックされたと認識する。するとＣＰＵ１１０は、この時点ｔ７までにＲＡＭ１１２に記憶させた画像データを読み出し、ＦＧ処理として、この画像データに基づく画像を液晶パネル１０２Ａに表示させる。
【０１１０】
このように、ＣＰＵ１１０は、実際に任意の方向にフリックされる前の時点ｔ２で、操作面に近接している指の動きから、任意の方向にフリックされることを予測して、画像データの読み出しを開始するようにした。
【０１１１】
こうすることで、従来のように、実際にフリックされた時点ｔ７で、画像データの読み出しを開始する場合と比して、実際にフリックされた時点ｔ７から、前もしくは次の画像が表示されるまでの時間を短縮できる。
【０１１２】
尚、ＣＰＵ１１０は、例えば、実際にフリックされる前に、画像データの読み出しが完了したとしても、実際にフリックされるまでは、画像を表示しないようになっている。
【０１１３】
つまり、ＣＰＵ１１０は、フリックに対応する処理（画像データの読み出し＋画像の表示）の中で、バックグラウンドで先に実行できるＢＧ処理（画像データの読み出し）のみを実行するようになっている。
【０１１４】
こうすることで、万が一、予測が外れてフリックされなかったにも関わらずＦＧ処理を実行して次の画像を表示してしまうような状況を回避することができ、ユーザに不利益が生じないようになっている。
【０１１５】
またＣＰＵ１１０は、例えば、フリックを予測した時点ｔ２から、所定時間経過しても、実際にフリックが行われなかった場合には、予測が外れたとして、画像データの読み出しを停止するようにもなっている。
【０１１６】
こうすることで、予測が外れたにも関わらず、予測したフリックに対応する処理を無駄に継続してしまうような状況を回避することができる。
【０１１７】
ここまで説明したように、携帯端末１００は、タッチスクリーン１０２に近接している指がどの方向にどの程度の速さで動いているかをもとに、ユーザがタップやフリックを行う前に、これらを予測して対応する処理を開始しておくようにした。
【０１１８】
こうすることで、従来のように、実際にタップやフリックが行われてから対応する処理を開始する場合と比して、実際にタップやフリックが行われてから対応する処理が終了するまでの時間を短縮することができる。
【０１１９】
［１−２−４．操作予測処理手順］
次に、携帯端末１００が、タップやフリックなどのタッチ操作を予測するときの具体的な処理の手順（これを操作予測処理手順とも呼ぶ）について、図１２に示すフローチャートを用いて説明する。尚、図１２に示す操作予測処理手順ＲＴ１は、携帯端末１００のＣＰＵ１１０が、不揮発性メモリ１１１に格納されているプログラムにしたがって実行する処理の手順である。
【０１２０】
ＣＰＵ１１０は、例えば、携帯端末１００の電源がオンされると、操作予測処理手順ＲＴ１を開始して、ステップＳＰ１に移る。ステップＳＰ１においてＣＰＵ１１０は、タッチパネル１０２Ｂに対して実際にタッチ操作が行われたか否かを判別する。
【０１２１】
ここで、タッチパネル１０２Ｂに対して実際にタッチ操作が行われていないことによりこのステップＳＰ１で否定結果を得ると、ＣＰＵ１１０は、ステップＳＰ２に移る。
【０１２２】
ステップＳＰ２においてＣＰＵ１１０は、現在、予測したタッチ操作に対応するＢＧ処理を実行中であるか否かを判別する。
【０１２３】
ここで、予測したタッチ操作に対応するＢＧ処理が実行されていないことにより、このステップＳＰ２で否定結果を得ると、ＣＰＵ１１０は、ステップＳＰ３に移る。
【０１２４】
ステップＳＰ３においてＣＰＵ１１０は、タッチパネル１０２Ｂに対する指の近接を検知したか否かを判別する。
【０１２５】
ここで、指の近接を検知したことにより、このステップＳＰ３で肯定結果を得ると、ＣＰＵ１１０は、ステップＳＰ４に移る。
【０１２６】
ステップＳＰ４においてＣＰＵ１１０は、今回の近接位置と、前回の近接位置をもとに、タッチパネル１０２Ｂの操作面に近接している指の動きを特定して、次のステップＳＰ５に移る。
【０１２７】
ステップＳＰ５においてＣＰＵ１１０は、ステップＳＰ５で特定した、操作面に近接している指の動きから、タッチ操作が予測できたか否かを判別する。
【０１２８】
ここで、例えば、ステップＳＰ５で特定した指の動きが、操作面に対してほぼ垂直に近づく動きであることからタップが予測できたとする。するとＣＰＵ１１０は、このステップＳＰ５で肯定結果を得て、ステップＳＰ６に移る。
【０１２９】
ステップＳＰ６においてＣＰＵ１１０は、予測したタッチ操作に対応するＢＧ処理を開始して、再びステップＳＰ１に戻る。
【０１３０】
一方、上述のステップＳＰ２で、予測したタッチ操作に対応するＢＧ処理を実行中であることにより肯定結果を得ると、ＣＰＵ１１０は、ステップＳＰ７に移る。
【０１３１】
ステップＳＰ７においてＣＰＵ１１０は、タッチ操作を予測してから所定時間経過したか否かを判別する。
【０１３２】
ここで、まだ所定時間経過していないことにより、このステップＳＰ７で否定結果を得ると、ＣＰＵ１１０は、再びステップＳＰ１に戻る。
【０１３３】
これに対して、所定時間経過したことにより、このステップＳＰ７で肯定結果を得ると、ＣＰＵ１１０は、ステップＳＰ８に移る。
【０１３４】
ステップＳＰ８においてＣＰＵ１１０は、タッチ操作を予測してから所定時間経過しても、実際にタッチ操作が行われなかったことにより、予測したタッチ操作に対応するＢＧ処理を停止して、再びステップＳＰ１に戻る。
【０１３５】
また一方、上述のステップＳＰ１で、タッチパネル１０２Ｂに対して実際にタッチ操作が行われたことにより肯定結果を得ると、ＣＰＵ１１０は、ステップＳＰ９に移る。
【０１３６】
ステップＳＰ９においてＣＰＵ１１０は、このタッチ操作に対応するＢＧ処理が終了するのを待ち受ける。そして、このＢＧ処理が終了したことにより、このステップＳＰ９で肯定結果を得ると、ＣＰＵ１１０は、ステップＳＰ１０に移る。
【０１３７】
ステップＳＰ１０においてＣＰＵ１１０は、ＢＧ処理に続くＦＧ処理を実行して、再びステップＳＰ１に戻る。
【０１３８】
尚、上述のステップＳＰ３で、指の近接を検知していないことにより否定結果を得た場合と、上述のステップＳＰ５でタッチ操作を予測できていないことにより否定結果を得た場合も、ＣＰＵ１１０は、再びステップＳＰ１に戻る。
【０１３９】
このような操作予測処理手順ＲＴ１にしたがって、携帯端末１００のＣＰＵ１１０は、タッチ操作を予測して、対応するＢＧ処理を、このタッチ操作が実際に行われる前に開始しておくようになっている。
【０１４０】
［１−２−５．動作及び効果］
以上の構成において、携帯端末１００のＣＰＵ１１０は、一定時間Ｔごとに、タッチパネル１０２Ｂの出力値から、タッチパネル１０２Ｂに近接又は接触する指の位置を検知する。
【０１４１】
さらにＣＰＵ１１０は、近接する位置（近接位置）の変移をもとに、タッチパネル１０２Ｂに近接している指の動きを検出する。
【０１４２】
そしてＣＰＵ１１０は、この動きが、タッチ操作が行われる直前の動き（予備動作）であった場合に、タッチ操作が行われると予測して、実際にタッチ操作が行われる前に、タッチ操作に対応する処理を開始するようにした。
【０１４３】
こうすることで、携帯端末１００は、実際にタッチ操作が行われてからタッチ操作に対応する処理を開始する場合と比して、実際にタッチ操作が行われてから、対応する処理が完了するまでの時間を短縮することができる。
【０１４４】
またＣＰＵ１１０は、タッチ操作に対応する処理のうち、ユーザには直接わからないようにバックグラウンドで先に実行できるＢＧ処理のみを開始して、実際にタッチ操作が行われてから、ユーザに直接わかるＦＧ処理を実行するようにした。
【０１４５】
実際、ユーザは、ＦＧ処理が実行されてはじめて、タッチ操作に対応する処理が実行されたと認識する。ゆえに、このＦＧ処理を、タッチ操作を予測した時点で実行してしまうと、万が一、予測が外れたときに、ユーザの意図しない動作が発生することになる。
【０１４６】
ゆえに、ＣＰＵ１１０は、ＦＧ処理については、実際にタッチ操作が行われてから実行することで、予測が外れたときに、ユーザの意図しない動作が発生することを回避することができる。
【０１４７】
また携帯端末１００のＣＰＵ１１０は、タッチ操作を予測した時点から、所定時間経過しても、実際にタッチ操作が行われなかった場合には、予測が外れたとして、ＢＧ処理を停止する。
【０１４８】
こうすることで、携帯端末１００は、予測が外れたにも関わらず、予測したタッチ操作に対応するＢＧ処理を無駄に継続するような状況を回避することができる。
【０１４９】
以上の構成によれば、携帯端末１００は、タッチパネル１０２Ｂに近接している指の動きをもとに、タッチパネル１０２Ｂに対するタッチ操作を予測して、このタッチ操作に対応する処理を、実際にタッチ操作が行われる前に開始するようにした。こうすることで、ユーザが実際にタッチ操作を行ってから対応する処理が終了するまでの時間を短縮することができ、かくして、従来と比して一段とタッチ操作に対する応答性を向上させることができる。
【０１５０】
＜２．第２の実施の形態＞
次に第２の実施の形態について説明する。この第２の実施の形態では、タッチスクリーン１０２にソフトウェアキーボードを表示させた状態で、キーに対するタッチ操作を予測するようになっている。
【０１５１】
尚、携帯端末１００の外観構成及びハードウェア構成などは、第１の実施の形態と同様であるので、第１の実施の形態を参照とする。ゆえに、ここでは、ソフトウェアキーボードを表示している状態での、タッチ操作の予測についてのみ説明する。
【０１５２】
［２−１．タッチ操作の予測］
携帯端末１００のＣＰＵ１１０は、文字入力を行う為の画面として、図１３に示す文字入力画面２００を、液晶パネル１０２Ａに表示させるようになっている。
【０１５３】
この文字入力画面２００は、入力された文字を表示する文字表示領域２００Ａと、文字の変換候補を表示する変換候補表示領域２００Ｂと、ソフトウェアキーボードを表示するキー表示領域２００Ｃとで構成される。
【０１５４】
キー表示領域２００Ｃには、ソフトウェアキーボードとして、ＱＷＥＲＴＹ配列で並べられた複数のキーが表示される。
【０１５５】
そしてこの文字入力画面２００では、キー表示領域２００Ｃに表示されているキーのうちの１つがタッチされると、このキーに対応する文字が、文字表示領域２００Ａに表示される。
【０１５６】
またこの文字入力画面２００では、キーがタッチされると、このキーに対応する文字を含んだ変換候補が、変換候補表示領域２００Ｂに表示される。
【０１５７】
そして、文字表示領域２００Ａに表示されている文字の入力が確定する前に、変換候補表示領域２００Ｂに表示されている変換候補のうちの１つがタップされると、この変換候補が文字表示領域２００Ａに表示される。
【０１５８】
ＣＰＵ１１０は、このような文字入力画面２００を液晶パネル１０２Ａに表示させた状態で、タッチパネル１０２Ｂに近接している指の動きをもとに、キーのタッチを予測するようになっている。
【０１５９】
実際、ユーザは、文章を入力する場合、タッチパネル１０２Ｂの操作面に対して、指を所望のキーの上に素早く移動させてから指を下ろしてキーをタッチした後、この指をキーから離す動作を繰り返す。
【０１６０】
そこで、携帯端末１００は、操作面に対して、操作面と平行な方向への指の移動速度が落ちて、且つ指が近づく動きがあった場合に、キーをタッチするときの予備動作が行われたと認識して、ユーザがキーをタッチすると予測するようになっている。
【０１６１】
具体的に、ＣＰＵ１１０は、図１４及び図１５に示すように、一定時間Ｔごとに近接位置を検知する。そして、ＣＰＵ１１０は、この近接位置のＺ座標を得る。このＺ座標が、操作面と指との距離を表す。
【０１６２】
さらに、ＣＰＵ１１０は、前回の近接位置のＸ座標及びＹ座標と、今回の近接位置のＸ座標及びＹ座標をもとに、一定時間Ｔ内での近接位置のＸＹ平面上での移動ベクトルを算出する。この移動ベクトルは、一定時間Ｔ内での操作面上での指の移動量（すなわち移動速度Ｖｘｙ）と移動方向を表す。すなわち、この移動ベクトルから、現在、指が、操作面上でどの程度の速さでどの方向に移動しているのかがわかる。
【０１６３】
ＣＰＵ１１０は、このようにして得られた、近接位置のＺ座標と、ＸＹ平面上での移動ベクトルとをもとに、操作面に対して、キーをタッチするときの予備動作が行われたかどうかを判別する。
【０１６４】
すなわち、ＣＰＵ１１０は、近接位置のＺ座標が所定値以下であり、且つ操作面と平行な方向への指の移動速度Ｖｘｙが所定値以下である場合に、キーをタッチするときの予備動作があったと判別する。
【０１６５】
換言すれば、ＣＰＵ１１０は、操作面と平行な方向への移動速度が低下しつつ、指が操作面に近づいた場合に、キーをタッチするときの予備動作があったと判別する。
【０１６６】
実際、図１４及び図１５の例では、近接位置Ｐ１を検知した時点ｔ１で、Ｚ座標が所定値以下で、且つ操作面と平行な方向への指の移動速度Ｖｘｙが所定値以下となる。
【０１６７】
ゆえに、ＣＰＵ１１０は、この時点ｔ１で、操作面に対して、キーをタッチするときの予備動作があったと判別して、近接位置Ｐ１のＸ座標及びＹ座標に対応する位置のキーがタッチされると予測する。そしてＣＰＵ１１０は、このキーのタッチに対応する処理をこの時点ｔ１から開始する。
【０１６８】
具体的に、ＣＰＵ１１０は、タッチされると予測したキーをフォーカスする処理と、このキーに対応する文字を含んだ変換候補を、不揮発性メモリ１１１に記憶している辞書データから検索する処理を開始する。そしてＣＰＵ１１０は、検索結果として得られた変換候補をＲＡＭ１１２に記憶していく。
【０１６９】
尚、キーをフォーカスする処理とは、このキーを、タッチされた指で隠れない程度に所定方向（例えば上方）に移動させて拡大表示させる処理のことである。
【０１７０】
その後、ＣＰＵ１１０は、時点ｔ１から一定時間経過後のｔ２でタッチ位置Ｐ２を検知することにより、キーが実際にタッチされたと認識する。
【０１７１】
するとＣＰＵ１１０は、タッチされたキーに対応する文字を、文字表示領域２００Ａに表示させると共に、ＲＡＭ１１２に記憶させた変換候補を読み出し、これを、変換候補表示領域２００Ｂに表示させる。
【０１７２】
このように、ＣＰＵ１１０は、実際にキーがタッチされる前の時点ｔ１で、操作面に近接している指の動きから、キーがタッチされることを予測して、キーをフォーカスする処理と、キーに対応する文字の変換候補を検索する処理とを開始するようにした。
【０１７３】
こうすることで、従来のように、実際にキーがタッチされた時点ｔ２で、これらの処理を開始する場合と比して、実際にキーがタッチされた時点ｔ２から、これらの処理が終了するまでの時間を短縮できる。
【０１７４】
また、ＣＰＵ１１０は、近接位置のＺ座標が所定値以下であっても、操作面と平行な方向への指の移動速度Ｖｘｙが所定値を越えている限り、キーをフォーカスしないようにした。
【０１７５】
すなわち、指が操作面に近づいていても、指が操作面と平行な方向に素早く移動していれば、単にキーの上を指が通過しているだけであるので、キーをフォーカスしないようになっている。
【０１７６】
こうすることで、ユーザが、例えば或るキーをタッチして指を離した後、この指を、次にタッチするキーまで移動させるときに、この移動経路上に存在する全てのキーをフォーカスしてしまうようなことを防止することができる。
【０１７７】
ところで、近接位置のＺ座標が所定値を超えていて、操作面と平行な方向への指の移動速度Ｖｘｙが所定値以下となるようなとき、すなわち操作面と平行な方向への移動速度は低下したものの、指が操作面からある程度離れているときがある。この場合、キーをタッチするときの予備動作が行われたとまでは言えないが、キーがタッチされる可能性はあると考えられる。
【０１７８】
そこで、このときＣＰＵ１１０は、近接位置のＸ座標及びＹ座標に対応する位置のキーに対応する文字を含んだ変換候補を辞書データから検索する処理（すなわちＢＧ処理）のみを開始して、フォーカスする処理（すなわちＦＧ処理）は行わない。
【０１７９】
こうすることで、万が一、予測が外れてこのキーがタッチされなかったにも関わらずフォーカスしてしまうような状況を回避することができ、ユーザに不利益が生じないようになっている。
【０１８０】
ここまで説明したように、携帯端末１００は、タッチスクリーン１０２に近接している指がどの程度の距離にあってどの程度の速さで動いているかをもとに、ユーザがキーをタッチする前に、これを予測して対応する処理を開始しておくようにした。
【０１８１】
こうすることで、従来のように、実際にキーがタッチされてから対応する処理を開始する場合と比して、実際にタッチされてから対応する処理が終了するまでの時間を短縮することができる。
【０１８２】
［２−２．操作予測処理手順］
次に、携帯端末１００が、キーに対するタッチ操作を予測するときの具体的な操作予測処理手順について、図１６に示すフローチャートを用いて説明する。尚、図１６に示す操作予測処理手順ＲＴ２は、携帯端末１００のＣＰＵ１１０が、不揮発性メモリ１１１に格納されているプログラムにしたがって実行する処理の手順である。
【０１８３】
ＣＰＵ１１０は、例えば、携帯端末１００の電源がオンされると、操作予測処理手順ＲＴ２を開始して、ステップＳＰ２０に移る。ステップＳＰ２０においてＣＰＵ１１０は、タッチパネル１０２Ｂに対して実際にタッチ操作が行われたか否かを判別する。
【０１８４】
ここで、タッチパネル１０２Ｂに対して実際にタッチ操作が行われていないことによりこのステップＳＰ２０で否定結果を得ると、ＣＰＵ１１０は、ステップＳＰ２１に移る。
【０１８５】
ステップＳＰ２１においてＣＰＵ１１０は、タッチパネル１０２Ｂに対する指の近接を検知したか否かを判別する。
【０１８６】
ここで、指の近接を検知したことにより、このステップＳＰ２１で肯定結果を得ると、ＣＰＵ１１０は、ステップＳＰ２２に移る。
【０１８７】
ステップＳＰ２２においてＣＰＵ１１０は、今回の近接位置と、前回の近接位置をもとに、タッチパネル１０２Ｂの操作面と指との距離（Ｚ座標）と、操作面と平行な方向への指の移動速度Ｖｘｙを得て、次のステップＳＰ２３に移る。
【０１８８】
ステップＳＰ２３においてＣＰＵ１１０は、操作面と指との距離が所定値以下であるか否かを判別する。
【０１８９】
ここで、操作面と指との距離が所定値以下であることにより、このステップＳＰ２３で肯定結果を得ると、ＣＰＵ１１０は、ステップＳＰ２４に移る。
【０１９０】
ステップＳＰ２４においてＣＰＵ１１０は、操作面と平行な方向への指の移動速度Ｖｘｙが所定値以下であるか否かを判別する。
【０１９１】
ここで、操作面と平行な方向への指の移動速度Ｖｘｙが所定値以下であることにより、このステップＳＰ２４で肯定結果を得ると、このことは、キーをタッチする予備動作があったことを意味する。このときＣＰＵ１１０は、ステップＳＰ２５に移る。
【０１９２】
ステップＳＰ２５においてＣＰＵ１１０は、今回の近接位置のＸ座標及びＹ座標に対応する位置のキーがタップされると予測して、このキーをフォーカスする処理と、このキーに対応する文字を含んだ変換候補を辞書データから検索する処理を開始する。そしてＣＰＵ１１０は、再びステップＳＰ２０に戻る。
【０１９３】
これに対して、上述のステップＳＰ２３で、操作面と指との距離が所定値を超えていることにより、否定結果を得ると、ＣＰＵ１１０は、ステップＳＰ２６に移る。
【０１９４】
ステップＳＰ２６においてＣＰＵ１１０は、操作面と平行な方向への指の移動速度Ｖｘｙが所定値以下であるか否かを判別する。
【０１９５】
ここで、操作面と平行な方向への指の移動速度Ｖｘｙが所定値以下であることにより、このステップＳＰ２６で肯定結果を得ると、このことは、キーがタッチされる可能性があることを意味する。このときＣＰＵ１１０は、ステップＳＰ２７に移る。
【０１９６】
ステップＳＰ２７においてＣＰＵ１１０は、今回の近接位置のＸ座標及びＹ座標に対応する位置のキーがタッチされる可能性があることから、このキーに対応する文字を含んだ変換候補を辞書データから検索する処理のみを開始する。そしてＣＰＵ１１０は、再びステップＳＰ２０に戻る。
【０１９７】
また上述のステップＳＰ２４及びステップＳＰ２５で否定結果を得ていた場合、キーがタッチされる可能性はないことから、ＣＰＵ１１０は、何ら処理を行わずに、ステップＳＰ２０に戻る。
【０１９８】
一方、上述のステップＳＰ２０で、タッチパネル１０２Ｂに対して実際にタッチ操作が行われたことにより肯定結果を得ると、ＣＰＵ１１０は、ステップＳＰ２８に移る。
【０１９９】
ステップＳＰ２８においてＣＰＵ１１０は、ＲＡＭ１１２から、タッチされたキーに対応する文字を含んだ変換文字を読み出して、これを変換文字表示領域２００Ｂに表示した後、ステップＳＰ２０に戻る。尚、このとき、タッチされたキーに対応する文字を含んだ変換文字を検索する処理がまだ終了していなかった場合には、この処理が終了した後に、検索結果として得られた変換候補を表示するようにする。
【０２００】
また一方、上述のステップＳＰ２１で、指の近接を検知していないことにより否定結果を得ると、ＣＰＵ１１０は、ステップＳＰ２９に移る。
【０２０１】
ステップＳＰ２９においてＣＰＵ１１０は、この時点で、キーをフォーカスしているか否かを判別する。
【０２０２】
ここで、キーをフォーカスしていることにより肯定結果を得ると、このことは、直前までキーをタッチしていた指が、操作面から離れたことを意味する。このときＣＰＵ１１０は、ステップＳＰ３０に移る。
【０２０３】
ステップＳＰ３０においてＣＰＵ１１０は、フォーカスを解除して、ステップＳＰ２０に戻る。また上述のステップＳＰ２９で否定結果を得た場合、ＣＰＵ１１０は、ステップＳＰ２０に戻る。
【０２０４】
このような操作予測処理手順ＲＴ２にしたがって、携帯端末１００のＣＰＵ１１０は、キーのタッチを予測して、キーをフォーカスする処理と、変換候補を検索する処理を、実際にキーがタッチされる前に開始しておくようになっている。
【０２０５】
［２−３．動作及び効果］
以上の構成において、携帯端末１００のＣＰＵ１１０は、タッチパネル１０２Ｂに近接する指の位置（近接位置）とその変移から、タッチパネル１０２Ｂの操作面と指との距離と、操作面に平行する方向への指の移動速度Ｖｘｙを得る。
【０２０６】
ＣＰＵ１１０は、距離が所定値以下で、且つ移動速度Ｖｘｙが所定値以下の場合に、すなわち、操作面と平行な方向への移動速度が低下しつつ、指が操作面に近づいた場合に、キーがタッチされると予測する。
【０２０７】
そしてＣＰＵ１１０は、実際にキーがタッチされる前に、キーをフォーカスする処理と、キーに対応する文字を含んだ変換候補を検索する処理とを開始するようにした。
【０２０８】
こうすることで、携帯端末１００は、実際にキーがタッチされてから、これらの処理を開始する場合と比して、実際にキーがタッチされてから、これらの処理が完了するまでの時間を短縮することができる。
【０２０９】
また、ＣＰＵ１１０は、操作面と指との距離が所定値以下であっても、操作面と平行な方向への指の移動速度Ｖｘｙが所定値を越えている限り、キーをフォーカスしないようにした。
【０２１０】
こうすることで、ユーザが、例えば或るキーをタッチして指を離した後、この指を、次にタッチするキーまで移動させるときに、この移動経路上に存在する全てのキーをフォーカスしてしまうようなことを防止することができる。すなわち、ユーザがタッチしようとしているキーのみをフォーカスすることができる。これにより、文字入力時の処理不可を低減させることができると共に、操作性を向上させることができる。
【０２１１】
以上の構成によれば、携帯端末１００は、ユーザが実際にキーをタッチしてから、対応する処理が完了するまでの時間を短縮することができ、かくして、従来と比して一段とタッチ操作に対する応答性を向上させることができる。
【０２１２】
＜３．第３の実施の形態＞
次に第３の実施の形態について説明する。この第３の実施の形態では、携帯端末１００のタッチパネル１０２Ｂ裏に圧力センサを配置するようになっている。そして携帯端末１００が、この圧力センサによりタッチスクリーン１０２が指等で押し込まれたときの圧力（これを押圧力とも呼ぶ）を検知して、これをもとにタッチスクリーン１０２に対する押込操作が行われたか判別するようになっている。尚、押込操作とは、タッチスクリーンを指で押し込んで行う操作のことである。
【０２１３】
またこの第３の実施の形態の携帯端末１００を、第１及び第２の実施の形態の携帯端末と区別するため、以下、携帯端末１００ｘと呼ぶ。
【０２１４】
［３−１．携帯端末のハードウェア構成］
まず図１７を用いて、携帯端末１００ｘのハードウェア構成について説明する。尚、携帯端末１００ｘの外観構成は、第１及び第２の実施の形態の携帯端末１００と同様であるので、第１の実施の形態を参照とする。
【０２１５】
この携帯端末１００ｘは、携帯端末１００に圧力センサ３００を追加したハードウェア構成でなり、圧力センサ３００以外のハードウェア構成については、第１及び第２の実施の形態の携帯端末１００と同様である。ゆえに、ここでは、主に圧力センサ３００について説明する。
【０２１６】
圧力センサ３００は、例えば、タッチパネル１０２Ｂと液晶パネル１０２Ａとの間に配置され、タッチスクリーン１０２に対する押圧力に応じて、例えば、０〜２５５までの値（これを圧力値とも呼ぶ）を出力するようになっている。
【０２１７】
ＣＰＵ１１０は、この圧力センサ３００から得られる圧力値を監視して、この圧力値が増加して閾値を超えると、操作面に対する押し込みが開始されたと判別し、その後、この圧力値が減少して閾値以下になると、押し込みが終了したと判別する。
【０２１８】
そしてＣＰＵ１１０は、押し込みが終了したと判別すると、タッチスクリーン１０２に対する押込操作が行われたと認識して、これを操作入力として受け付け、この操作入力に応じた処理を実行する。
【０２１９】
具体的に、ＣＰＵ１１０が認識する押込操作としては、例えば、タッチスクリーン１０２の任意の箇所を指で押し込む操作があり、この操作を、以下、押込タップとも呼ぶ。
【０２２０】
この第３の実施の形態では、第１及び第２の実施の形態で説明したタップによる操作入力を、押込タップによる操作入力に置き換えるようになっている。
【０２２１】
すなわち、例えば、タッチスクリーン１０２にブラウザアイコンが表示された状態で、ユーザが、このブラウザアイコンを押込タップしたとする。
【０２２２】
するとＣＰＵ１１０は、この押込操作を、Ｗｅｂブラウザを起動する操作入力として受け付け、Ｗｅｂブラウザを起動する。
【０２２３】
また、例えば、タッチスクリーン１０２にソフトウェアキーボードが表示された状態で、ユーザが、このソフトウェアキーボードを構成する複数のキーのうちの１つを押込タップしたとする。
【０２２４】
するとＣＰＵ１１０は、この押込操作を、押込タップされたキーに対応する文字を入力する操作入力として受け付け、この文字を液晶パネル１０２Ａに表示させる。
【０２２５】
くわえて、この携帯端末１００ｘでは、タッチスクリーン１０２に接触している指の動きと、指による押圧力の変化とをもとに、各種操作（タッチ操作、押込操作等）を予測して、各種操作に対応する処理を開始するようになっている。
【０２２６】
以下、各種操作の予測について詳しく説明する。
【０２２７】
［３−２．各種操作の予測］
ここで、まず、タッチパネル１０２Ｂに接触している指の動き、すなわちタッチ位置の変位と、タッチパネル１０２Ｂに対する押圧力の変化とをもとに、押込操作の１つである押込タップを予測する場合について説明する。
【０２２８】
尚、タッチ位置については、図６に示したＸＹＺ空間のＸＹ平面上での座標として検知され、押圧力については、圧力センサ３００からの圧力値として検知される。
【０２２９】
実際、ユーザは、タッチパネル１０２Ｂの操作面を押込タップする場合、図１８に示すように、操作面の任意の箇所を押し込み、少なくとも圧力値が押込閾値を超えるまで押し込んだ後、押し込みを終える動作を行う。
【０２３０】
そこで、携帯端末１００ｘは、操作面の任意の箇所を押し込み始める動きを検出したときに、ユーザが、操作面を押込タップすると予測するようになっている。
【０２３１】
具体的に、ＣＰＵ１１０は、図１９に示すように、一定時間Ｔごとにタッチ位置と圧力値を検知する。このとき、ＣＰＵ１１０は、前回の圧力値と、今回の圧力値とをもとに、圧力値の変化量を算出する。この変化量は、一定時間Ｔ内での押圧力の変化量を表す。
【０２３２】
そしてＣＰＵ１１０は、圧力値の変化量をもとに、圧力値の傾き（すなわち圧力値の変化量／一定時間Ｔ）を算出する。この傾きは、その符号が「＋」であれば、圧力値が増加していることを意味し、「−」であれば、圧力値が減少していることを意味する。さらにこの傾きは、その絶対値が、圧力値が増減する速さを表す。
【０２３３】
ゆえに、圧力値の傾きから、押圧力がどの程度の速さで増加しているのか、また減少しているのかがわかる。
【０２３４】
さらに、ＣＰＵ１１０は、前回のタッチ位置のＸ座標及びＹ座標と、今回のタッチ位置のＸ座標及びＹ座標をもとに、一定時間Ｔ内でのタッチ位置のＸＹ平面（すなわち操作面と平行な面）上での移動ベクトルを算出する。この移動ベクトルは、一定時間Ｔ内での操作面上での指の移動量と移動方向を表す。
【０２３５】
つまり、この移動ベクトルから、指がどの方向にどれだけ移動しているのかがわかる。
【０２３６】
そしてＣＰＵ１１０は、このようにして得られた、一定時間Ｔ内での圧力値の傾きと、ＸＹ平面上での移動ベクトルとをもとに、操作面に対して、任意の箇所を押し込み始める動作が行われたかどうかを判別する。
【０２３７】
すなわち、ＣＰＵ１１０は、一定時間Ｔ内での圧力値の傾きが「＋」で絶対値が所定値以上であり、且つＸＹ平面上での指の移動量が所定量以下である場合に、任意の箇所を押し込み始める動作が行われたと判別する。
【０２３８】
換言すれば、ＣＰＵ１１０は、指が、操作面と平行な方向にはほとんど移動することなく、指による押圧力が急激に増加している場合に、任意の箇所を押し込み始める動作が行われたと判別する。
【０２３９】
実際、図１９の例では、タッチ位置Ｐ１を検知した時点ｔ１から一定時間Ｔ経過後の、タッチ位置Ｐ２を検知した時点ｔ２で、圧力値の傾きが「＋」で絶対値が所定値以上であり、且つＸＹ平面上での移動量が所定量以下となる。
【０２４０】
ゆえに、ＣＰＵ１１０は、この時点ｔ２で、任意の箇所を押し込み始める動作があったと判別して、タッチ位置Ｐ２のＸ座標及びＹ座標に対応する操作面上の位置が押込タップされると予測する。そしてＣＰＵ１１０は、この押込タップに対応する処理をこの時点ｔ２から開始する。
【０２４１】
ここで、例えば、タッチ位置Ｐ２のＸ座標及びＹ座標に対応する操作面上の位置に、Ｗｅｂページのリンクが表示されているとする。
【０２４２】
この場合、ＣＰＵ１１０は、時点ｔ２で、リンクが押込タップされることを予測すると、ＢＧ処理として、リンク先のＷｅｂページのページデータの受信を開始する。そしてＣＰＵ１１０は、受信したページデータをＲＡＭ１１２に記憶していく。
【０２４３】
その後、ＣＰＵ１１０は、時点ｔ２から一定時間Ｔ経過後のｔ３でタッチ位置Ｐ３を検知したときに、このときの圧力値が押込閾値を超えていることにより、操作面が押し込まれていると判別する。
【０２４４】
さらにＣＰＵ１１０は、時点ｔ４〜ｔ６までの間、操作面が押し込まれていると判別し続けた後、時点ｔ６から一定時間経過後のｔ７でタッチ位置Ｐ７を検知したときに、圧力値が押込閾値以下になったことにより、押し込みが終了したと判別する。
【０２４５】
そしてＣＰＵ１１０は、この時点ｔ７で、実際にリンクが押込タップされたと認識する。するとＣＰＵ１１０は、この時点ｔ７までにＲＡＭ１１２に記憶させたページデータを読み出し、このページデータに基づくリンク先のＷｅｂページを、Ｗｅｂブラウザ画面に表示させる。
【０２４６】
このように、ＣＰＵ１１０は、実際にリンクが押込タップされたと認識する前の時点ｔ２で、タッチ位置の変位と押圧力の変化とから、リンクが押込タップされることを予測して、リンク先のページデータの受信を開始するようにした。
【０２４７】
こうすることで、従来のように、実際にリンクが押込タップされたと認識した時点ｔ７で、リンク先のページデータの受信を開始する場合と比して、この時点ｔ７からリンク先のＷｅｂページが表示されるまでの時間を短縮できる。
【０２４８】
尚、ＣＰＵ１１０は、例えば、実際にリンクが押込タップされたと認識する前に、ページデータの受信が完了したとしても、実際にリンクが押込タップされたと認識するまでは、リンク先のＷｅｂページを表示しないようになっている。
【０２４９】
つまり、ＣＰＵ１１０は、リンクの押込タップに対応する処理（ページデータの受信＋Ｗｅｂページの表示）の中で、バックグラウンドで先に実行できるＢＧ処理（ページデータの受信）のみを実行するようになっている。
【０２５０】
こうすることで、万が一、予測が外れてリンクが押込タップされなかったにも関わらずリンク先のＷｅｂページを表示してしまうような状況を回避することができ、ユーザが不利益を被らないようになっている。
【０２５１】
またＣＰＵ１１０は、例えば、リンクの押込タップを予測した時点ｔ２から、所定時間経過しても、実際に押込タップが行われたことを認識できなかった場合には、予測が外れたとして、ページデータの受信を停止するようにもなっている。
【０２５２】
こうすることで、予測が外れたにも関わらず、予測した押込タップに対応する処理を無駄に継続してしまうような状況を回避することができる。
【０２５３】
次に、タッチパネル１０２Ｂに接触している指の動き、すなわちタッチ位置の変位と、タッチパネル１０２Ｂに対する押圧力の変化とをもとに、タッチ操作の１つであるフリックを予測する場合について説明する。
【０２５４】
尚、この場合もタッチ位置については、図６に示したＸＹＺ空間のＸＹ平面上での座標として検知され、押圧力については、圧力センサ３００からの圧力値として検知される。
【０２５５】
実際、ユーザは、操作面をフリックする場合、図２０に示すように、操作面を指でタッチして、この指を操作面上で滑らせてから離す動作を素早く行う。尚、このとき、ユーザが意図しなくとも、操作面はタッチしている指によりこの指が離されるまで押し込まれることになる。
【０２５６】
そこで、携帯端末１００は、操作面に対して、指を素早く滑らせながら指を離そうとする動きを検出したときに、操作面がフリックされると予測する（すなわちフリックの動作が終了すると予測する）ようになっている。
【０２５７】
具体的に、ＣＰＵ１１０は、押込タップを予測したときと同様、図２１に示すように、一定時間Ｔごとにタッチ位置と圧力値を検知する。
【０２５８】
そしてＣＰＵ１１０は、このようにして得られた、タッチ位置と圧力値とをもとに、操作面に対して、指を素早く滑らせながら指を離そうとする動作が行われたかどうかを判別する。
【０２５９】
すなわち、ＣＰＵ１１０は、圧力値が、フリック時に予想されるフリック閾値を一旦超えてからフリック閾値以下にまで減少し、指の移動方向が直線的で且つ移動量が所定量以上である場合に、上述の動作が行われたと判別する。
【０２６０】
換言すれば、ＣＰＵ１１０は、指による押圧力が弱まってきて、且つ操作面をタッチしている指が直線的に素早く移動している場合に、指を素早く滑らせながら指を離そうとする動作が行われたと判別する。
【０２６１】
実際、図２１の例では、タッチ位置Ｐ１を検知した時点ｔ１で、圧力値がフリック閾値以下となり、以降、圧力値が減少していく。
【０２６２】
ここで、ＣＰＵ１１０は、圧力値がフリック閾値以下となった（すなわち押圧力が弱まってきた）時点ｔ１以降、タッチ位置の変位をもとに、指の移動方向が直線的で且つ移動量が所定量以上であるか否かを判別する。
【０２６３】
具体的に、ＣＰＵ１１０は、時点ｔ１のタッチ位置Ｐ１から時点ｔ２のタッチ位置Ｐ２への移動ベクトルを算出して、さらにタッチ位置Ｐ１から時点ｔ３のタッチ位置Ｐ３への移動ベクトルを算出する。
【０２６４】
ＣＰＵ１１０は、これら２つの移動ベクトルから、タッチ位置Ｐ１からＰ２への移動方向とタッチ位置Ｐ２からＰ３への移動方向とがなす角度αを得る。
【０２６５】
さらにＣＰＵ１１０は、タッチ位置Ｐ１、Ｐ２、Ｐ３の座標から、タッチ位置Ｐ１からＰ２への移動量Ｌａ及びタッチ位置Ｐ２からＰ３への移動量Ｌｂを得る。
【０２６６】
ここで、角度αが所定範囲以内（例えば−１５度から＋１５度）で、且つ移動量Ｌａ及びＬｂが共に所定量以上であれば、操作面をタッチしている指が直線的に素早く移動していることを意味する。
【０２６７】
実際、図２１の例では、時点ｔ３で、角度αが所定範囲以内で、且つ移動量Ｌａ及びＬｂが共に所定量以上となる。
【０２６８】
ゆえに、ＣＰＵ１１０は、この時点ｔ３で、指を素早く滑らせながら指を離そうとする動作があったと判別して、このときの移動ベクトルが示す方向（すなわちタッチ位置Ｐ２からＰ３への移動方向）にフリックされると予測する。そしてＣＰＵ１１０は、このフリックに対応する処理をこの時点ｔ３から開始する。
【０２６９】
ここで、例えば、液晶パネル１０２Ａに、任意の画像が表示されているとする。この場合、ＣＰＵ１１０は、時点ｔ３で、このときの移動ベクトルが示す方向にフリックされることを予測すると、ＢＧ処理として、画像データの読み出しを開始する。
【０２７０】
ここで、ＣＰＵ１１０は、例えば、操作面の上方向へのフリックを予測した場合、表示中の画像の前の画像に対応する画像データの読み出しを開始する。これに対して、例えば、操作面の下方向へのフリックを予測した場合、ＣＰＵ１１０は、表示中の画像の次の画像に対応する画像データの読み出しを開始する。そしてＣＰＵ１１０は、読み出した画像データをＲＡＭ１１２に記憶していく。
【０２７１】
その後、ＣＰＵ１１０は、時点ｔ３より後の時点ｔ６で、指が操作面から離れたことを認識することにより、実際に任意の方向にフリックされたと認識する。
【０２７２】
するとＣＰＵ１１０は、この時点ｔ６までにＲＡＭ１１２に記憶させた画像データを読み出し、ＦＧ処理として、この画像データに基づく画像を液晶パネル１０２Ａに表示させる。
【０２７３】
このように、ＣＰＵ１１０は、実際に任意の方向へのフリックが終了する前の時点ｔ３で、操作面に接触している指の動きと押圧力から、任意の方向にフリックされることを予測して、画像データの読み出しを開始するようにした。
【０２７４】
こうすることで、従来のように、実際にフリックされた時点ｔ６で、画像データの読み出しを開始する場合と比して、実際にフリックされた時点ｔ６から、前もしくは次の画像が表示されるまでの時間を短縮できる。
【０２７５】
尚、ＣＰＵ１１０は、例えば、実際にフリックされる前に、画像データの読み出しが完了したとしても、実際にフリックされるまでは、画像を表示しないようになっている。
【０２７６】
つまり、ＣＰＵ１１０は、フリックに対応する処理（画像データの読み出し＋画像の表示）の中で、バックグラウンドで先に実行できるＢＧ処理（画像データの読み出し）のみを実行するようになっている。
【０２７７】
こうすることで、万が一、予測が外れてフリックされなかったにも関わらずＦＧ処理を実行して次の画像を表示してしまうような状況を回避することができ、ユーザに不利益が生じないようになっている。
【０２７８】
またＣＰＵ１１０は、例えば、フリックを予測した時点ｔ３から、所定時間経過しても、実際にフリックが行われなかった場合には、予測が外れたとして、画像データの読み出しを停止するようにもなっている。
【０２７９】
こうすることで、予測が外れたにも関わらず、予測したフリックに対応する処理を無駄に継続してしまうような状況を回避することができる。
【０２８０】
次に、タッチ位置の変位と押圧力の変化とをもとに、タッチ操作の１つであるドラッグを予測する場合について説明する。
【０２８１】
実際、ユーザは、操作面をドラッグする場合、図２２に示すように、操作面を指でタッチして、この指を操作面上で滑らせてから離す動作を行う。尚、このとき、ユーザが意図しなくとも、操作面はタッチしている指によりこの指が離されるまで押し込まれることになる。
【０２８２】
このドラッグの動作は、フリックの動作とほぼ同じであるが、フリックの動作と比して指を滑らせる速度が遅くなることから、押圧力の最大値が小さくなる。またドラッグの動作では、最終的に所望の位置で指を離すことになることから、指を離す直前のタッチ位置の変位が少ない。
【０２８３】
そこで、携帯端末１００は、操作面に対して、指を滑らせた後に任意の位置で指を離そうとする動きを検出したときに、操作面がドラッグされると予測する（すなわちドラッグの動作が終了すると予測する）ようになっている。
【０２８４】
具体的に、ＣＰＵ１１０は、フリックを予測したときと同様、図２３に示すように、一定時間Ｔごとにタッチ位置と圧力値を検知する。
【０２８５】
そしてＣＰＵ１１０は、このようにして得られた、タッチ位置と圧力値とをもとに、操作面に対して、指を滑らせた後に任意の位置で指を離そうとする動作が行われたかどうかを判別する。
【０２８６】
すなわち、ＣＰＵ１１０は、圧力値が、ドラッグ時に予想されるドラッグ閾値（＜フリック閾値）を一旦超えてからドラッグ閾値以下にまで減少し、指の移動が局所的である場合に、上述の動作が行われたと判別する。尚、押込タップと区別する為、例えば、圧力値がドラッグ閾値を超えてからドラッグ閾値以下になるまでのタッチ位置の移動量が所定量以上あることも条件とする。
【０２８７】
換言すれば、ＣＰＵ１１０は、指による押圧力が弱まってきて、且つ操作面をタッチしている指がほとんど移動しなくった場合に、指を滑らせた後に任意の位置で指を離そうとする動作が行われたと判別する。
【０２８８】
実際、図２３の例では、タッチ位置Ｐ１を検知した時点ｔ１で、圧力値がドラッグ閾値以下となり、以降、圧力値が減少していく。
【０２８９】
ここで、ＣＰＵ１１０は、圧力値がドラッグ閾値以下となった（すなわち押圧力が弱まってきた）時点ｔ１以降、タッチ位置の変位をもとに、指の移動が局所的であるか否かを判別する。
【０２９０】
具体的に、ＣＰＵ１１０は、時点ｔ１のタッチ位置Ｐ１から時点ｔ２のタッチ位置Ｐ２への移動ベクトルを算出して、さらにタッチ位置Ｐ１から時点ｔ３のタッチ位置Ｐ３への移動ベクトルを算出する。
【０２９１】
ＣＰＵ１１０は、これら２つの移動ベクトルから、タッチ位置Ｐ１からＰ２への移動方向とタッチ位置Ｐ２からＰ３への移動方向とがなす角度αを得る。
【０２９２】
さらにＣＰＵ１１０は、タッチ位置Ｐ１、Ｐ２、Ｐ３の座標から、タッチ位置Ｐ１からＰ２への移動量Ｌａ及びタッチ位置Ｐ２からＰ３への移動量Ｌｂを得る。
【０２９３】
ここで、角度αが所定範囲（例えば−１５度から＋１５度）を超えていて、且つ移動量Ｌａ及びＬｂが共に所定量より小さければ、操作面をタッチしている指がほとんど移動していないことを意味する。
【０２９４】
実際、図２３の例では、時点ｔ３で、角度αが所定範囲を超えていて、且つ移動量Ｌａ及びＬｂが共に所定量より小さくなる。
【０２９５】
ゆえに、ＣＰＵ１１０は、この時点ｔ３で、指を滑らせた後に任意の位置で指を離そうとする動作があったと判別して、このときのタッチ位置でドラッグされると予測する。そしてＣＰＵ１１０は、このドラッグに対応する処理をこの時点ｔ３から開始する。
【０２９６】
この場合も、ＣＰＵ１１０は、このときのタッチ位置でのドラッグに対応する処理のうち、ＢＧ処理のみを開始する。
【０２９７】
その後、ＣＰＵ１１０は、時点ｔ３より後の時点ｔ４で、指が操作面から離れたことを認識することにより、実際に任意の方向にドラッグされたと認識する。するとＣＰＵ１１０は、この時点ｔ４から、ＦＧ処理を開始する。
【０２９８】
このように、ＣＰＵ１１０は、実際にドラッグが終了する前の時点ｔ３で、操作面に接触している指の動きと押圧力から、ドラッグされることを予測して、ドラッグに対応する処理のうちのＢＧ処理を開始するようにした。
【０２９９】
こうすることで、従来のように、実際にドラッグされた時点ｔ４で、ドラッグに対応する処理を開始する場合と比して、実際にドラッグされた時点ｔ４から処理が終了するまでの時間を短縮できる。
【０３００】
尚、ＣＰＵ１１０は、例えば、実際にドラッグされる前に、ＢＧ処理が完了したとしても、実際にドラッグされるまでは、ＦＧ処理を開始しないようになっている。
【０３０１】
こうすることで、万が一、予測が外れてドラッグされなかったにも関わらずＦＧ処理を実行してしまうような状況を回避することができ、ユーザに不利益が生じないようになっている。
【０３０２】
またＣＰＵ１１０は、例えば、ドラッグを予測した時点ｔ３から、所定時間経過しても、実際にドラッグが行われなかった場合には、予測が外れたとして、画像データの読み出しを停止するようにもなっている。
【０３０３】
こうすることで、予測が外れたにも関わらず、予測したドラッグに対応する処理を無駄に継続してしまうような状況を回避することができる。
【０３０４】
次に、タッチ位置の変位と押圧力の変化をもとに、タッチスクリーン１０２に表示させたソフトウェアキーボードのキーに対する押込タップを予測する場合について説明する。
【０３０５】
携帯端末１００ｘのＣＰＵ１１０は、第２の実施の形態と同様、文字入力を行う為の画面として、図１３に示す文字入力画面２００を、液晶パネル１０２Ａに表示させるようになっている。
【０３０６】
この文字入力画面２００は、入力された文字を表示する文字表示領域２００Ａと、文字の変換候補を表示する変換候補表示領域２００Ｂと、ソフトウェアキーボードを表示するキー表示領域２００Ｃとで構成される。
【０３０７】
キー表示領域２００Ｃには、ソフトウェアキーボードとして、ＱＷＥＲＴＹ配列で並べられた複数のキーが表示される。
【０３０８】
そしてこの文字入力画面２００では、キー表示領域２００Ｃに表示されているキーのうちの１つが押込タップされると、このキーに対応する文字が、文字表示領域２００Ａに表示される。
【０３０９】
またこの文字入力画面２００では、キーが押込タップされると、このキーに対応する文字を含んだ変換候補が、変換候補表示領域２００Ｂに表示される。
【０３１０】
そして、文字表示領域２００Ａに表示されている文字の入力が確定する前に、変換候補表示領域２００Ｂに表示されている変換候補のうちの１つが押込タップされると、この変換候補が文字表示領域２００Ａに表示される。
【０３１１】
ＣＰＵ１１０は、このような文字入力画面２００を液晶パネル１０２Ａに表示させた状態で、タッチ位置の変位と押圧力の変化とをもとに、キーの押込タップを予測するようになっている。
【０３１２】
実際、ユーザは、文章を入力する場合、タッチパネル１０２Ｂの操作面をタッチしたまま指を所望のキーの上に素早く移動させてからキーを少なくとも圧力値が押込閾値を超えるまで押し込んだ後、押し込みを終える動作を繰り返す。
【０３１３】
そこで、携帯端末１００は、操作面と平行な方向への指の移動速度が落ちて、且つキーを押し込み始める動きがあった場合に、ユーザが、キーを押込タップすると予測するようになっている。
【０３１４】
具体的に、ＣＰＵ１１０は、図２４に示すように、一定時間Ｔごとにタッチ位置と圧力値を検知する。
【０３１５】
さらに、ＣＰＵ１１０は、前回のタッチ位置のＸ座標及びＹ座標と、今回のタッチ位置のＸ座標及びＹ座標とをもとに、一定時間Ｔ内でのタッチ位置のＸＹ平面上での移動ベクトルを算出する。この移動ベクトルは、一定時間Ｔ内での指の移動量（すなわち移動速度Ｖｘｙ）と移動方向を表す。すなわち、この移動ベクトルから、現在、指が、操作面上でどの程度の速さでどの方向に移動しているのかがわかる。
【０３１６】
ＣＰＵ１１０は、このようにして得られた、圧力値と、移動ベクトルとをもとに、操作面と平行な方向への指の移動速度が落ちて、且つキーを押し込み始める動作が行われたかどうかを判別する。
【０３１７】
すなわち、ＣＰＵ１１０は、指の移動速度Ｖｘｙが所定値以下で、圧力値が所定値（これをフォーカス閾値とも呼び、押込閾値よりも小さな値に設定される）を超えた場合に、上述の動作が行われたと判別する。
【０３１８】
実際、図２４の例では、タッチ位置Ｐ１を検知した時点ｔ１で、指の移動速度Ｖｘｙが所定値以下で、圧力値がフォーカス閾値を超える。
【０３１９】
ゆえに、ＣＰＵ１１０は、この時点ｔ１で、操作面と平行な方向への指の移動速度が落ちて、キーを押し込み始める動作があったと判別して、キーが押込タップされると予測する。
【０３２０】
さらに、ＣＰＵ１１０は、前回のタッチ位置Ｐ０から今回のタッチ位置Ｐ１への移動ベクトルと、現在のタッチ位置Ｐ１のＸ座標及びＹ座標とをもとに、どのキーが押込タップされるかを特定する。
【０３２１】
具体的には、例えば、このときの移動速度Ｖｘｙが設定された値未満であれば、現在のタッチ位置Ｐ１のＸ座標及びＹ座標に対応する位置のキーが押込タップされると特定する。また一方で、このときの移動速度Ｖｘｙが設定された値以上であれば、この移動速度Ｖｘｙをもとに、前回のタッチ位置Ｐ０と今回のタッチ位置Ｐ１とを結ぶ線分の延長線上に位置するキーの１つが押込タップされると特定する。
【０３２２】
このようにＣＰＵ１１０は、指の移動速度Ｖｘｙを考慮して、押込タップされるキーを特定する。
【０３２３】
そしてＣＰＵ１１０は、このキーの押込タップに対応する処理をこの時点ｔ１から開始する。
【０３２４】
具体的に、ＣＰＵ１１０は、押込タップされると予測したキーをフォーカスする処理と、このキーに対応する文字を含んだ変換候補を、不揮発性メモリ１１１に記憶している辞書データから検索する処理を開始する。そしてＣＰＵ１１０は、検索結果として得られた変換候補をＲＡＭ１１２に記憶していく。
【０３２５】
その後、ＣＰＵ１１０は、時点ｔ１より後の時点ｔ２でタッチ位置Ｐ２を検知したときに、このときの圧力値が押込閾値を超えていることにより、操作面が押し込まれていると判別する。
【０３２６】
さらにＣＰＵ１１０は、時点ｔ２より後の時点ｔ４でタッチ位置Ｐ４を検知したときに、このときの圧力値が押込閾値以下になったことにより、押し込みが終了したと判別する。
【０３２７】
そしてＣＰＵ１１０は、この時点ｔ４で、実際にキーが押込タップされたと認識する。
【０３２８】
するとＣＰＵ１１０は、押込タップされたキーに対応する文字を、文字表示領域２００Ａに表示させると共に、ＲＡＭ１１２に記憶させた変換候補を読み出し、これを、変換候補表示領域２００Ｂに表示させる。
【０３２９】
このように、ＣＰＵ１１０は、実際にキーが押込タップされる前の時点ｔ１で、操作面に接触している指の動きと押圧力の変化から、キーが押込タップされることを予測して、フォーカスする処理と、変換候補を検索する処理とを開始するようにした。
【０３３０】
こうすることで、実際にキーが押込タップされた時点ｔ４で、これらの処理を開始する場合と比して、実際にキーが押込タップされた時点ｔ４から、これらの処理が終了するまでの時間を短縮できる。
【０３３１】
また、ＣＰＵ１１０は、圧力値がフォーカス閾値を超えていても、操作面と平行な方向への指の移動速度Ｖｘｙが所定値を越えている限り、キーをフォーカスしないようにした。
【０３３２】
すなわち、指が押し込まれていても、指が操作面と平行な方向に素早く移動していれば、単にキーの上を指が通過しているだけであるので、キーをフォーカスしないようになっている。
【０３３３】
こうすることで、ユーザが、例えば或るキーを押込タップした後、この指を、次に押込タップするキーまで滑らせるときに、この移動経路上に存在する全てのキーをフォーカスしてしまうようなことを防止することができる。
【０３３４】
ところで、圧力値がフォーカス閾値以下であり、操作面と平行な方向への指の移動速度Ｖｘｙが所定値以下となるようなとき、すなわち操作面と平行な方向への指の移動速度は低下したものの、操作面が指で押し込まれていないときがある。この場合、キーが押込タップされると断定することはできないが、キーが押込タップされる可能性はあると考えられる。
【０３３５】
そこで、このときＣＰＵ１１０は、タッチ位置のＸ座標及びＹ座標に対応する位置のキーに対応する文字を含んだ変換候補を辞書データから検索する処理（ＢＧ処理）のみを開始して、フォーカスする処理（ＦＧ処理）は行わないようになっている。
【０３３６】
ここまで説明したように、携帯端末１００ｘは、タッチ位置の変位と押圧力の変化をもとに、ユーザが押込タップやフリックなどの操作を終了する前に、これらを予測して対応する処理を開始しておくようにした。
【０３３７】
こうすることで、従来のように、実際に押込タップやフリックなどの操作が終了してから対応する処理を開始する場合と比して、実際に押込タップやフリックなどの操作が行われてから対応する処理が終了するまでの時間を短縮することができる。
【０３３８】
［３−３．操作予測処理手順］
次に、携帯端末１００ｘが、各種操作を予測するときの具体的な処理の手順（操作予測処理手順）について説明する。
【０３３９】
まず図２５に示すフローチャートを用いて、上述した押込タップ、フリック、ドラッグを予測する場合の操作予測処理手順ＲＴ３から説明する。
【０３４０】
尚、この操作予測処理手順ＲＴ３は、携帯端末１００ｘのＣＰＵ１１０が、不揮発性メモリ１１１に格納されているプログラムにしたがって実行する処理の手順である。
【０３４１】
ＣＰＵ１１０は、例えば、携帯端末１００ｘの電源がオンされると、操作予測処理手順ＲＴ３を開始して、ステップＳＰ１００に移る。ステップＳＰ１００においてＣＰＵ１１０は、タッチパネル１０２Ｂに対して実際に各種操作（押込タップ、フリック、ドラッグ）が行われたか否かを判別する。
【０３４２】
ここで、タッチパネル１０２Ｂに対して実際に各種操作が行われていないことによりこのステップＳＰ１００で否定結果を得ると、ＣＰＵ１１０は、ステップＳＰ１０１に移る。
【０３４３】
ステップＳＰ１０１においてＣＰＵ１１０は、現在、予測した各種操作に対応するＢＧ処理を実行中であるか否かを判別する。
【０３４４】
ここで、予測した各種操作に対応するＢＧ処理が実行されていないことにより、このステップＳＰ１０１で否定結果を得ると、ＣＰＵ１１０は、ステップＳＰ１０２に移る。
【０３４５】
ステップＳＰ１０２においてＣＰＵ１１０は、タッチパネル１０２Ｂに対する指の接触を検知したか否かを判別する。
【０３４６】
ここで、指の接触を検知したことにより、このステップＳＰ１０２で肯定結果を得ると、ＣＰＵ１１０は、ステップＳＰ１０３に移る。
【０３４７】
ステップＳＰ１０３においてＣＰＵ１１０は、今回のタッチ位置及び圧力値と、前回のタッチ位置及び圧力値とから、操作面に接触している指の動きと押圧力の変化を特定して、次のステップＳＰ１０４に移る。
【０３４８】
ステップＳＰ１０４においてＣＰＵ１１０は、ステップＳＰ１０４で特定した、操作面に接触している指の動きと押圧力の変化から、各種操作が予測できたか否かを判別する。
【０３４９】
ここで、例えば、ステップＳＰ１０４で特定した指の動きと押圧力の変化から、押込タップが予測できたとする。するとＣＰＵ１１０は、このステップＳＰ１０４で肯定結果を得て、ステップＳＰ１０５に移る。
【０３５０】
ステップＳＰ１０５においてＣＰＵ１１０は、予測した操作に対応するＢＧ処理を開始して、再びステップＳＰ１００に戻る。
【０３５１】
一方、上述のステップＳＰ１０１で、予測した操作に対応するＢＧ処理を実行中であることにより肯定結果を得ると、ＣＰＵ１１０は、ステップＳＰ１０６に移る。
【０３５２】
ステップＳＰ１０６においてＣＰＵ１１０は、操作を予測してから所定時間経過したか否かを判別する。
【０３５３】
ここで、まだ所定時間経過していないことにより、このステップＳＰ１０６で否定結果を得ると、ＣＰＵ１１０は、再びステップＳＰ１００に戻る。
【０３５４】
これに対して、所定時間経過したことにより、このステップＳＰ１０６で肯定結果を得ると、ＣＰＵ１１０は、ステップＳＰ１０７に移る。
【０３５５】
ステップＳＰ１０７においてＣＰＵ１１０は、操作を予測してから所定時間経過しても、実際に操作が行われなかったことにより、予測した操作に対応するＢＧ処理を停止して、再びステップＳＰ１００に戻る。
【０３５６】
また一方、上述のステップＳＰ１００で、タッチパネル１０２Ｂに対して実際に各種操作が行われたことにより肯定結果を得ると、ＣＰＵ１１０は、ステップＳＰ１０８に移る。
【０３５７】
ステップＳＰ１０８においてＣＰＵ１１０は、この操作に対応するＢＧ処理が終了するのを待ち受ける。そして、このＢＧ処理が終了したことにより、このステップＳＰ１０８で肯定結果を得ると、ＣＰＵ１１０は、ステップＳＰ１０９に移る。
【０３５８】
ステップＳＰ１０９においてＣＰＵ１１０は、ＢＧ処理に続くＦＧ処理を実行して、再びステップＳＰ１００に戻る。
【０３５９】
尚、上述のステップＳＰ１０２で、指の接触を検知していないことにより否定結果を得た場合と、上述のステップＳＰ１０４で操作を予測できていないことにより否定結果を得た場合も、ＣＰＵ１１０は、再びステップＳＰ１００に戻る。
【０３６０】
このような操作予測処理手順ＲＴ３にしたがって、携帯端末１００ｘのＣＰＵ１１０は、各種操作（押込タップ、フリック、ドラッグ）を予測して、対応するＢＧ処理を、各種操作が実際に行われる前に開始しておくようになっている。
【０３６１】
次に、図２６に示すフローチャートを用いて、上述したソフトウェアキーボードのキーに対する押込タップを予測する場合の操作予測処理手順ＲＴ４について説明する。
【０３６２】
尚、この操作予測処理手順ＲＴ４も、携帯端末１００ｘのＣＰＵ１１０が、不揮発性メモリ１１１に格納されているプログラムにしたがって実行する処理の手順である。
【０３６３】
ＣＰＵ１１０は、例えば、携帯端末１００ｘの電源がオンされると、操作予測処理手順ＲＴ４を開始して、ステップＳＰ１１０に移る。ステップＳＰ１１０においてＣＰＵ１１０は、キーに対して実際に押込タップが行われたか否かを判別する。
【０３６４】
ここで、実際に押込タップが行われていないことによりこのステップＳＰ１１０で否定結果を得ると、ＣＰＵ１１０は、ステップＳＰ１１１に移る。
【０３６５】
ステップＳＰ１１１においてＣＰＵ１１０は、タッチパネル１０２Ｂに対する指の接触を検知したか否かを判別する。
【０３６６】
ここで、指の接触を検知したことにより、このステップＳＰ１１１で肯定結果を得ると、ＣＰＵ１１０は、ステップＳＰ１１２に移る。
【０３６７】
ステップＳＰ１１２においてＣＰＵ１１０は、押圧力の圧力値と、操作面と平行な方向への指の移動速度Ｖｘｙを得て、次のステップＳＰ１１３に移る。
【０３６８】
ステップＳＰ１１３においてＣＰＵ１１０は、押圧力の圧力値がフォーカス閾値を超えているか否かを判別する。
【０３６９】
ここで、圧力値がフォーカス閾値を超えていることにより、このステップＳＰ１１３で肯定結果を得ると、ＣＰＵ１１０は、ステップＳＰ１１４に移る。
【０３７０】
ステップＳＰ１１４においてＣＰＵ１１０は、操作面と平行な方向への指の移動速度Ｖｘｙが所定値以下であるか否かを判別する。
【０３７１】
ここで、指の移動速度Ｖｘｙが所定値以下であることにより、このステップＳＰ１１４で肯定結果を得ると、このことは、操作面と平行な方向への指の移動速度が落ちて、キーを押し込み始める動作があったことを意味する。このときＣＰＵ１１０は、ステップＳＰ１１５に移る。
【０３７２】
ステップＳＰ１１５においてＣＰＵ１１０は、現在のタッチ位置と指の移動速度Ｖｘｙをもとに特定したキーが押込タップされると予測する。そしてＣＰＵ１１０は、このキーをフォーカスする処理と、このキーに対応する文字を含んだ変換候補を辞書データから検索する処理を開始して、再びステップＳＰ１１０に戻る。
【０３７３】
これに対して、上述のステップＳＰ１１３で、圧力値がフォーカス閾値以下であることにより、否定結果を得ると、ＣＰＵ１１０は、ステップＳＰ１１６に移る。
【０３７４】
ステップＳＰ１１６においてＣＰＵ１１０は、指の移動速度Ｖｘｙが所定値以下であるか否かを判別する。
【０３７５】
ここで、指の移動速度Ｖｘｙが所定値以下であることにより、このステップＳＰ１１６で肯定結果を得ると、このことは、キーが押込タップされる可能性があることを意味する。このときＣＰＵ１１０は、ステップＳＰ１１７に移る。
【０３７６】
ステップＳＰ１１７においてＣＰＵ１１０は、今回のタッチ位置のＸ座標及びＹ座標に対応する位置のキーがタッチされる可能性があることから、このキーに対応する文字を含んだ変換候補を辞書データから検索する処理のみを開始する。そしてＣＰＵ１１０は、再びステップＳＰ１１０に戻る。
【０３７７】
また上述のステップＳＰ１１４及びステップＳＰ１１５で否定結果を得ていた場合、キーがタッチされる可能性はないことから、ＣＰＵ１１０は、何ら処理を行わずに、ステップＳＰ１１０に戻る。
【０３７８】
一方、上述のステップＳＰ１１０で、タッチパネル１０２Ｂに対して実際に押込タップが行われたことにより肯定結果を得ると、ＣＰＵ１１０は、ステップＳＰ１１８に移る。
【０３７９】
ステップＳＰ１１８においてＣＰＵ１１０は、ＲＡＭ１１２から、押込タップされたキーに対応する文字を含んだ変換文字を読み出して、これを変換文字表示領域２００Ｂに表示した後、ステップＳＰ１１０に戻る。尚、このとき、押込タップされたキーに対応する文字を含んだ変換文字を検索する処理がまだ終了していなかった場合には、この処理が終了した後に、検索結果として得られた変換候補を表示するようにする。
【０３８０】
また一方、上述のステップＳＰ１１１で、指の接触を検知していないことにより否定結果を得ると、ＣＰＵ１１０は、ステップＳＰ１１９に移る。
【０３８１】
ステップＳＰ１１９においてＣＰＵ１１０は、この時点で、キーをフォーカスしているか否かを判別する。
【０３８２】
ここで、キーをフォーカスしていることにより肯定結果を得ると、このことは、直前までキーをタッチしていた指が、操作面から離れたことを意味する。このときＣＰＵ１１０は、ステップＳＰ１２０に移る。
【０３８３】
ステップＳＰ１２０においてＣＰＵ１１０は、フォーカスを解除して、ステップＳＰ１１０に戻る。また上述のステップＳＰ１１９で否定結果を得た場合、ＣＰＵ１１０は、ステップＳＰ１１０に戻る。
【０３８４】
このような操作予測処理手順ＲＴ４にしたがって、携帯端末１００ｘのＣＰＵ１１０は、キーの押込タップを予測して、キーをフォーカスする処理と、変換候補を検索する処理を、実際にキーが押込タップされる前に開始しておくようになっている。
【０３８５】
［３−４．動作及び効果］
以上の構成において、携帯端末１００ｘのＣＰＵ１１０は、一定時間Ｔごとにタッチ位置を検知することにより、タッチ位置の変位、すなわちタッチスクリーン１０２に接触している指の動きを検出する。
【０３８６】
さらにＣＰＵ１１０は、一定時間Ｔごとに圧力値を検知することにより、タッチスクリーン１０２に接触している指による押圧力の変化を検出する。
【０３８７】
そしてＣＰＵ１１０は、指の動きと押圧力の変化から、押込操作等の各種操作（押込タップ、フリック、ドラッグ）が行われることを予測して、実際に各種操作が行われる前に、各種操作に対応する処理を開始するようにした。
【０３８８】
こうすることで、携帯端末１００ｘは、実際に各種操作が行われてから各種操作に対応する処理を開始する場合と比して、実際に各種操作が行われてから、対応する処理が完了するまでの時間を短縮することができる。
【０３８９】
以上の構成によれば、携帯端末１００ｘは、ユーザが実際に押込操作を含めた各種操作を行ってから対応する処理が終了するまでの時間を短縮することができ、かくして、従来と比して一段と押込操作を含めた各種操作に対する応答性を向上させることができる。
【０３９０】
＜４．他の実施の形態＞
［４−１．他の実施の形態１］
尚、上述した第１及び第２の実施の形態では、今回検知した近接位置と、前回検知した近接位置とから、タッチパネル１０２Ｂに近接している指の動きを特定するようにした。
【０３９１】
これに限らず、例えば、図２７に示すように、今回検知した近接位置Ｐ２と、前々回検知した近接位置Ｐ０とから、タッチパネル１０２Ｂに近接している指の動きを特定するようにしてもよい。
【０３９２】
実際、近接位置及びタッチ位置の検知間隔（すなわち所定時間Ｔ）が短いと、今回の近接位置と前回の近接位置との差が小さくなり、指の動きを特定し難くなる。
【０３９３】
ゆえに、今回の近接位置と、前々回の近接位置もしくはさらに過去の近接位置とから、指の動きを特定するようにしてもよく、こうした方が、指の動きをより正確に特定し得る場合がある。
【０３９４】
［４−２．他の実施の形態２］
また、上述した第２の実施の形態では、現在の近接位置のＺ座標（すなわち操作面と指との距離）と、操作面と平行な方向への指の移動速度Ｖｘｙとをもとに、キーをタッチするときの予備動作が行われたかどうかを判別するようにした。
【０３９５】
これに限らず、第１の実施の形態で扱った、一定時間Ｔ内での近接位置のＺ座標の傾きと、移動速度Ｖｘｙとをもとに、キータッチするときの予備動作が行われたかどうかを判別するようにしてもよい。
【０３９６】
この場合、操作予測処理手順ＲＴ２のステップＳＰ２３での処理を、Ｚ座標の傾きが「−」で且つ絶対値が所定値以上であるか否か（すなわち一定以上の速さで指が操作面に近づいているか否か）を判別する処理に変えればよい。
【０３９７】
［４−３．他の実施の形態３］
さらに、上述した第２の実施の形態では、キーのタッチを予測するときに、近接位置のＺ座標が所定値以下であるかどうかを判別して、さらに操作面と平行な方向への指の移動速度Ｖｘｙが所定値以下であるかどうかを判別するようにした。
【０３９８】
これに限らず、移動速度Ｖｘｙに応じて、Ｚ座標の条件となる所定値を変化させるようにして、Ｚ座標がこのようにして変動する所定値以下であるかどうかにより、キーのタッチを予測するようにしてもよい。
【０３９９】
例えば、移動速度Ｖｘｙが速くなるほど、Ｚ座標の条件となる所定値を小さくするようにする。
【０４００】
この場合、ユーザが指を速く動かしている場合には、指と操作面とが近いときにのみキーがタッチされると予測し、ユーザが指をゆっくり動かしている場合には、指と操作面とがある程度離れていてもキーがタッチされると予測することになる。
【０４０１】
このようにしても、十分正確にキーのタッチを予測することができ、タッチ操作に対する応答性を向上させることができる。
【０４０２】
［４−４．他の実施の形態４］
さらに、上述した第１及び第２の実施の形態では、タッチパネル１０２Ｂに近接している指の動きから、タッチ操作としてのタップ、フリック、タッチを予測するようにした。
【０４０３】
これに限らず、この他種々のタッチ操作（例えば、ドラッグ、ピンチイン、ピンチアウト）を、タッチされる直前の指の動きの特徴から、予測するようにしてもよい。
【０４０４】
例えば、２本の指を、或る程度離した状態で、ほぼ垂直に素早く下ろす、もしくは互いに近づくように斜めに素早く下ろす動きがあった場合に、ピンチインが行われると予測するなどしてもよい。
【０４０５】
この場合、ＣＰＵ１１０は、予測した時点で、ピンチインに対応する処理を開始する。
【０４０６】
またこれに限らず、タッチパネル１０２Ｂに近接している指の動きから、近接操作を予測するようにしてもよい。
【０４０７】
例えば、タッチパネル１０２Ｂに指を近接させて、円を描くように動かす近接操作があるとする。
【０４０８】
このとき、ＣＰＵ１１０は、例えば、タッチパネル１０２Ｂに近接している指の移動速度Ｖｘｙが所定値以上で、且つ移動の軌跡が円の一部（円弧）となった時点で、円を描くように動かす近接操作が行われると予測するようにする。
【０４０９】
［４−５．他の実施の形態５］
さらに、上述した第１及び第２の実施の形態では、静電容量式のタッチパネル１０２Ｂを有する携帯端末１００に本発明を適用するようにした。
【０４１０】
これに限らず、指（指示物）の接触と近接を検知し得る操作入力デバイスであれば、液晶パネル内に光センサを内蔵した光センサ式のタッチスクリーンなど、この他種々の操作入力デバイスを有する機器に本発明を適用するようにしてもよい。
【０４１１】
また、指の接触と近接の両方を検知し得る操作入力デバイスに限らず、指の接触を検知し得るデバイス（例えば感圧式のタッチパネル）と、近接を検知し得るデバイス（例えば赤外線センサ）と別々に有する機器に本発明を適用するようにしてもよい。
【０４１２】
また液晶パネル１０２Ａの代わりに、有機ＥＬ（Electro  Luminescence）パネルなど、この他種々の表示デバイスを有する機器に本発明を適用するようにしてもよい。
【０４１３】
さらに、例えば、各々タッチスクリーンを有する２つの筐体がヒンジ部を介して開閉自在に連結された所謂２画面携帯端末に本発明を適用するようにしてもよい。
【０４１４】
この場合、ＣＰＵ１１０は、２つのタッチスクリーンの各々のタッチパネルの出力値から、各々のタッチパネルに対するタッチ操作を予測するようにする。
【０４１５】
尚、これらのことは、上述した第３の実施の形態の携帯端末１００ｘについても同様である。
【０４１６】
また第３の実施の形態では、タッチパネル１０２Ｂ裏に圧力センサを配置した携帯端末１００ｘに本発明を適用するようにした。
【０４１７】
これに限らず、タッチスクリーン１０２に対する押圧力を検知できる検知デバイスであれば、この他種々の検知デバイスを有する機器に本発明を適用するようにしてもよい。
【０４１８】
また第３の実施の形態では、指の接触と押圧力とを検知できればよいので、静電容量式のタッチパネル１０２Ｂの代わりに、指の接触のみを検知できるデバイスを有する機器に適用するようにしてもよい。
【０４１９】
［４−６．他の実施の形態６］
さらに、上述した第２の実施の形態では、キーをタッチする予備動作があったときに、このときの近接位置のＸ座標及びＹ座標に対応する位置のキーがタッチされると予測した。
【０４２０】
これに限らず、例えば、このときの近接位置と前回の近接位置とを結ぶ線分の延長線上に位置するキーがタッチされると予測するなどしてもよい。
【０４２１】
［４−７．他の実施の形態７］
さらに、上述した第３の実施の形態では、圧力値がフォーカス閾値以下であれば、キーをタッチしていてもフォーカスしないようにした。
【０４２２】
これに限らず、圧力値がフォーカス閾値以下であっても、キーをタッチしている指の移動速度Ｖｘｙが所定値以下であれば、キーをフォーカスするようにしてもよい。
【０４２３】
［４−８．他の実施の形態８］
さらに上述した第１及び第２の実施の形態では、情報処理装置１としての携帯端末１００に、接触検知部２及び近接検知部３としてのタッチパネル１０２Ｂを設けるようにした。また情報処理装置１の制御部４としてのＣＰＵ１１０を設けるようにした。
【０４２４】
本発明はこれに限らず、同様の機能を有するのであれば、上述した携帯端末１００の各部を、他の種々のハードウェアもしくはソフトウェアにより構成するようにしてもよい。
【０４２５】
さらに本発明は、携帯端末１００に限らず、デジタルスチルカメラ、据置型のパーソナルコンピュータ、ゲーム機、ポータブルオーディオプレイヤ、携帯型電話機など、この他種々の機器に適用するようにしてもよく、また適用することができる。これらのことは、第３の実施の形態の携帯端末１００ｘについても同様である。
【０４２６】
［４−９．他の実施の形態９］
さらに上述した実施の形態では、各種処理を実行するためのプログラムを、携帯端末１００の不揮発性メモリ１１１に書き込んでおくようにした。
【０４２７】
これに限らず、例えば、携帯端末１００又は１００ｘにメモリカードなどの記憶媒体のスロットを設け、ＣＰＵ１１０が、このスロットに差し込まれた記憶媒体からプログラムを読み出して実行するようにしてもよい。またＣＰＵ１１０が、この記憶媒体から読み出したプログラムを、不揮発性メモリ１１１にインストールするようにしてもよい。さらにＣＰＵ１１０が、このプログラムを、ネットワークＩ／Ｆ１１４を介して、ネットワーク上の機器からダウンロードして、不揮発性メモリ１１１にインストールするようにしてもよい。
【０４２８】
［４−１０．他の実施の形態１０］
さらに、本発明は、上述した実施の形態と他の実施の形態とに限定されるものではない。すなわち本発明は、上述した実施の形態と他の実施の形態の一部または全部を任意に組み合わせた形態、もしくは一部を抽出した形態にもその適用範囲が及ぶものである。
【産業上の利用可能性】
【０４２９】
本発明は、タッチパネルを介して操作入力を行う機器で広く利用することができる。
【符号の説明】
【０４３０】
１……情報処理装置、２……接触検知部、３……近接検知部、４……制御部、１００、１００ｘ……携帯端末、１０２……タッチスクリーン、１０２Ａ……液晶パネル、１０２Ｂ……タッチパネル、１１０……ＣＰＵ、３００……圧力センサ。
【図１】
2011170834.tif 000003
【図２】
2011170834.tif 000004
【図３】
2011170834.tif 000005
【図４】
2011170834.tif 000006
【図５】
2011170834.tif 000007
【図６】
2011170834.tif 000008
【図７】
2011170834.tif 000009
【図８】
2011170834.tif 000010
【図９】
2011170834.tif 000011
【図１０】
2011170834.tif 000012
【図１１】
2011170834.tif 000013
【図１２】
2011170834.tif 000014
【図１３】
2011170834.tif 000015
【図１４】
2011170834.tif 000016
【図１５】
2011170834.tif 000017
【図１６】
2011170834.tif 000018
【図１７】
2011170834.tif 000019
【図１８】
2011170834.tif 000020
【図１９】
2011170834.tif 000021
【図２０】
2011170834.tif 000022
【図２１】
2011170834.tif 000023
【図２２】
2011170834.tif 000024
【図２３】
2011170834.tif 000025
【図２４】
2011170834.tif 000026
【図２５】
2011170834.tif 000027
【図２６】
2011170834.tif 000028
【図２７】
2011170834.tif 000029