(57)【要約】【課題】ユーザの視認性、操作性を向上させること。【解決手段】時系列の動きデータから振動を検出する振動センサと、複数のレイヤーにより構成される画像データを取得する画像データ取得部と、前記画像データ取得部により取得された画像データを表示する画像データ表示部と、前記画像データを構成する各レイヤーの種類に応じた度合いで、前記画像データ取得部に対し、前記振動センサにより検出された振動をキャンセルする方向に当該各レイヤーを動かす制御を実行する動き補正部と、を備える、画像安定化装置が提供される。【選択図】図１
2011257553.tif 000002
【特許請求の範囲】
【請求項１】
時系列の動きデータから振動を検出する振動センサと、
複数のレイヤーにより構成される画像データを取得する画像データ取得部と、
前記画像データ取得部により取得された画像データを表示する画像データ表示部と、
前記画像データを構成する各レイヤーの種類に応じた度合いで、前記画像データ取得部に対し、前記振動センサにより検出された振動をキャンセルする方向に当該各レイヤーを動かす制御を実行する動き補正部と、
を備える、
画像安定化装置。
【請求項２】
前記動き補正部は、制御の対象となるレイヤーの種類がテキストの表示画面に対応する場合、前記振動をキャンセルする方向に当該レイヤーを動かす度合いを大きくする制御を実行する、
請求項１に記載の画像安定化装置。
【請求項３】
前記動き補正部は、制御の対象となるレイヤーの種類が画面端付近に表示される補助的な情報の表示画面に対応する場合、前記振動をキャンセルする方向に当該レイヤーを動かす度合いを小さくするか、或いは、前記振動をキャンセルする方向に当該レイヤーを動かさない制御を実行する、
請求項１に記載の画像安定化装置。
【請求項４】
前記動き補正部は、制御の対象となるレイヤーの種類が操作対象のオブジェクトに対応する場合、前記振動をキャンセルする方向に当該レイヤーを動かす度合いを小さくするか、或いは、前記振動をキャンセルする方向に当該レイヤーを動かさない制御を実行する、
請求項１又は２に記載の画像安定化装置。
【請求項５】
前記画像データ表示部の上部に操作体が近接又は接触した状態、及び、前記画像データ表示部から前記操作体までの距離を検知することが可能なタッチセンサをさらに備え、
前記動き補正部は、前記タッチセンサにより検知された距離が所定の距離よりも短い場合、操作対象のオブジェクトに対応するレイヤーを、前記振動をキャンセルする方向に動かさない制御を実行する、
請求項４に記載の画像安定化装置。
【請求項６】
前記動き補正部は、前記画像データが３次元仮想空間を表現した３次元データである場合、前記３次元仮想空間の奥行き方向の深度に応じた度合いで、前記振動をキャンセルする方向に前記各レイヤーを動かす制御を実行する、
請求項１に記載の画像安定化装置。
【請求項７】
前記動き補正部は、前記３次元仮想空間の消失点において前記振動がキャンセルされるように、前記振動をキャンセルする方向に前記各レイヤーを動かす制御を実行する、
請求項６に記載の画像安定化装置。
【請求項８】
時系列の動きデータから振動を検出する振動検出ステップと、
複数のレイヤーにより構成される画像データを取得する画像データ取得ステップと、
前記画像データ取得ステップで取得された画像データを表示する画像データ表示ステップと、
前記画像データ取得ステップにおいて、前記画像データを構成する各レイヤーの種類に応じた度合いで、前記振動検出ステップで検出された振動をキャンセルする方向に当該各レイヤーを動かす制御を実行する動き補償ステップと、
を含む、
画像安定化方法。
【請求項９】
時系列の動きデータから振動を検出する振動センサ機能と、
複数のレイヤーにより構成される画像データを取得する画像データ取得機能と、
前記画像データ取得機能により取得された画像データを表示する画像データ表示機能と、
前記画像データを構成する各レイヤーの種類に応じた度合いで、前記画像データ取得機能に対し、前記振動センサ機能により検出された振動をキャンセルする方向に当該各レイヤーを動かす制御を実行する動き補償機能と、
をコンピュータに実現させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像安定化装置、画像安定化方法、及びプログラムに関する。
【背景技術】
【０００２】
近年、携帯電話、携帯ゲーム機、携帯情報端末、ノート型コンピュータ（以下、ノートＰＣ）、携帯音楽プレーヤ、デジタルビデオカメラやデジタルスチルカメラ（以下、撮像装置）など、小型の電子機器（以下、携帯機器）が広く普及するに至った。こうした携帯機器は、様々な場所で利用される。例えば、移動中の車内、街角、オフィスビルの待合室、自宅のリビングルームなどで携帯機器を利用しているユーザを見かけることがある。
【０００３】
このように、携帯機器が小型化し、その携帯性が向上するにつれて利用シーンが多様化してくる。しかし、携帯性の向上効果は、持ち運びの利便性を向上させるが、様々な利用シーンへの適用性を向上させるわけではない。例えば、携帯機器は小型であるため、車内に持ち込むことは容易であるが、大きく揺れる車内では素早く正確な操作は難しい。そのため、携帯機器を製造する各社は、携帯機器を把持する部分の構造を工夫したり、操作手段の形状を工夫したりしている。
【０００４】
また、大きく揺れる車内や歩行中において、携帯機器の表示手段に表示された画像や文字などを正しく認識し難いという問題もある。つまり、携帯機器の振動に伴って表示手段に表示された画像や文字などがぶれるため、その表示内容が見づらくなってしまうのである。このような画像や文字などのぶれは、ユーザの視神経に大きな疲労を与えてしまう。そこで、携帯機器の振動をキャンセルする方向に画像や文字などを動かして、画像や文字などのぶれを低減させる技術が開発された。
【０００５】
上記の技術に関し、例えば、下記の特許文献１には、携帯機器の振動を検知し、その振動がキャンセルされる方向に表示画像を動かす技術が開示されている。また、同文献には、表示画像を動かした際に画面上に表示されない領域を切り取る技術が開示されている。さらに、同文献には、加速度センサを用いて携帯機器の振動を検知する技術が開示されている。但し、同文献１に記載の技術は、携帯機器の振動をキャンセルするために、当該振動の位相と逆位相になる振動を算出し、その振動を表示画像に与えるというものである。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０００−２２１９５４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかし、携帯機器の振動が生じるタイミングと、表示画像を動き補償するタイミングとの間には演算処理などに起因して遅延が生じる。そのため、携帯機器の振動が緩やかな場合には携帯機器に生じた振動の位相と、表示画像に与えられる振動の位相とがほぼ逆位相になるが、携帯機器の振動が激しい場合には両振動の位相は逆位相にならない。場合によっては、両振動の位相が強めあってしまう。その結果、ユーザの視点から見た表示画像の振動は大きくなり、ユーザの視神経に却って大きな疲労を与えてしまう。
【０００８】
例えば、揺れる車内で携帯機器を利用する場合には、携帯機器に小刻みで早い振動が生じることが多い。そのため、上記文献１の技術を適用すると、携帯機器の振動と、その振動をキャンセルするために表示画像に与えられた振動との間で頻繁に位相のずれが生じ、ユーザの視点に対する表示画像の振動が却って増大してしまう。また、人間の目は、視認対象の動きに対して追従する機能を有している。そのため、ユーザの視点に対して表示画像が完全に静止していなくても、その表示画像を正しく視認することができる。
【０００９】
そこで、本発明は、上記問題に鑑みてなされたものであり、本発明の目的とするところは、携帯機器に振動が生じた場合にユーザの視点に対する表示画像の振動をレイヤー単位で低減して、ユーザの疲労をより軽減することが可能な、新規かつ改良された画像安定化装置、画像安定化方法、及びプログラムを提供することにある。
【課題を解決するための手段】
【００１０】
上記課題を解決するために、本発明のある観点によれば、時系列の動きデータから振動を検出する振動センサと、複数のレイヤーにより構成される画像データを取得する画像データ取得部と、前記画像データ取得部により取得された画像データを表示する画像データ表示部と、前記画像データを構成する各レイヤーの種類に応じた度合いで、前記画像データ取得部に対し、前記振動センサにより検出された振動をキャンセルする方向に当該各レイヤーを動かす制御を実行する動き補正部と、を備える、画像安定化装置が提供される。
【００１１】
また、前記動き補正部は、制御の対象となるレイヤーの種類がテキストの表示画面に対応する場合、前記振動をキャンセルする方向に当該レイヤーを動かす度合いを大きくする制御を実行するように構成されていてもよい。
【００１２】
また、前記動き補正部は、制御の対象となるレイヤーの種類が画面端付近に表示される補助的な情報の表示画面に対応する場合、前記振動をキャンセルする方向に当該レイヤーを動かす度合いを小さくするか、或いは、前記振動をキャンセルする方向に当該レイヤーを動かさない制御を実行するように構成されていてもよい。
【００１３】
また、前記動き補正部は、制御の対象となるレイヤーの種類が操作対象のオブジェクトに対応する場合、前記振動をキャンセルする方向に当該レイヤーを動かす度合いを小さくするか、或いは、前記振動をキャンセルする方向に当該レイヤーを動かさない制御を実行するように構成されていてもよい。
【００１４】
また、上記の画像安定化装置は、前記画像データ表示部の上部に操作体が近接又は接触した状態、及び、前記画像データ表示部から前記操作体までの距離を検知することが可能なタッチセンサをさらに備えていてもよい。この場合、前記動き補正部は、前記タッチセンサにより検知された距離が所定の距離よりも短い場合、操作対象のオブジェクトに対応するレイヤーを、前記振動をキャンセルする方向に動かさない制御を実行する。
【００１５】
また、前記動き補正部は、前記画像データが３次元仮想空間を表現した３次元データである場合、前記３次元仮想空間の奥行き方向の深度に応じた度合いで、前記振動をキャンセルする方向に前記各レイヤーを動かす制御を実行するように構成されていてもよい。
【００１６】
また、前記動き補正部は、前記３次元仮想空間の消失点において前記振動がキャンセルされるように、前記振動をキャンセルする方向に前記各レイヤーを動かす制御を実行するように構成されていてもよい。
【００１７】
また、上記課題を解決するために、本発明の別の観点によれば、時系列の動きデータから振動を検出する振動検出ステップと、複数のレイヤーにより構成される画像データを取得する画像データ取得ステップと、前記画像データ取得ステップで取得された画像データを表示する画像データ表示ステップと、前記画像データ取得ステップにおいて、前記画像データを構成する各レイヤーの種類に応じた度合いで、前記振動検出ステップで検出された振動をキャンセルする方向に当該各レイヤーを動かす制御を実行する動き補償ステップと、を含む、画像安定化方法が提供される。
【００１８】
また、上記課題を解決するために、本発明の別の観点によれば、時系列の動きデータから振動を検出する振動センサ機能と、複数のレイヤーにより構成される画像データを取得する画像データ取得機能と、前記画像データ取得機能により取得された画像データを表示する画像データ表示機能と、前記画像データを構成する各レイヤーの種類に応じた度合いで、前記画像データ取得機能に対し、前記振動センサ機能により検出された振動をキャンセルする方向に当該各レイヤーを動かす制御を実行する動き補償機能と、をコンピュータに実現させるためのプログラムが提供される。
【００１９】
また、上記課題を解決するために、本発明の別の観点によれば、上記のプログラムが記録された、コンピュータにより読み取り可能な記録媒体が提供される。
【発明の効果】
【００２０】
以上説明したように本発明によれば、携帯機器に振動が生じた場合にユーザの視点に対する表示画像の振動をレイヤー単位で低減して、ユーザの疲労をより軽減することが可能になる。
【図面の簡単な説明】
【００２１】
【図１】本発明の第１実施形態に係る携帯機器の機能構成について説明するための説明図である。
【図２】同実施形態に係る携帯機器を構成する状態検知部の動作について説明するための説明図である。
【図３】同実施形態に係るキャンセル適用強度の算出方法について説明するための説明図である。
【図４】同実施形態に係るキャンセル適用強度の算出方法について説明するための説明図である。
【図５】同実施形態に係る振動キャンセリング方法に用いるレイヤー毎の補正量の決定方法について説明するための説明図である。
【図６】同実施形態に係る振動キャンセリング方法に用いるレイヤー毎の補正量の決定方法について説明するための説明図である。
【図７】同実施形態に係る振動キャンセリング方法に用いるレイヤー毎の補正量の決定方法について説明するための説明図である。
【図８】同実施形態に係る携帯機器を構成するフィルタ部の動作について説明するための説明図である。
【図９】同実施形態に係る振動キャンセリングの適用時に用いる補正量の算出方法について説明するための説明図である。
【図１０】同実施形態に係る振動キャンセリングの適用時に用いる補正量の算出方法について説明するための説明図である。
【図１１】ＦＩＲフィルタの回路構成例を示す説明図である。
【図１２】同実施形態に係る動き補償方法について説明するための説明図である。
【図１３】同実施形態に係るレイヤーの多重化方法について説明するための説明図である。
【図１４】同実施形態に係る携帯機器を構成するフィルタ部の動作（変形例）について説明するための説明図である。
【図１５】同実施形態に係る振動キャンセリング方法に用いるレイヤー毎の補正量の決定方法について説明するための説明図である。
【図１６】同実施形態に係る振動キャンセリング方法に用いるレイヤー毎の補正量の決定方法について説明するための説明図である。
【図１７】同実施形態に係る振動キャンセリング方法に用いるレイヤー毎の補正量の決定方法について説明するための説明図である。
【図１８】本発明の第２実施形態に係る携帯機器の機能構成について説明するための説明図である。
【図１９】同実施形態に係る振動キャンセリング方法について説明するための説明図である。
【図２０】同実施形態に係る振動キャンセリング方法について説明するための説明図である。
【図２１】同実施形態に係る振動キャンセリング方法について説明するための説明図である。
【図２２】本発明の第３実施形態に係る携帯機器の機能構成について説明するための説明図である。
【図２３】同実施形態に係る振動キャンセリング方法について説明するための説明図である。
【図２４】同実施形態に係る振動キャンセリング方法について説明するための説明図である。
【図２５】同実施形態に係る振動キャンセリング方法について説明するための説明図である。
【図２６】同実施形態に係る振動キャンセリング方法について説明するための説明図である。
【図２７】同実施形態に係る振動キャンセリング方法について説明するための説明図である。
【図２８】本発明の第１〜第３実施形態に係る携帯機器の機能を実現することが可能なハードウェア構成について説明するための説明図である。
【発明を実施するための形態】
【００２２】
以下に添付図面を参照しながら、本発明の好適な実施の形態について詳細に説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。
【００２３】
［説明の流れについて］
ここで、以下に記載する本発明の実施形態に関する説明の流れについて簡単に述べる。
【００２４】
まず、図１を参照しながら、本発明の第１実施形態に係る携帯機器１０の機能構成について説明する。次いで、図２を参照しながら、同実施形態に係る状態検知部１１５の動作について説明する。次いで、図３〜図７を参照しながら、同実施形態に係るキャンセル適用強度の算出方法について説明する。
【００２５】
次いで、図８を参照しながら、同実施形態に係るフィルタ部１１７の動作について説明する。次いで、図９、図１０を参照しながら、同実施形態に係る振動キャンセリングの適用時に用いる補正量の算出方法について説明する。この中で、図１１を参照しながら、同実施形態に係る振動キャンセリングの適用時に用いるフィルタの一例について述べる。また、図１２を参照しながら、同実施形態に係る動き補償方法について説明する。さらに、図１３を参照しながら、同実施形態に係るレイヤーの多重化方法について説明する。
【００２６】
次いで、図１４を参照しながら、同実施形態の一変形例に係るフィルタ部１１７の動作について説明する。次いで、図１５〜図１７を参照しながら、同実施形態に係る振動キャンセリングの適用時に用いる補正量の算出方法について説明する。
【００２７】
次いで、図１８を参照しながら、本発明の第２実施形態に係る携帯機器１０の機能構成について説明する。次いで、図１９〜図２１を参照しながら、同実施形態に係るフィルタ強度の決定方法について説明する。次いで、図２２を参照しながら、本発明の第３実施形態に係る携帯機器１０の機能構成について説明する。次いで、図２３〜図２５を参照しながら、同実施形態に係る３次元コンピュータグラフィックス（以下、３ＤＣＧ）に対する振動キャンセリングの適用方法について説明する。
【００２８】
次いで、図２８を参照しながら、本発明の第１〜第３実施形態に係る携帯機器１０の機能を実現することが可能なハードウェアの構成について説明する。最後に、同実施形態の技術的思想について纏め、当該技術的思想から得られる作用効果について簡単に説明する。
【００２９】
（説明項目）
１：第１実施形態
１−１：携帯機器１０の機能構成
１−２：状態検知部１１５の動作
１−２−１：処理の流れ
１−２−２：振動係数の算出方法
１−２−３：キャンセル適用強度の算出方法
１−３：フィルタ部１１７の動作
１−３−１：処理の流れ
１−３−２：予測値の算出
１−３−３：補正量の算出
１−４：（変形例）フィルタ部１１７の動作
１−４−１：処理の流れ
１−４−２：補正量の減衰
２：第２実施形態
２−１：携帯機器１０の機能構成
２−２：キャンセル適用強度の調整方法
３：第３実施形態
３−１：携帯機器１０の機能構成
３−２：補正量の調整方法
４：ハードウェア構成
５：まとめ
【００３０】
＜１：第１実施形態＞
本発明の第１実施形態について説明する。本実施形態は、携帯機器１０に振動が加えられた状況で、ユーザの視点に対して生じる表示画像の振動を低減させる方法に関する。この方法は、ユーザの視点に対して表示画像を「静止」させる方法ではなく、ユーザの疲労を軽減させるために表示画像の振動を「低減」させる方法である点に注意されたい。
【００３１】
［１−１：携帯機器１０の機能構成］
まず、図１を参照しながら、本実施形態に係る携帯機器１０の機能構成について説明する。図１は、本実施形態に係る携帯機器１０の機能構成について説明するための説明図である。
【００３２】
図１に示すように、携帯機器１０は、主に、画像安定化モジュール１１と、多重化部１２と、表示部１３とにより構成される。画像安定化モジュール１１は、ユーザの視点に対する表示画像の振動を低減させる手段である。多重化部１２は、複数のレイヤーを多重化して表示画像を生成する手段である。表示部１３は、多重化部１２により生成された表示画像を表示する手段である。本実施形態に係る携帯機器１０の特徴は、主に、画像安定化モジュール１１の構成にある。そこで、以下では画像安定化モジュール１１の構成について、より詳細に説明する。
【００３３】
図１に示すように、画像安定化モジュール１１は、主に、画像データ取得部１１１と、動きセンサ１１２と、座標変換部１１３と、ＦＩＦＯバッファ１１４と、状態検知部１１５とを有する。さらに、画像安定化モジュール１１は、ユーザ入力部１１６と、フィルタ部１１７と、補正ベクトル生成部１１８と、動き補償部１１９とを有する。なお、フィルタ部１１７、補正ベクトル生成部１１８、動き補償部１１９を含むブロックＬは、レイヤー毎に処理を実行する。
【００３４】
（画像データ取得部１１１）
画像データ取得部１１１は、画像データを取得する手段である。例えば、画像データ取得部１１１は、時系列で並んだフレーム群を取得する。但し、このフレーム群を構成する各フレームは、一定の時間間隔（固定フレーム間隔）で配置されていてもよいし、不定の時間間隔（可変フレーム間隔）で配置されていてもよい。また、各フレームは、複数のレイヤーにより構成される。
【００３５】
なお、各レイヤーには、重ね合わせる順番を示す番号と用途情報が対応付けられている。例えば、最上位のレイヤーには番号０が、次のレイヤーには番号１が対応付けられている。また、用途情報は、メニュー画面、映像面、操作オブジェクトなど、レイヤーに表示される画像の用途を規定するものである。画像データ取得部１１１により取得された画像データは、動き補償部１１９に入力される。以下の説明においては、各フレーム又は各レイヤーのことを画像データと呼ぶ場合がある。
【００３６】
（動きセンサ１１２）
動きセンサ１１２は、携帯機器１０の動きを検知する手段である。例えば、動きセンサ１１２は、６軸センサや２軸センサなどにより構成される。なお、６軸センサは、互いに直交する３つの軸方向に対する加速度と、互いに直交する３つの軸を基軸とする回転とを検知することが可能なセンサである。また、２軸センサは、直交する２つの軸方向に対する加速度を検知することが可能なセンサである。以下の説明においては、動きセンサ１１２により検知された動きを示すデータを動きデータと呼ぶことにする。
【００３７】
動きセンサ１１２は、所定のサンプリング周期で動きデータを出力する。このサンプリング周期は、画像データのフレームレートとは無関係である。また、このサンプリングレートは、固定レートであってもよいし、可変レートであってもよい。但し、サンプリング定理により、携帯機器１０の振動をキャンセルするために画像データを振動させる周波数の２倍以上のサンプリングレートが必要になる。また、動きセンサ１１２から出力された動きデータは、座標変換部１１３に入力される。
【００３８】
（座標変換部１１３）
座標変換部１１３は、動きセンサ１１２から入力された動きデータを後段のフィルタ部１１７において利用できるデータ形式に変換する手段である。例えば、動きセンサ１１２が６軸センサの場合、重力加速度を含む動きデータが得られる。つまり、座標変換部１１３に入力される動きデータは、純粋に携帯機器１０の動きを表現した動きデータになっていない。そこで、座標変換部１１３は、動きセンサ１１２から入力された動きデータから重力加速度の成分を除去し、携帯機器１０の動きを表現した動きデータを生成する。座標変換部１１３により生成された動きデータは、ＦＩＦＯバッファ１１４に入力される。
【００３９】
（ＦＩＦＯバッファ１１４）
ＦＩＦＯバッファ１１４は、座標変換部１１３により入力された動きデータを蓄積する手段である。なお、ＦＩＦＯバッファ１１４は、所定の蓄積量が一杯になった状態で次の動きデータが入力されると、最も古い動きデータを廃棄する。この蓄積量は、例えば、１秒分（例えば、フレームレートが３０ｆｐｓならば３０フレーム分）のデータ量に設定される。ＦＩＦＯバッファ１１４に蓄積された動きデータは、状態検知部１１５、フィルタ部１１７により読み出される。
【００４０】
（状態検知部１１５）
状態検知部１１５は、キャンセル適用強度を算出する手段である。但し、ここで言うキャンセル適用強度とは、ユーザの視点に対する画像データの振動をキャンセルする強さを表す値である。まず、状態検知部１１５は、ＦＩＦＯバッファ１１４から動きデータ（Ｄｔ，…，Ｄｔ＋ｎ）を取得する。但し、Ｄｔは、時刻ｔにおいて検知された動きデータである。動きデータ（Ｄｔ，…，Ｄｔ＋ｎ）を取得した状態検知部１１５は、下記の式（１）に示すように、所定の関数ｆに動きデータ（Ｄｔ，…，Ｄｔ＋ｎ）を入力して振動係数ｓを算出する。
【００４１】
【数１】
2011257553.tif 000003
【００４２】
この関数ｆは、動きデータ（Ｄｔ，…，Ｄｔ＋ｎ）で表現された動きの激しさを数値化するための変換式である。また、振動係数ｓは、動きデータ（Ｄｔ，…，Ｄｔ＋ｎ）で表現された動きの激しさを表現した数値である。例えば、上記の関数ｆは、動きデータ（Ｄｔ，…，Ｄｔ＋ｎ）を直交変換し、所定の周波数領域における最大振幅値を出力する変換式である。なお、直交変換の例としては、フーリエ変換などを挙げることができる。
【００４３】
上記のようにして振動係数ｓを算出した状態検知部１１５は、振動係数ｓに基づいてキャンセル適用強度を算出する。例えば、キャンセルを適用する状態とキャンセルを適用しない状態の２状態しか考慮しない場合、状態検知部１１５は、図３に示すように、２つの閾値Ｔ１、Ｔ２と振動係数ｓとの比較結果に基づいてキャンセル適用強度を算出する。但し、キャンセル適用状態の場合にはキャンセル適用強度は１．０である。一方、キャンセル非適用状態の場合にはキャンセル適用強度は０．０である。
【００４４】
上記の通り、振動係数ｓが大きい場合とは、携帯機器１０の振動は激しい状態を示している。携帯機器１０の振動が激しい場合、その振動をキャンセルする方向に画像データを動かそうとすると、ユーザの視点に対する画像データの振動が低減しないばかりか、却ってユーザの視点に対する画像データの振動が増大してしまう可能性がある。また、画像データを大きく動かすと、多くの画像領域が画面外に移動してしまい、画像データの非表示領域が大きくなり過ぎてしてしまう。そのため、携帯機器１０の振動が激しい場合には、振動のキャンセルを適用しない方が好ましいと考えられる。
【００４５】
一方、振動係数ｓが小さい場合とは、携帯機器１０の振動が緩やかな状態を示している。携帯機器１０の振動が緩やかな場合には、ユーザが容易に画像データの動きを追従できる。そのため、振動係数ｓが小さい場合にはキャンセルを適用する必要がない。
【００４６】
上記の理由から閾値Ｔ１、Ｔ２は、次のように決定することが好ましい。例えば、閾値Ｔ１は、振動係数ｓが示す振動の幅が画面サイズの１％程度になるように決定することが好ましい。つまり、閾値Ｔ１は、ユーザの視点に対する画像データの振動が無視できる程度の値になるように決定することが好ましい。一方、閾値Ｔ２は、振動係数ｓが示す振動の幅が画面サイズの１０％程度にすることが好ましい。つまり、キャンセルを適用した場合に、キャンセルの効果を得られ、かつ、非表示領域が大きくなり過ぎてしまわない程度の値に決定することが好ましい。
【００４７】
なお、閾値Ｔ１、Ｔ２の数値は、上記の例に限定されない。また、閾値Ｔ１、Ｔ２は固定値であってもよいし、可変にしてもよい。
【００４８】
これまで説明してきたキャンセル適用強度の決定方法は、キャンセルを適用する状態とキャンセルを適用しない状態の２状態のみを考慮したものであった。一方で、振動係数ｓに応じて連続的にキャンセル適用強度を決定する方法も考えられる。
【００４９】
例えば、図４に示すように、キャンセル適用強度を０．０〜１．０の実数で定義することができる。この場合、キャンセル非適用状態は、キャンセル適用強度が０．０の状態として定義される。また、キャンセル適用強度の特性は、例えば、図４に示すような曲線又はその他の曲線や直線により表現される。もちろん、振動係数ｓに応じてキャンセル適用強度を決める特性の形状は図４の例に限定されない。なお、以下の説明においては、連続的な値で定義されたキャンセル適用強度を用いる場合を想定して説明を進める。
【００５０】
上記のように、状態検知部１１５は、動きセンサ１１２の各軸について、ＦＩＦＯバッファ１１４から読み出した動きデータ（Ｄｔ，…，Ｄｔ＋ｎ）を用いて振動係数ｓを算出し、その振動係数ｓに基づいてキャンセル適用強度を算出する。このようにして状態検知部１１５により算出されたキャンセル適用強度は、フィルタ部１１７に入力される。
【００５１】
（ユーザ入力部１１６）
ユーザ入力部１１６は、ユーザが様々なデータを入力する手段である。
【００５２】
（フィルタ部１１７）
フィルタ部１１７は、ユーザの視点に対する画像データの振動をキャンセルするために画像データを動かす量（以下、補正量）を算出する手段である。まず、フィルタ部１１７は、ＦＩＦＯバッファ１１４から動きデータ（Ｄｔ，…，Ｄｔ＋ｎ）を読み出し、次フレームの表示時点ｔ＋ｎ＋１における動きデータＤｔ＋ｎ＋１を算出する。このとき、動きデータＤｔ＋ｎ＋１（予測値）は、動きセンサ１１２の軸毎に算出される。
【００５３】
なお、動きデータＤｔ＋ｎ＋１の算出方法は、例えば、図９に示すように、直近の２サンプル（Ｄｔ＋ｎ−１，Ｄｔ＋ｎ）を利用した線形予測方法であってもよいし、動きデータ（Ｄｔ，…，Ｄｔ＋ｎ）のスプライン曲線を利用した予測方法であってもよい。
【００５４】
次に、フィルタ部１１７は、予測値を含む動きデータ（Ｄｔ，…，Ｄｔ＋ｎ，Ｄｔ＋ｎ＋１）を所定のフィルタに適用する。このフィルタとしては、平均化フィルタやバイラテラルフィルタなど、ローパス特性又はバンドパス特性のあるフィルタを利用することができる。例えば、図１１に示したＦＩＲフィルタを利用することができる。但し、フィルタ部１１７は、状態検知部１１５により入力されたキャンセル適用強度、ユーザ入力部１１６を介してユーザにより入力されたフィルタ強度、及び各レイヤーの属性情報（図５〜図７を参照）に応じてフィルタのタップ長を変える。
【００５５】
例えば、キャンセル適用強度が大きい場合、フィルタ部１１７は、フィルタのタップ長を長くする。一方、キャンセル適用強度が小さい場合、フィルタ部１１７は、フィルタのタップ長を短くする。また、ユーザにより入力されたフィルタ強度が強い場合、フィルタ部１１７は、フィルタのタップ長を長くする。一方、ユーザにより入力されたフィルタ強度が弱い場合、フィルタ部１１７は、フィルタのタップ長を短くする。例えば、フィルタ部１１７は、基準となるタップ長を３０サンプルなどと定め、キャンセル適用強度に応じて基準となるタップ長からタップ長を増減させる。
【００５６】
さらに、フィルタ部１１７は、各レイヤーの属性情報に応じてフィルタのタップ長を調整する。フィルタ部１１７には、画像データ取得部１１１により取得された各レイヤーの属性情報が入力される。この属性情報は、レイヤーの用途を示す情報である。
【００５７】
例えば、携帯機器１０が携帯ゲーム機の場合、図５に示すように、「ゲームのメイン画面」を用途とするレイヤーや、「得点などのオーバーレイ」を用途とするレイヤーが画像データに含まれる。ゲームのメイン画面の場合、キャンセルを適用する方がユーザの視認性向上に寄与すると考えられるため、この場合には重み係数１．０が設定されている。この重み係数は、キャンセル適用強度に乗算されるものである。従って、重み係数が大きい程、フィルタのタップ長が長く設定される。一方、得点などのオーバーレイ表示の場合、キャンセルを適用しない方がユーザの視認性向上に寄与すると考えられるため、この場合には重み係数０．０が設定されている。
【００５８】
また、操作ボタンのオブジェクトが含まれる場合がある。この場合、キャンセルの適用により操作ボタンが携帯機器１０に対して動いてしまうと、操作性が低下してしまうと考えられる。そのため、図６に示すように、「操作ボタンのオブジェクト」を用途とするレイヤーに対しては重み係数０．０が設定され、キャンセルが適用されないようにする。また、携帯機器１０がｅＢｏｏｋＲｅａｄｅｒのようにテキストを表示する端末の場合、「テキストの表示画面」を用途とするレイヤーには、キャンセルを適用する方がユーザの視認性向上に寄与すると考えられる。そのため、図７に示すように、テキストの表示画面を用途とするレイヤーに対しては重み係数１．０が設定されている。
【００５９】
このように、レイヤーの用途に応じてキャンセルの適用制御が行われることにより、ユーザの操作性や視認性を向上させることができる。レイヤーの属性情報、及び各属性情報に応じた重み係数は、図５〜図７に例示したように予め設定されており、フィルタ部１１７は、この重み係数をキャンセル適用強度に乗算し、その乗算結果に応じてフィルタのタップ長を決定する。この処理により、レイヤーの用途に応じたキャンセルの適用制御が実現される。
【００６０】
さて、予測値を含む動きデータ（Ｄｔ，…，Ｄｔ＋ｎ，Ｄｔ＋ｎ＋１）を適用したフィルタの出力値は、図１０に示したフィルタ適用後の補間ラインのようになる。なお、以下の説明においては、フィルタ適用後の補間ライン上の値をフィルタ適用後データと呼ぶことにする。フィルタ適用後データを得たフィルタ部１１７は、次フレームの表示時点ｔ＋ｎ＋１におけるフィルタ適用後データと予測値Ｄｔ＋ｎ＋１の差分を補正量に設定する。また、フィルタ部１１７は、補正量の単位を動きデータの単位（インチなど）から画像データの単位（ピクセル）に変換する。このようにして各軸に対応する補正量が画像データの単位で得られる。
【００６１】
次に、フィルタ部１１７は、画面上で画像データを移動可能な距離の最大値（以下、最大画面移動量）を算出する。最大画面移動量は、画像データに設定された保護領域と画枠の位置との関係から算出される。ここで言う保護領域とは、キャンセルが適用されたとしても、画像データ中で必ず表示したい領域として予め設定された領域である。この場合、最大画面移動量は、保護領域の境界と画枠との間の距離により決定される。
【００６２】
上記のようにして最大画面移動量を算出した後、フィルタ部１１７は、各軸の方向に対して補正量と最大画面移動量を比較する。そして、フィルタ部１１７は、補正量が最大画面移動量よりも大きい場合、補正量が最大画面移動量となるように補正量を再設定する。このようにして補正量を再設定することにより、補正量に基づいて画像データを動かしたとしても、保護領域が画面内に必ず表示されるようになる。なお、保護領域を設けない場合や、その他の制限により最大画面移動量を決める場合には、必要に応じて、その最大画面移動量に基づく補正量が再設定される。
【００６３】
上記のように、フィルタ部１１７により算出された補正量又は最大画面移動量に基づいて再設定された補正量は、補正ベクトル生成部１１８に入力される。ところで、上記説明においては、画像データの補正量、画像データの最大画面移動量という表現を用いてきたが、上記の処理はレイヤー毎に実行される。つまり、レイヤー毎に保護領域が設定されていたり、各レイヤーに対して最大画面移動量が算出されたりして、レイヤー毎に補正量が設定される。そして、レイヤー毎に設定された補正量がフィルタ部１１７から補正ベクトル生成部１１８に入力される。
【００６４】
（補正ベクトル生成部１１８、動き補償部１１９）
補正ベクトル生成部１１８は、フィルタ部１１７により入力された補正量を用いてレイヤーの位置を補正するための補正ベクトルを生成する手段である。この補正ベクトルは、動き補償によりキャンセル適用前のレイヤーをキャンセル適用後のレイヤーに変換する変換手段である。キャンセル適用前のレイヤーを構成する各画素の座標をＸ、キャンセル適用後の各画素の座標をＸ’とすると、座標Ｘ’は、下記の式（２）〜式（７）を用いて表現される。但し、パラメータ（ｈ，ｖ，θ，ｐ，ｈｃ，ｖｃ）は、フィルタ部１１７により入力された各軸の補正量に関するパラメータである。
【００６５】
【数２】
2011257553.tif 000004
【００６６】
補正ベクトル生成部１１８は、フィルタ部１１７により入力された軸毎の補正量から、上記の式（２）〜式（７）を用いてパラメータ（ｈ，ｖ，θ，ｐ，ｈｃ，ｖｃ）を算出し、下記の式（８）で表現される補正行列Ｖを動き補償部１１９に入力する。動き補償部１１９は、補正ベクトル生成部１１８により入力された補正行列Ｖを用いてレイヤーの動き補償を実施する。例えば、動き補償部１１９は、図１２に示すように、線形補間を用いて整数ピクセル以下の精度で動き補償を実施する。動き補償部１１９により動き補償されたレイヤーは、多重化部１２に入力される。
【００６７】
【数３】
2011257553.tif 000005
【００６８】
以上、画像安定化モジュール１１の構成について詳細に説明した。動き補償部１１９から多重化部１２に入力されたレイヤー群は、図１３に示すように、アルファブレンディングされて１枚のフレームに多重化される。但し、各レイヤーには、ピクセル単位又はレイヤー単位でアルファ値（透過量を示すパラメータ）が設定されているものとする。そして、多重化部１２により得られた１枚のフレームは、表示部１３に表示される。
【００６９】
以上、本実施形態に係る携帯機器１０の機能構成について説明した。
【００７０】
［１−２：状態検知部１１５の動作］
次に、図２を参照しながら、状態検知部１１５の動作について説明を補足する。図２は、状態検知部１１５による処理の流れについて説明するための説明図である。
【００７１】
（１−２−１：処理の流れ）
図２に示すように、状態検知部１１５は、ＦＩＦＯバッファ１１４から動きデータを取得する（Ｓ１０１）。次いで、状態検知部１１５は、ステップＳ１０１で取得した動きデータに基づいて振動係数を算出する（Ｓ１０２）。次いで、状態検知部１１５は、ステップＳ１０２で算出した振動係数に基づいてキャンセル適用強度を算出する（Ｓ１０３）。
【００７２】
（１−２−２：振動係数の算出方法）
ここで、ステップＳ１０２における振動係数ｓの算出方法について説明する。なお、ステップＳ１０１において状態検知部１１５により動きデータ（Ｄｔ，…，Ｄｔ＋ｎ）が取得されているものとする。振動係数ｓは、動きデータ（Ｄｔ，…，Ｄｔ＋ｎ）で表現された動きの激しさを表現するための数値である。動きの激しさは、高周波成分の強度により表現することができる。そこで、状態検知部１１５は、動きデータ（Ｄｔ，…，Ｄｔ＋ｎ）をフーリエ変換して周波数データを算出し、その高周波成分の振幅を利用する。例えば、状態検知部１１５は、周波数データのうち、所定の周波数領域における最大振幅値を振動係数ｓとして算出する。
【００７３】
（１−２−３：キャンセル適用強度の算出方法）
次に、ステップＳ１０３におけるキャンセル適用強度の算出方法について説明する。
【００７４】
（２状態しか考慮しない場合）
キャンセルを適用する場合とキャンセルを適用しない場合の２状態しか考慮しない場合、図３に示すように、状態検知部１１５は、２つの閾値Ｔ１、Ｔ２と振動係数ｓとの比較結果に基づいてキャンセル適用強度を算出する。但し、キャンセル適用状態の場合にはキャンセル適用強度は１．０である。一方、キャンセル非適用状態の場合にはキャンセル適用強度は０．０である。
【００７５】
上記の通り、振動係数ｓが大きい場合、携帯機器１０の振動は激しい。携帯機器１０の振動が激しい場合、演算処理に起因する遅延などから、その振動をキャンセルする方向に画像データを動かそうとすると、ユーザの視点に対する画像データの振動が低減しないばかりか、却ってユーザの視点に対する画像データの振動が増大してしまう可能性がある。また、画像データを大きく動かすと、多くの画像領域が画面外に移動してしまい、画像データの非表示領域が大きくなり過ぎてしてしまう。そのため、携帯機器１０の振動が激しい場合には、振動のキャンセルを適用しない方が好ましい。
【００７６】
一方、振動係数ｓが小さい場合、携帯機器１０の振動は緩やかである。携帯機器１０の振動が緩やかな場合には、ユーザが疲労せずに画像データの動きを追従できる。そのため、振動係数ｓが小さい場合にはキャンセルを適用する必要がない。
【００７７】
上記の理由から閾値Ｔ１、Ｔ２は、次のように決定することが好ましい。例えば、閾値Ｔ１は、振動係数ｓが示す振動の幅が画面サイズの１％程度にする。つまり、閾値Ｔ１は、ユーザの視点に対する画像データの振動が無視できる程度の値に設定する。一方、閾値Ｔ２は、振動係数ｓが示す振動の幅が画面サイズの１０％程度にする。つまり、キャンセルを適用した場合に、キャンセルの効果が得られ、かつ、非表示領域が大きくなり過ぎてしまわない値に設定する。なお、閾値Ｔ１、Ｔ２の数値は、これらの例に限定されない。なお、閾値Ｔ１、Ｔ２は固定値であってもよいし、可変にしてもよい。
【００７８】
（キャンセル適用強度を連続値にする場合）
また、振動係数ｓに応じて連続的にキャンセル適用強度を決定する方法も考えられる。例えば、図４に示すように、キャンセル適用強度を０．０〜１．０の実数で定義することができる。このとき、キャンセル非適用状態は、キャンセル適用強度が０．０の状態として定義される。図４に例示したキャンセル適用強度の特性曲線は、振動係数ｓの増加に伴って滑らかにキャンセル適用強度が増減するものであるが、キャンセル適用強度の特性はこれに限定されない。例えば、振動係数ｓ１からキャンセル適用強度が線形に増加し、振動係数ｓ２（ｓ２＞ｓ１）でキャンセル適用強度１．０に到達した後、振動係数ｓ３（ｓ３＞ｓ２）からキャンセル適用強度が線形に減少するような特性であってもよい。
【００７９】
以上、状態検知部１１５の動作について説明した。
【００８０】
［１−３：フィルタ部１１７の動作］
次に、図８を参照しながら、フィルタ部１１７の動作について説明を補足する。図８は、フィルタ部１１７による処理の流れについて説明するための説明図である。
【００８１】
（１−３−１：処理の流れ）
図８に示すように、フィルタ部１１７は、ＦＩＦＯバッファ１１４から読み出した動きデータに基づいて次フレームの表示時刻における動きデータ（予測値；図９を参照）を予測する（Ｓ１１１）。次いで、フィルタ部１１７は、キャンセル適用強度に応じたタップ長を選択する（Ｓ１１２）。このとき、フィルタ部１１７は、レイヤーの用途毎に設定された重み係数をキャンセル適用強度に乗算し、その乗算結果からタップ長を選択する。
【００８２】
次いで、フィルタ部１１７は、予測値を含む動きデータを所定のフィルタに適用してキャンセル適用後の予測値を算出する（Ｓ１１３）。次いで、フィルタ部１１７は、キャンセル適用後の予測値からフィルタ適用前の予測値を差し引いて補正量（図１０を参照）を算出する（Ｓ１１４）。次いで、フィルタ部１１７は、補正量の単位を動きデータの単位（インチなど）から画像データの単位（ピクセル）に変換する（Ｓ１１５）。
【００８３】
次いで、フィルタ部１１７は、最大画面移動量に基づいて補正量を再設定（クリッピング処理）する（Ｓ１１６）。例えば、補正量が最大画面移動量を超えている場合には最大画面移動量を新たな補正量に設定し、補正量が最大画面移動量を超えていない場合にはステップＳ１１３で算出された補正量のまま維持する。
【００８４】
（１−３−２：予測値の算出）
ここで、ステップＳ１１１における予測値の算出方法について説明する。
【００８５】
予測値の算出方法としては、例えば、図９に示すように、直近の２サンプル（Ｄｔ＋ｎ−１，Ｄｔ＋ｎ）を利用した線形予測方法がある。この方法は、直近の２サンプル（Ｄｔ＋ｎ−１，Ｄｔ＋ｎ）を結ぶ直線を延長し、次フレームの表示時点ｔ＋ｎ＋１における動きデータＤｔ＋ｎ＋１を予測するというものである。
【００８６】
また、予測値の算出方法としては、例えば、動きデータ（Ｄｔ，…，Ｄｔ＋ｎ）のスプライン曲線を利用した予測方法も考えられる。この方法は、動きデータ（Ｄｔ，…，Ｄｔ＋ｎ）に基づくスプライン曲線を算出し、そのスプライン曲線を次フレームの表示時点ｔ＋ｎ＋１まで延長することにより動きデータＤｔ＋ｎ＋１を予測するというものである。
【００８７】
（１−３−３：補正量の算出）
次に、ステップＳ１１３、Ｓ１１４における補正量の算出方法について説明する。
【００８８】
補正量を算出する際、まず、図１０に示すようにフィルタ適用後の補間ラインが算出される。このフィルタ適用後の補間ラインは、予測値を含む動きデータ（Ｄｔ，…，Ｄｔ＋ｎ，Ｄｔ＋ｎ＋１）を適用したフィルタの出力値である。フィルタ適用後の補間ラインは、ユーザの視点に対する画像データの振動を抑制した振動状態に相当する。つまり、次フレームの表示時点ｔ＋ｎ＋１におけるフィルタ適用後データは、キャンセル適用後に得られる動きデータの予測値に相当する。そこで、フィルタ適用後データを得たフィルタ部１１７は、次フレームの表示時点ｔ＋ｎ＋１におけるフィルタ適用後データと予測値Ｄｔ＋ｎ＋１の差分を補正量に設定する。
【００８９】
以上、フィルタ部１１７の動作について説明した。
【００９０】
［１−４：（変形例）フィルタ部１１７の動作］
ここで、図１４を参照しながら、本実施形態の一変形例に係るフィルタ部１１７の動作について説明する。図１４は、同変形例に係るフィルタ部１１７により実行される処理の流れについて説明するための説明図である。
【００９１】
（１−４−１：処理の流れ）
図１４に示すように、フィルタ部１１７は、ＦＩＦＯバッファ１１４から読み出した動きデータに基づいて次フレームの表示時刻における動きデータ（予測値；図９を参照）を予測する（Ｓ１２１）。次いで、フィルタ部１１７は、予測値を含む動きデータを所定のフィルタに適用してキャンセル適用後の予測値を算出する（Ｓ１２２）。次いで、フィルタ部１１７は、キャンセル適用後の予測値からフィルタ適用前の予測値を差し引いて補正量（図１０を参照）を算出する（Ｓ１２３）。
【００９２】
次いで、フィルタ部１１７は、補正量の単位を動きデータの単位（インチなど）から画像データの単位（ピクセル）に変換する（Ｓ１２４）。次いで、フィルタ部１１７は、後述する減衰係数に応じた補正量の減衰処理を実行する（Ｓ１２５）。次いで、フィルタ部１１７は、最大画面移動量に基づいて補正量を再設定（クリッピング処理）する（Ｓ１２６）。例えば、補正量が最大画面移動量を超えている場合には最大画面移動量を新たな補正量に設定し、補正量が最大画面移動量を超えていない場合にはステップＳ１１３で算出された補正量のまま維持する。
【００９３】
（１−４−２：補正量の減衰）
ここで、ステップＳ１２５における減衰係数に応じた補正量の減衰処理について説明を補足する。先に述べたように、各レイヤーには、属性情報が対応付けられている。また、先に説明した例においては、各レイヤーに対して属性毎に重み係数が対応付けられていた。本変形例では、キャンセル適用強度を調整するための重み係数に代えて、補正量を調整するための減衰係数を導入する。本変形例の場合、例えば、図１５〜図１７に示すように、属性情報の種類に応じて減衰係数が予め設定されている。
【００９４】
例えば、携帯機器１０が携帯ゲーム機の場合、図１５に示すように、「ゲームのメイン画面」を用途とするレイヤーや、「得点などのオーバーレイ」を用途とするレイヤーが画像データに含まれる。ゲームのメイン画面の場合、キャンセルを適用する方がユーザの視認性向上に寄与すると考えられるため、この場合には減衰係数１．０が設定されている。この減衰係数は、補正量に乗算されるものである。従って、減衰係数が大きい程、キャンセルが強く適用される。一方、得点などのオーバーレイ表示の場合、キャンセルを適用しない方がユーザの視認性向上に寄与すると考えられるため、この場合には重み係数０．０が設定されている。
【００９５】
また、操作ボタンのオブジェクトが含まれる場合がある。この場合、キャンセルの適用により操作ボタンが携帯機器１０に対して動いてしまうと、操作性が低下してしまうと考えられる。そのため、図１６に示すように、「操作ボタンのオブジェクト」を用途とするレイヤーに対しては減衰係数０．０が設定され、キャンセルが適用されないようにする。また、携帯機器１０がｅＢｏｏｋＲｅａｄｅｒのようにテキストを表示する端末の場合、「テキストの表示画面」を用途とするレイヤーには、キャンセルを適用する方がユーザの視認性向上に寄与すると考えられる。そのため、図１７に示すように、テキストの表示画面を用途とするレイヤーに対しては減衰係数１．０が設定されている。
【００９６】
このように、レイヤーの用途に応じてキャンセルの適用制御が行われることにより、ユーザの操作性や視認性を向上させることができる。レイヤーの属性情報、及び各属性情報に応じた減衰係数は、図１５〜図１７に例示したように予め設定されており、フィルタ部１１７は、この減衰係数を補正量に乗算し、その乗算結果を新たな補正量として補正ベクトル生成部１１８に入力する。この処理により、レイヤーの用途に応じたキャンセルの適用制御が実現される。
【００９７】
以上、本変形例に係るフィルタ部１１７の動作について説明した。
【００９８】
以上、本発明の第１実施形態について説明した。本実施形態は、振動係数ｓに基づいてキャンセル適用強度を算出し、そのキャンセル適用強度に基づく振動のキャンセリングを実施する方法に１つの特徴がある。この方法を適用することにより、携帯機器１０が手振れなどにより振動しても、ユーザの疲労を低減させることが可能になる。さらに、本実施形態は、レイヤーの用途に応じてキャンセルの適用制御を実行する部分にもう１つの特徴がある。このような構成を適用することにより、表示内容に応じてユーザの操作性や視認性を向上させることが可能になる。
【００９９】
＜２：第２実施形態＞
次に、本発明の第２実施形態について説明する。本実施形態は、ユーザの操作状況に応じて、操作オブジェクトに対するキャンセル適用強度を調整する方法に関する。
【０１００】
［２−１：携帯機器１０の機能構成］
まず、図１８を参照しながら、本実施形態に係る携帯機器１０の機能構成について説明する。図１８は、本実施形態に係る携帯機器１０の機能構成について説明するための説明図である。なお、上記の第１実施形態に係る携帯機器１０と実質的に同じ機能を有する構成要素については同一の符号を付することにより詳細な説明を省略する。
【０１０１】
図１８に示すように、携帯機器１０は、主に、画像安定化モジュール１１と、多重化部１２と、表示部１３とにより構成される。画像安定化モジュール１１は、ユーザの視点に対する表示画像の振動を低減させる手段である。多重化部１２は、複数のレイヤーを多重化して表示画像を生成する手段である。表示部１３は、多重化部１２により生成された表示画像を表示する手段である。本実施形態に係る携帯機器１０の特徴は、主に、画像安定化モジュール１１の構成にある。そこで、以下では画像安定化モジュール１１の構成について、より詳細に説明する。
【０１０２】
図１８に示すように、画像安定化モジュール１１は、主に、画像データ取得部１１１と、動きセンサ１１２と、座標変換部１１３と、ＦＩＦＯバッファ１１４と、状態検知部１１５とを有する。さらに、画像安定化モジュール１１は、ユーザ入力部１１６と、フィルタ部１１７と、補正ベクトル生成部１１８と、動き補償部１１９と、距離センサ１２０とを有する。上記の第１実施形態に係る画像安定化モジュール１１との主な違いは、距離センサ１２０の存在、及びフィルタ部１１７の機能にある。そこで、距離センサ１２０及びフィルタ部１１７の機能について詳細に説明する。
【０１０３】
（距離センサ１２０）
距離センサ１２０は、図１９に示すように、操作体１４（例えば、ユーザの指やスタイラスなど）が表示部１３の表面に近づいた場合に、操作体１４と表示部１３の表面との間の距離を検知する手段である。このような距離は、例えば、光学的に検知することも可能であるし、操作体１４が近づくことにより生じる静電容量の変化から検知することも可能である。距離センサ１２０により検知された距離は、フィルタ部１１７に入力される。
【０１０４】
（フィルタ部１１７）
先に説明したように、フィルタ部１１７は、状態検知部１１５により算出されたキャンセル適用強度、ユーザ入力部１１６を介して入力されたフィルタ強度、レイヤー毎に設定された重み係数に応じてフィルタのタップ長を選択する。そして、フィルタ部１１７は、選択したタップ長のフィルタに動きデータを通過させて得られるフィルタ適用後データから補正量を算出する。なお、先に説明した変形例のように、レイヤー毎に設定された減衰係数に応じて補正量に対する減衰処理が施されるように構成されていてもよい。このような構成にすることで、レイヤーの用途に応じたキャンセル適用強度の制御が実現される。
【０１０５】
本実施形態においては、さらに、距離センサ１２０により検知された距離を考慮してキャンセルの適用強度を制御する方法について考える。操作ボタンのような操作オブジェクトは、キャンセルの適用対象としない方が好ましい。なぜなら、ユーザは、表示部１３の位置を基準に操作オブジェクトの位置を認識し、操作体１４を操作オブジェクトに近づけようとするからである。例えば、図１９に示すように、操作体１４が表示部１３の表面に近づいた際、キャンセルの適用により操作オブジェクトが動いてしまうと、ユーザは、操作オブジェクトの動きに操作体１４を追従させる動作が必要になる。
【０１０６】
そこで、フィルタ部１１７は、ユーザの操作性を考慮し、距離センサ１２０により入力された距離ｈが小さくなるにつれ、操作オブジェクトを含むレイヤーに対するキャンセル適用強度又は補正量が小さくなるように制御する。例えば、フィルタ部１１７は、図２０に示すように、距離ｈが小さくなるにつれて、重み係数又は減衰係数が小さくなるように制御する。（Ａ）の特性は、距離ｈに応じてキャンセル適用強度又は補正量が線形に小さくなる例である。（Ｂ）の特性は、距離ｈに応じてキャンセル適用強度又は補正量が非線形に小さくなる例である。また、図２１に示すように、距離ｈが、ある閾値Ｔｈを下回った段階でキャンセルの適用を停止するように制御する方法も考えられる。
【０１０７】
このように、本実施形態に係るフィルタ部１１７は、操作体１４と表示部１３との間の距離ｈに応じてキャンセル適用強度を制御する機能を有する。このような機能を有することにより、例えば、タッチパネルなどのように表示部１３に表示された操作オブジェクトを利用して操作するデバイスを用いる場合には、ユーザの操作性を大きく向上させることが可能になる。
【０１０８】
［２−２：キャンセル適用強度の調整方法］
ここで、図１９〜図２１を参照しながら、本実施形態に係るキャンセル適用強度の調整方法について説明する。キャンセル適用強度の調整方法としては、重み係数を調整する方法と減衰係数を調整する方法がある。以下、それぞれの方法について説明する。
【０１０９】
（重み係数を調整する方法）
上記の第１実施形態のように、操作オブジェクトを含むレイヤーに対応する重み係数を０．０に設定し、そのレイヤーに対してキャンセルを適用しないことで、ユーザの操作性を向上させることができる。しかし、キャンセルが適用されないと、そのレイヤーに含まれる表示内容に対するユーザの視認性が低い状態となる。例えば、操作ボタン上に表示された文字の視認性が低い状態となる。そのため、操作オブジェクトを含むレイヤーに対して常にキャンセルを適用しないのではなく、ユーザが操作する際に、操作対象の操作オブジェクトを含むレイヤーがキャンセル非適用となるように制御すればよい。
【０１１０】
先に説明したように、重み係数は、状態検知部１１５により算出されたキャンセル適用強度に乗算されるパラメータである。また、キャンセル適用強度は、フィルタのタップ長（キャンセルの強さに相当）を選択する際に利用される。そのため、距離センサ１２０により検知された距離ｈに応じて重み係数を調整することにより、キャンセルの強さを調整することができる。重み係数は、例えば、図２０に示すように、距離ｈが短くなるにつれて小さくなるように設定される。このように設定することで、操作体１４が表示部１３に近づくにつれて操作オブジェクトを含むレイヤーに対するキャンセルの強さが弱まる。なお、重み係数と距離ｈとの関係は、図２１のように設定されていてもよい。
【０１１１】
（減衰係数を調整する方法）
重み係数を調整する場合と同様に、減衰係数を調整することにより、距離ｈに応じてキャンセルの強さを調整することができる。先に説明したように、減衰係数は、キャンセルの強さを表す補正量に乗算される。つまり、操作体１４が表示部１３に近づくにつれて操作オブジェクトを含むレイヤーに対するキャンセルの強さが弱まる。例えば、減衰係数は、図２０に示すように、距離ｈが短くなるにつれて小さくなるように設定される。また、減衰係数と距離ｈとの関係は、図２１のように設定されていてもよい。
【０１１２】
このような方法を適用することにより、例えば、タッチパネルなどのように表示部１３に表示された操作オブジェクトを利用して操作するデバイスを用いる場合には、ユーザの視認性及び操作性を向上させることが可能になる。
【０１１３】
以上、本発明の第２実施形態について説明した。
【０１１４】
＜３：第３実施形態＞
次に、本発明の第３実施形態について説明する。本実施形態は、三次元仮想空間の奥行きの深さ（深度）に応じてフィルタ強度を決定する方法に関する。
【０１１５】
［３−１：携帯機器１０の機能構成］
まず、図２２を参照しながら、本実施形態に係る携帯機器１０の機能構成について説明する。図２２は、本実施形態に係る携帯機器１０の機能構成について説明するための説明図である。なお、上記の第１実施形態に係る携帯機器１０と実質的に同じ機能を有する構成要素については同一の符号を付することにより詳細な説明を省略する。
【０１１６】
図２２に示すように、携帯機器１０は、主に、画像安定化モジュール１１と、多重化部１２と、表示部１３とにより構成される。画像安定化モジュール１１は、ユーザの視点に対する表示画像の振動を低減させる手段である。多重化部１２は、複数のレイヤーを多重化して表示画像を生成する手段である。表示部１３は、多重化部１２により生成された表示画像を表示する手段である。本実施形態に係る携帯機器１０の特徴は、主に、画像安定化モジュール１１の構成にある。そこで、以下では画像安定化モジュール１１の構成について、より詳細に説明する。
【０１１７】
図２２に示すように、画像安定化モジュール１１は、主に、画像データ取得部１１１と、動きセンサ１１２と、座標変換部１１３と、ＦＩＦＯバッファ１１４と、状態検知部１１５とを有する。さらに、画像安定化モジュール１１は、ユーザ入力部１１６と、フィルタ部１１７と、補正ベクトル生成部１１８と、動き補償部１１９とを有する。上記の第１実施形態に係る画像安定化モジュール１１との主な違いは、仮想空間取得部１２１、仮想カメラレンダリング部１２２の存在にある。また、これらの存在に伴ってフィルタ部１１７、補正ベクトル生成部１１８の機能も変更される。
【０１１８】
画像データ取得部１１１により取得される２次元平面的なフレーム群の他に、３ＤＣＧで描かれたシーンがレンダリング対象に含まれる場合、仮想空間取得部１２１は、３ＤＣＧで描かれたシーンのデータ（以下、３Ｄデータ）を取得する。そして、仮想空間取得部１２１により取得された３Ｄデータは、仮想カメラレンダリング部１２２、及びフィルタ部１１７に入力される。フィルタ部１１７は、仮想空間取得部１２１により取得された３Ｄデータに基づき、３次元仮想空間を撮影する仮想カメラの位置と角度の補正量を算出する。そして、フィルタ部１１７により算出された補正量は、補正ベクトル生成部１１８に入力される。
【０１１９】
フィルタ部１１７により補正量が入力されると、補正ベクトル生成部１１８は、２次元平面的なフレーム群に対する補正行列Ｖを算出すると共に、仮想カメラの位置と角度の補正量に基づいてビューマトリクスを生成する。補正ベクトル生成部１１８により生成されたビューマトリクスは、仮想カメラレンダリング部１２２に入力される。仮想カメラレンダリング部１２２は、補正ベクトル生成部１１８により入力されたビューマトリクスを利用し、仮想空間取得部１２１により入力された３Ｄデータをレンダリングする。そして、仮想カメラレンダリング部１２２によるレンダリングの結果は多重化部１２に入力される。
【０１２０】
以上、携帯機器１０の機能構成について説明した。
【０１２１】
［３−２：補正量の調整方法］
ここで、図２３〜図２７を参照しながら、フィルタ部１１７による仮想カメラの位置と角度に関する補正量の調整方法について説明する。上記の通り、３ＤＣＧの場合、レンダリング後の画像データを補正するのではなく、仮想カメラの位置と角度を補正対象とする。なお、レンダリング後の画像データを補正する場合には、レンダリング後の画像データを１つの平面レイヤーと考え、上記の第１実施形態と同じ方法により補正すればよい。
【０１２２】
さて、仮想カメラの位置と角度に対する補正量は、仮想空間の奥行き方向に対する距離（以下、深度）に応じて調整される。例えば、図２３に示すように、深度が大きくなるにつれて補正係数が小さくなるようにする。但し、この補正係数は、補正量に乗算されるパラメータである。つまり、補正係数が大きいほど、補正量が大きくなり、キャンセルの強度が強くなる。図２３、図２４の例では、深度が大きくなるにつれて補正係数が小さくなり、最深部（仮想空間の消失点）に達すると補正係数が０．０になる。つまり、この例は、図２５に示すように携帯機器１０が移動したとしても、図２６に示すように、ユーザの視点に対して消失点が静止した状態となる方法である。
【０１２３】
例えば、レースゲームのように、消失点が無限遠に設定されるようなゲームの場合には、無限遠にてユーザの視点に対する動きが無いようにしたい。このような場合、図２３、図２４に示すように補正係数の特性を設定することにより、無限遠に対応する消失点をユーザの視点に対して静止させることが可能になる。なお、図２３、図２４に示すような設定にすると、３次元仮想空間の箱庭感が強調され、ユーザに強く立体感を与えることが可能になる。なお、図２７に示すように、深度が最小となる最前面をユーザの視点に対して静止させ、消失点に対して最も強くキャンセルを適用する方法もある。実施の態様に応じて、適宜、このような方法を適用することも可能である。
【０１２４】
以上、本発明の第３実施形態について説明した。
【０１２５】
＜４：ハードウェア構成＞
上記の携帯機器１０が有する各構成要素の機能は、例えば、図２８に示す情報処理装置のハードウェア構成を用いて実現することが可能である。つまり、当該各構成要素の機能は、コンピュータプログラムを用いて図２８に示すハードウェアを制御することにより実現される。なお、このハードウェアの形態は任意であり、例えば、パーソナルコンピュータ、携帯電話、ＰＨＳ、ＰＤＡ等の携帯情報端末、ゲーム機、又は種々の情報家電がこれに含まれる。但し、上記のＰＨＳは、Ｐｅｒｓｏｎａｌ  Ｈａｎｄｙ−ｐｈｏｎｅ  Ｓｙｓｔｅｍの略である。また、上記のＰＤＡは、Ｐｅｒｓｏｎａｌ  Ｄｉｇｉｔａｌ  Ａｓｓｉｓｔａｎｔの略である。
【０１２６】
図２８に示すように、このハードウェアは、主に、ＣＰＵ９０２と、ＲＯＭ９０４と、ＲＡＭ９０６と、ホストバス９０８と、ブリッジ９１０と、を有する。さらに、このハードウェアは、外部バス９１２と、インターフェース９１４と、入力部９１６と、出力部９１８と、記憶部９２０と、ドライブ９２２と、接続ポート９２４と、通信部９２６と、を有する。但し、上記のＣＰＵは、Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔの略である。また、上記のＲＯＭは、Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙの略である。そして、上記のＲＡＭは、Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙの略である。
【０１２７】
ＣＰＵ９０２は、例えば、演算処理装置又は制御装置として機能し、ＲＯＭ９０４、ＲＡＭ９０６、記憶部９２０、又はリムーバブル記録媒体９２８に記録された各種プログラムに基づいて各構成要素の動作全般又はその一部を制御する。ＲＯＭ９０４は、ＣＰＵ９０２に読み込まれるプログラムや演算に用いるデータ等を格納する手段である。ＲＡＭ９０６には、例えば、ＣＰＵ９０２に読み込まれるプログラムや、そのプログラムを実行する際に適宜変化する各種パラメータ等が一時的又は永続的に格納される。
【０１２８】
これらの構成要素は、例えば、高速なデータ伝送が可能なホストバス９０８を介して相互に接続される。一方、ホストバス９０８は、例えば、ブリッジ９１０を介して比較的データ伝送速度が低速な外部バス９１２に接続される。また、入力部９１６としては、例えば、マウス、キーボード、タッチパネル、ボタン、スイッチ、及びレバー等が用いられる。さらに、入力部９１６としては、赤外線やその他の電波を利用して制御信号を送信することが可能なリモートコントローラ（以下、リモコン）が用いられることもある。
【０１２９】
出力部９１８としては、例えば、ＣＲＴ、ＬＣＤ、ＰＤＰ、又はＥＬＤ等のディスプレイ装置、スピーカ、ヘッドホン等のオーディオ出力装置、プリンタ、携帯電話、又はファクシミリ等、取得した情報を利用者に対して視覚的又は聴覚的に通知することが可能な装置である。但し、上記のＣＲＴは、Ｃａｔｈｏｄｅ  Ｒａｙ  Ｔｕｂｅの略である。また、上記のＬＣＤは、Ｌｉｑｕｉｄ  Ｃｒｙｓｔａｌ  Ｄｉｓｐｌａｙの略である。そして、上記のＰＤＰは、Ｐｌａｓｍａ  ＤｉｓｐｌａｙＰａｎｅｌの略である。さらに、上記のＥＬＤは、Ｅｌｅｃｔｒｏ−Ｌｕｍｉｎｅｓｃｅｎｃｅ  Ｄｉｓｐｌａｙの略である。
【０１３０】
記憶部９２０は、各種のデータを格納するための装置である。記憶部９２０としては、例えば、ハードディスクドライブ（ＨＤＤ）等の磁気記憶デバイス、半導体記憶デバイス、光記憶デバイス、又は光磁気記憶デバイス等が用いられる。但し、上記のＨＤＤは、Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅの略である。
【０１３１】
ドライブ９２２は、例えば、磁気ディスク、光ディスク、光磁気ディスク、又は半導体メモリ等のリムーバブル記録媒体９２８に記録された情報を読み出し、又はリムーバブル記録媒体９２８に情報を書き込む装置である。リムーバブル記録媒体９２８は、例えば、ＤＶＤメディア、Ｂｌｕ−ｒａｙメディア、ＨＤ  ＤＶＤメディア、各種の半導体記憶メディア等である。もちろん、リムーバブル記録媒体９２８は、例えば、非接触型ＩＣチップを搭載したＩＣカード、又は電子機器等であってもよい。但し、上記のＩＣは、Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔの略である。
【０１３２】
接続ポート９２４は、例えば、ＵＳＢポート、ＩＥＥＥ１３９４ポート、ＳＣＳＩ、ＲＳ−２３２Ｃポート、又は光オーディオ端子等のような外部接続機器９３０を接続するためのポートである。外部接続機器９３０は、例えば、プリンタ、携帯音楽プレーヤ、デジタルカメラ、デジタルビデオカメラ、又はＩＣレコーダ等である。但し、上記のＵＳＢは、Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓの略である。また、上記のＳＣＳＩは、Ｓｍａｌｌ  Ｃｏｍｐｕｔｅｒ  Ｓｙｓｔｅｍ  Ｉｎｔｅｒｆａｃｅの略である。
【０１３３】
通信部９２６は、ネットワーク９３２に接続するための通信デバイスであり、例えば、有線又は無線ＬＡＮ、Ｂｌｕｅｔｏｏｔｈ（登録商標）、又はＷＵＳＢ用の通信カード、光通信用のルータ、ＡＤＳＬ用のルータ、又は各種通信用のモデム等である。また、通信部９２６に接続されるネットワーク９３２は、有線又は無線により接続されたネットワークにより構成され、例えば、インターネット、家庭内ＬＡＮ、赤外線通信、可視光通信、放送、又は衛星通信等である。但し、上記のＬＡＮは、Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋの略である。また、上記のＷＵＳＢは、Ｗｉｒｅｌｅｓｓ  ＵＳＢの略である。そして、上記のＡＤＳＬは、Ａｓｙｍｍｅｔｒｉｃ  Ｄｉｇｉｔａｌ  Ｓｕｂｓｃｒｉｂｅｒ  Ｌｉｎｅの略である。
【０１３４】
＜５：まとめ＞
最後に、本発明の実施形態に係る技術内容について簡単に纏める。ここで述べる技術内容は、例えば、ＰＣ、携帯電話、携帯ゲーム機、携帯情報端末、情報家電、カーナビゲーションシステム等、種々の情報処理装置に対して適用することができる。
【０１３５】
上記の情報処理装置の機能構成は次のように表現することができる。当該情報処理装置は、次のような振動センサと、画像データ取得部と、画像データ表示部と、動き補正部とにより構成される。上記の振動センサは、時系列の動きデータから振動を検出するものである。また、上記の画像データ取得部は、複数のレイヤーにより構成される画像データを取得するものである。そして、上記の画像データ表示部は、前記画像データ取得部により取得された画像データを表示するものである。
【０１３６】
また、上記の動き補正部は、前記画像データを構成する各レイヤーの種類に応じた度合いで、前記画像データ取得部に対し、前記振動センサにより検出された振動をキャンセルする方向に当該各レイヤーを動かす制御を実行するものである。例えば、上記の動き補正部は、操作オブジェクトを含むレイヤーのキャンセル強度を弱め、メイン画面を含むレイヤーのキャンセル強度を強める。このように、レイヤーの種類に応じてキャンセルの強さを変更することにより、ユーザの視認性と操作性とを両立させすることが可能になる。
【０１３７】
（備考）
上記の状態検知部１１５、フィルタ部１１７、補正ベクトル生成部１１８、動き補償部１１９は、動き補正部の一例である。また、上記の距離センサ１２０は、タッチセンサの一例である。上記の画像安定化モジュール１１は、画像安定化装置の一例である。
【０１３８】
以上、添付図面を参照しながら本発明の好適な実施形態について説明したが、本発明は係る例に限定されないことは言うまでもない。当業者であれば、特許請求の範囲に記載された範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、それらについても当然に本発明の技術的範囲に属するものと了解される。
【符号の説明】
【０１３９】
１０      携帯機器
１１      画像安定化モジュール
１１１    画像データ取得部
１１２    動きセンサ
１１３    座標変換部
１１４    ＦＩＦＯバッファ
１１５    状態検知部
１１６    ユーザ入力部
１１７    フィルタ部
１１８    補正ベクトル生成部
１１９    動き補償部
１２０    距離センサ
１２１    仮想空間取得部
１２２    仮想カメラレンダリング部
１２      多重化部
１３      表示部
【図１】
2011257553.tif 000006
【図２】
2011257553.tif 000007
【図３】
2011257553.tif 000008
【図４】
2011257553.tif 000009
【図５】
2011257553.tif 000010
【図６】
2011257553.tif 000011
【図７】
2011257553.tif 000012
【図８】
2011257553.tif 000013
【図９】
2011257553.tif 000014
【図１０】
2011257553.tif 000015
【図１１】
2011257553.tif 000016
【図１２】
2011257553.tif 000017
【図１３】
2011257553.tif 000018
【図１４】
2011257553.tif 000019
【図１５】
2011257553.tif 000020
【図１６】
2011257553.tif 000021
【図１７】
2011257553.tif 000022
【図１８】
2011257553.tif 000023
【図１９】
2011257553.tif 000024
【図２０】
2011257553.tif 000025
【図２１】
2011257553.tif 000026
【図２２】
2011257553.tif 000027
【図２３】
2011257553.tif 000028
【図２４】
2011257553.tif 000029
【図２５】
2011257553.tif 000030
【図２６】
2011257553.tif 000031
【図２７】
2011257553.tif 000032
【図２８】
2011257553.tif 000033