JP2014071504A - 電子機器、電子機器の制御方法及びコンピュータプログラム - Google Patents

電子機器、電子機器の制御方法及びコンピュータプログラム Download PDF

Info

Publication number
JP2014071504A
JP2014071504A JP2012215015A JP2012215015A JP2014071504A JP 2014071504 A JP2014071504 A JP 2014071504A JP 2012215015 A JP2012215015 A JP 2012215015A JP 2012215015 A JP2012215015 A JP 2012215015A JP 2014071504 A JP2014071504 A JP 2014071504A
Authority
JP
Japan
Prior art keywords
user
touch
color
communication terminal
electronic device
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2012215015A
Other languages
English (en)
Inventor
Kazuteru Yamanaka
一輝 山中
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Aisin AW Co Ltd
Original Assignee
Aisin AW Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Aisin AW Co Ltd filed Critical Aisin AW Co Ltd
Priority to JP2012215015A priority Critical patent/JP2014071504A/ja
Publication of JP2014071504A publication Critical patent/JP2014071504A/ja
Pending legal-status Critical Current

Links

Images

Abstract

【課題】ユーザの操作性を低下させることなく、且つ撮像装置を用いた正確なタッチ操作の検出を可能にした電子機器、電子機器の制御方法及びコンピュータプログラムを提供する。
【解決手段】端末ケース内に通信端末が配置された状態で、操作板へのユーザのタッチ操作の操作態様を、通信端末に内蔵されたカメラによって撮像し、撮像された撮像画像に基づいて、ユーザの指先端部の色を検出し、検出されたユーザの指先端部の色に基づいて、更に操作板に対するユーザのタッチ操作を検出し、検出された操作板に対するユーザのタッチ操作に基づいて通信端末へのユーザ操作を行うように構成する。
【選択図】図28

Description

