(57)【特許請求の範囲】
【請求項１】
視点位置及び視線方向が記憶される記憶部と、
前記視点位置及び前記視線方向から撮影された画像を画面に表示する表示部と、
指示操作を受け付ける受付部と、
前記画面の向きの変化を検知する検知部と、
前記指示操作に基づいて、前記視点位置を更新し、前記画面の向きの変化に基づいて、前記視線方向を更新する更新部と、
を備え、
前記更新部は、前記指示操作が受け付けられると、前記視線方向を初期方向に近づくように更新する
ことを特徴とする画像処理装置。
【請求項２】
請求項１に記載の画像処理装置であって、
前記撮影された画像は、立体視用の画像である
ことを特徴とする画像処理装置。
【請求項３】
請求項１又は２に記載の画像処理装置であって、
前記撮影された画像は、仮想空間の様子を表す画像である
ことを特徴とする画像処理装置。
【請求項４】
請求項１乃至３のいずれか１項に記載の画像処理装置であって、
前記更新部は、１回の前記指示操作に対して所定の角度だけ前記初期方向に近づくように、前記視線方向を更新する
ことを特徴とする画像処理装置。
【請求項５】
請求項４に記載の画像処理装置であって、
前記所定の角度は、前記視線方向と前記初期方向とがなす角度に応じて定められる
ことを特徴とする画像処理装置。
【請求項６】
視点位置及び視線方向が記憶される記憶部と、表示部と、受付部と、検知部と、更新部と、を備える画像処理装置が実行する処理方法であって、
前記表示部が、前記視点位置及び前記視線方向から撮影された画像を画面に表示する表示工程と、
前記受付部が、指示操作を受け付ける受付工程と、
前記検知部が、前記画面の向きの変化を検知する検知工程と、
前記更新部が、前記指示操作に基づいて、前記視点位置を更新し、前記画面の向きの変化に基づいて、前記視線方向を更新する更新工程と、
を備え、
前記更新工程において、前記更新部は、前記指示操作が受け付けられると、前記視線方向を初期方向に近づくように更新する
ことを特徴とする処理方法。
【請求項７】
コンピュータを、
視点位置及び視線方向が記憶される記憶部、
前記視点位置及び前記視線方向から撮影された画像を画面に表示する表示部、
指示操作を受け付ける受付部、
前記画面の向きの変化を検知する検知部、
前記指示操作に基づいて、前記視点位置を更新し、前記画面の向きの変化に基づいて、前記視線方向を更新する更新部、
として機能させ、
前記更新部が、前記指示操作が受け付けられると、前記視線方向を初期方向に近づくように更新する
ように機能させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ユーザに、画面に対して正しい向きで操作させるのに好適な画像処理装置、処理方法、ならびに、プログラムに関する。
【背景技術】
【０００２】
従来から、携帯型ゲーム装置や携帯電話等、手元で画面の向きを変更できる携帯型情報処理装置が知られている。近年では、これらの携帯型情報処理装置において、立体視を行うことが可能である。例えば、特許文献１には、携帯型ゲーム装置の画面に表示する立体画像を生成する技術が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１１−８６１８８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、携帯型情報処理装置は、手元で容易に画面の向きを変更することができるので、ユーザは画面に対して正対せずに操作をおこなうことがある。携帯型情報処理装置においては、画面に正対せず、向きを変えてしまうと、表示されている画像が見難い、あるいは、立体視が正確に行えないという問題があった。
【０００５】
本発明は、上記のような課題を解決するもので、ユーザに、画面に対して正しい向きで操作させるのに好適な画像処理装置、処理方法、ならびに、プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明の第１の観点に係る画像処理装置は、記憶部と、表示部と、受付部と、検知部と、更新部と、を備え、以下のように構成する。なお、以下では、カメラの撮影位置をユーザが任意に指定することができ、撮影された画像が表示される画面の向きを、手元で変更できる画像処理装置を例に説明する。
【０００７】
記憶部には、視点位置及び視線方向が記憶される。
【０００８】
視点位置とは、例えば、現実空間を撮影するカメラの撮影位置である。また、視線方向とは、例えば、現実空間を撮影するカメラの撮影方向である。例えば、記憶部には、カメラの撮影位置及び撮影方向の情報が記憶される。
【０００９】
表示部は、視点位置及び視線方向から撮影された画像を画面に表示する。
【００１０】
例えば、表示部は、カメラの撮影位置から撮影方向に向かって撮影された現実空間の画像を画面に表示する。
【００１１】
受付部は、指示操作を受け付ける。
【００１２】
指示操作とは、例えば、カメラの撮影位置を指示する操作である。例えば、受付部は、ユーザより、カメラの撮影位置を指定する操作を受け付ける。
【００１３】
検知部は、画面の向きの変化を検知する。
【００１４】
例えば、検知部は、ユーザにより画面の向きが変更されると、画面の向きの変化を検知する。
【００１５】
更新部は、指示操作に基づいて、視点位置を更新し、画面の向きの変化に基づいて、視線方向を更新する。
【００１６】
例えば、更新部は、カメラの撮影位置を、ユーザにより指定された位置に更新し、ユーザにより変更された画面の向きに基づいて、カメラの撮影方向を更新する。
【００１７】
そして、更新部は、指示操作が受け付けられると、視線方向を初期方向に近づくように更新する。
【００１８】
初期方向とは、例えば、カメラの撮影方向であって、画面とユーザとが正対している状態で画面と直角をなす方向であるとする。更新部は、ユーザと画面とが正対しない場合、すなわち、撮影方向と初期方向とが異なる場合にカメラの撮影位置を指定する操作を受け付けると、撮影方向を初期方向に近づくように更新する。
【００１９】
本発明によれば、ユーザが画面に正対していない状態で、視点位置を移動させると、画面の向きにかかわらず視線方向が初期方向に更新されるので、ユーザが意図していない方向に視線方向が変更される。これにより、ユーザが画面に正対していないとユーザが意図したように画面に画像が表示されないので、ユーザに画面に正対して操作を行うように促すことができる。
【００２０】
また、撮影された画像は、立体視用の画像であってもよい。
【００２１】
例えば、カメラが撮影した画像は立体視用の画像であり、ユーザは、画面に正対している場合に、画像を立体視することができる。
【００２２】
本発明によれば、ユーザが画面に正対していないと画像を立体視することができない場合に、ユーザに画面に正対して操作を行うように促すことができる。
【００２３】
また、撮影された画像は、仮想空間の様子を表す画像であってもよい。
【００２４】
例えば、視点位置とは仮想空間内に配置される仮想カメラの撮影位置であり、視線方向とは仮想カメラの撮影方向である。表示部は、仮想カメラが撮影した仮想空間の様子を表す画像を画面に表示する。
【００２５】
本発明によれば、仮想空間の画像を表示する画面に対して、ユーザを正対するように促すことができる。
【００２６】
また、更新部は、１回の指示操作に対して所定の角度だけ初期方向に近づくように、視線方向を更新するようにしてもよい。
【００２７】
例えば、指示操作が所定のボタンの押圧であるとし、所定の角度を１０度とする。例えば、視線方向が初期方向とは異なる場合に、ユーザが当該所定のボタンを１回押圧すると、更新部は、視線方向を現在の方向から１０度だけ初期方向に近づくように更新する。
【００２８】
本発明によれば、視線方向を徐々に初期方向に近づけることができる。
【００２９】
あるいは、所定の角度は、視線方向と初期方向とがなす角度に応じて定められるようにしてもよい。
【００３０】
例えば、所定の角度は、現在の視線方向と初期方向とのなす角度が大きいほど大きく定められる。例えば、更新部は、現在の視線方向と初期方向のなす角度が６０度である場合は、１回の操作で１０度だけ初期方向に近づき、現在の視線方向と初期方向の成す角度が３０度の場合は、１回の操作で５度だけ初期方向に近づくように更新する。
【００３１】
本発明によれば、視線方向を滑らかに初期方向に近づけることができる。
【００３２】
本発明の第２の観点に係る画像処理装置は、視点位置及び視線方向が記憶される記憶部と、表示部と、受付部と、検知部と、更新部と、を備える画像処理装置が実行する処理方法であって、表示工程と、受付工程と、検知工程と、更新工程と、を備え以下のように構成する。
【００３３】
表示工程において、表示部が、視点位置及び視線方向から撮影された画像を画面に表示する。
受付工程において、受付部が、指示操作を受け付ける。
検知工程において、検知部が、画面の向きの変化を検知する。
更新工程において、更新部が、指示操作に基づいて、視点位置を更新し、画面の向きの変化に基づいて、視線方向を更新する。
また、更新工程において、更新部は、指示操作が受け付けられると、視線方向を初期方向に近づくように更新する。
【００３４】
本発明のその他の観点に係るプログラムは、コンピュータを上記画像処理装置として機能させ、コンピュータに上記処理方法を実行させるように構成する。
【００３５】
また、本発明のプログラムは、コンパクトディスク、フレキシブルディスク、ハードディスク、光磁気ディスク、ディジタルビデオディスク、磁気テープ、半導体メモリ等のコンピュータ読取可能な情報記録媒体に記録することができる。
【００３６】
上記プログラムは、プログラムが実行されるコンピュータとは独立して、コンピュータ通信網を介して配布・販売することができる。また、上記情報記録媒体は、コンピュータとは独立して配布・販売することができる。
【発明の効果】
【００３７】
本発明によれば、ユーザに、画面に対し正しい向きで操作させるのに好適な画像処理装置、処理方法、ならびに、プログラムを提供することができる。
【図面の簡単な説明】
【００３８】
【図１】本発明の実施形態に係る画像処理装置が実現される典型的な携帯型情報処理装置の概要構成を示す図である。
【図２】携帯型情報処理装置の外観を示す図である。
【図３】画面に表示される画像と視点位置との関係を説明するための図である。
【図４】画面に表示される画像と視点位置との関係を説明するための図である。
【図５】実施形態に係る画像処理装置の機能構成を示す図である。
【図６】撮影情報テーブルを説明するための図である。
【図７】画面の向きを説明するための図である。
【図８】画面に表示される画像、仮想カメラの撮影位置及び撮影方向、及びユーザの向きの関係を説明するための図である。
【図９】画面に表示される画像、仮想カメラの撮影位置及び撮影方向、及びユーザの向きの関係を説明するための図である。
【図１０】画面に表示される画像、仮想カメラの撮影位置及び撮影方向、及びユーザの向きの関係を説明するための図である。
【図１１】画面に表示される画像、仮想カメラの撮影位置及び撮影方向、及びユーザの向きの関係を説明するための図である。
【図１２】画面に表示される画像、仮想カメラの撮影位置及び撮影方向、及びユーザの向きの関係を説明するための図である。
【図１３】現在の角度と所定の角度との関係を説明するための図である。
【図１４】画面に表示される画像、仮想カメラの撮影位置及び撮影方向、及びユーザの向きの関係を説明するための図である。
【図１５】実施形態に係る画像処理装置の各部が行う画像処理を説明するためのフローチャートである。
【発明を実施するための形態】
【００３９】
（携帯型情報処理装置の概要構成）
実施形態に係る画像処理装置が実現される典型的な携帯型情報処理装置について説明する。なお、以下では、理解を容易にするため、ゲーム用の携帯型情報処理装置を利用して本発明が実現される実施形態を説明するが、以下に説明する実施形態は説明のためのものであり、本願発明の範囲を制限するものではない。したがって、当業者であればこれらの各要素もしくは全要素をこれと均等なものに置換した実施形態を採用することが可能であるが、これらの実施形態も本発明の範囲に含まれる。
【００４０】
図１は、本発明の実施形態に係る画像処理装置１００が実現される典型的な携帯型情報処理装置１の概要構成を示す図である。また、図２に携帯型情報処理装置１の外観図を示す。以下、これらの図を参照して説明する。
【００４１】
携帯型情報処理装置１は、図１に示すように、処理制御部１０と、コネクタ１１と、カートリッジ１２と、無線通信部１３と、通信コントローラ１４と、サウンドアンプ１５と、スピーカ１６と、マイク１７と、操作キー１８と、第１の表示部１９と、第２の表示部２０と、タッチパネル２１と、カメラ２２と、角速度センサ２３と、を備える。また、携帯型情報処理装置１は、図２に示すように、上側筐体３１と下側筐体３２とから構成され、上側筐体３１と下側筐体３２とは開閉可能に接続されている。
【００４２】
処理制御部１０は、ＣＰＵ（Central Processing Unit）コア１０ａと、画像処理部１０ｂと、ＶＲＡＭ（Video Random Access Memory）１０ｃと、ＷＲＡＭ（Work RAM）１０ｄと、ＬＣＤ（Liquid Crystal Display）コントローラ１０ｅと、タッチパネルコントローラ１０ｆと、を備える。
【００４３】
ＣＰＵコア１０ａは、携帯型情報処理装置１全体の動作を制御し、各構成要素と接続され制御信号やデータをやりとりする。具体的には、カートリッジ１２がコネクタ１１に装着された状態で、カートリッジ１２内のＲＯＭ（Read Only Memory）１２ａに記憶されたプログラムやデータを読み出して、所定の処理を実行する。
【００４４】
画像処理部１０ｂは、カートリッジ１２内のＲＯＭ  １２ａから読み出されたデータ、カメラ２２により撮影された画像のデータ、または、ＣＰＵコア１０ａにて処理されたデータを加工処理した後、これをＶＲＡＭ  １０ｃに格納する。
【００４５】
ＶＲＡＭ  １０ｃは、表示用の情報を記憶するフレームメモリであり、画像処理部１０ｂ等により加工された画像情報を記憶する。
【００４６】
ＷＲＡＭ  １０ｄは、ＣＰＵコア１０ａがプログラムに従った各種処理を実行する際に必要となるワークデータ等を記憶する。
【００４７】
ＬＣＤコントローラ１０ｅは、第１の表示部１９及び第２の表示部２０を制御し、所定の表示用画像を表示させる。例えば、ＬＣＤコントローラ１０ｅは、ＶＲＡＭ  １０ｃに記憶された画像情報を、所定の同期タイミングで表示信号に変換し、第１の表示部１９に出力する。また、ＬＣＤコントローラ１０ｅは、第２の表示部２０に所定の指示アイコン等を表示する。
【００４８】
タッチパネルコントローラ１０ｆは、タッチペンやユーザの指によるタッチパネル２１への接触（タッチ）を検出する。例えば、第２の表示部２０に所定の指示アイコン等が表示されている状態で、タッチパネル２１上の接触、及びその位置等を検出する。
【００４９】
コネクタ１１は、カートリッジ１２と脱着自在に接続可能な端子であり、カートリッジ１２が接続された際に、カートリッジ１２との間で所定のデータを送受信する。
【００５０】
カートリッジ１２は、ＲＯＭ  １２ａと、ＲＡＭ（Random Access Memory）１２ｂと、を備える。
ＲＯＭ  １２ａには、ゲームを実現するためのプログラムとゲームに付随する画像データや音声データ等が記憶される。
ＲＡＭ  １２ｂには、ゲームの進行状況等を示す種々のデータが記憶される。
【００５１】
無線通信部１３は、他の携帯型情報処理装置１の無線通信部１３との間で、無線通信を行うユニットであり、図示せぬアンテナ（内蔵アンテナ等）を介して所定のデータを送受信する。
なお、無線通信部１３は、所定のアクセスポイントとの間で、無線ＬＡＮ通信を行うこともできる。また、無線通信部１３には、固有のＭＡＣ（Media Access Control）アドレスが採番されている。
【００５２】
通信コントローラ１４は、無線通信部１３を制御し、所定のプロトコルに沿って、処理制御部１０と他の携帯型情報処理装置１の処理制御部１０との間で行われる通信の仲立ちをする。
【００５３】
サウンドアンプ１５は、処理制御部１０にて生成された音声信号を増幅し、スピーカ１６に供給する。
【００５４】
スピーカ１６は、例えば、ステレオスピーカ等からなり、サウンドアンプ１５にて増幅された音声信号に従って、所定の楽曲音や効果音等を出力する。
【００５５】
マイク１７は、ユーザの声等のアナログ信号を受け付け、受け付けた信号は処理制御部１０でミキシング等の処理がされる。
【００５６】
操作キー１８は、携帯型情報処理装置１に適宜配置された方向キー１８ａやボタン１８ｂ等から構成され、ユーザの操作に従って、所定の指示入力を受け付ける。操作キー１８には、音量を調節するためのボタンや、つまみ等も含まれる。
【００５７】
第１の表示部１９及び第２の表示部２０は、ＬＣＤ等からなり、ＬＣＤコントローラ１０ｅに制御され、ゲーム画像等を適宜表示する。第１の表示部１９は上側筐体３１に備えられ、第２の表示部２０は下側筐体３２に備えられる。第１の表示部１９は、プレイヤに立体視をさせることが可能な立体画像（以下、「立体視用画像」という）を表示する。立体視用画像は、例えば、パララックスバリア方式による裸眼立体視が可能な画像、あるいは、所定のメガネを装着して画面を見ることにより立体視が可能な画像である。一方、第２の表示部２０は、立体視用画像ではなく通常の画像を表示する。
【００５８】
タッチパネル２１は、第２の表示部２０の前面に重畳して配置され、タッチペンやユーザの指の接触による入力を受け付ける。タッチパネル２１は、例えば、感圧式のタッチセンサパネル等からなり、ユーザの指等の圧力を検出し、接触状態、及び、接触状態から非接触状態への移行等を検出する。なお、タッチパネル２１は、他に静電容量の変化等から、ユーザの指等の接触を検出してもよい。
【００５９】
カメラ２２は、ユーザの指示に従い周辺の空間等を撮影し、撮影した映像を電気信号に変換する。カメラ２２は、例えば、ＣＭＯＳ（Complimentary MOS）センサ等から構成される。カメラ２２は、上側筐体３１の裏側に配置される（図２（ｂ））。
【００６０】
角速度センサ２３は、携帯型情報処理装置１の３軸周り（図２（ａ）、ｘｙｚ軸）に生じる角速度をそれぞれ検知し、処理制御部１０に検知した角速度のデータを出力する。処理制御部１０は、角速度データに基づいて、携帯型情報処理装置１の姿勢や動きを求める。
【００６１】
なお、各実施形態に係る画像処理装置１００は、上述した典型的な携帯型情報処理装置１上に実現されるが、一般的なコンピュータやゲーム装置上に実現することもでき、これらの実施形態も本発明の範囲に含まれる。一般的なコンピュータやゲーム装置は、上記携帯型情報処理装置１と同様に、ＣＰＵコアや、ＶＲＡＭ、ＷＲＡＭ、を備える。また、通信部として、例えば、ＬＡＮ（Local Area Network）を構成する際に用いられる１０ＢＡＳＥ−Ｔ／１００ＢＡＳＥ−Ｔなどの規格に準拠するＮＩＣ(Network Interface Controller)、記憶装置としてハードディスクを有する他、ＤＶＤ−ＲＯＭや、光磁気ディスク等が利用できるようになっている。また、タッチパネルの代わりに、キーボードやマウスなどを利用する。そして、プログラムをインストールした後に、そのプログラムを実行させると、情報処理装置として機能させることができる。
【００６２】
以下、上記携帯型情報処理装置１により実現される画像処理装置１００の機能について、図１乃至図１５を参照して説明する。ゲーム用のプログラム及びデータを記憶したカートリッジ１２をコネクタ１１に装着して、携帯型情報処理装置１の電源を投入することにより、当該プログラムが実行され、実施形態に係る画像処理装置１００が実現される。
【００６３】
（ゲームの概要）
まず、実施形態に係る画像処理装置１００が実行するゲームの例について説明する。図３にゲームの仮想空間の例を示す。
【００６４】
本ゲームの仮想空間は横長のフィールド３００であり、フィールドの両端には、プレイヤの基地であるプレイヤベース２０１と、敵の基地である敵ベース２０２と、が配置される。本ゲームにおいて、プレイヤは、プレイヤベース２０１を守りつつ、敵ベース２０２を陥落させることが求められる。
【００６５】
プレイヤは、プレイヤが操作するキャラクタ（プレイヤキャラクタ２０３）を敵ベース２０２に向かわせて攻撃をしかけたり、プレイヤ砲弾２０５を敵ベース２０２に向けて射出したりすることにより、敵ベース２０２を陥落させる。また、プレイヤは、敵キャラクタ２０４及び敵砲弾２０６による攻撃からプレイヤベース２０１を守る。
【００６６】
仮想空間のフィールド３００は広いため、すべてが画面に収まらず、画面に表示される画像はフィールド３００の一部である。画面には、仮想空間に配置される仮想カメラ４００により撮影された画像が表示される。仮想カメラ４００は、直線４０１の上を平行移動し、後述するマニュアルモード又はオートモードで移動させることができる。例えば、図３は、直線４０１上の仮想カメラ４００から撮影方向４０３に見た画像３０１が画面に表示されることを示している。
【００６７】
仮想カメラ４００を移動させる手法には、プレイヤが任意に動かすことができるマニュアルモードと、プログラムに従って、随時最も重要と思われる撮影位置を自動的に選択されるオートモードがある。マニュアルモードでは、プレイヤが、例えば、方向キー１８ａの右方向または左方向を押圧することにより、仮想カメラ４００を直線４０１上で動かすことができる。オートモードでは、例えば、ゲームプレイ中に起こるイベントについて優先度が設定されており、仮想カメラ４００は、当該優先度に基づいて、当該イベントが画面に表示されるように自動的に移動する。
【００６８】
イベントとは、例えば、プレイヤベース２０１の陥落（優先度：１）、敵ベース２０２の陥落（優先度：２）、プレイヤキャラクタ２０３の撃墜（優先度：３）、敵キャラクタ２０４の撃墜（優先度：４）、プレイヤベースから射出されたプレイヤ砲弾２０５の先端（優先度：５）、敵ベースから射出された敵砲弾２０６の先端（優先度：６）、プレイヤキャラクタ２０３の出撃（優先度：７）、敵キャラクタ２０４の出撃（優先度：８）、プレイヤキャラクタ２０３の最前線（優先度：９）、敵キャラクタ２０４の最前線（優先度：１０）、プレイヤベース２０１でのその他のイベント（優先度：１１）、敵ベース２０２でのその他のイベント（優先度：１２）、である。各イベントには予め優先度が設定される。そして、これらのイベントのいずれかが同時に発生した場合、優先度の高いイベントの画像が画面に表示されるように仮想カメラ４００の位置が設定される。
【００６９】
例えば、図４に示すように、プレイヤベース２０１に敵砲弾２０６が命中し、プレイヤベース２０１が陥落されたとする。また、これと同時にプレイヤキャラクタ２０３と敵キャラクタ２０４とが対峙したとする。この場合、プレイヤベース２０１の陥落は優先度が１であり、プレイヤキャラクタ２０３の最前線は優先度が９であるので、プレイヤベース２０１の陥落が画面に表示されるように仮想カメラ４００の位置が移動し、画像３０２が画面に表示される。
【００７０】
仮想カメラ４００の移動をマニュアルモードで行うか、あるいはオートモードで行うかは、プレイヤが適宜設定することができる。例えば、ゲームは、プレイヤの攻撃と敵の攻撃とが交互に行われて進行し、プレイヤ又は敵の攻撃の初めには、オートモードに設定されるものとする。この場合、オートモードのときに、方向キー１８ａの押圧が検知されると、マニュアルモードに移行するようにしてもよい。
【００７１】
以下、マニュアルモードの場合における、画像処理装置１００の機能について説明する。
【００７２】
（実施形態）
実施形態の画像処理装置１００は、図５に示すように、記憶部１０１と、表示部１０２と、受付部１０３と、検知部１０４と、更新部１０５と、を備える。
【００７３】
記憶部１０１は、視点位置及び視線方向が記憶される。
【００７４】
例えば、視点位置とは、仮想カメラ４００の直線４０１上の位置（以下、「撮影位置」という）であり、視線方向とは、仮想カメラ４００の撮影方向である。これらの値は、例えば、図６の撮影情報テーブル１０１ａに登録される。
【００７５】
撮影情報テーブル１０１ａには、仮想カメラ４００の初期位置１０１ａ１と、初期方向１０１ａ２と、現在の撮影位置１０１ａ３と、撮影方向１０１ａ４と、が対応づけて登録されている。直線４０１の中央の位置（図３の仮想カメラ４００の位置）を０［ｄｏｔ］とし、この位置を初期位置とする。撮影位置は、画面に向かって、フィールド３００の右方向に移動した場合には正の値、フィールド３００の左方向に移動した場合には負の値で表されるものとする。また、フィールド３００に向かって直線４０１と直角をなす方向４０２を０［ｄｅｇ］とし、この方向を初期方向とする。撮影方向は、画面に向かって、フィールド３００の右方向に向いた場合には正の値、フィールドの左方向に向いた場合には負の値で表されるものとする。
【００７６】
例えば、仮想カメラ４００が、図３に示す撮影位置に配置され、撮影方向４０３を向いている場合、図６（ａ）の撮影情報テーブル１０１ａが記憶部１０１に記憶される。
【００７７】
本実施形態において、ＷＲＡＭ  １０ｄが記憶部１０１として機能する。
【００７８】
表示部１０２は、視点位置及び視線方向から撮影された画像を画面に表示する。
【００７９】
本実施形態において、撮影された画像は、仮想空間の画像であり、第１の表示部１９に表示される立体視用の画像であるとする。
【００８０】
例えば、記憶部１０１に、図６（ａ）の撮影情報テーブル１０１ａが格納されている場合、表示部１０２は、当該撮影情報テーブル１０１ａを参照して、初期位置の撮影位置から撮影方向３０３に撮影した画像３０１（図３）を画面に表示する。
【００８１】
本実施形態において、処理制御部１０及び第１の表示部１９が協働して、表示部１０２として機能する。
【００８２】
受付部１０３は、指示操作を受け付ける。
【００８３】
例えば、指示操作とは、仮想カメラ４００の撮影位置を動かすための操作であり、方向キー１８ａの左方向又は右方向の押圧である。例えば、プレイヤが方向キー１８ａの左方向を押圧した場合、受付部１０３は、左方向に仮想カメラ４００を動かす指示として当該押圧を受け付ける。あるいは、タッチパネル２１により左方向又は右方向を指定する操作を受け付けるようにしてもよい。例えば、プレイヤがタッチパネル２１に指で触れて、右方向に所定の距離だけ動かした場合、受付部１０３は、右方向に仮想カメラ４００を動かす指示として、当該操作を受け付ける。
【００８４】
本実施形態において、処理制御部１０及び操作キー１８（あるいは、タッチパネル２１）が協働して、受付部１０３として機能する。
【００８５】
検知部１０４は、画面の向きの変化を検知する。
【００８６】
ここで、画面の向きとは、立体視用画像を表示する第１の表示部１９を有する上側筐体３１の向きであるとする。図７に、携帯型情報処理装置１を把持してゲームプレイをするプレイヤ５００と、携帯型情報処理装置１の上側筐体３１（第１の表示部１９）との位置関係を示す。図７（ａ）及び図７（ｂ）は、プレイヤ５００の真上から見た図である。画面の方向は、ユーザ５００と平行な方向５０１に対して、直角をなす方向５０２を０［ｄｅｇ］とする。
【００８７】
図７（ａ）は、上側筐体３１が有する第１の表示部１９に対してプレイヤ５００が正対するように、プレイヤ５００が携帯型情報処理装置１を把持している様子を示している。ここで、「正対」とは、プレイヤの上体が画面に対して真正面に相対することをいい、立体視用画像が画面に表示される場合は、最も効果的に立体視を行うことができる配置である。この場合、検知部１０４は、画面の方向５０３を検知する。すなわち、画面方向５０３は０［ｄｅｇ］であり、検知部１０４は、画面の向きとして０［ｄｅｇ］を検知する。
【００８８】
図７（ｂ）は、プレイヤ５００が方向５０２から左側に３０［ｄｅｇ］だけ、上側筐体３１を傾けるように携帯型情報処理装置１を把持している様子を示している。この場合、検知部１０４は、画面の方向５０４を検知する。すなわち、検知部１０４は、画面の向きとして−３０［ｄｅｇ］を検知する。
【００８９】
本実施形態において、処理制御部１０及び角速度センサ２３が協働して、検知部１０４として機能する。
【００９０】
更新部１０５は、指示操作に基づいて、視点位置を更新し、画面の向きの変化に基づいて、視線方向を更新する。
【００９１】
ここで、図８乃至図１２、１４に、画面に表示される画像（図８（ａ）乃至図１２（ａ）、図１４（ａ））と、仮想カメラ４００の撮影位置及び撮影方向（図８（ｂ）乃至図１２（ｂ）、図１４（ｂ））と、画面の向き（図８（ｃ）乃至図１２（ｃ）、図１４（ｃ））と、の関係を示す。以下、更新部１０５の機能について、これらの図を参照して説明する。
【００９２】
例えば、図８（ｃ）に示すように、プレイヤ５００が上側筐体３１と正対している状態で、プレイヤによる指示操作が未だ受け付けられていない場合、仮想カメラ４００は、図８（ｂ）に示すように、初期位置に配置され、初期方向（撮影方向４０３）を向く。撮影位置及び撮影方向は初期位置及び初期方向から変更されていないので、更新部１０５は、撮影位置及び撮影方向の更新を行わない。表示部１０２は、初期位置から初期方向に撮影した画像３０３（図８（ａ））を画面に表示する。画像３０３には、プレイヤキャラクタ２０３及びオブジェクト２０７が含まれる。
【００９３】
図９（ｃ）に示すように、プレイヤ５００が上側筐体３１と正対している状態で、プレイヤ５００が方向キー１８ａの左方向を押圧したとすると、受付部１０３は当該押圧を受け付け、更新部１０５は受け付けられた押圧に基づいて撮影位置を更新する。例えば、受付部１０３が左方向に１５０［ｄｏｔ］だけ移動させる押圧を受け付けたとすると、更新部１０５は、図６（ｂ）に示すように、撮影情報テーブル１０１ａの撮影位置１０１ａ３を“−１５０”［ｄｏｔ］に更新する。そして、表示部１０２は、更新された撮影情報テーブル１０１ａ（図６（ｂ））を参照して撮影位置及び撮影方向を求め、初期位置から左に１５０［ｄｏｔ］だけ移動した撮影位置（図９（ｂ））及び撮影方向４０３から撮影された画像３０４（図９（ａ））を、画面に表示する。
【００９４】
また、図８に示した状態から、図１０（ｃ）に示すように、プレイヤ５００が、第１の表示部１９の向きが方向５０２から左に３０［ｄｅｇ］だけ傾くように、携帯型情報処理装置１を傾けたとすると、検知部１０４は傾いた画面の方向５０４を検知し、更新部１０５は検知された方向５０４に基づいて撮影方向を更新する。例えば、検知部１０４が左方向に３０［ｄｅｇ］の傾きを検知したとすると、更新部１０５は、図６（ｃ）に示すように、撮影情報テーブル１０１ａの撮影方向１０１ａ４を“−３０”［ｄｅｇ］に更新する。そして、表示部１０２は、更新された撮影情報テーブル１０１ａ（図６（ｃ））を参照して撮影位置及び撮影方向を求め、撮影位置（初期位置）及び撮影方向４０４（図１０（ｂ））から撮影された画像３０５（図１０（ａ））を、画面に表示する。
【００９５】
また、更新部１０５は、指示操作が受け付けられると、視線方向を初期方向に近づくように更新する。
【００９６】
図１１（ｃ）のように、プレイヤ５００が、上側筐体３１を左に傾けた状態で、方向キー１８ａの左方向を押圧したとすると、受付部１０３は当該押圧を受け付け、検知部１０４は上側筐体３１の方向を検知する。更新部１０５は、受け付けられた押圧に基づいて撮影位置を更新し、検知された方向に基づいて撮影方向を更新する。ここで、プレイヤ５００が、図１０（ｂ）の状態から方向キー１８ａで撮影位置を移動させようとした場合（例えば、左方向に移動させようとした場合）、図１１（ｂ）に示すように、撮影方向は方向４０４のままで、撮影位置だけが指定された位置に移動すると想定して、指示操作を行うのが一般的である。そして、上記のような指示操作を行ったプレイヤ５００は、当該撮影位置から方向４０４に向けて撮影された画像３０６が表示部１０２により画面に表示されることを想定していると考えられる。これに対して本実施形態では、更新部１０５は、図１２（ｂ）に示すように、指定された撮影位置に仮想カメラ４００が移動する間に、撮影方向を、方向４０４から初期方向の方向４０３へ、徐々に近づけるように、撮影方向を更新する。
【００９７】
ここで、更新部１０５は、例えば、１回の指示操作に対して所定の角度だけ初期方向に近づくように視線方向を更新する。１回の指示操作とは、例えば、方向キー１８ａの左方向又は右方向の１回の押圧である。本実施形態では、１回の方向キー１８ａの押圧で５０［ｄｏｔ］だけ、撮影位置が移動するものとする。
【００９８】
図１３（ａ）に、現在の視線方向（撮影方向）と初期方向とのなす角度（以下、「現在の角度」という）と、所定の角度との関係の一例を示す。更新部１０５はこのグラフに従い撮影方向を更新する。例えば、図１２（ｂ）に示すように仮想カメラ４００が初期位置に配置され、左方向に３０［ｄｅｇ］傾いた状態で、方向キー１８ａの左方向を１回押圧すると、更新部１０５は、仮想カメラ４００を直線４０１上の左方向に５０［ｄｏｔ］だけ移動した位置に撮影位置を更新し、同時に、撮影方向を１０［ｄｅｇ］だけ初期方向に近づくように更新する。すなわち、更新部１０５は、図６（ｃ）の撮影情報テーブル１０１ａから、図６（ｄ）に示すように、撮影位置１０１ａ３を“−５０”［ｄｏｔ］、撮影方向１０１ａ４を“−２０”［ｄｅｇ］（方向４０５）に更新する。そして、表示部１０２は、方向キー１８ａの押圧毎に更新される撮影情報テーブル１０１ａを参照して撮影位置及び撮影方向を求め、当該撮影位置及び撮影方向から撮影された画像を表示する。方向キー１８ａが左方向に３回押圧され、撮影方向４０３に更新されると、表示部１０２は、初期位置から左に１５０［ｄｏｔ］だけ移動した撮影位置及び撮影方向４０３から撮影された画像３０７（図１２（ａ））を、画面に表示する。
【００９９】
なお、所定の角度は、一定の値ではなく、視線方向と初期方向とがなす角度（現在の角度）に応じて定められるようにしてもよい。例えば、図１３（ｂ）に示すように、現在の角度が大きいほど、所定の角度を大きく設定するようにしてもよい。
【０１００】
上側筐体３１の向きがプレイヤに正対する方向（方向５０２）から傾けられた状態で、撮影位置を変更する操作が受け付けられると、更新部１０５は、上側筐体３１（第１の表示部１９）の向きにかかわらず撮影方向を更新するので、プレイヤ５００の意図しない方向の画像３０７（図１２（ａ））が表示される。すなわち、画面の向きは傾いているにも関わらず、画面には、仮想空間のフィールドに正対した場合に表示される画像３０７（図１２（ａ））が表示される。このように、撮影方向を更新することにより、図１４（ｃ）に示すように、プレイヤ５００に上側筐体３１（第１の表示部１９）に対して正対させるように促すことができる。
【０１０１】
本実施形態において、処理制御部１０が更新部１０５として機能する。
【０１０２】
（実施形態に係る画像処理装置の動作）
以下、本実施形態の画像処理装置１００の各部が行う動作について説明する。画像処理装置１００に電源が投入されると、ＣＰＵコア１０ａは、図１５のフローチャートに示す画像処理を開始する。
【０１０３】
表示部１０２は、記憶部１０１に記憶された視点位置及び視線方向に基づいて、当該視点位置及び視線方向から撮影された画像を生成する（ステップＳ１０１）。例えば、表示部１０２は、撮影情報テーブル１０１ａを参照して、撮影位置及び撮影方向から撮影した仮想空間の様子を表す画像を生成する。
【０１０４】
表示部１０２が生成した画像は、ＶＲＡＭ  １０ｃに記憶される。表示部１０２は、垂直同期割り込みが生じるまでキューのクリアや、別のプロセスの処理などを行って待機する（ステップＳ１０２）。そして、垂直同期割り込みが生じると、表示部１０２は、ＶＲＡＭ  １０ｃに記憶された画像情報を表示信号に変換し、第１の表示部１９に表示する（ステップＳ１０３）。例えば、図８の画像３０３が第１の表示部１９に表示される。
【０１０５】
受付部１０３は、指示操作を受け付けたか否かを判断する（ステップＳ１０４）。受付部１０３が、指示操作を受け付けたと判断すると（ステップＳ１０４；Ｙｅｓ）、次に、検知部１０４は、画面の向きを検知する（ステップＳ１０５）。一方、受付部１０３が指示操作を受け付けないと判断した場合も（ステップＳ１０４；Ｎｏ）、検知部１０４は、画面の向きを検知する（ステップＳ１０９）。
【０１０６】
例えば、受付部１０３は、方向キー１８ａの左方向又は右方向のいずれかが押圧されたか否かを判断する。受付部１０３が当該押圧を受け付けたか否か判断すると、検知部１０４は、現在の上側筐体３１（第１の表示部１９）の向きを検知する。なお、受付部１０３による指示操作を受け付けたか否かの判断と検知部１０４の画面の向きの検知とは、順序は逆でも、あるいは、同時に行われてもよい。
【０１０７】
ステップＳ１０５において、検知部１０４により画面の向きが検知されると、次に、更新部１０５は、当該画面の向きが初期方向であるか否かを判断する（ステップＳ１０６）。更新部１０５は、画面の向きが初期方向であると判断すると（ステップＳ１０６；Ｙｅｓ）、受付部１０３が受け付けた指示操作に基づいて記憶部１０１に記憶された視点位置を更新する（ステップＳ１０７）。一方、更新部１０５は、画面の向きが初期方向でないと判断すると（ステップＳ１０６；Ｎｏ）、受付部１０３が受け付けた指示操作に基づいて、記憶部１０１に記憶された視点位置を更新し、記憶部１０１に記憶された視線方向を、初期方向に近づくように更新する（ステップＳ１０８）。その後、ステップＳ１０１に戻る。
【０１０８】
例えば、方向キー１８ａの左方向を押圧され、上側筐体３１が初期方向に向いている場合（図９）、更新部１０５は、方向キー１８ａの押圧に基づいて、撮影情報テーブル１０１ａの撮影位置１０１ａ３を更新する。一方、方向キー１８ａの左方向を押圧され、上側筐体３１の向きが初期方向から傾けられている場合（図１２）、更新部１０５は、当該押圧に基づいて撮影情報テーブル１０１ａの撮影位置１０１ａ３を更新し、上側筐体３１の向きに関わらず撮影方向１０１ａ４を初期方向へ徐々に近づけるように更新する。そして、更新部１０５により撮影位置又は撮影方向が更新されると、表示部１０２は、更新後の撮影情報テーブル１０１ａの撮影位置及び撮影方向から撮影された画像を第１の表示部１９に表示する。
【０１０９】
ステップＳ１０９において、検知部１０４により画面の向きが検知されると、次に、更新部１０５は、当該画面の向きが初期方向であるか否かを判断する（ステップＳ１１０）。更新部１０５は、画面の向きが初期方向であると判断すると（ステップＳ１１０；Ｙｅｓ）、視点位置及び視線方向の更新は行わず、ステップＳ１０１に戻る。一方、更新部１０５は、画面の向きが初期方向でないと判断すると（ステップＳ１１０；Ｎｏ）、当該画面の向きに基づいて記憶部１０１に記憶された視線方向を更新する（ステップＳ１１１）。その後、ステップＳ１０１に戻る。
【０１１０】
例えば、プレイヤ５００により方向キー１８ａの押圧がされず、上側筐体３１の向きが初期方向から傾けられている場合（図１０）、更新部１０５は、上側筐体３１の向きに基づいて、撮影情報テーブル１０１ａの撮影方向１０１ａ４を更新する。一方、プレイヤ５００により方向キー１８ａの押圧がされず、上側筐体３１の向きが初期方向である場合（図８）、更新部１０５は、撮影位置１０１ａ３及び撮影方向１０１ａ４の更新を行わない。そして、表示部１０２は、撮影情報テーブル１０１ａの撮影位置及び撮影方向から撮影された画像を第１の表示部１９に表示する。
【０１１１】
通常のゲームでは、図１４（ｃ）に示したように、プレイヤは画面に対して正対した状態で操作されるのが望ましいが、手元で向きを変えることができる携帯型情報処理装置１の場合、図１０（ｃ）に示したように、プレイヤが画面に対して正対していない状態で操作してしまうことがある。特に、立体視用画像が表示されている場合は、画面に正対した状態でないと、画像の立体視が行えない場合もある。本発明によれば、プレイヤが画面に正対していない状態で仮想カメラを移動させようとすると、更新部１０５が撮影方向を仮想空間のフィールドに正対するように向きを更新して、正対した場合に表示される画像を画面に表示することにより、プレイヤに画面に対して正対させるように促すことができる。
【０１１２】
なお、実施形態では、仮想カメラの撮影位置及び撮影方向を例にとり画像処理装置１００の動作を説明したが、これに限らない。例えば、現実空間を撮影するカメラの撮影位置及び撮影方向であってもよい。また、現実空間を撮影するカメラの場合、カメラは画面と同一の筐体に備わっていなくてもよい。例えば、カメラの撮影位置は遠隔でユーザが指定できるが、撮影方向はユーザが手元に持つ画面の向きに基づいて定められる装置の場合にも本発明を適用することができる。
【０１１３】
また、実施形態では、画面の向きを角速度センサにより検知することとしたが、これに限らない。例えば、カメラで撮影した撮影画像の変化から、画面の向きを求めるようにしてもよい。
【産業上の利用可能性】
【０１１４】
本発明によれば、ユーザに、画面に対し正しい向きで操作させるのに好適な画像処理装置、処理方法、ならびに、プログラムを提供することができる。
【符号の説明】
【０１１５】
１  携帯型情報処理装置
１０  処理制御部
１０ａ  ＣＰＵコア
１０ｂ  画像処理部
１０ｃ  ＶＲＡＭ
１０ｄ  ＷＲＡＭ
１０ｅ  ＬＣＤコントローラ
１０ｆ  タッチパネルコントローラ
１１  コネクタ
１２  カートリッジ
１２ａ  ＲＯＭ
１２ｂ  ＲＡＭ
１３  無線通信部
１４  通信コントローラ
１５  サウンドアンプ
１６  スピーカ
１７  マイク
１８  操作キー
１８ａ  方向キー
１８ｂ  ボタン
１９  第１の表示部
２０  第２の表示部
２１  タッチパネル
２２  カメラ
２３  角速度センサ
３１  上側筐体
３２  下側筐体
１００  画像処理装置
１０１  記憶部
１０２  表示部
１０３  受付部
１０４  検知部
１０５  更新部
２０１  プレイヤベース
２０２  敵ベース
２０３  プレイヤキャラクタ
２０４  敵キャラクタ
２０５  プレイヤ砲弾
２０６  敵砲弾
２０７  オブジェクト
３００  フィールド
３０１、３０２、３０３、３０４、３０５、３０６、３０７  画像
４００  仮想カメラ
４０１  直線
４０２  方向
４０３、４０４、４０５  撮影方向
５００  プレイヤ
５０１、５０２  方向
５０３、５０４  画面の方向
【要約】
【課題】ユーザに、画面に対して正しい向きで操作させるのに好適な画像処理装置等を提供する。
【解決手段】記憶部１０１には、視点位置及び視線方向が記憶される。表示部１０２は、視点位置及び視線方向から撮影された画像を画面に表示する。受付部１０３は、指示操作を受け付ける。検知部１０４は、画面の向きの変化を検知する。更新部１０５は、指示操作に基づいて、視点位置を更新し、画面の向きの変化に基づいて、視線方向を更新する。そして、更新部１０５は、指示操作が受け付けられると、視線方向を初期方向に近づくように更新する。
【選択図】図５【図１】
0005113933.tif 000002
【図２】
0005113933.tif 000003
【図３】
0005113933.tif 000004
【図４】
0005113933.tif 000005
【図５】
0005113933.tif 000006
【図６】
0005113933.tif 000007
【図７】
0005113933.tif 000008
【図８】
0005113933.tif 000009
【図９】
0005113933.tif 000010
【図１０】
0005113933.tif 000011
【図１１】
0005113933.tif 000012
【図１２】
0005113933.tif 000013
【図１３】
0005113933.tif 000014
【図１４】
0005113933.tif 000015
【図１５】
0005113933.tif 000016