図1を参照して、この発明の一実施例の携帯電話機10は、一例としてスマートフォン(smart phone)であり、縦長の扁平矩形のハウジング12を含む。ただし、この発明は、タブレット端末およびPDAなど任意の携帯端末に適用可能であることを予め指摘しておく。
ハウジング12の一方主面(表面)には、表示部として機能する、たとえば液晶や有機ELなどのディスプレイ14が設けられる。ディスプレイ14の上には、タッチパネル16が設けられる。したがって、この実施例の携帯電話機10では、後述のハードキーの操作によるものを除く大部分の入力操作は、このタッチパネル16を介して行われる。
ハウジング12の縦方向一端の表面側にスピーカ18が内蔵され、縦方向他端の表面側にマイク20が内蔵される。
タッチパネル16と共に、入力操作手段を構成するハードキーとして、この実施例では、通話キー22a、終話キー22bおよびメニューキー22cが設けられる。
第8の発明でも、第1の発明と同様、ユーザは、撮影するときにタッチした後にタッチ位置を変化させるだけで、複数の撮影パラメータ値を容易に変更して、撮影を行うことが出来る。そのため、撮影するときの操作性が向上する。
第9の発明は、撮影前に複数の第1撮影パラメータ値が設定されており、カメラモジュール(50)、表示部(14)、表示部に設けられるタッチパネル(16)、タッチパネルに対するタッチ操作を検出する検出部(48)および予め登録されている複数の第2撮影パラメータ値に、タッチ位置の条件を対応付けて記憶する記憶部(46)を有する、携帯端末(10)における撮影キー制御方法であって、携帯端末のプロセッサが、表示部に撮影キーを表示する表示処理ステップ(S3)、撮影キーに対してタッチされた後にタッチ位置が変化したとき、そのタッチ位置が条件を満たしているかを判断する判断ステップ(S133)、撮影キーに対してタッチされた後に変化したタッチ位置が条件を満たしていると判断されたとき、複数の第1撮影パラメータ値を複数の第2撮影パラメータ値に変更する変更ステップ(S135)、およびタッチパネルからタッチが離されたとき、変更された複数の第2撮影パラメータ値に基づいて、カメラモジュールによって撮影された画像を保存する保存ステップ(S139)を実行する、撮影キー制御方法である。
第9の発明でも、第1の発明と同様、ユーザは、撮影するときにタッチした後にタッチ位置を変化させるだけで、複数の撮影パラメータ値を容易に変更して、撮影を行うことが出来る。そのため、撮影するときの操作性が向上する。
図2を参照して、図1に示す実施例の携帯電話機10は、コンピュータまたはCPUと呼ばれるプロセッサ30を含む。プロセッサ30には、無線通信回路32、A/D変換器36、D/A変換器38、入力装置40、表示ドライバ42、フラッシュメモリ44、RAM46、タッチパネル制御回路48、カメラモジュール50およびLED制御回路52などが接続される。
プロセッサ30は、携帯電話機10の全体制御を司る。記憶部として機能するRAM46には、フラッシュメモリ44に予め設定されているプログラムの全部または一部が使用に際して展開され、プロセッサ30はこのRAM46上のプログラムに従って動作する。なお、RAM46はさらに、プロセッサ30のワーキング領域ないしバッファ領域として用いられる。
入力装置40は、図1に示すタッチパネル16、ハードキー22を含むものであり、操作部または入力部を構成する。ユーザが操作したハードキーの情報(キーデータ)はプロセッサ30に入力される。
無線通信回路32は、アンテナ34を通して、音声通話やメールなどのための電波を送受信するための回路である。実施例では、無線通信回路32は、CDMA方式での無線通信を行うための回路である。たとえば、ユーザが入力装置40を操作して電話発信(発呼)を指示すると、無線通信回路32は、プロセッサ30の指の下、電話発信処理を実行し、アンテナ34を介して電話発信信号を出力する。電話発信信号は、基地局および通信網を経て相手の電話機に送信される。そして、相手の電話機において着信処理が行われると、通信可能状態が確立され、プロセッサ30は通話処理を実行する。
通常の通話処理について具体的に説明すると、相手の電話機から送られてきた変調音声信号はアンテナ34によって受信される。受信された変調音声信号には、無線通信回路32によって復調処理および復号処理が施される。そして、これらの処理によって得られた受話音声信号は、D/A変換器38によって音声信号に変換された後、スピーカ18から出力される。一方、マイク20を通して取り込まれた送話音声信号は、A/D変換器36によって音声データに変換された後、プロセッサ30に与えられる。音声データには、プロセッサ30の指示の下、無線通信回路32によって符号化処理および変調処理が施され、アンテナ34を介して出力される。したがって、変調音声信号は、基地局および通信網を介して相手の電話機に送信される。
また、相手の電話機からの電話発信信号がアンテナ34によって受信されると、無線通信回路32は、電話着信(着呼)をプロセッサ30に通知する。これに応じて、プロセッサ30は、表示ドライバ42を制御して、着信通知に記述された発信元情報(電話番号など)をディスプレイ14に表示する。また、上記処理に伴い、プロセッサ30は、スピーカ18から着信音(着信メロディ、着信音声と言うこともある。)を出力させる。
そして、ユーザが入力装置40に含まれる通話キー22a(図1)を用いて応答操作を行うと、無線通信回路32は、プロセッサ30の指示の下、電話着信処理を実行する。さらに、通信可能状態が確立され、プロセッサ30は上述した通話処理を実行する。
また、通話可能状態に移行した後に入力装置40に含まれる終話キー22b(図1)によって通話終了操作が行われると、プロセッサ30は、無線通信回路32を制御して、通話相手に通話終了信号を送信する。そして、通話終了信号の送信後、プロセッサ30は通話処理を終了する。また、先に通話相手から通話終了信号を受信した場合も、プロセッサ30は通話処理を終了する。さらに、通話相手によらず、移動通信網から通話終了信号を受信した場合も、プロセッサ30は通話処理を終了する。
A/D変換器36には図1に示すマイク20が接続され、上述のようにマイク20からの音声信号はこのA/D変換器36でディジタルの音声データに接続され、プロセッサ30に入力される。D/A変換器38にはスピーカ18が接続される。D/A変換器38は、ディジタルの音声データを音声信号に変換して、アンプを介してスピーカ18に与える。したがって、音声データの音声がスピーカ18から出力される。
なお、プロセッサ30は、たとえばユーザによるボリュームの操作に応答して、D/A変換器38に接続されるアンプの増幅率を制御することによって、スピーカ18から出力される音声の音量を調整することができる。
表示ドライバ42はディスプレイ14およびプロセッサ30と接続され、プロセッサ30から出力される画像データをVRAMに記憶する。そして、表示ドライバ42は、VRAMのデータに対応する画像を、ディスプレイ14に表示する。つまり、表示ドライバ42は、プロセッサ30の指示の下、当該表示ドライバ42に接続されたディスプレイ14の表示を制御する。なお、ディスプレイ14には、たとえばLEDなどを光源とするバックライトが設けられており、表示ドライバ42はプロセッサ30の指示に従って、そのバックライトの明るさや、点灯/消灯を制御する。
タッチパネル制御回路48には、図1に示すタッチパネル16が接続される。タッチパネル制御回路48は、タッチパネル16に必要な電圧などを付与するとともに、タッチパネル16に対するユーザによるタッチの開始を示す開始信号、ユーザによるタッチの終了を示す終了信号、およびユーザがタッチしたタッチ位置を示す座標データをプロセッサ30に入力する。したがって、プロセッサ30はこの座標データに基づいて、そのときユーザがどのアイコンやキーにタッチしたかを判断することができる。
実施例では、タッチパネル16は、指などの物体が表面に接近して生じた電極間の静電容量の変化を検出する静電容量方式で、たとえば1本または複数本の指がタッチパネル16に触れたことを検出する。また、タッチパネル16は、ディスプレイ14の上に設けられ、その画面内で、任意の位置を指示するためのポインティングデバイスである。タッチパネル制御回路48は検出部として機能し、タッチパネル16のタッチ有効範囲内でのタッチ操作を検出して、そのタッチ操作の位置を示す座標データをプロセッサ30に出力する。つまり、ユーザは、タッチパネル16の表面に対してタッチ、スライドおよびリリースなどの操作を行うことで、操作位置や、操作方向などを携帯電話機10に入力する。
なお、タッチパネル16の検出方式には、表面型の静電容量方式が採用されてもよいし、抵抗膜方式、超音波方式、赤外線方式および電磁誘導方式などが採用されてもよい。また、タッチ操作はユーザの指だけに限らず、スタイラスペンなどによって行われてもよい。
カメラモジュール50はメインカメラとも呼ばれ、制御回路、レンズおよびイメージセンサなどを含む。プロセッサ30は、カメラ機能を実行する操作がされると、カメラモジュール50を起動し、背景や被写体に対応するスルー画像(プレビュー画像)をディスプレイ14に表示する。そして、カメラモジュール50は、ユーザが撮影操作を行うと、画像を撮影する処理を実行する。
LED制御回路52は、プロセッサ22bの指示の下、当該LED制御回路52に接続されたLED26の発光を制御する。また、カメラ機能が実行されている場合、LED26はフラッシュとして発光することがある。なお、LED制御回路52およびLED26は、発光部と呼ばれることもある。
図3は、ディスプレイ14に表示されるスルー画像の一例を示す図解図である。ディスプレイ14の表示範囲は、状態表示領域60および機能表示領域62を含む。状態表示領域60には、アンテナ12による電波受信状態を示すアイコン(ピクト)、二次電池の残電池容量を示すアイコンおよび日時が表示される。また、機能表示領域62には、メニュー画面を表示するためのメニューキー64と、撮影操作が行われるシャッターキー(撮影キーとも言う)66とが表示される。また、カメラ機能が実行されると、撮影パラメータ値に基づいてスルー画像が表示される。たとえば、ユーザがメニューキー64に対してタッチ操作を行うと、フォーカス、フラッシュおよびカラーエフェクト(色効果)などの撮影パラメータ値を変更するためのメニュー画面(図8参照)が表示される。そして、ユーザは、メニュー画面のGUIを操作することで、これらの撮影パラメータ値を変更することが出来る。
「撮影パラメータ値」とは、画像の撮影条件を示すパラメータ値である。そして、本実施例の撮影パラメータ値には、フォーカス、フラッシュおよびカラーエフェクト(色効果)などの撮影パラメータ値が含まれる。
たとえば、フォーカスの撮影パラメータ値は、オートフォーカス処理を行わない「無」、オートフォーカス処理を行う「自動」、フォーカスレンズのピント位置を近景(マクロ)に固定する「マクロ」およびフォーカスレンズのピント位置を遠景に固定する「遠景」を含む。フラッシュの撮影パラメータ値は、LED26を必ずフラッシュとして発光させる「有」、LED26をフラッシュとして発光させない「無」、周囲の光量に基づいてLED26の発光が決められる「自動」、被写体の赤目が抑制されるようにLED26を発光させる「赤目」を含む。カラーエフェクトの撮影パラメータ値は、撮影する画像の色を通常の色調をとする「標準」、撮影する画像の色をセピア調にする「セピア」、撮影する画像の色をモノクロ調にする「モノクロ」および撮影する画像の色を反転させる「ネガティブ」を含む。
そして、ユーザは、これらの撮影パラメータ値を撮影前に設定し、シャッターキー66を操作することで、撮影パラメータ値の変更が反映された画像を撮影することが出来る。
ここで、本実施例の携帯電話機10は、シャッタースライド機能を有している。シャッタースライド機能とは、シャッターキー66に対して所定条件を満たすタッチ操作が行われると、現在の撮影パラメータ値(第1撮影パラメータ値)を事前に登録された撮影パラメータ値(第2撮影パラメータ値)に変更する機能である。そして、ユーザが所定条件を満たすタッチ操作を終了させると、変更された撮影パラメータ値に基づいて、画像が撮影される。以下、シャッタースライド機能について、具体的に説明する。
図4(A),(B)を参照して、シャッターキー66に対してタッチした後に、所定時間(たとえば、3秒)が経過すると、シャッターキー66の周囲に補助キー68が表示されると共に、メニューキー64の表示が消える。そして、3つの補助キー68は、撮影パラメータ値を変更するための所定条件をユーザに示す。つまり、ユーザは、補助キー68の表示を参考にすることで、撮影パラメータ値を変更しやすくなる。また、補助キー68の表示によって、後述する座標範囲Aが把握されやすくなる。なお、図4(B)では3つの補助キー68が表示されているが、他の実施例では2つ以下、または4つ以上の補助キー68が表示されてもよい。
図5を参照して、上述した所定条件は座標範囲を含み、各補助キー68には座標範囲Aが対応付けられる。たとえば、第1補助キー68aには座標範囲A1が対応し、第2補助キー68bには座標範囲A2が対応し、第3補助キー68cには座標範囲A3が対応する。また、座標範囲A1には、フォーカスが「無」、フラッシュが「有」、カラーエフェクトが「ネガティブ」の撮影パラメータ値が関連付けて登録されている。座標範囲A2には、フォーカスが「マクロ」、フラッシュが「無」、カラーエフェクトが「モノクロ」の撮影パラメータ値が関連付けて登録されている。座標範囲A3には、フォーカスが「遠景」、フラッシュが「無」、カラーエフェクトが「標準」が関連付けて登録されている。そして、本実施例では、シャッターキー66にタッチされた後、タッチ位置を含む座標範囲Aに基づいて、予め登録された撮影パラメータ値が読み出される。
図6(A)を参照して、ユーザが、タッチ位置をシャッターキー66から第1補助キー68aに移動(スライド)させると、タッチ位置が第1補助キー68aと対応する座標範囲A1に入ったと判断される。この場合、座標範囲A1と対応する撮影パラメータ値が読み出され、現在の撮影パラメータ値が座標範囲A1と対応する撮影パラメータ値に変更される。つまり、各撮影パラメータ値は、フォーカスが「無」、フラッシュが「有」、カラーエフェクトが「ネガティブ」と変更される。そして、撮影パラメータ値が変更された結果、ディスプレイ14に表示されるスルー画像では、色が反転した状態となる。
また、図6(B)を参照して、ユーザが、タッチ位置を第2補助キー68bに移動(スライド)させると、タッチ位置が第2補助キー68bと対応する座標範囲A2に入ったと判断される。そのため、座標範囲A2と対応する撮影パラメータ値が読み出され、現在の撮影パラメータ値が座標範囲A2と対応する撮影パラメータ値に変更される。つまり、フォーカスが「マクロ」、フラッシュが「無」、カラーエフェクトが「モノクロ」に変更され、手前の被写体(花)にピントが合った、モノクロ調のスルー画像がディスプレイ14に表示される。
なお、他の実施例では、3つの補助キー68のうち、ユーザがタッチ位置を任意の補助キー68に移動させたときに、その補助キー68が強調されて表示されてもよい。たとえば、他の実施例では、ユーザがタッチ位置を第1補助キー68aにスライドさせたとき、第1補助キー68aが、他の補助キー68b,68cよりも大きく表示されたり、「A」の文字が太字で表示されたり、あるいは、色が異なって表示される。
このように、本実施例では、ユーザは、任意の座標範囲Aにタッチ位置を移動させるだけで、撮影パラメータ値を容易に選択できる。
そして、撮影パラメータ値が変更された状態で、ユーザがタッチパネル16から指を離すと、変更された撮影パラメータ値に基づいて画像が撮影される。たとえば、第2補助キー68bにタッチ位置が変更された状態でタッチパネル16から指が離れると、撮影処理が実行され、図6(B)に対応する画像が撮影される。
図7を参照して、撮影処理が実行されると、メニューキー64が再度表示されると共に、補助キー68が消去される。そして、撮影された画像を保存するかを確認するポップアップ80が表示される。ポップアップ80には、保存キー82およびキャンセルキー84が含まれる。このとき、ユーザは、保存キー82にタッチ操作を行うことで、表示される画像に対応する画像データをフラッシュメモリ44に保存することが出来る。また、ユーザは、キャンセルキー84にタッチ操作を行えば、撮影した画像を保存せずに、スルー画像が表示される状態に戻ることが出来る。
したがって、ユーザは、撮影するときに所定のタッチ操作を行うだけで、撮影パラメータ値を容易に変更して、撮影を行うことが出来る。そのため、撮影するときの操作性が向上する。
また、補助キー68が表示される前に、タッチ位置が各座標範囲Aに移動しても、撮影パラメータ値は変更される。そのため、ユーザは、補助キー68が表示される前に、タッチパネル16の表面を擦る操作(フリック操作)をシャッターキー66に対して行うことで、撮影パラメータ値の変更および撮影を同時に行うことが出来る。そして、このように操作した場合、撮影パラメータ値を変更してから撮影するまでの時間がさらに短縮される。
なお、他の実施例では、ディスプレイ14におけるシャッターキー66の表示位置を、ユーザによって任意に設定できてもよい。この場合、ユーザは、シャッターキー66を、ディスプレイ14におけるタッチしやすい位置に表示させることができる。
次に、変更用の撮影パラメータ値を予め登録する手順について説明する。図8を参照して、メニューキー64が操作されると、メニュー画面が表示される。このメニュー画面には、GUIとして、戻るキー90、フォーカスキー92、フラッシュキー94、カラーエフェクトキー96およびシャッタースライドキー98が表示される。戻るキー90は、図3に示すようなスルー画像が表示された状態に戻るためのキーである。フォーカスキー92、フラッシュキー94およびカラーエフェクトキー96のそれぞれは、対応する撮影パラメータ値を変更するためのキーである。そして、シャッタースライドキー98は、シャッタースライド機能の設定を変更するためのキーである。
図9(A),(B)を参照して、シャッタースライドキー98が操作されると、設定画面が表示される。ここで、シャッタースライド機能が有効にされていなければ、設定画面には、図8のメニュー画面に戻るための戻るキー90および無効状態であることを示す無効キー100aが表示される。一方、シャッタースライド機能が有効にされていれば、設定画面には、戻るキー90、有効状態であることを示す有効キー100bが表示されると共に、各座標範囲Aを示す文字列102および各座標範囲Aと対応付けられている撮影パラメータ値を変更するための変更キー104が表示される。第1文字列102aおよび第1変更キー104aは座標範囲A1と対応し、第2文字列102bおよび第2変更キー104bは座標範囲A2と対応し、第3文字列102cおよび第2変更キー104cは座標範囲A3と対応する。なお、無効キー100aおよび有効キー100bは、まとめて切り替えキー100と呼ばれることがある。
たとえば、無効状態で無効キー100aにタッチ操作がされると、シャッタースライド機能が有効になり、図9(B)の設定画面に切り替わる。また、有効状態で有効キー100bにタッチ操作がされると、シャッタースライド機能が無効になり、図9(A)の設定画面に切り替われる。
また、図9(C)を参照して、任意の文字列102にタッチ操作がされると、現時点での撮影パラメータ値の設定が表示される。たとえば、第1文字列102aにタッチ操作がされた場合、第1文字列102aおよび第1変更キー104aと、第2文字列102bおよび第2変更キー104bとの間には、フォーカス、フラッシュおよびカラーエフェクトの撮影パラメータ値が表示される。
図10(A)を参照して、図9(B)または図9(C)で、たとえば第1変更キー104aに対してタッチ操作がされると、第1座標範囲A1に関連する撮影パラメータ値の変更画面がディスプレイ14に表示される。変更画面には、戻るキー90、登録キー110、フォーカス変更キー122、フラッシュ変更キー124、カラーエフェクト変更キー126および読み出しキー128が含まれる。
戻るキー90は、設定画面に戻るためのキーである。登録キー110は、変更画面で変更された撮影パラメータ値を、撮影パラメータ値テーブル(図11参照)に登録するためのキーである。フォーカス変更キー122、フラッシュ変更キー124およびカラーエフェクト変更キー126は、各撮影パラメータ値の登録内容を変更するためのキーである。また、これらのキーには、現在の撮影パラメータを示す文字列が書かれている。そして、読み出しキー128は、ユーザなどの操作によって設定されている、現在の撮影パラメータ値を読み出して、各撮影パラメータ値に反映させるためのキーである。ユーザは、このキーを利用することで、直前まで利用していた撮影パラメータを、容易に登録することが出来る。
図10(B)を参照して、フォーカス変更キー122に対してタッチ操作がされた場合、フォーカスの撮影パラメータ値として、「無」キー130、「自動」キー132、「マクロ」キー134および「遠景」キー136がさらに表示される。また、戻るキー90および登録キー110の表示は、この状態では消去される。さらに、フォーカス変更キー122は選択されていることを示すために、色が反転している。なお、「無」キー130は、現時点で設定されている撮影パラメータ値であることを示すために、色が反転した状態で表示される。
図10(C)を参照して、たとえば「自動」キー132にタッチ操作がされると、フォーカスの撮影パラメータ値が「自動」に変更される。また、フォーカス変更キー122に書かれている文字列は、「自動」の文字列に変更される。そして、この状態で登録キー110にタッチ操作がされると、フォーカスの撮影パラメータ値が「自動」として、撮影パラメータ値テーブルに登録される。つまり、ユーザは、撮影パラメータを任意に登録することが出来る。ただし、登録キー110が操作されずに、戻るキー90が操作された場合、変更結果は登録されることなく破棄される。
なお、フラッシュ変更キー124およびカラーエフェクト変更キー126が操作された場合も、対応する撮影パラメータ値を示すキーが表示される。そして、他の撮影パラメータ値に対応するキーが操作された場合の処理は、「自動」キー132が操作された場合と略同様であるため、詳細な説明は省略する。
図11は、撮影パラメータ値テーブルの詳細を示す図解図である。撮影パラメータ値テーブルは、座標範囲の列、撮影パラメータ値の列および補助キーの列を含む。また、撮影パラメータ値の列には、フォーカスの列、フラッシュの列およびカラーエフェクトの列などが含まれる。そして、各行の座標範囲に対応して、撮影パラメータ値および補助キーが関連付けて登録されている。
たとえば、「Y>a1X+b1」および「Y≧a2X+b2」の2つの一次関数で示される第1座標範囲A1には、フォーカスが「自動」、フラッシュが「無」、カラーエフェクトが「ネガティブ」として関連付けられると共に、第1補助キー68aが関連付けられる。同様に、「Y<a2X+b2」および「Y≧a3X+b3」の2つの一次関数で示される第2座標範囲A2には、フォーカスが「マクロ」、フラッシュが「自動」、カラーエフェクトが「ノーマル」として関連付けられ、第2補助キー68bが関連付けられる。そして、「Y<a3X+b3」および「Y≧a4X+b4」の2つの一次関数で示される第3座標範囲A3には、フォーカスが「遠景」、フラッシュが「オン」、カラーエフェクトが「セピア」として関連付けられ、第3補助キー68cが関連付けられる。
以上で実施例の特徴を概説したが、以下には、図12に示す携帯電話機10のRAM46のメモリマップ、図13−図17に示す携帯電話機10のプロセッサ30によるフロー図を用いて詳細に説明する。
図12を参照して、図2に示すRAM46には、プログラム記憶領域302とデータ記憶領域304とが形成される。プログラム記憶領域302は、先に説明したように、フラッシュメモリ44(図2)に予め設定しているプログラムデータの一部または全部を読み出して記憶(展開)しておくための領域である。
プログラム記憶領域302には、撮影制御プログラム310、メニュー設定プログラム312、シャッタースライド設定プログラム314、設定変更プログラム316およびシャッターキー制御プログラム318などが含まれる。撮影制御プログラム310は、カメラ機能が実行されているときにメニューキー64およびシャッターキー66に対する操作を制御するためのプログラムである。メニュー設定プログラム312は、メニュー画面が表示されているときに実行されるプログラムである。シャッタースライド設定プログラム314は、設定画面が表示されているときに実行されるプログラムである。設定変更プログラム316は、変更画面が表示されているときに実行されるプログラムである。
なお、プログラム記憶領域302には、電話機能などを実行するためのプログラムも含まれる。
続いて、RAM46のデータ記憶領域304には、タッチバッファ330、撮影パラメータ値バッファ332、初期撮影パラメータ値バッファ334および表示画像バッファ336が設けられる。また、データ記憶領域304には、タッチ座標マップデータ340、GUIデータ342、GUI座標データおよび撮影パラメータ値テーブルデータが記憶されると共に、タッチフラグ348、シャッターフラグ350およびタッチカウンタ352が設けられる。
タッチバッファ330には、タッチパネル制御回路48が出力するタッチ座標のデータが記憶される。撮影パラメータ値バッファ332には、カメラ機能が実行されているときに、ユーザの操作によって変更された各撮影パラメータ値が一時的に記憶される。初期撮影パラメータ値バッファ334には、シャッタースライド機能によって撮影パラメータ値が変更される際に、現在の撮影パラメータ値が一時的に記憶される。表示画像バッファ336には、スルー画像として表示される画像のデータが一時的に記憶される。変更バッファ338には、予め登録されている撮影パラメータ値を変更する際に、その変更内容が一時的に記憶される。
タッチ座標マップデータ340は、タッチ操作におけるタッチ座標と、ディスプレイ14の表示座標とを対応付けるためのデータである。つまり、タッチ座標マップデータ340に基づいて、タッチパネル16に対して行われたタッチ操作の結果が、ディスプレイ14の表示に反映される。
GUIデータ342は、ディスプレイ14に表示されるキーなどを表示するための画像データや文字列データを含む。GUI座標データ344は、表示されているGUIの表示座標データを含む。撮影パラメータ値テーブルデータ346は、図11に示すような構成のテーブルデータである。
タッチフラグ348は、タッチパネル16に対してタッチされているか否かを判断するためのフラグである。たとえば、タッチフラグ348は、1ビットのレジスタで構成される。タッチフラグ348がオン(成立)されると、レジスタにはデータ値「1」が設定される。一方、タッチフラグ348がオフ(不成立)されると、レジスタにはデータ値「0」が設定される。なお、タッチフラグ348は、タッチパネル制御回路48が出力する信号に基づいてオン/オフが切り換えられる。
シャッターフラグ350は、シャッタースライド機能が有効にされているかを示すフラグである。そのため、シャッターフラグ350は、シャッタースライド機能が有効にされていればオンとなり、無効にされていればオフとなる。また、シャッターフラグ350の構成は、タッチフラグ348と略同じであるため、構成についての詳細な説明は省略する。
タッチカウンタ352は、シャッターキー66に対してタッチされてからの時間を計測するためのカウンタであり、リセットされるとカウント(計測)を開始する。そして、タッチカウンタ352は、所定時間(たとえば、3秒)が経過すればカウントが停止(満了)する。そのため、タッチカウンタ352は、タッチタイマと呼ばれることがある。
なお、データ記憶領域304には、待機状態で表示される画像データや、文字列のデータなどが記憶されると共に、携帯電話機10の動作に必要なカウンタや、フラグも設けられる。
プロセッサ30は、Android(登録商標)およびREXなどのLinux(登録商標)ベースのOSや、その他のOSの制御下で、図13に示す撮影制御処理、図14に示すメニュー設定処理、図15に示すシャッタースライド設定処理、図16に示す設定変更処理および図17に示すシャッターキー制御処理などを含む、複数のタスクを並列的に処理する。
図13を参照して、撮影制御処理は、たとえばカメラ機能を実行する操作がされると開始される。ステップS1でプロセッサ30は、カメラモジュール50を起動する。たとえば、プロセッサ30は、カメラモジュール50の制御回路に対して、起動命令を発行する。続いて、ステップS3でプロセッサ30は、GUIを表示する。つまり、プロセッサ30は、GUIデータ342を読み出し、メニューキー64およびシャッターキー66と対応する画像をディスプレイ14に表示させる。なお、GUIが表示されると共に、表示画像バッファ336に記憶されている画像データに基づいて、スルー画像もディスプレイ14に表示される。なお、ステップS3の処理を実行するプロセッサ30は表示処理部として機能する。
続いて、ステップS5でプロセッサ30は、メニューキー64が操作されたか否かを判断する。つまり、タッチバッファ330に記録されているタッチ操作の開始座標が、GUI座標データ344に記憶されているメニューキー64の表示座標範囲に含まれているかが判断される。ステップS5で“YES”であれば、つまりメニューキー64が操作されると、プロセッサ30はステップS7で、メニュー設定処理を実行して、ステップS3に戻る。なお、メニューキー設定処理については、図14のフロー図を用いて後述するため、ここでの詳細な説明は省略する。
ステップS5で“NO”であれば、つまりメニューキー64が操作されていなければ、プロセッサ30はステップS9で、シャッターキー66が操作されたか否かを判断する。つまり、タッチバッファ330に記録されているタッチ操作の開始座標が、GUI座標データ344に記憶されているシャッターキー66の表示座標範囲に含まれているかが判断される。ステップS9で“YES”であれば、つまりシャッターキー66が操作されていれば、ステップS11でプロセッサ30は、シャッターキー制御処理を実行して、ステップS3に戻る。なお、シャッターキー制御処理については、図17に示すフロー図を用いて後述するため、ここでの詳細な説明は省略する。
ステップS9で“NO”であれば、つまりシャッターキー66が操作されていなければ、ステップS13でプロセッサ30は、終了操作か否かを判断する。たとえば、カメラ機能を終了するために、終話キー22bが操作されたかが判断される。ステップS13で“NO”であれば、つまりカメラ機能の終了操作がされていなければ、プロセッサ30はステップS3に戻る。一方、ステップS13で“YES”であれば、つまりカメラ機能の終了操作がされると、プロセッサ30は、ステップS15でカメラモジュール50を停止し、撮影制御処理を終了する。
図14はメニュー設定処理のフロー図である。メニュー設定処理は、撮影制御処理(図13)でステップS7が実行されると開始される。ステップS31でプロセッサ30は、メニュー画面を表示する。たとえば、プロセッサ30はGUIデータ342を読み出し、各撮影パラメータ値を変更するためのキーを含むメニュー画面を、ディスプレイ14に表示する。
続いて、ステップS33でプロセッサ30は、シャッタースライドキー98が操作されたか否かを判断する。つまり、タッチバッファ330に記憶されている開始座標が、GUI座標データ344に含まれるシャッタースライドキー98の表示座標範囲に含まれているかを判断する。ステップS33で“YES”であれば、つまりシャッタースライドキー98が操作されると、プロセッサ30はステップS35でシャッタースライド設定処理を実行して、ステップS33に戻る。なお、シャッタースライド処理については、図15に示すフロー図を用いて後述するため、ここでの詳細な説明は省略する。
一方、ステップS33で“NO”であれば、つまりシャッタースライドキー98が操作されなければ、ステップS37でプロセッサ30は、その他のキーが操作されたかを判断する。つまり、タッチ操作の開始座標が、他のフォーカスキー92などの表示座標範囲に含まれているかが判断される。
ステップS37で“NO”であれば、たとえば表示されているキーが操作されていなければ、プロセッサ30はステップS33に戻る。ステップS37で“YES”であれば、つまりその他のキーが操作されると、ステップS39でプロセッサ30は、戻るキー90が操作されたかを判断する。つまり、タッチバッファ330に記録されているタッチ操作の開始座標が、GUI座標データ344に記憶されている戻るキー90の表示座標範囲に含まれているかが判断される。ステップS39で“NO”であれば、たとえばフォーカスキー92が操作された場合、プロセッサ30は、ステップS41で操作されたキーに対応する処理を実行する。つまり、フォーカスキー92が操作されていれば、フォーカスの撮影パラメータ値を変更する画面がディスプレイ14に表示される。
また、ステップS39で“YES”であれば、つまり戻るキー90が操作されると、プロセッサ30は、メニュー設定処理を終了して、撮影制御処理に戻る。その結果、ディスプレイ14の表示は、図8に示すメニュー画面から、図3のような表示状態に戻る。
図15は、シャッタースライド設定処理のフロー図である。シャッタースライド設定処理は、メニュー設定処理でステップS35が実行されると開始される。ステップS61でプロセッサ30は、切り替えキー100を表示する。たとえば、シャッターフラグ350がオンであれば、有効キー100aが表示される。一方、シャッターフラグ350がオフであれば、無効キー100bが表示される。
続いて、ステップS63でプロセッサ30は、シャッターフラグ350がオンか否かを判断する。たとえば、ステップS63では、切り替えキー100に対してタッチ操作がされ、シャッターフラグ350のオン/オフが切り替えられたかが判断される。ステップS63で“NO”であれば、つまりシャッターフラグ350がオフであれば、プロセッサ30はステップS75に進む。一方、ステップS63で“YES”であれば、つまりシャッターフラグ350がオンであれば、ステップS65で文字列102および変更キー104を表示する。たとえば、プロセッサ30はGUIデータ342を読み出し、各座標範囲Aと対応する、文字列102および変更キー104を表示する。
続いて、ステップS67でプロセッサ30は、文字列102にタッチ操作がされたかを判断する。つまり、タッチバッファ330に記録されているタッチ操作の開始座標が、GUI座標データ344に記憶されている文字列102の表示座標範囲に含まれているかが判断される。ステップS67で“NO”であれば、つまり文字列102に対してタッチ操作がされていなければ、プロセッサ30はステップS71に進む。一方、ステップS67で“YES”であれば、たとえば文字列102aにタッチ操作がされた場合、ステップS69でプロセッサ30は、撮影パラメータ値を表示する。たとえば、プロセッサ30は、撮影パラメータ値テーブルデータ346から、文字列102a(第1座標範囲A1)と対応する撮影パラメータ値を読み出す。そして、図9(C)に示すように、読み出された撮影パラメータ値がディスプレイ14に表示される。
続いて、ステップS71でプロセッサ30は、変更キー104が操作されたかを判断する。たとえば、図9(B)に示す変更キー104a−104bに対してタッチ操作がされたかが判断される。ステップS71で“NO”であれば、つまり変更キー104が操作されていなければ、プロセッサ30はステップS75に進む。一方、ステップS71で“YES”であれば、たとえば変更キー104a−104cのうちいずれかが操作されると、ステップS73でプロセッサ30は、設定変更処理を実行する。なお、設定変更処理については、図16のフロー図を用いて後述するため、ここでの詳細な説明は省略する。
続いて、ステップS75でプロセッサ30は、戻るキー90が操作されたかを判断する。ステップS75で“NO”であれば、つまり戻るキー90が操作されていなければ、プロセッサ30はステップS63に戻る。一方、ステップS75で“YES”であれば、たとえば戻るキー90が操作されると、プロセッサ30はシャッタースライド設定処理を終了して、メニュー設定処理に戻る。
図16は設定変更処理のフロー図である。設定変更処理は、シャッタースライド処理(図15)でステップS73が実行されると開始される。ステップS91でプロセッサ30は、変更キー104に対応する撮影パラメータ値を変更バッファ338に記録する。たとえば、変更キー104aが操作された場合、撮影パラメータ値テーブルデータ346から第1座標範囲A1と対応する撮影パラメータ値が読み出され、その撮影パラメータ値が変更バッファ338に記録される。
続いて、ステップS93でプロセッサ30は、変更画面を表示する。たとえば、プロセッサ30はGUIデータ342を読み出し、第1座標範囲の変更画面をディスプレイ14に表示する。続いて、ステップS95でプロセッサ30は、変更操作か否かを判断する。たとえば、図10(A)に示す、フォーカス変更キー122、フラッシュ変更キー124およびカラーエフェクト変更キー126のいずれかが操作されたかを判断する。ステップS95で“YES”であれば、たとえばフォーカス変更キー122が操作されると、プロセッサ30はステップS97で、変更処理を実行する。たとえば、図10(B)に示すように、ディスプレイ14にフォーカスの撮影パラメータ値に対応するキーが表示され、撮影パラメータ値の変更操作が受け付けられる状態になる。続いて、ステップS99では、変更結果を変更バッファ338に記録し、ステップS107に進む。たとえば、「自動」キー132に対してタッチ操作がされた場合、変更バッファ338には、フォーカスの撮影パラメータ値として、「自動」が記録される。
一方、ステップS95で“NO”であれば、つまり変更操作がされていなければ、ステップS101でプロセッサ30は、現在の撮影パラメータ値を読み出す操作がされたか否かを判断する。つまり、プロセッサ30は、読み出しキー128が操作されたかを判断する。また、具体的には、タッチバッファ330に記録されているタッチ操作の開始座標が、GUI座標データ344に記憶されている読み出しキー128の表示座標範囲に含まれているかが判断される。ステップS101で“NO”であれば、つまり読み出しキー128が操作されていなければ、プロセッサ30はステップS107に進む。
また、ステップS101で“YES”であれば、つまり読み出しキー128が操作されると、プロセッサ30はステップ103で、現在の撮影パラメータ値を読み出し、ステップS105で現在の撮影パラメータ値を変更バッファ338に記録する。つまり、撮影パラメータ値バッファ332から撮影パラメータ値が読み出され、読み出された撮影パラメータ値が変更バッファ338に記録される。なお、ステップS103の処理を実行するプロセッサ30は読み出し部として機能する。
ステップS107でプロセッサ30は、登録キー110が操作されたか否かを判断する。つまり、タッチバッファ330に記録されているタッチ操作の開始座標が、GUI座標データ344に記憶されている登録キー110の表示座標範囲に含まれているかが判断される。ステップS107で“YES”であれば、つまり登録キー110に対してタッチ操作がされると、ステップS109でプロセッサ30は、変更内容を撮影パラメータ値テーブルに登録する。つまり、変更バッファ338に記録されている撮影パラメータ値を、撮影パラメータ値テーブルデータ346に記録する。なお、ステップS109の処理が終了すれば、プロセッサ30は、設定変更処理を終了して、シャッタースライド設定処理に戻る。また、ステップS109の処理を実行するプロセッサ30は登録部として機能する。
また、ステップS107で“NO”であれば、つまり登録キー110が操作されていなければ、ステップS111でプロセッサ30は、戻るキー90が操作されたか否かを判断する。ステップS111で“NO”であれば、つまり戻るキー90が操作されていなければ、ステップS93に戻る。一方、ステップS111で“YES”であれば、つまり戻るキー90が操作されると、プロセッサ30は、設定変更処理を終了して、シャッタースライド設定処理に戻る。
図17はシャッターキー制御処理のフロー図である。シャッターキー制御処理は、撮影制御処理(図13)でステップS11が実行されると開始される。ステップS121でプロセッサ30は、現在の撮影パラメータ値を一時記憶する。つまり、撮影パラメータ値バッファ332に記憶されている撮影パラメータ値を、初期撮影パラメータ値バッファ334に記録する。続いて、ステップS123ではタッチタイマを初期化する。つまり、プロセッサ30は、タッチカウンタ352をリセットして、シャッターキー66にタッチされている時間の計測を開始する。
続いて、ステップS125でプロセッサ30は、タッチタイマが満了したか否かを判断する。つまり、シャッターキー66にタッチされてから所定時間が経過したかが判断される。ステップS125で“YES”であれば、つまりシャッターキー66にタッチしてから所定時間が経過すると、プロセッサ30は、ステップS127で補助キー68を表示して、ステップS129に進む。なお、ステップS127の処理を実行するプロセッサ30は補助キー表示部として機能する。
一方、ステップS125で“NO”であれば、つまりシャッターキー66にタッチ操作されてから所定時間が経過していなければ、ステップS129でプロセッサ30は、タッチ位置が変化したか否かを判断する。つまり、タッチバッファ330に記憶されている現在のタッチ座標が前回のタッチ座標から変化したかが判断される。ステップS129で“NO”であれば、つまりタッチ位置が変化していなければ、プロセッサ30は、ステップS137に進む。また、ステップS129で“YES”であれば、たとえばユーザの指がスライドし、タッチ位置が変化すれば、ステップS131でプロセッサ30は、タッチ座標を読み出す。つまり、タッチバッファ330から、現在のタッチ位置を示すタッチ座標が読み出される。続いて、ステップS133でプロセッサ30は、タッチ位置が座標範囲に含まれているかを判断する。たとえば、プロセッサ30は、撮影パラメータ値テーブルデータ346から各座標範囲Aを読み出し、現在のタッチ位置を示すタッチ座標が、読み出した各座標範囲Aに含まれているかを判断する。なお、ステップS133の処理を実行するプロセッサ30は判断部として機能する。
ステップS133で“NO”であれば、つまりタッチ座標が各座標範囲Aに含まれていなければ、プロセッサ30はステップS145に進む。一方、ステップS133で“YES”であれば、たとえばタッチ座標が第1座標範囲A1に含まれていれば、ステップS135でプロセッサ30は、撮影パラメータ値を変更する。たとえば、第1座標範囲A1と対応する撮影パラメータ値が撮影パラメータ値テーブルデータ346から読み出され、その撮影パラメータ値が撮影パラメータ値バッファ332に記録される。なお、ステップS135の処理を実行するプロセッサ30は変更部として機能する。
続いて、ステップS137でプロセッサ30は、リリースされたか否かを判断する。たとえば、シャッターキー66にタッチしたユーザの指がタッチパネル16からリリースされたかが判断される。また、具体的には、プロセッサ30は、タッチフラグ348がオフになったかを判断する。ステップS137で“NO”であれば、たとえばユーザの指がリリースされていなければ、プロセッサ30はステップS125に戻る。
一方、ステップS137で“YES”であれば、たとえばユーザの指がリリースされると、ステップS139でプロセッサ30は、撮影処理を実行する。たとえば、撮影処理が実行されると、リリースされたときに、表示画像バッファ336に記憶されていた画像が別のバッファに移される。同時に、ユーザにその画像を保存するかを確認するポップアップ80(図7)がディスプレイ70に表示される。そして、ユーザが、画像を保存する操作を行うと、撮影された画像がフラッシュメモリ44に保存される。なお、ステップS139の処理を実行するプロセッサ30は保存部として機能する。
続いて、ステップS141でプロセッサ30は、撮影パラメータ値を変更したか否かを判断する。つまり、終了位置が各座標範囲Aに含まれているかが判断される。ステップS141で“YES”であれば、つまり撮影パラメータ値が変更されていれば、プロセッサ30は、ステップS143で撮影パラメータ値を元に戻して、シャッターキー制御処理を終了し、撮影制御処理に戻る。つまり、初期撮影パラメータ値バッファ334に記憶されている撮影パラメータ値が、撮影パラメータ値バッファ332に記録される。一方、ステップS141で“NO”であれば、つまり撮影パラメータ値が変更されることなく、シャッターキー66から指が離された場合、プロセッサ30は、シャッターキー制御処理を終了して、撮影制御処理に戻る。
ここで、タッチ位置が各座標範囲Aに含まれていなければ、つまりステップS133で“NO”であれば、ステップS145でプロセッサ30は、リリースされたか否かを判断する。つまり、プロセッサ30は、各座標範囲A以外で指が離されたかを判断する。ステップS145で“NO”であれば、つまりリリースされていなければ、プロセッサ30はステップS125に戻る。
また、ステップS145で“YES”であれば、つまり各座標範囲A以外で指が離されると、ステップS147でプロセッサ30は、シャッターキー66の中でリリースされたか否かを判断する。つまり、プロセッサ30は、タッチ操作の終了位置がシャッターキー66の表示範囲に含まれているかを判断する。ステップS147で“YES”であれば、つまりシャッターキー66の表示範囲の中で指が離されると、ステップS149でプロセッサ30は、ステップS139と同様、撮影処理を実行する。そして、ステップS149で撮影処理が終了すれば、プロセッサ30は、シャッターキー制御処理を終了する。なお、ステップS139およびステップS149の処理を実行するプロセッサ30は保存部として機能する。
また、ステップS147で“NO”であれば、つまりリリースされた位置が、シャッターキー66の表示領域または各座標範囲Aの中でなければ、撮影処理が実行されることなく、シャッターキー制御処理を終了して、撮影制御処理に戻る。
なお、シャッターキー制御処理では示していないが、ステップS135において撮影パラメータ値が設定された場合には、その設定された撮影パラメータに応じたスルー画像がディスプレイ14に表示される。そして、ユーザの指がリリースされずに、タッチ位置が変化し、タッチ位置が或る座標範囲Aから他の座標範囲Aへ移動した場合、ディスプレイ14に表示されるスルー画像が変化する。つまり、座標範囲Aに応じた撮影パラメータ値が変化する毎に、ディスプレイ14に表示されるスルー画像も変化する。
また、タッチ位置が任意の座標範囲Aに含まれる場合、指のタッチ位置がブレる可能性がある。そこで、他の実施例では、タッチ位置が含まれる(タッチされている)座標範囲Aを超えたと判断する境界線が座標範囲Aよりも外側に設けられてもよい。これにより、タッチ位置が座標範囲Aから出たとしても、タッチ位置が座標範囲Aの外側に設けられた境界線を越えていなければ、タッチ位置が座標範囲Aの外側に出たと判断されないようにできる。ただし、上記の場合でも、一定時間が経過すれば、タッチ位置が座標範囲Aの外側に出たと判断されてもよい。
また、その他の実施例では、タッチ位置が或る座標範囲Aから出たと判断するときに、確認処理を実行することで、上述の指のブレに対応してもよい。たとえば、タッチ位置が或る座標範囲Aから出たときに、一定時間(たとえば0.5秒)のタイマーを実行し、一定時間後のタッチ位置が座標範囲Aの外側であれば、「タッチ位置が或る座標範囲Aから出た」と判断される。一方、一定時間後のタッチ位置が座標範囲Aの内側であれば、「タッチ位置が或る座標範囲Aから出ていない」と判断される。
ここで、補助キー68は別の位置に配置されてもよい。たとえば、図19(A)、(B)を参照して、シャッターキー66に対してタッチ操作がれると、第1補助キー66a−第3補助キー66cがディスプレイ14の左側に配置されてもよい。この場合、ユーザは、右側のシャッターキー66に対してタッチしたまま左側の補助キー68に対してタッチ操作を行えば、撮影パラメータ値を変更すると共に、撮影処理を実行できる。
また、図20を参照して、初期状態で、シャッターキー66と、第1補助キー66a−第3補助キー66cとが並べて表示されてもよい。この場合、任意の補助キー68に対してタッチ操作がされると、撮影パラメータ値が変更されると共に、撮影処理が実行される。
なお、他の実施例では、撮影パラメータを変更するための所定条件は、座標範囲ではなく、スライド方向などであってもよい。たとえば、所定条件がスライド方向である場合、水平方向に対する角度範囲と撮影パラメータ値とが、撮影パラメータ値テーブルに関連付けて登録される。また、フリック操作がされると、そのフリック操作の開始座標と終了座標とに基づいて水平方向に対する角度が算出される。そして、算出された角度が、上記角度範囲に含まれている場合に、撮影パラメータ値が変更されると共に、撮影処理が実行される。
また、所定条件がスライド方向である場合、複数回のスライド操作を組み合わせることで、撮影パラメータが変更されてもよい。たとえば、1度目のスライド操作で変更する撮影パラメータの種類が選択され、2度目のスライド操作で変更する内容が決められる。
また、複数の撮影パラメータ値は、まとめて「撮影モード」と呼ばれることがあり、ユーザは撮影シーンに合わせて撮影モードを変更することが出来る。この場合、ユーザは、所定の撮影モードと所定条件とを予め登録でき、所定条件を満たすタッチ操作を行えば、撮影モードを変更することが出来る。
また、本実施例で用いられたプログラムは、データ配信用のサーバのHDDに記憶され、ネットワークを介して携帯電話機10に配信されてもよい。また、CD,DVD,BD(Blue-Ray Disk)などの光学ディスク、USBメモリおよびメモリカードなどの記憶媒体に複数のプログラムを記憶させた状態で、その記憶媒体が販売または配布されてもよい。そして、上記したサーバや記憶媒体などを通じてダウンロードされた、プログラムが本実施例と同等の構成の携帯端末にインストールされた場合、本実施例と同等の効果が得られる。
そして、本明細書中で挙げた、具体的な数値は、いずれも単なる一例であり、製品の仕様変更などに応じて適宜変更可能である。