(57)【要約】      （修正有）【課題】狭小なタッチパネルを用いた指操作による情報入力の操作性を向上可能な技術を提供する。【解決手段】情報処理装置は、操作面ａ１に対する接触位置が操作面の周辺領域ａ２（入力領域）から中心領域ａ３（判別領域）に移動する第１段目のフリック操作ｗ６の方向Ｖ１と、第１段目の操作ｗ６に継続した接触位置の中心領域ａ３から周辺領域ａ２に移動する第２段目のフリック操作ｗ７の方向Ｖ２とを検出する検出部と、第１段目の操作ｗ６の方向に基づいて、入力の項目群の中から対象項目を特定し、特定した対象項目の中から第２段目の操作ｗ７の方向に対応する入力候補を特定する処理部と、を備える。【選択図】図３Ｄ
2016218963.tif 000002
【特許請求の範囲】
【請求項１】
操作面に対する接触位置が前記操作面の周辺領域から中心領域に移動する第１段目の操作の方向と、前記第１段目の操作に継続した接触位置の前記中心領域から前記周辺領域に移動する第２段目の操作の方向とを検出する検出部と、
前記第１段目の操作の方向に基づいて、入力の項目群の中から対象項目を特定し、特定した前記対象項目の中から前記第２段目の操作の方向に対応する入力候補を特定する処理部と、
を備える情報処理装置。
【請求項２】
前記処理部は、第１段目の操作が前記操作面の中心領域を接触の開始位置とし、接触位置が前記中心領域から前記操作面の周辺領域に移動して離脱する場合には、前記第１段目の接触の開始位置に基づいて、入力の項目群の中から対象項目を特定し、特定した前記対象項目の中から前記第１段目の操作の方向に対応する入力候補を特定する、請求項１に記載の情報処理装置。
【請求項３】
前記検出部は、操作面の中心領域に対する接触および離脱を検出し、
前記処理部は、前記操作面の中心領域に対する接触および離脱に基づいて、入力の項目群の中から対象項目を特定し、特定した前記対象項目に対応する入力候補を特定する、請求項１または２に記載の情報処理装置。
【請求項４】
前記処理部は、第１段目の操作が前記操作面の周辺領域を接触の開始位置とし、接触位置が前記周辺領域の前記開始位置とは異なる他の位置に移動して離脱する場合には、前記第１段目の操作の方向に対応付けられた、前記項目群の種別の切り替え、或いは、前記入力候補に対する変換制御を行う制御コードを特定する、請求項１から３の何れか１項に記載の情報処理装置。
【請求項５】
前記検出部は、前記接触位置の時系列データのうち先に取得された接触位置から後に取得された接触位置を結ぶ軌跡と前記操作面の縦軸あるいは横軸とが交差する角度に基づいて、前記操作面の縦軸あるいは横軸を基準軸とする３６０度の角度範囲を均等分に区分けされた方向を検出する、請求項１から４の何れか１項に記載の情報処理装置。
【請求項６】
コンピュータに、
操作面に対する接触位置が前記操作面の周辺領域から中心領域に移動する第１段目の操作の方向を検出するステップと、前記第１段目の操作に継続した接触位置の前記中心領域から前記周辺領域に移動する第２段目の操作の方向を検出するステップと、
前記第１操作の方向に基づいて、入力の項目群の中から対象項目を特定するステップと、特定した前記対象項目の中から前記第２段目の操作の方向に対応する入力候補を特定するステップと、
を実行させるための入力制御プログラム。
【請求項７】
コンピュータが、
操作面に対する接触位置が前記操作面の周辺領域から中心領域に移動する第１段目の操作の方向を検出するステップと、前記第１段目の操作に継続した接触位置の前記中心領域から前記周辺領域に移動する第２段目の操作の方向を検出するステップと、
前記第１操作の方向に基づいて、入力の項目群の中から対象項目を特定するステップと、特定した前記対象項目の中から前記第２段目の操作の方向に対応する入力候補を特定するステップと、
を実行する入力制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、入力制御プログラム及び入力制御方法に関する。
【背景技術】
【０００２】
近年、タッチパネル等の入力デバイスを備える情報処理装置が普及してきている。タッチパネルは、例えば、ＬＣＤ（Liquid Crystal Display）等の表示デバイスに、ユーザ操作による接触位置の座標を検出するデバイスを重畳させて組合せた入力デバイスである。タッチパネルを備える情報処理装置として、例えば、ＰＣ（Personal Computer）、携帯
電話機、スマートフォン、ノートＰＣ、タブレットＰＣ、ＰＤＡ（Personal Data Assistance）、ゲーム機、ナビゲーション装置等が例示できる。
【０００３】
上記の情報処理装置では、例えば、表示デバイスに文字入力等に係るオブジェクトが表示される。情報処理装置の操作者（以下、ユーザとも称す）は、例えば、文字入力等に係るオブジェクトの表示領域に操作指等を接触させてタッチ操作を行うことで所定の文字入力を行うことができる。タッチ操作による文字入力のインターフェースとして、以下の入力形態が知られている。
【０００４】
例えば、表示デバイスには、仮名文字の入力操作について、５０音表の“あかさたなはまやらわ”といった各行の「あ」の段がテンキーのように配置されたオブジェクトが表示されるとする。情報処理装置は、例えば、各オブジェクトの表示領域におけるタッチ操作の繰り返しを検出し（トグル入力）、表示されたオブジェクトの切り替えを行う。例えば、情報処理装置は、タッチ操作の繰り返しに応じて、表示された各行の仮名文字を、「あ」段→「い」段→「う」段→「え」段→「お」段のように切り替える。ユーザは、トグル入力で表示された表示文字を切り替えることで所望の文字入力を行うことができる。
【０００５】
また、表示デバイスには、例えば、“あかさたなはまやらわ”といった各行の「あ」の段がテンキーのように配置された周囲に、十字型や扇形に他の４段（い段、う段、え段、お段）を配置することができる。情報処理装置は、例えば、各行の「あ」段のキーが表示された領域から、目的の文字が配置された領域方向に指の接触位置を弾くように移動させるフリック操作を検出する。情報処理装置では、フリック操作の移動方向に対応する領域に配置された文字が入力文字として選択される。ユーザは、各行の表示領域から、目的の文字が配置された領域方向のフリック操作により、所望の文字入力を行うことができる。
【０００６】
なお、本明細書で説明する技術に関連する技術が記載されている先行技術文献としては、以下の特許文献が存在している。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２０１３−１７１２９５号公報
【特許文献２】特開２０１２−１４６１６０号公報
【特許文献３】特開２０１３−２００８７６号公報
【特許文献４】特開２０１２−１６８９３９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
上述のトグル式、フリック式による入力形態では、タッチパネル面に表示された“あかさたなはまやらわ”といった、最初の操作対象となる文字行の表示領域が接触される。こ
のため、例えば、表示デバイスが小型の場合、タッチパネルの表示領域が狭い場合には、隣接する操作オブジェクトへの誤接触による押し間違えが発生しやすいという問題があった。誤接触による押し間違え等を抑制するために、ペン型の接触器の使用や表示オブジェクトの数量を減らして多段階のメニュー選択を行う等の入力形態が考えられる。しかし、ペン型等の接触器の使用や多段階のメニュー選択を行う等の入力インターフェースでは、トグル式、フリック式の入力インターフェースに比べ煩わしいといった操作性の問題がある。
【０００９】
１つの側面では、本発明は、狭小なタッチパネルを用いた情報入力の操作性を向上可能な技術の提供を目的とする。
【課題を解決するための手段】
【００１０】
上記技術は、次の情報処理装置の構成によって例示できる。すなわち、情報処理装置は、操作面に対する接触位置が操作面の周辺領域から中心領域に移動する第１段目の操作の方向と、第１段目の操作に継続した接触位置の中心領域から周辺領域に移動する第２段目の操作の方向とを検出する検出部と、第１段目の操作の方向に基づいて、入力の項目群の中から対象項目を特定し、特定した対象項目の中から第２段目の操作の方向に対応する入力候補を特定する処理部と、を備える。
【発明の効果】
【００１１】
上記の情報処理装置によれば、本発明は、狭小なタッチパネルを用いた情報入力の操作性を向上可能な技術が提供できる。
【図面の簡単な説明】
【００１２】
【図１】本実施形態の情報処理装置のハードウェア構成例を示す図である。
【図２Ａ】タッチパネル領域を説明する図である。
【図２Ｂ】判別領域を用いた場合のフリック操作の判別例を示す図である。
【図２Ｃ】判別領域を用いた場合のタッチ操作の判別例を示す図である。
【図２Ｄ】判別領域を用いた場合のタッチ操作の判別例を示す図である。
【図２Ｅ】判別領域を用いた場合のタッチ操作の判別例を示す図である。
【図２Ｆ】移動方向の角度範囲についての区分を説明する図である。
【図３Ａ】８方向に分割された場合の移動方向についてのタッチパネル領域を説明する図である。
【図３Ｂ】５０音表の各行の「あ」の段が配置された文字入力の配置例を示す図である。
【図３Ｃ】９分割された英文字の配置例を示す図である。
【図３Ｄ】２段階フリックを用いた入力操作を説明する図である。
【図３Ｅ】１段階フリックを用いた入力操作を説明する図である。
【図３Ｆ】１段階フリックを用いた文字の削除操作を説明する図である。
【図３Ｇ】本実施形態の入力インターフェースを説明する図である。
【図３Ｈ】判別領域のサイズを説明する図である。
【図４】本実施形態の情報処理装置のコンピュータプログラム構成例を示す図である。
【図５】本実施形態の文字入力処理に係るタイムチャート例である。
【図６】本実施形態の文字入力処理を例示するフローチャートである。
【図７】タッチ操作に関連付けられた入力文字を識別するための入力文字テーブル例を示す図である。
【発明を実施するための形態】
【００１３】
以下、図面を参照して、一実施形態に係る情報処理装置について説明する。以下の実施
形態の構成は例示であり、情報処理装置は実施形態の構成には限定されない。
【００１４】
以下、図１から図７の図面に基づいて、情報処理装置を説明する。
【００１５】
＜実施形態＞
図１に、本実施形態の情報処理装置のハードウェアの構成を例示する。本実施形態の情報処理装置１０は、例えば、タッチパネルやタッチパッド等の操作者（以下、ユーザとも称す）の操作によるデバイスへの接触位置の座標を検出する入力デバイスを備える。タッチパネルは、例えば、ＬＣＤ（Liquid Crystal Display）等の表示デバイスに、ユーザの操作による接触位置の座標を検出するデバイスを重畳させて組合せた入力デバイスである。また、タッチパッドは表示デバイスと重畳させずに分離した状態でユーザの操作による接触位置の座標を検出する入力デバイスである。
【００１６】
情報処理装置１０には、例えば、ＰＣ（ＰＣ：Personal Computer）、携帯電話機、ス
マートフォン、ノートＰＣ、タブレットＰＣ、ＰＤＡ（Personal Data Assistance）、ゲーム機、ナビゲーション装置等の情報処理装置が含まれる。なお、情報処理装置１０は、ユーザの操作による接触位置の座標を検出する入力デバイスを備える電子機器であれば、例えば、腕時計やリストバンド等のユーザに装着可能なウェアラブル式の電子機器であってもよい。
【００１７】
図１に例示の情報処理装置１０は、出力部１５にＬＣＤ１５ａ等の表示デバイスを備える。また、情報処理装置１０は、入力部１４にタッチセンサ１４ａ等の、デバイス面に対する接触位置の座標を検出するデバイスを備える。ここで、「デバイス面」が操作面の一例である。タッチセンサ１４ａは、例えば、ＬＣＤ１５ａ等の表示デバイスと組合せたタッチパネルでも、分離した状態のままタッチパッドでもよく、ポインティングデバイスとして機能する。以降の説明は例としてＬＣＤ１５ａの表示デバイスと組み合わせたタッチパネルとして説明する。
【００１８】
タッチセンサ１４ａは、例えば、静電容量、電圧、圧力、光、振動等の物理量の変化を検出信号として捉え、デバイス面に対する操作指等の接触を検知する。また、タッチセンサ１４ａは、上述した物理量の接触状態を示す検出信号の変化から、接触された操作指等の離脱を検知する。タッチセンサ１４ａにより検知されたデバイス面上の接触および離脱は、例えば、デバイス面上の検出信号が変化した位置を示す座標として検出される。
【００１９】
タッチセンサ１４ａで検出される座標は、例えば、デバイスの左上角部を原点とし、表示デバイスの左右方向をＸ軸、上下方向をＹ軸とした（Ｘ，Ｙ）の２次元座標として表すことができる。
【００２０】
以下の説明において、タッチパネルのデバイス面を“タッチパネル領域”、操作指等の接触を検出する領域を“入力領域”とも称する。
【００２１】
情報処理装置１０は、入力領域で発生した、操作指等によるタッチ操作の接触位置を検出する。また、情報処理装置１０は、接触させた操作指等の入力領域からの離脱位置を検出する。また、情報処理装置１０は、入力領域内で接触状態にある操作指等の、接触位置を示す座標の位置変化から移動を検出する。接触状態にある操作指等の入力領域内の移動は、例えば、１０ｍｓ、１６．６ｍｓ、２０ｍｓ等の一定周期でサンプリングされた接触位置の位置変化から検出される。サンプリングされた接触位置の履歴は時系列データとなる。サンプリングされた接触位置を示す座標の時系列データは、例えば、デバイス上の軌跡として表すことができる。
【００２２】
情報処理装置１０は、例えば、接触状態にある操作指等の軌跡から、入力領域内の移動方向を検出する。移動方向は、例えば、サンプリングされた時系列データの接触位置間を結ぶ軌跡とＸ軸との間の相対角度で表すことができる。例えば、移動方向は、Ｘ軸の正方向を“０°”として左回転方向に相対角度を定義することができる。ここで、サンプリングされた時系列データのうち前後する接触位置を、それぞれＰ１（Ｘ１，Ｙ１）、Ｐ２（Ｘ２，Ｙ２）で表すとする。座標Ｐ１と座標Ｐ２の間を結ぶ軌跡とＹ軸との相対角度（θ）は、例えば、逆三角関数“ａｔａｎ”を用いて、（θ）＝ａｔａｎ（（Ｙ２−Ｙ１）／（Ｘ２−Ｘ１））として求めることができる。
【００２３】
なお、情報処理装置１０は、接触状態にある操作指等の移動に伴う軌跡からは、入力領域内の移動量を求めることができる。また、接触状態にある操作指等の移動に伴う移動量の時間変化からは移動速度を求めることができる。情報処理装置１０は、単位時間当たりの移動量から移動速度を求めることができる。
【００２４】
情報処理装置１０は、例えば、入力領域で検出した接触位置の座標が所定範囲内に収まり、接触後に離脱した場合には、接触位置に対するタッチ操作（タップ操作とも称す）を検出できる。
【００２５】
また、情報処理装置１０は、例えば、操作指等が接触状態で入力領域内を移動し、移動速度を速めて離脱した場合には、接触させた操作指等を弾くように移動させるタッチ操作（フリック操作とも称す）を検出できる。また、操作指等が接触状態でタッチパネル領域内を移動し、移動速度を落して停止する（移動後の接触位置に一定時間留まる）タッチ操作、或いは、移動後に離脱するタッチ操作（スワイプ操作、スライド操作とも称す）を検出できる。以降、本説明ではフリック操作とスワイプ操作とスライド操作を総じてフリック操作と称する。情報処理装置１０は、フリック操作を検出することで、フリック操作に伴う移動方向、移動量、移動により経過した領域（軌跡を含む領域）等を特定できる。
【００２６】
（タッチパネル領域）
本実施形態の情報処理装置１０は、デバイス面であるタッチパネル領域内の操作指等の接触を検出する入力領域内に、タッチ操作の種類を判別するための判別領域を設ける。判別領域により、タッチパネル領域は、判別領域内と判別領域外とに区分けされる。本実施形態の情報処理装置１０は、判別領域内と判別領域外とに区分けされた各領域内の座標に基づいて、タッチ操作の種類を判別する。
【００２７】
本実施形態の情報処理装置１０は、例えば、判別領域内から判別領域外への移動を伴うフリック操作、判別領域外から判別領域内への移動を伴うフリック操作を判別する。また、例えば、情報処理装置１０は、判別領域内のタップ操作を判別する。判別されたタッチ操作がフリック操作の場合には、情報処理装置１０は、移動軌跡からフリック操作の移動方向、移動量、移動により経過した領域等を特定することができる。本実施形態の情報処理装置１０は、例えば、判別されたタッチ操作の種類と移動方向とを組み合わせた、組合せパターンに基づいて、該タッチ操作に関連付けされた情報の入力項目を識別する。
【００２８】
図２Ａに、本実施形態の情報処理装置１０のタッチパネル領域の説明図を例示する。図２Ａに例示の矩形状のタッチパネル領域ａ１は、例えば、ＬＣＤ１５ａ等の表示デバイスの表示領域に重ね合わせてもよい。また、タッチパネル領域ａ１、入力領域ａ２、及び判別領域ａ３は矩形状の領域に限定されるわけではない。タッチパネルを備える電子機器の形状や使用目的、タッチパネルのサイズ等に応じて、タッチパネル領域ａ１、入力領域ａ２及び判別領域ａ３が設定される。タッチパネル領域ａ１、入力領域ａ２及び判別領域ａ３の形状は、例えば、楕円形状、６角形や星形等の多角形状等であってもよい。入力領域ａ２及び判別領域ａ３内に発生した操作指等の接触位置を検出し、タッチ操作の種類、移
動方向を判別できる形状であればよい。
【００２９】
図２Ａに例示のように、タッチパネル領域ａ１には、入力領域ａ２及び判別領域ａ３が含まれる。タッチパネル領域ａ１内の入力領域ａ２、判別領域ａ３は、タッチ操作の対象となる情報についての操作入力が行われる領域である。入力領域ａ２の座標は、入力領域ａ２内に存在する判別領域ａ３により、判別領域ａ３内の座標と判別領域ａ３外の座標とに区分けされる。情報処理装置１０は、判別領域ａ３内の座標と判別領域ａ３外の座標とに基づいて、例えば、入力領域ａ２内で発生したタッチ操作の種類と移動方向との組合せパターンで関連付けされる情報の入力項目を識別する。
【００３０】
なお、図２Ａに例示の入力領域ａ２は、タッチパネル領域ａ１と互いの中心位置を共通とした同心状の矩形状の領域例である。但し、タッチパネル領域ａ１内の入力領域ａ２は、一定方向に偏るようにしてもよい。入力領域ａ２内に判別領域ａ３が含まれていればよい。例えば、タッチパネル領域ａ１は、文字入力に係る領域と、入力した文字等が表示される領域に２分割されているとする。２分割されたタッチパネル領域ａ１内の、文字入力に係る領域が、一定方向に偏って設けられた入力領域ａ２として例示できる。また、重ね合わせた表示デバイスの表示領域の文字入力に係る領域に入力の方向や入力領域の境目を目視できるように表示したり、状態に合わせた入力文字候補などを表示してもよい。
【００３１】
判別領域ａ３は、入力領域ａ２内で発生した、判別領域ａ３内から判別領域ａ３外へ移動するタッチ操作を判別する領域である。同様にして、判別領域ａ３は、判別領域ａ３外から判別領域ａ３内へ移動するタッチ操作を判別する領域である。また、判別領域ａ３は、判別領域ａ３内で接触させた操作指等が移動せずに離脱するタッチ操作を判別する領域である。
【００３２】
さらに、情報処理装置１０は、判別領域ａ３内を移動するタッチ操作、或いは、判別領域ａ３外の入力領域ａ２を移動するタッチ操作を判別することができる。情報処理装置１０は、例えば、判別領域ａ３を用いて判別されたタッチ操作が移動を伴う場合には、移動に伴う移動方向等を特定する。
【００３３】
判別領域ａ３の領域サイズは、判別領域ａ３内に発生した操作指等の接触位置を検出し、タッチ操作の種類、移動方向を判別可能な領域サイズであればよい。
【００３４】
なお、入力領域ａ２に対する判別領域ａ３の相対的な位置は、判別領域ａ３内から判別領域ａ３外へ向かうフリック操作および移動方向、判別領域ａ３外から判別領域ａ３内へ向かうフリック操作および移動方向を判別可能な位置であればよい。判別領域ａ３の領域サイズや入力領域ａ２に対する判別領域ａ３の相対的な設定位置については、例えば、以下の設定手順で処理することができる。
【００３５】
先ず、タッチパネル領域ａ１内の入力領域ａ２に判別領域ａ３を仮決めする。次に、仮決めされた入力領域ａ２と判別領域ａ３の各領域に対する各フリック操作を試行し、各操作の検出率などに基づいて、入力領域ａ２内の判別領域ａ３の位置や領域サイズを決定することができる。また、このような設定手順で処理された判別領域ａ３を用いて入力操作を行い、ユーザの使い易さに応じて判別領域ａ３の領域サイズを決定することでもよい。情報処理装置１０は、判別領域ａ３を用いたタッチ操作のユーザビリティを向上できる。
【００３６】
図２Ａに例示の判別領域ａ３は、入力領域ａ２と互いの中心位置を共通とする同心状に判別領域ａ３を設定した一例である。
【００３７】
タッチ操作を行うユーザは、入力領域ａ２の範囲を目視により確認することで、入力領
域ａ２の中心位置を推定できる為、判別領域ａ３を入力領域ａ２の中心位置を含む中央部分の領域に設けることが望ましい。中心位置が推定された結果、タッチ操作を行うユーザについては、入力領域ａ２の外縁から中心位置に向かう、或いは、中心位置から入力領域ａ２の外縁に向かうフリック操作を行い易くなる効果が期待できる。また、タッチ操作を行うユーザについて、入力領域ａ２の中心位置に対するタップ操作を行い易くなる効果が期待できる。
【００３８】
以下の説明では、図２Ａに例示のタッチパネル領域ａ１、入力領域ａ２、判別領域ａ３を説明例として、本実施形態の情報処理装置１０の説明を行う。
【００３９】
（タッチ操作）
図２Ｂに、入力領域ａ２と判別領域ａ３を用いた場合のフリック操作の判別例を例示する。図２Ｂに例示のように、情報処理装置１０は、例えば、判別領域ａ３を用いることで入力領域ａ２に発生した４通りのフリック操作ｗ１−ｗ４を判別できる。
【００４０】
フリック操作ｗ１は、例えば、判別領域ａ３外の入力領域ａ２から、判別領域ａ３内に向かうフリック操作である。フリック操作ｗ２は、例えば、判別領域ａ３内から、判別領域ａ３外の入力領域ａ２へ向かうフリック操作である。フリック操作ｗ３は、判別領域ａ３内を移動するフリック操作であり、フリック操作ｗ４は、判別領域ａ３外の入力領域ａ２内を移動するフリック操作である。
【００４１】
フリック操作ｗ１では、フリック操作に伴う軌跡の開始位置は判別領域ａ３外の入力領域ａ２で検出され、軌跡の終了位置は判別領域ａ３内で検出される。フリック操作ｗ２では、フリック操作に伴う軌跡の開始位置は判別領域ａ３内で検出され、軌跡の終了位置は判別領ａ３域外の入力領域ａ２で検出される。フリック操作ｗ３では、フリック操作に伴う軌跡の開始位置および終了位置は判別領ａ３内で検出される。フリック操作ｗ４では、フリック操作に伴う軌跡の開始位置および終了位置は判別領域ａ３外の入力領域ａ２内で検出される。
【００４２】
図２Ｃ−２Ｅに、判別領域ａ３を用いた場合のタッチ操作の判別例を例示する。図２Ｃは、例えば、判別領域ａ３内で発生したタップ操作ｗ５の判別例である。タップ操作ｗ５では、所定の座標範囲内で接触及び離脱が検出される。タップ操作ｗ５では、接触位置が所定の座標範囲内で停留後、停留した座標範囲内から離脱することが検出される。なお、タップ操作は“定点タッチ”とも称する。
【００４３】
図２Ｄは、例えば、判別領域ａ３内と判別領域ａ３外との間に発生したフリック操作ｗ２の判別例である。フリック操作ｗ２では、例えば、判別領域ａ３内で接触が検出され、判別領域ａ３外で離脱が検出される。フリック操作ｗ２では、例えば、接触が発生した判別領域ａ３内から判別領域ａ３外で離脱が発生する迄の座標間での移動が検出される。なお、他のフリック操作ｗ１、ｗ３−ｗ４についても同様に、接触位置と離脱位置との間の移動が検出される。なお、既に述べたように、フリック操作ｗ１−ｗ４では、移動に伴う移動方向等が特定される。
【００４４】
図２Ｅは、２つのフリック操作が連続して発生した場合のタッチ操作の判別例である。本実施形態の情報処理装置１０では、入力領域ａ２内に設けた判別領域ａ３を中継領域として連続する２つのフリック操作を判別する。なお、図２Ｄに例示のフリック操作と区別するために、図２Ｄで説明した単一のフリック操作を“１段階フリック”とも称し、図２Ｅに例示のフリック操作を“２段階フリック”とも称する。
【００４５】
図２Ｅに例示のように、２段階フリックでは、判別領域ａ３を中継領域とする２つのフ
リック操作ｗ１、ｗ２が連続して発生する。２段階フリックでは、例えば、判別領域ａ３外でフリック操作ｗ１の接触が検出され、移動後の判別領域ａ３内で離脱せずに一定時間停留後に、停留位置を開始位置として２段目のフリック操作ｗ２を継続して行う。この場合、判別領域ａ３を介して継続された１段目のフリック操作ｗ１、２段目のフリック操作ｗ２についての移動方向が特定できる。
【００４６】
ここで、フリック操作の移動方向は、既に説明したように、時系列データとして取得される接触位置の座標間を結ぶ軌跡とＸ軸との間の相対角度として表すことができる。
【００４７】
図２Ｆに、Ｘ軸とＹ軸の交点の右方向を“０°”とし、左回転方向に相対方向を定義した場合の移動方向の説明図を例示する。なお、図２Ｆに於いて、基準軸Ｘｓは、タッチパネル上のＸ軸と平行する基準軸であり、同様に基準軸ＹｓはＹ軸と平行する基準軸である。時系列データとして取得された接触位置の軌跡において、移動方向は、時系列データとして先に取得された座標位置から後に取得された座標位置へ向かう方向として表すことができる。基準軸Ｘｓと基準軸Ｙｓとの交点を先に取得された座標位置とし、例えば、基準軸Ｘｓの正方向を“０°”とした場合、移動方向は、左回転方向に“０°”−“３６０°”の角度として表すことができる。
【００４８】
図２Ｆに例示の移動方向は、“０°”−“３６０°”の角度を８等分に区分した一例である。図２Ｆに例示のように、左回転方向への１回転の角度を８等分に区分した場合、例えば、基準軸Ｘｓの正方向を“０°”とすると、“３３７．５°”以上−“２２．５°”未満の角度範囲を領域ｄ１に示すように“右方向”とすることができる。同様にして、領域ｄ２に示す“右上方向”は、角度範囲“２２．５°”以上−“６７．５°”未満、領域ｄ３に示す“上方向”は角度範囲“６７．５°”以上−“１１２．５°”未満とすることができる。領域ｄ４に示す“左上方向”は角度範囲“１１２．５°”以上−“１５７．５°”未満、領域ｄ５に示す“左方向”は、角度範囲“１５７．５°”以上−“２０２．５°”未満とすることができる。領域ｄ６に示す“左下方向”は角度範囲“２０２．５°”以上−“２４７．５°”未満、領域ｄ７に示す“下方向”は角度範囲“２４７．５°”以上−“２９２．５°”未満、とすることができる。領域ｄ８に示す“右下方向”は、角度範囲“２９２．５°”以上−“３３７．５°”未満、とすることができる。なお、図２Ｆに例示の、領域ｄ９に示す“中央”とは、例えば、接触位置の上下左右方向の変化が所定の座標範囲内に留まる停止状態を表し、移動とはみなさないことを表している。
【００４９】
図２Ｆに例示のように、フリック操作に伴う移動方向を８方向に分割することで、情報処理装置１０は、次の効果を奏することができる。例えば、図２Ｅで説明した“２段階フリック”では、情報処理装置１０は、周辺領域からの１段階目のフリックの方向８種類と２段階目のフリックの方向の８種類とを組み合わせ、少なくとも６４種類の入力項目の識別が可能となる。ここで入力項目としては、例えば、文字や制御コード等が例示できる。
【００５０】
次に、図２Ａ−２Ｆで説明したタッチ操作、及び、移動方向を組合せた組合せパターンに基づく情報入力を説明する。なお、以下では、仮名文字等の入力を情報入力の一例として説明する。
【００５１】
（文字入力操作）
図３Ａに、タッチパネル領域ａ１と入力領域ａ２と判別領域ａ３の中心を合わせ、判別領域ａ３を中心として８方向に分割した文字入力の配置の位置の説明図を例示する。タッチパネル領域ａ１、入力領域ａ２、判別領域ａ３は、図２Ａ−２Ｃで説明した。図３Ａの説明図において、破線により区分された各領域ｃ１−ｃ９には、入力の開始文字が配置される。配置する開始文字の大きさは入力領域ａ２を含んでいれば、入力領域ａ２をはみ出して大きくても構わない。また、ｃ５の領域は判別領域ａ３に対応する。
【００５２】
携帯電話機やスマートフォン等の文字入力に係る入力インターフェースは、例えば、８方向に区分された領域ｃ１−ｃ４、ｃ６−ｃ９から開始される“２段階フリック”、及び、中央の領域ｃ５を開始位置とした“１段階フリック”を組合せることで表現できる。
【００５３】
図３Ｂに、５０音表の“あかさたなはまやらわ”といった各行の「あ」の段が配置された仮名文字入力の配置例を例示する。図３Ｂに例示の文字入力の配置では、９分割された領域ｃ１−ｃ９のそれぞれに、“あかさたなはまやらわ”の各行の「あ」の段が配置されている。但し、文字入力の配置は、図３Ｂ以外の配置であってもよい。
【００５４】
図３Ｂの例では、中央の領域ｃ５には、文字「な」が配置されている。中央の文字「な」に対し、左上方向の領域ｃ１には文字「あ」、上方向の領域ｃ２には文字「か」、右上方向の領域ｃ３には文字「さ」の、左方向の領域ｃ４には文字「た」が配置されている。同様にして、中央の文字「な」に対し、右方向の領域ｃ６には文字「は」、左下方向の領域ｃ７には文字「ま」、下方向の領域ｃ８には文字「や」と「わ」が配置されている。中央の文字「な」に対し、右下方向の領域ｃ９には文字「ら」が配置されている。但し、かな文字の入力文字の配置が図３Ｂに限定されるわけではない。
【００５５】
仮名文字以外の“ＡＢＣ”等の英文字の場合であっても、同様にして、９分割された領域ｃ１−ｃ９に英文字を配置することができる。図３Ｃに、９分割された領域ｃ１−ｃ９に英文字の配置例を例示する。
【００５６】
図３Ｃの例では、中央の領域ｃ５には、英文字「J」が配置されている。中央の領域ｃ
５に対し、左上方向の領域ｃ１には「.」等の特殊記号、上方向の領域ｃ２には英文字「A」、右上方向の領域ｃ３には文字「D」、左方向の領域ｃ４には文字「G」が配置されている。同様にして、中央の領域ｃ５に対し、右方向の領域ｃ６には英文字「M」、左下方向
の領域ｃ７には英文字「P」、下方向の領域ｃ８には英文字「T」が配置されている。中央の領域ｃ５に対し、右下方向の領域ｃ９には英文字「W」が配置されている。但し、英文
字の入力文字の配置が図３Ｃに限定されるわけではない。
【００５７】
以下、図３Ｂに例示の仮名文字の文字入力を対象として文字入力操作についての説明を行う。
【００５８】
（２段階フリック）
図３Ｄに、２段階フリックを用いた入力操作の説明図を例示する。なお、図３Ｄにおいて、文字入力の配置Ｔｂ１は、図３Ｂに例示の仮名文字入力の文字入力の配置を表す。また、Ｔｂ２は「あ」行の入力と特定した後の「あ」行の各段を十字方向に配置した例を表す。また、放射状の破線Ｖ１、Ｖ２は、図２Ｆに例示した８方向に分割された場合の移動方向の角度範囲であり、Ｔｂ１の文字「あ」からの操作開始時の移動方向をＶ1、Ｔｂ２
の文字「あ」からの操作開始時の移動方向をＶ２として表す。また、図３Ａと同様にタッチパネル領域ａ１、入力領域ａ２、判別領域ａ３として表す。
【００５９】
図３Ｄに例示の説明図において、文字「あ」が配置された領域から判別領域ａ３に向かうフリック操作ｗ６が発生したとする。２段階フリックのフリック操作ｗ６では、左上の領域を開始位置とし入力領域ａ２を先に通り、中央の判別領域ａ３を停止位置とする軌跡が検出される。情報処理装置１０は、例えば、Ｔｂ１の文字「あ」の領域から判別領域ａ３の領域に向かうフリック操作ｗ６を検出して、２段階フリックの１段階目として判断する。右下に向かう移動方向からブロックＰ１に示すように、「あ」行に対する文字入力操作と特定する。
【００６０】
検出されたフリック操作ｗ６が「あ」行に対する文字入力操作と特定した情報処理装置１０は、例えば、文字入力の配置をＴｂ１からＴｂ２に切り替える。図３Ｄの文字入力の配置Ｔｂ２は、例えば、「あ」行の各段を十字方向に配置した例である。文字入力の配置Ｔｂ２では、中央の領域に対し、上方向の領域に文字「う」、下方向の領域に文字「お」、左方向の領域に文字「い」、右方向の領域に文字「え」が配置される。なお、中央の領域には、例えば、文字「あ」が配置されている。
【００６１】
フリック操作ｗ６に継続してフリック操作ｗ７が発生したとする。フリック操作ｗ７では、中央の領域を開始位置とし、上方向の領域を終了位置とする軌跡が検出される。情報処理装置１０は、例えば、中央の判別領域ａ３から上方向の領域に向かうフリック操作ｗ７を検出し、「あ」行に含まれる文字項目の「う」を特定する。情報処理装置１０は、２段階フリックで文字項目群の「あ」行を特定し、特定した文字項目群の中から文字項目「う」の特定を行う。特定された文字「う」は、例えば、文字入力処理に係るアプリケーションプログラム（以下、アプリとも称す）に入力文字として反映される。
【００６２】
なお、文字入力の配置Ｔｂ２では、例えば、「あ」行に含まれる文字項目の「あ」を特定する場合には、判別領域ａ３で停止させた操作指等をタッチパネルから離脱させればよい。文字入力の配置Ｔｂ２では、「あ」行に含まれる各文字は、中央の領域を含む十字方向に配置した。しかし、例えば、「あ」行の各文字は、左上方向の領域に「あ」、上方向の領域に「い」、右上方向の領域に「う」、左方向の領域に「え」、右方向の領域に「お」を配置する扇形としてもよい。少なくとも、文字入力の配置は、中央の領域で停止させたフリック操作ｗ６に継続して実行されるフリック操作の移動方向を特定できればよい。
【００６３】
上記のように、情報処理装置１０は、２段階フリックにより、文字項目群といった情報の項目群を特定し、特定した項目群から入力項目を特定できる。
【００６４】
（１段階フリック）
図３Ｅに、１段階フリックを用いた入力操作の説明図を例示する。なお、図３Ｅの文字入力の配置Ｔｂ１は、図３Ｂに例示の仮名文字入力の文字入力の配置を表す。また、Ｔｂ３は「な」行の入力と特定した後の「な」行の各段を十字方向に配置した例を表す。また、放射状の破線Ｖ１、Ｖ２は、図２Ｆに例示した８方向に分割された場合の移動方向の角度範囲であり、Ｔｂ１の文字「な」からの操作開始時の移動方向をＶ１、Ｔｂ３の文字「な」からの操作開始時の移動方向をＶ２として表す。
【００６５】
文字入力の配置Ｔｂ１で「な」行の文字入力が行われる場合には、文字「な」が配置された判別領域ａ３内に対するタッチ操作ｗ８が検出される。情報処理装置１０は、例えば、文字「な」が表示された領域への接触を検出し、ブロックＰ２に示すように、「な」行に対する文字入力操作と特定する。そして、情報処理装置１０は、判別領域ａ３内を開始位置とするフリック操作を検出し、「な」行に含まれる文字候補を特定する。
【００６６】
検出されたタップ操作ｗ８が「な」行に対する文字入力操作と特定した情報処理装置１０は、例えば、文字入力の配置をＴｂ１からＴｂ３に切り替える。図３Ｅの文字入力の配置Ｔｂ３は、例えば、「な」行の各段を十字方向に配置した入力文字の配置例である。文字入力の配置Ｔｂ３では、中央の領域に対し、上方向の領域に文字「ぬ」、下方向の領域に文字「の」、左方向の領域に文字「に」、右方向の領域に文字「ね」が配置される。なお、中央の領域には、例えば、文字「な」が配置されている。
【００６７】
タッチ操作ｗ８の検出後、継続して中央の判別領域ａ３内を開始位置とするフリック操作ｗ９が発生したとする。フリック操作ｗ９では、中央の判別領域ａ３内を開始位置とし、上方向の領域を終了位置とする軌跡が検出される。情報処理装置１０は、例えば、中央
の判別領域ａ３内から上方向の領域に向かうフリック操作ｗ９を検出し、「な」行に含まれる文字候補の「ぬ」を特定する。情報処理装置１０は、判別領域ａ３内から開始するタッチ操作で文字項目群の「な」行を特定する。そして、継続する中央の判別領域ａ３内を開始位置とするフリック操作ｗ９（１段階フリック）で、特定した文字項目群の中から文字項目「ぬ」の特定を行う。特定された文字「ぬ」は、例えば、文字入力処理に係るアプリに入力文字として反映される。
【００６８】
上記のように、情報処理装置１０では、中央の判別領域ａ３内から開始するタッチ操作により、文字項目群の中から対象となる文字候補を含む項目を特定する。そして、情報処理装置１０では、継続する中央の判別領域ａ３内を開始位置とする１段階フリックにより、対象となる文字候補（入力項目）が特定される。
【００６９】
なお、文字入力の配置Ｔｂ３の例で、「な」行に含まれる文字候補の「な」を特定する場合には、例えば、タッチ操作で中央の判別領域ａ３内に接触させた操作指等をフリック操作せずにタッチパネルから離脱させればよい。
【００７０】
文字入力の配置Ｔｂ３では、中央の領域を含む十字方向に「な」行の各文字を配置した。しかし、例えば、左上方向の領域に「な」、上方向の領域に「に」、右上方向の領域に「ぬ」、左方向の領域に「ね」、右方向の領域に「の」を配置する扇形としてもよい。この場合であっても、情報処理装置１０は、中央の領域を開始位置とした、１段階フリックによる移動方向に基づいて対象となる文字候補を特定できる。
【００７１】
また、判別領域ａ３外から判別領域ａ３外への１段階フリックでは、例えば、「濁点、半濁点、小文字」等の文字修飾、仮名文字から英文字等の文字種別の変更を行う入力モードの切り替えなどの操作として特定させることが可能である。上記の文字修飾や入力モードの変更等の１段階フリックは、次のフリック操作で特定することができる。
【００７２】
すなわち、フリック操作は、判別領域ａ３外の入力領域ａ２をフリック操作の開始位置とする。そして、フリック操作で移動させた操作指等の離脱位置は、開始位置とは異なる判別領域ａ３外の入力領域ａ２とすればよい。なお、フリック操作において、判別領域ａ３内を通過する場合には、判別領域ａ３内で停止することなく判別領域ａ３外の入力領域ａ２に移動するとすればよい。
【００７３】
以下に、上記の文字修飾や入力モードの変更等に係る１段階フリックの一例を例示する。文字修飾の対象となる文字は、直前に操作入力された文字である。
・濁点修飾：情報処理装置１０は、判別領域ａ３外の領域を１段階フリックの接触開始位置とし、右下方向に移動させて判別領域ａ３外で離脱するタッチ操作を検出する。直前に操作入力された文字が「は」の場合には、当該の１段階フリックで濁点文字「ば」に置き換えられる。
・半濁点修飾：情報処理装置１０は、判別領域ａ３外の領域を１段階フリックの接触開始位置とし、右上方向に移動させて判別領域ａ３外で離脱するタッチ操作を検出する。直前に操作入力された文字が「は」の場合には、当該の１段階フリックで半濁点文字「ぱ」に置き換えられる。
・小文字修飾：情報処理装置１０は、判別領域ａ３外の領域を１段階フリックの接触開始位置とし、下方向に移動させて判別領域ａ３外で離脱するタッチ操作を検出する。直前に操作入力された文字が「つ」の場合には、当該の１段階フリックで小文字「っ」に置き換えられる。
・文字削除：情報処理装置１０は、判別領域ａ３外の領域を１段階フリックの接触開始位置とし、左方向に移動させて判別領域ａ３外で離脱するタッチ操作を検出する。直前に操作入力された文字が削除される。
・入力モード切替：情報処理装置１０は、判別領域ａ３外の領域を１段階フリックの接触開始位置とし、右方向に移動させて判別領域ａ３外で離脱するタッチ操作を検出する。なお、入力モードは、例えば、かな漢字→英数字→かな漢字→…、等のように操作の度に順次切り替えられる。
【００７４】
図３Ｆに、１段階フリックを用いた文字の削除操作の説明図を例示する。文字の削除操作では、判別領域ａ３外から判別領域ａ３外への１段階フリックが行われる。なお、図３Ｆの文字入力の配置Ｔｂ１は、図３Ｂに例示の仮名文字入力の文字入力の配置を表す。また、放射状の破線Ｖ１は、図２Ｆに例示した８方向に分割された場合の移動方向の角度範囲であり、タッチ操作の開始時の移動方向を表す。
【００７５】
１段階フリックを用いた文字の削除操作が行われる場合には、判別領域ａ３外の領域を開始位置とするフリック操作ｗ１０が検出される。フリック操作ｗ１０は、左の方向に移動し、判別領域ａ３を通過し、判別領域ａ３外の領域で離脱する。フリック操作ｗ１０では、例えば、判別領域ａ３外の右側領域を開始位置とし、判別領域ａ３外の左側領域を離脱位置とする軌跡が検出される。情報処理装置１０は、例えば、判別領域ａ３を右側から左方向に通過する１段階フリックを検出し、直前に入力された文字項目の削除処理を行う。
【００７６】
本実施形態の情報処理装置１０は、判別領域ａ３外から判別領域ａ３内へのフリック操作に伴う移動方向に基づいて入力対象となる情報の項目群、入力項目を特定することができる。同様にして、情報処理装置１０は、判別領域ａ３内から判別領域ａ３外へのフリック操作に伴う移動方向、判別領域ａ３外から判別領域ａ３外へのフリック操作に伴う移動方向に基づいて、入力対象となる情報の項目群、入力項目を特定することができる。本実施形態の情報処理装置１０のタッチパネルは、例えば、判別領域ａ３と該判別領域ａ３の外周領域とを区分けし、移動した際の方向を特定できる座標精度があればよい。
【００７７】
図３Ｇに、本実施形態の入力インターフェースについての説明図を例示する。図３Ｇに例示のフリック操作ｗ１１、ｗ１２は、判別領域ａ３外の領域を開始位置とし、判別領域ａ３内を離脱位置とするタッチ操作であり、移動方向Ｄ１と移動方向Ｄ２は図２Ｆにおける「右下」の範囲となる。また、フリック操作ｗ１１、ｗ１２は、例えば、図３Ａに例示の、ｃ２、ｃ４から開始されるが、右下方向へ移動した後、判定領域ａ３で停止するフリック操作とする。なお、右下方向に対応する角度の範囲は基準軸Ｘｓの右方向を“０°”とすると、“２９２．５°”以上−“３３７．５°”未満である。
【００７８】
本実施形態の情報処理装置１０では、フリック操作ｗ１１、ｗ１２のそれぞれを、例えば、図３Ｂに例示の文字入力の、「あ」行に対する操作入力と特定することができる。情報処理装置１０では、接触位置の移動方向を検出するので、文字領域が狭小な場合であっても誤入力が抑制される。このため、図３Ｂに例示の文字の、文字「あ」に隣接する文字「か」、「た」が配置された領域で接触開始が発生しても、情報処理装置１０は、誤入力を抑制することができる。情報処理装置１０は、例えば、隣接する操作オブジェクトへの誤接触が発生しやすい狭小なタッチパネルでも押し間違え等を抑制できる。
【００７９】
また、例えば、フリック操作の移動速度を１００ｍｍ／ｓｅｃ以下とし、接触位置を検出するためのサンプリング周期を２０ｍｓ以内と想定する。このケースでは、例えば、４ｍｍ以上の幅があれば、少なくともフリック操作の２点の座標が検出可能となる。
【００８０】
指のデバイス面に対する接触面積を直径７ｍｍと想定すると、判別領域ａ３は、直径７ｍｍの接触面を含めることで、判別領域内からのフリック操作による移動を検出することが可能となる。一例として、直径７ｍｍの接触面積の部分を内包でき、フリック操作の移
動検出が可能な７ｍｍ×７ｍｍの矩形領域を判別領域ａ３とする。なお、指などの接触面は一般に楕円形をしており、タッチパネルはその中心点を座標として検出する。
【００８１】
図３Ｈに、７ｍｍ×７ｍｍの矩形領域を判別領域ａ３とした場合の説明図を例示する。なお、図３Ｈは、タッチパネル領域ａ１、入力領域ａ２、判別領域ａ３の形状をそれぞれ矩形状とした場合の例である。また、図３Ｈは、タッチパネル領域ａ１、入力領域ａ２、判別領域ａ３のそれぞれの中心位置を共通にして同心状に設定された場合の一例である。
【００８２】
図３Ｈに例示のように、７ｍｍ×７ｍｍの矩形領域を判別領域ａ３として、判別領域ａ３と入力領域ａ２の外周の間隔は、最短で４ｍｍの幅とする。タッチパネル領域ａ１と入力領域ａ２が一致する場合、タッチパネル領域ａ１のサイズは、例えば、１５ｍｍ×１５ｍｍ以上であればよい。このため、例えば、腕時計程度の狭小なタッチパネル領域ａ１であっても、フリック操作ｗ１３、タップ操作ｗ１４等の指を用いたタッチ操作で情報入力を行うことが可能となる。タッチパネルに重畳した表示デバイスが表示する情報は、操作する指に隠れて見難くなるが、入力領域ａ２の範囲を目視により確認することで、判別領域ａ３の位置を推定できる為、移動方向を伴うフリック操作、定点タッチ等による操作入力は可能である。
【００８３】
また、本実施形態の情報処理装置１０では、従来の１０キー配列といった入力インターフェースに対し、８方向＋１（中央タッチ）の判別で操作入力が可能となる。このため、１０キー配列の操作オブジェクトを表示し、トグル方式で入力項目を決定する場合と比べ短い操作手順での入力が可能となる。本実施形態の情報処理装置１０は、狭小なタッチパネルを用いた指操作による情報入力の操作性を向上することができる。
【００８４】
〔装置構成〕
図１に戻り、本実施形態の情報処理装置１０は、接続バスＢ１によって相互に接続されたＣＰＵ（Central Processing Unit）１１、主記憶部１２、補助記憶部１３、入力部１
４、出力部１５、通信部１６を有する。なお、図１は、パーソナルコンピュータといった情報処理装置の一般的なハードウェアの構成例である。主記憶部１２及び補助記憶部１３は、情報処理装置１０が読み取り可能な記録媒体である。
【００８５】
情報処理装置１０は、ＣＰＵ１１が補助記憶部１３に記憶されたプログラムを主記憶部１２の作業領域に実行可能に展開し、プログラムの実行を通じて周辺機器の制御を行う。これにより、情報処理装置１０は、上述した所定の目的に合致した機能を実現することができる。
【００８６】
図１に例示の情報処理装置１０において、ＣＰＵ１１は、情報処理装置１０全体の制御を行う中央処理演算装置である。ＣＰＵ１１は、補助記憶部１３に格納されたプログラムに従って処理を行う。主記憶部１２は、ＣＰＵ１１がプログラムやデータをキャッシュしたり、作業領域を展開したりする記憶媒体である。主記憶部１２は、例えば、ＲＡＭ（Random Access Memory）やＲＯＭ（Read Only Memory）を含む。
【００８７】
補助記憶部１３は、各種のプログラム及び各種のデータを読み書き自在に記録媒体に格納する。補助記憶部１３は、外部記憶装置とも呼ばれる。補助記憶部１３には、ＯＳ、各種プログラム、各種テーブル等が格納される。ＯＳは、例えば、搭載されたアプリに対し、管理するリソースへのインターフェースをアプリに提供する。
【００８８】
情報処理装置１０に搭載されたアプリは、ＯＳによって提供されたリソースへのインターフェースを使用することで、アプリ機能を実現する。ＯＳは、通信部１６を介して接続される外部装置等とのデータの受け渡しを行う通信インターフェースプログラムを含む。
外部装置等には、例えば、図示しないネットワーク上の、ＰＣやサーバ等の他の情報処理装置、外部記憶装置等が含まれる。
【００８９】
補助記憶部１３は、例えば、ＥＰＲＯＭ（Erasable Programmable ROM）、ソリッドス
テートドライブ装置、ハードディスクドライブ（ＨＤＤ、Hard Disk Drive）装置等であ
る。また、補助記憶部１３としては、例えば、ＣＤドライブ装置、ＤＶＤドライブ装置、ＢＤドライブ装置等が提示できる。記録媒体としては、例えば、不揮発性半導体メモリ（フラッシュメモリ）を含むシリコンディスク、ハードディスク、ＣＤ、ＤＶＤ、ＢＤ、ＵＳＢ（Universal Serial Bus）メモリ、メモリカード等がある。
【００９０】
入力部１４は、ユーザ等からの操作指示等を受け付ける。入力部１４は、カメラ、入力ボタン、タッチセンサ１４ａ、ポインティングデバイス、マイクロフォン等の入力デバイスである。入力部１４には、キーボード、ワイヤレスリモコン等が含まれるとしてもよい。ポインティングデバイスには、例えば、タッチセンサ１４ａ（タッチパネル）マウス、トラックボール、ジョイスティック等が含まれる。入力部１４から入力された情報は、接続バスＢ１を介してＣＰＵ１１に通知される。例えば、ポインティングデバイスで検出した座標情報は、接続バスＢ１を介してＣＰＵ１１に通知される。
【００９１】
出力部１５は、ＣＰＵ１１で処理されるデータや主記憶部１２に記憶されるデータを出力する。出力部１５は、ＬＣＤ１５ａ、ＣＲＴ（Cathode Ray Tube）ディスプレイ、ＰＤＰ（Plasma Display Panel）、ＥＬ（Electroluminescence）パネル、有機ＥＬパネル等
の表示デバイスを含む。また、出力部１５には、プリンタ、スピーカ等の出力デバイスが含まれる。
【００９２】
通信部１６は、例えば、情報処理装置１０が接続するネットワーク等とのインターフェースである。ネットワークには、例えば、インターネット等の公衆ネットワーク、携帯電話網等の無線ネットワーク、ＬＡＮ（Local Area Network）、ＵＳＢ（Universal Serial
Bus）等が含まれる。
【００９３】
〔コンピュータプログラム構成〕
図４に、情報処理装置１０のコンピュータプログラムの構成を例示する。情報処理装置１０の中央処理演算装置（ＣＰＵ１１）は、コンピュータプログラムにより本実施形態の処理を実行する。以下、中央処理演算装置（ＣＰＵ１１）が、図４の各プログラムにより処理を実行することを、単に、プログラムが処理を実行するともいう。
【００９４】
図４に例示のように、情報処理装置１０のコンピュータプログラムは、例えば、アプリ（application）を実行する階層ｅ１、ＯＳのフレームワーク（framework）として機能する階層ｅ２、ＯＳのカーネル（kernel）として機能する階層ｅ３を含む。階層ｅ１のアプリ（Ａ）２０ａ、アプリ（Ｂ）２０ｂ、アプリ２０ｃは、例えば、情報処理装置１０に搭載された文字入力アプリ、表計算アプリ、ブラウザアプリ等である。各アプリは、ＯＳによって提供されたリソースへのインターフェースを使用することで、それぞれのアプリ機能を提供する。
【００９５】
階層ｅ２は、各アプリと階層ｅ３のカーネルとの間のインターフェースとして機能するＯＳ領域である。階層ｅ２は、例えば、各アプリで使用されるＡＰＩ（Application Programming Interface）、汎用ライブラリ等を含む。階層ｅ２には、アプリ入力補助２１、
入力判定２２が含まれる。
【００９６】
アプリ入力補助２１は、例えば、入力判定２２で判定された入力文字等の情報をアプリに引き渡す。入力判定２２は、例えば、入力領域ａ２等で検出されたタッチ操作の接触位
置、離脱位置等に基づいてタッチ操作の種類、移動方向等を判定する。そして、入力判定２２は、例えば、判定された上記項目に基づいて対応する入力文字等の情報を特定する。入力判定２２により特定された情報はアプリ入力補助２１に引き渡される。
【００９７】
階層ｅ３は、例えば、情報処理装置１０のリソースを管理するＯＳ領域である。階層ｅ３により、階層ｅ２を介して通知された情報に基づいて、リソースに対するプロセス管理、メモリ管理、デバイス管理等が行われる。情報処理装置１０では、階層ｅ３の機能により、アプリの実行に伴う各種デバイスへの入出力、メモリへのデータの読み書き各種プロセスの実行や停止等を行うことができる。
【００９８】
階層ｅ３は、例えば、ＲＡＭ管理部２３、タイマ制御２４、入力制御２５、表示制御２６、FileSystem２７、電源制御２８、タッチセンサ制御２９、ＬＣＤ制御３０、補助記憶部制御３１を含む。ＲＡＭ管理部２３は、例えば、文字入力処理に伴う主記憶部１２へのデータの格納、格納されたデータの読み出し等を行う。タイマ制御２４は、例えば、文字入力処理に伴う時間計測のタイマを制御する。
【００９９】
入力制御２５は、例えば、文字入力処理に伴う、入力部１４の入力デバイス介して入力された入力データの制御を行う。表示制御２６は、例えば、文字入力処理で特定された入力文字、文字入力処理に伴う表示制御を行う。FileSystem２７は、例えば、補助記憶部１３の各種データファイルを管理する。電源制御２８は、例えば、情報処理装置１０のバッテリ等の電源の管理制御を行う。タッチセンサ制御２９は、例えば、文字入力処理に伴うタッチセンサ１４ａの制御を行う。ＬＣＤ制御３０は、例えば、ＬＣＤ１５ａ等に表示される表示データの表示制御を行う。補助記憶部制御３１は、例えば、文字入力処理に伴う、補助記憶部１３のデータの格納、格納されたデータの読み出しを行う。
【０１００】
〔タイムチャート〕
図５に、文字入力処理に係るタイムチャートを例示する。図５に例示のタイムチャートでは左右方向は時間軸を表し、上下方向は図４に例示の各コンピュータプログラムの項目を表す。図５の例では、アプリ２０ａ、アプリ入力補助２１、入力判定２２、入力制御２５、タッチセンサ制御２９の各コンピュータプログラムが含まれる。なお、情報処理装置１０では、例えば、情報処理装置１０の電源投入と共に、タッチセンサ１４ａで検出された物理量の変化に伴う座標が一定周期でタッチセンサ制御２９に通知されている。タッチセンサ制御２９は、タッチセンサ１４ａから通知された座標を入力制御２５に引き渡す。
【０１０１】
図５に例示のタイムチャートにおいて、文字入力処理の開始ｆ１は、例えば、アプリ２０ａの起動のときが例示できる。アプリ入力補助２１、入力判定２２は、アプリ２０ａの起動後に実行されるプログラムからの読み出し要求等に基づいて、上記の処理を実行する。アプリ入力補助２１、入力判定２２は、アプリ２０ａの終了ｆ４のときまで継続される。
【０１０２】
図５に例示のタイムチャートにおいて、例えば、入力判定２２で特定された入力文字は、アプリ入力補助２１を介し、アプリ２０ａに通知される（ｆ２、ｆ３）。アプリ２０ａに通知された入力文字は、入力文字を表示する表示領域に表示される。
【０１０３】
入力判定２２は、例えば、文字入力処理の開始ｆ１から終了ｆ４に至るまでの期間の、タッチ操作についての座標を入力制御２５を介して受け付ける。受け付けた座標は、例えば、主記憶部１２の所定の領域に時系列順に一時的に記憶される。受け付けた座標の記憶は、例えば、階層ｅ３のＲＡＭ管理部２４等を介して行われる。
【０１０４】
また、入力判定２２は、例えば、入力領域ａ２に発生した操作指による接触（ｇ２）を
検出した入力制御２５からの通知（ｆ１０）により、入力文字判定処理を開始する。入力判定２２は、例えば、入力領域ａ２で発生した接触位置の時系列データ（ｆ１０〜ｆ１４、ｆ１５〜ｆ１６）から、フリック操作に伴う移動を検出する。入力判定２２は、例えば、接触位置の時系列データ（ｆ１０〜ｆ１２）に基づく軌跡からタッチ操作（ｇ２〜ｇ４）が、判別領域ａ３外の周辺領域から判別領域ａ３内に向かうフリック操作であることを検出する（ｆ５）。
【０１０５】
入力判定２２は、例えば、フリック操作の移動方向に基づいて入力文字の属する文字項目の特定を行う（ｆ５）。
【０１０６】
入力判定２２は、例えば、文字項目の特定後、継続するフリック操作の移動を検出する。入力判定２２は、例えば、接触位置の時系列データ（ｆ１２〜ｆ１４）に基づく軌跡から継続するタッチ操作（ｇ４〜ｇ６）が、判別領域ａ３内から判別領域ａ３外の周辺領域に向かうフリック操作であることを検出する（ｆ６）。また、入力判定２２は、フリック操作による接触の開始位置と離脱位置から、移動方向を特定する。
【０１０７】
入力判定２２は、例えば、フリック操作の移動方向に基づいて入力文字の特定を行い、特定した入力文字をアプリ入力補助２１に通知する（ｆ７）。入力判定２２における入力文字、および、入力文字が属する項目を特定する入力文字判定処理は、文字単位で終了する。特定された入力文字は、文字単位の入力文字判定処理の終了と共に、アプリ入力補助２１を介してアプリ２０ａに通知される（ｆ２）。アプリ２０ａに通知された入力文字は、例えば、入力文字を表示する表示領域に表示される。
【０１０８】
以上の文字入力処理は、例えば、アプリ２０ａの終了のとき（ｆ４）まで、入力領域ａ２に発生したタッチ操作に対して繰り返される。例えば、入力判定２２は、前述のフリック操作の後に発生した判別領域ａ３内に対するタッチ操作（ｇ７〜ｇ８）の、接触位置の時系列データ（ｆ８−ｆ９）に基づいて、文字入力処理を行う。入力判定２２は、例えば、時系列データ（ｆ８−ｆ９）から定点タッチを検出し（ｆ８）、入力文字（ｆ９）を特定し、特定した入力文字をアプリ入力補助２１を介してアプリ２０ａに通知する（ｆ３）。
【０１０９】
なお、入力判定２２では、接触位置を示す座標の時系列データの変化量（移動量）が所定の閾値（例えば、１ｍｍ以内）より小さい範囲で、一定時間（例えば、０．１秒）以上に停留する場合には、停止として判断する。また、文字項目の特定、および、文字項目に属する文字の特定は、アプリ入力補助２１で行うとしてもよい。アプリ入力補助２１で文字項目、入力文字の特定が行われる場合には、入力判定２２は、判別領域ａ３を用いたタッチ操作の種類、移動方向等をアプリ入力補助２１に通知するとすればよい。
【０１１０】
〔処理フロー〕
以下、図６に例示のフローチャートを参照し、本実施形態の情報処理装置１０における文字入力処理を説明する。情報処理装置１０は、例えば、主記憶部１２に実行可能に展開されたコンピュータプログラムにより、図６に例示の文字入力処理を実行する。
【０１１１】
図６に例示のフローチャートにおいて、文字入力処理の開始は、例えば、情報処理装置１０に搭載された文字入力処理に係るアプリ２０ａの起動のときが例示できる。情報処理装置１０は、例えば、アプリ２０ａの起動後にアプリ入力補助２１を起動し、引き続いて入力判定２２を起動する。入力判定２２は入力制御２５から、タッチセンサ１４ａを介して検出されたタッチパネルの入力情報（座標情報、接触状態）を受け付ける（Ｓ１）。
【０１１２】
情報処理装置１０は、例えば、Ｓ１の処理で受け付けた入力情報に基づいて、入力領域
ａ２に発生した接触操作の開始を検出する（Ｓ２）。情報処理装置１０は、例えば、Ｓ１の処理で取得した座標情報、接触状態情報と、現在の時刻情報をＳ４の処理に引き渡す。なお、情報処理装置１０では、例えば、入力領域ａ２に発生した接触操作の開始を契機として入力文字判定処理が実行される（Ｓ３）。
【０１１３】
なお、Ｓ３−Ｓ３３の処理で実行される入力文字判定処理については、例えば、文字入力モードは、初回は“かな漢字”とすることができる。２回目以降は、前回の入力文字判定処理の終了時の文字入力モードを引き継ぐとしてもよい。
【０１１４】
Ｓ４の処理では、情報処理装置１０は、入力領域ａ２で発生したタッチ操作を判定するための初期設定を行う。例えば、情報処理装置１０は、座標を記録する変数の前座標（ｘ，ｙ）にＳ２の処理から引き渡された座標（開始座標）を設定する。また、情報処理装置１０は、経過時間を算出する為の変数の前時間“ｔ”にＳ２の処理から引き渡された開始時間を設定する。
【０１１５】
また、Ｓ４の処理では、情報処理装置１０は、初期設定として、例えば、移動方向を記録する変数の移動方向記録“Ｖ[１]”と移動方向記録“Ｖ[２]”に、例えば、“なし”を設定する。移動方向記録“Ｖ[１]”は、２段階フリックの１段目のフリック方向か、若しくは１段階フリックのフリック方向が記録される。同様にして、移動方向記録“Ｖ[２]”は、２段階フリックの２段目のフリック方向が記録される。なお、各フリック方向の記録は、Ｓ１７，Ｓ１８の処理で行われる。
【０１１６】
さらに、Ｓ４の処理では、情報処理装置１０は、初期設定として、例えば、移動方向フラグ“Ｍ”、停止フラグ“Ｓ”の値を０とする。ここで、移動方向フラグ“Ｍ”は、処理中のフリック操作についての移動方向を、移動方向記録“Ｖ[１]”と移動方向記録“Ｖ[
２]”のどちらに記録するかを示す変数であり、“Ｖ[Ｍ]”のように添え字に使用される
変数である。Ｍ＝０の場合は、移動方向記録には何も記録されていない状態を表す。また、Ｍ＝１の場合は、移動方向記録“Ｖ[１]”に２段階フリックの１段目か、若しくは１段階フリックの移動方向が記録されている状態を表す。同様にして、Ｍ＝２の場合は、移動方向記録“Ｖ[２]”に２段階フリックの２段目の移動方向が記録されている状態を表す。
【０１１７】
また、停止フラグ“Ｓ”は、２段階フリックの１段目のフリックが開始されてから停止が発生したか否かを記録する変数である。Ｓ＝０の状態はフリックが開始されてから停止が発生していないことを表し、Ｓ＝１はフリックが開始されてから停止が発生したことを表す。
【０１１８】
Ｓ５の処理では、例えば、情報処理装置１０は、タッチ操作の開始座標を変数“Ｂ”に記録する。情報処理装置１０は、例えば、変数“Ｂ”に記録された開始座標の座標値に基づいて、タッチ操作の開始位置が判別領域ａ３の内側領域あるいは外側領域であるかを判断する。なお、Ｓ５の処理において、情報処理装置１０は、判別領域ａ３の内側領域あるいは外側領域であるかを判定し、変数“Ｂ”に記録するとしてもよい。例えば、情報処理装置１０は、判別領域ａ３の内側領域である場合にはＢ＝０、判別領域ａ３の外側領域である場合にはＢ＝１といった２値の状態値をフラグ値として変数Ｂに記録することが例示できる。
【０１１９】
Ｓ６の処理では、情報処理装置１０は、例えば、２０ｍｓ等の一定周期でサンプリングされた座標情報や接触状態をタッチセンサ１４ａから読み取った入力制御２５からの情報（座標情報、接触状態）の通知待ちを行う。そして、情報処理装置１０は、Ｓ２の処理で検出されたタッチ操作が継続しているかを判定する（Ｓ７）。
【０１２０】
情報処理装置１０は、例えば、入力制御２５から接触中であることを示す情報が通知された場合には（Ｓ７，ｙｅｓ）、Ｓ８の処理に移行する。また、情報処理装置１０は、例えば、入力制御２５から接触中ではないことを示す情報が通知された場合には（Ｓ７，Ｎｏ）、Ｓ２１の処理に移行する。Ｓ２１−Ｓ３３の処理では、タッチ操作の種類、フリック操作の移動方向等に基づいて、入力文字の特定、文字入力モードの切り替え等が行われる。
【０１２１】
Ｓ８の処理では、情報処理装置１０は、例えば、Ｓ６の処理で通知された入力制御２５からの情報（座標情報）と現在の時刻情報を取得する。そして、情報処理装置１０は、例えば、取得した座標情報を、現在の接触位置を示す変数の座標（Ｘ，Ｙ）に記録する。また、情報処理装置１０は、例えば、取得した時刻情報を現在の時刻を示す変数である時間“Ｔ”に記録する。
【０１２２】
Ｓ９の処理では、情報処理装置１０は、Ｓ８の処理で取得した現在の座標（Ｘ，Ｙ）とＳ４の処理で設定した前座標（ｘ，ｙ）との差分値に基づいて、タッチ操作の移動の有無を判定する。移動の有無は、例えば、各座標成分の差分値が所定の閾値距離を超えることにより判定する。ここで、所定の閾値距離とは、定点タッチ、フリック操作を識別するための閾値である。例えば、定点タッチ操作とフリック操作を判別する閾値距離を仮決めしておき、移動を伴うフリック操作、定点タッチ操作などをユーザに試行させるなどして、各操作の検出率などを計測する。そして、計測された各操作の検出率などに基づいて、定点タッチ操作とフリック操作を判別する閾値距離を調整するようにしてもよい。
【０１２３】
Ｓ９の処理では、情報処理装置１０は、例えば、Ｓ８の処理で取得した現在の座標（Ｘ，Ｙ）とＳ４の処理で設定した前座標（ｘ，ｙ）とが、次に示す関係にあることを判定する。すなわち、情報処理装置１０は、“｜Ｘ−ｘ｜＞閾値距離”であること、或いは、“｜Ｙ−ｙ｜＞閾値距離”であることを判定する。情報処理装置１０は、例えば、“｜Ｘ−ｘ｜＞閾値距離”、或いは、“｜Ｙ−ｙ｜＞閾値距離”である場合には（Ｓ９，Ｙｅｓ）、Ｓ１０の処理に移行する。Ｓ１０の処理では、移動がなされたとして前時間“ｔ”を現在の時刻“Ｔ”の値に更新する。
【０１２４】
一方、情報処理装置１０は、例えば、“｜Ｘ−ｘ｜＞閾値距離”、或いは、“｜Ｙ−ｙ｜＞閾値距離”の条件を満たせない場合には（Ｓ９，Ｎｏ）、Ｓ１９の処理に移行する。Ｓ１９−Ｓ２０の処理では、例えば、フリック操作の停止、或いは、定点タッチ等の移動を伴わないタッチ操作が特定される。
【０１２５】
Ｓ１１の処理では、情報処理装置１０は、例えば、Ｓ８の処理で取得した現在の座標（Ｘ，Ｙ）の値およびＳ４の処理で設定した前座標（ｘ，ｙ）の値に基づいて、フリック操作に伴う移動方向“ｍ”を算出する。移動方向“ｍ”は、例えば、逆三角関数“ａｔａｎ”を用いて算出された角度から決定する。情報処理装置１０は、例えば、以下の数式（１）にて移動の角度を算出する。
【０１２６】
ａｔａｎ（（Ｙ−ｙ）／（Ｘ−ｘ））    …数式（１）
なお、数式（１）により算出される移動の角度は、例えば、Ｘ軸の正方向（右方向）を“０°”として左回転方向に対する角度（°）として求められる。情報処理装置１０は、例えば、数式（１）により算出された角度（°）を基に移動方向を決定し移動方向を表す移動方向“ｍ”に記録する。
【０１２７】
数式（１）により算出された値が、例えば、“３３７．５”以上“２２．５”未満の場合を“右”として移動方向を決定する。同様に、“２２．５”以上“６７．５”未満を“右上”、“６７．５”以上“１１２．５”未満を“上”、“１１２．５”以上“１５７．
５”未満を“左上”、“１５７．５”以上“２０２．５”未満を“左”として移動方向を決定する。また、例えば、“２０２．５”以上“２４７．５”未満を“左下”、“２４７．５”以上“２９２．５”未満を“下”、“２９２．５”以上“３３７．５”未満を“右下”として移動方向を決定する。決定した移動方向は、移動方向“ｍ”に記録される。
【０１２８】
Ｓ１２の処理では、情報処理装置１０は、例えば、移動方向記録に記録が存在することを判定する。移動方向記録に記録が存在することの判定は、移動方向フラグ“Ｍ”の値に基づいて判定される。情報処理装置１０は、例えば、移動方向フラグ“Ｍ”の値が０よりも大きい値の場合は（Ｓ１２，Ｙｅｓ）、Ｓ１３の処理に移行する。一方、情報処理装置１０は、例えば、移動方向フラグ“Ｍ”が０の場合は（Ｓ１２，Ｎｏ）、Ｓ１６の処理に移行する。
【０１２９】
Ｓ１３の処理では、情報処理装置１０は、例えば、現在処理中のフリック操作の移動方向を記録する移動方向記録“Ｖ[Ｍ]”が継続中のフリック操作の移動方向を記録している状態であることを判定する。すなわち、情報処理装置１０は、例えば、移動方向記録“Ｖ[Ｍ]”に記録された値が、初期に設定した“なし”の値である場合は（Ｓ１３，Ｎｏ）、Ｓ１６の処理に移行する。一方、情報処理装置１０は、例えば、移動方向記録“Ｖ[Ｍ]”に記録された値が、初期設定値である“なし”以外の場合には（Ｓ１３，Ｙｅｓ）、Ｓ１４の処理に移行する。
【０１３０】
Ｓ１４の処理では、情報処理装置１０は、例えば、Ｓ１１の処理で算出された移動方向“ｍ”に基づいて、入力領域ａ２に発生したフリック操作の有効性を判定する。すなわち、情報処理装置１０は、継続中のフリック操作の移動方向を記録する移動方向記録“Ｖ[
Ｍ]”に記録された値が、Ｓ１１の処理で算出された移動方向“ｍ”の値と異なる場合に
は（Ｓ１４，Ｙｅｓ）、Ｓ１５の処理に移行する。Ｓ１５の処理では、Ｓ３から開始された入力文字判定の処理をキャンセルし、当該入力文字判定処理を終了する。例えば、入力領域ａ２に接触させた操作指等が、停止せずに移動方向が変化するといった誤操作が想定される。情報処理装置１０は、Ｓ１２、“Ｙｅｓ”−Ｓ１４の処理を行うことにより、上記の誤操作による入力をキャンセルすることができる。
【０１３１】
一方、情報処理装置１０は、継続中のフリック操作の移動方向を記録する移動方向記録“Ｖ[Ｍ]”に記録された値がＳ１１の処理で算出された移動方向“ｍ”の値である場合には（Ｓ１４，Ｎｏ）、Ｓ１６の処理に移行する。Ｓ１６の処理では、情報処理装置１０は、例えば、停止フラグ“Ｓ”に記録されたフラグ値が“１”であるかを判定する。
【０１３２】
情報処理装置１０は、例えば、停止フラグ“Ｓ”に記録されたフラグ値が“１”である場合には（Ｓ１６，Ｙｅｓ）、Ｓ１７の処理に移行する。Ｓ１７の処理では、２段階フリックの２段目の移動方向が記録される。情報処理装置１０は、例えば、移動方向フラグ“Ｍ”に“２”を記録し、Ｓ１１で算出した移動方向“ｍ”を移動方向記録“Ｖ[Ｍ]”に記録する。Ｓ１７の処理により、移動方向記録“Ｖ[Ｍ]”には、２段階フリックの２段目の移動方向“ｍ”が“Ｖ[２]＝ｍ”として記録される。情報処理装置１０は、Ｓ１７の処理の実行後、Ｓ６の処理に移行する。
【０１３３】
一方、情報処理装置１０は、例えば、停止フラグ“Ｓ”に記録されたフラグ値が“１”でない場合には（Ｓ１６，Ｎｏ）、Ｓ１８の処理に移行する。Ｓ１８の処理では、１段階フリック、或いは、２段階フリックの１段目の移動方向が記録される。情報処理装置１０は、例えば、移動方向フラグ“Ｍ”に“１”を記録する。また、情報処理装置１０は、Ｓ１１で算出した移動方向“ｍ”を移動方向記録“Ｖ[Ｍ]”に記録する。Ｓ１８の処理により、移動方向記録“Ｖ[Ｍ]”には、１段階フリック、或いは、２段階フリックの１段目の移動方向“ｍ”が“Ｖ[１]＝ｍ”として記録される。情報処理装置１０は、Ｓ１８の処理
の実行後、Ｓ６の処理に移行する。
【０１３４】
Ｓ１９の処理では、移動に係る経過時間、及び、停止フラグ“Ｓ”、移動方向フラグ“Ｍ”に記録された各状態値に基づいて、フリック操作の停止、或いは、定点タッチ等の移動を伴わないタッチ操作が特定される。
【０１３５】
情報処理装置１０は、例えば、Ｓ８の処理で取得した現在の時間“Ｔ”に記録された時刻情報とＳ４の処理で設定された、或いはＳ１０で更新された前時間“ｔ”との差分値（Ｔ−ｔ）に基づいてタッチ操作の移動に係る経過時間を算出する。そして、情報処理装置１０は、算出された差分値（Ｔ−ｔ）が所定の閾値時間を超えることを、フリック操作の停止、或いは、定点タッチ等の移動を伴わないタッチ操作を特定するための時間条件とする。
【０１３６】
なお、所定の閾値時間とは、定点タッチ、フリック操作を識別するための閾値である。閾値時間は、例えば、定点タッチ操作とフリック操作を判別する閾値時間を仮決めしておき、移動を伴うフリック操作、定点タッチ操作などをユーザに試行させるなどして、各操作の検出率などに基づいて、定点タッチ操作とフリック操作を判別する閾値時間を調整するようにしてもよい。
【０１３７】
情報処理装置１０は、例えば、上記時間条件と、停止フラグ“Ｓ”、移動方向フラグ“Ｍ”に記録された各状態値が、次に示す関係にあることを判定する。すなわち、情報処理装置１０は、“（Ｔ−ｔ）＞閾値時間”であり、且つ、停止フラグ“Ｓ”に記録されたフラグ値が“０”、移動方向フラグ“Ｍ”が“＞０”であることを判定する。
【０１３８】
情報処理装置１０は、例えば、“（Ｔ−ｔ）＞閾値時間”であり、且つ、停止フラグ“Ｓ”が“０”、移動方向フラグ“Ｍ”が“＞０”である場合には（Ｓ１９，Ｙｅｓ）、Ｓ２０の処理に移行する。Ｓ２０の処理では、例えば、情報処理装置１０は、停止フラグ“Ｓ”に停止が発生したことを示す“１”を記録する。また、Ｓ４の処理で設定した前座標（ｘ、ｙ）にＳ８の処理で取得した座標値（Ｘ，Ｙ）を記録する。Ｓ２０の処理により、Ｓ４の処理で設定された前座標（ｘ，ｙ）の座標値は、Ｓ８の処理で取得した座標値（Ｘ，Ｙ）に更新される。情報処理装置１０は、Ｓ２０の処理の実行後、Ｓ６の処理に移行する。
【０１３９】
一方、情報処理装置１０は、例えば、“（Ｔ−ｔ）＞閾値時間”であり、且つ、停止フラグ“Ｓ”が“０”、移動方向フラグ“Ｍ”が“＞０”の条件を満たさない場合には（Ｓ１９，Ｎｏ）、Ｓ６の処理に移行する。入力領域ａ２に発生したタッチ操作の接触状態は、例えば、継続中と判断できる。
【０１４０】
Ｓ２１の処理では、例えば、情報処理装置１０は、タッチ操作の終了座標を変数Ｅに記録する。情報処理装置１０は、例えば、変数Ｅに記録された終了座標の座標値に基づいて、タッチ操作の終了位置が判別領域ａ３の内側領域あるいは外側領域であるかを判断する。なお、Ｓ２１の処理において、情報処理装置１０は、判別領域ａ３の内側領域あるいは外側領域であるかを判定し、変数Ｅに記録するとしてもよい。例えば、情報処理装置１０は、判別領域ａ３の内側領域である場合には“０”、判別領域ａ３の外側領域である場合には“１”といった２値の状態値をフラグ値として変数Ｅに記録することが例示できる。
【０１４１】
なお、図６のフローチャートに例示のＳ２２、Ｓ２７、Ｓ２９の判定処理は、変数Ｂ、Ｅに座標値が記録された場合の処理例である。変数Ｂ、Ｅに判別領域ａ３の内側、或いは外側領域を表すフラグ値が記録されている場合には、それぞれの変数に記録されたフラグ値の比較を行うとすればよい。例えば、変数Ｂにフラグ値“１”、変数Ｅにフラグ値“０
”が記録されている場合には、情報処理装置１０は、各フラグ値の比較を行うことにより、判別領域ａ３の外側領域から内側領域方向に移動するフリック操作であると判別できる。同様にして、情報処理装置１０は、例えば、変数Ｂにフラグ値“０”、変数Ｅにフラグ値“１”が記録されている場合には、判別領域ａ３の内側領域から外側領域方向に移動するフリック操作であると判別できる。
【０１４２】
Ｓ２２−Ｓ３３処理では、Ｓ５およびＳ２１の処理で記録された座標値、停止フラグ“Ｓ”に記録されたフラグ値、移動方向フラグ“Ｍ”、移動方向記録“Ｖ[１]”、移動方向記録“Ｖ[２]”に記録された移動方向に基づいて、タッチ操作の種類、フリック操作の移動方向等が判定される。そして、Ｓ２２−Ｓ３３処理で判定されたタッチ操作の種類、フリック操作の移動方向等に基づいて、入力文字の特定、文字入力モードの切り替え等が行われる。
【０１４３】
Ｓ２２の処理では、情報処理装置１０は、例えば、変数“Ｂ”および変数“Ｅ”に記録された座標値に基づいて、タッチ操作の開始座標が判別領域ａ３の外側領域であり、且つ、タッチ操作の終了座標が判別領域ａ３の内側領域であるかを判定する。情報処理装置１０は、例えば、開始座標が判別領域ａ３の外側領域であり、且つ、終了座標が判別領域ａ３の内側領域である場合には（Ｓ２２，Ｙｅｓ）、Ｓ２３の処理に移行する。一方、情報処理装置１０は、例えば、開始座標が判別領域ａ３の外側領域であり、且つ、終了座標が判別領域ａ３の内側領域である条件を満たさない場合には（Ｓ２２，Ｎｏ）、Ｓ２７の処理に移行する。
【０１４４】
Ｓ２３の処理では、情報処理装置１０は、例えば、停止フラグ“Ｓ”に記録されたフラグ値が“１”であるかを判定する。停止フラグ“Ｓ”に記録されたフラグ値が“１”である場合には、例えば、処理対象のタッチ操作の種類は、停止状態を経由した２段階フリックであると判断できる。
【０１４５】
情報処理装置１０は、例えば、停止フラグ“Ｓ”に記録されたフラグ値が“１”でない場合には（Ｓ２３，Ｎｏ）、Ｓ２６の処理に移行する。一方、情報処理装置１０は、例えば、停止フラグ“Ｓ”に記録されたフラグ値が“１”である場合には（Ｓ２３，Ｙｅｓ）、Ｓ２４の処理に移行する。Ｓ２４−Ｓ２６の処理では、２段階フリックに関連付けられた１段目、２段目のフリック操作、及び、各フリック操作の移動方向が特定される。
【０１４６】
Ｓ２４の処理では、情報処理装置１０は、例えば、移動方向フラグ“Ｍ”に記録されたフラグ値が“２”であるかを判定する。移動方向フラグ“Ｍ”に記録されたフラグ値が“２”の場合には、例えば、処理対象のフリック操作は、停止状態を経由した２段階フリックの２段目の移動があると判断できる。また、移動方向フラグ“Ｍ”に記録されたフラグ値が“１”の場合には、例えば、処理対象のフリック操作は、２段階フリックの停止状態となる１段目で終えていると判断できる。
【０１４７】
情報処理装置１０は、例えば、移動方向フラグ“Ｍ”に記録されたフラグ値が“２”の場合には（Ｓ２４，Ｙｅｓ）、Ｓ２５の処理に移行する。Ｓ２５の処理では、情報処理装置１０は、例えば、移動方向記録“Ｖ[１]”、移動方向記録“Ｖ[２]”に記録された移動方向を示す値を取得する。情報処理装置１０は、例えば、移動方向記録“Ｖ[１]”に記録された移動方向値を２段階フリックの１段目であるメイン種別として取得する。また、情報処理装置１０は、例えば、移動方向記録“Ｖ[２]”に記録された移動方向値を２段階フリックの２段目であるサブ種別として取得する。情報処理装置１０は、例えば、取得したそれぞれの移動方向値を主記憶部１２の所定の領域に一時的に記憶し、Ｓ３２の処理に引き渡す。
【０１４８】
一方、情報処理装置１０は、例えば、移動方向フラグ“Ｍ”に記録された値が“２”以外の場合には（Ｓ２４，Ｎｏ）、Ｓ２６の処理に移行する。Ｓ２６の処理では、情報処理装置１０は、例えば、移動方向記録“Ｖ[１]”に記録された移動方向を示す移動方向値を取得する。情報処理装置１０は、例えば、移動方向記録“Ｖ[１]”に記録された移動方向値を２段階フリックの１段目であるメイン種別として取得する。情報処理装置１０は、例えば、取得した“Ｖ[１]”の移動方向値を主記憶部１２の所定の領域に一時的に記憶する。また、情報処理装置１０は、２段階フリックの２段目であるサブ種別には、中央の判別領域ａ３内でタッチ操作が終了したことを示す移動方向値（例えば、“中央”）を主記憶部１２の所定の領域に一時的に記憶する。情報処理装置１０は、取得した“Ｖ[１]”の移動方向値のメイン種別、中央の判別領域ａ３内でタッチ操作が終了したことを示す移動方向値が記録されたサブ種別をＳ３２の処理に引き渡す。
【０１４９】
Ｓ２７の処理では、情報処理装置１０は、例えば、変数“Ｂ”および変数“Ｅ”に記録された座標値に基づいて、タッチ操作の開始座標が判別領域ａ３の内側領域であり、且つ、タッチ操作の終了座標が判別領域ａ３の外側領域であるかを判定する。情報処理装置１０は、例えば、開始座標が判別領域ａ３の内側領域であり、且つ、終了座標が判別領域ａ３の外側領域である場合には（Ｓ２７，Ｙｅｓ）、Ｓ２８の処理に移行する。一方、情報処理装置１０は、例えば、開始座標が判別領域ａ３の内側領域であり、且つ、終了座標が判別領域ａ３の外側領域である条件を満たさない場合には（Ｓ２７，Ｎｏ）、Ｓ２９の処理に移行する。
【０１５０】
Ｓ２８の処理では、情報処理装置１０は、移動方向記録“Ｖ[１]”に記録された移動方向値を取得する。情報処理装置１０は、例えば、移動方向記録“Ｖ[１]”に記録された移動方向値を１段階フリックのサブ種別として取得する。情報処理装置１０は、例えば、取得した“Ｖ[１]”の移動方向値を主記憶部１２の所定の領域に一時的に記憶する。また、情報処理装置１０は、１段階フリックのメイン種別には、フリック操作が中央の判別領域ａ３内から行われたことを示す移動方向値（例えば、“中央”）を主記憶部１２の所定の領域に一時的に記憶する。情報処理装置１０は、フリック操作が中央の判別領域ａ３内から行われたことを示す移動方向値が記録されたメイン種別、取得した“Ｖ[１]”の移動方向値のサブ種別をＳ３２の処理に引き渡す。
【０１５１】
Ｓ２９の処理では、情報処理装置１０は、例えば、変数“Ｂ”に記録された座標値に基づいて、タッチ操作の開始座標が判別領域ａ３の外側領域であるかを判定する。変数“Ｂ”に記録された座標値が判別領域ａ３の外側領域である場合には、処理対象のフリック操作は、判別領域ａ３の外側から始まる１段階フリックであると判断できる。また、変数Ｂに記録された座標値が判別領域ａ３の外側領域でない場合には、処理対象のタッチ操作は判別領域ａ３内で発生した定点タッチと判断できる。
【０１５２】
情報処理装置１０は、例えば、変数“Ｂ”に記録された座標値が判別領域ａ３の外側領域である場合には（Ｓ２９，Ｙｅｓ）、Ｓ３０の処理に移行する。Ｓ３０の処理では、情報処理装置１０は、例えば、移動方向記録“Ｖ[１]”に記録された移動方向を示す移動方向値を１段階フリックのメイン種別として取得する。情報処理装置１０は、例えば、取得したメイン種別の移動方向値を主記憶部１２の所定の領域に一時的に記憶する。また、情報処理装置１０は、１段階フリックのサブ種別には、１段階フリックでタッチ操作終了し、２段階目の移動がないことを示す移動方向値（例えば、“なし”）を主記憶部１２の所定の領域に一時的に記憶する。情報処理装置１０は、取得したメイン種別の移動方向値、１段階フリック後に終了し、２段階目の移動がないことを示す移動方向値が記録されたサブ種別をＳ３２の処理に引き渡す。
【０１５３】
一方、情報処理装置１０は、例えば、変数“Ｂ”に記録された座標値が判別領域ａ３の
外側領域でない（判別領域ａ３内）場合には（Ｓ２９，Ｎｏ）、Ｓ３１の処理に移行する。Ｓ３１の処理では、情報処理装置１０は、例えば、定点タッチのメイン種別にタッチ操作が判別領域ａ３内であることを示す移動方向値（例えば、“中央”）を主記憶部１２の所定の領域に一時的に記憶する。また、情報処理装置１０は、定点タッチのサブ種別には、タッチ操作後に移動を伴わずに中央の判別領域ａ３内で離脱したことを示す移動方向値（例えば、“中央”）を主記憶部１２の所定の領域に一時的に記憶する。情報処理装置１０は、定点タッチのメイン種別、サブ種別として記録された状態値をＳ３２の処理に引き渡す。
【０１５４】
Ｓ３２の処理では、情報処理装置１０は、例えば、判定されたタッチ操作の種類、移動方向等に関連付けられた入力文字、制御コード、入力モードの切り替え等の特定を行う。入力文字等の特定は、例えば、図７に例示の入力文字テーブルを参照して行うことができる。なお、入力文字テーブルについては、図７で後述する。
【０１５５】
情報処理装置１０は、例えば、Ｓ２５−Ｓ２６，Ｓ２８，Ｓ３０−Ｓ３１の処理から引き渡されたメイン種別、サブ種別と図７に例示の入力文字テーブルとの照合により、タッチ操作の種類、移動方向に関連付けられた入力文字等の特定を行う。なお、入力文字等の特定は、処理対象となるタッチ操作が検出された時点での入力モードにより特定される。
【０１５６】
例えば、入力モードが英数字モードの場合には、図３Ｃに例示するように、“ＡＢＣ”等の英文字、“．／＠”等の特殊記号、“１２３”等の数字等が入力文字として特定される。一方、入力モードがかな漢字モードの場合には、図３Ｂに例示するように、“あいう”等の５０音表の仮名文字が入力文字として特定される。情報処理装置１０では、例えば、入力モードの切り替えを行うことにより、英数字モードおよびかな漢字モードのそれぞれに対応付けられた文字入力を行うことができる。情報処理装置１０は、例えば、入力文字テーブルとの照合により特定された入力文字等の情報を主記憶部１２の所定の領域に一時的に記憶し、Ｓ３３の処理に引き渡す。
【０１５７】
Ｓ３３の処理では、情報処理装置１０は、例えば、Ｓ３２の処理で特定された文字入力、制御コード、入力モードの切り替え等の情報を、アプリ入力補助２１へ通知する。なお、Ｓ３２の処理で入力モードの切り替えが特定された場合には、情報処理装置１０は、処理対象の入力モードを変更する。例えば、情報処理装置１０は、処理対象の入力モードがかな漢字モードの場合には英数字モードへの切り替えを行う。同様にして、処理対象の入力モードが英数字モードの場合には、情報処理装置１０は、かな漢字モードへの切り替えを行う。また、Ｓ３２の処理で特定した入力モードの切り替えによる切り替えの実施ではなく、アプリ入力補助２１へ通知した後、アプリ入力補助２１からの切り替え指示によって入力モードを切り替えするようにしてもよい。情報処理装置１０は、Ｓ３３の処理後、処理対象となったタッチ操作についての入力文字判定処理を終了する。
【０１５８】
ここで、情報処理装置１０で実行されるＳ１７−Ｓ１８の処理は、操作面に対する接触位置が操作面の周辺領域から中心領域に移動する第１段目の操作の方向を検出するステップと、第１段目の操作に継続した接触位置の中心領域から周辺領域に移動する第２段目の操作の方向を検出するステップの一例である。また、情報処理装置１０のＣＰＵ１１等は、操作面に対する接触位置が操作面の周辺領域から中心領域に移動する第１段目の操作の方向と、第１段目の操作に継続した接触位置の中心領域から周辺領域に移動する第２段目の操作の方向とを検出する検出部の一例としてＳ１７−Ｓ１８の処理を実行する。
【０１５９】
また、情報処理装置１０で実行されるＳ２２−Ｓ２６、Ｓ３２−Ｓ３３の処理は、第１段目の操作の方向に基づいて、入力の項目群の中から対象項目を特定するステップと、特定した対象項目の中から第２段目の操作の方向に対応する入力候補を特定するステップの
一例である。また、情報処理装置１０のＣＰＵ１１等は、第１段目の操作の方向に基づいて、入力の項目群の中から対象項目を特定し、特定した対象項目の中から第２段目の操作の方向に対応する入力候補を特定する処理部の一例としてＳ２２−Ｓ２６、Ｓ３２−Ｓ３３の処理を実行する。
【０１６０】
また、情報処理装置１０で実行されるＳ２２，２７−Ｓ２９，Ｓ３１−Ｓ３３の処理は第１段目の操作が操作面の中心領域を接触の開始位置とし、接触位置が中心領域から操作面の周辺領域に移動して離脱する場合には、第１段目の接触の開始位置に基づいて、入力の項目群の中から対象項目を特定するステップと、特定した対象項目の中から第１段目の操作の方向に対応する入力候補を特定するステップの一例である。また、情報処理装置１０のＣＰＵ１１等は、第１段目の操作が操作面の中心領域を接触の開始位置とし、接触位置が中心領域から操作面の周辺領域に移動して離脱する場合には、第１段目の接触の開始位置に基づいて、入力の項目群の中から対象項目を特定し、特定した対象項目の中から第１段目の操作の方向に対応する入力候補を特定する処理部の一例としてＳ２２，２７−Ｓ２９，Ｓ３１−Ｓ３３の処理を実行する。
【０１６１】
また、情報処理装置１０で実行されるＳ２７、Ｓ２９の処理は、操作面の中心領域に対する接触および離脱を検出するステップの一例である。また、情報処理装置１０のＣＰＵ１１等は、操作面の中心領域に対する接触および離脱を検出する検出部の一例としてＳ２７、Ｓ２９の処理を実行する。
【０１６２】
また、情報処理装置１０で実行されるＳ２８，Ｓ３１−Ｓ３３の処理は、操作面の中心領域に対する接触および離脱に基づいて、入力の項目群の中から対象項目を特定するステップと、特定した対象項目に対応する入力候補を特定するするステップの一例である。また、情報処理装置１０のＣＰＵ１１等は、操作面の中心領域に対する接触および離脱に基づいて、入力の項目群の中から対象項目を特定し、特定した対象項目に対応する入力候補を特定する処理部の一例としてＳ２８，Ｓ３１−Ｓ３３の処理を実行する。
【０１６３】
また、情報処理装置１０で実行されるＳ２２，Ｓ２７，Ｓ２９−Ｓ３０，Ｓ３２−Ｓ３３の処理は、第１段目の操作が操作面の周辺領域を接触の開始位置とし、接触位置が周辺領域の開始位置とは異なる他の位置に移動して離脱する場合には、第１段目の操作の方向に対応付けられた、項目群の種別の切り替え、或いは、入力候補に対する変換制御を行う制御コードを特定するステップの一例である。また、情報処理装置１０のＣＰＵ１１等は、第１段目の操作が操作面の周辺領域を接触の開始位置とし、接触位置が周辺領域の開始位置とは異なる他の位置に移動して離脱する場合には、第１段目の操作の方向に対応付けられた、項目群の種別の切り替え、或いは、入力候補に対する変換制御を行う制御コードを特定する処理部の一例としてＳ２２，Ｓ２７，Ｓ２９−Ｓ３０，Ｓ３２−Ｓ３３の処理を実行する。
【０１６４】
〔文字入力テーブル〕
図７は、メイン種別およびサブ種別に分けた移動方向によりタッチ操作に関連付けられた入力文字を識別するための入力文字テーブル例である。図７に例示の入力文字テーブルでは、例えば、メイン種別とサブ種別とを組合せたレコードを有する。各レコードには、例えば、メイン種別とサブ種別との組合せで識別される、文字、制御コード、入力モード等が登録されている。各レコードに登録された、文字、制御コード、入力モード等の情報は、タッチ操作の種類、移動方向等に関連付けられて入力される入力情報の例である。
【０１６５】
なお、図７に例示の入力文字テーブルは、例えば、図３Ａ−３Ｆ等で説明したように、フリック操作に伴う移動方向を８方向に分割する場合の一例である。また、図７の入力文字テーブルは、フリック操作に伴う移動方向値で表す場合の一例である。図７に例示の入
力文字テーブルは、「メイン種別」、「サブ種別」、「文字／制御コード（入力モード：かな漢字）」、「文字／制御コード（入力モード：英数字）」の各カラムを有する。
【０１６６】
「メイン種別」カラムには、例えば、“０°”−“３６０°”の角度範囲を８等分に分割した場合の移動方向を示す“右”“右上”“上”“左上”“左”“左下”“下”“右下”の値、及び、判別領域ａ３の座標範囲内を示す値 “中央”が格納される。図３Ａ−３
Ｆ等で説明したように、判別領域ａ３の座標範囲内で定点タッチ等のタッチ操作では移動方向がない為、“中央”の識別値を使用する。
【０１６７】
「サブ種別」カラムには、「メイン種別」カラムと同様に、“０°”−“３６０°”の角度範囲を８等分に分割した場合の移動方向の値、及び判別領域ａ３の座標範囲内を示す“中央”の値が格納される。加えて、停止状態が生じなかったことを示す“なし”の値が格納される。判別領域ａ３外から開始され、停止することなく判別領域ａ３外で終了する１段階フリックと判別領域ａ３外から開始され、判別領域ａ３内で終了する２段フリックとを“なし”と“中央”で区別する。つまり、判別領域ａ３外から開始され、停止することなく判別領域ａ３外で終了する１段階フリックなら“なし”が対応し、判別領域ａ３内で終了する２段階フリックなら“中央”が対応する。
【０１６８】
ここで、図３Ａ−３Ｆ等で説明したように、対象となる入力項目の特定後の、特定した項目の中から入力候補を特定する場合、入力候補の数量が入力項目群の数量より少ない場合が想定できる。例えば、９通りの“あかさたなはまやら”の中から入力項目“ま”を選択した場合では、入力候補は“まみむめも”の５通りとなる。入力領域ａ２の中央である判別領域ａ３に“ま”を関連付けた場合には、“みむめも”の各入力候補を特定するために、少なくとも４通りの移動方向が存在すれば入力候補が特定可能である。
【０１６９】
例えば、“みむめも”の各入力候補を特定するために、８通りの移動方向の中で、少なくとも“右”、“下”、“左”、“上”の４通りの移動方向が識別可能であればよい。つまり、“０°”−“３６０°”の角度範囲を４等分に分割した場合の角度範囲に基づいて右”、“下”、“左”、“上”の４通りの移動方向を識別するとしてもよい。
【０１７０】
例えば、情報処理装置１０は、２段階フリックの１段階目のフリックが停止し、２段階目のフリックの処理中と想定する。情報処理装置１０は、例えば、Ｓ１１の移動方向“ｍ”を求める際に、２段階目の角度に対する移動方向を特定する角度範囲を、８分割の角度範囲から４分割の角度範囲に拡張し、移動方向を特定するとしてもよい。情報処理装置１０は、入力候補の数量に応じて動的に角度範囲を拡張することができる。情報処理装置１０は、例えば、入力領域ａ２及び判別領域ａ３が設定されたタッチ操作についての、入力情報に対する判別性を向上することができる。
【０１７１】
図７に例示の入力文字テーブルにおいて、「文字／制御コード（入力モード：かな漢字）」カラムには、例えば、仮名文字、制御コード、英数字モードへの入力モード切替等の入力情報が格納される。制御コードには、例えば、濁点文字変換、大小文字変換、入力文字の削除制御、半濁点文字変換等が含まれる。
【０１７２】
なお、「文字／制御コード（入力モード：かな漢字）」カラムに格納される入力情報は、入力モードがかな漢字モードの場合に使用する情報である。「文字／制御コード（入力モード：かな漢字）」カラムの入力情報は、同レコードの「メイン種別」カラム、「サブ種別」カラムに格納された各種情報の組合せにより特定される。
【０１７３】
「文字／制御コード（入力モード：英数字）」カラムには、例えば、英数字、制御コード、かな漢字モードへの入力モード切替等の入力情報が格納される。制御コードには、例
えば、大小文字変換、入力文字の削除制御等が含まれる。ここで、「文字／制御コード（入力モード：英数字）」カラムに格納される入力情報は、入力モードが英数字モードの場合に使用する情報である。「文字／制御コード（入力モード：英数字）」カラムの入力情報は、同レコードの「メイン種別（弧角）」カラム、「サブ種別（弧角）」カラムに格納された各種情報の組合せにより特定される。
【０１７４】
図７に例示の入力文字テーブルにおいて、例えば、「メイン種別」カラムに“右下”が格納されたレコードの「文字／制御コード（入力モード：かな漢字）」カラムには“あいうえお”が格納されている。入力モードがかな漢字モードの場合には、２段階フリックの１段目に判別領域ａ３の外側領域から内側領域に向かう“右下”方向のフリック操作を行うことにより、“あ”行の入力項目が特定されることが判る。
【０１７５】
また、例えば、「文字／制御コード（入力モード：かな漢字）」カラムに“え”が格納されたレコードの「サブ種別（弧角）」カラムには“右”が格納されている。２段階フリックの１段目で“あ”行の入力項目を特定後、判別領域ａ３の内側領域から外側領域に向かう２段目の“右”方向のフリック操作を行うことにより、入力候補の“え”が特定されることが判る。
【０１７６】
また、例えば、「メイン種別」カラムに“右下”が格納されたレコードの「文字／制御コード（入力モード：英数字）」カラムには“．／＠：１”が格納されている。入力モードが英数字モードの場合には、２段階フリックの１段目に判別領域ａ３の外側領域から内側領域に向かう“右下”方向のフリック操作を行うことにより、“．／＠：１”の入力項目が特定されることが判る。
【０１７７】
また、例えば、「文字／制御コード（入力モード：英数字）」カラムに“＠”が格納されたレコードの「サブ種別（弧角）」カラムには“上”が格納されている。２段階フリックの１段目で“．／＠：１”の入力項目を特定後、判別領域ａ３の内側領域から外側領域に向かう２段目の“上”方向のフリック操作を行うことにより、入力候補の“＠”が特定されることが判る。
【０１７８】
また、図７に例示の入力文字テーブルにおいて、例えば、「メイン種別」カラムに“中央”が格納されたレコードの「文字／制御コード（入力モード：かな漢字）」カラムには“なにぬねの”が格納されている。入力モードがかな漢字モードの場合には、判別領域ａ３を開始位置とする１段階フリックを行うことで、“な”行の入力項目が特定されることが判る。
【０１７９】
例えば、「文字／制御コード（入力モード：かな漢字）」カラムに“な”が格納されたレコードの「サブ種別」カラムには“中央”が格納されている。判別領域ａ３を開始位置として操作指を接触することで“な”行の入力項目を特定後、接触させた操作指を移動させず判別領域ａ３から離脱させる定点タッチを行うことにより、入力候補の“な”が特定されることが判る。また、例えば、「文字／制御コード（入力モード：かな漢字）」カラムに“に”が格納されたレコードの「サブ種別」カラムには“左”が格納されている。判別領域ａ３を開始位置として操作指を接触することで“な”行の入力項目を特定後、判別領域ａ３の内側領域から外側領域に向かう“左”方向の１段階フリック操作を行うことにより、入力候補の“に”が特定されることが判る。
【０１８０】
例えば、「メイン種別」カラムに“中央”が格納されたレコードの「文字／制御コード（入力モード：英数字）」カラムには“ＪＫＬ＆５”が格納されている。入力モードが英数字モードの場合には、判別領域ａ３を開始位置とする１段階フリックを行うことで、“ＪＫＬ＆５”の入力項目が特定されることが判る。
【０１８１】
例えば、「文字／制御コード（入力モード：英数字）」カラムに“Ｊ”が格納されたレコードの「サブ種別」カラムには“中央”が格納されている。判別領域ａ３を開始位置として操作指を接触することで“ＪＫＬ＆５”の入力項目を特定後、接触させた操作指を移動させず判別領域ａ３から離脱させる定点タッチを行うことにより、入力候補の“Ｊ”が特定されることが判る。また、例えば、「文字／制御コード（入力モード：英数字）」カラムに“Ｌ”が格納されたレコードの「サブ種別」カラムには“上”が格納されている。判別領域ａ３を開始位置として操作指を接触することで“ＪＫＬ＆５”の入力項目を特定後、判別領域ａ３の内側領域から外側領域に向かう“上”方向の１段階フリック操作を行うことにより、入力候補の“Ｌ”が特定されることが判る。
【０１８２】
また、図７に例示の入力文字テーブルにおいて、例えば、「文字／制御コード（入力モード：かな漢字）」カラムに“入力モード切替（英数字へ）”が格納されたレコードの「メイン種別」カラムには“右”が格納されている。また、同レコードの「サブ種別（弧角）」カラムには、“なし”が格納されている。入力モードがかな漢字モードの場合には、判別領域ａ３の外側領域を開始位置とする“右”方向の１段階フリックを行うことで、英数字モードへの入力モード切替が特定されることが判る。
【０１８３】
同様にして、例えば、「文字／制御コード（入力モード：英数字）」カラムに“入力モード切替（かな漢字へ）”が格納されたレコードの「メイン種別」カラムには“右”が格納されている。入力モードが英数字モードの場合には、判別領域ａ３の外側領域を開始位置として判別領域ａ３外で終了する“右”方向の１段階フリックを行うことで、かな漢字モードへの入力モード切替が特定されることが判る。
【０１８４】
以上、説明したように、本実施形態の情報処理装置１０では、例えば、タッチパネル領域ａ１の入力領域ａ２内に、タッチ操作の種類、および、移動方向を判別するための判別領域ａ３を設けることができる。本実施形態の情報処理装置１０は、判別領域ａ３の座標範囲により、判別領域ａ３外の周辺領域から判別領域ａ３内へのフリック操作、判別領域ａ３内から判別領域ａ３外の周辺領域へのフリック操作を判別できる。また、情報処理装置１０は、判別領域ａ３内のタップ操作（定点タッチ）を判別できる。
【０１８５】
判別領域ａ３を用いて判別したタッチ操作の種類がフリック操作の場合には、情報処理装置１０は、フリック操作の開始位置と終了位置とを結ぶ軌跡により、２段階フリックの１段目および２段目のフリック操作に伴う移動方向が特定できる。同様にして、情報処理装置１０は、フリック操作の開始位置と終了位置とを結ぶ軌跡により、１段階フリックのフリック操作に伴う移動方向が特定できる。
【０１８６】
本実施形態の情報処理装置１０は、例えば、判別領域ａ３の座標範囲により判別されたタッチ操作の種類と特定された移動方向とを組合せた組合せパターンに基づいて、該タッチ操作に関連付けされた情報の入力項目を識別することができる。
【０１８７】
例えば、情報処理装置１０は、２段階フリックに伴う８方向の移動により、少なくとも６４種類の入力項目の識別が可能となる。さらに、情報処理装置１０は、判別領域ａ３を開始位置とする１段階フリックの８方向の移動により、少なくとも８種類の入力項目の識別が可能となる。また、情報処理装置１０は、判別領域ａ３内での定点タッチにより、判別領域ａ３に関連付けられた入力項目の識別が可能となる。また、情報処理装置１０は、判別領域ａ３外の領域を開始位置とし、判別領域ａ３外で終了する１段階フリックの、８方向の移動により、少なくとも８種類の入力項目の識別が可能となる。
【０１８８】
この結果、本実施形態の情報処理装置１０では、例えば、“あかさたなはまやらわ”等
の各行の「あ」段等の項目群の中から入力対象となる文字候補を含む項目群を特定することができる。そして、本実施形態の情報処理装置１０では、特定された項目群の中から対象となる入力項目（文字候補）を特定することができる。また、情報処理装置１０は、例えば、特定した入力項目（文字候補）に対する、濁点修飾、半濁点修飾、大小文字修飾、文字削除といった制御処理を特定することができる。また、情報処理装置１０は、例えば、かな漢字から英数字、英数字からかな漢字への入力モードの切り替えを行うことができる。
【０１８９】
本実施形態の情報処理装置１０では、判別領域ａ３を用いて判別されたタッチ操作の種類および移動方向の組合せパターンに関連付けされた情報の、入力インターフェースを提供することができる。
【０１９０】
本実施形態の情報処理装置１０では、判別領域ａ３は、例えば、入力領域ａ２の中心位置を含む中央部分の領域に設けることが可能である。このため、例えば、タッチパネルの入力領域が狭小な場合であっても、入力領域ａ２の範囲を目視により確認することで、入力領域ａ２の中心位置を推定され易くする効果が期待できる。中心位置が推定された結果、例えば、入力領域ａ２の周辺領域から中心位置に向かう、或いは、中心位置から入力領域ａ２の周辺領域に向かうフリック操作を行い易くなる効果が期待できる。また、タッチ操作を行うユーザについて、入力領域ａ２の中心位置に対するタップ操作を行い易くする効果が期待できる。
【０１９１】
また、本実施形態の情報処理装置１０は、タッチパネル領域ａ１の縦軸、或いは、横軸を基準軸として、３６０度の角度範囲を均等分に区分された方向を検出することができる。情報処理装置１０は、基準軸に対して３６０度の角度を均等分に区分けした角度範囲内で移動方向を特定できるため、移動方向に関連付けられた入力項目を判別することが可能となる。本実施形態の情報処理装置１０では、タッチパネルの入力領域が狭小な場合であっても、隣接する操作オブジェクトへの誤接触等の押し間違え等を抑制する効果が期待できる。本実施形態の情報処理装置１０では、ユーザビリティを向上させた入力インターフェースが提供できる。
【０１９２】
《コンピュータが読み取り可能な記録媒体》
コンピュータその他の機械、装置（以下、コンピュータ等）に上記いずれかの機能を実現させるプログラムをコンピュータ等が読み取り可能な記録媒体に記録することができる。そして、コンピュータ等に、この記録媒体のプログラムを読み込ませて実行させることにより、その機能を提供させることができる。
【０１９３】
ここで、コンピュータ等が読み取り可能な記録媒体とは、データやプログラム等の情報を電気的、磁気的、光学的、機械的、または化学的作用によって蓄積し、コンピュータ等から読み取ることができる記録媒体をいう。このような記録媒体のうちコンピュータ等から取り外し可能なものとしては、例えばフレキシブルディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ／Ｗ、ＤＶＤ、ブルーレイディスク、ＤＡＴ、８ｍｍテープ、フラッシュメモリなどのメモリカード等がある。また、コンピュータ等に固定された記録媒体としてハードディスクやＲＯＭ等がある。
【０１９４】
《その他》
以上の実施形態は、さらに以下の付記と呼ぶ態様を含む。以下の各付記に含まれる構成要素は、他の付記に含まれる構成と組み合わせることができる。
（付記１）
操作面に対する接触位置が前記操作面の周辺領域から中心領域に移動する第１段目の操作の方向と、前記第１段目の操作に継続した接触位置の前記中心領域から前記周辺領域に
移動する第２段目の操作の方向とを検出する検出部と、
前記第１段目の操作の方向に基づいて、入力の項目群の中から対象項目を特定し、特定した前記対象項目の中から前記第２段目の操作の方向に対応する入力候補を特定する処理部と、
を備える情報処理装置。
（付記２）
前記処理部は、第１段目の操作が前記操作面の中心領域を接触の開始位置とし、接触位置が前記中心領域から前記操作面の周辺領域に移動して離脱する場合には、前記第１段目の接触の開始位置に基づいて、入力の項目群の中から対象項目を特定し、特定した前記対象項目の中から前記第１段目の操作の方向に対応する入力候補を特定する、付記１に記載の情報処理装置。
（付記３）
前記検出部は、操作面の中心領域に対する接触および離脱を検出し、
前記処理部は、前記操作面の中心領域に対する接触および離脱に基づいて、入力の項目群の中から対象項目を特定し、特定した前記対象項目に対応する入力候補を特定する、付記１または２に記載の情報処理装置。
（付記４）
前記処理部は、第１段目の操作が前記操作面の周辺領域を接触の開始位置とし、接触位置が前記周辺領域の前記開始位置とは異なる他の位置に移動して離脱する場合には、前記第１段目の操作の方向に対応付けられた、前記項目群の種別の切り替え、或いは、前記入力候補に対する変換制御を行う制御コードを特定する、付記１から３の何れか１の付記に記載の情報処理装置。
（付記５）
前記検出部は、前記接触位置の時系列データのうち先に取得された接触位置から後に取得された接触位置を結ぶ軌跡と前記操作面の縦軸あるいは横軸とが交差する角度に基づいて、前記操作面の縦軸あるいは横軸を基準軸とする３６０度の角度範囲を均等分に区分けされた方向を検出する、付記１から４の何れか１の付記に記載の情報処理装置。
【０１９５】
（付記６）
コンピュータに、
操作面に対する接触位置が前記操作面の周辺領域から中心領域に移動する第１段目の操作の方向を検出するステップと、前記第１段目の操作に継続した接触位置の前記中心領域から前記周辺領域に移動する第２段目の操作の方向を検出するステップと、
前記第１操作の方向に基づいて、入力の項目群の中から対象項目を特定するステップと、特定した前記対象項目の中から前記第２段目の操作の方向に対応する入力候補を特定するステップと、
を実行させるための入力制御プログラム。
（付記７）
第１段目の操作が前記操作面の中心領域を接触の開始位置とし、接触位置が前記中心領域から前記操作面の周辺領域に移動して離脱する場合には、前記第１段目の接触の開始位置に基づいて、入力の項目群の中から対象項目を特定するステップと、特定した前記対象項目の中から前記第１段目の操作の方向に対応する入力候補を特定するステップと、を実行させるための付記６に記載の入力制御プログラム。
（付記８）
操作面の中心領域に対する接触および離脱を検出するステップと、
前記操作面の中心領域に対する接触および離脱に基づいて、入力の項目群の中から対象項目を特定するステップと、特定した前記対象項目に対応する入力候補を特定するするステップと、を実行させるための付記６または７に記載の入力制御プログラム。
（付記９）
第１段目の操作が前記操作面の周辺領域を接触の開始位置とし、接触位置が前記周辺領
域の前記開始位置とは異なる他の位置に移動して離脱する場合には、前記第１段目の操作の方向に対応付けられた、前記項目群の種別の切り替え、或いは、前記入力候補に対する変換制御を行う制御コードを特定するステップ、を実行させるための付記６から８の何れか１の付記に記載の入力制御プログラム。
（付記１０）
前記接触位置の時系列データのうち先に取得された接触位置から後に取得された接触位置を結ぶ軌跡と前記操作面の縦軸あるいは横軸とが交差する角度に基づいて、前記操作面の縦軸あるいは横軸を基準軸とする３６０度の角度範囲を均等分に区分けされた方向を検出する検出するステップ、を実行させるための付記６から９の何れか１の付記に記載の入力制御プログラム。
【０１９６】
（付記１１）
コンピュータが、
操作面に対する接触位置が前記操作面の周辺領域から中心領域に移動する第１段目の操作の方向を検出するステップと、前記第１段目の操作に継続した接触位置の前記中心領域から前記周辺領域に移動する第２段目の操作の方向を検出するステップと、
前記第１操作の方向に基づいて、入力の項目群の中から対象項目を特定するステップと、特定した前記対象項目の中から前記第２段目の操作の方向に対応する入力候補を特定するステップと、
を実行する入力制御方法。
（付記１２）
第１段目の操作が前記操作面の中心領域を接触の開始位置とし、接触位置が前記中心領域から前記操作面の周辺領域に移動して離脱する場合には、前記第１段目の接触の開始位置に基づいて、前記操作面に表示された情報の項目群の中から対象項目を特定するステップと、特定した前記対象項目の中から前記第１段目の操作の方向に対応する入力候補を特定するステップと、をさらに実行する付記１１に記載の入力制御方法。
（付記１３）
操作面の中心領域に対する接触および離脱を検出するステップと、
前記操作面の中心領域に対する接触および離脱に基づいて、前記操作面に表示された情報の項目群の中から対象項目を特定するステップと、特定した前記対象項目に対応する入力候補を特定するするステップと、を実行する付記１１または１２に記載の入力制御方法。
（付記１４）
第１段目の操作が前記操作面の周辺領域を接触の開始位置とし、接触位置が前記周辺領域の前記開始位置とは異なる他の位置に移動して離脱する場合には、前記第１段目の操作の方向に対応付けられた、前記項目群の種別の切り替え、或いは、前記入力候補に対する変換制御を行う制御コードを特定するステップ、を実行する付記１１から１３何れか１の付記に記載の入力制御方法。
（付記１５）
前記接触位置の時系列データのうち先に取得された接触位置から後に取得された接触位置を結ぶ軌跡と前記操作面の縦軸あるいは横軸とが交差する角度に基づいて、前記操作面の縦軸あるいは横軸を基準軸とする３６０度の角度範囲を均等分に区分けされた方向を検出する検出するステップ、をさらに実行する付記１１から１４の何れか１の付記に記載の入力制御方法。
【符号の説明】
【０１９７】
１０  情報処理装置
１１  ＣＰＵ
１２  主記憶部
１３  補助記憶部
１４  入力部
１４ａ  タッチセンサ
１５  出力部
１５ａ  ＬＣＤ
１６  通信部
２０ａ，２０ｂ，２０ｃ  アプリケーションプログラム
２１  アプリ入力補助
２２  入力判定
２３  ＲＡＭ管理部
２４  タイマ制御
２５  入力制御
２６  表示制御
２７  FileSystem
２８  電源制御
２９  タッチセンサ制御
３０  ＬＣＤ制御
３１  補助記憶部制御
【図１】
2016218963.tif 000003
【図２Ａ】
2016218963.tif 000004
【図２Ｂ】
2016218963.tif 000005
【図２Ｃ】
2016218963.tif 000006
【図２Ｄ】
2016218963.tif 000007
【図２Ｅ】
2016218963.tif 000008
【図２Ｆ】
2016218963.tif 000009
【図３Ａ】
2016218963.tif 000010
【図３Ｂ】
2016218963.tif 000011
【図３Ｃ】
2016218963.tif 000012
【図３Ｄ】
2016218963.tif 000013
【図３Ｅ】
2016218963.tif 000014
【図３Ｆ】
2016218963.tif 000015
【図３Ｇ】
2016218963.tif 000016
【図３Ｈ】
2016218963.tif 000017
【図４】
2016218963.tif 000018
【図５】
2016218963.tif 000019
【図６】
2016218963.tif 000020
【図７】
2016218963.tif 000021