本発明は、各種画像を表示する為の表示画面を備えた電子機器、電子機器の制御方法及びコンピュータプログラムに関する。
従来より、スマートフォンや携帯電話機やタブレット型端末等の表示画面を備えた携帯型の電子機器では、各種のアプリケーションプログラムをインストールし、インストールされたアプリケーションプログラムを起動させることによって、表示画面を用いた様々な機能を実行することが可能である。このようなアプリケーションプログラムとしては、例えば、ウェブブラウザやメールソフト以外に、ナビゲーションアプリ等も存在する。ここで、ナビゲーションアプリを起動させることとすれば、電子機器において様々なナビゲーション機能を実行することが可能である。実行されるナビゲーション機能としては、例えば、表示画面に対して現在位置周辺の地図画像を表示したり、任意に設定した出発地から目的地までの案内経路を表示したり、案内経路に沿った目的地までの移動案内を行うこと等が可能となっている。
しかしながら、上記携帯型の電子機器は、ユーザに携帯されることを前提としているので、筐体サイズを大きくすることができず、画像を表示する為の表示画面についてもサイズに上限が生じていた。その結果、例えば表示画面からユーザが離れた状態で表示画面を視認する必要がある状況では、表示画面に表示された表示内容が、ユーザにとって見辛くなる問題があった。そこで、例えば特開2003−143282号公報には、携帯電話機に装着することによって、携帯電話機の表示画面を拡大して表示することが可能な表示拡大装置について提案されている。
特開2003−143282号公報(第3−4頁、図1、図2)
ここで、上記電子機器において上記アプリケーションプログラムの起動や起動されたアプリケーションプログラム中の操作を行う際には、ユーザはタッチパネルやボタン等の電子機器に設けられた操作手段を操作し、文字や数値を入力したり、選択を行うように構成されている。しかしながら、特許文献1に記載の技術のように、電子機器に対して表示画面を拡大する為の機器を装着することとすると、これらの操作手段の操作が装着された機器によって阻害されてしまう問題が有った。
本発明は前記従来における問題点を解消するためになされたものであり、電子機器の周囲に電子機器に対するユーザの操作を阻害する障害物が置かれた場合であっても、表示画面の前方にある操作板へのタッチ操作に基づいて電子機器を操作することによってユーザの操作性を低下させることなく、且つ撮像装置を用いた正確なタッチ操作の検出を可能にした電子機器、電子機器の制御方法及びコンピュータプログラムを提供することを目的とする。
前記目的を達成するため本願の請求項1に係るコンピュータプログラムは、表示画面(4)と撮像装置(5)とを備えた電子機器(1)の表示画面の前方に配置された操作板(6)に対するタッチ操作に基づいて前記電子機器を操作するコンピュータプログラムにおいて、前記電子機器の撮像装置によって撮像された前記表示画面前方の撮像画像に基づいて、前記操作板をタッチ操作するユーザの手の指先部分の色を検出する色検出機能と、前記色検出機能によって検出された前記ユーザの手の指先部分の色に基づいて、前記操作板に対する前記ユーザのタッチ操作を検出するタッチ操作検出機能と、前記タッチ操作検出機能によって検出された前記操作板に対する前記ユーザのタッチ操作に基づいて、前記電子機器へのユーザ操作を行う操作機能と、を前記電子機器に実行させることを特徴とする。
尚、「操作板に対するタッチ操作」は、操作板に対する押し込み、操作板に対するなぞり、操作板に対するフリック操作等の操作板を触って操作する概念をいう。
また、「電子機器へのユーザ操作」は、電子機器にユーザが直接的に接触せずに、操作板に対する上記タッチ操作に基づいて行われる電子機器の操作(例えば、表示画面に表示されたアイコンの選択操作、電源のオン、オフの切り換え操作、ホーム画面への移行操作等)をいう。
また、請求項2に係るコンピュータプログラムは、請求項1に記載のコンピュータプログラムであって、前記タッチ操作検出機能は、前記色検出機能によって検出された前記ユーザの手の指先部分の色が所定の色の範囲にある場合に、該所定の色の範囲にある指先部分を、前記操作板(6)に対して前記ユーザがタッチしたタッチ地点として特定することを特徴とする。
また、請求項3に係るコンピュータプログラムは、請求項2に記載のコンピュータプログラムであって、前記所定の色の範囲は、手の指先部分が前記操作板(6)に接触した状態で示す色の範囲とすることを特徴とする。
また、請求項4に係るコンピュータプログラムは、請求項2又は請求項3に記載のコンピュータプログラムであって、前記タッチ操作検出機能は、前記色検出機能によって検出された前記ユーザの手の指先部分の色が前記所定の色の範囲内から範囲外へと変化したタイミングで、前記操作板(6)に対して前記ユーザがタッチオンしたと検出し、前記色検出機能によって検出された前記ユーザの手の指先部分の色が前記所定の色の範囲内から範囲外へと変化したタイミングで、前記操作板(6)に対して前記ユーザがタッチオフしたと検出することを特徴とする。
また、請求項5に係るコンピュータプログラムは、請求項2乃至請求項4のいずれかに記載のコンピュータプログラムであって、前記タッチ操作検出機能によって特定された前記タッチ地点の履歴に基づいて、前記操作板(6)に対する前記ユーザのタッチ操作の操作種別を検出する操作種別検出機能を、前記電子機器(1)に実行させ、前記操作機能は、前記操作種別検出機能によって検出された前記ユーザのタッチ操作の操作種別に基づいて、前記電子機器へのユーザ操作を行うことを特徴とする。
尚、「タッチ操作の操作種別」としては、ドラッグ操作、フリック操作、ピンチ操作等が有る。
また、請求項6に係るコンピュータプログラムは、請求項1乃至請求項5のいずれかに記載のコンピュータプログラムであって、前記電子機器(1)は前記表示画面(4)の前面にタッチパネル(18)が配置され、前記操作機能は、前記操作板(6)に対する前記ユーザのタッチ操作を、前記タッチパネルに対するタッチ操作に置き換えて、該置き換えた操作による前記電子機器へのユーザ操作を行う機能であることを特徴とする。
また、請求項7に係るコンピュータプログラムは、請求項6に記載のコンピュータプログラムであって、前記タッチ操作検出機能は、前記操作板(6)に対して前記ユーザがタッチしたタッチ地点を前記操作板上の座標系で特定し、前記操作機能は、前記操作板上の座標系で特定されたタッチ地点を前記表示画面(4)上の座標系に変換し、前記操作板に対する前記ユーザのタッチ操作を、前記表示画面上の座標系に変換されたタッチ地点を前記タッチパネル(18)でタッチする操作に置き換えることを特徴とする。
また、請求項8に係るコンピュータプログラムは、請求項7に記載のコンピュータプログラムであって、前記タッチパネル(18)によって操作対象となる操作対象物(26、27、28、30、32、33、34)を前記表示画面(4)に表示させる表示機能を、前記電子機器(1)に実行させ、前記操作機能は、前記電子機器へのユーザ操作として、前記表示画面上の座標系に変換されたタッチ地点に対応する前記操作対象物の操作を行う機能であることを特徴とする。
また、請求項9に係るコンピュータプログラムは、請求項7又は請求項8に記載のコンピュータプログラムであって、前記操作機能は、前記ユーザが前記操作板(6)を介して視認できる前記表示画面(4)と変換前のタッチ地点との位置関係が、前記電子機器(1)の前記表示画面と変換後のタッチ地点との位置関係に対応するように、前記操作板上の座標系で特定されたタッチ地点を前記表示画面上の座標系に変換することを特徴とする。
また、請求項10に係るコンピュータプログラムは、請求項1乃至請求項9のいずれかに記載のコンピュータプログラムであって、前記操作板(6)には、拡大鏡が形成され、前記表示画面(4)の表示内容は前記操作板を介して拡大して表示されることを特徴とする。
尚、「拡大鏡」としては、フレネルレンズや凸レンズ等が有る。
また、請求項11に係る電子機器の制御方法は、表示画面(4)と撮像装置(5)とを備えた電子機器(1)の表示画面の前方に配置された操作板(6)に対するタッチ操作に基づいて前記電子機器を操作する電子機器の制御方法であって、前記電子機器の撮像装置によって撮像された前記表示画面前方の撮像画像に基づいて、前記操作板をタッチ操作するユーザの手の指先部分の色を検出する色検出ステップと、前記色検出ステップによって検出された前記ユーザの手の指先部分の色に基づいて、前記操作板に対する前記ユーザのタッチ操作を検出するタッチ操作検出ステップと、前記タッチ操作検出ステップによって検出された前記操作板に対する前記ユーザのタッチ操作に基づいて、前記電子機器へのユーザ操作を行う操作ステップと、を有することを特徴とする電子機器の制御方法。
更に、請求項12に係る電子機器は、表示画面(4)と撮像装置(5)とを備え、前記表示画面の前方に配置された操作板(6)に対するタッチ操作に基づいて操作される電子機器(1)であって、前記撮像装置によって撮像された前記表示画面前方の撮像画像に基づいて、前記操作板をタッチ操作するユーザの手の指先部分の色を検出する色検出手段(11)と、前記色検出手段によって検出された前記ユーザの手の指先部分の色に基づいて、前記操作板に対する前記ユーザのタッチ操作を検出するタッチ操作検出手段(11)と、前記タッチ操作検出手段によって検出された前記操作板に対する前記ユーザのタッチ操作に基づいて、前記電子機器へのユーザ操作を行う操作手段(11)と、を有することを特徴とする。
前記構成を有する請求項1に記載のコンピュータプログラムによれば、電子機器の周囲に電子機器に対するユーザの操作を阻害する障害物が置かれた場合であっても、表示画面の前方に配置された操作板へのユーザのタッチ操作に基づいて電子機器へのユーザ操作を行わせるので、表示画面への視認性を確保しつつ、ユーザの操作性が低下することについても防止することが可能となる。また、ユーザの手の指先部分の色に基づいてタッチ操作を検出させるので、タッチパネルを用いなくとも撮像装置を用いて正確なタッチ操作の検出が可能となる。
また、請求項2に記載のコンピュータプログラムによれば、ユーザの手の指先部分の色が所定の色の範囲にある場合に、該所定の色の範囲にある指先部分を、操作板に対してユーザがタッチしたタッチ地点として特定するので、撮像装置を用いて正確なタッチ地点の特定が可能となる。
また、請求項3に記載のコンピュータプログラムによれば、ユーザの手の指先部分の色が、操作板に接触した状態で示す色の範囲にある場合に、該色の範囲にある指先部分を、操作板に対してユーザがタッチしたタッチ地点として特定するので、撮像装置を用いて正確なタッチ地点の特定が可能となる。
また、請求項4に記載のコンピュータプログラムによれば、ユーザの手の指先部分の色が所定の色の範囲外から範囲内へと変化したタイミングでユーザがタッチオンしたと検出し、ユーザの手の指先部分の色が所定の色の範囲内から範囲外へと変化したタイミングでユーザがタッチオフしたと検出するので、撮像装置を用いて正確なタッチオン及びタッチオフのタイミングの検出が可能となる。
また、請求項5に記載のコンピュータプログラムによれば、ユーザの操作板へのタッチ操作の操作種別を検出し、検出された操作種別に基づいて電子機器へのユーザ操作を行うので、ドラッグ操作やフリック操作やピンチ操作等の特殊なタッチ操作に基づいて電子機器へのユーザ操作を行わせることが可能となる。従って、タッチパネルの操作と同等の操作感覚で操作板による電子機器へのユーザ操作を行わせることが可能となる。
また、請求項6に記載のコンピュータプログラムによれば、操作板に対するユーザのタッチ操作を、タッチパネルに対する操作に置き換えて、電子機器へのユーザ操作を行うので、タッチパネルにユーザが直接タッチしなくとも、操作板へのタッチ操作によってタッチパネルの操作を実現することが可能となる。従って、タッチパネルに直接操作を行う場合と比較しても操作性が低下することが無い。
また、請求項7に記載のコンピュータプログラムによれば、操作板に対するユーザのタッチ操作を、表示画面上の座標系に変換されたタッチ地点をタッチパネルでタッチするタッチ操作に置き換えるので、タッチパネルにユーザが直接タッチしなくとも、操作板へのタッチ操作によってタッチパネルの任意の地点にタッチするユーザ操作を実現することが可能となる。また、操作板へのタッチ地点を変更すれば、置き換えられるタッチパネルのタッチ地点も変化するので、ユーザの意図に沿った容易な操作が実現可能となる。
また、請求項8に記載のコンピュータプログラムによれば、操作板に対するユーザのタッチ操作を、表示画面上の操作対象物をタッチパネルでタッチする操作に置き換えるので、タッチパネルにユーザが直接タッチしなくとも、操作板へのタッチ操作によって表示画面に表示された操作対象物をタッチするユーザ操作を実現することが可能となる。
また、請求項9に記載のコンピュータプログラムによれば、ユーザが操作板を介して視認できる表示画面と変換前のタッチ地点との位置関係が、電子機器の表示画面と変換後のタッチ地点との位置関係に対応するように、操作板上の座標系で特定されたタッチ地点を表示画面上の座標系に変換するので、ユーザが操作板を介して視認できる表示画面にタッチパネルが配置されているのと同等の電子機器に対するユーザ操作を実現することが可能となる。
また、請求項10に記載のコンピュータプログラムによれば、操作板を介して表示画面の表示内容を拡大して表示するので、例えば表示画面からユーザが離れた状態で表示画面を視認する必要がある状況であっても、ユーザに表示内容を詳細に示すことが可能となる。
また、請求項11に記載の電子機器の制御方法によれば、電子機器の周囲に電子機器に対するユーザの操作を阻害する障害物が置かれた場合であっても、表示画面の前方に配置された操作板へのユーザのタッチ操作に基づいて電子機器へのユーザ操作を行うので、表示画面への視認性を確保しつつ、ユーザの操作性が低下することについても防止することが可能となる。また、ユーザの手の指先部分の色に基づいてタッチ操作を検出するので、タッチパネルを用いなくとも撮像装置を用いて正確なタッチ操作の検出が可能となる。
更に、請求項12に記載の電子機器によれば、電子機器の周囲に電子機器に対するユーザの操作を阻害する障害物が置かれた場合であっても、表示画面の前方に配置された操作板へのユーザのタッチ操作に基づいて電子機器へのユーザ操作を行うので、表示画面への視認性を確保しつつ、ユーザの操作性が低下することについても防止することが可能となる。また、ユーザの手の指先部分の色に基づいてタッチ操作を検出するので、タッチパネルを用いなくとも撮像装置を用いて正確なタッチ操作の検出が可能となる。
第1実施形態に係る端末操作システムを示した概略構成図である。 端末ケースを開放した状態を示した図である。 フレネルレンズによって拡大される通信端末のディスプレイの表示内容を示した図である。 第1実施形態に係る通信端末の制御系を模式的に示すブロック図である。 通信端末のディスプレイに表示されるトップ画面を示した図である。 通信端末のディスプレイに表示されるナビゲーション画面を示した図である。 第1実施形態に係る端末操作処理プログラムのフローチャートである。 通信端末に内蔵されたカメラによる周辺の撮像態様を示した図である。 第1実施形態に係る初期設定処理のサブ処理プログラムのフローチャートである。 第1実施形態に係る画像補正処理のサブ処理プログラムのフローチャートである。 第1実施形態に係る画像補正処理のサブ処理プログラムのフローチャートである。 第1実施形態に係る操作板を示した上面図である。 通信端末の設置位置と撮像される撮像画像の関係を示した図である。 通信端末の設置位置と撮像される撮像画像の関係を示した図である。 通信端末の設置位置と撮像される撮像画像の関係を示した図である。 ステップ52の画像出力の補正処理を行う前と行った後のディスプレイの表示内容を示した図である。 ステップ52の画像出力の補正処理を行う前と行った後の操作板を介してユーザが視認できるディスプレイの表示内容を示した図である。 第1実施形態に係る補正値計算処理のサブ処理プログラムのフローチャートである。 第1実施形態に係る補正値計算処理のサブ処理プログラムのフローチャートである。 補正値計算処理における補正値算出の手順について説明した図である。 補正値計算処理における補正値算出の手順について説明した図である。 補正値計算処理における補正値算出の手順について説明した図である。 補正値計算処理における補正値算出の手順について説明した図である。 補正値計算処理における補正値算出の手順について説明した図である。 補正値計算処理における補正値算出の手順について説明した図である。 第1実施形態に係るタッチ検出処理のサブ処理プログラムのフローチャートである。 第1実施形態に係るタッチ検出処理のサブ処理プログラムのフローチャートである。 指先端部の色に基づくタッチ座標の検出方法について説明した図である。 タッチ座標の変換方法について説明した図である。 ハードキーの仮想操作領域について説明した図である。 ハードキーの仮想操作領域について説明した図である。 第1実施形態に係るカメラ感度調整処理のサブ処理プログラムのフローチャートである。 第1実施形態に係る画面輝度調整処理のサブ処理プログラムのフローチャートである。 第2実施形態に係るタッチ検出処理のサブ処理プログラムのフローチャートである。 第2実施形態に係るタッチ検出処理のサブ処理プログラムのフローチャートである。 指先端部の輪郭の幅に基づくタッチ座標の検出方法について説明した図である。 第3実施形態に係るハードキー操作処理プログラムのフローチャートである。 振動パターンとハードキーの操作内容とを対応付けた対応情報の一例を示した図である。
以下、本発明に係る電子機器について携帯型の通信端末に具体化した第1実施形態乃至第3実施形態について、図面を参照しつつ詳細に説明する。
[第1実施形態]
先ず、第1実施形態に係る通信端末1を含む端末操作システム2の概略構成について図1を用いて説明する。図1は第1実施形態に係る端末操作システム2を示した概略構成図である。
図1に示すように、第1実施形態に係る端末操作システム2は、携帯型の通信端末1と通信端末1が内部に配置される端末ケース3から基本的に構成されている。尚、通信端末1としては例えばスマートフォン、携帯電話機、PDA、タブレット型端末等があるが、以下に示す例ではスマートフォンを用いて説明することとする。
ここで、通信端末1は、各種画像を表示する為のディスプレイ4と、周囲を撮像する為のカメラ5が内蔵された携帯型の情報通信端末が用いられる。また、通信端末1にはウェブブラウザ、メールソフト、ナビゲーションアプリ等を含めた複数のアプリケーションプログラムがインストールされている。ここで、インストールされた各種アプリケーションプログラムは、後述するようにトップ画面(図5参照)において起動アイコンが選択された場合に起動され、ユーザ(操作者)の操作に基づいて通信端末1において各種機能を実行させる。例えば、ナビゲーションアプリでは、サーバから取得したりメモリに格納された地図情報や交通情報に基づいて通信端末1の現在位置周辺の地図画像や交通情報を表示したり、表示された地図画像中において通信端末1の現在位置を表示したり、設定された出発地から目的地までの経路の探索及び案内をする機能等がある。また、通信端末1は、後述の送受信回路部(RF)13を介して通信ネットワーク網に接続され、通信端末間や外部センタと双方向通信可能に構成されている。尚、通信端末1の詳細については後述する。
一方、端末ケース3は、アクリル板等の透過性の高い無色透明の板状部材によって形成された箱型形状を有し、内部に通信端末1を配置可能に構成されている。但し、端末ケース3を形成する各板状部材の内、内部に配置された通信端末1のディスプレイ4と対向する板状部材(以下、操作板6という)については後述のようにフレネルレンズが形成されている。また、操作板6は一端が回動可能に支持されており、端末ケース3の蓋の役目を有する。そして、図2に示すように操作板6を上側方向に回動することによって、通信端末1の端末ケース3内に対する配置及び取り出しが可能に構成されている。
また、端末ケース3を構成する各板状部材の内、操作板6と対向する板状部材(以下、底板7という)の中心付近には、通信端末1を端末ケース3に対して固定する為の固定部8が設けられている。尚、通信端末1に内蔵されたカメラ5で操作板6を撮像する目的から、特に通信端末1が端末ケース3に固定された場合に、カメラ5のレンズ位置が底板7の中心付近となるように固定部8の位置を調整することが望ましい。そして、第1実施形態に係る端末操作システム2では、後述のように固定部8に対して通信端末1を固定し、操作板6を閉鎖した図1に示す状態であっても、操作板6へのタッチ操作により通信端末1に対する操作を行うことが可能に構成されている。尚、端末ケース3は、例えば車両内のインストルメントパネル等に設置される。
ここで、前記したように操作板6にはフレネルレンズが形成されているので、端末ケース3内に通信端末1が配置された状態では、図3に示すように端末ケース3の正面から操作板6を介してユーザが通信端末1を視認すると、端末ケース3の内部に配置された通信端末1が拡大されて視認されることとなる。その拡大率は、通信端末1から操作板6までの離間距離Lやフレネルレンズの焦点距離を調整することによって適宜変更可能であるが、例えば、通信端末1のディスプレイ4の全体が操作板6の全領域の所定割合(例えば80%)で視認することが可能に構成する。その結果、ユーザから通信端末1までの距離が離れている場合であっても、通信端末1のディスプレイ4に表示される表示内容をユーザに明確に示すことが可能となる。
尚、図1及び図2に示す端末ケース3は一例であり、端末ケース3の形状は直方体以外の形状をしていても良い。また、端末ケース3については少なくとも操作板6を構成する板状部材が透過性の高い材質で形成されていれば、他の板状部材については不透過な材質により形成されていても良い。また、通信端末1を内部に配置する際には操作板6以外の部分を開閉可能としても良く、通信端末1の端末ケース3に対する固定方法は、ゴム製バンドを用いたり、金具を用いて固定することも可能である。
次に、ユーザの有する通信端末1の概略構成について図4を用いて説明する。図4は第1実施形態に係る通信端末1の制御系を模式的に示すブロック図である。
図4に示すように通信端末1はデータバスBUSに、CPU11と、通信端末1を所持するユーザに関するユーザ情報やアプリケーションプログラム等が記憶されたメモリ12と、通信ネットワーク網の基地局との間で信号の送受信を行う送受信回路部(RF)13と、送受信回路部13において受信したRF(Radio Frequency)信号をベースバンド信号に変換するとともにベースバンド信号をRF信号に変換するベースバンド処理部14と、マイクロホン15及びスピーカ16等とのインターフェイスである入出力部17と、ディスプレイ4と、カメラ5と、ユーザの操作を受け付けるタッチパネル18と、ダイヤルやボタン等のハードウェアの操作部であるハードキー19と、加速度センサ20や照度センサ21等の各種センサとが接続されることにより構成されている。
ここで、通信端末1に内蔵されるCPU11は、メモリ12に格納されている動作プログラムに従って種々の動作を実行する通信端末1の制御手段であり、メモリ12とともに通信端末ECU22を構成する。また、通信端末ECU22の各種処理内容は必要に応じてディスプレイ4に表示される。尚、通信端末ECU22は、処理アルゴリズムとしての各種手段を構成する。例えば、色検出手段は、カメラ5によって撮像されたディスプレイ4前方の撮像画像に基づいて、操作板6をタッチ操作するユーザの手の指先部分の色を検出する。タッチ操作検出手段は、色検出手段によって検出されたユーザの手の指先部分の色に基づいて、操作板6に対するユーザのタッチ操作を検出する。操作手段は、タッチ操作検出手段によって検出された操作板6に対するユーザのタッチ操作に基づいて、通信端末1へのユーザ操作を行う。
また、メモリ12は通信端末1を所持するユーザに関するユーザ情報やカメラ5で撮像された撮像画像やインストールされたアプリケーションプログラムの他、後述の端末操作処理プログラム(図7参照)等が記憶された記憶媒体である。また、メモリ12は、ハードディスク、メモリーカード、CDやDVD等の光ディスク等により構成しても良い。
また、ディスプレイ4は、筐体の一面に配設されており、液晶ディスプレイや有機ELディスプレイ等によって構成される。そして、通信端末1にインストールされている各種アプリケーションを実行する為のトップ画面や、実行されたアプリケーションに係る画面(インターネット画面、メール画面、ナビゲーション画面等)や、画像、動画等の各種情報が表示される。
ここで、図5は特にディスプレイ4に表示されるトップ画面25の一例について示した図である。トップ画面25は通信端末1の電源をONした後にディスプレイ4に表示され、通信端末1にインストールされている各種アプリケーションを実行する為の操作を受け付ける基本操作画面であり、ホーム画面やデスクトップ等が相当する。
図5に示すように、トップ画面25には、複数の起動アイコン26〜28が配置されている。起動アイコン26〜28は、通信端末1にインストールされているアプリケーションを起動させる為に操作される操作対象物であり、ユーザによって起動アイコン26〜28が操作される(例えばタッチパネルによりタッチされる)と、操作された起動アイコン26〜28に対応したアプリケーションの起動が開始される。例えば、図5に示す例では、通信端末1に対してナビゲーションアプリとインターネットブラウザアプリとメールアプリがインストールされている場合のトップ画面25を示す。そして、起動アイコン26が操作されると、ナビゲーションアプリが起動される。また、起動アイコン27が操作されると、インターネットブラウザアプリが起動される。また、起動アイコン28が操作されると、メールアプリが起動される。
また、図6はトップ画面25において特にナビゲーションアプリを起動させる為の起動アイコン26が操作された場合に、ディスプレイ4に表示されるナビゲーション画面29の一例について示した図である。
図6に示すように、ナビゲーション画面29には、通信端末1周辺の地図画像30と、通信端末1(即ちユーザ)の地図上に特定された現在位置を示す現在位置マーク31が表示される。また、地点登録や経路探索を行う際等に操作される操作対象物として各種操作ボタン32〜34についても表示される。また、現在位置周辺の渋滞情報や交通規制等の交通情報(例えば、図6に示す例では工事による通行規制を示すマーク35)についても表示される。更に、通信端末1において目的地までの案内経路が設定された場合には、地図画像上で案内経路に沿って描かれた案内経路線や、目的地の位置を示す目的地マークについても表示される。そして、ユーザはディスプレイ4に表示されたナビゲーション画面29を参照することによって、ユーザ周辺の道路形状や交通状況、目的地までの経路等を把握することが可能となる。更に、地図画像30に対してドラッグ操作やフリック操作を行った場合には、地図画像30のスクロール表示を行うことも可能である。
また、カメラ5は、小型のCCDカメラであり、通信端末1に内蔵される。また、レンズは通信端末1の筐体前面であってディスプレイ4と重複しない位置に配置される。そして、カメラ5の撮像方向がディスプレイ4の向きと同方向(即ち、ディスプレイ4から照射される光の光軸方向が撮像方向)となるように構成される。また、カメラ5は焦点距離や感度を任意に調整可能に構成されている。尚、カメラ5は、基本的にユーザによる通信端末1の操作に基づいて撮像を行うが、特に第1実施形態では、通信端末1が端末ケース3内に配置された場合に、ディスプレイ4の前方に対向して配置される操作板6をケース内側から撮像する。
また、タッチパネル18は、ディスプレイ4の表示領域の前面に配置され、ディスプレイ4に表示されたアイコンやボタン等の操作対象物を操作する為の操作手段である。そして、通信端末ECU22は、タッチパネル18の押下等により出力される電気信号に基づき、対応する各種の動作を実行すべく制御を行う。特に第1実施形態に係る通信端末1では、上述したトップ画面25における起動アイコン26〜28の操作や、起動されたアプリケーションでの各種選択及び入力操作等に用いられる。更に、後述のように端末ケース3内に通信端末1が配置された状態においては、操作板6へのタッチ操作をタッチパネル18の操作に置き換えて通信端末1の操作を行うことも可能である。
一方、ハードキー19は、ディスプレイ4上ではなく通信端末1の筐体表面に形成されたハードウェアの操作手段である。例えば、ハードキー19としては、トップ画面25に戻る際に操作されるホームボタン、各種機能が割り当てられるサイドボタン、音量を調整する為のダイヤルキー、カーソルを動かすカーソルキー、文字や数字を入力する為のテンキー、電源のオン、オフを切り替える電源ボタン等がある。そして、通信端末ECU22は、ハードキー19の操作により出力される電気信号に基づき、対応する各種の動作を実行すべく制御を行う。特に第1実施形態に係る通信端末1では、後述のように端末ケース3内に通信端末1が配置された状態においては、操作板6へのタッチ操作をハードキー19の操作に置き換えて通信端末1の操作を行うことも可能である。
また、加速度センサ20は、通信端末1に内蔵され、通信端末1に対して生じる3軸方向の加速度を検出する為のセンサである。そして、通信端末ECU22は、加速度センサ20の検出結果に基づいて通信端末1に生じる振動を検出することが可能となる。更に、振動の有無に加えて振動の振幅(振動の大きさ)や振動の周波数についても検出することが可能である。尚、加速度センサ20の替わりにジャイロセンサを用いても良い。更に加速度センサ20とジャイロセンサを両方備える構成としても良い。
また、照度センサ21は、通信端末1に内蔵され、通信端末1の周囲の照度を検出する為のセンサである。
続いて、前記構成を有する通信端末1においてCPU11が実行する端末操作処理プログラムについて図7に基づき説明する。図7は第1実施形態に係る端末操作処理プログラムのフローチャートである。ここで、端末操作処理プログラムは、通信端末1においてユーザによる所定の操作を受け付けた場合に実行され、操作板6へのユーザのタッチ操作に基づいて、端末ケース3内に配置された通信端末1へのユーザ操作を行うプログラムである。また、以下の図7、図9〜図11、図18、図19、図26、図27、図32及び図33にフローチャートで示されるプログラムは、通信端末1が備えるメモリ12等に記憶されており、CPU11により実行される。
先ず、端末操作処理プログラムではステップ(以下、Sと略記する)1において、CPU11は、当該端末操作処理プログラムに対応するアプリケーションプログラム(以下、端末操作アプリという)を起動する。即ち、当該端末操作処理プログラムは、ディスプレイ4にトップ画面25(図5)が表示されている状態において、端末操作アプリの起動アイコンが選択操作(タッチパネル18によりタッチ)された場合に、実行されることとなる。尚、端末操作アプリは、事前にインストールプログラムをネットワーク等を介して取得し、通信端末1に対してインストールする必要がある。
次に、S2においてCPU11は、通信端末1の現在の設定をメモリ12等に保存する。尚、前記S2で保存される設定内容は、特に後述のステップにおいて設定が変更されるディスプレイ4やカメラ5に関する設定であり、例えばディスプレイ4の輝度、カメラ5の感度や焦点距離等が有る。
続いて、S3においてCPU11は、タッチパネル18による操作を無効とする。従って、S3以降では、後述するS19でタッチパネル18による操作が再び有効となるまで、タッチパネル18による通信端末1の操作が出来ない状態となる。
その後、S4においてCPU11は、端末ケース3内に通信端末1を配置することを促す案内を行う。例えば、「スマートフォンをケース内部にセットして下さい。」との文章をディスプレイ4に表示する。また、同内容の音声を出力する構成としても良い。
次に、S5においてCPU11は、通信端末1に内蔵されたカメラ5を起動し、カメラ5による周囲の撮像を開始する。ここで、カメラ5は、前記したように撮像方向がディスプレイ4の向きと同方向となるように構成されており、ディスプレイ4の前方を撮像する。従って、端末ケース3に通信端末1が配置された状態では、図8に示すように端末ケース3の操作板6をケース内側から撮像する。そして、特にユーザが操作板6に対するタッチ操作を行っている場合には、ユーザのタッチ操作の操作態様(操作板6のどの位置をどのようにタッチしているのか)を撮像することとなる。尚、カメラ5によって撮像された撮像画像はメモリ12等に記憶される。
その後、S6においてCPU11は、後述の初期設定処理(図9)を行う。尚、初期設定処理は、操作板6に対するユーザのタッチ操作を適切に検出する為に、ディスプレイ4やカメラ5の設定を行う処理である。
続いて、S7においてCPU11は、後述の画像補正処理(図10、図11)を行う。尚、画像補正処理は、端末ケース3に対する通信端末1の位置ズレを検出し、操作板6を介して適切なディスプレイ4の表示画像がユーザから視認できるようにディスプレイ4の画像出力を補正する処理である。
更に、S8においてCPU11は、後述のタッチ検出処理(図26、図27)を行う。尚、タッチ検出処理は、カメラ5の撮像画像に基づいて操作板6に対するユーザのタッチ操作を検出し、更に、検出された操作板6に対するユーザのタッチ操作を、タッチパネル18に対する操作やハードキーの操作に置き換える処理である。尚、前記S8の処理で操作板6に対するユーザのタッチ操作がタッチパネル18に対する操作に置き換えられた場合には、ディスプレイ4上の座標系におけるタッチ地点の座標(以下、タッチ座標という)やタッチ操作の操作種別(フリック操作、ドラック操作、ピンチ操作)がユーザのタッチ操作を置き換えた操作として検出される。また、前記S8の処理で操作板6に対するユーザのタッチ操作がハードキー19のハードウェア上の操作に置き換えられた場合には、操作対象となるハードキー19の種類や操作種別(例えばホームボタンの押下)がユーザのタッチ操作を置き換えた操作として検出される。
次に、S9においてCPU11は、ユーザの操作に伴うその他の処理を実行する。
その後、S10においてCPU11は、通信端末1の筐体に配置されたハードキー19の一つであるホームボタンがユーザによって直接操作されたか否かを判定する。尚、ユーザがホームボタンを直接操作する為には、端末ケース3から通信端末1を取り出す必要がある。
そして、ホームボタンがユーザによって直接操作されたと判定された場合(S10:YES)には、S18へと移行する。それに対して、ホームボタンがユーザによって直接操作されていないと判定された場合(S10:NO)には、S11へと移行する。
S11においてCPU11は、前記S8のタッチ検出処理においてユーザのタッチ操作を最後に検出してから一定時間(例えば30sec)以上経過したか否かを判定する。尚、前記S11において判定基準となる一定時間は、ユーザによって任意に設定することも可能であり、メモリ12等に記憶される。
そして、ユーザのタッチ操作を最後に検出してから一定時間以上経過したと判定された場合(S11:YES)には、S12へと移行する。それに対して、ユーザのタッチ操作を最後に検出した時点から一定時間以上経過していないと判定された場合(S11:NO)にはS7へと戻り、タッチ操作の検出を継続して行う。
S12においてCPU11は、ディスプレイ4の電源をオフする。
次に、S13においてCPU11は、通信端末1を待機モードに移行させる。尚、待機モードでは、操作板6に対するユーザのタッチ操作を検出する機能以外の機能を一時的に休止状態とする。
続いて、S14においてCPU11は、後述のタッチ検出処理(図26、図27)を行う。尚、詳細は前記S8と同様であるので説明は省略する。
その後、S15においてCPU11は、前記S14のタッチ検出処理において少なくとも操作板6上のいずれかの地点をユーザがタッチするタッチ操作が行われたか否かを判定する。
そして、操作板6上のいずれかの地点をユーザがタッチするタッチ操作が行われたと判定された場合(S15:YES)には、S16へと移行する。それに対して、操作板6上をユーザがタッチするタッチ操作が行われていないと判定された場合(S15:NO)にはS14へと戻り、タッチ操作の検出を継続して行う。
S16においてCPU11は、通信端末1を待機モードから復帰させる。
その後、S17においてCPU11は、ディスプレイ4の電源をオンする。その後、S7へと戻り、タッチ操作の検出を継続して行う。
一方、前記S10でホームボタンがユーザによって直接操作されたと判定された場合に実行されるS18では、CPU11は、通信端末1に内蔵されたカメラ5の起動を停止し、カメラ5による周囲の撮像を終了する。
続いて、S19においてCPU11は、タッチパネル18による操作を有効とする。その結果、S19以降では、タッチパネル18による通信端末1の操作が可能となる。
次に、S20においてCPU11は、前記S2で保存した通信端末1の設定を読み出し、通信端末1の現在の設定を読み出した設定へと変更する。その結果、後述のように当該端末操作処理プログラム中に通信端末1の各種設定(例えば、ディスプレイ4の輝度、カメラ5の感度や焦点距離等)が変更された場合であっても、端末操作処理プログラムを実行する直前の設定状態に通信端末1を復帰させることが可能となる。
その後、S21においてCPU11は、前記S1で起動された端末操作アプリを終了する。
次に、前記S6において実行される初期設定処理のサブ処理について図9に基づき説明する。図9は初期設定処理のサブ処理プログラムのフローチャートである。
先ず、S31においてCPU11は、通信端末1に内蔵された加速度センサ20を用いて通信端末1に対して生じる振動を検出する。
次に、S32においてCPU11は、通信端末1が振動したことを最後に検出してから一定時間(例えば10sec)以上経過したか否かを判定する。尚、前記S32において判定基準となる一定時間は、ユーザによって任意に設定することも可能であり、メモリ12等に記憶される。また、CPU11は、加速度センサ20によって振動を検出した場合であっても、検出した振動の振幅や周波数が所定の閾値未満である場合にはノイズとみなし、前記S32の判定対象から除くことが望ましい。
そして、通信端末1が振動したことを検出してから一定時間以上経過したと判定された場合(S32:YES)には、通信端末1の設置作業中でないと推定し、S33へと移行する。それに対して、通信端末1の振動を最後に検出した時点から一定時間以上経過していないと判定された場合(S32:NO)には、通信端末1の設置作業中であると推定し、S31へと戻り、通信端末1の振動を検出する処理を継続して実行する。
S33においてCPU11は、直近の所定時間(例えば5sec)内においてカメラ5で撮像された撮像画像をメモリ12から読み出す。
次に、S34においてCPU11は、前記S33で読み出された撮像画像が大きく変化したか否かを判定する。ここで、カメラ5は、前記したように撮像方向がディスプレイ4の向きと同方向となるように構成されており、端末ケース3内に通信端末1が配置された状態では、図8に示すように端末ケース3の操作板6をケース内側から撮像することとなる。そして、操作板6は前記したようにフレネルレンズが形成されており、フレネルレンズを介して周囲を撮像した撮像画像とフレネルレンズを介さずに周囲を撮像した撮像画像とは、仮に同位置から同方向を撮像した場合であってもその画像の内容は全く異なるものとなる。即ち、端末ケース3内に通信端末1が配置されていない図2に示す状態から、端末ケース3内に通信端末1が配置されている図1に示す状態に移行すると、カメラ5によって撮像された撮像画像が、フレネルレンズを含まない画像(即ちフレネルレンズを透過しない画像)からフレネルレンズを含む画像(即ちフレネルレンズを透過した画像)へと大きく変化することとなる。従って、前記S34の判定処理を行うことによって、端末ケース3内に通信端末1が配置されたか否か(ディスプレイ4の前方に操作板6が配置されたか否か)について判定することが可能となる。
そして、前記S33で読み出された撮像画像が大きく変化した(即ち、操作板6を含まない撮像画像から操作板6を含む撮像画像へと変化した)と判定された場合(S33:YES)には、ディスプレイ4の前方に操作板6が配置されている、即ち端末ケース3内に通信端末1が配置されていると認定し、S36へと移行する。それに対して、前記S33で読み出された撮像画像が大きく変化していない(即ち、操作板6を含まない撮像画像が継続して撮像されている)と判定された場合(S33:NO)には、ディスプレイ4の前方に操作板6が配置されていない、即ち端末ケース3内に通信端末1が配置されていないと認定し、S35へと移行する。
S35においてCPU11は、通信端末1が振動したことを最後に検出してから更に所定時間(例えば20sec)以上経過したか否かを判定する。尚、前記S35において判定基準となる所定時間は、ユーザによって任意に設定することも可能であり、メモリ12等に記憶される。
そして、通信端末1が振動したことを最後に検出してから更に所定時間以上経過したと判定された場合(S35:YES)には、通信端末1が端末ケース3内に既に配置されたにもかかわらず、何らかの原因により撮像画像の変化からは通信端末1が端末ケース3内に配置されたことを検出できなかったと推定し、S36へと移行する。一方、通信端末1の振動を最後に検出した時点から所定時間以上経過していないと判定された場合(S35:NO)にはS33へと戻り、通信端末1の振動を検出する処理を継続して実行する。
S36においてCPU11は、ディスプレイ4の輝度を所定割合(例えば20%)上昇させる。例えば、ディスプレイ4が液晶ディスプレイである場合には、バックライトの強度を上げることによって輝度を上昇させる。それによって、後述のように焦点距離を短くした場合であっても、ディスプレイ4から放出される光を用いて適切な明るさの撮像画像を撮像することが可能となる。
次に、S37においてCPU11は、カメラ5の焦点距離をカメラ5から操作板6までの距離L(図3)に設定する。それによって、後述のタッチ検出処理(S8)において、操作板6をタッチするユーザの手を鮮明に撮像することが可能となる。尚、カメラ5から操作板6までの距離Lは、予めメモリ12に記憶させる構成としても良いし、カメラ5によって操作板6を撮像した撮像画像に基づいてCPU11が算出する構成としても良い。
次に、前記S7において実行される画像補正処理のサブ処理について図10及び図11に基づき説明する。図10及び図11は画像補正処理のサブ処理プログラムのフローチャートである。
先ず、S41においてCPU11は、カメラ5のハード的な要因に基づいて必要となる撮像画像の補正に用いる補正値Aを取得する。ここで、ハード的な要因に基づいて必要となる補正とは、撮像画像が湾曲して撮像される場合に、湾曲する撮像画像を湾曲しない撮像画像へと修正する補正等が有る。尚、補正値Aはカメラ固有の値であり、メモリ12等に予め記憶される。
次に、S42においてCPU11は、直近にカメラ5で撮像された撮像画像をメモリ12から読み出す。
続いて、S43においてCPU11は、前記S42で読み出した撮像画像を前記S41で取得された補正値Aに基づいて補正する。その結果、前記S42で読み出した撮像画像が湾曲していた場合であっても、その湾曲を修正することが可能となる。
その後、S44においてCPU11は、前記S42で読み出した撮像画像から操作板6に配置された検出マークを検出する処理を行う。ここで、図12は端末ケース3の操作板6を示した上面図である。
図12に示すように、第1実施形態に係る操作板6は、面上の計4箇所の角部に対して、それぞれ検出マーク41〜44が配置されている。尚、検出マーク41〜44は操作板6に対して直接印字されていても良いし、粘着剤等を介して操作板6に貼付する構成としても良い。また、検出マーク41〜44の内、左上に位置する検出マーク41は四角形状を有し、他の検出マーク42〜44については三角形状を有する。尚、マークの形状については四角形状や三角形状以外の形状としても良いが、4箇所の内、少なくとも1箇所を他と異なる形状のマークとすることが望ましい。
また、検出マーク41〜44は四隅以外の場所に配置しても良いが、少なくとも操作板6の面上の複数箇所に対して配置することが望ましい。また、検出マーク41〜44は、端末ケース3に対して通信端末1が正しい位置に配置された場合に、いずれもカメラ5の撮像範囲に含まれる位置に配置する。
次に、S45においてCPU11は、撮像画像から操作板6に配置された全ての検出マーク(図12に示す例では検出マーク41〜44の4個)が検出できたか否か判定する。
ここで、図13に示すように端末ケース3に対して通信端末1が正しい位置に配置されていれば、カメラ5で撮像した撮像画像中に操作板6に配置された検出マーク41〜44が全て含まれることとなる。尚、カメラ5は操作板6をケース内側から撮像するので、図12に示す操作板6の上面図と撮像画像中とでは検出マーク41〜44の配置は左右反転する。
一方、図14に示すように端末ケース3に対して通信端末1が正しい位置に配置されていなければ、カメラ5で撮像した撮像画像中に操作板6に配置された検出マーク41〜44が全て含まれない場合がある。例えば、図14に示す例では、通信端末1が正しい配置よりも上側にずれて配置されたことによって、検出マーク41〜44の内、検出マーク41と検出マーク42のみが撮像画像に含まれることとなる。
そして、前記S45の判定の結果、撮像画像から操作板6に配置された全ての検出マークが検出できたと判定された場合(S45:YES)には、S47へと移行する。それに対して、撮像画像から操作板6に配置された全ての検出マークが検出できなかったと判定された場合(S45:NO)には、S46へと移行する。
S46においてCPU11は、通信端末1が端末ケース3の正しい位置に配置されていないと認定し、通信端末1を端末ケース3の正しい位置に配置することを促す案内を行う。例えば、「スマートフォンをケースの正しい位置にセットして下さい。」との文章をディスプレイ4に表示する。また、同内容の音声を出力する構成としても良い。
一方、S47においてCPU11は、前記S44で検出された全ての検出マークについて、各検出マークが検出された座標を、検出マークの形状に対応付けて算出する。尚、検出マークの座標は、撮像画像の左右方向をx軸、上下方向をy軸とした座標系で特定することとする。例えば、図12に示す操作板6を撮像した場合には、四角形状の検出マークが1つと、三角形状の検出マークが3つ検出されるので、四角形状の検出マークが検出された1箇所の地点の座標と、三角形状の検出マークが検出された3箇所の地点の座標とがそれぞれ算出されることとなる。
次に、S48においてCPU11は、前記S47で算出された検出マークの座標に基づいて、前記S44で検出された各検出マーク間の配置関係が正しい関係にあるか否か判定する。
ここで、前記S48の判定基準である“検出マーク間の配置関係が正しい関係”は、操作板6に対してどのように検出マークが配置されているかによって異なる。例えば、図12に示すように検出マーク41〜44が配置されている場合には、四角形状の検出マークのX座標が2以上の三角形状の検出マークのX座標よりも大きく、且つ四角形状の検出マークのY座標が2以上の三角形状の検出マークのY座標よりも大きいことを、“検出マーク間の配置関係が正しい関係”とする。
そして、図13に示すように端末ケース3に対して通信端末1が正しい方向に配置されていれば、カメラ5で撮像した撮像画像中において、四角形状の検出マーク41は他の検出マーク42〜44と相対的な位置関係で右上に位置することとなる。従って、四角形状の検出マークのX座標が2以上の三角形状の検出マークのX座標よりも大きく、且つ四角形状の検出マークのY座標が2以上の三角形状の検出マークのY座標よりも大きい条件を満たすこととなる。その結果、検出マーク間の配置関係が正しい関係にある(即ち、端末ケース3に対して通信端末1が正しい方向で配置されている)と判定される。
一方、図15に示すように端末ケース3に対して通信端末1が正しい方向に配置されていなければ、カメラ5で撮像した撮像画像中において、四角形状の検出マーク41は他の検出マーク42〜44と相対的な位置関係で右上以外に位置することとなる。例えば、図15に示す例では通信端末1を上下逆方向に配置したことにより、四角形状の検出マーク41は他の検出マーク42〜44と相対的な位置関係で左下に位置することとなる。従って、四角形状の検出マークのX座標が2以上の三角形状の検出マークのX座標よりも大きく、四角形状の検出マークのY座標が2以上の三角形状の検出マークのY座標よりも大きいという条件は満たさない。その結果、検出マーク間の配置関係が正しい関係にない(即ち、端末ケース3に対して通信端末1が誤った方向で配置されている)と判定される。
そして、前記S48の判定の結果、前記S44で検出された各検出マーク間の配置関係が正しい関係にあると判定された場合(S48:YES)には、S50へと移行する。それに対して、前記S44で検出された各検出マーク間の配置関係が正しい関係にないと判定された場合(S48:NO)には、S49へと移行する。
S49においてCPU11は、通信端末1が端末ケース3に対して正しい方向に配置されていないと認定し、通信端末1を端末ケース3に対して正しい方向に配置することを促す案内を行う。例えば、「スマートフォンをケースに対して正しい方向にセットして下さい。」との文章をディスプレイ4に表示する。また、同内容の音声を出力する構成としても良い。
また、S50に対してCPU11は、後述の補正値算出処理(図18、図19)を実行する。尚、補正値算出処理は、端末ケース3に対して通信端末1を設置する正しい設置位置、設置角度、設置方向等からズレが生じていることを考慮し、適切な画像出力やタッチ操作検出を行う為の補正値を算出する処理である。
次に、S51においてCPU11は、前記S50の補正値算出処理において算出された補正値Cが、補正できる範囲の補正値であるか否かを判定する。ここで、補正値Cは、後述のように前記S44で検出された複数の検出マーク間の位置関係と、予め規定された所定の位置関係(より具体的には仮に通信端末1が端末ケース3に対して正しい設置位置、設置角度及び設置方向に配置されていた場合に撮像される撮像画像中の検出マーク間の位置関係)とを比較することによって算出される。そして、CPU11は、補正値Cに基づいて画像出力を補正する(より具体的にはディスプレイ4に対して表示画像を表示する領域を補正する)ことにより、ユーザが操作板6を介して視認できるディスプレイ4の表示画像を、通信端末1が端末ケース3に対して正しい設置位置、設置角度及び設置方向に配置されていた場合に視認できる表示画像と同等の画像とする。しかしながら、画像出力の補正には限界があるので、例えば、通信端末1が大きく傾いて配置されている等の理由で補正値Cが限界値よりも大きくなった場合には、補正することができない。従って、前記S51では前記S50の補正値算出処理において算出された補正値Cが、画像出力の補正ができる限界値を超えていないか否かを判定する。
そして、前記S50の補正値算出処理において算出された補正値Cが、補正できる範囲の補正値であると判定された場合(S51:YES)、即ち、画像出力の補正ができる範囲を超えていないと判定された場合には、S52へと移行する。一方、前記S50の補正値算出処理において算出された補正値Cが、補正できる範囲の補正値でないと判定された場合(S51:NO)、即ち、画像出力の補正ができる範囲を超えていると判定された場合には、S53へと移行する。
S52においてCPU11は、前記S50の補正値算出処理において算出された補正値Cを用いて、ディスプレイ4の画像出力を補正する。具体的には、ディスプレイ4に対して表示画像を表示する領域(以下、表示対象領域という)を補正する。尚、補正値Cは後述のように回転量(−θx、−θy、−θz)、拡大縮小率(1/S)、移動量(−Xa、−Xb)等からなり、その補正量Cに応じて表示対象領域を回転、拡大、縮小、或いは移動させることによって表示対象領域を変更する。
図16は、前記S52における表示対象領域の変更前後の通信端末1に表示されるトップ画面25を示した図である。図16に示す例では、補正前のトップ画面25の表示対象領域51は、ディスプレイ4の形状と略同形状である。しかし、補正後のトップ画面25の表示対象領域52は、補正前の表示対象領域51を補正値Cに応じて移動、拡大、縮小又は回転された形状となる。
そして、前記S52においてディスプレイ4の画像出力を補正することによって、通信端末1の端末ケース3に対する配置にズレが生じていた場合であっても、ユーザは通信端末1が端末ケース3に対して正しい設置位置、設置角度及び設置方向に配置されていた場合と同等のディスプレイ4の表示画像を操作板6を介して視認することが可能となる。即ち、ユーザが操作板6を介して視認できるディスプレイ4の表示画像と操作板6との位置関係が、前記S53による画像出力補正を行わない状態(即ち、図16の左図の状態)での通信端末1のディスプレイ4に表示される表示画像とディスプレイ4との位置関係に対応させることが可能となる。
図17は、前記S52における表示対象領域の変更前後のユーザが操作板6を介して視認できるディスプレイ4に表示されたトップ画面25を示した図である。図17に示す例では、補正前に操作板6を介して視認できるトップ画面25は、操作板6に対して歪んだ状態である。しかし、補正後に操作板6を介して視認できるトップ画面25は、通常時に通信端末1に表示されるトップ画面25と同等となる。即ち、操作板6にディスプレイが配置されているのと同等の視認性を実現することが可能となる。
一方、S53においてCPU11は、通信端末1が端末ケース3に対して正しい角度に配置されていないと認定し、通信端末1を端末ケース3に対して正しい角度に配置することを促す案内を行う。例えば、「スマートフォンをケースに対してセットし直して下さい。」との文章をディスプレイ4に表示する。また、同内容の音声を出力する構成としても良い。
その後、S54においてCPU11は、通信端末1に内蔵された加速度センサ20を用いて通信端末1に対して生じる振動を検出する。
次に、S55においてCPU11は、通信端末1が振動していることを検出したか否かを判定する。また、CPU11は、加速度センサ20によって振動を検出した場合であっても、検出した振動の振幅や周波数が所定の閾値未満である場合にはノイズとみなし、前記S55の判定対象から除くことが望ましい。
そして、通信端末1が振動していることを検出したと判定された場合(S55:YES)には、ユーザが通信端末1の配置の修正を行っていると認定し、S61へと移行する。それに対して、通信端末1が振動していることを検出しないと判定された場合(S55:NO)には、ユーザが通信端末1の配置の修正を行っていないと認定し、S56へと移行する。
S56においてCPU11は、前記S54で振動の検出を開始してから一定時間(例えば20sec)以上経過しても振動を検出しないか否かを判定する。尚、前記S56において判定基準となる一定時間は、ユーザによって任意に設定することも可能であり、メモリ12等に記憶される。また、CPU11は、加速度センサ20によって振動を検出した場合であっても、検出した振動の振幅や周波数が所定の閾値未満である場合にはノイズとみなし、前記S56の判定対象から除くことが望ましい。
そして、前記S54で振動の検出を開始してから一定時間以上経過しても振動を検出しないと判定された場合(S56:YES)には、ユーザが通信端末1の配置を修正する意思がないと認定し、S57へと移行する。それに対して、前記S54で振動の検出を開始してから一定時間以上経過していないと判定された場合(S56:NO)にはS54へと戻り、通信端末1の振動を検出する処理を継続して実行する。
S57においてCPU11は、通信端末1に内蔵されたカメラ5の起動を停止し、カメラ5による周囲の撮像を終了する。
続いて、S58においてCPU11は、タッチパネル18による操作を有効とする。その結果、S58以降では、タッチパネル18による通信端末1の操作が可能となる。
次に、S59においてCPU11は、前記S2で保存した通信端末1の設定を読み出し、通信端末1の現在の設定を読み出した設定へと変更する。その結果、当該端末操作処理プログラム中に通信端末1の各種設定(例えば、ディスプレイ4の輝度、カメラ5の感度や焦点距離等)が変更された場合であっても、端末操作処理プログラムを実行する直前の設定状態に通信端末1を復帰させることが可能となる。
その後、S60においてCPU11は、前記S1で起動された端末操作アプリを終了する。
一方、S61においてCPU11は、通信端末1に内蔵された加速度センサ20を用いて通信端末1に対して生じる振動を検出する。
その後、S62においてCPU11は、通信端末1が振動していることを検出したか否かを判定する。また、CPU11は、加速度センサ20によって振動を検出した場合であっても、検出した振動の振幅や周波数が所定の閾値未満である場合にはノイズとみなし、前記S62の判定対象から除くことが望ましい。
そして、通信端末1が振動していることを検出しないと判定された場合(S62:YES)には、ユーザによる通信端末1の配置の修正が完了したと認定し、S42へと戻る。そして、CPU11は、修正後の通信端末1の配置に基づいて、S42以降の処理を再度実行する。それに対して、通信端末1が振動していることを検出したと判定された場合(S62:NO)には、ユーザが通信端末1の配置の修正を継続して行っていると認定し、S61へと戻る。
次に、前記S50において実行される補正値算出処理のサブ処理について図18及び図19に基づき説明する。図18及び図19は補正値算出処理のサブ処理プログラムのフローチャートである。
先ず、S71においてCPU11は、前記S42で読み出された撮像画像に対して3D空間を定義する。例えば、図20に示す撮像画像55が撮像された場合には、撮像画像の左右方向をx軸、上下方向をy軸、撮像画像に対して垂直に交差する方向をz軸とした座標系により3D空間を定義する。
次に、S72においてCPU11は、仮に通信端末1が端末ケース3に対して正しい設置位置、設置角度及び設置方向に配置(以下、正配置状態という)されていた場合に撮像される撮像画像中の検出マークの位置(以下、正位置という)の座標を、前記S71で定義した3D空間の座標系で取得する。尚、正位置の検出マークの座標については予めメモリ12等に記憶される。
続いて、S73においてCPU11は、前記S44で検出された全ての検出マークについて、各検出マークが検出された座標を、前記S71で定義した3D空間の座標系で算出する。
その後、S74においてCPU11は、前記S44で検出された全ての検出マークを頂点として形成される多角形領域(以下、検出領域という)を定義する。尚、第1実施形態では、検出マークは操作板6の四隅に対してそれぞれ配置されるので、検出領域は四角形状を有することとなる。例えば、図21は図20に示す撮像画像55が撮像された場合に定義される検出領域60を示す。
次に、S75においてCPU11は、前記S74で定義された検出領域の上辺と下辺の平均線を算出する。例えば、図22は図20に示す撮像画像55が撮像された場合に定義される検出領域60と、検出領域60を構成する上辺61と下辺62の平均線63を示す。
続いて、S76においてCPU11は、前記S75で算出された平均線が前記S71で定義された3D空間において右下がり(即ち、x座標が大きくなるほどy座標が小さくなる平均線)であるか否か判定する。
そして、前記S75で算出された平均線が右下がりであると判定された場合(S76:YES)には、S77へと移行する。それに対して、前記S75で算出された平均線が右下がりでないと判定された場合(S76:NO)には、S78へと移行する。
S77においてCPU11は、前記S75で算出された平均線が前記S71で定義された3D空間においてx軸と平行となるように、検出領域をz軸中心に反時計回転させる。一方、S78においてCPU11は、前記S75で算出された平均線が前記S71で定義された3D空間においてx軸と平行となるように、検出領域をz軸中心に時計回転させる。
例えば、図23の左図に示す平均線63が算出された場合には、平均線63は右下がりとなるので、検出領域60はz軸中心に反時計回転される。その結果、図23の右図に示すように平均線63はx軸と平行となる。
その後、S79においてCPU11は、前記S77又はS78において検出領域を回転させた回転角をθzとして特定し、メモリ12等に記憶する。尚、前記S77及び前記S78の回転処理を行う前に既に平均線がx軸に対して平行である場合には、S77及びS78の処理は実行せず、且つθzとして「0」を記憶する。
次に、S80においてCPU11は、前記S77及びS78で回転処理された後の検出領域について、上辺と下辺の長さをそれぞれ算出する。
続いて、S81においてCPU11は、前記S80で算出された上辺の長さが下辺の長さよりも長いか否か判定する。
そして、前記S80で算出された上辺の長さが下辺の長さよりも長いと判定された場合(S81:YES)には、S82へと移行する。それに対して、前記S80で算出された上辺の長さが下辺の長さよりも短いと判定された場合(S81:NO)には、S83へと移行する。
S82においてCPU11は、前記S80で算出された検出領域の上辺と下辺の長さが同じ長さとなるように、検出領域をx軸中心に上辺を奥方向に回転させる。一方、S83においてCPU11は、前記S80で算出された検出領域の上辺と下辺の長さが同じ長さとなるように、検出領域をx軸中心に上辺を手前方向に回転させる。
例えば、前記S77及びS78で回転処理された後の検出領域が、図24の左図に示す検出領域60である場合には、検出領域60の上辺61の長さは下辺62の長さよりも短いので、検出領域60はx軸中心に上辺61を手前方向に回転される。その結果、図24の右図に示すように上辺61の長さと下辺62の長さは同じ長さとなる。
その後、S84においてCPU11は、前記S82又はS83において検出領域を回転させた回転角をθxとして特定し、メモリ12等に記憶する。尚、前記S82及び前記S83の回転処理を行う前に既に検出領域の上辺と下辺の長さが同じ長さである場合には、S82及びS83の処理は実行せず、且つθxとして「0」を記憶する。
次に、S85においてCPU11は、前記S77及びS78で回転処理された後の検出領域について、右辺と左辺の長さをそれぞれ算出する。
続いて、S86においてCPU11は、前記S85で算出された左辺の長さが右辺の長さよりも長いか否か判定する。
そして、前記S85で算出された左辺の長さが右辺の長さよりも長いと判定された場合(S86:YES)には、S87へと移行する。それに対して、前記S85で算出された左辺の長さが右辺の長さよりも短いと判定された場合(S86:NO)には、S88へと移行する。
S87においてCPU11は、前記S85で算出された検出領域の左辺と右辺の長さが同じ長さとなるように、検出領域をy軸中心に左辺を奥方向に回転させる。一方、S88においてCPU11は、前記S85で算出された検出領域の左辺と右辺の長さが同じ長さとなるように、検出領域をy軸中心に左辺を手前方向に回転させる。
例えば、前記S82及びS83で回転処理された後の検出領域が、図25の左図に示す検出領域60である場合には、検出領域60の左辺65の長さは右辺66の長さよりも短いので、検出領域60はy軸中心に左辺65を手前方向に回転される。その結果、図25の右図に示すように左辺65の長さと右辺66の長さは同じ長さとなる。
その後、S89においてCPU11は、前記S87又はS88において検出領域を回転させた回転角をθyとして特定し、メモリ12等に記憶する。尚、前記S87及び前記S88の回転処理を行う前に既に検出領域の左辺と右辺の長さが同じ長さである場合には、S87及びS88の処理は実行せず、且つθyとして「0」を記憶する。
次に、S90においてCPU11は、前記S87及びS88で回転処理された後の検出領域について、上辺と下辺の長さを再度算出する。
続いて、S91においてCPU11は、前記S90で算出された上辺の長さと下辺の長さが同じか否か判定する。
そして、前記S90で算出された上辺の長さと下辺の長さが同じ長さであると判定された場合(S90:YES)には、S92へと移行する。それに対して、前記S90で算出された上辺の長さと下辺の長さが同じ長さで無いと判定された場合(S90:NO)にはS73へと戻り、再度回転角θx、θy、θzの検出を行う。
S92においてCPU11は、前記S87及びS88で回転処理された後の検出領域の面積と、正位置の検出マークを頂点として形成される多角形領域(以下、正位置検出領域という)の面積とを比較し、検出領域の面積に対する正位置検出領域の面積比率Sを算出する。例えば、検出領域の面積が100であり、正位置検出領域の面積が120である場合には、面積比率Sは“1.2”と算出される。
その後、S93においてCPU11は、前記S87及びS88で回転処理された後の検出領域の各頂点に位置する検出マークの位置座標の原点Dと、正位置の検出マークの位置座標の原点Dのずれを算出する。尚、原点は例えば最も左下に位置する検出マーク(例えば図25に示す例では検出マーク44)の位置とする。そして、原点のずれは、x軸方向のずれはXa、y軸方向のずれはXbでそれぞれ特定する。
次に、S94においてCPU11は、θx、θy、θz、S、Xa、Xbを補正値Bとして特定し、メモリ12等に記憶する。尚、補正値Bは後述するように操作板6へのタッチ位置を検出する際に補正値として用いられる。尚、補正値Bは、前記S44で検出された検出マーク間の位置関係を、正位置の検出マーク間の位置関係と一致させる為に撮像画像を補正する補正値(即ち、正配置状態にない通信端末1によって撮像される撮像画像を、正配置状態にある通信端末1によって撮像される撮像画像に補正する為の補正値)に相当する。
更に、S95においてCPU11は、−θx、−θy、−θz、1/S、−Xa、−Xbを補正値Cとして特定し、メモリ12等に記憶する。尚、補正値Cは前記したように、ディスプレイ4の画像出力を補正する際に補正値として用いられる。尚、補正値Cは、正位置の検出マーク間の位置関係を、前記S44で検出された検出マーク間の位置関係と一致させる為に撮像画像を補正する補正値(即ち、通信端末1が正配置状態にない場合であっても、正配置状態の通信端末1と同じ態様で操作板6を介してディスプレイ4を視認できるようにディスプレイ4の画像表示領域を変更する為の補正値)に相当する。
次に、前記S8及びS14において実行されるタッチ検出処理のサブ処理について図26及び図27に基づき説明する。図26及び図27はタッチ検出処理のサブ処理プログラムのフローチャートである。
先ず、S101においてCPU11は、前記S50の補正値計算処理(図18、図19)によって算出された補正値Bを読み出す。尚、補正値Bは前記したように回転量(θx、θy、θz)、拡大縮小率(S)、移動量(Xa、Xb)等からなる。
次に、S102においてCPU11は、後述のS117で保存されるタッチ履歴をメモリ12等から読み出す。尚、前記S102で読み出されるタッチ履歴は、直近の所定時間(例えば5sec)内において検出されたタッチ地点の座標(タッチ座標)等からなる。
続いて、S103においてCPU11は、直近にカメラ5で撮像された撮像画像をメモリ12から読み出す。
更に、S104においてCPU11は、前記S103で読み出した撮像画像を前記S101で取得された補正値Bに基づいて補正する。尚、補正値Bは前述のように回転量(θx、θy、θz)、拡大縮小率(S)、移動量(Xa、Xb)等からなり、その補正量Bに応じて撮像画像を回転、拡大縮小、或いは移動させることによって撮像画像を補正する。それによって、前記S103で読み出した撮像画像を、正配置状態にある通信端末1によって撮像される撮像画像へと補正することが可能となる。即ち、通信端末1の配置が正しい位置や方向からずれていたことにより、撮像画像が正しい範囲や角度で撮像されていなかったとしても、撮像画像を補正することによって後述の処理で撮像画像に基づく正確なタッチ地点の検出が可能となる(S112〜S115)。
次に、S105においてCPU11は、前記S104で補正された撮像画像内に含むユーザの手を検出する。尚、前記S105の検出は、例えばパターンマッチングを用いて検出する。
その後、S106においてCPU11は、前記S105の検出結果に基づいて、前記S104で補正された撮像画像内にユーザの手を検出したか否かを判定する。尚、ユーザの手の全体が検出されない場合であっても、手の一部(但し、少なくともユーザの指先部分は含む)が検出されていれば、前記S106でユーザの手を検出したと判定しても良い。
そして、撮像画像内にユーザの手を検出したと判定された場合(S106:YES)には、S108へと移行する。それに対して、撮像画像内にユーザの手を検出しないと判定された場合(S106:NO)には、S107へと移行する。
S107においてCPU11は、操作板6に対してユーザがタッチ操作を行っていないと判定する。その後、S117へと移行する。
一方、S108においてCPU11は、後述のカメラ感度調整処理(図32)を実行する。尚、カメラ感度調整処理は、操作板6をタッチするユーザの指をカメラ5で撮像した撮像画像に基づいて検出する際に、より検出精度を向上させる為に、カメラ5の感度を調整する処理である。
また、S109においてCPU11は、後述の画面輝度調整処理(図33)を実行する。尚、画面輝度調整処理は、操作板6をタッチするユーザの指をカメラ5で撮像した撮像画像に基づいて検出する際に、より検出精度を向上させる為に、ディスプレイ4の輝度を調整する処理である。
その後、S110においてCPU11は、前記S108やS109でカメラ5の感度やディスプレイ4の輝度が調整された後に、カメラ5によって新たに撮像された撮像画像をメモリ12から読み出す。尚、読み出した撮像画像はS104と同様に補正値Bに基づく補正を行う。
次に、S111においてCPU11は、前記S108やS109で設定を変更したカメラ5の感度やディスプレイ4の輝度等を、変更前の設定へと戻す。
続いて、S112においてCPU11は、前記S105で検出したユーザの手から、ユーザの指先端部を特定し、更に指先端部の色を解析する。尚、指先端部が複数特定された場合には、各指先端部の色をそれぞれ解析する。
その後、S113においてCPU11は、前記S112の解析結果に基づいて、少なくとも一以上の指先端部の色が所定の色の範囲にあるか否かを判定する。ここで、所定の色の範囲は、一般的にユーザの指先端部が操作板6に接触した状態にある場合に該指先端部が示す色の範囲であり、より具体的には白色系の色の範囲とする。また、指先端部の色と所定の色の範囲は、例えばRGB値によりそれぞれ規定する。従って、前記S113では、指先端部の色を示すRGB値が白色系と認定される数値範囲(例えばR>240、且つG>240、且つB>240)にあるか否かを判定することとなる。
そして、少なくとも一以上の指先端部の色が所定の色の範囲にあると判定された場合(S113:YES)には、ユーザの指先端部が操作板6に接触した状態にあると推定し、S114へと移行する。それに対して、指先端部の色が所定の色の範囲にないと判定された場合(S113:NO)には、ユーザの指先端部が操作板6に接触した状態にないと推定し、操作板6に対してユーザがタッチ操作を行っていないと判定する(S107)。
また、前記S113では、色の絶対値ではなく相対値によって指先端部が操作板6に接触した状態にあるか否かを判定しても良い。例えば、指先端部以外の手の部分の色を解析してRGB値を特定し、指先端部と指先端部以外のRGB値の差分が所定値以上である場合に、ユーザの指先端部が操作板6に接触した状態にあると判定しても良い。
そして、S114においてCPU11は、操作板6に対してユーザがタッチ操作を行っていると判定する。
次に、S115においてCPU11は、操作板6上の座標系によってユーザがタッチしたタッチ地点の座標を特定する。具体的には、図28に示すように、先ずCPU11は、指先端部71の内、前記S112の解析によって色が所定の範囲にあると認定された範囲72を特定する。そして、特定された範囲72の中心位置をタッチ地点P1とし、タッチ地点P1の座標を操作板6上の座標系によって特定する。尚、タッチ地点が2点以上有る場合には、それぞれのタッチ地点について座標を特定する。
その後、S116においてCPU11は、前記S115において操作板上の座標系で特定されたタッチ地点の座標をディスプレイ4上の座標系の座標に変換する。具体的には、図29に示すように、ユーザが操作板6を介して視認できるディスプレイ4と変換前のタッチ地点P1との位置関係が、通信端末1のディスプレイ4と変換後のタッチ地点P2との位置関係に対応するように変換する。その結果、操作板6に対するユーザのタッチ操作を、ディスプレイ4上の座標系に変換されたタッチ地点をタッチパネル18でタッチする操作に置き換えることが可能となる。
その後、S117においてCPU11は、前記S112〜S116の検出結果に基づいてタッチ履歴を新たに保存する。尚、タッチ履歴としては、操作板6に対してユーザがタッチ操作を行っているか否かの判定結果、及び操作板6に対してユーザがタッチ操作を行っていると判定された場合には、前記S116で変換された(ディスプレイ4上の座標系で特定された)タッチ地点の座標(タッチ座標)が保存される。
次に、S118においてCPU11は、前記S102において読み出された過去のタッチ履歴と、前記S117で新たに保存されたタッチ履歴とに基づいて、タッチ座標の変位を算出する。具体的には、直近の所定時間以内(例えば5sec内)のタッチのオン・オフの変化、タッチ座標が変位しているか否か、変位している場合にはどのような方向にどの程度の速度で変位しているかを算出する。尚、タッチオン及びタッチオフの算出では、ユーザの手の指先部分の色が所定の色の範囲外から範囲内へと変化したタイミングで、操作板6に対してユーザがタッチオンしたと算出し、その後、ユーザの手の指先部分の色が所定の色の範囲内から範囲外へと変化したタイミングで、操作板6に対してユーザがタッチオフしたと算出する。
続いて、S119においてCPU11は、前記S118で算出されたタッチ座標の変位に基づいて、タッチ操作の操作種別を検出する。尚、タッチ操作には、通常の一点をタッチするタッチ操作以外に、タッチした状態でタッチ地点を変位させるドラッグ操作、タッチアウトしつつタッチ地点を変位させるフリック操作、2点のタッチ地点を互いに接近又は遠ざけるように変位させるピンチ操作等が有る。
次に、S120においてCPU11は、前記S119で検出されたタッチ操作の操作種別に基づいて、ドラッグ操作、フリック操作、ピンチ操作等の特殊なタッチ操作が行われたか否かを判定する。
そして、ドラッグ操作、フリック操作、ピンチ操作等の特殊なタッチ操作が行われたと判定された場合(S120:YES)には、S121へと移行する。それに対して、通常のタッチ操作が行われたと判定された場合(S120:NO)には、S122へと移行する。
S121においてCPU11は、タッチ履歴に基づいて特定された操作種別(ドラッグ操作、フリック操作、ピンチ操作等)に加えて、前記S116で変換された(ディスプレイ4上の座標系で特定された)タッチ地点の座標を、ユーザの操作板6へのタッチ操作を置き換えた操作として出力する。その後、通信端末1は、出力されたタッチ地点に対して同じく出力された操作種別(フリック操作、ドラック操作、ピンチ操作等)によるタッチパネル18の操作が行われたとして、通信端末1へのユーザ操作を行う。具体的には、上述したトップ画面25におけるタッチ地点に対応する起動アイコン26〜28の操作や、起動された他のアプリケーションでの各種選択及び入力操作等を行う。例えば、ナビゲーションアプリが起動された状態では、ナビゲーション画面29(図6)における地図画像のスクロール処理、縮尺変更処理等が行われる。
一方、S122においてCPU11は、前記S118で算出されたタッチ座標の変位に基づいて、現時点でユーザがタッチオンした状態にあるか否かを判定する。
そして、現時点でユーザがタッチオンした状態にあると判定された場合(S122:YES)には、S123へと移行する。それに対して、現時点でユーザがタッチオンした状態にないと判定された場合(S122:NO)には、S9へと移行する。
また、S123においてCPU11は、前記S118で算出されたタッチ座標の変位に基づいて、現時点でユーザがタッチするタッチ地点が、ハードキー19の仮想操作領域に含まれるか否かを判定する。尚、ハードキー19の仮想操作領域は、操作板6上に設定され、その範囲は座標等を用いてメモリ12に記憶される。従って、前記S123では、前記S116の変換後のタッチ地点ではなくS115で検出された操作板上の座標系におけるタッチ地点に基づいて判定を行う。
また、操作板6上に設定された仮想操作領域をユーザに把握させる為に、仮想操作領域と他の領域とを識別する情報(以下、領域区分情報という)を、操作板6上で前記ユーザに視認させる。具体的には、領域区分情報を操作板6上に印字又は貼付する構成としても良いし、ディスプレイ4に表示させ、操作板6を介してユーザから視認させる構成としても良い。但し、上記いずれの構成を採用するに際しても、ユーザが操作板6を介して視認できる操作対象物(アイコン、ボタン等)の画像と仮想操作領域とが重複しないように仮想操作領域を設定することが望ましい。また、仮に操作対象物の画像と仮想操作領域とが重複する場合であって、該重複する領域がユーザによってタッチ操作された場合には、タッチパネル18の操作よりもハードキー19の操作を優先して行うように設定することが望ましい。更に、実際に筐体上に配置されるハードキー19と対応する位置(例えばホームボタンであればディスプレイ4の下方)に該ハードキー19の仮想操作領域を設定することが望ましい。それによって、ユーザに違和感を与えることなく操作板6へのタッチ操作に基づくハードキー19の操作を行わせることが可能となる。
ここで、図30は操作板6上にハードキー19の仮想操作領域を識別する領域区分情報を印字した例について示す。尚、図30に示す例では、特にハードキー19としてホームボタンの仮想操作領域75を設定する。そして、図30に示す例では、ホームボタンのボタン形状と該ボタンがホームボタンであることを示す文字がそれぞれ印字される。それによって、ユーザは仮想操作領域75をタッチすることによって通信端末1のホームボタンを操作できることを把握可能となる。また、仮想操作領域75をディスプレイ4と重複する可能性の低い位置(例えば操作板6の外縁付近)に設定することによって、アイコン等の操作対象物の画像と仮想操作領域75とが重複する虞を減少させることが可能となる。
一方、図31はディスプレイ4にハードキー19の仮想操作領域を識別する領域区分情報を表示した例について示す。尚、図31に示す例では、特にハードキー19としてホームボタンの仮想操作領域76を設定する。そして、図31に示す例では、ホームボタンのボタン形状と該ボタンがホームボタンであることを示す文字がそれぞれディスプレイ4に表示され、操作板6を介してユーザが視認可能となる。それによって、ユーザは仮想操作領域76をタッチすることによって通信端末1のホームボタンを操作できることを把握可能となる。また、仮想操作領域76は、ディスプレイ4においてアイコン等の操作対象物の画像が表示されていない空白領域に対して表示する。尚、空白領域が無い場合には、既に表示されている操作対象物の配置を変更することによって、空白領域を形成し、形成された空白領域に対して仮想操作領域76を表示する。
そして、現時点でユーザがタッチするタッチ地点が、ハードキー19の仮想操作領域に含まれると判定された場合(S123:YES)には、S125へと移行する。それに対して、現時点でユーザがタッチするタッチ地点が、ハードキー19の仮想操作領域に含まれないと判定された場合(S123:NO)には、S124へと移行する。
S124においてCPU11は、通常の一点を選択するタッチ操作が行われたと認定し、前記S116で変換された(ディスプレイ4上の座標系で特定された)タッチ地点の座標を、ユーザの操作板6へのタッチ操作を置き換えた操作として出力する。その後、通信端末1は、出力されたタッチ地点をタッチパネル18によりタッチする通常のタッチパネルの操作が行われたとして、通信端末1へのユーザ操作を行う。具体的には、上述したトップ画面25におけるタッチ地点に対応する起動アイコン26〜28の操作や、起動された他のアプリケーションでの各種選択及び入力操作等を行う。
一方、S125においてCPU11は、前記S2で読み出したタッチ履歴に基づいて、一つ前のタッチ履歴におけるタッチ地点も、ハードキー19の仮想操作領域に含まれるか否かを判定する。
そして、一つ前のタッチ履歴におけるタッチ地点についても、ハードキー19の仮想操作領域に含まれると判定された場合(S125:YES)には、既に対応するハードキーの操作を行っていると認定し、S9へと移行する。それに対して、一つ前のタッチ履歴におけるタッチ地点は、ハードキー19の仮想操作領域に含まれないと判定された場合(S125:NO)には、S126へと移行する。
S126においてCPU11は、タッチ地点を含む仮想操作領域と対応するハードキー19のハードウェア上の操作の為のタッチ操作が行われたと認定し、該対応するハードキー19の種別を、ユーザの操作板6へのタッチ操作を置き換えた操作として出力する。その後、通信端末1は、出力された種別のハードキー19の操作が行われたとして、通信端末1へのユーザ操作を行う。具体的には、トップ画面25(図5)への移行、音量の調整、文字の入力、電源のオン、オフ等が行われる。
尚、タッチ地点がハードキー19の仮想操作領域に含まれる場合には、S124の処理よりもS126の処理が優先されることとなるので、例えば操作対象物(起動アイコンやボタン等)の画像と仮想操作領域とが重複する場合であって、該重複する領域がユーザによってタッチ操作された場合には、タッチパネル18の操作よりもハードキー19の操作が優先して行われることとなる。
次に、前記S108において実行されるカメラ感度調整処理のサブ処理について図32に基づき説明する。図32はカメラ感度調整処理のサブ処理プログラムのフローチャートである。
先ず、S131においてCPU11は、通信端末1に内蔵された照度センサ21を用いて通信端末1の周囲の明るさを検出する。尚、照度センサ21の代わりに前記S103で読み出した撮像画像を解析することによって通信端末1の周囲の明るさを検出しても良い。
続いて、S132においてCPU11は、前記S131で検出した通信端末1の周囲の明るさの内、特に前記S105で検出した操作板6を操作するユーザの手の明るさ(即ち、撮像画像中に含まれるユーザの手の明るさ)を検出する。尚、操作板6に対する操作を行う対象物がユーザの手以外である場合には、該対象物の明るさを検出する。また、ユーザの手自体の明るさではなく、ユーザの手の周辺エリアの明るさを検出することとしても良い。更に、特定エリアに対する照度を検出できない場合には、S131の検出値を前記S132の検出値として用いても良い。
その後、S133においてCPU11は、前記S132で検出されたユーザの手の明るさが下限値未満であるか否かを判定する。尚、下限値は所定の閾値であり、予めメモリ12等に記憶される。
そして、ユーザの手の明るさが下限値未満であると判定された場合(S133:YES)には、S134へと移行する。それに対して、ユーザの手の明るさが下限値未満でないと判定された場合(S133:NO)には、S135へと移行する。
S134においてCPU11は、通信端末1に内蔵されたカメラ5の感度を上昇させる(例えばISO感度を1.5倍にする)。それによって、検出対象となるユーザの手が暗い場合であっても、その後のS112において撮像画像から指先端部の色を適切に検出することが可能となる。
一方、S135においてCPU11は、前記S132で検出されたユーザの手の明るさが上限値以上であるか否かを判定する。尚、上限値は所定の閾値であり、予めメモリ12等に記憶される。
そして、ユーザの手の明るさが上限値以上であると判定された場合(S135:YES)には、S136へと移行する。それに対して、ユーザの手の明るさが上限値以上でもないと判定された場合(S135:NO)には、S137へと移行する。
S136においてCPU11は、通信端末1に内蔵されたカメラ5の感度を下げる(例えばISO感度を2/3にする)。それによって、検出対象となるユーザの手が明るすぎる場合であっても、その後のS112において撮像画像から指先端部の色を適切に検出することが可能となる。
S137においてCPU11は、前記S131で読み出した撮像画像に基づいて操作板6に形成されたフレネルレンズの溝部分の位置を特定する。尚、溝部分の位置は予めメモリ12に記憶させる構成としても良い。
次に、S138においてCPU11は、前記S137で特定されたフレネルレンズの溝部分が明るくなるように、今後撮像された撮像画像を加工する(特定エリアの明度を上昇させる)ように設定する。それによって、フレネルレンズの溝部分に影が生じてユーザの手が正しく検出できない状況となっても、撮像画像の明度を調整することによって、その後のS112において撮像画像から指先端部の色を適切に検出することが可能となる。尚、前記S138の設定は、S111において解除されるまで継続する。
次に、前記S109において実行される画面輝度調整処理のサブ処理について図33に基づき説明する。図33は画面輝度調整処理のサブ処理プログラムのフローチャートである。
先ず、S141においてCPU11は、通信端末1に内蔵された照度センサ21を用いて通信端末1の周囲の明るさを検出する。尚、照度センサ21の代わりに前記S102で読み出した撮像画像を解析することによって通信端末1の周囲の明るさを検出しても良い。
続いて、S142においてCPU11は、前記S141で検出した通信端末1の周囲の明るさの内、特に前記S105で検出した操作板6を操作するユーザの手の明るさ(即ち、撮像画像中に含まれるユーザの手の明るさ)を検出する。尚、操作板6に対する操作を行う対象物がユーザの手以外である場合には、該対象物の明るさを検出する。また、ユーザの手自体の明るさではなく、ユーザの手の周辺エリアの明るさを検出することとしても良い。
その後、S143においてCPU11は、前記S142で検出されたユーザの手の明るさと、ユーザの手以外のエリアの明るさとを比較し、ユーザの手以外のエリアよりもユーザの手が暗いか否かを判定する。
そして、ユーザの手以外のエリアよりもユーザの手が暗いと判定された場合(S143:YES)には、S144へと移行する。それに対して、ユーザの手以外のエリアよりもユーザの手が明るいと判定された場合(S143:NO)には、S145へと移行する。
S144においてCPU11は、通信端末1のディスプレイ4の輝度を上昇させる。例えば、ディスプレイ4が液晶ディスプレイである場合には、バックライトの強度を上げることによって輝度を上昇させる。それによって、検出対象となるユーザの手が周囲に比べて暗い場合であっても、ディスプレイ4から照射される光によってユーザの手を明るく照らし、ユーザの手の明るさを周囲の明るさに合わせて適度な明るさへと調整し、その後のS112において撮像画像から指先端部の色を適切に検出することが可能となる。
一方、S145においてCPU11は、通信端末1のディスプレイ4の輝度を下げる。例えば、ディスプレイ4が液晶ディスプレイである場合には、バックライトの強度を下げることによって輝度を下降させる。それによって、検出対象となるユーザの手が周囲に比べて明るい場合であっても、ディスプレイ4から照射される光を弱くすることによってユーザの手の明るさを周囲の明るさに合わせて適度な明るさへと調整し、その後のS112において撮像画像から指先端部の色を適切に検出することが可能となる。
次に、S146においてCPU11は、前記S103で読み出した撮像画像に基づいて、前記S105で検出したユーザの手の色を解析する。尚、前記S146では、ユーザの手の色は、例えばRGB値により特定される。
続いて、S147においてCPU11は、ユーザの手の適切な色味基準をメモリ12等から取得する。尚、前記S147で取得されるユーザの手の適切な色味基準は、例えばRGB値により特定する。
その後、S148においてCPU11は、前記S146の解析結果と前記S147で取得した色味基準に基づいて、ユーザの手の色が適切な色味基準と適合するか否かを判定する。具体的には、前記S146で特定されたユーザの手の色のRGB値と、前記S147で取得された適切な色味基準のRGB値との差分が所定値以内(例えばΔR>50、且つΔG>50、且つΔB>50)である場合に、ユーザの手の色が適切な色味基準と適合すると判定する。
そして、ユーザの手の色が適切な色味基準と適合すると判定された場合(S148:YES)には、S110へと移行する。一方、ユーザの手の色が適切な色味基準と適合しないと判定された場合(S148:NO)には、S149へと移行する。
S149においてCPU11は、前記S146で特定されたユーザの手の色のRGB値と、前記S147で取得された適切な色味基準のRGB値との差分を算出する。
その後、S150においてCPU11は、前記S149で算出されたRGB値の差分が解消されるように、今後撮像された撮像画像を加工する(前記S149で算出されたRGB値の差分を加算する)ように設定する。それによって、撮像画像中のユーザの手の色が実際の手の色と大きく異なる状況となっても、撮像画像のRGB値を調整することによって、その後のS112において撮像画像から指先端部の色を適切に検出することが可能となる。尚、前記S150の設定は、S111において解除されるまで継続する。
以上詳細に説明した通り、第1実施形態に係る通信端末1、通信端末1の制御方法及び通信端末1において実行されるコンピュータプログラムでは、端末ケース3内に通信端末1が配置された状態で、操作板6へのユーザのタッチ操作の操作態様を、通信端末1に内蔵されたカメラ5によって撮像し(S5)、撮像された撮像画像に基づいて、操作板6に対するユーザのタッチ操作を検出し(S8)、検出された操作板6に対するユーザのタッチ操作に基づいて通信端末1へのユーザ操作を行うので、通信端末1の周囲に通信端末1に対するユーザの操作を阻害する端末ケース3のような障害物が置かれた場合であっても、操作板6へのユーザのタッチ操作に基づいて通信端末1の操作を行わせるので、操作板6によってディスプレイ4への視認性を確保しつつ、ユーザの操作性が低下することについても防止することが可能となる。
また、操作板6に対するユーザのタッチ操作を、タッチパネル18に対する操作に置き換えて、通信端末1へのユーザ操作を行うので、タッチパネル18にユーザが直接タッチしなくとも、操作板6へのタッチ操作によってタッチパネル18の操作を実現することが可能となる。従って、タッチパネル18に直接操作を行う場合と比較しても操作性が低下することが無い。
また、操作板6に対するユーザのタッチ操作を、表示画面上の座標系に変換されたタッチ地点をタッチパネル18でタッチする操作に置き換えるので、タッチパネル18にユーザが直接タッチしなくとも、操作板6へのタッチ操作によってタッチパネル18の任意の地点にタッチするユーザ操作を実現することが可能となる。また、操作板6へのタッチ地点を変更すれば、置き換えられるタッチパネル18のタッチ地点も変化するので、ユーザの意図に沿った容易なタッチ操作が実現可能となる。
また、操作板6に対するユーザのタッチ操作を、ディスプレイ4上の操作対象物(例えばアイコン等)をタッチパネル18でタッチする操作に置き換えるので、タッチパネル18にユーザが直接タッチしなくとも、操作板6へのタッチ操作によってディスプレイ4に表示された操作対象物をタッチするユーザ操作を実現することが可能となる。
また、ユーザが操作板6を介して視認できるディスプレイ4と変換前のタッチ地点との位置関係が、通信端末1のディスプレイ4と変換後のタッチ地点との位置関係に対応するように、操作板上の座標系で特定されたタッチ地点をディスプレイ上の座標系に変換するので、ユーザが操作板6を介して視認できるディスプレイ4にタッチパネルが配置されているのと同等の電子機器に対するユーザ操作を実現することが可能となる。
また、ユーザの操作板6へのタッチ操作の操作種別を検出し、検出された操作種別に基づいて通信端末1へのユーザ操作を行うので、ドラッグ操作やフリック操作やピンチ操作等の特殊なタッチ操作に基づいて通信端末1へのユーザ操作を行わせることが可能となる。従って、タッチパネル18の操作と同等の操作感覚で操作板による電子機器へのユーザ操作を行わせることが可能となる。
また、操作板6に対するユーザのタッチ操作を、ハードキー19に対する操作に置き換えて、通信端末1へのユーザ操作を行うので、ハードキー19にユーザが直接触れなくとも、操作板6へのタッチ操作によってハードキー19の操作を実現することが可能となる。そして、筐体表面に配置されたハードキー19に対するユーザの操作性が低下することについて防止することが可能となる。
また、操作板6にフレネルレンズを形成することによって、操作板6を介してディスプレイ4の表示内容を拡大して表示するので、例えばディスプレイ4からユーザが離れた状態でディスプレイ4を視認する必要がある状況であっても、ユーザに表示内容を詳細に示すことが可能となる。
[第2実施形態]
次に、第2実施形態に係る通信端末を含む端末操作システムについて図34乃至図36に基づいて説明する。尚、以下の説明において上記図1乃至図33の第1実施形態に係る端末操作システム2の構成と同一符号は、前記第1実施形態に係る端末操作システム2等の構成と同一あるいは相当部分を示すものである。
この第2実施形態に係る端末操作システムの概略構成は、第1実施形態に係る端末操作システム2とほぼ同じ構成である。また、各種制御処理も第1実施形態に係る端末操作システム2とほぼ同じ制御処理である。
ただし、第1実施形態に係る端末操作システム2が、カメラ5で撮像した撮像画像からユーザ(操作者)の指先端部の色を特定し、特定した指先端部の色から操作板6を操作するユーザのタッチ地点を検出するのに対し、第2実施形態に係る端末操作システムは、カメラ5で撮像した撮像画像からユーザの指先端部の輪郭の幅を特定し、特定した輪郭の幅から操作板6を操作するユーザのタッチ地点を検出する点で第1実施形態に係る端末操作システム2と異なっている。
以下に、第2実施形態に係る通信端末において実行するタッチ検出処理のサブ処理について図34及び図35に基づき説明する。図34及び図35は第2実施形態に係るタッチ検出処理のサブ処理プログラムのフローチャートである。
尚、S201〜S211の処理は、第1実施形態に係るタッチ検出処理プログラム(図26、図27)のS101〜S111の処理と同様の処理であるので説明は省略する。
そして、S212においてCPU11は、前記S205で検出したユーザの手から、ユーザの指先端部を特定し、更に指先端部の輪郭の幅を検出する。尚、指先端部が複数特定された場合には、各指先端部の輪郭の幅をそれぞれ検出する。
次に、S213においてCPU11は、前記S212において検出された指先端部の輪郭の幅に基づいて、少なくとも一以上の指先端部の輪郭の幅が閾値(例えば1mm)以下であるか否かを判定する。ここで、前記したようにカメラ5の焦点距離は、カメラ5から操作板6までの距離に設定されている(S37)。従って、操作板6に近ければ近い物体ほど、撮像画像中の輪郭は細くなり、逆に操作板6から遠ざかる物体ほど、撮像画像中の輪郭は太くなる。従って、前記S213において判定基準となる閾値を、指先部分(必ずしも指先部分でなくても良い)が操作板6に接触した状態でカメラ5により撮像された撮像画像中に含まれる該指先部分が示す輪郭の幅(検出誤差を考慮して20%程度の余裕を持たせても良い)とすることによって、操作板6に対してユーザの指先部分が接しているか否かを判定することが可能となる。
例えば、撮像画像中に図36に示すユーザの指先端部81、82がそれぞれ含まれる場合について例を上げて説明する。図36に示す例では、指先端部81については他の部分と比べて明らかに輪郭が細くなっており、操作板6に対してユーザの指先部分が接している、即ち操作板6に対してユーザがタッチ操作を行っていると判定できる。一方、指先端部82については輪郭が細くなっておらず、操作板6に対してユーザの指先端部82が接していない、即ち操作板6に対してユーザがタッチ操作を行っていないと判定できる。
そして、前記S213の判定の結果、少なくとも一以上の指先端部の輪郭の幅が閾値以下であると判定された場合(S213:YES)には、ユーザの指先端部が操作板6に接触した状態にあると推定し、S214へと移行する。それに対して、指先端部の輪郭の幅が閾値以下でないと判定された場合(S213:NO)には、ユーザの指先端部が操作板6に接触した状態にないと推定し、操作板6に対してユーザがタッチ操作を行っていないと判定する(S207)。
また、前記S213では、輪郭の幅の絶対値ではなく相対値によって指先端部が操作板6に接触した状態にあるか否かを判定しても良い。例えば、指先端部以外の手の部分の輪郭の幅を特定し、指先端部と指先端部以外の輪郭の幅の差分が所定値以上である場合に、ユーザの指先端部が操作板6に接触した状態にあると判定しても良い。
そして、S214においてCPU11は、操作板6に対してユーザがタッチ操作を行っていると判定する。
次に、S215においてCPU11は、操作板6上の座標系によってユーザがタッチしたタッチ地点の座標を特定する。具体的には、図36に示すように、輪郭の細くなった指先端部81の先端位置をタッチ地点P1とし、タッチ地点P1の座標を操作板6上の座標系によって特定する。尚、タッチ地点が2点以上有る場合には、それぞれのタッチ地点について座標を特定する。
その後、S216においてCPU11は、前記S215において操作板上の座標系で特定されたタッチ地点の座標をディスプレイ4上の座標系の座標に変換する。
その後、S217においてCPU11は、前記S212〜S216の検出結果に基づいてタッチ履歴を新たに保存する。
次に、S218においてCPU11は、前記S202において読み出された過去のタッチ履歴と、前記S217で新たに保存されたタッチ履歴とに基づいて、タッチ座標の変位を算出する。具体的には、直近の所定時間以内(例えば5sec内)のタッチのオン・オフの変化、タッチ座標が変位しているか否か、変位している場合にはどのような方向にどの程度の速度で変位しているかを算出する。尚、タッチオン及びタッチオフの算出では、ユーザの手の指先部分の輪郭の幅が閾値より太い状態から閾値以下へと変化したタイミングで、操作板6に対してユーザがタッチオンしたと算出し、その後、ユーザの手の指先部分の輪郭の幅が閾値以下から閾値より太い状態となったタイミングで、操作板6に対してユーザがタッチオフしたと算出する。尚、以降のS219〜S226の処理は、第1実施形態に係るタッチ検出処理プログラム(図26、図27)のS119〜S126の処理と同様の処理であるので説明は省略する。
以上詳細に説明した通り、第2実施形態に係る通信端末、通信端末の制御方法及び通信端末において実行されるコンピュータプログラムでは、カメラ5で撮像された撮像画像に含まれるユーザの指先端部の輪郭の幅に基づいてタッチ操作を検出するので、撮像画像に基づいて操作板6に対するユーザのタッチ操作を正確に特定することが可能となる。
また、指先の色に基づいて検出を行う第1実施形態と比較すると、周囲の明るさ等の外部環境の影響を比較的受けることなく、ユーザのタッチ操作を検出することが可能となる。また、肌の色の個人差を考慮する必要も無い。
[第3実施形態]
次に、第3実施形態に係る通信端末を含む端末操作システムについて図37及び図38に基づいて説明する。尚、以下の説明において上記図1乃至図33の第1実施形態に係る端末操作システム2の構成と同一符号は、前記第1実施形態に係る端末操作システム2等の構成と同一あるいは相当部分を示すものである。
この第3実施形態に係る端末操作システムの概略構成は、第1実施形態に係る端末操作システム2とほぼ同じ構成である。また、各種制御処理も第1実施形態に係る端末操作システム2とほぼ同じ制御処理である。
ただし、第1実施形態に係る端末操作システム2が、操作板6に仮想操作領域75を設け、仮想操作領域75へのタッチ操作をハードキー19の操作に置き換えてハードキー19の操作を実行するのに対し、第3実施形態に係る端末操作システムは、操作板6に付与された振動をハードキー19の操作に置き換えてハードキー19の操作を実行する点で第1実施形態に係る端末操作システム2と異なっている。
以下に、第3実施形態に係る通信端末において実行するハードキー操作処理プログラムについて図37に基づき説明する。図37は第3実施形態に係るハードキー操作処理プログラムのフローチャートである。
尚、第3実施形態に係るハードキー操作処理プログラムは、例えば、端末操作処理プログラム(図7)のS8の処理の後に実行させることが望ましい。
先ず、S301においてCPU11は、振動パターンとハードキー19の操作内容を対応付けた対応情報を取得する。ここで、図38は、前記S301で取得される対応情報の一例を示した図である。図38に示す対応情報では、所定時間以内(3sec)以内に振動が2回ある振動パターンをホームボタンの操作に対応付けている。また、所定時間以内(3sec)以内に振動が3回ある振動パターンをサイドボタンの操作に対応付けている。更に、所定時間以内(3sec)以内に振動が4回ある振動パターンを電源ボタンの操作に対応付けている。
次に、S302においてCPU11は、メモリ12に記憶された通信端末1の振動履歴を読み出す。尚、第3実施形態に係る通信端末1では、通信端末1に内蔵された加速度センサ20を用いて通信端末1に対して生じる振動を検出し、過去所定時間分(例えば30sec)の振動履歴をメモリ12に記憶する。尚、通信端末1と端末ケース3は固定されているので、前記S302で読み出される通信端末1の振動履歴は操作板6の振動履歴にも相当する。
続いて、S303においてCPU11は、通信端末1に内蔵された加速度センサ20を用いて通信端末1に対して生じる振動(操作板6の振動にも相当する)を検出する。
その後、S304においてCPU11は、前記S303で検出した振動の内、振幅と周波数がそれぞれ所定の閾値以上である振動を抽出し、抽出された振動以外の振動(即ち、振幅や周波数が所定の閾値未満である振動)については、ユーザ(操作者)が意図的に与えた振動ではなくノイズとみなして除外する。そして、前記S304で除外された振動については、後述のS305において振動履歴の記憶対象からも除かれる。また、前記S304では、振動の振幅と周波数を両方考慮する構成としているが、振動の振幅のみを考慮して、振幅が所定の閾値未満である振動のみを除外する構成としても良い。同様に、振動の周波数のみを考慮して、周波数が所定の閾値未満である振動のみを除外する構成としても良い。更に、振幅が所定の閾値未満で且つ周波数が所定の閾値未満である振動のみを除外する構成としても良い。
その後、S305においてCPU11は、前記S303で検出した振動に基づいて、前記S302においてメモリ12から読み出した振動履歴を更新する。但し、前記したように前記S304において除外された振動については振動履歴に含まないように更新する。
次に、S306においてCPU11は、前記S301で読み出した対応情報(図38)と、前記S305で更新された振動履歴とに基づいて、振動履歴に記憶された振動パターンが対応情報に含まれるいずれかの振動パターンに該当するか否か判定する。
そして、振動履歴に記憶された振動パターンが対応情報に含まれるいずれかの振動パターンに該当すると判定された場合(S306:YES)には、S307へと移行する。それに対して、振動履歴に記憶された振動パターンが対応情報に含まれるいずれかの振動パターンにも該当しないと判定された場合又は振動を検出していない場合(S306:NO)には、S308へと移行する。
S307においてCPU11は、該当すると判定された振動パターンと対応するハードキー19の操作が行われたと判定し、該対応するハードキー19の種別を、ユーザのタッチ操作として出力する。その後、通信端末1は、出力された種別のハードキー19の操作を行ったとして、通信端末1へのユーザ操作を行う。具体的には、トップ画面25(図5)への移行、音量の調整、文字の入力、電源のオン、オフ等が行われる。
一方、S308においてCPU11は、ハードキー19の操作が行われないと判定し、当該ハードキー操作処理プログラムを終了する。
以上詳細に説明した通り、第3実施形態に係る通信端末、通信端末の制御方法及び通信端末において実行されるコンピュータプログラムでは、操作板6に対してユーザが振動を付与する操作を、ハードキー19に対する操作に置き換えて、通信端末1の操作を行うので、ハードキー19にユーザが直接触れなくとも、操作板6を振動させることによってハードキー19の操作を実現することが可能となる。そして、筐体表面に配置されたハードキー19に対するユーザの操作性が低下することについて防止することが可能となる。また、操作板6を振動させるという容易な操作内容で、ハードキー19の操作が実現可能となる。
また、操作板6の振動状態を通信端末1の振動状態を介して検出するので、通信端末1が備えるセンサ等によって操作板6の振動状態を容易に検出することが可能となる。
また、操作板6の振動パターンとハードキー19の操作内容が対応付けられた対応情報があって、操作板6が振動状態にあることを検出した場合に、検出された操作板6の振動パターンに対応するハードキー19の操作内容で通信端末1を操作するので、操作板6を振動させるという単純な操作によって、様々な種類のハードキー19の操作が実現可能となる。
振幅や周波数が閾値未満である振動を除去した操作板6の振動状態を、ハードキー19の操作に置き換えるので、ノイズ等を除去してユーザの操作に基づく操作板6の振動状態を正確に検出することが可能となる。その結果、ユーザの意図に沿ったハードウェア上の操作を正確に行わせることが可能となる。
尚、本発明は前記実施形態に限定されるものではなく、本発明の要旨を逸脱しない範囲内で種々の改良、変形が可能であることは勿論である。
例えば、第1乃至第3実施形態では端末操作処理プログラム(図7参照)の各処理を通信端末1が実行する構成としているが、通信端末1と双方向通信可能に接続されたセンタが一部または全部の処理を実行する構成としても良い。
また、第1乃至第3実施形態では、操作板6をユーザ(操作者)が手でタッチ操作することを想定してタッチ操作を検出する構成としているが、タッチペン等の道具を介してタッチする場合についても適用することが可能である。特に第3実施形態では、輪郭線の幅に基づいてタッチ操作を検出するので、指以外の様々な物(例えば、タッチした状態で色が変化しない物)によってタッチされる場合であってもタッチ操作を検出することが可能となる。
また、第1乃至第3実施形態では、操作板6に拡大鏡としてフレネルレンズを形成する構成としているが、フレネルレンズ以外の拡大鏡(例えば凸レンズ等)を形成することとしても良い。また、操作板6の全領域ではなく一部にのみ拡大鏡を形成することとしても良い。
また、第1実施形態では、指先端部の色に基づいてタッチ操作を検出する構成としているが、時刻に対する指先端部の色の変化に基づいてタッチ操作を検出する構成としても良い。例えば、指先端部の色が異なる色に変化した場合に、異なる色に変化した部分で操作板6をユーザがタッチするタッチ操作を行ったと検出しても良い。
また、第2実施形態では、指先端部の輪郭線の幅に基づいてタッチ操作を検出する構成としているが、時刻に対する指先端部の輪郭線の幅の変化に基づいてタッチ操作を検出する構成としても良い。例えば、指先端部の輪郭線の幅が閾値以下へと変化した場合に、閾値以下に変化した部分で操作板6をユーザがタッチするタッチ操作を行ったと検出しても良い。
また、第3実施形態では、対応情報(図38)においてハードキー19の操作内容に対応付ける操作板6の振動パターンとして、所定時間内に複数回の振動がある振動パターンを対応付けているが、他の振動パターンを対応付けても良い。例えば、所定値未満の小さい振幅の振動からなる振動パターンをサイドボタンの操作に対応付け、所定値以上の大きい振幅の振動を含む振動パターンをホームボタンの操作に対応付けても良い。
1 通信端末
2 端末操作システム
3 端末ケース
4 ディスプレイ
5 カメラ
6 操作板
11 CPU
12 メモリ
18 タッチパネル
19 ハードキー
22 通信端末ECU
26〜28 起動アイコン
41〜44 検出マーク
75、76 仮想操作領域

