携帯端末、表示方向制御プログラムおよび表示方向制御方法
【構成】携帯電話機10は、ディスプレイ14および加速度センサ(54)などを備え、加速度センサによって検出された傾斜に基づいてディスプレイ14の表示方向が設定される。また、携帯電話機10が水平姿勢または略水平姿勢にされると、第1カメラモジュール(50)によって撮影された画像が出力され、顔検出処理が実行される。撮影された画像からユーザの顔が検出されると、顔の方向が検出される。顔の方向が検出されると、その方向に基づいて、ディスプレイ14の表示方向が設定される。そして、ディスプレイ14には、ユーザの顔の方向に基づいて設定された表示方向で、画像が表示される。
【効果】ユーザが携帯電話機10を平置きしても、ユーザの顔の位置に合わせてディスプレイ14の表示方向が設定される。そのため、ディスプレイ14の表示を見やすくすることができる。
【効果】ユーザが携帯電話機10を平置きしても、ユーザの顔の位置に合わせてディスプレイ14の表示方向が設定される。そのため、ディスプレイ14の表示を見やすくすることができる。
【発明の詳細な説明】
【技術分野】
【0001】
この発明は、携帯端末、表示方向制御プログラムおよび表示方向制御方法に関し、特にディスプレイの表示方向が変化する、携帯端末、表示方向制御プログラムおよび表示方向制御方法に関する。
【背景技術】
【0002】
ディスプレイの表示方向が変化する、携帯端末の一例が特許文献1に開示されている。特許文献1の携帯端末装置は、ディスプレイおよび加速度センサ部などを備えている。そして、加速度センサ部からの携帯端末装置の回転方向および回転角度に基づいて、ディスプレイの表示画面に合うように、コンテンツの表示方向が自動的に回転される。
【特許文献1】特開2008−131616号公報[H04M 1/00, H04M 1/725, H04Q 7/38, H04Q 7/32]
【発明の概要】
【発明が解決しようとする課題】
【0003】
ところが、特許文献1の携帯端末装置が水平な場所に平置きされると、加速度センサ部が出力する回転方向および回転角度だけでは、ユーザの位置が分からないため、ディスプレイの表示方向が、ユーザによって見やすいように回転されないことがある。
【0004】
それゆえに、この発明の主たる目的は、新規な、携帯端末、表示方向制御プログラムおよび表示方向制御方法を提供することである。
【0005】
この発明の他の目的は、ディスプレイの表示が見やすい、携帯端末、表示方向制御プログラムおよび表示方向制御方法を提供することである。
【課題を解決するための手段】
【0006】
この発明は、上記の課題を解決するために、以下の構成を採用した。なお、括弧内の参照符号および補足説明等は、この発明の理解を助けるために記述する実施形態との対応関係を示したものであって、この発明を何ら限定するものではない。
【0007】
第1の発明は、コンテンツを表示する表示部および姿勢を検出する検出部を有し、検出部によって検出された傾斜に応じて表示部の表示方向が変化する、携帯端末であって、撮影画像を出力するカメラモジュール、検出部によって水平姿勢または略水平姿勢が検出されたとき、カメラモジュールを起動する起動部、起動部により起動されたカメラモジュールから出力された撮影画像から顔を検出する顔検出処理を実行する実行部、顔検出処理によって検出された顔の方向を検出する方向検出部、方向検出部によって検出された顔の方向に基づいて、表示部の表示方向を設定する設定部、および設定部によって設定された表示方向に従って、表示部にコンテンツを表示する表示処理部を備える、携帯端末である。
【0008】
第1の発明では、携帯端末(10:実施例において対応する部分を例示する参照符号。以下、同じ。)の表示部(14)は、表示装置とも呼ばれ、画像やHPなどのコンテンツを表示する。また、検出部は、姿勢センサなどを含み、加速度などを利用して携帯端末の姿勢を検出する。そして、検出部によって携帯端末の傾斜が検出されると、表示部の表示方向が変化する。カメラモジュール(50)は、インカメラとも呼ばれ、撮影画像を出力する。起動部(30,S23)は、たとえば携帯端末が略水平姿勢になると、電源をオンにすることで、カメラモジュールを起動する。実行部(30,S25)は、起動部によって起動されたカメラモジュールによって撮影され出力された撮影画像から、人の目や口などを利用して顔を検出する検出処理を実行する。方向検出部(30,S33)は、たとえば検出された顔の口の位置を利用して、顔の方向を検出する。設定部(30,S39,S41,S45,S47)は、撮影画像に含まれる顔の方向に基づいて、表示部の表示方向を設定する。表示処理部(30,S49)は、設定された表示方向に基づいて、表示部に画像やHPなどのコンテンツを表示する。
【0009】
第1の発明によれば、ユーザが携帯端末を平置きしても、ユーザの顔の位置に合わせて表示部の表示方向が設定される。そのため、表示部の表示を見やすくすることができる。
【0010】
第2の発明は、第1の発明に従属し、回転を検出する回転検出部をさらに備え、起動部は、検出部によって水平姿勢または略水平姿勢が検出されている状態で、回転検出部によって回転が検出されたとき、カメラモジュールを起動する。
【0011】
第2の発明では、回転検出部(56)は、たとえば方位を利用して携帯端末の回転を検出する。たとえば、略水平姿勢で、携帯端末が回転すると、起動部はカメラモジュールを起動させる。
【0012】
第2の発明によれば、水平姿勢または略水平姿勢で携帯端末が回転したとしても、表示部の表示方向がユーザの顔の方向と一致するように、修正することができる。
【0013】
第3の発明は、第1の発明または第2の発明に従属し、起動部は、検出部によって水平姿勢または略水平姿勢が検出された状態であれば、所定時間毎にカメラモジュールを起動する。
【0014】
第3の発明によれば、ユーザの位置が変わったとしても、表示方向を適切に修正することができる。
【0015】
第4の発明は、第1の発明ないし第3の発明のいずれかに従属し、顔検出処理が実行された後に、カメラモジュールを停止する停止部をさらに備える。
【0016】
第4の発明では、停止部(30,S51)は、顔検出処理を実行した後に、電源をオフにすることで、カメラモジュールを停止する。
【0017】
第4の発明によれば、携帯端末の消費電力を抑えることができる。
【0018】
第5の発明は、第1の発明ないし第4の発明のいずれかに従属し、顔検出処理によって複数の顔が検出されたとき、最も大きい顔を特定する特定部をさらに備え、方向検出部は、特定部によって特定された顔の方向を検出する。
【0019】
第5の発明では、特定部(30,S31)は、複数の顔が検出されている場合、最も大きく写っている顔を特定する。そして、方向検出部は、最も大きく写っている顔の方向を検出する。
【0020】
第5の発明によれば、複数の人物が撮影画像に写り込んでいたとしても、表示部を見ている可能性が最も高い人物に合わせて、表示部の表示方向を設定できる。
【0021】
第6の発明は、コンテンツを表示する表示部(14)、姿勢を検出する検出部(54)および撮影画像を出力するカメラモジュール(50)を有し、検出部によって検出された傾斜に応じて表示部の表示方向が変化する、携帯端末(10)のプロセッサ(30)を、検出部によって水平姿勢または略水平姿勢が検出されたとき、カメラモジュールを起動する起動部(S23)、起動部により起動されたカメラモジュールから出力された撮影画像から顔を検出する顔検出処理を実行する実行部(S25)、顔検出処理によって検出された顔の方向を検出する方向検出部(S33)、方向検出部によって検出された顔の方向に基づいて、表示部の表示方向を設定する設定部(S39,S41,S45,S47)、および設定部によって設定された表示方向に従って、表示部にコンテンツを表示する表示処理部(S49)として機能させる、表示方向制御プログラムである。
【0022】
第6の発明でも、第1の発明と同様、ユーザが携帯端末を平置きしても、ユーザの顔の位置に合わせて表示部の表示方向が設定される。そのため、表示部の表示を見やすくすることができる。
【0023】
第7の発明は、コンテンツを表示する表示部(14)、姿勢を検出する検出部(54)および撮影画像を出力するカメラモジュール(50)を有し、検出部によって検出された傾斜に応じて表示部の表示方向が変化する、携帯端末(10)の表示方向制御方法であって、検出部によって水平姿勢または略水平姿勢が検出されたとき、カメラモジュールを起動し(S23)、起動されたカメラモジュールから出力された撮影画像から顔を検出する顔検出処理を実行し(S25)、顔検出処理によって検出された顔の方向を検出し(S33)、検出された顔の方向に基づいて、表示部の表示方向を設定し(S39,S41,S45,S47)、そして設定された表示方向に従って、表示部にコンテンツを表示する(S49)、表示方向制御方法である。
【0024】
第7の発明でも、第1の発明と同様、ユーザが携帯端末を平置きしても、ユーザの顔の位置に合わせて表示部の表示方向が設定される。そのため、表示部の表示を見やすくすることができる。
【発明の効果】
【0025】
この発明によれば、表示方向が適切に設定されるため、表示部の表示を見やすくすることができる。
【0026】
この発明の上述の目的、その他の目的、特徴および利点は、図面を参照して行う以下の実施例の詳細な説明から一層明らかとなろう。
【図面の簡単な説明】
【0027】
【図1】図1はこの発明の一実施例の携帯電話機を示す外観図であり、図1(A)は携帯電話機の表面を示す外観図であり、図1(B)は携帯電話機の裏面を示す外観図である。
【図2】図2は図1に示す携帯電話機の電気的な構成を示す図解図である。
【図3】図3は図1に示すディスプレイに表示される画像の一例を示す図解図であり、図3(A)は携帯電話機が縦方向で持たれた状態のディスプレイの表示例を示し、図3(B)は携帯電話機が横方向で持たれた状態のディスプレイの表示例を示す。
【図4】図4は図1に示すディスプレイの表示方向を示す図解図であり、図4(A)は表示方向が通常方向の表示例であり、図4(B)は表示方向が逆方向の表示例であり、図4(C)は表示方向が右方向の表示例であり、図4(D)は表示方向が左方向の表示例である。
【図5】図5は図2に示す第1カメラモジュールから出力された撮影画像の領域を示す図解図であり、図5(A)は上領域と下領域とに分けられた撮影画像を示す図解図であり、図5(B)は左領域と右領域とに分けられた撮影画像を示す図解図である。
【図6】図6は図1に示す携帯電話機が机に置かれときに撮影されたユーザの顔の一例を示す図解図であり、図6(A)は机に置かれた携帯電話機とユーザの位置関係の一例を示す図解図であり、図6(B)は図6(A)の状態で撮影されたユーザの顔の一例を示す図解図である。
【図7】図7は図1に示す携帯電話機が机に置かれときに撮影されたユーザの顔の他の一例を示す図解図であり、図7(A)は机に置かれた携帯電話機とユーザの位置関係の他の一例を示す図解図であり、図7(B)は図7(A)の状態で撮影されたユーザの顔の一例を示す図解図である。
【図8】図8は図2に示すRAMのメモリマップの一例を示す図解図である。
【図9】図9は図2に示すプロセッサの表示制御処理の一例を示すフロー図である。
【図10】図10は図2に示すプロセッサの表示方向設定処理の一部の一例を示すフロー図である。
【図11】図11は図2に示すプロセッサの表示方向設定処理の他の一部の一例であって、図10に後続するフロー図である。
【図12】図12は図2に示す第1カメラモジュールから出力された撮影画像に設定される方向の一例を示す図解図である。
【図13】図13は図2に示す第1カメラモジュールから出力された撮影画像から顔の方向を検出する手順の一例を示す図解図であり、図13(A)は撮影されたユーザの顔の一例を示す図解図であり、図13(B)は図13(A)に示す撮影画像から抽出された顔領域の一例を示す図解図であり、図13(C)は図13(B)に示す抽出画像から検出された顔の方向の一例を示す図解図である。
【図14】図14は図2に示すプロセッサの第2実施例の表示方向設定処理の一部の一例を示すフロー図である。
【発明を実施するための形態】
【0028】
<第1実施例>
図1(A),(B)を参照して、この発明の一実施例の携帯電話機10は、一例としてスマートフォン(smart phone)であり、縦長の扁平矩形のハウジング12を含む。ただし、この発明は、タブレット端末、PDAなど任意の携帯端末に適用可能であることを予め指摘しておく。
【0029】
ハウジング12の一方主面(表面)には、表示部として機能する、たとえば液晶や有機ELなどのディスプレイ14が設けられる。ディスプレイ14の上には、タッチパネル16が設けられる。したがって、この実施例の携帯電話機10では、後述のハードキーの操作によるものを除く大部分の入力操作は、このタッチパネル16を介して行われる。
【0030】
ハウジング12の縦方向一端の表面側にスピーカ18が内蔵され、縦方向他端の表面側にマイク20が内蔵される。
【0031】
タッチパネル16と共に、入力操作手段を構成するハードキーとして、この実施例では、通話キー22a、終話キー22bおよびメニューキー22cが設けられる。
【0032】
たとえば、ユーザは、ディスプレイ14に表示されたダイヤルキー(図示せず)に対して、タッチパネル16によってタッチ操作を行うことで電話番号を入力でき、通話キー22aを操作して音声通話を開始することができる。終話キー22bを操作すれば、音声通話を終了することができる。なお、ユーザは、この終話キー22bを長押しすることによって、携帯電話機10の電源をオン/オフすることができる。
【0033】
また、メニューキー22cを操作すれば、ディスプレイ14にメニュー画面が表示され、その状態でディスプレイ14に表示されているソフトキーやメニューアイコン(ともに図示せず)などに対して、タッチパネル16によるタッチ操作を行うことによってメニューを選択し、その選択を確定させることができる。
【0034】
ハウジング12の縦方向一端の表面側には、後述の第1カメラモジュール50(図2)のためのレンズ開口24が設けられている。また、ハウジング12の縦方向一端の表面側には、第2カメラモジュール52のためのレンズ開口26が設けられている。したがって、第1カメラモジュール50および第2カメラモジュール52は、レンズ開口24およびレンズ開口26を通した画像を撮影することになる。
【0035】
図2を参照して、図1に示す実施例の携帯電話機10は、コンピュータまたはCPUと呼ばれるプロセッサ30を含む。プロセッサ30には、無線通信回路32、A/D変換器36、D/A変換器38、入力装置40、表示ドライバ42、フラッシュメモリ44、RAM46、タッチパネル制御回路48、第1カメラモジュール50、第2カメラモジュール52、加速度センサ54および方位センサ56などが接続される。
【0036】
プロセッサ30は、携帯電話機10の全体制御を司る。RAM46には、フラッシュメモリ44に予め設定されているプログラムの全部または一部が使用に際して展開され、プロセッサ30はこのRAM46上のプログラムに従って動作する。なお、RAM46はさらに、プロセッサ30のワーキング領域ないしバッファ領域として用いられる。
【0037】
入力装置40は、図1に示すタッチパネル16、ハードキー22a−22cを含むものであり、操作部または入力部を構成する。ユーザが操作したハードキーの情報(キーデータ)はプロセッサ30に入力される。
【0038】
無線通信回路32は、アンテナ34を通して、音声通話やメールなどのための電波を送受信するための回路である。実施例では、無線通信回路32は、CDMA方式での無線通信を行うための回路である。たとえば、ユーザが入力装置40を操作して電話発信(発呼)を指示すると、無線通信回路32は、プロセッサ30の指の下、電話発信処理を実行し、アンテナ34を介して電話発信信号を出力する。電話発信信号は、基地局および通信網を経て相手の電話機に送信される。そして、相手の電話機において着信処理が行われると、通信可能状態が確立され、プロセッサ30は通話処理を実行する。
【0039】
通常の通話処理について具体的に説明すると、相手の電話機から送られてきた変調音声信号はアンテナ34によって受信される。受信された変調音声信号には、無線通信回路32によって復調処理および復号処理が施される。そして、これらの処理によって得られた受話音声信号は、D/A変換器38によって音声信号に変換された後、スピーカ18から出力される。一方、マイク20を通して取り込まれた送話音声信号は、A/D変換器36によって音声データに変換された後、プロセッサ30に与えられる。音声データには、プロセッサ30の指示の下、無線通信回路32によって符号化処理および変調処理が施され、アンテナ34を介して出力される。したがって、変調音声信号は、基地局および通信網を介して相手の電話機に送信される。
【0040】
また、相手の電話機からの電話発信信号がアンテナ34によって受信されると、無線通信回路32は、電話着信(着呼)をプロセッサ30に通知する。これに応じて、プロセッサ30は、表示ドライバ42を制御して、着信通知に記述された発信元情報(電話番号など)をディスプレイ14に表示する。また、上記処理に伴い、プロセッサ30は、スピーカ18から着信音(着信メロディ、着信音声と言うこともある。)を出力させる。
【0041】
そして、ユーザが入力装置40に含まれる通話キー22(図1)を用いて応答操作を行うと、無線通信回路32は、プロセッサ30の指示の下、電話着信処理を実行する。さらに、通信可能状態が確立され、プロセッサ30は上述した通話処理を実行する。
【0042】
また、通話可能状態に移行した後に入力装置40に含まれる終話キー24(図1)によって通話終了操作が行われると、プロセッサ30は、無線通信回路32を制御して、通話相手に通話終了信号を送信する。そして、通話終了信号の送信後、プロセッサ30は通話処理を終了する。また、先に通話相手から通話終了信号を受信した場合も、プロセッサ30は通話処理を終了する。さらに、通話相手によらず、移動通信網から通話終了信号を受信した場合も、プロセッサ30は通話処理を終了する。
【0043】
A/D変換器36には図1に示すマイク20が接続され、上述のようにマイク20からの音声信号はこのA/D変換器36を通してディジタルの音声データとしてプロセッサ30に入力される。D/A変換器38にはスピーカ18が接続される。D/A変換器38は、ディジタルの音声データを音声信号に変換して、アンプを介してスピーカ18に与える。したがって、音声データの音声がスピーカ18から出力される。
【0044】
なお、プロセッサ30は、たとえばユーザによるボリュームの操作に応答して、D/A変換器38に接続されるアンプの増幅率を制御することによって、スピーカ18から出力される音声の音量を調整することができる。
【0045】
表示ドライバ42には図1に示すディスプレイ14が接続され、したがって、ディスプレイ14はプロセッサ30から出力される映像または画像データに従って画像などのコンテンツを表示する。つまり、表示ドライバ42は、プロセッサ30の指示の下、当該表示ドライバ42に接続されたディスプレイ14の表示を制御する。また、表示ドライバ42は表示する画像データを一時的に記憶するビデオメモリを含む。ディスプレイ14には、たとえばLEDなどを光源とするバックライトが設けられており、表示ドライバ42はプロセッサ30の指示に従って、そのバックライトの明るさや、点灯/消灯を制御する。
【0046】
タッチパネル制御回路48には、図1に示すタッチパネル16が接続される。タッチパネル制御回路48は、タッチパネル16に必要な電圧などを付与するとともに、タッチパネル16に対するユーザによるタッチの開始を示すタッチ開始信号、ユーザによるタッチの終了を示す終了信号、およびユーザがタッチしたタッチ位置を示す座標データをプロセッサ30に入力する。したがって、プロセッサ30はこの座標データに基づいて、そのときユーザがどのアイコンやキーにタッチしたかを判断することができる。
【0047】
実施例では、タッチパネル16は、指などの物体が表面に接近して生じた電極間の静電容量の変化を検出する静電容量方式で、たとえば1本または複数本の指がタッチパネル16に触れたことを検出する。また、タッチパネル16は、ディスプレイ14の上に設けられ、その画面内で、任意の位置を指示するためのポインティングデバイスである。タッチパネル制御回路48は検出部として機能し、タッチパネル16のタッチ有効範囲内でのタッチ操作を検出して、そのタッチ操作の位置を示す座標データをプロセッサ30に出力する。つまり、ユーザは、タッチパネル16の表面をタッチ、スライド、リリースおよびそれらの組み合わせを行うことで、操作位置や、操作方向などを携帯電話機10に入力する。
【0048】
なお、タッチパネル16の検出方式には、表面型の静電容量方式が採用されてもよいし、抵抗膜方式、超音波方式、赤外線方式および電磁誘導方式などであってもよい。また、タッチ操作はユーザの指だけに限らず、スタイラスペンなどによって行われてもよい。
【0049】
第1カメラモジュール50はサブカメラまたはインカメラとも呼ばれ、制御回路、レンズおよびイメージセンサなどを含む。また、第1カメラモジュール50は、ユーザの顔を撮影できるように設けられている。そのため、後述するテレビ電話機能(ビデオチャット機能)が実行されると、第1カメラモジュール50が起動される。そして、第1カメラモジュール50によって撮影された画像は、相手の端末に送信される。
【0050】
第2カメラモジュール52はメインカメラとも呼ばれ、第1カメラモジュール50と同様、カメラ機能を実行するために必要な制御回路や、レンズおよびイメージセンサなどを含む。プロセッサ30は、カメラ機能が実行されると、第2カメラモジュール52を起動し、背景や被写体に対応するスルー画像(プレビュー画像)をディスプレイ14に表示する。そして、第2カメラモジュール52は、ユーザが撮影操作を行うと、画像を撮影する処理を実行する。
【0051】
加速度センサ54は、検出部と呼ばれることもあり、半導体式の3軸の加速度センサである。そのため、加速度センサ54は、携帯電話機10に対する3軸(X,Y,Z)の加速度データをプロセッサ30に出力する。プロセッサ30は、3軸の加速度データの変化を検出することで、携帯電話機10の動きを判断する。また、プロセッサ30は、加速度センサ54が検出する重力加速度に対して三角関数を用いることで、携帯電話機10の傾斜角を算出することができる。そして、プロセッサ30は、携帯電話機10の動作状態によっては、算出された傾斜角に基づいてディスプレイ14の表示方向を設定することがある。
【0052】
方位センサ56は、電子コンパスまたは回転検出部とも呼ばれ、3つの地磁気センサおよび制御回路を含む。制御回路は、3つの地磁気センサによって検出された磁気データから地磁気データを抽出して、プロセッサ30に出力する。プロセッサ30は、制御回路から出力された地磁気データに基づいて、方位角(方位)データを算出し、端末方向としてRAM46のバッファに記憶させる。なお、各地磁気センサは、ホール素子が用いられているが、MR(Magnet - Resistive)素子やMI(Magnet - Impedance)素子が用いられてもよい。
【0053】
また、携帯電話機10は、ハンズフリー通話を行うこともできる。そして、第1カメラモジュール50(インカメラ)およびハンズフリー通話を利用して、テレビ電話機能を実行することもできる。たとえば、テレビ電話機が実行されると、相手の端末と通話状態が確立され、相手から送信された画像をディスプレイ14に表示すると共に、第1カメラモジュール50によって撮影された画像を相手の端末に送信する。そして、ユーザは、相手の姿を確認しながら、ハンズフリー通話を行う。
【0054】
図3(A),(B)は、携帯電話機10のディスプレイ14に撮影画像が表示されている状態を示す図解図である。ディスプレイ14の表示範囲は、状態表示領域60および機能表示領域62を含む。図3(A),(B)を参照して、状態表示領域60には、アンテナ12による電波受信状態を示すアイコン(ピクト)、二次電池の残電池容量を示すアイコンおよび日時が表示される。また、機能表示領域62には、フラッシュメモリ44に保存されている撮影画像データに対応する画像が表示される。
【0055】
また、ディスプレイ14に撮影画像が表示されている場合、携帯電話機10が保持される姿勢、つまり傾斜角がプロセッサ30によって算出され、撮影画像の表示態様が変化する。たとえば、携帯電話機10が縦向きに保持されると、ディスプレイ14もユーザに対して縦向きの状態となるため、図3(A)に示すように、画像が表示される。一方、携帯電話機10が横向きに保持されると、ディスプレイ14もユーザに対して横向きの状態となるため、図3(B)に示すように、90度回転した画像が表示される。なお、画像を縮小する場合は、アスペクト比が変化しないように縮小される。
【0056】
図4(A)−(D)を参照して、ユーザが携帯電話機10を通常利用する状態(傾斜)に対して、ディスプレイ14に表示される画像などのコンテンツが表示される方向(表示方向)を示す。図4(A)の状態は、ユーザによって利用されることが多い状態であり、通常状態と言う。そのため、本実施例では、通常状態におけるディスプレイ14の表示方向を通常方向と言う。そして、この通常状態の通常方向に対して、図4(B)の表示方向を逆方向と言い、図4(C)の表示方向を右方向と言い、図4(D)の表示方向を左方向と言う。
【0057】
なお、表示方向が変わると、ディスプレイ14に表示される画像には、回転処理および縮小処理などが表示前に施される。ただし、他の実施例ではディスプレイ14の描画開始位置を変更することで表示方向を変化させてもよい。
【0058】
ここで、携帯電話機10が机などの上に平置きされ、加速度センサ54によって水平姿勢または略水平姿勢が検出された場合、加速度センサ54の出力だけでは、ユーザの顔が在る方向を特定できない。そのため、このような場合に、ディスプレイ14の表示方向とユーザの顔の向きとが一致しないことがある。
【0059】
そこで、本実施例では、携帯電話機10が加速度センサ54の出力に基づいて水平姿勢または略水平姿勢を検出すると、第1カメラモジュール50が出力した撮影画像からユーザなどの顔が検出される。そして、検出された顔の方向と、撮影画像における顔の位置とに基づいて、ディスプレイ14の表示方向が設定される。なお、本実施例では、水平方向に対する傾きが10度以下の携帯電話機10の状態を、「略水平姿勢」と呼ぶ。もちろん、「略水平姿勢」とされる傾きは10度以下に限定されるものではなく、その他、適宜な値を採用することが出来る。
【0060】
まず、ユーザの顔の方向は、目と口との位置関係に基づいて検出される。具体的には、2つの目の重心を中心として縦方向または横方向に対応する領域が設定される。そして、口の重心(中心)が縦方向の領域に含まれていれば、顔の方向が縦方向として検出される。一方、口の重心が横方向の領域に含まれていれば、顔の方向が横方向として検出される。
【0061】
次に、図5(A),(B)を参照して、撮影画像は「上領域」および「下領域」、または「左領域」および「右領域」に分けられる。そして、顔の方向が縦方向であれば、ユーザの顔の位置(重心)が「上領域」または「下領域」に含まれているかが判断される。一方、顔の方向が横方向であれば、ユーザの顔の位置が「左領域」または「右領域」に含まれているかが判断される。
【0062】
顔の位置が「上領域」に含まれていると判断された場合、表示方向が逆方向(図4(B))に設定される。一方、顔の位置が「下領域」に含まれていると判断された場合、表示方向が通常方向(図4(A))に設定される。また、顔の位置が「左領域」に含まれていると判断された場合、表示方向が左方向(図4(D))に設定される。一方、顔の位置が「右領域」に含まれていると判断された場合、表示方向が右方向(図4(C))に設定される。
【0063】
たとえば、図6(A)を参照して、ディスプレイ14がユーザに対して縦向きの状態となるように、携帯電話機10が平置きされると、図6(B)に示すような撮影画像が第1カメラモジュール50から出力される。この撮影画像では、ユーザの顔の向きが縦向きと判断されると共に、顔の位置が「下領域」に含まれていると判断される。そのため、ディスプレイ14の表示方向は、図4(A)に示すような、通常方向となる。
【0064】
次に、図7(A)を参照して、ディスプレイ14がユーザに対して横向きの状態となるように、携帯電話機10が平置きされると、図7(B)に示すような撮影画像が第1カメラモジュール50から出力される。図7(B)に示す撮影画像では、ユーザの顔の方向が横方向と判断されると共に、顔の位置が「右領域」に含まれていると判断される。その結果、ディスプレイ14の表示方向は、図4(C)に示すような、右方向となる。
【0065】
詳細な説明は省略するが、使用者の顔が「上領域」に含まれていると判断されると表示方向は逆方向となり、「左領域」に含まれていると判断されると表示方向は左方向となる。
【0066】
このように、本実施例では、ユーザが携帯電話機10を平置きしても、ユーザの顔の位置に合わせてディスプレイ14の表示方向が設定される。そのため、ディスプレイ14の表示を見やすくすることができる。
【0067】
また、方位センサ56が出力する方位角データに基づいて、平置きされた状態(水平姿勢または略水平姿勢)で回転を検出すると、第1カメラモジュール50が撮影画像を再出力する。つまり、水平姿勢で回転が生じるとユーザの顔の位置が変化するため、再出力された撮影画像に基づいてディスプレイ14の表示方向が再設定される。これにより、水平姿勢または略水平姿勢で携帯電話機10が回転したとしても、ディスプレイ14の表示方向がユーザの顔の方向と一致するように、修正することができる。
【0068】
また、ディスプレイ14の表示方向が設定されてから所定時間(たとえば、30秒)が経過した場合も、第1カメラモジュール50は撮影画像を再出力する。つまり、ユーザの顔の位置は変化することがあるため、変化したユーザの顔の位置に対応するために、ユーザの顔が所定時間毎に撮影される。これにより、ユーザの位置が変わったとしても、表示方向を適切に修正することができる。
【0069】
また、撮影画像に複数の人物の顔が写り込んでいる場合、最も多く顔が写っている人物、つまり携帯電話機10に最も近い人物を特定し、その人物を基準としてディスプレイ14の表示方向が設定される。これにより、複数の人物が撮影画像に写り込んでいたとしても、ディスプレイ14を見ている可能性が最も高い人物に合わせて、表示部の表示方向を設定できる。
【0070】
また、第1カメラモジュール50は、たとえば水平姿勢で起動すると、画像を撮影し顔検出処理が終了した後に停止される。つまり、ユーザの顔を検出する必要が無いときには、第1カメラモジュール50の電源はオフにされる。そのため、携帯電話機10の消費電力を抑えることができる。
【0071】
なお、本実施例では、撮影画像の左右を反転させて、ディスプレイ14の表示方向を判断している。これは、図7(A),(B)を用いて説明する際に、撮影画像の左右を反転させた方が、本実施例を理解しやすいからである。たとえば、撮影画像の左右が反転していない場合、図7(B)の撮影画像では、ユーザが左側に位置することになり、撮影画像におけるユーザの顔の位置と、携帯電話機10に対するユーザの位置と一致していないように感じられる。そのため、本実施例では撮影画像の左右を反転させて説明を行っている。ただし、他の実施例では、処理を単純にするために、撮影画像の左右を反転させずに、表示方向が設定されてもよい。
【0072】
以上で実施例の特徴を概説したが、以下には、図8に示す携帯電話機10のRAM46のメモリマップ、図9、図10および図11に示す携帯電話機10のプロセッサ30によるフロー図を用いて詳細に説明する。
【0073】
図8を参照して、図2に示すRAM46には、プログラム記憶領域302とデータ記憶領域304とが形成される。プログラム記憶領域302は、先に説明したように、フラッシュメモリ44(図2)に予め設定しているプログラムデータの一部または全部を読み出して記憶(展開)しておくための領域である。
【0074】
プログラム記憶領域302には、ディスプレイ14の表示を制御するための表示制御プログラム310および表示方向を設定するための表示方向設定プログラム312などが含まれる。なお、プログラム記憶領域302には、電話機能、留守番電話機能およびメール機能などを実行するためのプログラムも含まれる。
【0075】
続いて、RAM46のデータ記憶領域304には、タッチバッファ330、加速度バッファ332、方位バッファ334および表示画像バッファ336が設けられると共に、タッチ座標マップデータ338が記憶される。また、データ記憶領域304には、タッチフラグ340、通常方向フラグ342、逆方向フラグ344、右方向フラグ346および左方向フラグ348が設けられる。
【0076】
タッチバッファ330には、タッチパネル制御回路48が出力するタッチ座標のデータが記憶される。加速度バッファ332には、加速度センサ54から出力された加速度データが一時的に記憶される。方位バッファ334には、方位センサ56から出力された方位角データが一時的に記憶される。表示画像バッファ336には、ディスプレイ14に表示するための画像データが一時的に記憶される。また、表示方向が変化する場合、この表示画像バッファ336に格納されている画像データに対して、回転処理および拡大/縮小処理などが施される。
【0077】
タッチ座標マップデータ338は、タッチ操作におけるタッチ座標と、ディスプレイ14の表示座標とを対応付けるためのデータである。つまり、タッチ座標マップデータ338に基づいて、タッチパネル16に対して行われたタッチ操作の結果が、ディスプレイ14の表示に反映される。
【0078】
タッチフラグ340は、タッチパネル16に対してタッチされているか否かを判断するためのフラグである。たとえば、タッチフラグ340は、1ビットのレジスタで構成される。タッチフラグ340がオン(成立)されると、レジスタにはデータ値「1」が設定される。一方、タッチフラグ340がオフ(不成立)されると、レジスタにはデータ値「0」が設定される。なお、タッチフラグ340は、タッチパネル制御回路48が出力する信号に基づいてオン/オフが切り換えられる。
【0079】
通常方向フラグ342は、ディスプレイ14の表示方向が通常方向に設定されたかを判断するためのフラグである。逆方向フラグ344は、表示方向が逆方向に設定されたかを判断するためのフラグである。右方向フラグ346は、表示方向が右方向に設定されたかを判断するためのフラグである。左方向フラグ348は、表示方向が左方向に設定されたかを判断するためのフラグである。そして、これらのフラグの構成は、タッチフラグ340と略同じであるため、構成についての詳細な説明は省略する。
【0080】
なお、データ記憶領域304には、待機状態で表示される画像データや、文字列のデータなどが記憶されると共に、携帯電話機10の動作に必要なカウンタや、フラグも設けられる。
【0081】
プロセッサ30は、Android(登録商標)およびREXなどのLinux(登録商標)ベースのOSや、その他のOSの制御下で、図9に示す表示制御処理や、図10および図11に示す表示方向判定処理などを含む、複数のタスクを並列的に処理する。
【0082】
表示制御処理は、たとえば、ディスプレイ14の電源がオンになると開始される。ステップS1では、プロセッサ30は、タイマ処理を実行する。つまり、所定時間をカウント(計測)するためのカウンタをリセットして、所定時間の計測を始める。続いて、ステップS3でプロセッ30は、タイマが満了したか否かを判断する。つまり、所定時間の計測が終了したか否かを判断する。ステップS3で“NO”であれば、つまり計測を始めてから所定時間が経過していなければ、ステップS5で回転を検出したか否かを判断する。つまり、方位バッファ334に記憶されている方位角データが変化したかが判断される。ステップS5で“NO”であれば、つまり回転が検出されなければ、ステップS3に戻る。
【0083】
そして、所定時間が経過してステップS3で“YES”と判断されると、プロセッサ30はステップS7で、表示方向設定処理を実行する。つまり、水平姿勢または略水平姿勢でれば、所定時間毎に表示方向設定処理が実行され、第1カメラモジュール50が起動される。また、回転が検出されステップS5で“YES”と判断されても、表示方向設定処理が実行される。たとえば水平姿勢で回転が検出されば、表示方向設定処理が実行され、第1カメラモジュール50が起動される。なお、ステップS7の処理が終了すると、ステップS1に戻る。
【0084】
図10は表示方向設定処理のフロー図である。表示方向設定処理が実行されると、プロセッサ30はステップS21で水平か否かを判断する。つまり、加速度バッファ332に記憶されている加速度データに基づいて、携帯電話機10が水平姿勢または略水平姿勢であるかが判断される。ステップS21で“NO”であれば、たとえば携帯電話機10が傾けられた状態でユーザに保持されていれば、プロセッサ30はステップS21の処理を繰り返す。
【0085】
ステップS21で“YES”であれば、つまり水平姿勢または略水平姿勢となるように、携帯電話機10が机の上に平置きされると、ステップS23でプロセッサ30は第1カメラモジュール50を起動する。つまり、ユーザの顔を撮影ために第1カメラモジュール50が起動される。続いて、ステップS25で顔検出処理を実行する。たとえば、起動した第1カメラモジュール50によってユーザの顔が撮影され、第1カメラモジュール50から出力された撮影画像から、目および口などを含む領域が『顔』として検出される。なお、ステップS23の処理を実行するプロセッサ30は起動部として機能し、ステップS25の処理を実行するプロセッサ30は実行部として機能する。
【0086】
図11を参照して、ステップS27でプロセッサ30は、顔が検出されたか否かを判断する。つまり、顔検出処理によって顔が検出されたかが判断される。ステップS27で“NO”であれば、つまり、顔が検出されていなければ、プロセッサ30は表示方向設定処理を終了して、表示制御処理に戻る。一方、ステップS27で“YES”であれば、つまり顔が検出されると、ステップS29でプロセッサ30は、複数の顔が検出されたか否かを判断する。つまり、撮影画像に複数の人物の顔が写っているかが判断される。
【0087】
ステップS29で“NO”であれば、つまり撮影画像から検出された顔が1つであれば、プロセッサ30はステップS33に進む。また、ステップS29で“YES”であれば、たとえば3つの顔が検出されると、ステップS31でプロセッサ30は、最も大きい顔領域を特定する。つまり、携帯電話機10に最も近い人物の顔を特定する。また、具体的には目および口などを含む領域の面積をそれぞれ求めて、最も大きい顔領域を特定する。なお、ステップS31の処理を実行するプロセッサ30は特定部として機能する。
【0088】
続いて、ステップS33で顔の方向を検出する。つまり、顔領域における目と口との位置関係から、縦方向または横方向が判断される。なお、ステップS35の処理を実行するプロセッサ30は方向検出部として機能する。
【0089】
続いて、ステップS35では、顔が縦方向か否かを判断する。ステップS35で“YES”であれば、たとえば図6(B)に示すようにユーザの顔が縦方向で撮影されていれば、ステップS37でプロセッサ30は、顔が下領域に含まれているか否かを判断する。つまり、プロセッサ30は、図5(A)に示す下領域に、検出された顔が含まれているかを判断する。ステップS37で“YES”であれば、たとえば図6(B)に示すように、縦方向のユーザの顔が下領域に含まれていれば、プロセッサ30は、ステップS39で表示方向を通常方向に設定し、ステップS49に進む。つまり、表示方向が図4(A)の状態となるように、通常方向フラグ342がオンにされる。一方、ステップS37で“NO”であれば、つまり顔が上領域に含まれていれば、プロセッサ30は、ステップS41で表示方向を逆方向に設定し、ステップS49に進む。つまり、表示方向が図4(B)の状態となるように、逆方向フラグ344がオンにされる。
【0090】
また、ステップS35で“NO”であれば、たとえば図7(B)に示すように、ユーザの顔が横方向で撮影されていれば、ステップS43でプロセッサ30は、顔が右領域に含まれているか否かを判断する。つまり、プロセッサ30は、図5(B)に示す右領域に、検出された顔が含まれているかを判断する。ステップS43で“YES”であれば、たとえば図7(B)に示すように、横方向のユーザの顔が右領域に含まれていれば、プロセッサ30は表示方向を右方向に設定し、ステップS49に進む。つまり、表示方向が図4(C)の状態となるように、右方向フラグ346がオンにされる。一方、ステップS43で“NO”であれば、つまり顔が左領域に含まれていれば、プロセッサ30は、ステップS47で表示方向を左方向に設定し、ステップS49に進む。つまり、表示方向が図4(D)の状態となるように、左方向フラグ348がオンにされる。
【0091】
なお、ステップS39,S41,S45,S47の処理を実行するプロセッサ30は設定部として機能する。
【0092】
続いて、ステップS49でプロセッサ30は、設定された表示方向で表示する。たとえば、通常方向フラグ342、逆方向フラグ344、右方向フラグ346および左方向フラグ348のうち、右方向フラグ346がオンであれば、表示画像バッファ336に格納されている画像に対して回転処理および縮小処理などが施される。これにより、ディスプレイ14には、左方向の画像が表示される。なお、ステップS49の処理を実行するプロセッサ30は表示処理部として機能する。
【0093】
続いて、ステップS51でプロセッサ30は、第1カメラモジュール50を停止する。つまり、第1カメラモジュール50の電源がオフにされる。そして、ステップS51の処理が終了すると、プロセッサ30は表示方向設定処理を終了して、表示制御処理に戻る。なお、ステップS51の処理を実行するプロセッサ30は停止部として機能する。
【0094】
<第2実施例>
第2実施例では、ユーザの顔の方向を角度で求め、その角度に基づいてディスプレイ14の表示方向を決める。なお、第2実施例の携帯電話機10は、第1実施例とほぼ同じであるため、携帯電話機10の電気的な構成、外観、RAM34のメモリマップおよび図9に示す表示制御処理など説明を省略する。
【0095】
図12を参照して、第1カメラモジュール50から出力された撮影画像には、下方向を基準(0度)として、時計回りに角度が大きくなるよう角度が設定される。つまり、下方向が0度となり、左方向が90度となり、上方向が180度となり、右方向が270度となる。
【0096】
そして、顔の角度θが「0度≦θ<45度」または「315度≦θ<360度」の範囲に含まれていれば、表示方向が通常方向に設定される。顔の角度θが「45度≦θ<135度」の範囲に含まれていれば、表示方向が左方向に設定される。顔の角度θが「135度≦θ<225度」の範囲に含まれていれば、表示方向が逆方向に設定される。そして、顔の角度θが「225度≦θ<315度」に含まれていれば、表示方向が右方向に設定される。
【0097】
次に、顔の角度θは、撮影画像から顔領域を抽出し、抽出画像の重心Gと、ユーザの口との位置関係に基づいて求められる。たとえば、図13(A)を参照して、ユーザの顔を撮影した撮影画像から、図13(B)に示すように顔領域が抽出され、抽出画像における重心Gが求められる。そして、図13(C)に示すように、重心Gと口の中点とを通る線が示す方向が顔の角度θ、つまり顔の方向となる。そのため、図13(A)に示す顔の角度は「270度」と検出され、表示方向が右方向に設定される。
【0098】
なお、他の実施例では、顔の角度θは、2つの目の座標を結ぶ線分と水平方向の線とが成す角度を利用して検出されてもよい。
【0099】
図14は、第2実施例の表示方向設定処理の一部のフロー図である。なお、ステップS1−S31およびステップS49−S51は、第1実施例の表示方向設定処理と同じであるため、図示および説明を省略する。
【0100】
第2実施例の表示方向処理でステップS31の処理が終了すると、プロセッサ30はステップS33で顔の方向を検出する。たとえば、図13(A)−(C)に示すように、撮影画像から顔領域を抽出し、抽出画像の重心Gとユーザの口とに基づいて、顔の角度θを算出する。続いて、ステップS63でプロセッサ30は、顔の方向は正常方向の範囲に含まれているか否かを判断する。つまり、プロセッサ30は、顔の角度θが「0度≦θ<45度」または「315度≦θ<360度」に含まれているかを判断する。ステップS63で“YES”であれば、たとえば、顔の角度θが0度であれば、プロセッサ30は、ステップS39で表示方向を通常方向に設定し、ステップS49に進む。
【0101】
一方、ステップS63で“NO”であれば、つまり顔の方向が正常方向の範囲に含まれていれければ、ステップS63でプロセッサ30は、顔の方向が逆方向の範囲に含まれているか否かを判断する。つまり、プロセッサ30は、顔の角度θが「135度≦θ<225度」の範囲に含まれているかを判断する。ステップS63で“YES”であれば、たとえば顔の角度θが180度であれば、プロセッサ30は、ステップS41で表示方向を逆方向に設定し、ステップS49に進む。
【0102】
ステップS63で“NO”であれば、つまり顔の方向が逆方向の範囲に含まれていなければ、ステップS65でプロセッサ30は、顔の方向が右方向の範囲か否かを判断する。つまり、プロセッサ30は、顔の角度θが「225度≦θ<315度」の範囲に含まれているかを判断する。ステップS65で“YES”であれば、たとえば顔の角度θが270度であれば、プロセッサ30は、ステップS45で表示方向を右方向に設定し、ステップS49に進む。
【0103】
そして、ステップS65で“NO”であれば、つまり顔の方向が左方向の範囲(「45度≦θ<135度」)に含まれていれば、プロセッサ30は、ステップS47で表示方向を左方向に設定して、ステップS49に進む。
【0104】
なお、他の実施例では、各方向に対応する顔のテンプレート画像を利用して、顔の方向が検出されてもよい。
【0105】
また、本実施例では、ディスプレイ14に表示されるコンテンツを静止画像として説明したが、他の実施例では動画像や、テレビの映像、HPなどの様々なコンテンツがディスプレイ14に表示されてもよい。そして、これらのコンテンツが表示されている場合でも、表示方向は変更される。
【0106】
また、加速度センサ54および方位センサ56に代えて、ジャイロセンサなどによって携帯電話機10の姿勢および回転が検出されてもよい。
【0107】
また、本実施例で用いられたプログラムは、データ配信用のサーバのHDDに記憶され、ネットワークを介して携帯電話機10に配信されてもよい。また、CD,DVD,BD(Blue-Ray Disk)などの光学ディスク、USBメモリおよびメモリカードなどの記憶媒体に複数のプログラムを記憶させた状態で、その記憶媒体が販売または配布されてもよい。そして、上記したサーバや記憶媒体などを通じてダウンロードされた、プログラムが本実施例と同等の構成の携帯端末にインストールされた場合、本実施例と同等の効果が得られる。
【0108】
そして、本明細書中で挙げた、具体的な数値は、いずれも単なる一例であり、製品の仕様変更などに応じて適宜変更可能である。
【符号の説明】
【0109】
10 … 携帯電話機
14 … ディスプレイ
16 … タッチパネル
30 … プロセッサ
40 … 入力装置
44 … フラッシュメモリ
46 … RAM
50 … 第1カメラモジュール
54 … 加速度センサ
56 … 方位センサ
【技術分野】
【0001】
この発明は、携帯端末、表示方向制御プログラムおよび表示方向制御方法に関し、特にディスプレイの表示方向が変化する、携帯端末、表示方向制御プログラムおよび表示方向制御方法に関する。
【背景技術】
【0002】
ディスプレイの表示方向が変化する、携帯端末の一例が特許文献1に開示されている。特許文献1の携帯端末装置は、ディスプレイおよび加速度センサ部などを備えている。そして、加速度センサ部からの携帯端末装置の回転方向および回転角度に基づいて、ディスプレイの表示画面に合うように、コンテンツの表示方向が自動的に回転される。
【特許文献1】特開2008−131616号公報[H04M 1/00, H04M 1/725, H04Q 7/38, H04Q 7/32]
【発明の概要】
【発明が解決しようとする課題】
【0003】
ところが、特許文献1の携帯端末装置が水平な場所に平置きされると、加速度センサ部が出力する回転方向および回転角度だけでは、ユーザの位置が分からないため、ディスプレイの表示方向が、ユーザによって見やすいように回転されないことがある。
【0004】
それゆえに、この発明の主たる目的は、新規な、携帯端末、表示方向制御プログラムおよび表示方向制御方法を提供することである。
【0005】
この発明の他の目的は、ディスプレイの表示が見やすい、携帯端末、表示方向制御プログラムおよび表示方向制御方法を提供することである。
【課題を解決するための手段】
【0006】
この発明は、上記の課題を解決するために、以下の構成を採用した。なお、括弧内の参照符号および補足説明等は、この発明の理解を助けるために記述する実施形態との対応関係を示したものであって、この発明を何ら限定するものではない。
【0007】
第1の発明は、コンテンツを表示する表示部および姿勢を検出する検出部を有し、検出部によって検出された傾斜に応じて表示部の表示方向が変化する、携帯端末であって、撮影画像を出力するカメラモジュール、検出部によって水平姿勢または略水平姿勢が検出されたとき、カメラモジュールを起動する起動部、起動部により起動されたカメラモジュールから出力された撮影画像から顔を検出する顔検出処理を実行する実行部、顔検出処理によって検出された顔の方向を検出する方向検出部、方向検出部によって検出された顔の方向に基づいて、表示部の表示方向を設定する設定部、および設定部によって設定された表示方向に従って、表示部にコンテンツを表示する表示処理部を備える、携帯端末である。
【0008】
第1の発明では、携帯端末(10:実施例において対応する部分を例示する参照符号。以下、同じ。)の表示部(14)は、表示装置とも呼ばれ、画像やHPなどのコンテンツを表示する。また、検出部は、姿勢センサなどを含み、加速度などを利用して携帯端末の姿勢を検出する。そして、検出部によって携帯端末の傾斜が検出されると、表示部の表示方向が変化する。カメラモジュール(50)は、インカメラとも呼ばれ、撮影画像を出力する。起動部(30,S23)は、たとえば携帯端末が略水平姿勢になると、電源をオンにすることで、カメラモジュールを起動する。実行部(30,S25)は、起動部によって起動されたカメラモジュールによって撮影され出力された撮影画像から、人の目や口などを利用して顔を検出する検出処理を実行する。方向検出部(30,S33)は、たとえば検出された顔の口の位置を利用して、顔の方向を検出する。設定部(30,S39,S41,S45,S47)は、撮影画像に含まれる顔の方向に基づいて、表示部の表示方向を設定する。表示処理部(30,S49)は、設定された表示方向に基づいて、表示部に画像やHPなどのコンテンツを表示する。
【0009】
第1の発明によれば、ユーザが携帯端末を平置きしても、ユーザの顔の位置に合わせて表示部の表示方向が設定される。そのため、表示部の表示を見やすくすることができる。
【0010】
第2の発明は、第1の発明に従属し、回転を検出する回転検出部をさらに備え、起動部は、検出部によって水平姿勢または略水平姿勢が検出されている状態で、回転検出部によって回転が検出されたとき、カメラモジュールを起動する。
【0011】
第2の発明では、回転検出部(56)は、たとえば方位を利用して携帯端末の回転を検出する。たとえば、略水平姿勢で、携帯端末が回転すると、起動部はカメラモジュールを起動させる。
【0012】
第2の発明によれば、水平姿勢または略水平姿勢で携帯端末が回転したとしても、表示部の表示方向がユーザの顔の方向と一致するように、修正することができる。
【0013】
第3の発明は、第1の発明または第2の発明に従属し、起動部は、検出部によって水平姿勢または略水平姿勢が検出された状態であれば、所定時間毎にカメラモジュールを起動する。
【0014】
第3の発明によれば、ユーザの位置が変わったとしても、表示方向を適切に修正することができる。
【0015】
第4の発明は、第1の発明ないし第3の発明のいずれかに従属し、顔検出処理が実行された後に、カメラモジュールを停止する停止部をさらに備える。
【0016】
第4の発明では、停止部(30,S51)は、顔検出処理を実行した後に、電源をオフにすることで、カメラモジュールを停止する。
【0017】
第4の発明によれば、携帯端末の消費電力を抑えることができる。
【0018】
第5の発明は、第1の発明ないし第4の発明のいずれかに従属し、顔検出処理によって複数の顔が検出されたとき、最も大きい顔を特定する特定部をさらに備え、方向検出部は、特定部によって特定された顔の方向を検出する。
【0019】
第5の発明では、特定部(30,S31)は、複数の顔が検出されている場合、最も大きく写っている顔を特定する。そして、方向検出部は、最も大きく写っている顔の方向を検出する。
【0020】
第5の発明によれば、複数の人物が撮影画像に写り込んでいたとしても、表示部を見ている可能性が最も高い人物に合わせて、表示部の表示方向を設定できる。
【0021】
第6の発明は、コンテンツを表示する表示部(14)、姿勢を検出する検出部(54)および撮影画像を出力するカメラモジュール(50)を有し、検出部によって検出された傾斜に応じて表示部の表示方向が変化する、携帯端末(10)のプロセッサ(30)を、検出部によって水平姿勢または略水平姿勢が検出されたとき、カメラモジュールを起動する起動部(S23)、起動部により起動されたカメラモジュールから出力された撮影画像から顔を検出する顔検出処理を実行する実行部(S25)、顔検出処理によって検出された顔の方向を検出する方向検出部(S33)、方向検出部によって検出された顔の方向に基づいて、表示部の表示方向を設定する設定部(S39,S41,S45,S47)、および設定部によって設定された表示方向に従って、表示部にコンテンツを表示する表示処理部(S49)として機能させる、表示方向制御プログラムである。
【0022】
第6の発明でも、第1の発明と同様、ユーザが携帯端末を平置きしても、ユーザの顔の位置に合わせて表示部の表示方向が設定される。そのため、表示部の表示を見やすくすることができる。
【0023】
第7の発明は、コンテンツを表示する表示部(14)、姿勢を検出する検出部(54)および撮影画像を出力するカメラモジュール(50)を有し、検出部によって検出された傾斜に応じて表示部の表示方向が変化する、携帯端末(10)の表示方向制御方法であって、検出部によって水平姿勢または略水平姿勢が検出されたとき、カメラモジュールを起動し(S23)、起動されたカメラモジュールから出力された撮影画像から顔を検出する顔検出処理を実行し(S25)、顔検出処理によって検出された顔の方向を検出し(S33)、検出された顔の方向に基づいて、表示部の表示方向を設定し(S39,S41,S45,S47)、そして設定された表示方向に従って、表示部にコンテンツを表示する(S49)、表示方向制御方法である。
【0024】
第7の発明でも、第1の発明と同様、ユーザが携帯端末を平置きしても、ユーザの顔の位置に合わせて表示部の表示方向が設定される。そのため、表示部の表示を見やすくすることができる。
【発明の効果】
【0025】
この発明によれば、表示方向が適切に設定されるため、表示部の表示を見やすくすることができる。
【0026】
この発明の上述の目的、その他の目的、特徴および利点は、図面を参照して行う以下の実施例の詳細な説明から一層明らかとなろう。
【図面の簡単な説明】
【0027】
【図1】図1はこの発明の一実施例の携帯電話機を示す外観図であり、図1(A)は携帯電話機の表面を示す外観図であり、図1(B)は携帯電話機の裏面を示す外観図である。
【図2】図2は図1に示す携帯電話機の電気的な構成を示す図解図である。
【図3】図3は図1に示すディスプレイに表示される画像の一例を示す図解図であり、図3(A)は携帯電話機が縦方向で持たれた状態のディスプレイの表示例を示し、図3(B)は携帯電話機が横方向で持たれた状態のディスプレイの表示例を示す。
【図4】図4は図1に示すディスプレイの表示方向を示す図解図であり、図4(A)は表示方向が通常方向の表示例であり、図4(B)は表示方向が逆方向の表示例であり、図4(C)は表示方向が右方向の表示例であり、図4(D)は表示方向が左方向の表示例である。
【図5】図5は図2に示す第1カメラモジュールから出力された撮影画像の領域を示す図解図であり、図5(A)は上領域と下領域とに分けられた撮影画像を示す図解図であり、図5(B)は左領域と右領域とに分けられた撮影画像を示す図解図である。
【図6】図6は図1に示す携帯電話機が机に置かれときに撮影されたユーザの顔の一例を示す図解図であり、図6(A)は机に置かれた携帯電話機とユーザの位置関係の一例を示す図解図であり、図6(B)は図6(A)の状態で撮影されたユーザの顔の一例を示す図解図である。
【図7】図7は図1に示す携帯電話機が机に置かれときに撮影されたユーザの顔の他の一例を示す図解図であり、図7(A)は机に置かれた携帯電話機とユーザの位置関係の他の一例を示す図解図であり、図7(B)は図7(A)の状態で撮影されたユーザの顔の一例を示す図解図である。
【図8】図8は図2に示すRAMのメモリマップの一例を示す図解図である。
【図9】図9は図2に示すプロセッサの表示制御処理の一例を示すフロー図である。
【図10】図10は図2に示すプロセッサの表示方向設定処理の一部の一例を示すフロー図である。
【図11】図11は図2に示すプロセッサの表示方向設定処理の他の一部の一例であって、図10に後続するフロー図である。
【図12】図12は図2に示す第1カメラモジュールから出力された撮影画像に設定される方向の一例を示す図解図である。
【図13】図13は図2に示す第1カメラモジュールから出力された撮影画像から顔の方向を検出する手順の一例を示す図解図であり、図13(A)は撮影されたユーザの顔の一例を示す図解図であり、図13(B)は図13(A)に示す撮影画像から抽出された顔領域の一例を示す図解図であり、図13(C)は図13(B)に示す抽出画像から検出された顔の方向の一例を示す図解図である。
【図14】図14は図2に示すプロセッサの第2実施例の表示方向設定処理の一部の一例を示すフロー図である。
【発明を実施するための形態】
【0028】
<第1実施例>
図1(A),(B)を参照して、この発明の一実施例の携帯電話機10は、一例としてスマートフォン(smart phone)であり、縦長の扁平矩形のハウジング12を含む。ただし、この発明は、タブレット端末、PDAなど任意の携帯端末に適用可能であることを予め指摘しておく。
【0029】
ハウジング12の一方主面(表面)には、表示部として機能する、たとえば液晶や有機ELなどのディスプレイ14が設けられる。ディスプレイ14の上には、タッチパネル16が設けられる。したがって、この実施例の携帯電話機10では、後述のハードキーの操作によるものを除く大部分の入力操作は、このタッチパネル16を介して行われる。
【0030】
ハウジング12の縦方向一端の表面側にスピーカ18が内蔵され、縦方向他端の表面側にマイク20が内蔵される。
【0031】
タッチパネル16と共に、入力操作手段を構成するハードキーとして、この実施例では、通話キー22a、終話キー22bおよびメニューキー22cが設けられる。
【0032】
たとえば、ユーザは、ディスプレイ14に表示されたダイヤルキー(図示せず)に対して、タッチパネル16によってタッチ操作を行うことで電話番号を入力でき、通話キー22aを操作して音声通話を開始することができる。終話キー22bを操作すれば、音声通話を終了することができる。なお、ユーザは、この終話キー22bを長押しすることによって、携帯電話機10の電源をオン/オフすることができる。
【0033】
また、メニューキー22cを操作すれば、ディスプレイ14にメニュー画面が表示され、その状態でディスプレイ14に表示されているソフトキーやメニューアイコン(ともに図示せず)などに対して、タッチパネル16によるタッチ操作を行うことによってメニューを選択し、その選択を確定させることができる。
【0034】
ハウジング12の縦方向一端の表面側には、後述の第1カメラモジュール50(図2)のためのレンズ開口24が設けられている。また、ハウジング12の縦方向一端の表面側には、第2カメラモジュール52のためのレンズ開口26が設けられている。したがって、第1カメラモジュール50および第2カメラモジュール52は、レンズ開口24およびレンズ開口26を通した画像を撮影することになる。
【0035】
図2を参照して、図1に示す実施例の携帯電話機10は、コンピュータまたはCPUと呼ばれるプロセッサ30を含む。プロセッサ30には、無線通信回路32、A/D変換器36、D/A変換器38、入力装置40、表示ドライバ42、フラッシュメモリ44、RAM46、タッチパネル制御回路48、第1カメラモジュール50、第2カメラモジュール52、加速度センサ54および方位センサ56などが接続される。
【0036】
プロセッサ30は、携帯電話機10の全体制御を司る。RAM46には、フラッシュメモリ44に予め設定されているプログラムの全部または一部が使用に際して展開され、プロセッサ30はこのRAM46上のプログラムに従って動作する。なお、RAM46はさらに、プロセッサ30のワーキング領域ないしバッファ領域として用いられる。
【0037】
入力装置40は、図1に示すタッチパネル16、ハードキー22a−22cを含むものであり、操作部または入力部を構成する。ユーザが操作したハードキーの情報(キーデータ)はプロセッサ30に入力される。
【0038】
無線通信回路32は、アンテナ34を通して、音声通話やメールなどのための電波を送受信するための回路である。実施例では、無線通信回路32は、CDMA方式での無線通信を行うための回路である。たとえば、ユーザが入力装置40を操作して電話発信(発呼)を指示すると、無線通信回路32は、プロセッサ30の指の下、電話発信処理を実行し、アンテナ34を介して電話発信信号を出力する。電話発信信号は、基地局および通信網を経て相手の電話機に送信される。そして、相手の電話機において着信処理が行われると、通信可能状態が確立され、プロセッサ30は通話処理を実行する。
【0039】
通常の通話処理について具体的に説明すると、相手の電話機から送られてきた変調音声信号はアンテナ34によって受信される。受信された変調音声信号には、無線通信回路32によって復調処理および復号処理が施される。そして、これらの処理によって得られた受話音声信号は、D/A変換器38によって音声信号に変換された後、スピーカ18から出力される。一方、マイク20を通して取り込まれた送話音声信号は、A/D変換器36によって音声データに変換された後、プロセッサ30に与えられる。音声データには、プロセッサ30の指示の下、無線通信回路32によって符号化処理および変調処理が施され、アンテナ34を介して出力される。したがって、変調音声信号は、基地局および通信網を介して相手の電話機に送信される。
【0040】
また、相手の電話機からの電話発信信号がアンテナ34によって受信されると、無線通信回路32は、電話着信(着呼)をプロセッサ30に通知する。これに応じて、プロセッサ30は、表示ドライバ42を制御して、着信通知に記述された発信元情報(電話番号など)をディスプレイ14に表示する。また、上記処理に伴い、プロセッサ30は、スピーカ18から着信音(着信メロディ、着信音声と言うこともある。)を出力させる。
【0041】
そして、ユーザが入力装置40に含まれる通話キー22(図1)を用いて応答操作を行うと、無線通信回路32は、プロセッサ30の指示の下、電話着信処理を実行する。さらに、通信可能状態が確立され、プロセッサ30は上述した通話処理を実行する。
【0042】
また、通話可能状態に移行した後に入力装置40に含まれる終話キー24(図1)によって通話終了操作が行われると、プロセッサ30は、無線通信回路32を制御して、通話相手に通話終了信号を送信する。そして、通話終了信号の送信後、プロセッサ30は通話処理を終了する。また、先に通話相手から通話終了信号を受信した場合も、プロセッサ30は通話処理を終了する。さらに、通話相手によらず、移動通信網から通話終了信号を受信した場合も、プロセッサ30は通話処理を終了する。
【0043】
A/D変換器36には図1に示すマイク20が接続され、上述のようにマイク20からの音声信号はこのA/D変換器36を通してディジタルの音声データとしてプロセッサ30に入力される。D/A変換器38にはスピーカ18が接続される。D/A変換器38は、ディジタルの音声データを音声信号に変換して、アンプを介してスピーカ18に与える。したがって、音声データの音声がスピーカ18から出力される。
【0044】
なお、プロセッサ30は、たとえばユーザによるボリュームの操作に応答して、D/A変換器38に接続されるアンプの増幅率を制御することによって、スピーカ18から出力される音声の音量を調整することができる。
【0045】
表示ドライバ42には図1に示すディスプレイ14が接続され、したがって、ディスプレイ14はプロセッサ30から出力される映像または画像データに従って画像などのコンテンツを表示する。つまり、表示ドライバ42は、プロセッサ30の指示の下、当該表示ドライバ42に接続されたディスプレイ14の表示を制御する。また、表示ドライバ42は表示する画像データを一時的に記憶するビデオメモリを含む。ディスプレイ14には、たとえばLEDなどを光源とするバックライトが設けられており、表示ドライバ42はプロセッサ30の指示に従って、そのバックライトの明るさや、点灯/消灯を制御する。
【0046】
タッチパネル制御回路48には、図1に示すタッチパネル16が接続される。タッチパネル制御回路48は、タッチパネル16に必要な電圧などを付与するとともに、タッチパネル16に対するユーザによるタッチの開始を示すタッチ開始信号、ユーザによるタッチの終了を示す終了信号、およびユーザがタッチしたタッチ位置を示す座標データをプロセッサ30に入力する。したがって、プロセッサ30はこの座標データに基づいて、そのときユーザがどのアイコンやキーにタッチしたかを判断することができる。
【0047】
実施例では、タッチパネル16は、指などの物体が表面に接近して生じた電極間の静電容量の変化を検出する静電容量方式で、たとえば1本または複数本の指がタッチパネル16に触れたことを検出する。また、タッチパネル16は、ディスプレイ14の上に設けられ、その画面内で、任意の位置を指示するためのポインティングデバイスである。タッチパネル制御回路48は検出部として機能し、タッチパネル16のタッチ有効範囲内でのタッチ操作を検出して、そのタッチ操作の位置を示す座標データをプロセッサ30に出力する。つまり、ユーザは、タッチパネル16の表面をタッチ、スライド、リリースおよびそれらの組み合わせを行うことで、操作位置や、操作方向などを携帯電話機10に入力する。
【0048】
なお、タッチパネル16の検出方式には、表面型の静電容量方式が採用されてもよいし、抵抗膜方式、超音波方式、赤外線方式および電磁誘導方式などであってもよい。また、タッチ操作はユーザの指だけに限らず、スタイラスペンなどによって行われてもよい。
【0049】
第1カメラモジュール50はサブカメラまたはインカメラとも呼ばれ、制御回路、レンズおよびイメージセンサなどを含む。また、第1カメラモジュール50は、ユーザの顔を撮影できるように設けられている。そのため、後述するテレビ電話機能(ビデオチャット機能)が実行されると、第1カメラモジュール50が起動される。そして、第1カメラモジュール50によって撮影された画像は、相手の端末に送信される。
【0050】
第2カメラモジュール52はメインカメラとも呼ばれ、第1カメラモジュール50と同様、カメラ機能を実行するために必要な制御回路や、レンズおよびイメージセンサなどを含む。プロセッサ30は、カメラ機能が実行されると、第2カメラモジュール52を起動し、背景や被写体に対応するスルー画像(プレビュー画像)をディスプレイ14に表示する。そして、第2カメラモジュール52は、ユーザが撮影操作を行うと、画像を撮影する処理を実行する。
【0051】
加速度センサ54は、検出部と呼ばれることもあり、半導体式の3軸の加速度センサである。そのため、加速度センサ54は、携帯電話機10に対する3軸(X,Y,Z)の加速度データをプロセッサ30に出力する。プロセッサ30は、3軸の加速度データの変化を検出することで、携帯電話機10の動きを判断する。また、プロセッサ30は、加速度センサ54が検出する重力加速度に対して三角関数を用いることで、携帯電話機10の傾斜角を算出することができる。そして、プロセッサ30は、携帯電話機10の動作状態によっては、算出された傾斜角に基づいてディスプレイ14の表示方向を設定することがある。
【0052】
方位センサ56は、電子コンパスまたは回転検出部とも呼ばれ、3つの地磁気センサおよび制御回路を含む。制御回路は、3つの地磁気センサによって検出された磁気データから地磁気データを抽出して、プロセッサ30に出力する。プロセッサ30は、制御回路から出力された地磁気データに基づいて、方位角(方位)データを算出し、端末方向としてRAM46のバッファに記憶させる。なお、各地磁気センサは、ホール素子が用いられているが、MR(Magnet - Resistive)素子やMI(Magnet - Impedance)素子が用いられてもよい。
【0053】
また、携帯電話機10は、ハンズフリー通話を行うこともできる。そして、第1カメラモジュール50(インカメラ)およびハンズフリー通話を利用して、テレビ電話機能を実行することもできる。たとえば、テレビ電話機が実行されると、相手の端末と通話状態が確立され、相手から送信された画像をディスプレイ14に表示すると共に、第1カメラモジュール50によって撮影された画像を相手の端末に送信する。そして、ユーザは、相手の姿を確認しながら、ハンズフリー通話を行う。
【0054】
図3(A),(B)は、携帯電話機10のディスプレイ14に撮影画像が表示されている状態を示す図解図である。ディスプレイ14の表示範囲は、状態表示領域60および機能表示領域62を含む。図3(A),(B)を参照して、状態表示領域60には、アンテナ12による電波受信状態を示すアイコン(ピクト)、二次電池の残電池容量を示すアイコンおよび日時が表示される。また、機能表示領域62には、フラッシュメモリ44に保存されている撮影画像データに対応する画像が表示される。
【0055】
また、ディスプレイ14に撮影画像が表示されている場合、携帯電話機10が保持される姿勢、つまり傾斜角がプロセッサ30によって算出され、撮影画像の表示態様が変化する。たとえば、携帯電話機10が縦向きに保持されると、ディスプレイ14もユーザに対して縦向きの状態となるため、図3(A)に示すように、画像が表示される。一方、携帯電話機10が横向きに保持されると、ディスプレイ14もユーザに対して横向きの状態となるため、図3(B)に示すように、90度回転した画像が表示される。なお、画像を縮小する場合は、アスペクト比が変化しないように縮小される。
【0056】
図4(A)−(D)を参照して、ユーザが携帯電話機10を通常利用する状態(傾斜)に対して、ディスプレイ14に表示される画像などのコンテンツが表示される方向(表示方向)を示す。図4(A)の状態は、ユーザによって利用されることが多い状態であり、通常状態と言う。そのため、本実施例では、通常状態におけるディスプレイ14の表示方向を通常方向と言う。そして、この通常状態の通常方向に対して、図4(B)の表示方向を逆方向と言い、図4(C)の表示方向を右方向と言い、図4(D)の表示方向を左方向と言う。
【0057】
なお、表示方向が変わると、ディスプレイ14に表示される画像には、回転処理および縮小処理などが表示前に施される。ただし、他の実施例ではディスプレイ14の描画開始位置を変更することで表示方向を変化させてもよい。
【0058】
ここで、携帯電話機10が机などの上に平置きされ、加速度センサ54によって水平姿勢または略水平姿勢が検出された場合、加速度センサ54の出力だけでは、ユーザの顔が在る方向を特定できない。そのため、このような場合に、ディスプレイ14の表示方向とユーザの顔の向きとが一致しないことがある。
【0059】
そこで、本実施例では、携帯電話機10が加速度センサ54の出力に基づいて水平姿勢または略水平姿勢を検出すると、第1カメラモジュール50が出力した撮影画像からユーザなどの顔が検出される。そして、検出された顔の方向と、撮影画像における顔の位置とに基づいて、ディスプレイ14の表示方向が設定される。なお、本実施例では、水平方向に対する傾きが10度以下の携帯電話機10の状態を、「略水平姿勢」と呼ぶ。もちろん、「略水平姿勢」とされる傾きは10度以下に限定されるものではなく、その他、適宜な値を採用することが出来る。
【0060】
まず、ユーザの顔の方向は、目と口との位置関係に基づいて検出される。具体的には、2つの目の重心を中心として縦方向または横方向に対応する領域が設定される。そして、口の重心(中心)が縦方向の領域に含まれていれば、顔の方向が縦方向として検出される。一方、口の重心が横方向の領域に含まれていれば、顔の方向が横方向として検出される。
【0061】
次に、図5(A),(B)を参照して、撮影画像は「上領域」および「下領域」、または「左領域」および「右領域」に分けられる。そして、顔の方向が縦方向であれば、ユーザの顔の位置(重心)が「上領域」または「下領域」に含まれているかが判断される。一方、顔の方向が横方向であれば、ユーザの顔の位置が「左領域」または「右領域」に含まれているかが判断される。
【0062】
顔の位置が「上領域」に含まれていると判断された場合、表示方向が逆方向(図4(B))に設定される。一方、顔の位置が「下領域」に含まれていると判断された場合、表示方向が通常方向(図4(A))に設定される。また、顔の位置が「左領域」に含まれていると判断された場合、表示方向が左方向(図4(D))に設定される。一方、顔の位置が「右領域」に含まれていると判断された場合、表示方向が右方向(図4(C))に設定される。
【0063】
たとえば、図6(A)を参照して、ディスプレイ14がユーザに対して縦向きの状態となるように、携帯電話機10が平置きされると、図6(B)に示すような撮影画像が第1カメラモジュール50から出力される。この撮影画像では、ユーザの顔の向きが縦向きと判断されると共に、顔の位置が「下領域」に含まれていると判断される。そのため、ディスプレイ14の表示方向は、図4(A)に示すような、通常方向となる。
【0064】
次に、図7(A)を参照して、ディスプレイ14がユーザに対して横向きの状態となるように、携帯電話機10が平置きされると、図7(B)に示すような撮影画像が第1カメラモジュール50から出力される。図7(B)に示す撮影画像では、ユーザの顔の方向が横方向と判断されると共に、顔の位置が「右領域」に含まれていると判断される。その結果、ディスプレイ14の表示方向は、図4(C)に示すような、右方向となる。
【0065】
詳細な説明は省略するが、使用者の顔が「上領域」に含まれていると判断されると表示方向は逆方向となり、「左領域」に含まれていると判断されると表示方向は左方向となる。
【0066】
このように、本実施例では、ユーザが携帯電話機10を平置きしても、ユーザの顔の位置に合わせてディスプレイ14の表示方向が設定される。そのため、ディスプレイ14の表示を見やすくすることができる。
【0067】
また、方位センサ56が出力する方位角データに基づいて、平置きされた状態(水平姿勢または略水平姿勢)で回転を検出すると、第1カメラモジュール50が撮影画像を再出力する。つまり、水平姿勢で回転が生じるとユーザの顔の位置が変化するため、再出力された撮影画像に基づいてディスプレイ14の表示方向が再設定される。これにより、水平姿勢または略水平姿勢で携帯電話機10が回転したとしても、ディスプレイ14の表示方向がユーザの顔の方向と一致するように、修正することができる。
【0068】
また、ディスプレイ14の表示方向が設定されてから所定時間(たとえば、30秒)が経過した場合も、第1カメラモジュール50は撮影画像を再出力する。つまり、ユーザの顔の位置は変化することがあるため、変化したユーザの顔の位置に対応するために、ユーザの顔が所定時間毎に撮影される。これにより、ユーザの位置が変わったとしても、表示方向を適切に修正することができる。
【0069】
また、撮影画像に複数の人物の顔が写り込んでいる場合、最も多く顔が写っている人物、つまり携帯電話機10に最も近い人物を特定し、その人物を基準としてディスプレイ14の表示方向が設定される。これにより、複数の人物が撮影画像に写り込んでいたとしても、ディスプレイ14を見ている可能性が最も高い人物に合わせて、表示部の表示方向を設定できる。
【0070】
また、第1カメラモジュール50は、たとえば水平姿勢で起動すると、画像を撮影し顔検出処理が終了した後に停止される。つまり、ユーザの顔を検出する必要が無いときには、第1カメラモジュール50の電源はオフにされる。そのため、携帯電話機10の消費電力を抑えることができる。
【0071】
なお、本実施例では、撮影画像の左右を反転させて、ディスプレイ14の表示方向を判断している。これは、図7(A),(B)を用いて説明する際に、撮影画像の左右を反転させた方が、本実施例を理解しやすいからである。たとえば、撮影画像の左右が反転していない場合、図7(B)の撮影画像では、ユーザが左側に位置することになり、撮影画像におけるユーザの顔の位置と、携帯電話機10に対するユーザの位置と一致していないように感じられる。そのため、本実施例では撮影画像の左右を反転させて説明を行っている。ただし、他の実施例では、処理を単純にするために、撮影画像の左右を反転させずに、表示方向が設定されてもよい。
【0072】
以上で実施例の特徴を概説したが、以下には、図8に示す携帯電話機10のRAM46のメモリマップ、図9、図10および図11に示す携帯電話機10のプロセッサ30によるフロー図を用いて詳細に説明する。
【0073】
図8を参照して、図2に示すRAM46には、プログラム記憶領域302とデータ記憶領域304とが形成される。プログラム記憶領域302は、先に説明したように、フラッシュメモリ44(図2)に予め設定しているプログラムデータの一部または全部を読み出して記憶(展開)しておくための領域である。
【0074】
プログラム記憶領域302には、ディスプレイ14の表示を制御するための表示制御プログラム310および表示方向を設定するための表示方向設定プログラム312などが含まれる。なお、プログラム記憶領域302には、電話機能、留守番電話機能およびメール機能などを実行するためのプログラムも含まれる。
【0075】
続いて、RAM46のデータ記憶領域304には、タッチバッファ330、加速度バッファ332、方位バッファ334および表示画像バッファ336が設けられると共に、タッチ座標マップデータ338が記憶される。また、データ記憶領域304には、タッチフラグ340、通常方向フラグ342、逆方向フラグ344、右方向フラグ346および左方向フラグ348が設けられる。
【0076】
タッチバッファ330には、タッチパネル制御回路48が出力するタッチ座標のデータが記憶される。加速度バッファ332には、加速度センサ54から出力された加速度データが一時的に記憶される。方位バッファ334には、方位センサ56から出力された方位角データが一時的に記憶される。表示画像バッファ336には、ディスプレイ14に表示するための画像データが一時的に記憶される。また、表示方向が変化する場合、この表示画像バッファ336に格納されている画像データに対して、回転処理および拡大/縮小処理などが施される。
【0077】
タッチ座標マップデータ338は、タッチ操作におけるタッチ座標と、ディスプレイ14の表示座標とを対応付けるためのデータである。つまり、タッチ座標マップデータ338に基づいて、タッチパネル16に対して行われたタッチ操作の結果が、ディスプレイ14の表示に反映される。
【0078】
タッチフラグ340は、タッチパネル16に対してタッチされているか否かを判断するためのフラグである。たとえば、タッチフラグ340は、1ビットのレジスタで構成される。タッチフラグ340がオン(成立)されると、レジスタにはデータ値「1」が設定される。一方、タッチフラグ340がオフ(不成立)されると、レジスタにはデータ値「0」が設定される。なお、タッチフラグ340は、タッチパネル制御回路48が出力する信号に基づいてオン/オフが切り換えられる。
【0079】
通常方向フラグ342は、ディスプレイ14の表示方向が通常方向に設定されたかを判断するためのフラグである。逆方向フラグ344は、表示方向が逆方向に設定されたかを判断するためのフラグである。右方向フラグ346は、表示方向が右方向に設定されたかを判断するためのフラグである。左方向フラグ348は、表示方向が左方向に設定されたかを判断するためのフラグである。そして、これらのフラグの構成は、タッチフラグ340と略同じであるため、構成についての詳細な説明は省略する。
【0080】
なお、データ記憶領域304には、待機状態で表示される画像データや、文字列のデータなどが記憶されると共に、携帯電話機10の動作に必要なカウンタや、フラグも設けられる。
【0081】
プロセッサ30は、Android(登録商標)およびREXなどのLinux(登録商標)ベースのOSや、その他のOSの制御下で、図9に示す表示制御処理や、図10および図11に示す表示方向判定処理などを含む、複数のタスクを並列的に処理する。
【0082】
表示制御処理は、たとえば、ディスプレイ14の電源がオンになると開始される。ステップS1では、プロセッサ30は、タイマ処理を実行する。つまり、所定時間をカウント(計測)するためのカウンタをリセットして、所定時間の計測を始める。続いて、ステップS3でプロセッ30は、タイマが満了したか否かを判断する。つまり、所定時間の計測が終了したか否かを判断する。ステップS3で“NO”であれば、つまり計測を始めてから所定時間が経過していなければ、ステップS5で回転を検出したか否かを判断する。つまり、方位バッファ334に記憶されている方位角データが変化したかが判断される。ステップS5で“NO”であれば、つまり回転が検出されなければ、ステップS3に戻る。
【0083】
そして、所定時間が経過してステップS3で“YES”と判断されると、プロセッサ30はステップS7で、表示方向設定処理を実行する。つまり、水平姿勢または略水平姿勢でれば、所定時間毎に表示方向設定処理が実行され、第1カメラモジュール50が起動される。また、回転が検出されステップS5で“YES”と判断されても、表示方向設定処理が実行される。たとえば水平姿勢で回転が検出されば、表示方向設定処理が実行され、第1カメラモジュール50が起動される。なお、ステップS7の処理が終了すると、ステップS1に戻る。
【0084】
図10は表示方向設定処理のフロー図である。表示方向設定処理が実行されると、プロセッサ30はステップS21で水平か否かを判断する。つまり、加速度バッファ332に記憶されている加速度データに基づいて、携帯電話機10が水平姿勢または略水平姿勢であるかが判断される。ステップS21で“NO”であれば、たとえば携帯電話機10が傾けられた状態でユーザに保持されていれば、プロセッサ30はステップS21の処理を繰り返す。
【0085】
ステップS21で“YES”であれば、つまり水平姿勢または略水平姿勢となるように、携帯電話機10が机の上に平置きされると、ステップS23でプロセッサ30は第1カメラモジュール50を起動する。つまり、ユーザの顔を撮影ために第1カメラモジュール50が起動される。続いて、ステップS25で顔検出処理を実行する。たとえば、起動した第1カメラモジュール50によってユーザの顔が撮影され、第1カメラモジュール50から出力された撮影画像から、目および口などを含む領域が『顔』として検出される。なお、ステップS23の処理を実行するプロセッサ30は起動部として機能し、ステップS25の処理を実行するプロセッサ30は実行部として機能する。
【0086】
図11を参照して、ステップS27でプロセッサ30は、顔が検出されたか否かを判断する。つまり、顔検出処理によって顔が検出されたかが判断される。ステップS27で“NO”であれば、つまり、顔が検出されていなければ、プロセッサ30は表示方向設定処理を終了して、表示制御処理に戻る。一方、ステップS27で“YES”であれば、つまり顔が検出されると、ステップS29でプロセッサ30は、複数の顔が検出されたか否かを判断する。つまり、撮影画像に複数の人物の顔が写っているかが判断される。
【0087】
ステップS29で“NO”であれば、つまり撮影画像から検出された顔が1つであれば、プロセッサ30はステップS33に進む。また、ステップS29で“YES”であれば、たとえば3つの顔が検出されると、ステップS31でプロセッサ30は、最も大きい顔領域を特定する。つまり、携帯電話機10に最も近い人物の顔を特定する。また、具体的には目および口などを含む領域の面積をそれぞれ求めて、最も大きい顔領域を特定する。なお、ステップS31の処理を実行するプロセッサ30は特定部として機能する。
【0088】
続いて、ステップS33で顔の方向を検出する。つまり、顔領域における目と口との位置関係から、縦方向または横方向が判断される。なお、ステップS35の処理を実行するプロセッサ30は方向検出部として機能する。
【0089】
続いて、ステップS35では、顔が縦方向か否かを判断する。ステップS35で“YES”であれば、たとえば図6(B)に示すようにユーザの顔が縦方向で撮影されていれば、ステップS37でプロセッサ30は、顔が下領域に含まれているか否かを判断する。つまり、プロセッサ30は、図5(A)に示す下領域に、検出された顔が含まれているかを判断する。ステップS37で“YES”であれば、たとえば図6(B)に示すように、縦方向のユーザの顔が下領域に含まれていれば、プロセッサ30は、ステップS39で表示方向を通常方向に設定し、ステップS49に進む。つまり、表示方向が図4(A)の状態となるように、通常方向フラグ342がオンにされる。一方、ステップS37で“NO”であれば、つまり顔が上領域に含まれていれば、プロセッサ30は、ステップS41で表示方向を逆方向に設定し、ステップS49に進む。つまり、表示方向が図4(B)の状態となるように、逆方向フラグ344がオンにされる。
【0090】
また、ステップS35で“NO”であれば、たとえば図7(B)に示すように、ユーザの顔が横方向で撮影されていれば、ステップS43でプロセッサ30は、顔が右領域に含まれているか否かを判断する。つまり、プロセッサ30は、図5(B)に示す右領域に、検出された顔が含まれているかを判断する。ステップS43で“YES”であれば、たとえば図7(B)に示すように、横方向のユーザの顔が右領域に含まれていれば、プロセッサ30は表示方向を右方向に設定し、ステップS49に進む。つまり、表示方向が図4(C)の状態となるように、右方向フラグ346がオンにされる。一方、ステップS43で“NO”であれば、つまり顔が左領域に含まれていれば、プロセッサ30は、ステップS47で表示方向を左方向に設定し、ステップS49に進む。つまり、表示方向が図4(D)の状態となるように、左方向フラグ348がオンにされる。
【0091】
なお、ステップS39,S41,S45,S47の処理を実行するプロセッサ30は設定部として機能する。
【0092】
続いて、ステップS49でプロセッサ30は、設定された表示方向で表示する。たとえば、通常方向フラグ342、逆方向フラグ344、右方向フラグ346および左方向フラグ348のうち、右方向フラグ346がオンであれば、表示画像バッファ336に格納されている画像に対して回転処理および縮小処理などが施される。これにより、ディスプレイ14には、左方向の画像が表示される。なお、ステップS49の処理を実行するプロセッサ30は表示処理部として機能する。
【0093】
続いて、ステップS51でプロセッサ30は、第1カメラモジュール50を停止する。つまり、第1カメラモジュール50の電源がオフにされる。そして、ステップS51の処理が終了すると、プロセッサ30は表示方向設定処理を終了して、表示制御処理に戻る。なお、ステップS51の処理を実行するプロセッサ30は停止部として機能する。
【0094】
<第2実施例>
第2実施例では、ユーザの顔の方向を角度で求め、その角度に基づいてディスプレイ14の表示方向を決める。なお、第2実施例の携帯電話機10は、第1実施例とほぼ同じであるため、携帯電話機10の電気的な構成、外観、RAM34のメモリマップおよび図9に示す表示制御処理など説明を省略する。
【0095】
図12を参照して、第1カメラモジュール50から出力された撮影画像には、下方向を基準(0度)として、時計回りに角度が大きくなるよう角度が設定される。つまり、下方向が0度となり、左方向が90度となり、上方向が180度となり、右方向が270度となる。
【0096】
そして、顔の角度θが「0度≦θ<45度」または「315度≦θ<360度」の範囲に含まれていれば、表示方向が通常方向に設定される。顔の角度θが「45度≦θ<135度」の範囲に含まれていれば、表示方向が左方向に設定される。顔の角度θが「135度≦θ<225度」の範囲に含まれていれば、表示方向が逆方向に設定される。そして、顔の角度θが「225度≦θ<315度」に含まれていれば、表示方向が右方向に設定される。
【0097】
次に、顔の角度θは、撮影画像から顔領域を抽出し、抽出画像の重心Gと、ユーザの口との位置関係に基づいて求められる。たとえば、図13(A)を参照して、ユーザの顔を撮影した撮影画像から、図13(B)に示すように顔領域が抽出され、抽出画像における重心Gが求められる。そして、図13(C)に示すように、重心Gと口の中点とを通る線が示す方向が顔の角度θ、つまり顔の方向となる。そのため、図13(A)に示す顔の角度は「270度」と検出され、表示方向が右方向に設定される。
【0098】
なお、他の実施例では、顔の角度θは、2つの目の座標を結ぶ線分と水平方向の線とが成す角度を利用して検出されてもよい。
【0099】
図14は、第2実施例の表示方向設定処理の一部のフロー図である。なお、ステップS1−S31およびステップS49−S51は、第1実施例の表示方向設定処理と同じであるため、図示および説明を省略する。
【0100】
第2実施例の表示方向処理でステップS31の処理が終了すると、プロセッサ30はステップS33で顔の方向を検出する。たとえば、図13(A)−(C)に示すように、撮影画像から顔領域を抽出し、抽出画像の重心Gとユーザの口とに基づいて、顔の角度θを算出する。続いて、ステップS63でプロセッサ30は、顔の方向は正常方向の範囲に含まれているか否かを判断する。つまり、プロセッサ30は、顔の角度θが「0度≦θ<45度」または「315度≦θ<360度」に含まれているかを判断する。ステップS63で“YES”であれば、たとえば、顔の角度θが0度であれば、プロセッサ30は、ステップS39で表示方向を通常方向に設定し、ステップS49に進む。
【0101】
一方、ステップS63で“NO”であれば、つまり顔の方向が正常方向の範囲に含まれていれければ、ステップS63でプロセッサ30は、顔の方向が逆方向の範囲に含まれているか否かを判断する。つまり、プロセッサ30は、顔の角度θが「135度≦θ<225度」の範囲に含まれているかを判断する。ステップS63で“YES”であれば、たとえば顔の角度θが180度であれば、プロセッサ30は、ステップS41で表示方向を逆方向に設定し、ステップS49に進む。
【0102】
ステップS63で“NO”であれば、つまり顔の方向が逆方向の範囲に含まれていなければ、ステップS65でプロセッサ30は、顔の方向が右方向の範囲か否かを判断する。つまり、プロセッサ30は、顔の角度θが「225度≦θ<315度」の範囲に含まれているかを判断する。ステップS65で“YES”であれば、たとえば顔の角度θが270度であれば、プロセッサ30は、ステップS45で表示方向を右方向に設定し、ステップS49に進む。
【0103】
そして、ステップS65で“NO”であれば、つまり顔の方向が左方向の範囲(「45度≦θ<135度」)に含まれていれば、プロセッサ30は、ステップS47で表示方向を左方向に設定して、ステップS49に進む。
【0104】
なお、他の実施例では、各方向に対応する顔のテンプレート画像を利用して、顔の方向が検出されてもよい。
【0105】
また、本実施例では、ディスプレイ14に表示されるコンテンツを静止画像として説明したが、他の実施例では動画像や、テレビの映像、HPなどの様々なコンテンツがディスプレイ14に表示されてもよい。そして、これらのコンテンツが表示されている場合でも、表示方向は変更される。
【0106】
また、加速度センサ54および方位センサ56に代えて、ジャイロセンサなどによって携帯電話機10の姿勢および回転が検出されてもよい。
【0107】
また、本実施例で用いられたプログラムは、データ配信用のサーバのHDDに記憶され、ネットワークを介して携帯電話機10に配信されてもよい。また、CD,DVD,BD(Blue-Ray Disk)などの光学ディスク、USBメモリおよびメモリカードなどの記憶媒体に複数のプログラムを記憶させた状態で、その記憶媒体が販売または配布されてもよい。そして、上記したサーバや記憶媒体などを通じてダウンロードされた、プログラムが本実施例と同等の構成の携帯端末にインストールされた場合、本実施例と同等の効果が得られる。
【0108】
そして、本明細書中で挙げた、具体的な数値は、いずれも単なる一例であり、製品の仕様変更などに応じて適宜変更可能である。
【符号の説明】
【0109】
10 … 携帯電話機
14 … ディスプレイ
16 … タッチパネル
30 … プロセッサ
40 … 入力装置
44 … フラッシュメモリ
46 … RAM
50 … 第1カメラモジュール
54 … 加速度センサ
56 … 方位センサ
【特許請求の範囲】
【請求項1】
コンテンツを表示する表示部および姿勢を検出する検出部を有し、前記検出部によって検出された傾斜に応じて前記表示部の表示方向が変化する、携帯端末であって、
撮影画像を出力するカメラモジュール、
前記検出部によって水平姿勢または略水平姿勢が検出されたとき、前記カメラモジュールを起動する起動部、
前記起動部により起動されたカメラモジュールから出力された撮影画像から顔を検出する顔検出処理を実行する実行部、
前記顔検出処理によって検出された顔の方向を検出する方向検出部、
前記方向検出部によって検出された顔の方向に基づいて、前記表示部の表示方向を設定する設定部、および
前記設定部によって設定された表示方向に従って、前記表示部にコンテンツを表示する表示処理部を備える、携帯端末。
【請求項2】
回転を検出する回転検出部をさらに備え、
前記起動部は、前記検出部によって水平姿勢または略水平姿勢が検出されている状態で、前記回転検出部によって回転が検出されたとき、前記カメラモジュールを起動する、請求項1記載の携帯端末。
【請求項3】
前記起動部は、前記検出部によって水平姿勢または略水平姿勢が検出された状態であれば、所定時間毎に前記カメラモジュールを起動する、請求項1または2記載の携帯端末。
【請求項4】
前記顔検出処理が実行された後に、前記カメラモジュールを停止する停止部をさらに備える、請求項1ないし3のいずれかに記載の携帯端末。
【請求項5】
前記顔検出処理によって複数の顔が検出されたとき、最も大きい顔を特定する特定部をさらに備え、
前記方向検出部は、前記特定部によって特定された顔の方向を検出する、請求項1ないし4のいずれかに記載の携帯端末。
【請求項6】
コンテンツを表示する表示部、姿勢を検出する検出部および撮影画像を出力するカメラモジュールを有し、前記検出部によって検出された傾斜に応じて前記表示部の表示方向が変化する、携帯端末のプロセッサを、
前記検出部によって水平姿勢または略水平姿勢が検出されたとき、前記カメラモジュールを起動する起動部、
前記起動部により起動されたカメラモジュールから出力された撮影画像から顔を検出する顔検出処理を実行する実行部、
前記顔検出処理によって検出された顔の方向を検出する方向検出部、
前記方向検出部によって検出された顔の方向に基づいて、前記表示部の表示方向を設定する設定部、および
前記設定部によって設定された表示方向に従って、前記表示部にコンテンツを表示する表示処理部として機能させる、表示方向制御プログラム。
【請求項7】
コンテンツを表示する表示部、姿勢を検出する検出部および撮影画像を出力するカメラモジュールを有し、前記検出部によって検出された傾斜に応じて前記表示部の表示方向が変化する、携帯端末の表示方向制御方法であって、
前記検出部によって水平姿勢または略水平姿勢が検出されたとき、前記カメラモジュールを起動し、
起動されたカメラモジュールから出力された撮影画像から顔を検出する顔検出処理を実行し、
前記顔検出処理によって検出された顔の方向を検出し、
検出された顔の方向に基づいて、前記表示部の表示方向を設定し、そして
設定された表示方向に従って、前記表示部にコンテンツを表示する、表示方向制御方法。
【請求項1】
コンテンツを表示する表示部および姿勢を検出する検出部を有し、前記検出部によって検出された傾斜に応じて前記表示部の表示方向が変化する、携帯端末であって、
撮影画像を出力するカメラモジュール、
前記検出部によって水平姿勢または略水平姿勢が検出されたとき、前記カメラモジュールを起動する起動部、
前記起動部により起動されたカメラモジュールから出力された撮影画像から顔を検出する顔検出処理を実行する実行部、
前記顔検出処理によって検出された顔の方向を検出する方向検出部、
前記方向検出部によって検出された顔の方向に基づいて、前記表示部の表示方向を設定する設定部、および
前記設定部によって設定された表示方向に従って、前記表示部にコンテンツを表示する表示処理部を備える、携帯端末。
【請求項2】
回転を検出する回転検出部をさらに備え、
前記起動部は、前記検出部によって水平姿勢または略水平姿勢が検出されている状態で、前記回転検出部によって回転が検出されたとき、前記カメラモジュールを起動する、請求項1記載の携帯端末。
【請求項3】
前記起動部は、前記検出部によって水平姿勢または略水平姿勢が検出された状態であれば、所定時間毎に前記カメラモジュールを起動する、請求項1または2記載の携帯端末。
【請求項4】
前記顔検出処理が実行された後に、前記カメラモジュールを停止する停止部をさらに備える、請求項1ないし3のいずれかに記載の携帯端末。
【請求項5】
前記顔検出処理によって複数の顔が検出されたとき、最も大きい顔を特定する特定部をさらに備え、
前記方向検出部は、前記特定部によって特定された顔の方向を検出する、請求項1ないし4のいずれかに記載の携帯端末。
【請求項6】
コンテンツを表示する表示部、姿勢を検出する検出部および撮影画像を出力するカメラモジュールを有し、前記検出部によって検出された傾斜に応じて前記表示部の表示方向が変化する、携帯端末のプロセッサを、
前記検出部によって水平姿勢または略水平姿勢が検出されたとき、前記カメラモジュールを起動する起動部、
前記起動部により起動されたカメラモジュールから出力された撮影画像から顔を検出する顔検出処理を実行する実行部、
前記顔検出処理によって検出された顔の方向を検出する方向検出部、
前記方向検出部によって検出された顔の方向に基づいて、前記表示部の表示方向を設定する設定部、および
前記設定部によって設定された表示方向に従って、前記表示部にコンテンツを表示する表示処理部として機能させる、表示方向制御プログラム。
【請求項7】
コンテンツを表示する表示部、姿勢を検出する検出部および撮影画像を出力するカメラモジュールを有し、前記検出部によって検出された傾斜に応じて前記表示部の表示方向が変化する、携帯端末の表示方向制御方法であって、
前記検出部によって水平姿勢または略水平姿勢が検出されたとき、前記カメラモジュールを起動し、
起動されたカメラモジュールから出力された撮影画像から顔を検出する顔検出処理を実行し、
前記顔検出処理によって検出された顔の方向を検出し、
検出された顔の方向に基づいて、前記表示部の表示方向を設定し、そして
設定された表示方向に従って、前記表示部にコンテンツを表示する、表示方向制御方法。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【公開番号】特開2013−115459(P2013−115459A)
【公開日】平成25年6月10日(2013.6.10)
【国際特許分類】
【出願番号】特願2011−257031(P2011−257031)
【出願日】平成23年11月25日(2011.11.25)
【出願人】(000006633)京セラ株式会社 (13,660)
【Fターム(参考)】
【公開日】平成25年6月10日(2013.6.10)
【国際特許分類】
【出願日】平成23年11月25日(2011.11.25)
【出願人】(000006633)京セラ株式会社 (13,660)
【Fターム(参考)】
[ Back to top ]