(57)【要約】      （修正有）【課題】携帯デバイスのディスプレイに表示されるビューの向きを設定するための方法、システムおよびコンピュータプログラムを提供する。【解決手段】方法は、ディスプレイの正面のエリアの画像を取得するオペレーションを含む。さらに、前記ディスプレイの正面のエリアに人が位置するとき、人の顔の特徴の位置を特定する。この方法は、前記特徴の位置にもとづいて前記顔の軸を決定する別のオペレーションを含む。さらに、前記顔の軸に実質的に対応するように、携帯デバイスの前記ディスプレイ上に表示されるビューの向きを設定する。【選択図】図１７
2011258191.tif 000002
【特許請求の範囲】
【請求項１】
携帯デバイスのディスプレイに表示されるビューの向きを設定するための方法であって、
前記ディスプレイの正面のエリアの画像を取得するステップと、
前記ディスプレイの正面のエリアに人が位置するとき、人の顔の特徴の位置を特定するステップと、
前記特徴の位置にもとづいて前記顔の軸を決定するステップと、
前記顔の軸に実質的に対応するように、前記携帯デバイスの前記ディスプレイ上に表示されるビューの向きを設定するステップとを含むことを特徴とする方法。
【請求項２】
前記ビューの向きを設定するステップは、
前記ビューの水平軸が実質的に前記ディスプレイの縦または横軸に対応するように、かつ、前記顔の水平軸と前記ビューの水平軸の間の角度の絶対値が４５度以下であるように、ビューの向きを設定するステップをさらに含むことを特徴とする請求項１に記載の方法。
【請求項３】
前記顔の特徴の位置が変化しているとき、前記ビューの向きの設定を続けるステップをさらに含むことを特徴とする請求項１に記載の方法。
【請求項４】
前記顔の特徴は前記人の目と鼻を含むことを特徴とする請求項１に記載の方法。
【請求項５】
前記顔の軸は両目を横切り、前記鼻は前記軸の下側に位置することを特徴とする請求項４に記載の方法。
【請求項６】
前記顔の特徴は目と口を含むことを特徴とする請求項１に記載の方法。
【請求項７】
前記顔の特徴は前記人の目を含み、前記軸を決定するステップはさらに、前記両目の位置と重力を用いて前記軸を計算するステップを含むことを特徴とする請求項１に記載の方法。
【請求項８】
前記ビューの向きを設定するステップは、デバイス慣性情報と前記顔の特徴の位置とを用いて前記ビューの正しい向きを決定するステップをさらに含むことを特徴とする請求項１に記載の方法。
【請求項９】
前記人の両目を含む顔の特徴の位置を追跡し続けるステップと、
前記両目のまばたきを検出するステップと、
前記両目のまばたきの検出に応答して、前記携帯デバイスにおいてオペレーションを実行するステップとをさらに含むことを特徴とする請求項１に記載の方法。
【請求項１０】
前記ビューの向きを設定するステップは、
前記ビューの水平軸が前記顔の水平軸に対応するようにビューの向きを設定するステップをさらに含むことを特徴とする請求項１に記載の方法。
【請求項１１】
前記ビューは、前記デバイスの向きに対して相対的な向きをもつ少なくとも１つのオブジェクトを含み、前記ビューは、前記顔の水平軸に対して相対的な向きをもつ少なくとも１つのオブジェクトを含むことを特徴とする請求項１０に記載の方法。
【請求項１２】
ディスプレイと、
前記ディスプレイの正面のエリアの画像を取得するカメラと、
前記ディスプレイの正面のエリアに位置する人の顔の特徴の位置を特定し、前記特徴の位置にもとづいて前記顔の軸を決定するプレイヤ位置決定モジュールとを含み、
前記ディスプレイに表示されたビューの向きは、前記顔の軸に実質的に対応することを特徴とする携帯デバイス。
【請求項１３】
前記携帯デバイスは、ゲームコントローラ、携帯ゲームデバイス、携帯電話、カメラ、タブレット、ラップトップ、携帯情報端末（ＰＤＡ）、携帯音楽プレイヤ、携帯ビデオプレイヤ、リモコン、デジタルフォトフレーム、ビデオカメラ、携帯テレビ、ＧＰＳ（global positioning system）デバイスからなるグループから選択されることを特徴とする請求項１２に記載の携帯デバイス。
【請求項１４】
前記カメラは赤外線センサであり、前記顔の特徴は前記人の目を含み、前記目は前記赤外線センサで検出されることを特徴とする請求項１２に記載の携帯デバイス。
【請求項１５】
前記顔の特徴は前記人の鼻と口を含むことを特徴とする請求項１２に記載の携帯デバイス。
【請求項１６】
前記顔の特徴は、顔の輪郭を示す卵形を含み、前記顔の軸は前記卵形の短軸に対応することを特徴とする請求項１２に記載の携帯デバイス。
【請求項１７】
コンピュータ読み取り可能な記録媒体に格納された、１以上のプロセッサによって実行される、携帯デバイスのディスプレイに表示されるビューの向きを設定するためのコンピュータプログラムであって、
前記ディスプレイの正面のエリアの画像を取得するためのプログラムインストラクションと、
前記ディスプレイの正面のエリアに人が位置するとき、人の顔の特徴の位置を特定するためのプログラムインストラクションと、
前記特徴の位置にもとづいて前記顔の軸を決定するためのプログラムインストラクションと、
前記顔の軸に実質的に対応するように、前記携帯デバイスの前記ディスプレイ上に表示されるビューの向きを設定するためのプログラムインストラクションとを含むことを特徴とするコンピュータプログラム。
【請求項１８】
前記ビューの向きを設定するためのプログラムインストラクションは、
前記ビューの水平軸が実質的に前記ディスプレイの縦または横軸に対応するように、かつ、前記顔の水平軸と前記ビューの水平軸の間の角度の絶対値が４５度以下であるように、ビューの向きを設定するためのプログラムインストラクションをさらに含むことを特徴とする請求項１７に記載のコンピュータプログラム。
【請求項１９】
前記顔の特徴は、前記人が眼鏡をかけていないときは、前記人の目を含み、前記人が眼鏡をかけているときは、前記人の眼鏡を含むことを特徴とする請求項１７に記載のコンピュータプログラム。
【請求項２０】
前記顔の特徴は、前記顔の両耳に着けられたヘッドセットを含むことを特徴とする請求項１７に記載のコンピュータプログラム。
【請求項２１】
前記カメラは赤外線センサであり、前記人が着けているヘッドセットは赤外光を照射し、前記ヘッドセットは前記赤外センサで検出されることを特徴とする請求項１７に記載のコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
［優先権の主張］
本願は、２０１０年６月４日に出願された「SELECTING VIEW ORIENTATION IN PORTABLE DEVICE VIA IMAGE ANALYSIS」と題する米国仮特許出願第６１／３５１，７８０号の優先権を主張する。この仮出願は参照によりここに組み入れる。
【０００２】
［技術分野］
本発明は、情報を表示するための方法およびシステムに関し、特に、携帯デバイスのディスプレイ上に表示されたビューの向きを設定するための方法とシステムに関する。
【背景技術】
【０００３】
増え続ける携帯デバイスの多用途性を改善するために、メーカーは、より高速なＣＰＵ、より大きなディスプレイ、無線オプション、新しい入力方法、長持ちするバッテリ、センサなどの改良された構成要素を携帯デバイスに持たせている。この多用途性および増大した能力のおかげで、これらのデバイスは、かつては大きなシステム、パソコンまたはラップトップでしか実行できなかった多数のアプリケーションにおいても用いることができる。
【０００４】
典型的な携帯デバイスは１以上のディスプレイを有し、最大のディスプレイや長方形の形状をしている。昔の携帯電話は、電話、連絡先管理、またはゲームプレイのような限られた数のアプリケーションしか実行できなかった。これらのアプリケーションは、電話をもつ自然な方法に対応して、ディスプレイの特定の向きに対して設計されている。たとえば、電話は縦方向にもつことが想定されていたため、ディスプレイはいつも縦長モードで情報を表示していた。しかしながら、ウェブブラウザや電子メールクライアントなどの携帯デバイスの新しいアプリケーションや独立したベンダーからの急増する新しいアプリケーションを用いる場合、デバイスが一つの向きをもつだけでは、多くのアプリケーションに対して最適な働きをしない。さらに、ユーザは、ウェブページを縦長または横長モードで見るなど、同じアプリケーション内で異なるビューを持ちたいこともある。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ある携帯デバイスはジャイロスコープや加速時計などの慣性センサをもち、携帯デバイスはそれによってポジションの変化を検出することができる。携帯デバイスは、ユーザがいつデバイスを回転させ、それに応じてディスプレイ上のビューを変化させるかを検出する。この検出は慣性または重力測定にもとづくため、ディスプレイのポジションの変化の検出は多くの状況で失敗する。たとえば、携帯デバイスのプレイヤが仰向けになっていたり、携帯デバイスをテーブルに置いている場合、慣性測定は、ディスプレイにおけるビューに対する最良の向きを決定するために適切な情報を提供しない。
【０００６】
本発明の実施の形態はこのようなコンテキストで考えられた。
【課題を解決するための手段】
【０００７】
本発明の実施の形態は、携帯デバイスのディスプレイに表示されるビューの向きを設定するための方法、システムおよびコンピュータプログラムを提供する。携帯デバイスは、ディスプレイとユーザの方を向くカメラを含み、ユーザに関するデバイスの向きは、リアルタイムで取得されるユーザの顔のビデオ画像から決定することができる。カメラからのビデオ画像は、顔認識アルゴリズムを用いて解析され、デバイスにおけるビューの向きは、両目間の線、目から鼻への線、目から口への線、鼻から口への線などのプレイヤの特徴にもとづいて決定される。
【０００８】
当然のことであるが、本発明は、プロセス、装置、システム、デバイス、コンピュータ読み取り可能なメディア上の方法など多数の方法で実装することができる。本発明の独創性のあるいくつかの実施の形態を以下に述べる。
【０００９】
ある実施の形態において、方法は、前記ディスプレイの正面のエリアの画像を取得するオペレーションを含む。さらに、前記ディスプレイの正面のエリアに人が位置するとき、人の顔の特徴の位置を特定する。この方法は、前記特徴の位置にもとづいて前記顔の軸を決定する別のオペレーションを含む。前記顔の軸に実質的に対応するように、前記携帯デバイスの前記ディスプレイ上に表示されるビューの向きを設定する。
【００１０】
別の実施の形態において、携帯デバイスは、ディスプレイとカメラとプレイヤ位置決定モジュールとを含む。カメラは、前記ディスプレイの正面のエリアの画像を取得する。プレイヤ位置決定モジュールは、前記ディスプレイの正面のエリアに位置する人の顔の特徴の位置を特定する。さらに、プレイヤ位置決定モジュールは、前記特徴の位置にもとづいて前記顔の軸を決定する。前記ディスプレイに表示されたビューの向きは、前記顔の軸に実質的に対応するように選択される。
【００１１】
さらに別の実施の形態では、コンピュータ読み取り可能な記録媒体に格納されたコンピュータプログラムは、１以上のプロセッサによって実行されるとき、携帯デバイスのディスプレイに表示されるビューの向きを設定する。このコンピュータプログラムは、前記ディスプレイの正面のエリアの画像を取得するためのプログラムインストラクションを含む。さらに、前記ディスプレイの正面のエリアに人が位置するとき、人の顔の特徴の位置を特定する。コンピュータプログラムはまた、前記特徴の位置にもとづいて前記顔の軸を決定するためのプログラムインストラクションと、前記顔の軸に実質的に対応するように、前記携帯デバイスの前記ディスプレイ上に表示されるビューの向きを設定するためのプログラムインストラクションとを含む。
【００１２】
本発明の他の態様は、これから述べる詳細な説明から明確になる。添付の図面と関連づけて、本発明の原則を例によって説明する。
【図面の簡単な説明】
【００１３】
本発明は、添付の図面に関連づけてこれから述べる詳細な説明を参照することでもっとも良く理解することができる。
【００１４】
【図１】図１は、ある実施の形態にしたがって、横になって携帯デバイスを使用しているプレイヤを示す。
【００１５】
【図２】図２は、ある実施の形態にしたがって、テーブルの上に置いてある携帯デバイスと相互作用するプレイヤを示す。
【００１６】
【図３Ａ】図３Ａは、ある実施の形態にしたがって、携帯デバイスの背面を床にほぼ平行にして携帯デバイスをもっているユーザを説明する。
【００１７】
【図３Ｂ】図３Ｂは、ある実施の形態にしたがって、デバイスが床にほぼ平行であるとき、デバイスの向きを変えることによる影響を説明する。
【００１８】
【図４】図４は、ある実施の形態にしたがって、プレイヤの姿勢にもとづいてビューの向きを選択する方法を説明する。
【００１９】
【図５Ａ】図５Ａは、ある実施の形態にしたがって、ユーザがデバイスのポジションを変えるときにビューの向きを調整する様子を説明する。
【図５Ｂ】図５Ｂは、ある実施の形態にしたがって、ユーザがデバイスのポジションを変えるときにビューの向きを調整する様子を説明する。
【００２０】
【図６】図６は、ある実施の形態にしたがって、プレイヤの顔の特徴にもとづいたビューの向きの選択を説明する。
【００２１】
【図７】図７は、ある実施の形態にしたがって、第２の姿勢にもとづいたビューの向きの選択を説明する。
【００２２】
【図８】図８は、ある実施の形態にしたがって、別の顔の特徴の検出を説明する。
【００２３】
【図９】図９は、ある実施の形態にしたがって、プレイヤの顔の輪郭を検出するための実施の形態を説明する。
【００２４】
【図１０】図１０は、ある実施の形態にしたがって、赤外光とプレイヤの目を検出するための赤外線センサを用いる処理を説明する。
【００２５】
【図１１】図１１は、ある実施の形態にしたがって、プレイヤの眼鏡の検出を説明する。
【００２６】
【図１２】図１２は、ある実施の形態にしたがって、プレイヤが着けているヘッドセットの検出を説明する。
【００２７】
【図１３】図１３は、ある実施の形態にしたがって、プレイヤがうつぶせになっているときのビュー選択を説明する。
【００２８】
【図１４Ａ】図１４Ａは、ある実施の形態にしたがって、ディスプレイと顔の方を向いたカメラとをもったフリースタンドのデバイスにおけるビュー選択を説明する。
【図１４Ｂ】図１４Ｂは、ある実施の形態にしたがって、ディスプレイと顔の方を向いたカメラとをもったフリースタンドのデバイスにおけるビュー選択を説明する。
【００２９】
【図１５Ａ】図１５Ａは、ある実施の形態にしたがって、携帯デバイスをもつドライバにとってのビュー選択を説明する。
【図１５Ｂ】図１５Ｂは、ある実施の形態にしたがって、携帯デバイスをもつドライバにとってのビュー選択を説明する。
【００３０】
【図１６Ａ】図１６Ａは、ある実施の形態にしたがって、ビューがプレイヤの顔に関してしっかりと固定される携帯デバイスを示す。
【図１６Ｂ】図１６Ｂは、ある実施の形態にしたがって、ビューがプレイヤの顔に関してしっかりと固定される携帯デバイスを示す。
【００３１】
【図１７】図１７は、本発明のある実施の形態にしたがって携帯デバイスのディスプレイに表示されるビューの向きを設定するための処理フローを示す。
【００３２】
【図１８】図１８は、本発明の実施の形態を実装するために使用されるデバイスのアーキテクチャを説明する。
【発明を実施するための形態】
【００３３】
以下の実施の形態は、携帯デバイスのディスプレイに表示されるビューの向きを設定するための方法と装置を記述する。本発明の実施の形態は、携帯デバイスのユーザの方を向いている携帯デバイスのカメラで撮られたビデオ画像を解析する。顔、頭、または頭の周りの領域の１以上の特徴を検出し、プレイヤ（またはプレイヤの顔）の位置と、プレイヤまたはプレイヤの顔の位置に最もよく合う携帯デバイスの画面におけるビューの向きとを決定する。さらに、プロセスは、携帯デバイスに統合されたハードウェアとして、携帯デバイスのプロセッサで実行されるコンピュータ実装された方法として、あるいは特別にプログラムされたハードウェアにおいて提供されるものとして、具体的に実現することができる。たとえば、オペレーションは、アプリケーションに特化したチップ上にコードされたロジックとして定義することができる。あるいは、あるオペレーションはチップ上で処理し、他のオペレーションは携帯デバイスの一般的なプロセッサ上で処理することができる。
【００３４】
もっとも、当該技術分野の当業者にとって、これらの具体的な詳細事項の一部またはすべてがなくても本発明を実施できることは明らかである。他の例では、本発明を必要以上に不明瞭にしないように、周知のプロセスオペレーションは詳細には記載していない。
【００３５】
図１は、ある実施の形態にしたがって、横になって携帯デバイス１０４を使用しているプレイヤ１０２を示す。携帯デバイス１０４は縦長または横長モードでコンテンツを表示することができる。携帯デバイス１０４はアルゴリズムを用いて、ユーザにとってコンテンツを表示するための最良または最適な方法は何か決定する。携帯デバイス１０４が慣性または重力測定にアルゴリズムの基礎を置くなら、そのアルゴリズムはいくつかのシナリオのもとでは失敗するであろう。典型的には、そのアルゴリズムは、ユーザが立っているか、座りながらデバイスを持っていることを仮定している。
【００３６】
もしユーザが立っていてユーザの手に横向きに携帯デバイスを持っているなら、デバイスは、横長フォーマットでコンテンツを表示すべきであると正しく決定する。しかし、ユーザが図１に示すように横になっており、デバイスを同じように持っているなら、デバイスは誤ってコンテンツを縦長フォーマットで表示するかもしれない。デバイスがモーションセンサを用いてデバイスに関して重力の方向を決定するとき、この問題が発生する。これらのデバイスは、重力に関してコンテンツの向きを調整するが、ユーザに関しては調整しない。
【００３７】
また、これらのデバイスは逆の影響も受ける。デバイスが重力に関して正しく傾けられていないなら、デバイスは縦長モードに切り替わらないことがある。本発明の実施の形態は、ユーザの目または顔の位置を検出し、情報を表示するための最適な方法を決定する。
【００３８】
本発明の実施の形態は、携帯ゲームデバイスなど、ある携帯デバイスに対して記載されるが、本発明の原則は、ゲームコントローラ、携帯ゲームデバイス、携帯電話、カメラ、タブレット、ラップトップ、携帯情報端末（ＰＤＡ）、携帯音楽プレイヤ、携帯ビデオプレイヤ、リモコン、デジタルフォトフレーム、ビデオカメラ、携帯テレビ、ＧＰＳ（global positioning system）デバイスなど、任意のタイプのデバイスで用いることができることに留意すべきである。
【００３９】
図２は、ある実施の形態にしたがって、テーブルの上に置いてある携帯デバイス２０４と相互作用するプレイヤ２０２を示す。携帯デバイス２０４が重力に対する関係を調べるなら、テーブル上でデバイスをどのように向けても、重力に関しては同じ関係が測定されるであろう。デバイスをテーブル上で回転させても、重力に対する関係は変化しないから、デバイスはビューの向きを変えることはなく、デバイスはディスプレイにおけるビューの向きを切り替えることができない。
【００４０】
説明上の目的のために、携帯デバイスは、４つの異なるモードでディスプレイ上でビューを提示する機能をもつと仮定する。ディスプレイの任意の辺を北側に割り当て、他の３つの辺を東、南、西に割り当てるなら、携帯デバイスはビューの上辺をディスプレイにおける北、南、東、または西側のいずれかに対応づけてディスプレイ上にビューを提示することができる。このことは、２つのモードは縦長モードであり、一方は他方を１８０度回転したものであり、残りの２つのモードは横長モードであることを意味する。あるデバイスは縦長と横長の２つのモードだけをもつ。あるいは３つのモードだけをもち、一つの辺はビューの上辺として用いることができない。さらに、他のデバイスは、たとえば、ビューが９０度ではなく４５度で分けられており、８つの異なるモードをもつなど、より多くの表示モードをもってもよい。さらに、あるデバイスは、ディスプレイの位置に無関係に任意の向きにシーンを表示し、プレイヤの姿勢だけをもとにその向きを決めてもよい。特に注意しない限り、本発明の原則は、以下ではビューの向きの選択に対して４つの可能性をもつデバイスを参照して説明されるが、本発明の原則は、ありうる任意の数の表示の向きをもつデバイスに適用することができる。
【００４１】
図３Ａは、ある実施の形態にしたがって、携帯デバイスの背面を床にほぼ平行にして携帯デバイスをもっているユーザを説明する。図３Ａおよび図３Ｂは、ユーザが携帯デバイス３０２を床にほぼ平行にして持っている、すなわち、ディスプレイ３０４の表面が床にほぼ平行であるとき、ビューの向きを正しく設定することの問題を説明する。図３Ｂでは、ディスプレイ３０４は横長モードでチャートを表示している。図３Ｂは、ある実施の形態にしたがって、デバイスが床にほぼ平行であるとき、デバイスの向きを変えることによる影響を説明する。図３Ｂでは、ユーザは、ビューが縦長モードに切り替わることを期待して、デバイス３０２を９０度回転させた。しかしながら、携帯デバイスは床にほぼ平行であるため、デバイスは重力に関して向きをほとんど変えないから、携帯デバイス３０２の重力センサは向きの変化を検出することがない。その結果、ディスプレイ３０４は、横長モードではなく依然として縦長モードにある。ユーザがデバイスの振る舞いに慣れてくるにつれて、ユーザは、向きの変化を引き起こすために携帯デバイスを垂直ポジションに傾けることを学ぶ。ときには、ユーザはデバイスを垂直ポジションに傾け、その後、素早く水平ポジションに戻すので、携帯デバイスはビューの向きを依然として変えない。この傾けたり戻したりすることは、ユーザにとって面倒なことであり、気まぐれな携帯デバイスをもつことに対するユーザの経験は不満足なものになってしまう。
【００４２】
さらに、携帯電話のような携帯デバイス用の多くのゲームは、コマンドを入力するために、傾ける操作を用いる。たとえば、デバイスをある辺に関して上または下に傾けることによって車を運転してもよい。中立位置は決め打ちされているため、これらのデバイスは、プレイヤが真っ直ぐに座っていることを要求する。本発明の実施の形態によれば、デバイスは、プレイヤの顔の特徴を検出することによって中立位置を任意の場所に設定することができる。ゲームは、プレイヤの顔に対する相対的な位置にもとづいてディスプレイにおけるビューの向きを設定することができる。重力はファクタではないため、これらのゲームを宇宙空間でプレイすることも可能になる。
【００４３】
図４は、ある実施の形態にしたがって、プレイヤの姿勢にもとづいてビューの向きを選択する方法を説明する。携帯デバイス４０６は、ディスプレイ４１４と、ユーザの方を向いたビデオ撮影できるカメラ４０８とを含む。カメラ４０８からのビデオ画像上の顔認識ソフトウェアは、顔の向きを決定するために使うことのできる顔の１以上の特徴を検出することができる。一般に、顔認識システムは、デジタル画像またはビデオソースからのビデオフレームから人の頭の位置を自動的に特定または検証するためのコンピュータアプリケーション、ハードウェア、あるいはハードウェアおよびソフトウェアの組み合わせで定めることができる。ある実施の形態は、画像から選択された顔の特徴を顔データベースと比較する。データベースは、特徴の期待された配置にバリエーションを許容しつつ、特定の顔の特徴の識別を可能にするロジックと連結することができる。たとえば、ある人々は両目の間隔が広かったり、狭かったりする。ユーザの年齢もデータベースと相互作用するときの許容範囲に影響を与えることがある。別の実施の形態では、顔認識アルゴリズムは、対象者の顔の画像から目印や特徴を抽出することにより顔を特定する。たとえば、あるアルゴリズムは、目、鼻、頬骨、あごなどの相対的な位置、大きさ、あるいは形を解析する。そして、これらの特徴を用いて、特徴と合致する他の画像を探したり、特定の人間の特徴が存在する可能性を計算した後、それらの位置を計算する。さらに別の実施の形態では、あるアルゴリズムを用いて、顔の画像の集まりを正規化し、顔のデータを圧縮することで、顔検出のために有益な画像のデータだけを取っておく。これにより、すばやくインデックスしてサーチすることのできる顔メタデータが提供される。プローブ画像を顔データと比較することもできる。
【００４４】
ある実施の形態では、顔認識に加えて、ユーザの頭の上または回りにあるオブジェクトを用いて向きを検出してもよい。例として、これに限定しないが、眼鏡、帽子、イヤホン、ヘッドホン、シャツの襟、ネックレス、ヘアピンなどがある。これらの特徴だけ、あるいは顔の特徴と組み合わせて用いて、携帯デバイスの画面に対する相対的な向きおよび／または姿勢を検出することもできる。
【００４５】
ここで使われる顔認識とは、目、鼻、口などのプレイヤの顔の特徴を検出することを指すことに留意すべきである。さらに別の実施の形態では、ビューの向きを設定するために特定のユーザを現実に「認識」することは必要ではない。しかしながら、他の実施の形態は、各ユーザが携帯デバイスの使用のためのプレファレンスや他の制御を定義することを可能にするためにユーザ認識を提供することもある。したがって提示される実施の形態は、排他的または限定的に解釈すべきではなく、むしろ例示または実例と解釈すべきである。
【００４６】
検出された特徴には、１以上の目、鼻、口、耳、顔の輪郭、眼鏡などが含まれる。顔の向きは、これらの特徴のいくつかを結ぶ線、たとえば、左右の目を結ぶ線、目と鼻を結ぶ線、鼻と口を結ぶ線、目と口を結ぶ線、左右の耳を結ぶ線などにもとづいて決定することができる。
【００４７】
線４０４は、ユーザ４０２の両目を結ぶ。ビデオカメラ４０８はプレイヤ４０２の画像を取得する。プレイヤの画像はディスプレイ４１４に表示される。プレイヤ４０２は自分の手にデバイス４０６をもっていることに留意する。ここでは説明の目的のためだけに、プレイヤ４０２の絵をデバイス４０６の隣に示している。さらに、プレイヤ４１２の取得された画像がディスプレイ４１４に表示されるが、本発明の他の実施の形態は、プレイヤをディスプレイに表示しないでバックグラウンドで顔認識解析を実行し、他のアプリケーションがディスプレイ４１４に何を表示するかを決める。
【００４８】
デバイス４０６はプレイヤの両目を検出し、プレイヤの両目をつなぐ線４１０を生成する。線４１０は、プレイヤの両目を結ぶ現実の線に平行か、平行に近い。携帯デバイスは、線４１０がディスプレイ上の仮想的な水平線と平行であり、したがって、ビューの向きは横長モードで正しいと決定する。
【００４９】
説明の目的のため、ディスプレイに示されたビューの水平線は、ビューがユーザの姿勢に関してプログラムが意図するように表示されているとき、ここではディスプレイの上側の線と下側の線に平行な線とする。ディスプレイの上辺は水平線よりも上にあり、ディスプレイの下辺は水平線よりも下にある。多くの場合、ビューの水平線は、ディスプレイに表示されたものの水平線に対応する。たとえば、ユーザが自然のシーンを見ており、そのシーンを撮ったカメラが床に平行に設置されていた場合、ビューにおける水平線はシーンにおける水平線に対応する。しかし、カメラが４５度の角度で自然のシーンを撮っていたなら、ビューの実際の水平線はシーンの水平線に対応しない。説明上の目的のために、ビューの水平線はディスプレイ上の向きを定めるとする。水平線は、水平線の上にあるものと水平線の下にあるものに関する情報を伝達するものでもあることに留意すべきである。このようにして、ビューの向きは正しい水平線をもつが上下逆さまであり、ビューの向きはディスプレイにおける表示に対しては正しくないということがある。
【００５０】
顔認識は異なる周波数で実行される。たとえば、顔認識をビデオフレーム毎、１０フレーム毎、毎秒、その他で実行することができる。顔認識解析の周波数は、要求される処理量とデバイスの応答性に依存する。解析をより頻繁にすればするほど、要求されるコンピューティングリソースの量が多くなり、デバイスが位置を変えるときにビューの向きの要求される変化を検出するためにデバイスがより高速になる。ある実施の形態では、ビューの向きにおける変化の要求が数フレームにわたって検出されるまではビューの向きを変えない。これにより、ユーザがゲームをプレイしており、以前の姿勢に戻る前にデバイスを急に動かす（これは、プレイヤがデバイスの向きを変えることを意図していなかったことを意味する）とき、ビューを切り替えてしまう問題を避けることができる。別の実施の形態では、デバイスが向きの変化が必要であることを検出したときは、顔認識周波数を増加させる。これにより、誤検出を避けることができる。
【００５１】
図５Ａ〜５Ｂは、ある実施の形態にしたがって、ユーザがデバイスのポジションを変えるときにビューの向きを調整する様子を説明する。図５Ａでは、カメラ５０６はカメラの正面のエリアのビデオ画像を取得する。この画像にはプレイヤの顔が含まれる。デバイス５０２は縦向きのポジションにある。デバイス５０２の顔認識アルゴリズムはカメラ５０６からのビデオ画像を解析し、プレイヤの両目の位置を検出する。その結果、デバイス５０２はビュー５０４を縦長モードで表示する。
【００５２】
プレイヤがデバイスを９０度回転させると、画像解析は、デバイスに関して両目の位置が変化したことを検出し、ビューは、デバイスの回転に応答して９０度回転する。たとえデバイス５０４が床にほとんど平行に保たれていても、ビュー５０４は図５Ｂでは横長モードで表示される。これは、アルゴリズムが重力測定に依存していないからである。
【００５３】
プレイヤが別の人にデバイスを向けた場合もビューの向きが調整されることがあることに留意すべきである。たとえば、ユーザが写真を見ていて、別の人に写真を見せたい場合、プレイヤは他の人にディスプレイを向けることができる。顔検出アルゴリズムは他人の顔を検出し、画像をそれに合わせて表示する。
【００５４】
図６は、ある実施の形態にしたがって、プレイヤの顔の特徴にもとづいたビューの向きの選択を説明する。ユーザに関するデバイス６０４の角度は大まかに、顔の特徴線の一つとビデオ画像の軸を進む仮想的な線とがなす角度として計算することができる。デバイス上のコンテンツの向きは、この計算された角度に最も近い右方向の角度を見つけることで選択することができる。また、ビューの水平線に最も近い角度を選択することにより、この向きを検出することができる。この後者のアプローチを以下に述べるが、本発明の原則は、ビューの垂直軸に適用したり、ユーザの顔の別の軸に適用することもできる。
【００５５】
プレイヤ６１２の画像を解析した後、携帯デバイスは、プレイヤの目と口を検出しており、それは目と口を×印で示した肖像シンボル６２０で表現されている。線６１６は、両目を結ぶことで形成される。線６１６は画像平面を二つの半平面に分ける。口の位置を用いて、いずれの半平面が両目よりも上の頭の部分を含むものであり、いずれの半平面が口を含むものであるかを決定する。線６１６の正の方向は、ここでは、プレイヤの右目（画像では左に現れる）からプレイヤの左目（画像では右に現れる）に進む方向とする。別の実施の形態では、口は検出されず、重力を用いて、プレイヤが立っていると仮定して、どちらの方向が上か下かを決定する。
【００５６】
この方法は、線６１６とディスプレイの軸に平行な線との間の角度を計算し、顔とディスプレイの相対的な位置を決定し、ディスプレイ６０４におけるビュー６０６に対して最適な向きを選択する。ディスプレイ６０４は軸６０８および６１０をもち、これらはそれぞれ線６１８および６１４と平行である。ディスプレイ６０４におけるビューに対して４つの向きがありうるため、４つの角度が計算される。ここで、各角度は、両目を結ぶ線が考えうるビュー水平線からどれくらい離れているかを示す。このようにして、線６１６の正の部分から線６１８および６１４の正および負の方向に向けて角α１〜α４が計算される。
【００５７】
図６の例では、α４はα１〜α４の中で最も小さい。その結果、線６１４がビュー６０６に対する水平線として選ばれる。ここで、線６１４の正の方向はα４に関連づけられた方向に対応するから、ビューの向きを右方向に設定することができ、上下逆さまになることはない。軸６１０は線６１４に平行であり、軸６１０がビューの向きに対する水平線として選択される。
【００５８】
この処理をリアルタイムで実行することにより、携帯デバイスは、いつでもユーザに表示されるコンテンツの正しい向きを維持することができる。画像認識にもとづいたビューの方向付けにより、モーションセンサ（ジャイロスコープ、加速時計）を用いる既存システムと比較して、よりロバストなシステムを提供できる。
【００５９】
ある実施の形態では、補間を用いて、顔の特徴をより良く決定する。数枚の画像からの画像データを用いて顔認識を改良するために、数枚の画像からの情報を相互に関連付ける。これにより、特に微光または逆光の環境のような難しい状況において、顔認識が改良される。
【００６０】
図７は、ある実施の形態にしたがって、第２の姿勢にもとづいたビューの向きの選択を説明する。角度α４がすべての角度α１〜α４の中で最も小さいから、プレイヤの目を結ぶ線６１６は線６１８に最も近い。したがって線６１８に平行であるディスプレイの短辺方向の軸６０８がビューの水平線になるように、ビュー６０６に対する向きを設定する。ここで、水平線より上の半平面は、プレイヤの額が位置する半平面に対応する。言い換えれば、水平線の正の方向は、左から右に向かう方向として定義され、線６１６の正の方向について最小の角度αを形成する。
【００６１】
図６および図７で説明した実施の形態は、プレイヤの顔の特定の特徴とディスプレイの位置にもとづいたビューの向きの計算例である。他の実施の形態は異なる特徴を用いるかもしれないし、異なる角度を計算するかもしれないが、依然として何らかの計算を実行する。たとえば、顔の特徴は、両目をつなぐ線、鼻と口をつなぐ線、目から口への線などによって定められてもよい。ディスプレイの位置は長辺方向の軸、短辺方向の軸、ディスプレイの左上の隅からディスプレイの右下の隅への対角線、ディスプレイの辺のいずれか、デバイスの辺のいずれかなどに関して比較される。ある場合、最も近い角度は、上述のように、ある参照線に関して調べられるが、他の場合は、異なる角度が用いられ、垂直軸と比較するときは９０度、目から口への線を用いるときは３０度のようなより好ましい角度が用いられる。したがって、図６および図７で説明した実施の形態は、排他的または限定的に解釈すべきではなく、むしろ例示または実例と解釈すべきである。
【００６２】
図８は、ある実施の形態にしたがって、別の顔の特徴の検出を説明する。図８において、携帯デバイスはユーザの目と口を検出する。ビューの向きを決定するために、両眼を結ぶ線と、左右それぞれの目と口を結ぶ線とが生成される。携帯デバイスにおけるプレイヤ位置決めモジュールがこれらの線を用いて、プレイヤの姿勢を決定し、図６および図７を参照して前述したように、ディスプレイに対する最も適切な向きを選択する。図６および図７では、プレイヤの両眼に関してただ一つの計算を実行した。ある実施の形態では、方向を選択するため２以上の計算を実行する。たとえば、一つの計算が右目と口を結ぶ線に関して実行され、別の計算が左目と口を結ぶ線に関して実行される。そして、両方の計算の結果を評価して（結果を平均するなど）最適な向きを選択する。
【００６３】
別の実施の形態では、目と鼻が検出される。両眼を結ぶ第１の線を計算し、次に第１の線と直交し、鼻を通る第２の線を計算する。図６および図７を参照して述べたアルゴリズムに似たアルゴリズムを用いてビューの向きを計算する。
【００６４】
図９は、ある実施の形態にしたがって、プレイヤの顔の輪郭を検出するための実施の形態を説明する。顔認識アルゴリズムは、プレイヤの顔の位置を決定するために画像を解析する。顔の輪郭を決定した後、顔の位置を近似する幾何学的な図形を定める。ある実施の形態では、顔の輪郭には、輪郭によく合う卵形を割り当てられる。そして、卵形の対称軸である長軸および短軸を用いて向きを選択する。たとえば、短軸は両眼を結ぶ線に平行であるはずで、図６を参照して説明したのと同じ方法を用いる。卵形の長軸の対称軸を代わりに用いることができ、同様に幾何学的方法を用いて向きを決めることができる。別の実施の形態では、顔の輪郭を近似するために楕円を使う。
【００６５】
顔の輪郭の代わりに、頭の輪郭を用いることもできる。短い髪のユーザの場合、顔の輪郭と頭の輪郭は似ているが、図９の人物のように、長い髪のユーザの場合、顔の輪郭は全く異なる。さらに別の実施の形態では、正確さを向上させるために、顔の輪郭は、目、鼻、口などの顔の他の特徴についての他の情報と併用されるか、頭の輪郭と併用される。また、向き決定アルゴリズムは照明条件にもとづいて変わる。たとえば、プレイヤの背後からの逆光がある状況では、顔の輪郭または他の顔の特徴よりも頭の輪郭を検出することが容易である。この場合、少なくとも照明条件が改善するまで、顔の輪郭を用いて方向を選択することができる。
【００６６】
図１０は、ある実施の形態にしたがって、赤外光とプレイヤの目を検出するための赤外線センサを用いる処理を説明する。携帯デバイスは、赤外光放射器と両眼からの反射１００２を検出する赤外線センサとを含む。これらの二つのドットを用いて、前述の方法と似た方法で向きを計算する。
【００６７】
目の光沢のある表面のおかげで赤外光の反射をセンサが検出しやすくなる。同様に、ユーザの眼鏡は赤外光の反射を検出しやすくするが、光は、左右のそれぞれの目に対して単なるドットとして反射するのではなく、円またはそれに近い幾何学的な図形として反射する。
【００６８】
別の実施の形態では、赤外光の代わりに、他のタイプの光を用いることができる。たとえば、携帯デバイス上のＬＥＤからの光や、ディスプレイが放射する光、フラッシュ光などである。顔の認識がディスプレイからの反射にもとづいているとき、ディスプレイ上の光景が暗く、そのため目またはユーザの眼鏡から反射しうる光が欠如している場合は、向き決定アルゴリズムは一時的に中断してもよい。
【００６９】
図１１は、ある実施の形態にしたがって、プレイヤの眼鏡の検出を説明する。ユーザが眼鏡１５２をかけているとき、目を検出するのは難しいか、眼鏡に色がついていると不可能ですらある。この場合、携帯デバイスは眼鏡の幾何学形状を検出し、その幾何学形状を用いてユーザの顔の向きを計算する。多くの場合、眼鏡のガラス表面を検出することができ、計算上の目的のために眼鏡の各ガラス面に起因する長方形の形状が検出される。眼鏡はプレイヤの顔に真っ直ぐに置かれていると仮定すると、二つの長方形の中央を結ぶ線が両眼をつなぐ線と実質的に平行であるだろうから、前述したのと同じ手続きにしたがって、その線を、ビューの向きを決定するために使うことができる。他の実施の形態では、ガラス面を近似するために、円、卵形、楕円、正方形など他の幾何学的な図形を用いることができる。
【００７０】
髪の毛が眼鏡の一部を覆っていることがあることに留意すべきである。この場合、アルゴリズムは、見えているガラス面にもとづいてガラス面の位置を近似する。たとえば、右のガラス面が完全に見えており、左のガラス面が髪の毛で覆われている場合、アルゴリズムは右のガラス面の形状を検出し、それからその形状を用いて、一部が見えない左のガラス面がどこにあるかを決定する。一般に、各ガラス面の下側の部分は覆われていないだろうから、アルゴリズムは、検出された表面の下側の境界線にもとづいてガラス面の位置を設定する。
【００７１】
図１２は、ある実施の形態にしたがって、プレイヤが着けているヘッドセットの検出を説明する。ある実施の形態では、画像解析によってヘッドセット１６４の検出が可能である。耳を覆うヘッドセットの左サイド１６４と右サイド１６６を結ぶ線が形成される。その後、この線を用いてプレイヤの頭の位置を見積もる。ある実施の形態では、ヘッドセットの位置は、ユーザの位置の検出可能性を改善するために他の顔の特徴と結合されている。
【００７２】
別の実施の形態では、ヘッドセットはイヤーカバー上に赤外光をもち、系デバイスの赤外線センサまたはカメラを用いてヘッドセットの赤外光の位置を検出する。
【００７３】
別の実施の形態では、ヘッドセットの動きを追跡するために加速時計がヘッドセットに組み込まれる。この情報は、ヘッドセットの動きの追跡を統合し、それにしたがってディスプレイの向きを設定するために携帯デバイスと共有される。追跡情報は、ミニジャック通信との帯域共用によって通信される。もっとも無線通信や赤外線通信など他の任意の通信メカニズムを用いることもできる。
【００７４】
図１３は、ある実施の形態にしたがって、プレイヤがうつぶせになっているときのビュー選択を説明する。この実施の形態では、携帯デバイスはプレイヤの顔の特徴を追跡している。携帯デバイスは重力測定に頼っていないため、携帯デバイスはプレイヤの姿勢に対してディスプレイの最適な向きを選択することができる。
【００７５】
ある実施の形態では、携帯デバイスは、顔を用いてなされたアクションを追跡することもできる。たとえば、目の長いまばたきは、ウインドウを閉じたり、次のスライドを表示するなどのコマンドを実行するために検出される。携帯デバイスが顔の位置と顔の位置の変化を検出することができる限り、他のアクションを入力として用いることもできる。たとえば、頭を左に回すことにより、ビューを横方向にスクロールすることができる。うなづくことにより、ビューを下にスクロールすることができる。頭の動きなしで目だけを用いて行うアクションでさえ、入力として用いることができる。左を見ることでゲームのシーンを左にスクロールしたり、見上げることでメニューを開いたり、目を長く閉じることでゲームを中断するなどである。
【００７６】
携帯デバイスが携帯デバイスの異なる側面に二つのディスプレイと二つのカメラをもち、対応するディスプレイの正面のエリアを各カメラが撮影するならば、ユーザがどちらのディスプレイを見ているかを検出することができる。この場合、携帯デバイスはこの情報を用いて、見ていない方のディスプレイをオフにするか、薄暗くしてもよい。携帯デバイスが後でユーザがディスプレイを変えたことを検出するならば、オフにされたディスプレイをオンにし、オンであったディスプレイはオフにするか、薄暗くする。ある実施の形態では、携帯デバイスがデバイスの各側面に一人のユーザを検出するなら、両方のディスプレイを同時にオンにすることができる。たとえば、カメラをもつユーザが別の人の写真を撮っているとき、二人とも写真がどう撮れるかを見ることができる。これを一般化して、たとえば、映画を見たり、写真アルバムを閲覧するなど、二人の異なるユーザが異なるディスプレイにおいて同じコンテンツにアクセスすることができるようにしてもよい。個々の顔認識プロセスが各側面に対して実行されるため、各ディスプレイにおけるビューの向きは互いに独立であることに留意すべきである。
【００７７】
図１４Ａ〜１４Ｂは、ある実施の形態にしたがって、ディスプレイと顔の方を向いたカメラとをもったフリースタンドのデバイスにおけるビュー選択を説明する。タブレット、ブックリーダ、ノートブックのような大きなデバイスでは、ディスプレイの向きを設定するために顔の特徴を追跡することが行われる。図１４Ａでは、タブレットデバイス１７２はスタンドをもっており、タブレットデバイスを縦長モードまたは横長モードでスタンドに設置することができる。このタブレットはユーザの方を向いたカメラをもっており、ユーザの目の位置にもとづいてディスプレイの向きを選択する。同様に、図１４Ｂでは、ブックリーダデバイス１７４は、縦長のポジションでスタンドに設置される。ブックリーダデバイス１７４はユーザが椅子に座っていることを検出するため、ブックリーダデバイス１７４は、読者におけるディスプレイのポジションに合った縦長モードにビューの向きを設定する。もしユーザがブックリーダデバイス１７４を横長ポジションに変えるなら、ブックリーダデバイス１７４は、読者の目に関する相対的な変化を検出した後、それに応じてディスプレイの向きを回転させる。
【００７８】
ある実施の形態では、ビューの向きは、ディスプレイに表示されたコンテンツまたはプレイヤの位置、あるいはその両方に基づく。たとえば、映画を表示するアプリケーションは、ビューの向きを横長だけに制限してもよい。顔認識を用いて、プレイヤが位置する場所を検出し、ビューの水平線をプレイヤの姿勢に合わせて調整する。
【００７９】
別の実施の形態では、ユーザは、ビューの向きが顔の位置に合わせて設定されるか、固定された位置に設定されるかを選択する。たとえば、ユーザは、ソファに横になって映画を見ることに決めたとする。ユーザは、プレイヤの姿勢に合わせた縦長で映画が表示されるよりは、標準的な横長ポジションで画像が表示されることを望むかもしれない。
【００８０】
テレビや大きなディスプレイをもったコンピュータのようなより大きなデバイスでは、数人の視聴者がいて、それぞれ異なる位置にいるかもしれない。デバイスはビューの向きを設定するために異なるヒューリスティクスから選択する。たとえば、ただ一人の視聴者がいて、その後、別の視聴者が加わった場合、ビューの向きは最初の視聴者に対するポジションに固定されるか、デバイスが視聴者らの姿勢の検出を試み、視聴者らの大多数に合った向きを選択するか、ビューの向きは重力だけにもとづき、視聴者らには無関係であるなどである。
【００８１】
図１５Ａ〜１５Ｂは、ある実施の形態にしたがって、携帯デバイスをもつドライバにとってのビュー選択を説明する。図１５Ａおよび１５Ｂは、携帯電話１５０２または専用ＧＰＳデバイスのようなＧＰＳ機能付きデバイスを用いているドライバを示す。ドライバは携帯電話１５０２上で地図と方向情報を観察している。図１５Ａでは、ドライバは携帯電話１５０２を直接見ており、携帯電話１５０２はドライバの目を検出し、両眼を結ぶ線１５０４を生成する。その後、ビューの向きは、前述のように線１５０４を参照して設定される。
【００８２】
図１５Ｂでは、ドライバは前方の道路を見ている。携帯電話１５０２はドライバの両眼を結ぶ線１５０６を検出する。線１５０６の方向は、図１５Ａの線１５０４を参照すると変化しているけれども、携帯電話１５０２は依然として正確な向きで情報を表示している。なぜなら携帯電話１５０２は、図６を参照して説明したように、線１５０６にもっとも近い角度を探すからである。最も近い角度は依然として、地図の縦長表示すなわち運転方向に対応する。
【００８３】
運転中にハンズフリーデバイスなしで携帯電話上でテキストを打ったり、話をすることはある州では違法になった。ある実施の形態では、携帯電話が動いていることとプレイヤの顔に対する関係が変化していないことを携帯電話が検出する。携帯電話は、慣性センサまたはＧＰＳモジュールからの情報を用いることにより、自分が動いていることを検出することができる。ユーザが自動車の中にいることを携帯電話が検出すると、携帯電話は、ハンズフリーデバイスなしでテキストを打ったり、話をするといった機能を無効にする一方、緊急通話や携帯電話上で地図を読むといった他の機能を有効にする。この機能にはペアレンタル・コントロールがかけられてもよい。システムは親に違反行為を通知することができるか、正常に停止した後、自動車がスタートしないようにすることができる。その後、親は、ドライバ等から保証を受け取った後、リモートに車をアクティブにすることができる。無効にする機構があるおかげで、車の中にいる人が、その人が乗客であってドライバではないならこれらの機能を使うことができるようになる。
【００８４】
図１６Ａ〜１６Ｂは、ある実施の形態にしたがって、ビューがプレイヤの顔に関してしっかりと固定される携帯デバイスを示す。携帯デバイスで実行される多くのゲームは、ゲームを制御するための入力として傾きを用いる。たとえば、運転ゲームでは、デバイスを右に傾けるあるいは回転させると、車のハンドルを右に切ることになり、左に傾けると、車のハンドルを左に切ることになる。
【００８５】
図１６Ａおよび１６Ｂは、ユーザがコマンドを入力するためにデバイスを傾けるときでも、ディスプレイ上のビューを安定に保つための方法を説明する。言い換えれば、ディスプレイにおけるビューが自然なビュー水平線をもつと仮定して、デバイスがわずかに左または右に傾いたとき、ビュー水平線が観察者に関して変化しないということである。
【００８６】
図１６Ａは、デバイス１６１０上のレースゲームを示す。ゲームのビューは、木１６０４、掲示板１６０２、および車１６０６を含む。図１６Ｂは、プレイヤがデバイスを約３０度回転させた後の同じゲームを示している。一般的に、デバイスのポジションには関係しているがプレイヤのポジションには関係していないオブジェクトを除いて、ビューはプレイヤに関して変化していない。たとえば、プレイヤが車を運転しており、プレイヤがデバイスをハンドルとして使用しているから、車１６０６もまた３０度回転する。デバイスが回転すると、「ハンドルが回転」し、車はデバイスとともに回転する。しかし、木１６０４や掲示板１６０２のような背景と関連づけられた他のオブジェクトは、プレイヤに関して回転していない。
【００８７】
デバイスを回転させるというこの概念は、ビューがプレイヤに結びつけられているが、デバイスには結びつけられていないということを考えることで一般化することができる。プレイヤはデバイスを３６０度ゆっくり回転させることができるが、そのときビューはプレイヤに関して変化しない。もちろん、ビューの端はディスプレイの動きに合わせるために変化しなければならない。ゲームのような動的なコンテンツの場合、欠落部を埋めるために動的なコンテンツを追加することができる。写真のような静的なコンテンツの場合、写真によって補うことができない画面の部分は白い空間のような背景で埋めることになる。
【００８８】
図１７は、本発明のある実施の形態にしたがって携帯デバイスのディスプレイに表示されるビューの向きを設定するための処理フローを示す。オペレーション１７０２において、ディスプレイの正面にあるエリアの画像を取得する。ある実施の形態において、その画像は携帯デバイスのビデオカメラで取得される。別の実施の形態では、赤外線センサを用いてディスプレイの正面のエリアについての情報を取得する。
【００８９】
さらに、この方法は、オペレーション１７０４において、人がディスプレイの正面のエリアに位置するとき、その人の顔の特徴の位置を特定する。オペレーション１７０４の後、この方法はオペレーション１７０６に進み、顔の特徴の位置にもとづいて顔の軸が決定される。決定される顔の特徴は、目、口、鼻、両眼を結ぶ線、目と鼻を結ぶ線、顔の形、プレイヤが付けている眼鏡、プレイヤの頭にあるヘッドセットなどである。
【００９０】
オペレーション１７０６の後、この方法はオペレーション１７０８に進み、携帯デバイスのディスプレイに表示されたビューの向きが設定される。この向きは、ビューが顔の一つの軸に実質的に対応するように設定される。ある実施の形態では、この向きは、両眼を結ぶ線に平行である顔の軸が、ディスプレイのビューの水平軸に最も近くなるように設定される。別の実施の形態では、携帯デバイスがプレイヤに関して動いたときに、ディスプレイに表示された光景またはその光景の少なくとも一部が安定するように、ビューの水平軸は、プレイヤの両眼を結ぶ線に正確に平行に設定される。
【００９１】
図１８は、本発明の実施の形態を実装するために使用されるデバイスのアーキテクチャを説明する。携帯デバイスは、コンピューティングデバイスであり、プロセッサ、メモリ（ＲＡＭ、ＲＯＭなど）、バッテリ、他の電源、および永久記録装置（ハードディスクなど）のようなコンピューティングデバイスにおいて存在する典型的なモジュールを含む。通信モジュールにより、携帯デバイスは、他の携帯デバイス、他のコンピュータ、サーバなどと情報を交換することができる。通信モジュールは、ＵＳＢ（Universal Serial Bus）コネクタ、通信リンク（イーサネット（商標））、超音波通信、ブルートゥース（商標）、およびＷｉＦｉを含む。
【００９２】
入力モジュールは入力ボタン、センサ、マイクロホン、タッチスクリーン、カメラ（正面、背面、深さカメラ）、カードリーダを含む。キーボードやマウスのような他の入出力デバイスを、ＵＳＢまたはブルートゥース（商標）のような通信リンクを介して携帯デバイスに接続することもできる。出力モジュールはディスプレイ（タッチスクリーン付き）、ＬＥＤ（Light-Emitting Diode）、振動触覚フィードバック、およびスピーカを含む。他の出力デバイスを通信モジュールを介して携帯デバイスに接続することもできる。
【００９３】
位置決めモジュールは異なるデバイスからの情報を用いて、携帯デバイスの向きと携帯デバイスをもっているユーザの姿勢とを計算する。これらのモジュールは、磁力計、加速度計、ジャイロスコープ、ＧＰＳ、コンパス、および任意のカメラによって取得された画像情報を含む。さらに、位置決めモジュールは、カメラとマイクロホンで取得された音または画像データを解析し、位置を計算する。ビュー生成器は、ビューを生成し、ディスプレイにおいてビューを表示するための正しい向きを選択する。
【００９４】
当然のことながら、図１８に図示した実施の形態は、携帯デバイスの例示的な実装である。他の実施の形態は、異なるモジュール、モジュールのサブセットを用いるか、異なるモジュールに関連するタスクを割り当てる。したがって、図１８に説明された実施の形態は、排他的または限定的に解釈すべきではなく、むしろ例示または実例と解釈すべきである。
【００９５】
本発明の実施の形態は、ハンドヘルドデバイス、マイクロプロセッサシステム、マイクロプロセッサベースまたはプログラマブルなコンシューマエレクトロニクス、ミニコンピュータ、メインフレームコンピュータなどを含む様々なコンピュータシステム構成で実施することができる。本発明は、有線または無線ネットワークでリンクしたリモートプロセッシングデバイスによってタスクが実行される分散コンピューティング環境にて実施することもできる。
【００９６】
上述の実施の形態を念頭において、本発明は、コンピュータシステムに格納されたデータに関わるコンピュータ実装された様々なオペレーションを用いることができることを理解すべきである。これらのオペレーションは、物理的な量の物理的な操作を要求するものである。本発明の部分を構成するここに記述されたオペレーションはいずれも有用なマシンオペレーションである。本発明はまた、これらのオペレーションを実行するためのデバイスまたは装置に関する。装置は特に要求された目的のために構成することができる。あるいは、装置は、コンピュータに格納されたコンピュータプログラムによって選択的にアクティブにされ、または構成される汎用コンピュータである。特に、様々な汎用マシンをここで教示した内容にしたがって書かれたコンピュータプログラムと併用することができる。あるいは、要求されたオペレーションを実行するためのより特化した装置を構成することがより好都合であることもある。
【００９７】
本発明はコンピュータ読み取り可能な媒体上のコンピュータ読み取り可能なコードとして具体化することもできる。コンピュータ読み取り可能な媒体は、コンピュータシステムによって読み取ることのできるデータを格納することができる任意のデータストレージデバイスである。コンピュータ読み取り可能な媒体の例には、ハードドライブ、ネットワーク接続ストレージ（ＮＡＳ）、リードオンリメモリ、ランダムアクセスメモリ、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷ、磁気テープ、および他の光および非光データストレージデバイスが含まれる。コンピュータ読み取り可能な媒体は、ネットワーク結合したコンピュータシステム上に分散された有形のコンピュータ読み取り可能媒体を含むこともでき、コンピュータ読み取り可能なコードは分散形式で格納され実行される。
【００９８】
方法のオペレーションを特定の順序で記述したが、オペレーションとオペレーションの間に他のメンテナンスオペレーションを実行してもよく、オペレーションがわずかに異なる時間に起きるように調整してもよい。あるいは、オーバレイオペレーションの処理が望ましい方法で実行される限り、オペレーションをシステムに分散させ、プロセッシングと関連づけられた様々な間隔でプロセッシングオペレーションが起きるようにしてもよい。
【００９９】
前述の本発明は、明確な理解を目的として、ある程度詳細に記載したが、添付の請求項の範囲で変更、修正をすることができることは明らかである。したがって、本実施の形態は、例示であり、限定的に考えるべきではない。本発明はここで述べた詳細に限定されるものではなく、添付の請求項の範囲と等価物の範囲内で変更することができる。
【図１】
2011258191.tif 000003
【図２】
2011258191.tif 000004
【図３Ａ】
2011258191.tif 000005
【図３Ｂ】
2011258191.tif 000006
【図４】
2011258191.tif 000007
【図５Ａ】
2011258191.tif 000008
【図５Ｂ】
2011258191.tif 000009
【図６】
2011258191.tif 000010
【図７】
2011258191.tif 000011
【図８】
2011258191.tif 000012
【図９】
2011258191.tif 000013
【図１０】
2011258191.tif 000014
【図１１】
2011258191.tif 000015
【図１２】
2011258191.tif 000016
【図１３】
2011258191.tif 000017
【図１４Ａ】
2011258191.tif 000018
【図１４Ｂ】
2011258191.tif 000019
【図１５Ａ】
2011258191.tif 000020
【図１５Ｂ】
2011258191.tif 000021
【図１６Ａ】
2011258191.tif 000022
【図１６Ｂ】
2011258191.tif 000023
【図１７】
2011258191.tif 000024
【図１８】
2011258191.tif 000025
【外国語明細書】
2011258191000001.pdf