(57)【特許請求の範囲】
【請求項１】
接触対象が実装された表示部を含む機器が有するプロセッサに、前記接触対象に対する接触操作による入力情報を受け付けさせるコンピュータプログラムであって、
前記プロセッサに、
前記接触対象に対して接触操作された接触領域の面積を表す情報を含む、前記接触領域の情報をタッチセンサより取得させると共に、前記機器自身の傾きを表す情報を取得させる取得ステップと、
前記取得ステップで取得した前記接触領域の面積および前記機器自身の傾きに基づいて、記憶部に記憶された情報を参照し、接触操作に連動して表示される操作対象指示子の表示位置として、前記接触領域から前記接触領域の面積および前記機器自身の傾きの組合せに対応する距離だけ隔てた位置を決定させる決定ステップと、
前記表示部の前記決定ステップで決定した位置に、前記操作対象指示子を表示させる表示指示を出力させる出力ステップと、
前記接触領域の移動に連動して、前記表示された操作対象指示子を移動させる移動ステップと、
接触操作が終了した時点の前記操作対象指示子の表示位置に対応する入力情報を受け付けさせる受付ステップと
を含むコンピュータプログラム。
【請求項２】
前記決定ステップは、前記接触領域の面積が所定の閾値以下である場合、前記操作対象指示子の表示を抑止し、
前記受付ステップは、前記接触操作が終了した時点の前記接触領域に対応する入力情報を受け付けさせる請求項１に記載のコンピュータプログラム。
【請求項３】
前記機器の操作状況を示す情報を取得させる状況取得ステップを含み、
前記決定ステップは、前記状況取得ステップで取得した情報及び前記取得ステップで取得した接触領域の情報に基づいて、操作対象指示子の表示態様を決定する請求項１または２に記載のコンピュータプログラム。
【請求項４】
前記取得ステップにて取得された接触領域の情報に基づいて、所定の条件に従って複数の接触領域に分類させる領域分類ステップを含み、
前記取得ステップは、前記領域分類ステップで分類された複数の接触領域のそれぞれの面積に応じて選択された１つの接触領域の情報を取得する請求項１〜３のいずれかひとつに記載のコンピュータプログラム。
【請求項５】
所定の接触対象に対する接触操作による入力情報を受け付ける入力装置において、
表示部と、
タッチセンサと、
記憶部と、
前記接触対象に対して接触操作された接触領域の面積を表す情報を含む、前記接触領域の情報を前記タッチセンサより取得すると共に、前記入力装置自身の傾きを表す情報を取得する取得手段と、
前記取得手段が取得した前記接触領域の面積および前記入力装置自身の傾きに基づいて、前記記憶部に記憶された情報を参照し、接触操作に連動して表示される操作対象指示子の表示位置として、前記接触領域から前記接触領域の面積および前記入力装置自身の傾きの組合せに対応する距離だけ隔てた位置を決定する決定手段と、
前記表示部の前記決定手段が決定した位置に、前記操作対象指示子を表示させる表示指示を出力する出力手段と、
前記接触操作が終了したことに応じて、接触操作が終了した時点の前記操作対象指示子の表示位置に基づいて、操作対象を特定する特定手段と、
前記特定した操作対象に対して、接触操作による入力情報を通知する通知手段と、
前記接触領域の移動に連動して、前記表示された操作対象指示子を移動させる移動手段と、
接触操作が終了した時点の前記操作対象指示子の表示位置に対応する入力情報を受け付ける受付手段と
を備える入力装置。
【請求項６】
接触対象が実装された表示部を含む機器において、前記接触対象に対する接触操作による入力情報を受け付ける入力方法であって、
前記接触対象に対して接触操作された接触領域の面積を表す情報をタッチセンサより取得すると共に、前記機器自身の傾きを表す情報を取得する取得ステップと、
前記取得ステップで取得した前記接触領域の面積および前記機器自身の傾きに基づいて、記憶部に記憶された情報を参照し、接触操作に連動して表示される操作対象指示子の表示位置として、前記接触領域から前記接触領域の面積および前記機器自身の傾きの組合せに対応する距離だけ隔てた位置を決定する決定ステップと、
前記表示部の前記決定ステップで決定した位置に、前記操作対象指示子を表示させる表示指示を出力する出力ステップと、
前記接触領域の移動に連動して、前記表示された操作対象指示子を移動させる移動ステップと、
接触操作が終了した時点の前記操作対象指示子の表示位置に対応する入力情報を受け付ける受付ステップと
を含む入力方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、接触操作によって入力情報を受け付ける入力装置をコンピュータで実現するためのコンピュータプログラム、入力装置及び入力方法に関する。
【背景技術】
【０００２】
近年、各種の電気機器では、タッチパネルによる入出力インタフェースが採用されている。タッチパネルは、画面に表示されたメニュー又はボタン等をユーザが指又は専用のペンで直接触れることで操作できるので、直感的な操作が可能であり、使い易いインタフェースである。【０００３】
タッチパネルは、ユーザが画面に短時間触れた場合に、触れた箇所に表示されていたメニュー又はボタンを操作対象として受け付ける。また、ユーザが画面に触れた場合に、触れた箇所の近傍にカーソルを表示させるタッチパネルも提案されている（特許文献１，２参照）。このようなタッチパネルを操作する場合、ユーザは、画面に触れた状態で指又はペンを移動させる。タッチパネルは、ユーザが触れている箇所の移動に応じてカーソルを移動させ、ユーザが画面との接触を終了させた場合に、終了直前にカーソルが指し示していたメニュー又はボタンを操作対象として受け付ける。
【特許文献１】特開平６−５１９０８号公報
【特許文献２】特開２００１−１９５１８７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
上述したようなタッチパネルでは、ユーザが触れた箇所に対応するメニュー又はボタンを精度よく判定することが要求される。例えば、タッチパネルが、ユーザが意図していないメニュー又はボタンを誤って操作対象として受け付けた場合、機器は、ユーザが意図していない動作を行なう。この場合の操作は誤操作となり、ユーザは操作をやり直す必要があるので操作性が悪化する。【０００５】
本発明は斯かる事情に鑑みてなされたものであり、その目的とするところは、ユーザの接触操作による接触領域に対応する操作対象を精度よく判定するためのコンピュータプログラム、入力装置及び入力方法を提供することにある。
【課題を解決するための手段】
【０００６】
本願に開示するコンピュータプログラムは、コンピュータに、所定の接触対象に対する接触操作による入力情報を受け付けさせるためのコンピュータプログラムである。本願に開示するコンピュータプログラムは、接触対象に対して接触操作された接触領域の情報を取得し、取得した接触領域の情報に基づいて、操作対象指示子の表示態様を決定し、決定した表示態様で操作対象指示子を表示させる表示指示を出力する処理をコンピュータに実行させる。【０００７】
本願に開示するコンピュータプログラムでは、所定の接触対象に対して接触操作された接触領域に応じた操作対象指示子の表示態様を決定することが可能となる。
【発明の効果】
【０００８】
本願は、接触操作された接触領域に応じた表示態様で操作対象指示子を表示させるので、機器の使用状況又はユーザの接触状況等の影響を受けず、適切な態様で操作対象指示子を表示できる。よって、ユーザの接触操作による接触領域に対応する操作対象を精度よく判定できる。
【図面の簡単な説明】
【０００９】
【図１】実施形態１の電気機器の構成例を示すブロック図である。
【図２】実施形態１の補正値ＤＢの格納内容を示す模式図である。
【図３】実施形態１の電気機器の機能構成例を示す機能ブロック図である。
【図４】実施形態１の表示画面例を示す模式図である。
【図５】実施形態１の入力情報受付処理の手順を示すフローチャートである。
【図６】実施形態１の入力情報受付処理の手順を示すフローチャートである。
【図７】実施形態２の表示画面例を示す模式図である。
【図８】実施形態２の入力情報受付処理の手順を示すフローチャートである。
【図９】実施形態２の入力情報受付処理の手順を示すフローチャートである。
【図１０】下限値ＤＢの格納内容を示す模式図である。
【図１１】実施形態３の電気機器の機能構成例を示す機能ブロック図である。
【図１２】実施形態３の入力情報受付処理の手順を示すフローチャートである。
【図１３】実施形態３の入力情報受付処理の手順を示すフローチャートである。
【図１４】実施形態４の補正値ＤＢの格納内容を示す模式図である。
【図１５】実施形態４の電気機器の機能構成例を示す機能ブロック図である。
【図１６】実施形態４の入力情報受付処理の手順を示すフローチャートである。
【図１７】実施形態４の入力情報受付処理の手順を示すフローチャートである。
【図１８】実施形態５の電気機器の外観を示す模式図である。
【図１９】実施形態５の電気機器の構成例を示すブロック図である。
【図２０】実施形態５の補正値ＤＢの格納内容を示す模式図である。
【図２１】実施形態６の電気機器の機能構成例を示す機能ブロック図である。
【図２２】クラスタリング処理を説明するための模式図である。
【図２３】実施形態６の入力情報受付処理の手順を示すフローチャートである。
【図２４】実施形態６の入力情報受付処理の手順を示すフローチャートである。
【図２５】実施形態７の電気機器の機能構成例を示す機能ブロック図である。
【図２６】補正値ＤＢの更新処理を説明するための模式図である。
【図２７】補正値ＤＢの更新処理を説明するための模式図である。
【図２８】実施形態７の入力情報受付処理の手順を示すフローチャートである。
【図２９】実施形態７の入力情報受付処理の手順を示すフローチャートである。
【図３０】実施形態７の入力情報受付処理の手順を示すフローチャートである。
【図３１】実施形態８の電気機器の構成例を示すブロック図である。
【符号の説明】
【００１０】
１０  電気機器（入力装置）
１  制御部
１１  接触点検出部
１２  接触領域算出部
１３  表示態様決定部
１４  カーソル表示指示部
４  記憶部
４ａ  補正値ＤＢ
６  タッチパネル
６０  表示部
６１  タッチセンサ
【発明を実施するための最良の形態】
【００１１】
以下に、本願に開示するコンピュータプログラム、入力装置及び入力方法を、タッチパネルを備えた電気機器を例とした各実施形態を示す図面に基づいて詳述する。本願に開示するコンピュータプログラムは、ユーザインタフェース用のミドルウェアであるＵＩミドルウェアとして各電気機器に提供される。しかし、本願に開示するコンピュータプログラムは、このような構成には限られず、例えば、Windows（登録商標）、Ｌｉｎｕｘ等のＯＳ（Operating System）ソフトウェアに組み込まれる形で提供されてもよい。また、本願に開示するコンピュータプログラムは、計算機ソフトウェア又はメーラー等のアプリケーションソフトウェアに組み込まれる形で提供されてもよい。【００１２】
本願に開示する入力装置は、本願に開示するコンピュータプログラムを、タッチパネルを備えた電気機器に読み取らせて実行させることによって実現される。
なお、タッチパネルを備えた電気機器としては、例えば、公知のタブレット型のパーソナルコンピュータ、クラウドコンピューティングシステムを利用する際に用いる端末装置等がある。また、タッチパネルを備えた電気機器としては、携帯電話機、ＰＨＳ（Personal Handy-phone System）、ＰＤＡ（Personal Digital Assistants）、携帯ゲーム機等の携帯端末がある。更に、タッチパネルを備えた電気機器としては、コピー機、プリンタ、ファクシミリ装置、複合機、カーナビゲーション装置、デジタルカメラ等の機器がある。【００１３】
また、コンビニエンスストア等に設置され、各種のデータのダウンロードが可能なマルチメディアステーション装置、銀行に設置された現金自動預け払い機（ＡＴＭ(Automatic Teller Machine）装置）等も、本願の入力装置を実現できる。更に、各種の自動販売機及び自動券売機、各種の案内板、レストランに設置された注文システム、図書館に設置された貸し出しシステム等も、本願の入力装置を実現できる。【００１４】
（実施形態１）
以下に、実施形態１に係る電気機器について説明する。図１は実施形態１の電気機器の構成例を示すブロック図である。本実施形態１の電気機器１０は、例えばパーソナルコンピュータであり、制御部１、ＲＯＭ（Read Only Memory）２、ＲＡＭ（Random Access Memory）３、記憶部４、各種処理部５、タッチパネル６等を備える。これらのハードウェア各部はそれぞれバス１ａを介して相互に接続される。【００１５】
本実施形態１の電気機器１０は、本願に開示するコンピュータプログラムをＲＯＭ２又は記憶部４に予め格納しており、制御部１がこのコンピュータプログラムを実行することによって本願に開示する入力装置としての動作を実現する。なお、本願に開示するコンピュータプログラムがＵＩミドルウェアとしてＲＯＭ２に格納されている場合には、制御部１は、ＯＳソフトウェアを実行させた後、ＯＳ上でＵＩミドルウェアを実行させる。【００１６】
また、本願に開示するコンピュータプログラムがＯＳソフトウェアに組み込まれてＲＯＭ２に格納されている場合には、制御部１は、ＯＳソフトウェアの実行の際に、本願に開示するコンピュータプログラムも実行させる。また、本願に開示するコンピュータプログラムがアプリケーションソフトウェアに組み込まれてＲＯＭ２又は記憶部４に格納されている場合には、制御部１は、アプリケーションソフトウェアの実行の際に、本願に開示するコンピュータプログラムも実行させる。【００１７】
制御部１は、ＣＰＵ（Central Processing Unit）又はＭＰＵ（Micro Processor Unit）等であり、所定のタイミングに従って、ＲＯＭ２又は記憶部４に予め格納してある制御プログラムを適宜ＲＡＭ３に読み出して実行する。また制御部１は、上述したハードウェア各部の動作を制御する。ＲＯＭ２は、電気機器１０として動作するために必要な種々の制御プログラムを予め格納している。ＲＡＭ３はＳＲＡＭ又はフラッシュメモリ等であり、制御部１による制御プログラムの実行時に発生する種々のデータを一時的に記憶する。【００１８】
記憶部４は、例えばハードディスクドライブ又はフラッシュメモリ等である。記憶部４は、電気機器１０として動作するために必要な種々の制御プログラムを予め格納している。また、記憶部４は、図２に示すような補正値データベース（以下、補正値ＤＢという）４ａを格納している。補正値ＤＢ４ａの詳細については後述する。【００１９】
各種処理部５は、制御部１からの指示に従って各種の処理を実行する。なお、各種の処理とは、電気機器１０が実行可能な処理であり、電気機器１０がパーソナルコンピュータであればパーソナルコンピュータとして実行可能な処理である。また、電気機器１０が携帯電話機であれば、各種処理部５は、例えば、音声データを送受信する通話処理、電子メールを送受信するデータ通信処理等の処理を行なう。【００２０】
タッチパネル６は、表示部６０及びタッチセンサ６１を備える。表示部６０及びタッチセンサ６１はそれぞれバス１ａに接続されている。
表示部６０は、例えば液晶ディスプレイであり、制御部１からの指示に従って、電気機器１０の動作状態、ユーザに対して通知すべき情報等を表示する。また、表示部６０は、電気機器１０がタッチパネル６を介して受け付けるべき各種の情報に対応付けられた各種のボタン及びメニュー等を表示する。【００２１】
タッチセンサ６１は、ユーザがタッチパネル６をタッチ操作（接触操作）したか否かを検出する。具体的には、タッチセンサ６１は、例えば、押下された圧力を検出する圧力センサ、押下された箇所における静電容量の変化を検出する静電容量式センサ等である。タッチセンサ６１は、ユーザがタッチパネル６をタッチ操作することによって変化する検出信号を制御部１へ送出する。なお、タッチセンサ６１は、タッチパネル６上の接触箇所を赤外線又は超音波等を用いて検出する各種のセンサであってもよい。また、タッチパネル６の表面をカメラによって撮像し、得られた画像に基づいて、タッチパネル６上の接触箇所を検出する画像処理センサを用いてもよい。【００２２】
図２は実施形態１の補正値ＤＢ４ａの格納内容を示す模式図である。図２に示すように、補正値ＤＢ４ａには、接触領域の面積に対応させて補正値がそれぞれ格納されている。接触領域の面積は、ユーザがタッチパネル６をタッチ操作する際にユーザがタッチパネル６に接触している領域の面積である。補正値は、ユーザがタッチパネル６をタッチ操作している場合に表示されるカーソル（操作対象指示子）の表示態様を決定する際に用いる数値である。補正値ＤＢ４ａには、各接触領域の面積に対して最適な補正値が予め格納される。なお、図２に示す補正値ＤＢ４ａでは、接触領域の面積を示す数値として適宜の範囲が設定されているが、１pixel2 毎に補正値を設定してもよい。【００２３】
以下に、本実施形態１の電気機器１０において、制御部１が、ＲＯＭ２又は記憶部４に格納されている制御プログラムを実行することによって実現する機能について説明する。図３は実施形態１の電気機器１０の機能構成例を示す機能ブロック図、図４は実施形態１の表示画面例を示す模式図である。【００２４】
図４（ａ）は、計算機ソフトを電気機器１０で実行させた場合にタッチパネル６に表示される画面例を示し、ユーザが自身の指ｙでタッチパネル６をタッチ操作している状態を示す。なお、図４（ａ）には矢印形状のカーソルｃが図示されているが、ユーザの指ｙがタッチパネルに接触する前にはカーソルｃはタッチパネル６に表示されない。図４（ｂ）は、図４（ａ）に示した画面例においてユーザがタッチ操作している箇所の拡大図である。なお、図４（ｂ）中の黒丸はユーザの指ｙがタッチパネル６に接触している接触点を模式的に示す。【００２５】
本実施形態１の電気機器１０において、制御部１は、ＲＯＭ２又は記憶部４に格納されている制御プログラムを実行することによって、接触点検出部１１、接触領域算出部１２、表示態様決定部１３、カーソル表示指示部１４、操作対象特定部１５、入力情報受付部１６、タッチ終了検知部１７等の機能を実現する。【００２６】
接触点検出部１１は、タッチセンサ６１から出力される検出信号を取得する。接触点検出部１１は、タッチセンサ６１からの検出信号に基づいて、タッチパネル６においてユーザがタッチ操作している箇所を検出する。具体的には、接触点検出部１１は、タッチセンサ６１からの検出信号に基づいて、ユーザがタッチ操作している箇所（接触点）を、所定の基準点を基準とした座標の情報（座標値）として取得する。【００２７】
図４に示す状況では、接触点検出部１１は、図４（ｂ）に黒丸で示した各接触点の座標値を取得する。接触点検出部１１は、検出した全ての接触点の座標値を接触領域算出部１２及びタッチ終了検知部１７へ送出する。なお、基準点（０，０）は、例えば、タッチパネル６の表示領域の左上の点であり、各接触点の座標値は、基準点（０，０）から右方向をｘ座標軸とし、下方向をｙ座標軸とした座標値（ｘ，ｙ）で表される。また、タッチパネル６の表示領域の右上の点、左下の点又は右下の点を基準点としてもよい。【００２８】
接触領域算出部１２は、接触点検出部１１から全ての接触点の座標値を取得する。接触領域算出部（領域取得手段）１２は、全ての接触点の座標値に基づいて、全ての接触点を含み、最小サイズとなる矩形の領域（接触領域）を特定し、特定した接触領域の面積を算出する。図４（ｂ）に示す状況では、接触領域算出部１２は、全ての黒丸を含み、最小サイズとなる接触領域Ｒ０を特定し、特定した接触領域Ｒ０の面積を算出する。接触領域算出部１２は、特定した接触領域Ｒ０の形状及び面積を表示態様決定部１３に通知する。【００２９】
なお、接触領域Ｒ０の形状は、例えば、接触領域Ｒ０の各頂点の座標値を用いて通知される。また、接触点検出部１１から１つの接触点の座標値しか取得しなかった場合、接触領域算出部１２は、接触点検出部１１から取得した接触点の座標値を接触領域Ｒ０の形状として表示態様決定部１３に通知する。【００３０】
表示態様決定部１３は、接触領域算出部１２から通知された接触領域Ｒ０の形状及び面積を取得する。表示態様決定部（決定手段）１３は、取得した接触領域Ｒ０の形状及び面積に基づいて、表示部６０に表示させるカーソルの表示態様を決定する。なお、表示態様決定部１３は、カーソルの表示態様として、カーソルの先端の位置の座標値と、カーソルが指し示す方向とを決定する。【００３１】
表示態様決定部１３は、まず、補正値ＤＢ４ａの格納内容に基づいて、取得した接触領域Ｒ０の面積に応じた補正値を特定する。具体的には、表示態様決定部１３は、補正値ＤＢ４ａに格納されている接触領域の面積から、接触領域Ｒ０の面積を含む範囲を特定し、特定した範囲に対応する補正値を補正値ＤＢ４ａから読み出す。【００３２】
ここで、図２に示す補正値ＤＢ４ａには、接触領域の面積「１」に対応する補正値が格納されていない。よって、接触領域Ｒ０の面積として「１」を接触領域算出部１２から通知された場合、表示態様決定部１３は、補正値ＤＢ４ａに格納されている接触領域の面積から、接触領域Ｒ０の面積を含む範囲を特定できない。【００３３】
従って、表示態様決定部１３は、接触領域Ｒ０の形状及び面積を取得した場合、まず、取得した面積が、補正値ＤＢ４ａに格納されている接触領域の面積の最小値（図２では「２」）未満であるか否かを判断する。取得した面積が、補正値ＤＢ４ａに格納されている接触領域の面積の最小値未満であると判断した場合、表示態様決定部１３は、接触領域Ｒ０の形状として接触領域算出部１２から通知された接触点の座標値を操作対象特定部１５に通知する。【００３４】
なお、補正値ＤＢ４ａの格納内容は図２に示した例に限られず、補正値ＤＢ４ａに格納される接触領域の面積の最小値も「２」に限られない。例えば、補正値ＤＢ４ａに格納される接触領域の面積の最小値が「４」であるとする。この場合、表示態様決定部１３は、接触領域算出部１２から通知された接触領域Ｒ０の面積が１〜３であれば、接触領域算出部１２から通知された接触領域Ｒ０の形状を操作対象特定部１５に通知する。なお、表示態様決定部１３は、接触領域Ｒ０の形状として、接触領域算出部１２から通知された各接触点の座標値を操作対象特定部１５に通知する。【００３５】
取得した面積が、補正値ＤＢ４ａに格納されている接触領域の面積の最小値以上であると判断した場合、表示態様決定部１３は、取得した接触領域Ｒ０の面積に応じた補正値を補正値ＤＢ４ａから読み出す。【００３６】
次に表示態様決定部１３は、接触領域算出部１２から通知された接触領域Ｒ０の形状に基づいて、接触領域Ｒ０の上方の長辺の中央位置の座標値を算出する。表示態様決定部１３は、接触領域Ｒ０の上方の長辺の中央位置から、この長辺に垂直な方向に、補正値ＤＢ４ａから読み出した補正値だけ隔てた位置の座標値を算出する。なお、接触領域Ｒ０の上方の長辺の中央位置から補正値だけ隔てた位置が、矢印形状のカーソルの先端位置となる。【００３７】
表示態様決定部１３は、カーソルの先端位置の座標値と、接触領域Ｒ０の上方の長辺の中央位置の座標値とをカーソル表示指示部１４に通知する。なお、カーソルの先端位置と、接触領域Ｒ０の長辺の中央位置とを接続した直線の方向が、カーソルが指し示す方向となる。また、表示態様決定部１３は、カーソルの先端位置の座標値を操作対象特定部１５に通知する。【００３８】
カーソル表示指示部１４は、カーソルの先端位置の座標値と、接触領域Ｒ０の長辺の中央位置の座標値とを表示態様決定部１３から取得する。カーソル表示指示部１４（出力手段）は、表示態様決定部１３から通知された表示態様でカーソルを表示させるための表示指示を表示部６０へ出力する。具体的には、カーソル表示指示部１４は、通知されたカーソルの先端位置の座標値をカーソルの先端位置の座標値とし、カーソルの先端位置と接触領域Ｒ０の長辺の中央位置とを接続した直線上にカーソルを配置させる表示指示を表示部６０へ出力する。【００３９】
これにより、表示部６０は、図４（ｂ）に示すように、ユーザの指ｙの接触領域Ｒ０から、接触領域Ｒ０の面積に応じた補正値ｈを隔てた位置を先端位置としたカーソルＣを表示できる。
なお、カーソルＣの長さ及び先端の形状等の情報は予めＲＯＭ２又は記憶部４に格納されている。従って、カーソル表示指示部１４は、ＲＯＭ２又は記憶部４に格納されているカーソルの情報を読み出し、読み出した情報が示す形状のカーソルＣの表示指示を表示部６０へ出力する。【００４０】
接触点検出部１１、接触領域算出部１２、表示態様決定部１３及びカーソル表示指示部１４は、タッチセンサ６１から検出信号が出力されている間、上述した各処理を行なう。これにより、ユーザがタッチ操作する際の接触領域Ｒ０の面積及び位置に応じて適切なカーソルＣが表示される。【００４１】
操作対象特定部１５は、表示態様決定部１３から接触領域Ｒ０の形状として接触点の座標値を通知された場合、通知された接触点の座標値に基づいて、この接触点に対応する操作対象を特定する。【００４２】
なお、タッチパネル６に表示される操作ボタン及びメニュー等の操作対象の表示位置及び表示サイズ等の情報は、アプリケーションプログラム内で設定されている。各操作対象の表示位置の情報は、例えば、操作対象の表示領域の左上の点の座標値であり、基準点（０，０）から右方向をｘ座標軸とし、下方向をｙ座標軸とした座標値（ｘ，ｙ）で表される。なお、基準点（０，０）は、例えば、タッチパネル６の表示領域の左上の点であるが、タッチパネル６の表示領域の右上の点、左下の点又は右下の点を基準点としてもよい。【００４３】
従って、操作対象特定部１５は、各操作対象の表示位置の情報を取得し、取得した情報と、表示態様決定部１３から通知された接触点の座標値とに基づいて、この接触点を表示領域に含む操作対象を特定する。操作対象特定部１５は、表示態様決定部１３から通知された接触点を表示領域に含む操作対象を特定した場合、特定した操作対象を入力情報受付部１６に通知する。なお、ユーザが操作対象の表示領域ではない箇所をタッチ操作している場合には、表示態様決定部１３から通知された接触点を表示領域に含む操作対象は特定できない。従って、操作対象を特定できない場合は、操作対象特定部１５は、何も行なわない。【００４４】
入力情報受付部１６は、操作対象特定部１５から通知された操作対象に対応する情報を特定し、特定した情報を入力情報として受け付ける。なお、各操作対象に対応する情報もアプリケーションプログラム内で設定されている。これにより、ユーザによってタッチ操作された接触領域Ｒ０の面積が、補正値ＤＢ４ａに格納された接触領域の面積の最小値未満の面積であれば、接触領域Ｒ０に対応する位置に表示されていた操作対象が操作されたと特定される。【００４５】
タッチ終了検知部１７は、接触点検出部１１から取得する接触点の座標値に基づいて、ユーザによるタッチ操作が終了したか否かを判断する。具体的には、タッチ終了検知部１７は、接触点検出部１１から接触点の座標値の通知が終了した場合、ユーザによるタッチ操作が終了したことを検知する。タッチ終了検知部１７は、ユーザによるタッチ操作が終了したことを検知した場合、タッチ操作が終了した旨を操作対象特定部１５に通知する。【００４６】
操作対象特定部１５は、上述したように、表示態様決定部１３からカーソルの先端位置の座標値を通知されている。操作対象特定部１５は、カーソルの先端位置の座標値を通知されている状況で、タッチ終了検知部１７からタッチ操作の終了を通知された場合、通知されたカーソルの先端位置の座標値に基づいて、この先端位置に対応する操作対象を特定する。【００４７】
具体的には、操作対象特定部１５は、各操作対象の表示位置の情報と、表示態様決定部１３から通知されたカーソルの先端位置の座標値とに基づいて、カーソルの先端位置を表示領域に含む操作対象を特定する。操作対象特定部１５は、カーソルの先端位置を表示領域に含む操作対象を特定した場合、特定した操作対象を入力情報受付部１６に通知する。なお、操作対象の表示領域ではない箇所をカーソルが指し示している状態でユーザがタッチ操作を終了した場合には、カーソルの先端位置を表示領域に含む操作対象は特定できない。従って、操作対象を特定できない場合は、操作対象特定部１５は、何も行なわない。【００４８】
入力情報受付部１６は、操作対象特定部１５から通知された操作対象に対応する情報を特定し、特定した情報を入力情報として受け付ける。これにより、ユーザによるタッチ操作が終了した時点でカーソルＣが指し示す位置に表示されていた操作対象が操作されたと特定される。【００４９】
以下に、本実施形態１の電気機器１０において、ユーザがタッチ操作している際に、制御部１が行なう処理についてフローチャートに基づいて説明する。なお、ユーザがタッチ操作している際に制御部１が行なう処理は、カーソルを表示させる処理、タッチ操作による入力情報を受け付ける処理である。図５及び図６は実施形態１の入力情報受付処理の手順を示すフローチャートである。以下の処理は、電気機器１０のＲＯＭ２又は記憶部４に格納されている制御プログラムに従って制御部１によって実行される。【００５０】
制御部１は、タッチセンサ６１からの検出信号に基づいて、ユーザによってタッチパネル６をタッチ操作されたか否かを検出しており（Ｓ１）、タッチ操作されたことを検出していない場合（Ｓ１：ＮＯ）、他の処理を行ないつつ待機する。タッチ操作されたことを検出した場合（Ｓ１：ＹＥＳ）、制御部１は、ユーザがタッチ操作している接触点の座標値を取得する（Ｓ２）。【００５１】
制御部１は、取得した接触点の座標値に基づいて、全ての接触点を含み、最小サイズとなる矩形の接触領域Ｒ０を特定する（Ｓ３）。制御部１は、特定した接触領域Ｒ０の面積を算出する（Ｓ４）。制御部１は、算出した面積が、補正値ＤＢ４ａに格納されている接触領域の面積の最小値未満であるか否かを判断する（Ｓ５）。算出した面積が最小値未満であると判断した場合（Ｓ５：ＹＥＳ）、制御部１は、ステップＳ３で特定した接触領域Ｒ０に対応する操作対象を特定し、対応する操作対象を特定できたか否かを判断する（Ｓ６）。具体的には、制御部１は、接触領域Ｒ０を表示領域に含む操作対象を特定し、特定できたか否かを判断する。【００５２】
制御部１は、操作対象を特定できなかったと判断した場合（Ｓ６：ＮＯ）、ステップＳ１に処理を戻す。操作対象を特定できたと判断した場合（Ｓ６：ＹＥＳ）、制御部１は、特定した操作対象に対応する入力情報を受け付け（Ｓ７）、処理を終了する。【００５３】
ステップＳ４で算出された面積が最小値以上であると判断した場合（Ｓ５：ＮＯ）、制御部１は、算出した面積に応じた補正値を補正値ＤＢ４ａから読み出す（Ｓ８）。制御部１は、ステップＳ３で特定した接触領域Ｒ０の形状と、補正値ＤＢ４ａから読み出した補正値とに基づいて、タッチパネル６に表示すべきカーソルＣの表示態様を決定する（Ｓ９）。具体的には、制御部１は、接触領域Ｒ０の上方の長辺の中央位置の座標値と、接触領域Ｒ０の上方の長辺の中央位置から、この長辺に垂直な方向に、補正値ＤＢ４ａから読み出した補正値だけ隔てた位置の座標値とを算出する。【００５４】
制御部１は、ステップＳ９で決定した表示態様でカーソルＣを表示させるための表示指示を表示部６０へ出力し、カーソルＣを表示部６０に表示させる（Ｓ１０）。制御部１は、タッチセンサ６１からの検出信号に基づいて、ユーザによるタッチ操作が終了されたか否かを検出しており（Ｓ１１）、タッチ操作が終了されたことを検出していない場合（Ｓ１１：ＮＯ）、ステップＳ１に処理を戻す。【００５５】
制御部１は、タッチ操作が終了されたことを検出するまで、ステップＳ１からＳ１０の処理を繰り返す。タッチ操作が終了されたことを検出した場合（Ｓ１１：ＹＥＳ）、制御部１は、その時点で表示されていたカーソルＣの先端位置の座標値を取得する（Ｓ１２）。制御部１は、取得したカーソルＣの先端位置に対応する操作対象を特定し、対応する操作対象を特定できたか否かを判断する（Ｓ１３）。具体的には、制御部１は、カーソルＣの先端位置を表示領域に含む操作対象を特定し、特定できたか否かを判断する。【００５６】
制御部１は、操作対象を特定できなかったと判断した場合（Ｓ１３：ＮＯ）、ステップＳ１に処理を戻す。操作対象を特定できたと判断した場合（Ｓ１３：ＹＥＳ）、制御部１は、特定した操作対象に対応する入力情報を受け付け（Ｓ１４）、処理を終了する。【００５７】
上述したように、本実施形態１では、ユーザがタッチ操作している場合、ユーザがタッチパネル６に接触している接触領域の面積に応じた位置にカーソルが表示される。これにより、ユーザの指によって隠れる位置にカーソルが表示されることを防止しつつ、ユーザの指から離れた位置にカーソルが表示されることを防止できる。よって、タッチパネル６を操作する際の操作性を向上させることができる。【００５８】
また、本実施形態１では、ユーザによる接触領域の面積が、補正値ＤＢ４ａに格納された接触領域の面積の最小値未満である場合には、カーソルを表示させずに、ユーザがタッチ操作した箇所に表示されていた操作対象をそのまま選択する。これにより、例えば、ペン等のように先端が細いものでタッチ操作した場合には、タッチ操作された箇所に表示されていた操作対象がそのまま選択されるので、直感的な操作が可能である。【００５９】
本実施形態１の制御部１は、ユーザによる接触領域Ｒ０の面積に応じた補正値を補正値ＤＢ４ａに基づいて特定していた。このような構成に限られず、例えば、接触領域Ｒ０の面積に応じた補正値を算出するための計算式を予め設定しておき、制御部１が、計算式を用いて接触領域Ｒ０の面積に応じた補正値を算出してもよい。【００６０】
（実施形態２）
以下に、実施形態２に係る電気機器について説明する。なお、本実施形態２の電気機器は、上述した実施形態１の電気機器１０と同様の構成によって実現することができるので、同様の構成については同一の符号を付して説明を省略する。【００６１】
上述した実施形態１では、ユーザがタッチパネル６に接触している接触領域の上方の長辺の中央位置から、補正値ＤＢ４ａから特定した補正値だけ離れた位置をカーソルの先端位置としていた。本実施形態２では、接触領域の面積が所定値未満である場合に、接触領域の上方の長辺の中央位置から、補正値ＤＢ４ａから特定した補正値だけ離れた位置をカーソルの先端位置とする。そして、接触領域の面積が所定値以上となった場合には、接触領域の上方の短辺の中央位置から、補正値ＤＢ４ａから特定した補正値だけ離れた位置をカーソルの先端位置とする。【００６２】
図７は実施形態２の表示画面例を示す模式図である。図７（ａ）は、計算機ソフトを電気機器１０で実行させた場合にタッチパネル６に表示される画面例を示し、ユーザが自身の指ｙでタッチパネル６をタッチ操作している状態を示す。図７（ｂ）は、図７（ａ）に示した画面例においてユーザがタッチ操作している箇所の拡大図である。なお、図７（ｂ）中の黒丸はユーザの指ｙがタッチパネル６に接触している接触点を模式的に示す。【００６３】
本実施形態２の表示態様決定部１３は、上述の実施形態１の表示態様決定部１３と同様に、接触領域算出部１２によって算出された接触領域Ｒ０の形状及び面積を取得する。本実施形態２の表示態様決定部１３は、まず、取得した接触領域Ｒ０の面積が、補正値ＤＢ４ａに格納された接触領域の面積の最小値未満であるか否かを判断する。取得した面積が最小値未満であると判断した場合、表示態様決定部１３は、接触領域Ｒ０の形状として接触領域算出部１２から通知された接触点の座標値を操作対象特定部１５に通知する。【００６４】
取得した面積が最小値以上であると判断した場合、表示態様決定部１３は、取得した接触領域Ｒ０の面積に応じた補正値を補正値ＤＢ４ａから読み出す。次に表示態様決定部１３は、取得した接触領域Ｒ０の面積が所定値以上であるか否かを判断する。なお、所定値はＲＯＭ２又は記憶部４に予め格納されており、例えば３０pixel2 である。なお、この所定値は、ユーザによって変更可能としてもよい。【００６５】
取得した面積が所定値以上であると判断した場合、表示態様決定部１３は、接触領域算出部１２から通知された接触領域Ｒ０の形状に基づいて、接触領域Ｒ０の上方の短辺の中央位置の座標値を算出する。表示態様決定部１３は、接触領域Ｒ０の上方の短辺の中央位置から、この短辺に垂直な方向に、補正値ＤＢ４ａから読み出した補正値だけ隔てた位置の座標値を算出する。なお、接触領域Ｒ０の上方の短辺の中央位置から補正値だけ隔てた位置が、この場合のカーソルの先端位置となる。【００６６】
表示態様決定部１３は、カーソルの先端位置の座標値と、接触領域Ｒ０の上方の短辺の中央位置の座標値とをカーソル表示指示部１４に通知する。なお、カーソルの先端位置と、接触領域Ｒ０の短辺の中央位置とを接続した直線の方向が、カーソルが指し示す方向となる。また、表示態様決定部１３は、カーソルの先端位置の座標値を操作対象特定部１５に通知する。【００６７】
一方、取得した面積が所定値（例えば３０pixel2）未満であると判断した場合、表示態様決定部１３は、接触領域算出部１２から通知された接触領域Ｒ０の形状に基づいて、接触領域Ｒ０の上方の長辺の中央位置の座標値を算出する。表示態様決定部１３は、接触領域Ｒ０の上方の長辺の中央位置から、この長辺に垂直な方向に、補正値ＤＢ４ａから読み出した補正値だけ隔てた位置の座標値を算出する。なお、接触領域Ｒ０の上方の長辺の中央位置から補正値だけ隔てた位置が、この場合のカーソルの先端位置となる。【００６８】
表示態様決定部１３は、カーソルの先端位置の座標値と、接触領域Ｒ０の上方の長辺の中央位置の座標値とをカーソル表示指示部１４に通知する。なお、カーソルの先端位置と、接触領域Ｒ０の長辺の中央位置とを接続した直線の方向が、カーソルが指し示す方向となる。また、表示態様決定部１３は、カーソルの先端位置の座標値を操作対象特定部１５に通知する。【００６９】
本実施形態２のカーソル表示指示部１４は、カーソルの先端位置の座標値と、接触領域Ｒ０の短辺（又は長辺）の中央位置の座標値とを表示態様決定部１３から取得する。カーソル表示指示部１４は、通知されたカーソルの先端位置の座標値をカーソルの先端位置の座標値とし、カーソルの先端位置と接触領域Ｒ０の短辺（又は長辺）の中央位置とを接続した直線上にカーソルを配置させる表示指示を表示部６０へ出力する。【００７０】
これにより、ユーザの指ｙの接触領域Ｒ０の面積が所定値（３０pixel2 ）以上である場合には、図７（ｂ）に示すように、接触領域Ｒ０の上方の短辺から補正値ｈを隔てた位置を先端位置としたカーソルＣが表示される。また、ユーザの指ｙの接触領域Ｒ０の面積が所定値未満である場合には、図４（ｂ）に示すように、接触領域Ｒ０の上方の長辺から補正値ｈを隔てた位置を先端位置としたカーソルＣが表示される。【００７１】
ユーザが指ｙでタッチ操作を行なっている場合、接触領域Ｒ０の面積が所定値以上であれば、指の腹の広い箇所を用いてタッチ操作を行なっている可能性が高い。また、接触領域Ｒ０の面積が所定値未満であれば、指先でタッチ操作を行なっている可能性が高い。従って、接触領域Ｒ０の面積が所定値以上であるか否かに応じて、接触領域Ｒ０の上方の短辺又は長辺から垂直方向にカーソルＣを表示させることによって、指ｙのどの部分でタッチ操作した場合であっても、指ｙの方向とカーソルＣの方向を一致させることができる。よって、ユーザの指ｙの状態に応じてより見易いカーソルＣを表示させることができる。【００７２】
なお、本実施形態２の表示態様決定部１３以外の各部は、上述の実施形態１で説明した処理と同一の処理を行なう。【００７３】
以下に、本実施形態２の電気機器１０において、ユーザがタッチ操作している際に制御部１が行なう処理についてフローチャートに基づいて説明する。図８及び図９は実施形態２の入力情報受付処理の手順を示すフローチャートである。以下の処理は、電気機器１０のＲＯＭ２又は記憶部４に格納されている制御プログラムに従って制御部１によって実行される。【００７４】
制御部１は、タッチセンサ６１からの検出信号に基づいて、ユーザによってタッチパネル６をタッチ操作されたか否かを検出しており（Ｓ２１）、タッチ操作されたことを検出していない場合（Ｓ２１：ＮＯ）、他の処理を行ないつつ待機する。タッチ操作されたことを検出した場合（Ｓ２１：ＹＥＳ）、制御部１は、ユーザがタッチ操作している接触点の座標値を取得する（Ｓ２２）。【００７５】
制御部１は、取得した接触点の座標値に基づいて、全ての接触点を含み、最小サイズとなる矩形の接触領域Ｒ０を特定する（Ｓ２３）。制御部１は、特定した接触領域Ｒ０の面積を算出する（Ｓ２４）。制御部１は、算出した面積が、補正値ＤＢ４ａに格納されている接触領域の面積の最小値未満であるか否かを判断する（Ｓ２５）。算出した面積が最小値未満であると判断した場合（Ｓ２５：ＹＥＳ）、制御部１は、ステップＳ２３で特定した接触領域Ｒ０に対応する操作対象を特定し、対応する操作対象を特定できたか否かを判断する（Ｓ２６）。具体的には、制御部１は、接触領域Ｒ０を表示領域に含む操作対象を特定し、特定できたか否かを判断する。【００７６】
制御部１は、操作対象を特定できなかったと判断した場合（Ｓ２６：ＮＯ）、ステップＳ２１に処理を戻す。操作対象を特定できたと判断した場合（Ｓ２６：ＹＥＳ）、制御部１は、特定した操作対象に対応する入力情報を受け付け（Ｓ２７）、処理を終了する。【００７７】
ステップＳ２４で算出された面積が最小値以上であると判断した場合（Ｓ２５：ＮＯ）、制御部１は、算出した面積に応じた補正値を補正値ＤＢ４ａから読み出す（Ｓ２８）。制御部１は、ステップＳ２４で算出された面積が所定値（例えば３０pixel2）以上であるか否かを判断する（Ｓ２９）。【００７８】
面積が所定値以上であると判断した場合（Ｓ２９：ＹＥＳ）、制御部１は、ステップＳ２３で特定した接触領域Ｒ０の形状と、補正値ＤＢ４ａから読み出した補正値とに基づいて、接触領域Ｒ０の短辺を基準としたカーソルＣの表示態様を決定する（Ｓ３０）。具体的には、制御部１は、接触領域Ｒ０の上方の短辺の中央位置の座標値と、接触領域Ｒ０の上方の短辺の中央位置から、この短辺に垂直な方向に、補正値ＤＢ４ａから読み出した補正値だけ隔てた位置の座標値とを算出する。【００７９】
面積が所定値未満であると判断した場合（Ｓ２９：ＮＯ）、制御部１は、ステップＳ２３で特定した接触領域Ｒ０の形状と、補正値ＤＢ４ａから読み出した補正値とに基づいて、接触領域Ｒ０の長辺を基準としたカーソルＣの表示態様を決定する（Ｓ３１）。具体的には、制御部１は、接触領域Ｒ０の上方の長辺の中央位置の座標値と、接触領域Ｒ０の上方の長辺の中央位置から、この長辺に垂直な方向に、補正値ＤＢ４ａから読み出した補正値だけ隔てた位置の座標値とを算出する。【００８０】
制御部１は、ステップＳ３０又はＳ３１で決定した表示態様でカーソルＣを表示させるための表示指示を表示部６０へ出力し、カーソルＣを表示部６０に表示させる（Ｓ３２）。制御部１は、タッチセンサ６１からの検出信号に基づいて、ユーザによるタッチ操作が終了されたか否かを検出しており（Ｓ３３）、タッチ操作が終了されたことを検出していない場合（Ｓ３３：ＮＯ）、ステップＳ２１に処理を戻す。【００８１】
制御部１は、タッチ操作が終了されたことを検出するまで、ステップＳ２１からＳ３２の処理を繰り返す。タッチ操作が終了されたことを検出した場合（Ｓ３３：ＹＥＳ）、制御部１は、その時点で表示されていたカーソルＣの先端位置の座標値を取得する（Ｓ３４）。制御部１は、取得したカーソルＣの先端位置に対応する操作対象を特定し、対応する操作対象を特定できたか否かを判断する（Ｓ３５）。具体的には、制御部１は、カーソルＣの先端位置を表示領域に含む操作対象を特定し、特定できたか否かを判断する。【００８２】
制御部１は、操作対象を特定できなかったと判断した場合（Ｓ３５：ＮＯ）、ステップＳ２１に処理を戻す。操作対象を特定できたと判断した場合（Ｓ３５：ＹＥＳ）、制御部１は、特定した操作対象に対応する入力情報を受け付け（Ｓ３６）、処理を終了する。【００８３】
上述したように、本実施形態２では、ユーザがタッチ操作する場合、ユーザがタッチパネル６に接触している接触領域の面積に応じた位置にカーソルが表示される。これにより、ユーザの指によって隠れる位置にカーソルが表示されることを防止しつつ、ユーザの指から離れた位置にカーソルが表示されることを防止できる。また、ユーザの接触領域の面積が所定値以上であるか否かに応じて、カーソルの表示箇所が接触領域の短辺側又は長辺側に変更される。これにより、ユーザの指の使用状況に応じた方向にカーソルを表示できるので、ユーザがより確認し易いカーソルの表示が可能となる。【００８４】
（実施形態３）
以下に、実施形態３に係る電気機器について説明する。なお、本実施形態３の電気機器は、上述した実施形態１の電気機器１０と同様の構成によって実現することができるので、同様の構成については同一の符号を付して説明を省略する。【００８５】
上述した実施形態１では、ユーザがタッチパネル６に接触している接触領域の面積が、補正値ＤＢ４ａに格納された接触領域の面積の最小値未満であれば、カーソルを表示させずに、接触領域を表示領域に含む操作対象が操作されたとしていた。即ち、接触領域の面積が最小値未満であれば、接触領域を表示領域に含む操作対象に対応する情報を入力情報として受け付けていた。【００８６】
本実施形態３の電気機器１０は、タッチパネル６に表示される操作対象（操作ボタン及びメニュー）の最小サイズを検出し、検出した最小サイズに応じて、カーソルを表示させるか否かの基準となる接触領域の面積の最小値を変更させる。【００８７】
本実施形態３の電気機器１０は、図１に示したハードウェア各部のほかに、記憶部４に、図１０に示すような下限値データベース（以下、下限値ＤＢという）４ｂを格納している。図１０は下限値ＤＢ４ｂの格納内容を示す模式図である。図１０に示すように、下限値ＤＢ４ｂには、操作対象の最小サイズに対応させて接触領域の面積の下限値がそれぞれ格納されている。【００８８】
操作対象の最小サイズは、例えば、タッチパネル６に表示される操作ボタン及びメニュー等の各操作対象の縦方向の最小サイズである。なお、操作対象の最小サイズの情報は、アプリケーションプログラム内で設定されている。下限値は、タッチ操作された際にカーソルを表示させずに接触領域に対応する操作対象が操作されたとする接触領域の面積の最小値を示す。下限値ＤＢ４ｂには、操作対象の最小サイズに対して適切な下限値が予め格納される。なお、図１０に示す下限値ＤＢ４ｂでは、操作対象の最小サイズを示す数値として適宜の範囲が設定されているが、１pixel毎に下限値を設定してもよい。また、操作対象の最小サイズに応じた下限値を算出するための計算式を予め設定しておき、制御部１が、計算式を用いて操作対象の最小サイズに応じた下限値を算出してもよい。【００８９】
図１１は実施形態３の電気機器１０の機能構成例を示す機能ブロック図である。本実施形態３の電気機器１０において、制御部１は、ＲＯＭ２又は記憶部４に格納されている制御プログラムを実行することによって、図３に示した各機能のほかに、操作対象管理部１８の機能を実現する。【００９０】
操作対象管理部１８は、タッチパネル６に表示される操作ボタン及びメニュー等の操作対象の表示位置及び表示サイズ等の情報をアプリケーションプログラム中から取得する。なお、操作対象の表示位置及び表示サイズの情報は、アプリケーションプログラム内で設定されていてもよいし、電気機器１０のシステム情報として予めＲＯＭ２又は記憶部４に格納されていてもよい。操作対象管理部１８は、取得した操作対象の表示サイズのうちの最小値（最小サイズ）を表示態様決定部１３に通知する。なお、操作対象の最小サイズは、操作対象の縦方向の最小サイズとするが、操作対象の横方向の最小サイズであってもよいし、操作対象の表示領域の最小面積でもよい。【００９１】
本実施形態３の表示態様決定部１３は、上述の実施形態１の表示態様決定部１３と同様に、接触領域算出部１２によって算出された接触領域Ｒ０の形状及び面積を取得し、操作対象管理部１８から操作対象の最小サイズを取得する。本実施形態３の表示態様決定部１３は、まず、操作対象管理部１８から取得した操作対象の最小サイズに対応する下限値を下限値ＤＢ４ｂから読み出す。そして、表示態様決定部１３は、接触領域算出部１２から取得した接触領域Ｒ０の面積が、下限値ＤＢ４ｂから読み出した下限値未満であるか否かを判断する。【００９２】
取得した面積が下限値未満であると判断した場合、表示態様決定部１３は、接触領域Ｒ０の形状として接触領域算出部１２から通知された接触点の座標値を操作対象特定部１５に通知する。取得した面積が下限値以上であると判断した場合、表示態様決定部１３は、取得した接触領域Ｒ０の面積に応じた補正値を補正値ＤＢ４ａから読み出す。【００９３】
そして、表示態様決定部１３は、接触領域算出部１２から通知された接触領域Ｒ０の形状に基づいて、接触領域Ｒ０の上方の長辺の中央位置の座標値を算出する。表示態様決定部１３は、接触領域Ｒ０の上方の長辺の中央位置から、この長辺に垂直な方向に、補正値ＤＢ４ａから読み出した補正値だけ隔てた位置の座標値を算出する。なお、接触領域Ｒ０の上方の長辺の中央位置から補正値だけ隔てた位置が、矢印形状のカーソルの先端位置となる。【００９４】
表示態様決定部１３は、カーソルの先端位置の座標値と、接触領域Ｒ０の上方の長辺の中央位置の座標値とをカーソル表示指示部１４に通知する。なお、カーソルの先端位置と、接触領域Ｒ０の長辺の中央位置とを接続した直線の方向が、カーソルが指し示す方向となる。また、表示態様決定部１３は、カーソルの先端位置の座標値を操作対象特定部１５に通知する。【００９５】
なお、本実施形態３の表示態様決定部１３及び操作対象管理部１８以外の各部は、上述の実施形態１で説明した処理と同一の処理を行なう。【００９６】
以下に、本実施形態３の電気機器１０において、ユーザがタッチ操作している際に制御部１が行なう処理についてフローチャートに基づいて説明する。図１２及び図１３は実施形態３の入力情報受付処理の手順を示すフローチャートである。以下の処理は、電気機器１０のＲＯＭ２又は記憶部４に格納されている制御プログラムに従って制御部１によって実行される。【００９７】
制御部１は、タッチセンサ６１からの検出信号に基づいて、ユーザによってタッチパネル６をタッチ操作されたか否かを検出しており（Ｓ４１）、タッチ操作されたことを検出していない場合（Ｓ４１：ＮＯ）、他の処理を行ないつつ待機する。タッチ操作されたことを検出した場合（Ｓ４１：ＹＥＳ）、制御部１は、ユーザがタッチ操作している接触点の座標値を取得する（Ｓ４２）。【００９８】
制御部１は、取得した接触点の座標値に基づいて、全ての接触点を含み、最小サイズとなる矩形の接触領域Ｒ０を特定する（Ｓ４３）。制御部１は、特定した接触領域Ｒ０の面積を算出する（Ｓ４４）。制御部１は、タッチパネル６に表示される操作ボタン及びメニュー等の操作対象の最小サイズを取得し（Ｓ４５）、取得した最小サイズに対応する下限値を下限値ＤＢ４ｂから読み出す（Ｓ４６）。【００９９】
制御部１は、ステップＳ４４で算出した面積が、下限値ＤＢ４ｂから読み出した下限値未満であるか否かを判断する（Ｓ４７）。算出した面積が下限値未満であると判断した場合（Ｓ４７：ＹＥＳ）、制御部１は、ステップＳ４３で特定した接触領域Ｒ０に対応する操作対象を特定し、対応する操作対象を特定できたか否かを判断する（Ｓ４８）。具体的には、制御部１は、接触領域Ｒ０を表示領域に含む操作対象を特定し、特定できたか否かを判断する。【０１００】
制御部１は、操作対象を特定できなかったと判断した場合（Ｓ４８：ＮＯ）、ステップＳ４１に処理を戻す。操作対象を特定できたと判断した場合（Ｓ４８：ＹＥＳ）、制御部１は、特定した操作対象に対応する入力情報を受け付け（Ｓ４９）、処理を終了する。【０１０１】
ステップＳ４４で算出された面積が下限値以上であると判断した場合（Ｓ４７：ＮＯ）、制御部１は、算出した面積に応じた補正値を補正値ＤＢ４ａから読み出す（Ｓ５０）。制御部１は、ステップＳ４３で特定した接触領域Ｒ０の形状と、補正値ＤＢ４ａから読み出した補正値とに基づいて、タッチパネル６に表示すべきカーソルＣの表示態様を決定する（Ｓ５１）。具体的には、制御部１は、接触領域Ｒ０の上方の長辺の中央位置の座標値と、接触領域Ｒ０の上方の長辺の中央位置から、この長辺に垂直な方向に、補正値ＤＢ４ａから読み出した補正値だけ隔てた位置の座標値とを算出する。【０１０２】
制御部１は、ステップＳ５１で決定した表示態様でカーソルＣを表示させるための表示指示を表示部６０へ出力し、カーソルＣを表示部６０に表示させる（Ｓ５２）。制御部１は、タッチセンサ６１からの検出信号に基づいて、ユーザによるタッチ操作が終了されたか否かを検出しており（Ｓ５３）、タッチ操作が終了されたことを検出していない場合（Ｓ５３：ＮＯ）、ステップＳ４１に処理を戻す。【０１０３】
制御部１は、タッチ操作が終了されたことを検出するまで、ステップＳ４１からＳ５２の処理を繰り返す。タッチ操作が終了されたことを検出した場合（Ｓ５３：ＹＥＳ）、制御部１は、その時点で表示されていたカーソルＣの先端位置の座標値を取得する（Ｓ５４）。制御部１は、取得したカーソルＣの先端位置に対応する操作対象を特定し、対応する操作対象を特定できたか否かを判断する（Ｓ５５）。具体的には、制御部１は、カーソルＣの先端位置を表示領域に含む操作対象を特定し、特定できたか否かを判断する。【０１０４】
制御部１は、操作対象を特定できなかったと判断した場合（Ｓ５５：ＮＯ）、ステップＳ４１に処理を戻す。操作対象を特定できたと判断した場合（Ｓ５５：ＹＥＳ）、制御部１は、特定した操作対象に対応する入力情報を受け付け（Ｓ５６）、処理を終了する。【０１０５】
上述したように、本実施形態３では、ユーザがタッチ操作する場合にカーソルを表示させるか、又は、カーソルを表示させずに接触領域に対応した操作対象をそのまま入力情報とするか否かの判断基準を動的に設定していた。即ち、タッチパネル６に表示される操作対象（操作ボタン及びメニュー）の最小サイズを検出し、検出した最小サイズに応じて、カーソルを表示させるか否かの基準となる接触領域の面積の最小値を変更させていた。【０１０６】
例えば、操作対象の表示サイズが大きい画面においては、ユーザがタッチ操作する際の接触領域が多少大きい場合であっても、接触箇所に対応する操作対象が選択されたとしても問題はない。これは、操作対象の表示サイズが大きい画面では、接触箇所に対応する操作対象を１つに特定できる可能性が高いからである。しかし、操作対象の表示サイズが小さい画面においては、ユーザがタッチ操作する際の接触領域が大きい場合には接触領域が複数の操作対象に亘る可能性が高く、接触領域に対応する操作対象を１つに特定できない可能性がある。【０１０７】
従って、操作対象の表示サイズに応じて、カーソルを表示させるか否かの判断基準を変更させることにより、操作対象の表示サイズが大きい画面では、操作対象に対応する入力情報を効率よく取得できる。また、操作対象の表示サイズが小さい画面では、操作対象に対応する入力情報を効率よく取得できると共に、カーソルを表示させることによって入力操作の操作性を向上できる。【０１０８】
本実施形態３は、上述した実施形態１の変形例として説明したが、上述した実施形態２の構成にも適用することができる。【０１０９】
（実施形態４）
以下に、実施形態４に係る電気機器について説明する。なお、本実施形態４の電気機器は、上述した実施形態１の電気機器１０と同様の構成によって実現することができるので、同様の構成については同一の符号を付して説明を省略する。【０１１０】
上述した実施形態１では、ユーザがタッチ操作している際の接触領域からカーソルの先端位置までの距離を、接触領域の面積に応じて変更させていた。本実施形態４の電気機器１０は、ユーザがタッチ操作している際の接触領域からカーソルの先端位置までの距離を、接触領域の面積及びユーザがタッチ操作する際の押下圧力（操作状況）に応じて変更させる。【０１１１】
本実施形態４の電気機器１０は、図１に示したハードウェア各部を備える。なお、本実施形態４の記憶部４には、図１４に示すような補正値ＤＢ４ａが格納されている。図１４は実施形態４の補正値ＤＢ４ａの格納内容を示す模式図である。図１４に示すように、本実施形態４の補正値ＤＢ４ａには、接触領域の面積及び押下圧力に対応させて補正値がそれぞれ格納されている。押下圧力は、ユーザがタッチ操作する際にタッチセンサ６１によって検出された圧力であり、所定値未満を「弱」、所定値以上を「強」として補正値ＤＢ４ａに格納されている。なお、ここでの所定値はタッチセンサ６１の精度等を考慮して適宜変更可能である。【０１１２】
補正値ＤＢ４ａには、各接触領域の面積及び押下圧力に対して最適な補正値が予め格納される。なお、図１４に示す補正値ＤＢ４ａでは、接触領域の面積を示す数値として適宜の範囲が設定されているが、１pixel2 毎に補正値を設定してもよい。また、図１４に示す補正値ＤＢ４ａでは、押下圧力を示す情報として「弱」及び「強」の２段階が設定されているが、押下圧力を３段階以上に分割し、段階毎に補正値を設定してもよい。更に、接触領域の面積及び押下圧力に応じた補正値を算出するための計算式を予め設定しておき、制御部１が、計算式を用いて接触領域の面積及び押下圧力に応じた補正値を算出してもよい。【０１１３】
図１５は実施形態４の電気機器１０の機能構成例を示す機能ブロック図である。本実施形態４の電気機器１０において、制御部１は、ＲＯＭ２又は記憶部４に格納されている制御プログラムを実行することによって、図３に示した各機能のほかに、操作状況取得部１９の機能を実現する。【０１１４】
操作状況取得部１９は、タッチセンサ６１から出力される検出信号を取得する。タッチセンサ６１が詳細な圧力を検出できるセンサであれば、操作状況取得部１９は、タッチセンサ６１からの検出信号に基づいて、ユーザがタッチ操作する際の押下圧力を検出する。そして、操作状況取得部１９は、検出した押下圧力が所定値以上であるか否かを判定し、判定結果（強又は弱）を表示態様決定部１３に通知する。なお、タッチセンサ６１が詳細な圧力を検出できないセンサであれば、操作状況取得部１９は、タッチセンサ６１からの検出信号が示す数値に基づいて、ユーザがタッチ操作する際の押下圧力が所定値以上であるか否かを判定する。そして、操作状況取得部１９は、判定結果（強又は弱）を表示態様決定部１３に通知する。【０１１５】
本実施形態４の表示態様決定部１３は、上述の実施形態１の表示態様決定部１３と同様に、接触領域算出部１２によって算出された接触領域Ｒ０の形状及び面積を取得する。また、本実施形態４の表示態様決定部１３は、ユーザがタッチ操作する際の圧力が所定値以上であるか否かを示す判定結果を操作状況取得部１９から取得する。【０１１６】
本実施形態４の表示態様決定部１３は、まず、接触領域算出部１２から取得した接触領域Ｒ０の面積が、補正値ＤＢ４ａに格納されている接触領域の面積の最小値未満であるか否かを判断する。取得した面積が最小値未満であると判断した場合、表示態様決定部１３は、接触領域Ｒ０の形状として接触領域算出部１２から通知された接触点の座標値を操作対象特定部１５に通知する。【０１１７】
取得した面積が最小値以上であると判断した場合、表示態様決定部１３は、取得した接触領域Ｒ０の面積と、操作状況取得部１９から通知された判定結果とに応じた補正値を補正値ＤＢ４ａから読み出す。次に表示態様決定部１３は、接触領域算出部１２から通知された接触領域Ｒ０の形状に基づいて、接触領域Ｒ０の上方の長辺の中央位置の座標値を算出する。表示態様決定部１３は、接触領域Ｒ０の上方の長辺の中央位置から、この長辺に垂直な方向に、補正値ＤＢ４ａから読み出した補正値だけ隔てた位置の座標値を算出する。なお、接触領域Ｒ０の上方の長辺の中央位置から補正値だけ隔てた位置が、矢印形状のカーソルの先端位置となる。【０１１８】
表示態様決定部１３は、カーソルの先端位置の座標値と、接触領域Ｒ０の上方の長辺の中央位置の座標値とをカーソル表示指示部１４に通知する。なお、カーソルの先端位置と、接触領域Ｒ０の長辺の中央位置とを接続した直線の方向が、カーソルが指し示す方向となる。また、表示態様決定部１３は、カーソルの先端位置の座標値を操作対象特定部１５に通知する。【０１１９】
なお、本実施形態４の表示態様決定部１３及び操作状況取得部１９以外の各部は、上述の実施形態１で説明した処理と同一の処理を行なう。【０１２０】
以下に、本実施形態４の電気機器１０において、ユーザがタッチ操作する場合に、制御部１が行なう処理についてフローチャートに基づいて説明する。図１６及び図１７は実施形態４の入力情報受付処理の手順を示すフローチャートである。以下の処理は、電気機器１０のＲＯＭ２又は記憶部４に格納されている制御プログラムに従って制御部１によって実行される。【０１２１】
制御部１は、タッチセンサ６１からの検出信号に基づいて、ユーザによってタッチパネル６をタッチ操作されたか否かを検出しており（Ｓ６１）、タッチ操作されたことを検出していない場合（Ｓ６１：ＮＯ）、他の処理を行ないつつ待機する。タッチ操作されたことを検出した場合（Ｓ６１：ＹＥＳ）、制御部１は、ユーザがタッチ操作している接触点の座標値を取得する（Ｓ６２）。【０１２２】
制御部１は、取得した接触点の座標値に基づいて、全ての接触点を含み、最小サイズとなる矩形の接触領域Ｒ０を特定する（Ｓ６３）。制御部１は、特定した接触領域Ｒ０の面積を算出する（Ｓ６４）。制御部１は、算出した面積が、補正値ＤＢ４ａに格納されている接触領域の面積の最小値未満であるか否かを判断する（Ｓ６５）。算出した面積が最小値未満であると判断した場合（Ｓ６５：ＹＥＳ）、制御部１は、ステップＳ６３で特定した接触領域Ｒ０に対応する操作対象を特定し、対応する操作対象を特定できたか否かを判断する（Ｓ６６）。具体的には、制御部１は、接触領域Ｒ０を表示領域に含む操作対象を特定し、特定できたか否かを判断する。【０１２３】
制御部１は、操作対象を特定できなかったと判断した場合（Ｓ６６：ＮＯ）、ステップＳ６１に処理を戻す。操作対象を特定できたと判断した場合（Ｓ６６：ＹＥＳ）、制御部１は、特定した操作対象に対応する入力情報を受け付け（Ｓ６７）、処理を終了する。【０１２４】
ステップＳ６４で算出された面積が最小値以上であると判断した場合（Ｓ６５：ＮＯ）、制御部１は、電気機器１０の操作状況を取得する（Ｓ６８）。具体的には、制御部１は、タッチセンサ６１からの検出信号に基づいて、ユーザがタッチ操作する際の押下圧力が所定値以上であるか否かを判定する。制御部１は、ステップＳ６４で算出した面積及びステップＳ６８で取得した操作状況に応じた補正値を補正値ＤＢ４ａから読み出す（Ｓ６９）。【０１２５】
制御部１は、ステップＳ６３で特定した接触領域Ｒ０の形状と、補正値ＤＢ４ａから読み出した補正値とに基づいて、タッチパネル６に表示すべきカーソルＣの表示態様を決定する（Ｓ７０）。具体的には、制御部１は、接触領域Ｒ０の上方の長辺の中央位置の座標値と、接触領域Ｒ０の上方の長辺の中央位置から、この長辺に垂直な方向に、補正値ＤＢ４ａから読み出した補正値だけ隔てた位置の座標値とを算出する。【０１２６】
制御部１は、ステップＳ７０で決定した表示態様でカーソルＣを表示させるための表示指示を表示部６０へ出力し、カーソルＣを表示部６０に表示させる（Ｓ７１）。制御部１は、タッチセンサ６１からの検出信号に基づいて、ユーザによるタッチ操作が終了されたか否かを検出しており（Ｓ７２）、タッチ操作が終了されたことを検出していない場合（Ｓ７２：ＮＯ）、ステップＳ６１に処理を戻す。【０１２７】
制御部１は、タッチ操作が終了されたことを検出するまで、ステップＳ６１からＳ７１の処理を繰り返す。タッチ操作が終了されたことを検出した場合（Ｓ７２：ＹＥＳ）、制御部１は、その時点で表示されていたカーソルＣの先端位置の座標値を取得する（Ｓ７３）。制御部１は、取得したカーソルＣの先端位置に対応する操作対象を特定し、対応する操作対象を特定できたか否かを判断する（Ｓ７４）。具体的には、制御部１は、カーソルＣの先端位置を表示領域に含む操作対象を特定し、特定できたか否かを判断する。【０１２８】
制御部１は、操作対象を特定できなかったと判断した場合（Ｓ７４：ＮＯ）、ステップＳ６１に処理を戻す。操作対象を特定できたと判断した場合（Ｓ７４：ＹＥＳ）、制御部１は、特定した操作対象に対応する入力情報を受け付け（Ｓ７５）、処理を終了する。【０１２９】
上述したように、本実施形態４の電気機器１０は、ユーザによってタッチ操作された場合に、接触領域の面積、押下圧力が強いか弱いか等の操作状況を判定できる。押下圧力が強く接触領域が大きい場合には、強い力でタッチ操作を行なうことによって接触領域が大きくなったと推測できる。よって、押下圧力が強い場合には接触領域の面積が大きいほど、接触領域からカーソルの先端位置までの距離である補正値を大きい値とすることにより、適切な位置にカーソルを表示させることができる。【０１３０】
上述したように、本実施形態４では、補正値ＤＢ４ａにおいて、押下圧力が強い場合及び弱い場合においてそれぞれ、接触領域の面積が大きいほど、接触領域からカーソルの先端位置までの距離である補正値に大きい値が設定されていた。また、接触領域の面積が同じ場合には、押下圧力が強いほど補正値に大きい値が設定されていた。これにより、接触領域が大きいほどユーザの指からある程度の距離を隔てた位置にカーソルを表示させることができるので、ユーザが見易い位置にカーソルを表示させることができる。【０１３１】
しかし、接触領域の面積及び押下圧力と、補正値との関係は、このような例に限られない。例えば、押下圧力が強い場合に、接触領域の面積が大きいほど補正値に小さい値が設定されてもよい。このような設定によれば、強い力でタッチ操作されている場合には、接触領域が大きいほどユーザの指のより近傍にカーソルを表示させることができるので、カーソルの操作が容易となる。【０１３２】
また、接触領域の面積が同じ場合に、押下圧力が強いほど補正値に小さい値が設定されてもよい。このような設定によれば、例えば、より強い力でタッチ操作されている場合にユーザの指のより近傍にカーソルを表示させることができるので、カーソルの操作が容易となる。【０１３３】
本実施形態４は、上述した実施形態１の変形例として説明したが、上述した実施形態２，３の構成にも適用することができる。【０１３４】
（実施形態５）
以下に、実施形態５に係る電気機器について説明する。なお、本実施形態５の電気機器は、上述した実施形態１，４の電気機器１０と同様の構成によって実現することができるので、同様の構成については同一の符号を付して説明を省略する。【０１３５】
上述した実施形態４では、ユーザがタッチ操作する際の接触領域からカーソルの先端位置までの距離を、接触領域の面積及びユーザがタッチ操作する際の押下圧力（操作状況）に応じて変更させていた。本実施形態５の電気機器１０は、自身の傾きを検出し、ユーザがタッチ操作する際の接触領域からカーソルの先端位置までの距離を、接触領域の面積及びユーザがタッチ操作する際の電気機器１０の傾き（操作状況）に応じて変更させる。【０１３６】
図１８は実施形態５の電気機器１０の外観を示す模式図である。図１８（ａ）は電気機器１０の斜視図、図１８（ｂ）は図１８（ａ）に示した電気機器１０を矢符Ａの方向から見た図である。本実施形態５の電気機器１０は板状を成し、一側面の中央にタッチパネル６が設けられている。本実施形態５の電気機器１０は、ユーザによって使用される場合に、図１８に示すように傾けられる可能性が高い。特に、タッチパネル６を斜め上方向に向けて使用される可能性が高い。【０１３７】
よって、本実施形態５の電気機器１０は、図１８（ｂ）に示す傾き角度を検出する。そして、電気機器１０は、ユーザがタッチ操作する際の接触領域からカーソルの先端位置までの距離を、接触領域の面積及び検出した傾き角度に応じて変更させる。【０１３８】
図１９は実施形態５の電気機器１０の構成例を示すブロック図である。本実施形態５の電気機器１０は、図１に示したハードウェア各部のほかに、センサ７を備える。本実施形態５のセンサ７は、例えば加速度センサである。センサ７は、電気機器１０に加わる重力加速度を検出しており、検出した重力加速度に基づいて、図１８（ｂ）に示した電気機器１０の傾き角度を検出できる。【０１３９】
また、本実施形態５の記憶部４には、図２０に示すような補正値ＤＢ４ａが格納されている。図２０は実施形態５の補正値ＤＢ４ａの格納内容を示す模式図である。図２０に示すように、本実施形態５の補正値ＤＢ４ａには、接触領域の面積及び傾き角度に対応させて補正値がそれぞれ格納されている。傾き角度は、図１８（ｂ）に示したように電気機器１０に加えられた角度であり、所定値未満を「小」、所定値以上を「大」として補正値ＤＢ４ａに格納されている。なお、ここでの所定値はセンサ７の精度等を考慮して適宜変更可能である。【０１４０】
補正値ＤＢ４ａには、各接触領域の面積及び傾き角度に対して最適な補正値が予め格納される。なお、図２０に示す補正値ＤＢ４ａでは、接触領域の面積を示す数値として適宜の範囲が設定されているが、１pixel2 毎に補正値を設定してもよい。また、図２０に示す補正値ＤＢ４ａでは、傾き角度を示す情報として「小」及び「大」の２段階が設定されているが、傾き角度を３段階以上に分割し、段階毎に補正値を設定してもよい。更に、接触領域の面積及び傾き角度に応じた補正値を算出するための計算式を予め設定しておき、制御部１が、計算式を用いて接触領域の面積及び傾き角度に応じた補正値を算出してもよい。【０１４１】
本実施形態５の電気機器１０において、制御部１は、ＲＯＭ２又は記憶部４に格納されている制御プログラムを実行することによって、図１５に示した各機能と同様の機能を実現する。なお、本実施形態５の操作状況取得部１９は、タッチセンサ６１から出力される検出信号ではなく、センサ７から出力される検出信号を取得する。センサ７が詳細な傾き角度を検出できるセンサであれば、操作状況取得部１９は、センサ７からの検出信号に基づいて、ユーザがタッチ操作する際の電気機器１０の傾き角度を検出する。【０１４２】
そして、操作状況取得部１９は、検出した傾き角度が所定値以上であるか否かを判定し、判定結果（大又は小）を表示態様決定部１３に通知する。なお、センサ７が詳細な傾き角度を検出できないセンサであれば、操作状況取得部１９は、センサ７からの検出信号が示す数値に基づいて、ユーザがタッチ操作する際の電気機器１０の傾き角度が所定値以上であるか否かを判定する。そして、操作状況取得部１９は、判定結果（大又は小）を表示態様決定部１３に通知する。【０１４３】
本実施形態５の表示態様決定部１３は、上述の実施形態１の表示態様決定部１３と同様に、接触領域算出部１２によって算出された接触領域Ｒ０の形状及び面積を取得する。また、本実施形態５の表示態様決定部１３は、ユーザがタッチ操作する際の電気機器１０の傾き角度が所定値以上であるか否かを示す判定結果を操作状況取得部１９から取得する。【０１４４】
本実施形態５の表示態様決定部１３は、まず、接触領域算出部１２から取得した接触領域Ｒ０の面積が、補正値ＤＢ４ａに格納されている接触領域の面積の最小値未満であるか否かを判断する。取得した面積が最小値未満であると判断した場合、表示態様決定部１３は、接触領域Ｒ０の形状として接触領域算出部１２から通知された接触点の座標値を操作対象特定部１５に通知する。【０１４５】
取得した面積が最小値以上であると判断した場合、表示態様決定部１３は、取得した接触領域Ｒ０の面積と、操作状況取得部１９から通知された判定結果とに応じた補正値を補正値ＤＢ４ａから読み出す。次に表示態様決定部１３は、接触領域算出部１２から通知された接触領域Ｒ０の形状に基づいて、接触領域Ｒ０の上方の長辺の中央位置の座標値を算出する。表示態様決定部１３は、接触領域Ｒ０の上方の長辺の中央位置から、この長辺に垂直な方向に、補正値ＤＢ４ａから読み出した補正値だけ隔てた位置の座標値を算出する。なお、接触領域Ｒ０の上方の長辺の中央位置から補正値だけ隔てた位置が、矢印形状のカーソルの先端位置となる。【０１４６】
表示態様決定部１３は、カーソルの先端位置の座標値と、接触領域Ｒ０の上方の長辺の中央位置の座標値とをカーソル表示指示部１４に通知する。なお、カーソルの先端位置と、接触領域Ｒ０の長辺の中央位置とを接続した直線の方向が、カーソルが指し示す方向となる。また、表示態様決定部１３は、カーソルの先端位置の座標値を操作対象特定部１５に通知する。【０１４７】
なお、本実施形態５の表示態様決定部１３及び操作状況取得部１９以外の各部は、上述の実施形態１，４で説明した処理と同一の処理を行なう。【０１４８】
本実施形態５の電気機器１０において、ユーザがタッチ操作する際に制御部１が行なう処理は、図１６及び図１７で示した実施形態４の入力情報受付処理と同様であるので説明を省略する。
なお、本実施形態５の制御部１は、図１７中のステップＳ６８において、センサ７からの検出信号に基づいて、ユーザがタッチ操作する際の電気機器１０の傾き角度が所定値以上であるか否かを判定する。【０１４９】
上述したように、本実施形態５の電気機器１０は、ユーザによってタッチ操作された場合に、接触領域の面積、電気機器１０の傾き角度が大きいか小さいか等の操作状況を判定できる。このように電気機器１０の傾き角度を検出することにより、傾き角度の大きさに応じて生じる視差の影響の大きさを判定できる。【０１５０】
上述したように、本実施形態５では、補正値ＤＢ４ａにおいて、傾き角度が大きい場合及び小さい場合においてそれぞれ、接触領域の面積が大きいほど、接触領域からカーソルの先端位置までの距離である補正値に大きい値が設定されていた。また、接触領域の面積が同じ場合には、傾き角度が大きいほど補正値に大きい値が設定されていた。これにより、傾き角度が大きいほどユーザの指からある程度の距離を隔てた位置にカーソルを表示させることができるので、適切な位置にカーソルを表示させることができる。例えば、ユーザの指によってカーソルが隠れることを防止できる。【０１５１】
しかし、接触領域の面積及び傾き角度と、補正値との関係は、このような例に限られない。例えば、傾き角度が大きい場合に、接触領域の面積が大きいほど補正値に小さい値が設定されてもよい。また、接触領域の面積が同じ場合に、押下圧力が強いほど補正値に小さい値が設定されてもよい。【０１５２】
本実施形態５では、電気機器１０に加わる傾き角度として、図１８（ｂ）に示すように、電気機器１０の上側面が、タッチパネル６が設けられた面の裏面側に傾けられた角度を用いていた。しかし、この角度に限られず、例えば、電気機器１０に対して左右方向に傾けられた角度、矩形のタッチパネル６の対角線を軸として回転された際の角度等を用いてもよい。具体的には、ジャイロセンサ及び加速度センサ等を含む３次元のモーションセンサを用いて計測可能な角度を用いてもよい。【０１５３】
上述した実施形態４では、電気機器１０の操作状況としてタッチセンサ６１によって検出される押下圧力を検出していた。また、本実施形態５では、電気機器１０の操作状況として加速度センサによって検出される電気機器１０の傾き角度を検出していた。しかし、電気機器１０の操作状況としてはこれらの情報に限られず、操作状況を示す情報を検出するためのセンサはこれらのセンサに限られない。【０１５４】
操作状況を示す情報を検出するセンサとしては、例えば、電気機器１０とユーザとの距離を検出するための近接センサ、タッチパネル６の表面の温度を検出するための温度センサ、タッチパネル６の表面の照度を検出するための照度センサ等がある。また、タッチパネル６の表面の画像を撮影し、得られた画像データを画像処理することによって電気機器１０における各種の状況を検出する画像センサも利用できる。なお、これらのセンサ以外のものを用いてもよいことは勿論であり、これらのセンサのいずれかを組み合わせて用いてもよい。【０１５５】
（実施形態６）
以下に、実施形態６に係る電気機器について説明する。なお、本実施形態６の電気機器は、上述した実施形態１の制御システムと同様の構成によって実現することができるので、同様の構成については同一の符号を付して説明を省略する。【０１５６】
上述した実施形態１〜５では、ユーザがタッチ操作する際の接触領域を、全ての接触点を含む領域としていた。本実施形態６の電気機器１０は、ユーザがタッチ操作している場合の接触点に対してクラスタリング処理を行なうことによって、複数の領域（クラスタ）に分類し、分類した領域のうちの１つを接触領域とする。【０１５７】
本実施形態６の電気機器１０は、図１に示したハードウェア各部を備える。
図２１は実施形態６の電気機器１０の機能構成例を示す機能ブロック図、図２２はクラスタリング処理を説明するための模式図である。図２２は、図４と同様に、計算機ソフトを電気機器１０で実行させた場合にタッチパネル６に表示される画面例を示している。なお、図２２（ａ），（ｂ）中の黒丸はユーザがタッチパネル６に接触している接触点を模式的に示す。また、図２２は、ユーザが指先又はペンでタッチ操作する際に手のひらがタッチパネル６に接触した状況を示しており、領域Ｃ１，Ｒ１が指先又はペンの接触領域であり、領域Ｃ２，Ｒ２が手のひらの接触領域である。【０１５８】
本実施形態６の電気機器１０において、制御部１は、ＲＯＭ２又は記憶部４に格納されている制御プログラムを実行することによって、図３に示した各機能のほかに、クラスタリング処理部２０の機能を実現する。【０１５９】
本実施形態６の接触点検出部１１は、上述した実施形態１の接触点検出部１１と同様に、タッチセンサ６１からの検出信号に基づいて、ユーザがタッチ操作する接触点の座標値を取得する。図２２（ａ）に示す状況では、接触点検出部１１は、図２２（ａ）に黒丸で示した各接触点の座標値を取得する。接触点検出部１１は、検出した全ての接触点の座標値をタッチ終了検知部１７及びクラスタリング処理部２０へ送出する。【０１６０】
クラスタリング処理部２０は、接触点検出部１１から全ての接触点の座標値を取得する。クラスタリング処理部２０は、取得した各接触点の座標値に対して、Ｋ平均法（K-means法）又はウォード法（Ward’s method）等のアルゴリズムを用いたクラスタリング処理を行なう。クラスタリング処理部２０は、クラスタリング処理によって、各接触点を複数のクラスタに分類し、分類されたクラスタ毎に、各接触点の座標値を接触領域算出部１２へ送出する。【０１６１】
図２２（ａ）に示す状況では、クラスタリング処理部２０は、各接触点を２つのクラスタＣ１，Ｃ２にそれぞれ分類する。なお、クラスタリング処理のアルゴリズムは、例えば、各接触点が所定距離よりも近い位置に隣り合っているか否か等の所定の条件に従って各接触点を分類できるアルゴリズムであれば、Ｋ平均法及びウォード法には限られない。【０１６２】
本実施形態６の接触領域算出部１２は、クラスタリング処理部２０によって分類されたクラスタ毎に、各接触点の座標値を取得する。本実施形態６の接触領域算出部１２は、クラスタ毎に、各接触点の座標値に基づいて、各接触点を含み、最小サイズとなる矩形の領域（接触領域）を特定する。接触領域算出部１２は、クラスタ毎に、特定した接触領域の面積を算出する。【０１６３】
図２２（ｂ）に示す状況では、接触領域算出部１２は、各クラスタに対応する接触領域Ｒ１，Ｒ２をそれぞれ特定し、特定した接触領域Ｒ１，Ｒ２の面積をそれぞれ算出する。接触領域算出部１２は、算出した接触領域Ｒ１，Ｒ２の面積のうちで小さい方の接触領域Ｒ１（又はＲ２）を特定する。接触領域算出部１２は、特定した接触領域Ｒ１（又はＲ２）の形状及び面積を表示態様決定部１３に通知する。これにより、面積が大きい方の接触領域Ｒ２（又はＲ１）に含まれる接触点は、タッチ操作に必要のない接触点として排除される。よって、例えば、タッチ操作中にタッチパネル６に手のひらが接触した場合には、その影響を排除して適切な位置にカーソルを表示できる。【０１６４】
なお、接触領域Ｒ１（又はＲ２）の形状は、例えば、接触領域Ｒ１（又はＲ２）の各頂点の座標値を用いて通知される。また、接触領域Ｒ１（又はＲ２）に１つの接触点しか含まれない場合、接触領域算出部１２は、接触領域Ｒ１（又はＲ２）に含まれる接触点の座標値を接触領域Ｒ１（又はＲ２）の形状として表示態様決定部１３に通知する。【０１６５】
なお、本実施形態６の接触点検出部１１、接触領域算出部１２及びクラスタリング処理部２０以外の各部は、上述の実施形態１で説明した処理と同一の処理を行なう。【０１６６】
以下に、本実施形態６の電気機器１０において、ユーザがタッチ操作する際に制御部１が行なう処理についてフローチャートに基づいて説明する。図２３及び図２４は実施形態６の入力情報受付処理の手順を示すフローチャートである。以下の処理は、電気機器１０のＲＯＭ２又は記憶部４に格納されている制御プログラムに従って制御部１によって実行される。【０１６７】
制御部１は、タッチセンサ６１からの検出信号に基づいて、ユーザによってタッチパネル６をタッチ操作されたか否かを検出しており（Ｓ８１）、タッチ操作されたことを検出していない場合（Ｓ８１：ＮＯ）、他の処理を行ないつつ待機する。タッチ操作されたことを検出した場合（Ｓ８１：ＹＥＳ）、制御部１は、ユーザがタッチ操作している接触点の座標値を取得する（Ｓ８２）。【０１６８】
制御部１は、取得した接触点の座標値に対してクラスタリング処理を実行し（Ｓ８３）、各接触点を複数のクラスタに分類する。制御部１は、クラスタ毎に、各クラスタに分類された全ての接触点を含み、最小サイズとなる矩形の接触領域Ｒ１，Ｒ２を特定する（Ｓ８４）。制御部１は、特定した接触領域Ｒ１，Ｒ２の面積をそれぞれ算出する（Ｓ８５）。制御部１は、算出した接触領域Ｒ１，Ｒ２の面積のうちで最小の面積の接触領域Ｒ１（又はＲ２）を特定する（Ｓ８６）。【０１６９】
制御部１は、特定した接触領域Ｒ１（又はＲ２）の面積が、補正値ＤＢ４ａに格納されている接触領域の面積の最小値未満であるか否かを判断する（Ｓ８７）。特定した接触領域Ｒ１（又はＲ２）の面積が最小値未満であると判断した場合（Ｓ８７：ＹＥＳ）、制御部１は、ステップＳ８６で特定した接触領域Ｒ１（又はＲ２）に対応する操作対象を特定し、対応する操作対象を特定できたか否かを判断する（Ｓ８８）。具体的には、制御部１は、接触領域Ｒ１（又はＲ２）を表示領域に含む操作対象を特定し、特定できたか否かを判断する。【０１７０】
制御部１は、操作対象を特定できなかったと判断した場合（Ｓ８８：ＮＯ）、ステップＳ８１に処理を戻す。操作対象を特定できたと判断した場合（Ｓ８８：ＹＥＳ）、制御部１は、特定した操作対象に対応する入力情報を受け付け（Ｓ８９）、処理を終了する。【０１７１】
ステップＳ８６で特定された接触領域Ｒ１（又はＲ２）の面積が最小値以上であると判断した場合（Ｓ８７：ＮＯ）、制御部１は、接触領域Ｒ１（又はＲ２）の面積に応じた補正値を補正値ＤＢ４ａから読み出す（Ｓ９０）。制御部１は、ステップＳ８６で特定した接触領域Ｒ１（又はＲ２）の形状と、補正値ＤＢ４ａから読み出した補正値とに基づいて、タッチパネル６に表示すべきカーソルＣの表示態様を決定する（Ｓ９１）。具体的には、制御部１は、接触領域Ｒ１（又はＲ２）の上方の長辺の中央位置の座標値と、接触領域Ｒ１（又はＲ２）の上方の長辺の中央位置から、この長辺に垂直な方向に、補正値ＤＢ４ａから読み出した補正値だけ隔てた位置の座標値とを算出する。【０１７２】
制御部１は、ステップＳ９１で決定した表示態様でカーソルＣを表示させるための表示指示を表示部６０へ出力し、カーソルＣを表示部６０に表示させる（Ｓ９２）。制御部１は、タッチセンサ６１からの検出信号に基づいて、ユーザによるタッチ操作が終了されたか否かを検出しており（Ｓ９３）、タッチ操作が終了されたことを検出していない場合（Ｓ９３：ＮＯ）、ステップＳ８１に処理を戻す。【０１７３】
制御部１は、タッチ操作が終了されたことを検出するまで、ステップＳ８１からＳ９２の処理を繰り返す。タッチ操作が終了されたことを検出した場合（Ｓ９３：ＹＥＳ）、制御部１は、その時点で表示されていたカーソルＣの先端位置の座標値を取得する（Ｓ９４）。制御部１は、取得したカーソルＣの先端位置に対応する操作対象を特定し、対応する操作対象を特定できたか否かを判断する（Ｓ９５）。具体的には、制御部１は、カーソルＣの先端位置を表示領域に含む操作対象を特定し、特定できたか否かを判断する。【０１７４】
制御部１は、操作対象を特定できなかったと判断した場合（Ｓ９５：ＮＯ）、ステップＳ８１に処理を戻す。操作対象を特定できたと判断した場合（Ｓ９５：ＹＥＳ）、制御部１は、特定した操作対象に対応する入力情報を受け付け（Ｓ９６）、処理を終了する。【０１７５】
上述したように、本実施形態６では、ユーザがタッチ操作している際の接触点をクラスタリング処理によって複数のクラスタに分類し、分類したクラスタから、タッチ操作のための接触点を含むクラスタを１つ特定する。これにより、タッチ操作に必要のない接触点を排除できるので、タッチ操作された操作対象の判定精度が向上する。【０１７６】
本実施形態６では、クラスタリング処理部２０によって分類されたクラスタ毎に、各接触点を含む接触領域が特定され、特定された各接触領域の面積が小さい接触領域が、タッチ操作に必要な接触領域とされていた。しかし、例えば、特定された各接触領域の面積が大きい接触領域が、タッチ操作に必要な接触領域とされてもよい。この場合、例えば、タッチパネル６上に微小のゴミが付着していた場合に、このゴミの付着箇所をタッチ操作に必要な接触領域としないことにより、タッチ操作の精度を向上させることができる。【０１７７】
本実施形態６は、上述した実施形態１の変形例として説明したが、上述した実施形態２〜５のような構成にも適用することができる。【０１７８】
（実施形態７）
以下に、実施形態７に係る電気機器について説明する。なお、本実施形態７の電気機器は、上述した実施形態１の電気機器１０と同様の構成によって実現することができるので、同様の構成については同一の符号を付して説明を省略する。
本実施形態７の電気機器１０は、実施形態１の電気機器１０と同様の処理を行ないつつ、補正値ＤＢ４ａの更新処理も行なう。【０１７９】
本実施形態７の電気機器１０は、図１に示したハードウェア各部を備える。
図２５は実施形態７の電気機器１０の機能構成例を示す機能ブロック図、図２６及び図２７は補正値ＤＢ４ａの更新処理を説明するための模式図である。図２６は、メーラーを電気機器１０で実行させた場合にタッチパネル６に表示される画面例を示している。【０１８０】
図２６（ａ）は、ユーザがタッチ操作を開始した際の画面の状態を示しており、図２６（ｂ）は、ユーザがタッチ操作を終了した直後の画面例を示している。即ち、ユーザがタッチ操作を開始した時点では図２６（ａ）に示す位置にカーソルＣ（カーソルＳ）が表示され、ユーザがタッチ操作を終了した時点では図２６（ｂ）に示す位置にカーソルＣ（カーソルＥ）が表示されていた。図２７には、図２６（ａ），（ｂ）で示したようなタッチ操作開始時のカーソルＳと、タッチ操作終了時のカーソルＥと、タッチ操作開始時の接触領域Ｒ０とを抽出して示す。【０１８１】
本実施形態７の電気機器１０において、制御部１は、ＲＯＭ２又は記憶部４に格納されている制御プログラムを実行することによって、図３に示した各機能のほかに、補正値ＤＢ更新部２１の機能を実現する。【０１８２】
本実施形態７の表示態様決定部１３は、上述の実施形態１の表示態様決定部１３と同様に、ユーザがタッチ操作している際の接触領域Ｒ０の形状及び面積を接触領域算出部１２から取得する。本実施形態７の表示態様決定部１３は、まず、取得した接触領域Ｒ０の面積が、補正値ＤＢ４ａに格納された接触領域の面積の最小値未満であるか否かを判断する。取得した面積が最小値未満であると判断した場合、表示態様決定部１３は、接触領域Ｒ０の形状として接触領域算出部１２から通知された接触点の座標値を操作対象特定部１５に通知する。【０１８３】
取得した面積が最小値以上であると判断した場合、表示態様決定部１３は、取得した接触領域Ｒ０の面積に応じた補正値を補正値ＤＢ４ａから読み出す。次に表示態様決定部１３は、接触領域算出部１２から通知された接触領域Ｒ０の形状に基づいて、接触領域Ｒ０の上方の長辺の中央位置の座標値を算出する。表示態様決定部１３は、接触領域Ｒ０の上方の長辺の中央位置から、この長辺に垂直な方向に、補正値ＤＢ４ａから読み出した補正値だけ隔てた位置の座標値を算出する。なお、接触領域Ｒ０の上方の長辺の中央位置から補正値だけ隔てた位置が、矢印形状のカーソルの先端位置となる。【０１８４】
表示態様決定部１３は、カーソルの先端位置の座標値と、接触領域Ｒ０の上方の長辺の中央位置の座標値とをカーソル表示指示部１４に通知する。なお、カーソルの先端位置と、接触領域Ｒ０の長辺の中央位置とを接続した直線の方向が、カーソルが指し示す方向となる。また、表示態様決定部１３は、カーソルの先端位置の座標値を操作対象特定部１５に通知する。【０１８５】
本実施形態７の表示態様決定部１３は、接触領域算出部１２から通知された接触領域Ｒ０の形状に基づいて算出した、接触領域Ｒ０の上方の長辺の中央位置の座標値を補正値ＤＢ更新部２１に通知する。また、本実施形態７の表示態様決定部１３は、逐次算出するカーソルの先端位置の座標値を補正値ＤＢ更新部２１に通知する。なお、接触領域Ｒ０の上方の長辺の中央位置を、接触領域Ｒ０の基準点とする。【０１８６】
本実施形態７のタッチ終了検知部１７は、接触点検出部１１から取得する接触点の座標値に基づいて、ユーザによるタッチ操作が終了したか否かを判断する。タッチ終了検知部１７は、ユーザによるタッチ操作が終了したことを検知した場合、タッチ操作が終了した旨を操作対象特定部１５及び補正値ＤＢ更新部２１に通知する。【０１８７】
補正値ＤＢ更新部２１は、ユーザがタッチ操作している際の接触領域Ｒ０の上方の長辺の中央位置（接触領域Ｒ０の基準点）の座標値と、カーソルの先端位置の座標値とを表示態様決定部１３から取得する。また、補正値ＤＢ更新部２１は、ユーザによるタッチ操作が終了した場合、タッチ操作が終了した旨をタッチ終了検知部１７から通知される。【０１８８】
補正値ＤＢ更新部２１は、表示態様決定部１３から取得する接触領域Ｒ０の基準点の座標値と、カーソルの先端位置の座標値とから、ユーザのタッチ操作開始時点での接触領域Ｒ０の基準点の座標値とカーソルＳの先端位置の座標値とを取得する。なお、ユーザのタッチ操作開始時点での接触領域Ｒ０の基準点は、図２７中の点Ｏ（Ｘｏ，Ｙｏ）であり、ユーザのタッチ操作開始時点でのカーソルＳの先端位置は、図２７中の点Ｓ（Ｘｓ，Ｙｓ）である。【０１８９】
また、補正値ＤＢ更新部２１は、タッチ終了検知部１７からタッチ操作の終了を通知されたタイミングに基づいて、表示態様決定部１３から取得するカーソルの先端位置の座標値から、ユーザのタッチ操作終了時点でのカーソルＥの先端位置の座標値を取得する。なお、ユーザのタッチ操作終了時点でのカーソルＥの先端位置は、図２７中の点Ｅ（Ｘｅ，Ｙｅ）である。【０１９０】
補正値ＤＢ更新部２１は、接触領域Ｒ０の基準点Ｏ（Ｘｏ，Ｙｏ）と、カーソルＳの先端位置Ｓ（Ｘｓ，Ｙｓ）と、カーソルＥの先端位置Ｅ（Ｘｅ，Ｙｅ）とに基づいて、カーソルＳからカーソルＥへの移動量を算出する。補正値ＤＢ更新部２１は、例えば、図２７（ｂ）に示すように、線分ＳＯとｘ＝Ｘｅとの交点Ａ（Ｘ，Ｙ）を算出する。そして、補正値ＤＢ更新部２１は、線分ＳＡの長さを算出し、算出した長さを移動量とする。【０１９１】
なお、移動量の算出方法は、図２７（ｂ）に示した例に限られない。例えば、図２７（ｃ）に示すように、補正値ＤＢ更新部２１は、線分ＳＯとｙ＝Ｙｅとの交点Ａ１（Ｘ，Ｙ）を算出し、線分ＳＡ１の長さを算出し、算出した長さを移動量としてもよい。また、図２７（ｄ）に示すように、補正値ＤＢ更新部２１は、カーソルＥの先端位置Ｅ（Ｘｅ，Ｙｅ）を通り、線分ＳＯに直交する関数を求める。そして、補正値ＤＢ更新部２１は、求めた関数と線分ＳＯとの交点Ａ２（Ｘ，Ｙ）を算出し、線分ＳＡ２の長さを算出し、算出した長さを移動量としてもよい。【０１９２】
補正値ＤＢ更新部２１は、このように算出した移動量を接触領域の面積毎に、例えばＲＡＭ３又は記憶部４に蓄積する。接触領域の面積毎に所定数（例えば２０個）の移動量が蓄積された場合、補正値ＤＢ更新部２１は、蓄積された移動量に基づいて、補正値ＤＢ４ａに格納されている補正値に対して更新すべき値を算出する。【０１９３】
具体的には、補正値ＤＢ更新部２１は、所定数の移動量が蓄積された接触領域の面積に対応して補正値ＤＢ４ａに格納されている補正値を読み出す。即ち、補正値ＤＢ更新部２１は、更新すべき補正値を補正値ＤＢ４ａから読み出しておく。
そして、補正値ＤＢ更新部２１は、接触領域の面積毎に蓄積した移動量から異常値を排除する。例えば、補正値ＤＢ更新部２１は、蓄積した移動量の平均値を算出し、算出した平均値から所定範囲内に入らない移動量を異常値として排除する。【０１９４】
補正値ＤＢ更新部２１は、異常値を排除した移動量の平均値を算出し、算出した平均値を、補正値ＤＢ４ａから予め読み出していた更新すべき補正値から差し引く。ここで得られた数値は、図２７（ｂ）〜（ｄ）に示した線分ＯＡの平均値となり、更新後の補正値となる。なお、図２７で示した例では、線分ＡＯの長さは線分ＳＯの長さよりも短いが、線分ＡＯの長さが線分ＳＯの長さよりも長い場合、補正値ＤＢ更新部２１は、算出した平均値を、補正値ＤＢ４ａから予め読み出していた更新すべき補正値に加算する。【０１９５】
補正値ＤＢ更新部２１は、所定数の移動量が蓄積された接触領域の面積に対応して補正値ＤＢ４ａに格納されている補正値を、更新後の補正値として算出した値に更新する。また、補正値ＤＢ更新部２１は、更新後の補正値を算出するためにＲＡＭ３又は記憶部４に蓄積していた移動量を削除する。これにより、不要な移動量の蓄積を防止し、ＲＡＭ３又は記憶部４の有効利用が可能となる。【０１９６】
なお、本実施形態７の表示態様決定部１３、タッチ終了検知部１７及び補正値ＤＢ更新部２１以外の各部は、上述の実施形態１で説明した処理と同一の処理を行なう。【０１９７】
以下に、本実施形態７の電気機器１０において、ユーザがタッチ操作する際に制御部１が行なう処理についてフローチャートに基づいて説明する。図２８乃至図３０は実施形態７の入力情報受付処理の手順を示すフローチャートである。以下の処理は、電気機器１０のＲＯＭ２又は記憶部４に格納されている制御プログラムに従って制御部１によって実行される。【０１９８】
制御部１は、タッチセンサ６１からの検出信号に基づいて、ユーザによってタッチパネル６をタッチ操作されたか否かを検出している（Ｓ１０１）。制御部１は、タッチ操作されたことを検出していない場合（Ｓ１０１：ＮＯ）、ステップＳ１１３へ処理を移行する。タッチ操作されたことを検出した場合（Ｓ１０１：ＹＥＳ）、制御部１は、ユーザがタッチ操作している接触点の座標値を取得する（Ｓ１０２）。【０１９９】
制御部１は、取得した接触点の座標値に基づいて、全ての接触点を含み、最小サイズとなる矩形の接触領域Ｒ０を特定する（Ｓ１０３）。制御部１は、特定した接触領域Ｒ０の基準点の座標値を取得する（Ｓ１０４）。具体的には、制御部１は、接触領域Ｒ０の上方の長辺の中央位置の座標値を取得する。また制御部１は、特定した接触領域Ｒ０の面積を算出する（Ｓ１０５）。【０２００】
制御部１は、算出した面積が、補正値ＤＢ４ａに格納されている接触領域の面積の最小値未満であるか否かを判断する（Ｓ１０６）。算出した面積が最小値未満であると判断した場合（Ｓ１０６：ＹＥＳ）、制御部１は、ステップＳ１０３で特定した接触領域Ｒ０に対応する操作対象を特定し、対応する操作対象を特定できたか否かを判断する（Ｓ１０７）。具体的には、制御部１は、接触領域Ｒ０を表示領域に含む操作対象を特定し、特定できたか否かを判断する。【０２０１】
制御部１は、操作対象を特定できなかったと判断した場合（Ｓ１０７：ＮＯ）、ステップＳ１０１に処理を戻す。操作対象を特定できたと判断した場合（Ｓ１０７：ＹＥＳ）、制御部１は、特定した操作対象に対応する入力情報を受け付け（Ｓ１０８）、処理を終了する。【０２０２】
ステップＳ１０５で算出された面積が最小値以上であると判断した場合（Ｓ１０６：ＮＯ）、制御部１は、算出した面積に応じた補正値を補正値ＤＢ４ａから読み出す（Ｓ１０９）。制御部１は、ステップＳ１０３で特定した接触領域Ｒ０の形状と、補正値ＤＢ４ａから読み出した補正値とに基づいて、タッチパネル６に表示すべきカーソルＣの表示態様を決定する（Ｓ１１０）。具体的には、制御部１は、接触領域Ｒ０の上方の長辺の中央位置の座標値と、接触領域Ｒ０の上方の長辺の中央位置から、この長辺に垂直な方向に、補正値ＤＢ４ａから読み出した補正値だけ隔てた位置の座標値とを算出する。【０２０３】
制御部１は、ステップＳ１１０で決定した表示態様でカーソルＣを表示させるための表示指示を表示部６０へ出力し、カーソルＣを表示部６０に表示させる（Ｓ１１１）。制御部１は、この時点（タッチ操作開始時点）でのカーソルＳの先端位置の座標値を取得する（Ｓ１１２）。【０２０４】
制御部１は、タッチセンサ６１からの検出信号に基づいて、ユーザによるタッチ操作が終了されたか否かを検出しており（Ｓ１１３）、タッチ操作が終了されたことを検出していない場合（Ｓ１１３：ＮＯ）、ステップＳ１０１に処理を戻す。【０２０５】
制御部１は、タッチ操作が終了されたことを検出するまで、ステップＳ１０１からＳ１１２の処理を繰り返す。タッチ操作が終了されたことを検出した場合（Ｓ１１３：ＹＥＳ）、制御部１は、その時点（タッチ操作終了時点）で表示されていたカーソルＥの先端位置の座標値を取得する（Ｓ１１４）。制御部１は、取得したカーソルＥの先端位置に対応する操作対象を特定し、対応する操作対象を特定できたか否かを判断する（Ｓ１１５）。具体的には、制御部１は、カーソルＥの先端位置を表示領域に含む操作対象を特定し、特定できたか否かを判断する。【０２０６】
制御部１は、操作対象を特定できなかったと判断した場合（Ｓ１１５：ＮＯ）、ステップＳ１０１に処理を戻す。操作対象を特定できたと判断した場合（Ｓ１１５：ＹＥＳ）、制御部１は、特定した操作対象に対応する入力情報を受け付ける（Ｓ１１６）。【０２０７】
制御部１は、ステップＳ１０４で取得した接触領域Ｒ０の基準点の座標値と、ステップＳ１１２で取得したカーソルＳの先端位置の座標値と、ステップＳ１１４で取得したカーソルＥの先端位置の座標値とに基づいて、カーソルＳからカーソルＥへの移動量を算出する。制御部１は、算出した移動量を、接触領域Ｒ０の面積に対応付けてＲＡＭ３又は記憶部４に格納する（Ｓ１１７）。制御部１は、格納した移動量に対応する面積に対して、所定数の移動量を格納しているか否かを判断する（Ｓ１１８）。【０２０８】
所定数の移動量を格納していないと判断した場合（Ｓ１１８：ＮＯ）、制御部１は、ステップＳ１０１に処理を戻す。所定数の移動量を格納していると判断した場合（Ｓ１１８：ＹＥＳ）、制御部１は、格納された移動量から異常値を除去する（Ｓ１１９）。制御部１は、異常値を除去した移動量に基づいて、補正値ＤＢ４ａに格納されている補正値に対する更新後の補正値を算出し、補正値ＤＢ４ａに格納されている補正値を、算出した更新後の補正値に更新する（Ｓ１２０）。【０２０９】
具体的には、制御部１は、異常値を排除した移動量の平均値を算出し、算出した平均値と、この時点で補正値ＤＢ４ａに格納されている補正値とに基づいて、更新後の補正値を算出する。
制御部１は、ステップＳ１２０で更新後の補正値を算出するためにＲＡＭ３又は記憶部４に格納されていた移動量を削除し（Ｓ１２１）、処理を終了する。【０２１０】
上述したように、本実施形態７では、タッチ操作開始時点からタッチ操作終了時点までのカーソルの移動量に基づいて、補正値ＤＢ４ａに格納されている補正量が動的に更新される。よって、ユーザがカーソルを実際に移動させる移動量に応じた補正量を補正値ＤＢ４ａに設定できるので、ユーザの使用状態に適した補正量を設定できる。これにより、ユーザのタッチ操作開始時点で表示されるカーソルの位置を、ユーザの使用状況に応じて最適化でき、ユーザがタッチ操作によってカーソルを移動させる移動距離が短縮されるので操作性が向上する。【０２１１】
本実施形態７は、上述した実施形態１の変形例として説明したが、上述した実施形態２〜６のような構成にも適用することができる。【０２１２】
（実施形態８）
以下に、実施形態８に係る電気機器について説明する。図３１は実施形態８の電気機器１０の構成例を示すブロック図である。本実施形態８の電気機器は、図１に示したハードウェア各部のほかに、外部記憶装置８を備える。外部記憶装置８は、例えば、ＣＤ−ＲＯＭドライバ又はＤＶＤドライバ等であり、ＣＤ−ＲＯＭ又はＤＶＤ−ＲＯＭ等である記録媒体８ａから、記録媒体８ａに格納されたデータを読み出す。【０２１３】
記録媒体８ａは、上述の各実施形態で説明した電気機器１０として動作するために必要な制御プログラムを記録している。外部記憶装置８は、記録媒体８ａから制御プログラムを読み出して記憶部４に格納させる。制御部１は、記憶部４に格納された制御プログラムをＲＡＭ３に読み出して順次実行し、これにより、本実施形態８の電気機器１０は、上述の各実施形態で説明した電気機器１０と同様の動作を行なう。【０２１４】
なお、上述の各実施形態の電気機器１０がユーザによるタッチパネル６のタッチ操作の検出及びカーソルの表示等を行なうための制御プログラムは、例えば、ユーザインタフェース用のミドルウェアであるＵＩミドルウェアである。また、このような制御プログラムは、ＯＳソフトウェアに組み込まれてもよく、ＯＳソフトウェアに組み込まれている場合は、ＯＳソフトウェアとして記録媒体８ａに格納される。更に、このような制御プログラムは、アプリケーションソフトウェアに組み込まれてもよく、アプリケーションソフトウェアに組み込まれている場合は、アプリケーションソフトウェアとして記録媒体８ａに格納される。【０２１５】
記録媒体８ａとしては、ＣＤ−ＲＯＭ又はＤＶＤ−ＲＯＭのほかに、フレキシブルディスク、メモリカード、ＵＳＢ（Universal Serial Bus）メモリ等、各種の記録媒体を用いることができる。【０２１６】
なお、電気機器１０は、インターネット又はＬＡＮ（Local Area Network）等のネットワークに接続するための通信部を有してもよい。この場合、電気機器１０は、上述の各実施形態で説明した電気機器１０として動作するために必要な制御プログラムを、ネットワークを介してダウンロードして記憶部４に格納させればよい。【０２１７】
上述した各実施形態では、電気機器１０がタッチパネル６を備え、電気機器１０の制御部１が、ユーザによるタッチパネル６のタッチ操作の検出及びカーソルの表示等を行なっていた。しかし、例えば、タッチパネル６を備えた端末装置で、サーバで提供されているカーソル表示補正機能を利用する形態にも本願を適用できる。この場合、端末装置が、ユーザによるタッチパネル６のタッチ操作を検出し、サーバが端末装置に対してカーソルの表示を指示する。【０２１８】
より具体的には、端末装置が、ユーザによるタッチパネル６のタッチ操作を検出し、検出結果をサーバへ送信する。そして、サーバが、端末装置から取得した検出結果に基づいて、カーソルの表示態様を決定し、決定した表示態様を端末装置へ送信する。端末装置は、サーバから受信した表示態様に従って、自身のタッチパネル６にカーソルを表示させる。これにより、ネットワークを介してサーバを利用する際に用いる端末装置においても、上述した各実施形態の電気機器１０と同様の効果が得られる。【０２１９】
上述した各実施形態では、タッチパネル６のタッチセンサ６１が、ユーザがタッチ操作する際のタッチパネル６との接触点を検出していた。しかし、タッチパネル６を操作するための専用のペンが、自身のペン先とタッチパネル６との接触点及び接触領域の情報を取得してもよい。例えば、専用のペンが、タッチパネル６又は記録紙上の所定のパターンを検出し、自身のペン先がタッチパネル６又は記録紙上のどの箇所と接触しているかを検出するセンサを備えてもよい。このようなペンで、所定のパターンが形成されたタッチパネル６又は記録紙上をタッチ操作した場合、ペンによって検出された接触点の情報を電気機器１０が取得することにより、上述の各実施形態の電気機器１０と同様の処理が可能となる。【０２２０】
上述した各実施形態では、ユーザがタッチ操作している際の接触領域の面積が、補正値ＤＢ４ａに格納されている接触領域の面積の最小値未満である場合にのみ、カーソルを表示させずに、接触領域を表示領域に含む操作対象が選択されたとしていた。このような構成のほかに、ユーザがタッチ操作している時間を計測し、計測した時間が所定時間（例えば１秒間）未満である場合にもカーソルを表示させずに、接触領域を表示領域に含む操作対象が選択されたとしてもよい。即ち、ユーザがタッチ操作している時間が所定時間（例えば１秒間）以上となった場合に、接触領域の面積に応じた位置へのカーソルの表示を開始してもよい。【０２２１】
上述した各実施形態では、ユーザがタッチ操作している際の接触領域の面積に応じた位置にカーソルを表示させていた。このような構成に更に、例えばユーザが指でタッチ操作している場合に、接触領域から指の先端までの長さを検出するセンサを備えてもよい。即ち、タッチパネル６には接触していない指先部分の長さを検出してもよい。この場合、少なくとも検出した長さを接触領域から隔てた位置にカーソルを表示させることにより、カーソルが指によって隠れる位置に表示されることを確実に防止できる。【０２２２】
上述した各実施形態では、ユーザがタッチ操作している際の接触領域の面積に応じて、接触領域からカーソルの始点までの距離を決定していたが、接触領域の面積に応じて、接触領域を始点とするカーソルの長さを決定するようにしてもよい。この場合、補正値ＤＢ４ａの補正値の欄には、接触領域からカーソルの始点までの距離ではなく、接触領域の面積に対応付けて、接触領域を始点とするカーソルの長さが格納される。カーソルの長さは、接触領域の周辺の指で隠れる領域を考慮して、最低の長さを基準として、補正値と同様に、接触領域の面積に応じて、長さを長くしておく。この構成により、上述の各実施形態と同様の効果が得られる。
本出願は、さらに下記の付記を開示する。
（付記１）
コンピュータの制御部に、所定の接触対象に対する接触操作による入力情報を受け付けさせるコンピュータプログラムにおいて、
コンピュータの制御部に、
前記接触対象に対して接触操作された接触領域の情報をタッチセンサより取得させる領域取得ステップと、
該領域取得ステップで取得した接触領域の情報に基づいて、記憶部に記憶された情報を参照し、接触操作に連動して表示される操作対象指示子の表示態様を決定させる決定ステップと、
該決定ステップで決定した表示態様で前記操作対象指示子を表示部に表示させる表示指示を出力させる出力ステップと、
前記接触領域の移動に連動して、前記表示された操作対象指示子を移動させる移動ステップと、
接触操作が終了した時点の前記操作対象指示子の表示位置に対応する入力情報を受け付けさせる受付ステップと
を含むコンピュータプログラム。
（付記２）
前記接触領域の情報は、面積である付記１に記載のコンピュータプログラム。
（付記３）
前記表示態様は、前記操作対象指示子のサイズである付記１または２に記載のコンピュータプログラム。
（付記４）
前記表示態様は、前記操作対象指示子の始点から前記接触領域の端部までの距離を含む付記３に記載のコンピュータプログラム。
（付記５）
前記接触領域の情報は、面積及び矩形を示す情報であり、
前記決定ステップは、面積に応じて前記操作対象指示子の始点とすべき矩形上の位置を決定する付記１〜４のいずれか１つに記載のコンピュータプログラム。
（付記６）
前記決定ステップは、前記接触領域の面積が所定の閾値以下である場合、前記操作対象指示子の表示を抑止し、
前記受付ステップは、前記接触操作が終了した時点の前記接触領域に対応する入力情報を受け付けさせる付記１〜５のいずれか１つに記載のコンピュータプログラム。
（付記７）
前記操作対象指示子が指し示す操作対象の大きさに応じて、前記所定の閾値を設定させる設定ステップを含む付記６に記載のコンピュータプログラム。
（付記８）
前記接触対象を含む機器の操作状況を示す情報を取得させる状況取得ステップを含み、
前記決定ステップは、前記状況取得ステップで取得した情報及び前記領域取得ステップで取得した接触領域の情報に基づいて、操作対象指示子の表示態様を決定する付記１〜７のいずれか１つに記載のコンピュータプログラム。
（付記９）
前記操作状況を示す情報は、前記機器の操作状況を検出する検出回路から出力される検出信号に基づく情報である付記８に記載のコンピュータプログラム。
（付記１０）
前記検出回路は、前記接触対象に対する接触操作による接触圧力を検出する回路である付記９に記載のコンピュータプログラム。
（付記１１）
前記検出回路は、前記機器に加えられた傾きを検出する回路である付記９に記載のコンピュータプログラム。
（付記１２）
前記領域取得ステップにて取得された接触領域の情報に基づいて、所定の条件に従って複数の接触領域に分類させる領域分類ステップを含み、
前記領域取得ステップは、前記領域分類ステップで分類された複数の接触領域のそれぞれの面積に応じて選択された１つの接触領域の情報を取得する付記１〜１１のいずれか１つに記載のコンピュータプログラム。
（付記１３）
前記接触対象に対する接触操作の終了位置を検出する終了検出ステップと、
前記領域取得ステップで取得した接触領域の情報、前記決定ステップで決定した表示態様及び前記終了検出ステップで検出した終了位置に基づいて、前記操作対象指示子の表示態様を決定するための情報を特定する特定ステップとを含み、
前記決定ステップは、前記特定ステップで特定した情報及び前記領域取得ステップで取得した接触領域の情報に基づいて、操作対象指示子の表示態様を決定する付記１〜１２のいずれか１つに記載のコンピュータプログラム。
（付記１４）
所定の接触対象に対する接触操作による入力情報を受け付ける入力装置において、
表示部と、
タッチセンサと、
記憶部と、
前記接触対象に対して接触操作された接触領域の情報を前記タッチセンサより取得する領域取得手段と、
該領域取得手段が取得した接触領域の情報に基づいて、前記記憶部に記憶された情報を参照し、接触操作に連動して表示される操作対象指示子の表示態様を決定する決定手段と、
該決定手段が決定した表示態様で前記操作対象指示子を前記表示部に表示させる表示指示を出力する出力手段と、
前記接触操作が終了したことに応じて、接触操作が終了した時点の前記操作対象指示子の表示位置に基づいて、操作対象を特定する特定手段と、
前記特定した操作対象に対して、接触操作による入力情報を通知する通知手段と、
前記接触領域の移動に連動して、前記表示された操作対象指示子を移動させる移動手段と、
接触操作が終了した時点の前記操作対象指示子の表示位置に対応する入力情報を受け付ける受付手段と
を備える入力装置。
（付記１５）
前記接触対象に対して接触操作された箇所を検出する接触検出手段を備え、
前記領域取得手段は、前記接触検出手段が検出した箇所に基づいて前記接触領域の情報を取得する付記１４に記載の入力装置。
【図１】
0005423686.tif 000002
【図２】
0005423686.tif 000003
【図３】
0005423686.tif 000004
【図４】
0005423686.tif 000005
【図５】
0005423686.tif 000006
【図６】
0005423686.tif 000007
【図７】
0005423686.tif 000008
【図８】
0005423686.tif 000009
【図９】
0005423686.tif 000010
【図１０】
0005423686.tif 000011
【図１１】
0005423686.tif 000012
【図１２】
0005423686.tif 000013
【図１３】
0005423686.tif 000014
【図１４】
0005423686.tif 000015
【図１５】
0005423686.tif 000016
【図１６】
0005423686.tif 000017
【図１７】
0005423686.tif 000018
【図１８】
0005423686.tif 000019
【図１９】
0005423686.tif 000020
【図２０】
0005423686.tif 000021
【図２１】
0005423686.tif 000022
【図２２】
0005423686.tif 000023
【図２３】
0005423686.tif 000024
【図２４】
0005423686.tif 000025
【図２５】
0005423686.tif 000026
【図２６】
0005423686.tif 000027
【図２７】
0005423686.tif 000028
【図２８】
0005423686.tif 000029
【図２９】
0005423686.tif 000030
【図３０】
0005423686.tif 000031
【図３１】
0005423686.tif 000032