(57)【要約】【課題】操作面における操作位置の検出精度を向上させる。【解決手段】情報入力装置は、操作面における操作された位置を示す位置データを順次に検出するための操作受付部（２４０）と、操作受付部により位置データが検出されるときの、検出条件を取得するための条件取得部と、操作受付部により検出された位置データを補正するための補正部と、を備える。補正部は、操作受付部により検出された位置データを、当該位置データが検出されたときに取得された検出条件と、当該位置データに先行して検出されて補正された先行位置データとから補正する。【選択図】図３
2014059738.tif 000002
【特許請求の範囲】
【請求項１】
操作面における操作された位置を示す位置データを順次に検出するための操作受付部と、
前記操作受付部により前記位置データが検出されるときの、検出条件を取得するための条件取得部と、
前記操作受付部により検出された位置データを補正するための補正部と、を備え、
前記補正部は、
前記操作受付部により検出された位置データを、当該位置データが検出されたときに取得された前記検出条件と、当該位置データに先行して検出されて補正された先行位置データとから補正する、情報入力装置。
【請求項２】
前記操作面は、画像を表示する表示部に関連して設けられ、
前記条件取得部は、前記検出条件として前記表示部の画像の表示状態を検出する、請求項１に記載の情報入力装置。
【請求項３】
前記表示状態は、前記表示部の画像の表示切替中の状態と、画像の表示中の状態とを含む、請求項２に記載の情報入力装置。
【請求項４】
前記条件取得部は、前記検出条件として、前記操作受付部により検出される前記位置データのノイズ比を検出する、請求項１から３のいずれかに記載の情報入力装置。
【請求項５】
前記条件取得部は、前記検出条件として、前記操作受付部が位置データを検出する時間間隔の長さを検出する、請求項１から３のいずれかに記載の情報入力装置。
【請求項６】
前記補正部は、
前記操作受付部により検出された位置データを、当該位置データが検出されたときに取得された前記検出条件と、２つ以上の前記先行位置データとから補正する、請求項１から５のいずれかに記載の情報入力装置。
【請求項７】
前記補正部は、前記検出条件から補正パラメータを決定する、請求項１から６のいずれかに記載の情報入力装置。
【請求項８】
前記補正部は、
前記操作受付部により検出された位置データを、当該位置データと、当該位置データが検出されたときに取得された前記検出条件から決定した前記補正パラメータと、当該位置データに先行して検出されて補正された先行位置データとから、予め定めた演算式に従って補正する、請求項７に記載の情報入力装置。
【請求項９】
前記補正パラメータは、前記演算式の位置データに係る重み付けを示す、請求項８に記載の情報入力装置。
【請求項１０】
前記補正パラメータは、前記演算式に用いる先行位置データの数を示す、請求項８または９に記載の情報入力装置。
【請求項１１】
操作面における操作された位置を示す位置データを順次に検出するステップと、
前記位置データが検出されるときの、検出条件を取得するステップと、
検出された前記位置データを補正するステップと、を備え、
前記補正するステップでは、
検出するステップで検出された位置データを、当該位置データが検出されたときに取得された前記検出条件と、当該位置データに先行して検出されて補正された先行位置データとから補正する、情報入力方法。
【請求項１２】
プロセッサに情報入力方法を実行させるためのプログラムであって、
前記プログラムは前記プロセッサに、
操作面における操作された位置を示す位置データを順次に検出するステップと、
前記位置データが検出されるときの、検出条件を取得するステップと、
検出された前記位置データを補正するステップと、を実行させ、
前記補正するステップでは、
検出するステップで検出された位置データを、当該位置データが検出されたときに取得された前記検出条件と、当該位置データに先行して検出されて補正された先行位置データとから補正する、プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は情報入力装置に関し、特に、表示一体型入力部の操作面上で位置を指定するための操作を受付けることにより情報を入力する情報入力装置に関する。
【背景技術】
【０００２】
情報処理端末として、タッチパネルとＬＣＤ（Liquid  Crystal  Display）を一体的に備えた表示一体型入力部を情報入力装置として有する端末が普及している。このような端末では、タッチパネルのタッチ操作により感覚的に情報を入力することができる一方で、高い入力精度が要求されている。
【０００３】
当該要求に応えるものとして、たとえば特許文献１（特開２０００−１２２８０１号公報）の座標値補正装置は、タッチパネル部で得られた「過去の検出座標値」と「現在の検出座標値」を加重平均し、現在の検出座標値を補正する。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０００−１２２８０１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献１では、加重平均の重み付けを変更するとの記載はないことから、予め決められている固定値である。したがって、ノイズなど、タッチパネルの座標値検出時の周囲の状況が変化しているにも関わらず、重み付けの値は固定であるから、状況に応じた適切な補正がなされない。つまり、ノイズなどで精度が低いタッチ検出位置座標値に対して、大きな重み付けをしてしまう可能性があり、その場合、補正後の座標値の精度が低下するおそれがある。
【０００６】
それゆえに、本発明の目的は、操作面における操作位置の検出精度を向上させる情報入力装置を提供することである。
【課題を解決するための手段】
【０００７】
この発明のある局面に従う情報入力装置は、操作面における操作された位置を示す位置データを順次に検出するための操作受付部と、操作受付部により位置データが検出されるときの、検出条件を取得するための条件取得部と、操作受付部により検出された位置データを補正するための補正部と、を備える。
【０００８】
補正部は、操作受付部により検出された位置データを、当該位置データが検出されたときに取得された検出条件と、当該位置データに先行して検出されて補正された先行位置データとから補正する。
【０００９】
好ましくは、操作面は、画像を表示する表示部に関連して設けられ、条件取得部は、検出条件として表示部の画像の表示状態を検出する。
【００１０】
好ましくは、表示状態は、表示部の画像の表示切替中の状態と、画像の表示中の状態とを含む。
【００１１】
好ましくは、条件取得部は、検出条件として、操作受付部により検出される位置データのノイズ比を検出する。
【００１２】
好ましくは、条件取得部は、検出条件として、操作受付部が位置データを検出する時間間隔の長さを検出する。
【００１３】
好ましくは、補正部は、操作受付部により検出された位置データを、当該位置データが検出されたときに取得された検出条件と、２つ以上の先行位置データとから補正する。
【００１４】
好ましくは、補正部は、検出条件から補正パラメータを決定する。
好ましくは、補正部は、操作受付部により検出された位置データを、当該位置データと、当該位置データが検出されたときに取得された検出条件から決定した補正パラメータと、当該位置データに先行して検出されて補正された先行位置データとから、予め定めた演算式に従って補正する。
【００１５】
好ましくは、補正パラメータは、演算式の位置データに係る重み付けを示す。
好ましくは、補正パラメータは、演算式に用いる先行位置データの数を示す。
【００１６】
この発明の他の局面に従う情報入力方法は、操作面における操作された位置を示す位置データを順次に検出するステップと、位置データが検出されるときの、検出条件を取得するステップと、検出された位置データを補正するステップと、を備える。
【００１７】
補正するステップでは、検出するステップで検出された位置データを、当該位置データが検出されたときに取得された検出条件と、当該位置データに先行して検出されて補正された先行位置データとから補正する。
【００１８】
この発明のさらに他の局面に従うプログラムは、プロセッサに情報入力方法を実行させるためのプログラムであって、プログラムはプロセッサに、操作面における操作された位置を示す位置データを順次に検出するステップと、位置データが検出されるときの、検出条件を取得するステップと、検出された位置データを補正するステップと、を実行させる。補正するステップでは、検出するステップで検出された位置データを、当該位置データが検出されたときに取得された検出条件と、当該位置データに先行して検出されて補正された先行位置データとから補正する。
【発明の効果】
【００１９】
本発明によれば、検出された位置データを、当該位置データが検出されたときに取得された検出条件と、当該位置データに先行して検出されて補正された先行位置データとから補正することで、操作面における操作位置の検出精度を向上させる。
【図面の簡単な説明】
【００２０】
【図１】本発明の実施の形態に係る端末の外観を表わす図である。
【図２】本発明の実施の形態に係る端末のハードウェア構成を表わすブロック図である。
【図３】本実施の形態に係る情報入力装置の概念図である。
【図４】本発明の実施の形態に係る処理のフローチャートである。
【図５】本発明の実施の形態に係る処理のフローチャートである。
【発明を実施するための形態】
【００２１】
以下、本発明の実施の形態について図面を参照し詳細に説明する。なお、同一の構成要素には各図において同一の符号を付し、詳細な説明は繰返さない。
【００２２】
本実施の形態では、情報処理装置は、情報入力装置としてタッチパネルを有する携帯型情報処理端末を想定する。携帯型情報処理端末として、ノートブック型パーソナルコンピュータ、携帯電話、スマートフォン、ＰＤＡ（Personal  Digital  Assistant）、ナビゲーション装置などを適用することができる。あるいは、ＡＴＭ（Automated  Teller  Machine）、クレジットカードの認証装置その他の商業施設に配置される情報処理端末に適用することもできる。また、情報処理端末は携帯型に限定されず、据え置き型であってもよい。
【００２３】
本実施の形態では、表示デバイスの状態によるタッチパネルへのノイズ、タッチ検出位置（後述する操作位置に対応）の取得時間間隔等、検出時の状況に応じて検出位置データを補正することにより、高い精度を有する検出位置データを取得する。
【００２４】
＜ハードウェア構成＞
図１および図２を参照して、本実施の形態に係る携帯型情報処理端末（以下、単に端末という）１００の構成について説明する。図１は、端末１００の外観を表わす図である。図２は端末１００のハードウェア構成を表わすブロック図である。端末１００は、筐体１１０、アンテナ１２０、スピーカ１３０、周知の抵抗膜方式のタッチパネル１４０と表示装置２１２を有する表示部２１０、電源ボタン１５０、マイク１６０およびＬＥＤ（Light  Emitting  Diode）１７０を備える。
【００２５】
端末１００には、カード状の記録媒体であるメモリカード１５２が外部から着脱自在に装着される。
【００２６】
端末１００は、図１に示される構成に加えて、センサ部２２０、プロセッサ２３０、グラフィックメモリ２５４を有した表示デバイスコントローラ２１４、フラッシュメモリ２５０、ＲＡＭ（Random  Access  Memory）２５２、ＲＯＭ（Read  Only  Memory）２５６、通信回路２６０、信号処理回路２７０、バイブレータ２８０および装着されたメモリカード１５２をプロセッサ２３０の制御のもとにアクセスするためのメモリドライバ１５１を備える。プロセッサ２３０はＣＰＵ（Central  Processing  Unit）２３１および計時のためのタイマ２３２などを含む。
【００２７】
センサ部２２０は、端末１００の傾き角度を検出する加速度センサ、環境温度を計測する温度センサなど、各種のセンサを含む。
【００２８】
表示部２１０は、タッチパネル１４０と表示装置２１２とを一体的に含む表示一体型入力装置を構成する。表示部２１０の表示装置２１２はＬＣＤ（Liquid  Crystal  Display）パネルに相当し、その表示面上にはタッチパネル１４０が載置される。表示面において表示される画像はタッチパネル１４０を介して視認可能な可視画像である。つまり、ユーザはＬＣＤパネルによる表示画像を透明部材からなるタッチパネル１４０を介して外部から視認することができる。ここでは、タッチパネル１４０は抵抗膜方式を採用したが、この方式に限定されず、たとえば周知の静電容量方式、または光センサ方式であってもよい。
【００２９】
タッチパネル１４０の表面上は、指または専用のペン（図示せず）などの操作体によりタッチなどの操作がされる操作面に相当する。ここでは、説明を簡単にするために操作体を指と想定する。タッチパネル１４０は、操作面上の指により操作された位置（以下、操作位置という）に応じた電気信号を出力する。
【００３０】
表示部２１０の表示面を構成する表示パネルには上記のＬＣＤパネルに限定されず、有機ＥＬディスプレイ（organic  electroluminescence  display）、ＦＥＤ（Field  Emission  Display：電界放出型ディスプレイ）、電子ペーパーなどを適用してもよい。
【００３１】
適用可能となる表示パネルは、表示パネルに関連して表示データを書き換えるための回路等が備えられて、当該回路が動作しているときにノイズを発生させる可能性がある表示パネルを含む。適用できる表示パネルは表示原理（表示原理：液晶なら光学異方性、有機ＥＬなら自発光など）には依存しない。
【００３２】
フラッシュメモリ２５０は、端末１００に対して与えられたデータあるいはプロセッサ２３０によって生成されたデータを不揮発的に保持する。
【００３３】
ＲＡＭ２５２は、プロセッサ２３０によって生成されたデータを格納するための記憶領域を含む。
【００３４】
グラフィックメモリ２５４は、表示装置２１２において画像を表示するためのデータを格納する。なお、他の局面において、ＲＡＭ２５２とグラフィックメモリ２５４とが一体として構成されていてもよい。
【００３５】
ＲＯＭ２５６は端末１００を作動させるためのファームウェア、上述の操作入力受付のためのプログラムその他の各種プログラムと、端末１００に固有の動作を実行させるために設定値として予め入力されたデータとを保持している。
【００３６】
表示デバイスコントローラ２１４は、グラフィックメモリ２５４に格納されているデータに基づく描画動作を表示装置２１２に対して実行する。表示装置２１２は、その動作に従って画像を表示する。
【００３７】
通信回路２６０は、アンテナ１２０によって受信された信号を変換し、変換後の信号をプロセッサ２３０に送出する。また他の局面において、通信回路２６０は、プロセッサ２３０から送られた信号を送信用の信号に変換し、変換後の信号をアンテナ１２０に送出する。
【００３８】
信号処理回路２７０は、マイク１６０から送られる電気信号を変換し変換後の信号をプロセッサ２３０に送出する。また、端末１００が音声を出力する場合には、信号処理回路２７０は、プロセッサ２３０から送られた信号を音声出力用の信号に変換し、その変換後の信号をスピーカ１３０に送出する。スピーカ１３０は、その信号に基づき音声を出力する。
【００３９】
バイブレータ２８０は、プロセッサ２３０から送られる信号に基づいて予め規定された振動パターンで発振する。
【００４０】
なお、プロセッサ２３０が受付ける操作は、タッチパネル１４０を介したユーザ操作に限定されず、電源ボタン１５０などの物理的ボタンを押下するなどの操作も含む。
【００４１】
図３は、本実施の形態に係る情報入力装置の概念図である。図３を参照して、情報入力装置は、タッチパネル１４０および表示装置２１２を含む表示部２１０を含み、表示部２１０に関連して操作受付部２４０、表示デバイスコントローラ２１４およびＣＰＵ２３１を備える。操作受付部２４０は、タッチパネルコントローラ２４１を含む回路から構成されてもよく、またはタッチパネルコントローラ２４１およびＣＰＵ２３１が実行するプログラムの組合わせにより実現されるとしてもよい。
【００４２】
図３では、タッチパネル１４０と表示装置２１２のＬＣＤパネルとは別々のパネルとして示されるが、オンセル型、インセル型のタッチパネルであっても本実施の形態は適用可能である。
【００４３】
表示動作において、ＣＰＵ２３１は、表示データ３００Ｄおよび制御信号３００Ｓを、表示デバイスコントローラ２１４に出力する。表示データ３００Ｄは、ＬＣＤパネルに表示するべき画像データ（ビットマップデータ）であり、グラフィックメモリ２５４に格納される。制御信号３００Ｓは、例えば、イネーブル/ディスイネーブル信号、ＬＣＤパネルの表示データの書換え周期を設定するための制御信号などを示す。表示デバイスコントローラ２１４は、制御信号３００Ｓから、VSYNC信号（垂直同期信号）、HSYNC信号（水平同期信号）などの制御信号３０１Ｃを生成し出力する。
【００４４】
表示デバイスコントローラ２１４は、表示データ３０１Ｄと制御信号３０１Ｃを、ＬＣＤパネルに出力する。表示データ３０１Ｄは、グラフィックメモリ２５４の画素データに相当するデジタル値を示し、制御信号３０１Ｃは、デジタルのタイミング信号（VSYNC信号等）を示す。一般的には、制御信号３０１Ｃと表示データ３０１Ｄのデジタル値データをLVDS（小振幅差動信号）にて、表示デバイスコントローラ２１４から表示デバイスであるＬＣＤパネルへ転送し、ＬＣＤパネルの図示しないドライバ（ソースドライバ、ゲートドライバ）により、LVDS（小振幅差動信号）から画素の階調値（電圧）（アナログ値）および電極選択信号が生成されて、当該信号によりＬＣＤパネルを駆動（各電極に電圧印加）されて画像が表示される。ここでは、フレーム単位で画像を表示すると想定する。
【００４５】
タッチパネルコントローラ２４１は、制御信号３０３を、タッチパネル１４０に出力する。制御信号３０３は、操作位置を読取るためにタッチパネル１４０の電極に印加する電圧信号を示す。
【００４６】
タッチパネル１４０は、制御信号３０３を入力すると、タッチ状態検知スキャンデータ３０４（以下、スキャンデータ３０４と略す）を操作受付部２４０に出力する。スキャンデータ３０４は、タッチパネル１４０の操作面における操作体（静電容量）による操作位置を検出するための静電容量の（変化の）データを示す。
【００４７】
また、表示デバイスコントローラ２１４は、表示デバイスの状態を通知するための表示デバイス状態通知３０２を操作受付部２４０に出力する。ここで、表示デバイスの状態とは、ＬＣＤパネルの表示状態を示し、より具体的には『表示データ書換中』と『表示中』の２つの状態のいずれかを示す。
【００４８】
『表示データ書換中』は、表示デバイスコントローラ２１４が、グラフィックメモリ２５４の画像データに従う表示データ３０１Ｄおよび制御信号３０１Ｃを、ＬＣＤパネルに出力している状態であって、ＬＣＤパネルにおける表示画像の切替中を示す。
【００４９】
『表示中』とは、ＬＣＤパネルに画像を表示する場合に、ｎ番目フレームの画像データの『表示データ書換中』と(ｎ+１)番目フレームの『表示データ書換中』の間の状態を示す。つまり、表示デバイスコントローラ２１４が、ＬＣＤパネルを駆動するための表示データ３０１Ｄおよび制御信号３０１Ｃを出力していない状態を示す。
【００５０】
例えば、６０Ｈｚ(約１６ｍｓｅｃ）周期で、表示データの書換えを実行した場合、ｎ番目フレームの『表示データ書換中』が開始されて、書換えが終了するのに１０ｍｓｅｃ掛かるとすると、次の(ｎ+１)番目フレームの『表示データ書換中』を開始するまでの６ｍｓｅｃの間、ＬＣＤパネルを駆動していない状態が生じる。このときの状態を『表示中』と定義する。
【００５１】
操作受付部２４０は、タッチパネル１４０のスキャンデータ３０４の取得動作を開始するときに、表示デバイスコントローラ２１４から表示デバイス状態通知３０２を受信する。操作受付部２４０は、受信した表示デバイス状態通知３０２から、スキャンデータ３０４がどのような表示デバイス状態のときに取得されたデータであるかを検出することができる。
【００５２】
操作受付部２４０のタッチパネルコントローラ２４１は、スキャンデータ３０４からタッチ検出位置データ３０５Ｄを生成し、ＣＰＵ２３１に出力する。このとき、表示デバイスコントローラ２１４から受信しておいた表示デバイス状態通知３０２を示す表示デバイス状態データ３０５Ｓを同時に出力する。これにより、タッチ検出位置データ３０５Ｄと、当該タッチ検出位置データ３０５Ｄを算出するのに使用したスキャンデータ３０４との間で、表示デバイス状態の情報の齟齬が発生するのを防止する。
【００５３】
つまり、“タッチパネルコントローラ２４１がスキャンデータ３０４を取得するとき”から、“タッチパネルコントローラ２４１がＣＰＵ２３１へタッチ検出位置データ３０５Ｄを出力するとき”までの間において、表示デバイス状態が変化してしまう可能性がある。この間に表示デバイス状態が変化してしまった場合、タッチ検出位置データ３０５Ｄと、当該データを生成するのに使用したスキャンデータ３０４との間で、参照する表示デバイス状態の情報に違い（齟齬）が生じ、後述する補正処理の精度を低下させることになる。
【００５４】
そこで、これを回避するために、本実施の形態では、タッチパネルコントローラ２４１は、タッチ検出位置データ３０５を生成するのに用いたスキャンデータ３０４取得時の表示デバイス状態通知３０１Ｃが示す表示状態を、表示デバイス状態データ３０５Ｓとして、ＣＰＵ２３１に与えるようにする。
【００５５】
（操作位置の検出）
タッチパネル１４０は、透明のガラス板および当該ガラス板の全面を覆う樹脂材料のフィルムを含み、両者は透明な電極格子を挟むようにして配置される。電極格子は、複数の電極が格子状に配列された２次元配列面を表す。２次元配列面は、Ｘ軸およびこれに直交するＹ軸で規定されるＸ，Ｙ座標平面に対応する。
【００５６】
電極格子はＬＣＤパネルの表示領域のサイズに整合したサイズを有する。ユーザは、指でタッチパネル１４０上のフィルムの点をタッチ（押圧操作）すると、圧力によりフィルムがたわみ、ガラス面側の電極と接触し、接触した電極の抵抗による分圧比の測定結果であるスキャンデータ３０４が出力される。
【００５７】
タッチパネルコントローラ２４１は、タッチパネル１４０から入力するスキャンデータ３０４から、電極格子における操作（押圧）位置を２次元座標値（Ｘ０，Ｙ０）として検出する。また、スキャンデータ３０４が示す値と所定の値とを比較し、比較結果から、操作体が操作面上にタッチ開始（タッチダウン）したかを検出し、またタッチ終了（タッチアップ）したかを検出し、またタッチムーブであるかを検出する。タッチムーブは、タッチダウンから直後のタッチアップまでの、操作面上をタッチしながらなぞる操作を示す。
【００５８】
また、ＬＣＤパネルは、複数の電極素子が２次元配列されて構成される。したがって、各電極素子を２次元座標値（ｘ１，ｙ１）により特定することができる。グラフィックメモリ２５４の画像データに基づく表示データ３０１Ｄは、ＬＣＤパネルの表示領域のサイズに整合するサイズを有した２次元配列のビットマップデータを表す。表示デバイスコントローラ２１４は当該画像データの各ビット値を表す表示データ３０１Ｄを出力する。ＬＣＤパネルは、表示データ３０１Ｄに基づき、各座標の電極素子に電圧を印加する。これにより、表示装置２１２には、グラフィックメモリ２５４の画像データに従う画像が表示される。
【００５９】
（操作位置の表示）
表示動作において、表示部２１０では画像に重畳して時系列に従い順次に検出した操作位置をによるストロークの軌跡などを表示することができる。具体的には、タッチパネルコントローラ２４１は時系列に従う順次の複数個の２次元座標値（Ｘ０，Ｙ０）からなるタッチ検出位置データ３０５Ｄを検出し、出力する。ＣＰＵ２３１はタッチ検出位置データ３０５Ｄから画像（ストロークの軌跡など）データ３００Ｄを生成し、グラフィックメモリ２５４に格納する。したがって、表示デバイスコントローラ２１４はＬＣＤパネルに、画像に重畳してユーザ操作によるストロークの軌跡などを表示する。
【００６０】
（発生するノイズと補正）
本実施の形態では、操作位置の検出精度を高めるために、ＬＣＤパネルからのノイズ成分に基づき、検出された操作位置を補正する。
【００６１】
ＬＣＤパネルに画像を表示しながら、タッチパネル１４０の操作位置を検出する場合には、スキャンデータ３０４にノイズが混入する。ノイズの原因は、『表示データ書換中』と『表示中』とでは相違する。
【００６２】
ノイズ原因は、表示データの書換えによる（ｉ）画素電圧の変化、（ｉｉ）ＬＣＤパネルのソースドライバ、ゲートドライバの動作、および（ｉｉｉ）その他のＬＣＤパネルに関連する回路の動作など、が挙げられる。『表示データ書換中』の主な原因は、（ｉ）および（ｉｉ）であるが、『表示中』の主な原因は、上記の（ｉｉｉ）である。このように『表示データ書換中』に比べて、『表示中』の方がノイズが小さい。
【００６３】
したがって、ＬＣＤパネルで「表示データ書換中」と表示データを書換えしていない「表示中」とでは、スキャンデータ３０４に対するノイズの影響度合いが異なるため、「表示中」に取得したタッチ検出位置データ３０５Ｄ（これをデータＩという）の方が、「表示データ書換中」に取得したタッチ検出位置データ３０５Ｄ（これをデータＩＩという）よりもデータの精度は高い。
【００６４】
そこで、本実施の形態では、表示デバイスの状態に依らずタッチ検出位置データ３０５Ｄの精度を得ることができるように、タッチ検出位置データ３０５を補正する。これを以下に説明する。
【００６５】
ＣＰＵ２３１がタッチ検出位置データ３０５Ｄの取得を開始し、取得の順番が、時系列的にデータＩ→データＩＩ→データＩＩＩ→…順次となった場合を想定する。
【００６６】
データＩを使用して、次位に検出されるデータＩＩを補正することにより、データＩＩの精度を向上させた補正後のデータＩＩｃを算出する。補正のための算出方法としては、データＩＩｃ＝(α×データＩ)＋(β×データＩＩ)のような加重平均の演算とする。この場合、先行して取得されているデータＩの方が精度は高いため、例えば、α＝０．７およびβ=０．３とする（パターン１という）。
【００６７】
その後、データＩＩの次に取得したタッチ検出位置データ３０５Ｄ（これをデータＩＩＩという）についての補正後のデータＩＩＩｃを、データＩＩＩｃ=（α×データＩＩｃ）+（β×データＩＩＩ）により算出する。
【００６８】
ここで、データＩＩＩが「表示データ書換中」に検出されている場合には、例えば、α＝０．６およびβ＝０．４とする（パターン２という）。つまり、先行しているデータＩＩｃの方が、その後に取得されるデータＩＩＩよりも若干精度が高いと考えられることから、重み付けを（α＞β）とする。一方、データＩＩＩが「表示中」に検出されている場合には、例えば、α＝０．４、β＝０．６とする（パターン３という）。つまり、データＩＩＩの方が先行して取得されているデータＩＩｃよりも若干精度が高いと考えられることから重み付けを（α＜β）とする。
【００６９】
なお、時系列的に順次に取得される上記のデータＩとデータＩＩが、ＬＣＤパネル１４０の同じ表示状態で取得されたときは、重み付けを（α＝β）とする。たとえば、α＝β＝０．５とする（これをパターン４という）。
【００７０】
このように、表示デバイスであるＬＣＤパネルの表示状態（データ書換中または表示中）により、より特定的にはＬＣＤパネルの表示動作に伴いスキャンデータ３４０に混入するノイズの大きさにより、重み付けの値（α、βの値）を動的に変更することで、高い精度で操作位置を検出することができる。
【００７１】
補正後の操作位置に基づく操作（描画）軌跡を示すストロークデータをグラフィックメモリ２５４に格納することで、補正後の軌跡を表示することができて、ユーザに対し正確な操作位置を提示することができる。
【００７２】
＜フローチャート＞
図４と図５は、本発明の実施の形態に係る処理フローチャートである。これらフローチャートに従うプログラムは予めＲＯＭ２５６などの記憶部に格納され、ＣＰＵがＲＯＭ２５６からプログラムを読出し、読出したプログラムの各命令コードを実行することにより処理が実現される。
【００７３】
ここでは、図４のフローチャートに従うプログラムは、タイマ２３２の計時に基づき定期的に繰返し実行される。プログラムの実行周期（実行間隔）は、ＬＣＤパネルの表示データの更新周期とは独立であって、可変に設定可能である。当該プログラムは、タッチパネルコントローラ２４１が休止状態のときなどは実行されない。
【００７４】
プログラム中で参照する変数として、現在の表示デバイス状態を示す変数DATA_X、過去の表示デバイス状態を示す変数DATA_Y、重み付け値を示す変数αおよびβ、補正前および後のタッチ検出位置を示す変数DATA_AおよびDATA_C、および過去のタッチ検出位置を示す変数DATA_Bを用いる。
【００７５】
これら変数は、フラッシュメモリ２５０またはＲＡＭ２５２の予め定められた記憶領域に格納されて、端末１００が電源ＯＮされたとき、およびタッチパネルコントローラ２４１が休止状態から動作状態に復帰するときに初期化される。たとえば、ＣＰＵ２３１は、変数DATA_Yには「表示データ書換中」および「表示中」の一方を設定し、これ以外の変数には値０を設定することにより初期化する。ここでは、変数DATA_Yには「表示中」が初期設定されるとする。
【００７６】
なお、初期化後に初めてスキャンデータ３０４が検出される場合は、ＣＰＵ２３１は、同時に入力する表示デバイス状態データ３０５Ｓを変数DATA_Yに設定するとともに、スキャンデータ３０４に基づくタッチ検出位置データ３０５Ｄを変数DATA_Cに設定する。なお、初期化後の初めてのタッチ検出位置データは補正しない。
【００７７】
ここでは初期化後の２回目のスキャンデータ３０４が検出される場合に、図４のフローチャートのプログラムが実行開始される場合を説明する。
【００７８】
まず、ＣＰＵ２３１はタッチパネルをスキャンするようにタッチパネルコントローラ２４１を制御する（ステップＳ３）。具体的には、タッチパネルコントローラ２４１は、制御信号３０３をタッチパネル１４０に出力し、タッチパネル１４０からはスキャンデータ３０４が出力される。
【００７９】
タッチパネルコントローラ２４１は、タッチパネル１４０からのスキャンデータ３０４を入力し（ステップＳ１１）、入力したスキャンデータ３０４に基づき操作位置を、すなわち補正前タッチ位置を算出し変数DATA_Aに設定する（ステップＳ１３）。
【００８０】
また、ＣＰＵ２３１は、タッチパネルコントローラ２４１から表示デバイス状態データ３０５Ｓを入力し（ステップＳ５）、入力した表示デバイス状態データ３０５Ｓと記憶領域から読出した変数DATA_Yの値とを用いて重み付けαとβの値を算出する（ステップＳ７）。
【００８１】
具体的には、変数DATA_Yが『表示中』を示し、表示デバイス状態データ３０５Ｓは『データ書換中』を示すと判定したときは、ＣＰＵ２３１はαとβに、上記のパターン１またはパターン２に従い値を設定する。また、変数DATA_Yと表示デバイス状態データ３０５Ｓがともに『表示中』を示すと判定したとき、または変数DATA_Yと表示デバイス状態データ３０５Ｓがともに『データ書換中』を示すと判定したときは、ＣＰＵ２３１はαとβに上記のパターン４に従い値を設定する。また、変数DATA_Yが『データ書換中』を示し、表示デバイス状態データ３０５Ｓは『表示中』を示すと判定したときは、ＣＰＵ２３１はαとβに、上記のパターン３に従い値を設定する。
【００８２】
ＣＰＵ２３１は、決定した重み付けα，βを用いて、上記の式（データＩＩｃ＝(α×データＩ)＋(β×データＩＩ)）に従って、補正後の変数DATA_Aを算出し、補正後の変数DATA_Aの値を、変数DATA_Cに設定する（ステップＳ９）。
【００８３】
なお、データＩＩは補正前の変数DATA_A（ステップＳ１３で設定した値）の値を示し、データＩＩｃは補正後の変数DATA_Aの値示し、データＩは記憶領域から読み出した変数DATA_Bの値を示す。
【００８４】
これにより、今回検出された操作位置を示すタッチ検出位置データ３０５Ｄは、ＬＣＤパネル１４０の表示状態に従って補正される。その後、図５の過去データの保存処理（ステップＳ１５）が実行される。
【００８５】
（過去データの保存処理）
図５を参照して、ＣＰＵ２３１は、今回取得した表示デバイス状態データ３０５Ｓを示す変数DATA_Xの値が、「表示データ書換中」を示すか否かを判定する（ステップＳ２１）。
【００８６】
「表示データ書換中」を示すと判定すると（ステップＳ２１でＹＥＳ）、記憶領域の変数DATA_Cの値を読出し、記憶領域の変数DATA_Bに上書きにより設定する（ステップＳ２３）が、「表示データ書換中」を示さないと判定すると（ステップＳ２１でＮＯ）、記憶領域の変数DATA_Aの値を読出し、記憶領域の変数DATA_Bに上書きにより設定する（ステップＳ２５）。
【００８７】
ステップＳ２３およびＳ２５の終了後は、ＣＰＵ２３１は、記憶領域の変数DATA_Xの値を読出し、記憶領域の変数DATA_Yに上書きにより設定する（ステップＳ２７）。その後は、図４に戻る。
【００８８】
図４に戻り、ＣＰＵ２３１は、タッチパネルをスキャンするようにタッチパネルコントローラ２４１を制御し、出力されるスキャンデータ３０４を取得し（ステップＳ３，Ｓ１１）、スキャンデータ３０４に基づき操作位置が、すなわち補正前タッチ位置が算出されて変数DATA_Aに設定される（ステップＳ１３）。また、ＣＰＵ２３１は、タッチパネルコントローラ２４１から表示デバイス状態データ３０５Ｓを入力し（ステップＳ５）、入力した表示デバイス状態データ３０５Ｓと記憶領域から読出した変数DATA_Yの値とを用いて重み付けαとβの値を算出する（ステップＳ７）。
【００８９】
ステップＳ９では、今回検出したスキャンデータ３０４をデータＩＩＩとして、補正後のデータＩＩＩｃを、上記のデータＩＩＩｃ=（α×データＩＩｃ）+（β×データＩＩＩ）に従って算出する。なお、データＩＩＩは補正前の変数DATA_A（ステップＳ１３で設定した値）の値を示し、データＩＩＩｃは補正後の変数DATA_Aの値示し、データＩＩｃは記憶領域から読み出した変数DATA_Bの値を示す。ＣＰＵ２３１は、補正後の変数DATA_Aの値を、変数DATA_Cに設定する（ステップＳ９）。
【００９０】
これにより、次位の検出された操作位置（データＩＩＩが示すタッチ検出位置データ３０５Ｄ）は、前回に検出された操作位置（データＩＩｃ）とＬＣＤパネル１４０の表示状態に従って補正されて、補正後の操作位置（データＩＩＩｃが示す補正後のタッチ検出位置データ３０５Ｄ）を取得することができる。その後、ＣＰＵ２３１は図５の過去データの保存処理（ステップＳ１５）を実行し、実行後は、再度、図４の処理に戻り、次位に検出される操作位置のタッチ検出位置データ３０５Ｄは、前回に検出された操作位置（データＩＩＩｃ）とＬＣＤパネル１４０の表示状態に従って補正されて、補正後の操作位置を取得することができる。
【００９１】
[実施の形態の変形例]
（変形例１）
上記の実施の形態では、操作受付部２４０によりタッチ検出位置データ３０５のためのスキャンデータ３０４が取得されるときの、検出条件から補正のためのパラメータ値（重み付け値（α，βの値））を決定している。
【００９２】
ここで、重み付け値（α，βの値）の決定方法は、表示デバイスの動作状態（データ書換中／表示中）に基づき決定する方法に限定されず、以下のような方法であってもよい。
【００９３】
たとえば、検出条件としてタッチ検出位置データ３０５Ｄ取得時のノイズの割合”を用いて、重み付け値（α，βの値）を決定してもよい。ノイズの割合とは、一般的なＳＮ比（Signal to Noise ratio）であって、スキャンデータ３０４中の操作体（静電容量）を検出している時のデータと、検出されていない時のデータの比で表される。
【００９４】
動作において、操作受付部２４０は、タッチパネル１４０からスキャンデータ３０４を入力すると、入力するスキャンデータ３０４から操作体を検出している時のデータと、検出されていない時のデータを抽出し、ＳＮ比を算出する。なお、操作体を検出するか否かは、スキャンデータ３０４が示す値と、予め定めた閾値とを比較することで判定する。
【００９５】
たとえば、操作体を検出している時のデータの値を“１００”、検出されていない時のデータの値を“１０”とするとき、ＳＮ比“１０”を算出する。同様に操作体を検出している時のデータの値を“１００”、検出されていない時のデータの値を“５０”と検出したとき、ＳＮ比“２”を算出する。この場合、ＳＮ比が“１０”のときの方が、“２”のときよりもタッチ検出位置データ３０５Ｄ取得時のノイズの割合は小さい、すなわちデータ精度（信頼度）が高いと言える。
【００９６】
操作受付部２４０は、算出したＳＮ比を表示デバイス状態データ３０５ＳとしてＣＰＵ２３１に出力する。ＣＰＵ２３１は、入力する表示デバイス状態データ３０５Ｓの値が“１０”を示すときに入力するタッチ検出位置データ３０５Ｄの重み付けを、“２”を示すときよりも大きくする。
【００９７】
また、検出条件として“タッチ検出位置データ３０５Ｄの取得時間間隔”を用いて、重み付け値（α，βの値）を決定してもよい。
【００９８】
この“取得時間間隔”は、図４のフローチャートを実行する時間間隔に一致する。プログラムを実行する時間間隔のデータは、ＲＡＭ２５２の所定記憶領域に格納されており、当該所定記憶領域からデータを読出すことで“取得時間間隔”を検出する。または、タイマ２３２を用いて実際のプログラムの実行間隔を計測することで取得するとしてもよい。
【００９９】
プログラム実行間隔が長い、すなわち取得時間間隔が大きい（長い）ときは「過去のタッチ検出位置データ３０５Ｄ」の重み付け値（α値）は小さくし、「補正前タッチ検出データ」の重み付け値（β値）は大きくする。「過去のタッチ検出位置データ」は変数DATA_Bを示し、「補正前タッチ検出データ」は変数DATA_Aを示す。
【０１００】
上記の重み付け値の決定方法は個別に適用するものに限定されず、２つ以上の方法を組合わせてもよい。
【０１０１】
（変形例２）
補正のためのパラメータ値は、重み付け値（α，βの値）に限定されない。たとえば、補正に用いる過去のタッチ検出位置データの数としてもよい。上記の実施の形態のように直前に検出された「過去のタッチ検出位置データ」の１個のみを用いる、直前および、その前に検出された２個分の「過去のタッチ検出位置データ」を用いる、３個以上の「過去のタッチ検出位置データ」を用いる、など可変に変更してもよい。この変更は、上記の検出条件に従って変更するとしてもよい。たとえば、利用する「過去のタッチ検出位置データ」が３個の場合、重み付けとして、α、β、γ、δのような４つを用いる。
【０１０２】
（変形例３）
上記の実施の形態では、ＣＰＵ２３１により“補正後タッチ検出位置データ算出”を実行したが、当該算出機能を操作受付部２４０、より特定的にはタッチパネルコントローラ２４１が備えるとしてもよい。
【０１０３】
本実施の形態では、操作面における操作された位置を示す位置データ（タッチ検出位置データ３０５Ｄ）を順次に検出するための操作受付部２４０と、操作受付部により位置データが検出されるときの、検出条件（表示デバイス状態）を取得するための条件取得部と、操作受付部により検出された位置データを補正するための補正部（ＣＰＵ２３１またはタッチパネルコントローラ２４１）のと、を備え、補正部は、操作受付部２４０により検出された位置データを、当該位置データが検出されたときに取得された検出条件と、当該位置データに先行して検出されて補正された先行位置データとから補正する。
【０１０４】
[他の実施の形態]
上述した実施の形態では、図４と図５のフローチャートに従うプログラムは、端末１００に付属するメモリカード１５２などのように、プロセッサ２３０のＣＰＵ２３１がメモリドライバ１５１を介して読取り可能な記録媒体に記録させて、プログラム製品として端末１００に提供することもできる。あるいは、ネットワークを介してアンテナ１２０により受信しＲＡＭ２５２の記憶領域へのダウンロードによって、プログラムを提供することもできる。
【０１０５】
提供されるプログラム製品は、プログラム自体と、プログラムが非一時的に記録された記録媒体とを含む。
【０１０６】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【符号の説明】
【０１０７】
１００  端末、１４０  タッチパネル、２１２  表示装置、２１４  表示デバイスコントローラ、２３０  プロセッサ、２３１  ＣＰＵ、、２４０  操作受付部、２４１  タッチパネルコントローラ、３００Ｄ  表示データ、３００Ｓ，３０１Ｃ，３０３  制御信号、３０２  表示デバイス状態通知、３０４  タッチ状態検知スキャンデータ、３０５Ｄ  タッチ検出位置データ、３０５Ｓ  表示デバイス状態データ。
【図１】
2014059738.tif 000003
【図２】
2014059738.tif 000004
【図３】
2014059738.tif 000005
【図４】
2014059738.tif 000006
【図５】
2014059738.tif 000007