Claims (12)

  1. 表示画面と撮像装置とを備えた電子機器の前記表示画面前方に配置された操作板に対するタッチ操作に基づいて前記電子機器を操作するコンピュータプログラムにおいて、
    前記電子機器の撮像装置によって撮像された前記表示画面前方の撮像画像に基づいて、前記操作板をタッチ操作するユーザの手の指先部分の色を検出する色検出機能と、
    前記色検出機能によって検出された前記ユーザの手の指先部分の色に基づいて、前記操作板に対する前記ユーザのタッチ操作を検出するタッチ操作検出機能と、
    前記タッチ操作検出機能によって検出された前記操作板に対する前記ユーザのタッチ操作に基づいて、前記電子機器へのユーザ操作を行う操作機能と、
    を前記電子機器に実行させることを特徴とするコンピュータプログラム。
  2. 前記タッチ操作検出機能は、前記色検出機能によって検出された前記ユーザの手の指先部分の色が所定の色の範囲にある場合に、該所定の色の範囲にある指先部分を、前記操作板に対して前記ユーザがタッチしたタッチ地点として特定することを特徴とする請求項1に記載のコンピュータプログラム。
  3. 前記所定の色の範囲は、手の指先部分が前記操作板に接触した状態で示す色の範囲とすることを特徴とする請求項2に記載のコンピュータプログラム。
  4. 前記タッチ操作検出機能は、
    前記色検出機能によって検出された前記ユーザの手の指先部分の色が前記所定の色の範囲内から範囲外へと変化したタイミングで、前記操作板に対して前記ユーザがタッチオンしたと検出し、
    前記色検出機能によって検出された前記ユーザの手の指先部分の色が前記所定の色の範囲内から範囲外へと変化したタイミングで、前記操作板に対して前記ユーザがタッチオフしたと検出することを特徴とする請求項2又は請求項3に記載のコンピュータプログラム。
  5. 前記タッチ操作検出機能によって特定された前記タッチ地点の履歴に基づいて、前記操作板に対する前記ユーザのタッチ操作の操作種別を検出する操作種別検出機能を、前記電子機器に実行させ、
    前記操作機能は、前記操作種別検出機能によって検出された前記ユーザのタッチ操作の操作種別に基づいて、前記電子機器へのユーザ操作を行うことを特徴とする請求項2乃至請求項4のいずれかに記載のコンピュータプログラム。
  6. 前記電子機器は前記表示画面の前面にタッチパネルが配置され、
    前記操作機能は、前記操作板に対する前記ユーザのタッチ操作を、前記タッチパネルに対する操作に置き換えて、該置き換えた操作による前記電子機器へのユーザ操作を行うことを特徴とする請求項1乃至請求項5のいずれかに記載のコンピュータプログラム。
  7. 前記タッチ操作検出機能は、前記操作板に対して前記ユーザがタッチしたタッチ地点を前記操作板上の座標系で特定し、
    前記操作機能は、
    前記操作板上の座標系で特定されたタッチ地点を前記表示画面上の座標系に変換し、
    前記操作板に対する前記ユーザのタッチ操作を、前記表示画面上の座標系に変換されたタッチ地点を前記タッチパネルでタッチする操作に置き換えることを特徴とする請求項6に記載のコンピュータプログラム。
  8. 前記タッチパネルによって操作対象となる操作対象物を前記表示画面に表示させる表示機能を、前記電子機器に実行させ、
    前記操作機能は、前記電子機器へのユーザ操作として、前記表示画面上の座標系に変換されたタッチ地点に対応する前記操作対象物の操作を行うことを特徴とする請求項7に記載のコンピュータプログラム。
  9. 前記操作機能は、前記ユーザが前記操作板を介して視認できる前記表示画面と変換前のタッチ地点との位置関係が、前記電子機器の前記表示画面と変換後のタッチ地点との位置関係に対応するように、前記操作板上の座標系で特定されたタッチ地点を前記表示画面上の座標系に変換することを特徴とする請求項7又は請求項8に記載のコンピュータプログラム。
  10. 前記操作板には、拡大鏡が形成され、
    前記表示画面の表示内容は前記操作板を介して拡大して表示されることを特徴とする請求項1乃至請求項9のいずれかに記載のコンピュータプログラム。
  11. 表示画面と撮像装置とを備えた電子機器の前記表示画面前方に配置された操作板に対するタッチ操作に基づいて前記電子機器を操作する電子機器の制御方法であって、
    前記電子機器の撮像装置によって撮像された前記表示画面前方の撮像画像に基づいて、前記操作板をタッチ操作するユーザの手の指先部分の色を検出する色検出ステップと、
    前記色検出ステップによって検出された前記ユーザの手の指先部分の色に基づいて、前記操作板に対する前記ユーザのタッチ操作を検出するタッチ操作検出ステップと、
    前記タッチ操作検出ステップによって検出された前記操作板に対する前記ユーザのタッチ操作に基づいて、前記電子機器へのユーザ操作を行う操作ステップと、を有することを特徴とする電子機器の制御方法。
  12. 表示画面と撮像装置とを備え、前記表示画面前方に配置された操作板に対するタッチ操作に基づいて操作される電子機器であって、
    前記撮像装置によって撮像された前記表示画面前方の撮像画像に基づいて、前記操作板をタッチ操作するユーザの手の指先部分の色を検出する色検出手段と、
    前記色検出手段によって検出された前記ユーザの手の指先部分の色に基づいて、前記操作板に対する前記ユーザのタッチ操作を検出するタッチ操作検出手段と、
    前記タッチ操作検出手段によって検出された前記操作板に対する前記ユーザのタッチ操作に基づいて、前記電子機器へのユーザ操作を行う操作手段と、を有することを特徴とする電子機器。
JP2012215015A 2012-09-27 2012-09-27 電子機器、電子機器の制御方法及びコンピュータプログラム Pending JP2014071504A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012215015A JP2014071504A (ja) 2012-09-27 2012-09-27 電子機器、電子機器の制御方法及びコンピュータプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012215015A JP2014071504A (ja) 2012-09-27 2012-09-27 電子機器、電子機器の制御方法及びコンピュータプログラム

Publications (1)

Publication Number Publication Date
JP2014071504A true JP2014071504A (ja) 2014-04-21

Family

ID=50746682

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012215015A Pending JP2014071504A (ja) 2012-09-27 2012-09-27 電子機器、電子機器の制御方法及びコンピュータプログラム

Country Status (1)

Country Link
JP (1) JP2014071504A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016017101A1 (ja) * 2014-07-30 2016-02-04 ソニー株式会社 情報処理装置、情報処理方法及びプログラム
JP2020098537A (ja) * 2018-12-19 2020-06-25 京セラ株式会社 電子機器、制御プログラム及び判定方法

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016017101A1 (ja) * 2014-07-30 2016-02-04 ソニー株式会社 情報処理装置、情報処理方法及びプログラム
JPWO2016017101A1 (ja) * 2014-07-30 2017-06-15 ソニー株式会社 情報処理装置、情報処理方法及びプログラム
US10346992B2 (en) 2014-07-30 2019-07-09 Sony Corporation Information processing apparatus, information processing method, and program
JP2020098537A (ja) * 2018-12-19 2020-06-25 京セラ株式会社 電子機器、制御プログラム及び判定方法
JP7129897B2 (ja) 2018-12-19 2022-09-02 京セラ株式会社 電子機器

Similar Documents

Publication Publication Date Title
US8570290B2 (en) Image display device
CN108984067B (zh) 一种显示控制方法及终端
US10852858B2 (en) Cover device, and electronic device and method for identifying cover device
CN110321126B (zh) 生成页面代码的方法和装置
EP2565758A2 (en) Touch panel device and portable information terminal including touch panel device
EP3260964B1 (en) Mobile terminal and method for controlling the same
EP3933545B1 (en) Method and apparatus for detecting a bending state of electronic device, and storage medium
KR102044824B1 (ko) 터치 감지 및 터치압력 감지가 가능한 장치 및 제어방법
US20240184403A1 (en) Personal digital assistant
KR101646779B1 (ko) 터치 스크린을 구비한 휴대 단말기의 글자 크기 설정 방법 및 장치
JP2014071507A (ja) 電子機器、電子機器の制御方法及びコンピュータプログラム
US20040036699A1 (en) Method of identifying symbols, and portable electronic device
JP2014071504A (ja) 電子機器、電子機器の制御方法及びコンピュータプログラム
JP2014071505A (ja) 電子機器、電子機器の制御方法及びコンピュータプログラム
JP2014071513A (ja) 電子機器、電子機器の制御方法及びコンピュータプログラム
KR101641250B1 (ko) 이동 단말기 및 그 제어 방법
JP2014071510A (ja) 電子機器、電子機器の制御方法及びコンピュータプログラム
JP2014071822A (ja) 電子機器、電子機器の制御方法及びコンピュータプログラム
KR20210045891A (ko) 전자 장치 및 전자 장치의 화면 캡쳐 운용 방법
US20140015859A1 (en) Mobile terminal and control method thereof
JP2014071503A (ja) 電子機器、電子機器の制御方法及びコンピュータプログラム
JP2014071508A (ja) 電子機器、電子機器の制御方法及びコンピュータプログラム
JP2014071506A (ja) 電子機器、電子機器の制御方法及びコンピュータプログラム
JP2014071511A (ja) 電子機器、電子機器の制御方法及びコンピュータプログラム
JP2014071509A (ja) 電子機器、電子機器の制御方法及びコンピュータプログラム