(57)【要約】【課題】画面に表示された画像によって画面内において認識される方位と現実空間の方位とのずれを低減する。【解決手段】方位追従表示装置は、画面に対して固定され画面が基準姿勢にあるときｙ軸が現実空間において左右方向に平行でありｚ軸が画面に対して垂直であるｘｙｚ直交座標空間のｚ−ｘ−ｚオイラー角（α、β、γ）によって現実空間における画面の姿勢が定義されるとき、前記画面内において基準水平方位を認識させる画像であって前記基準姿勢の前記画面に表示されると前記画面内において認識される前記基準水平方位が前記現実空間における前記基準水平方位に一致する画像が任意の姿勢の前記画面に表示されるときに前記画像から認識される前記基準水平方位が現実空間における前記基準水平方位に対して追従するように画像を回転させる角度としてα＋γを導出する表示制御手段を備える。【選択図】図１
2010014540.tif 000002
【特許請求の範囲】
【請求項１】
画面に対して固定され前記画面が基準姿勢にあるときｘ軸が現実空間において左右方向に平行でありｚ軸が前記画面に対して垂直であるｘｙｚ直交座標空間のｚ−ｘ−ｚオイラー角（α、β、γ）によって前記現実空間における前記画面の姿勢が定義されるとき、
前記画面内において基準水平方位を認識させる画像であって前記基準姿勢の前記画面に表示されると前記画面内において認識される前記基準水平方位が前記現実空間における前記基準水平方位に一致する画像が任意の姿勢の前記画面に表示されるときに前記画像から認識される前記基準水平方位が前記現実空間における前記基準水平方位に対して追従するように前記画像を回転させる角度としてα＋γを導出する表示制御手段を備える、
方位追従表示装置。
【請求項２】
前記現実空間において前記ｘｙｚ直交座標空間の姿勢を表す正格直交行列である姿勢行列Ａが
【数１】
2010014540.tif 000012
ただし
【数２】
2010014540.tif 000013
と定義されるとき、
前記表示制御手段はα＋γを
【数３】
2010014540.tif 000014
を満たす値として導出する、
請求項１に記載の方位追従表示装置。
【請求項３】
前記表示制御手段は、前記画像を回転させる角度としてのα＋γの信頼性をa33を指標として判定する、
請求項１または２に記載の方位追従表示装置。
【請求項４】
３軸の加速度成分を表す加速度データを出力する加速度センサと、
３軸の地磁気成分を表す地磁気データを出力する地磁気センサと、
をさらに備え、
前記表示制御手段は、前記加速度データと前記地磁気データとに基づいて前記現実空間における前記画面の姿勢を導出し、前記画面の姿勢に応じて前記画像をα＋γの角度だけ回転させる、
請求項１から３のいずれか一項に記載の方位追従表示装置。
【請求項５】
画面に対して固定され前記画面が基準姿勢にあるときｘ軸が現実空間において左右方向に平行でありｚ軸が前記画面に対して垂直であるｘｙｚ直交座標空間のｚ−ｘ−ｚオイラー角（α、β、γ）によって前記現実空間における前記画面の姿勢が定義されるとき、
前記画面内において基準水平方位を認識させる画像であって前記基準姿勢の前記画面に表示されると前記画面内において認識される前記基準水平方位が前記現実空間における前記基準水平方位に一致する画像が任意の姿勢の前記画面に表示されるときに前記画像から認識される前記基準水平方位が前記現実空間における前記基準水平方位に対して追従するように前記画像を回転させる角度としてα＋γを導出する、
ことを含む方位追従表示方法。
【請求項６】
画面に対して固定され前記画面が基準姿勢にあるときｘ軸が現実空間において左右方向に平行でありｚ軸が前記画面に対して垂直であるｘｙｚ直交座標空間のｚ−ｘ−ｚオイラー角（α、β、γ）によって前記現実空間における前記画面の姿勢が定義されるとき、
前記画面内において基準水平方位を認識させる画像であって前記基準姿勢の前記画面に表示されると前記画面内において認識される前記基準水平方位が前記現実空間における前記基準水平方位に一致する画像が任意の姿勢の前記画面に表示されるときに前記画像から認識される前記基準水平方位が前記現実空間における前記基準水平方位に対して追従するように前記画像を回転させる角度としてα＋γを導出する表示制御手段、
としてコンピュータを機能させる方位追従表示プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は方位追従表示装置、方位追従表示方法および方位追従表示プログラムに関し、特に電子コンパス、ＰＮＤ（Personal Navigation Device）などで用いられる方位追従表示技術に関する。
【背景技術】
【０００２】
従来、電子コンパス、ＰＮＤ、携帯型電話端末などの画面の姿勢に応じて地図などの画像を回転させることによって、画像によって表されている方位を現実空間の方位に追従させる方位追従表示技術が知られている。地図などの情報が方位に追従するように表示されると画像が表している情報と現実空間とを対応付けて認識することが容易になる。ヘディングアップ表示ともいわれる方位追従表示では、例えば画面が水平な状態では画像によって表されている画面の手前から奥に向かう方位を現実空間におけるその方位と対応付けて認識する人の習性にあわせて画像を回転させる。特許文献１、２には、歩行している人の進行方位に対応する地図上の方位を画面の下辺から上辺または手前側の辺から奥側の辺に向かう方向に一致させる方位追従表示方法が記載されている。従来の方位追従表示方法では、画面に対して固定された座標軸の現実空間の水平面への投影と現実空間の北方位とがなす角の大きさに応じて表示画像を回転させる。
【特許文献１】特開２００１−２８９６４６号公報
【特許文献２】特開２００５−２４２２８３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかし、従来の方位追従表示方法では、画面に固定された３つの直交座標軸の１つを画面の姿勢に応じて選択し、選択した軸の投影と現実空間の北方位との角度差に応じて表示画像を回転させるため、画面が特定の姿勢にあるときには進行方位に対応する地図上の方位が現実の進行方位に追従しない。画面の長辺方向に延びるｙ軸の水平面への射影と北方位とのなす角に応じてコンパス針の画像を回転させる状態から、画面の垂線方向に延びるｚ軸の水平面への射影と北方位とのなす角に応じてコンパス針の画像を回転させる状態に切り替わる例を図９を用いて具体的に説明すると次の通りである。ｚ軸が水平である状態を維持しながらｚ軸周りに画面Ｆを回転させるとき、ｙ軸が水平面に対して４５度傾いているｙ１の位置にあるときにｙ軸からｚ軸に切り替わるとする。ｙ軸がｙ０からｙ１に回転する区間ではｙ軸の水平面への射影と北（Ｎ）方位とのなす角θは一定であるため、画面Ｆに表示されるコンパス針Ｄは回転しない。したがってｙ軸がｙ０からｙ１に回転する区間においてコンパス針Ｄが指し示す北方位と現実空間の北方位とのずれは０度から４５度まで漸増する。なお、このずれは、ユーザが主観的にずれとして認識するものであって、左右方向に平行な軸を中心にして画面Ｆを奥行き方向に水平になるまで倒したときに表示対象であるコンパス針Ｄが指し示す北方位と現実空間の北方位とのずれである。そしてｙ軸がｙ１からｙ２に回転する区間では、ｚ軸が回転しないためにコンパス針Ｄが指し示す北方位と現実空間の北方位とのずれは４５度から０度に漸減する。ここではコンパス針Ｄの画像を表示対象として説明したが地図を表示対象とする場合にも同様のずれが生ずる。このように画面に表示された画像によって表されている方位が現実空間の方位に追従しない場合、ユーザは違和感を感じることとなり、表示内容に対するユーザの信頼感が減退したり、ユーザが混乱したりする。
【０００４】
本発明はこのような問題を解決するために創作されたものであって画面に表示された画像によって画面内において認識される方位と現実空間の方位とのずれを低減することを目的の１つとする。
【課題を解決するための手段】
【０００５】
（１）上記目的を達成するための方位追従表示装置は、画面に対して固定され画面が基準姿勢にあるときｘ軸が現実空間において左右方向に平行でありｚ軸が画面に対して垂直であるｘｙｚ直交座標空間のｚ−ｘ−ｚオイラー角（α、β、γ）によって現実空間における画面の姿勢が定義されるとき、画面内において基準水平方位を認識させる画像であって基準姿勢の画面に表示されると画面内において認識される基準水平方位が現実空間における基準水平方位に一致する画像が任意の姿勢の画面に表示されるときに画像から認識される基準水平方位が現実空間における基準水平方位に対して追従するように画像を回転させる角度としてα＋γを導出する表示制御手段を備える。
【０００６】
基準水平方位とは現実空間において水平面と平行な特定の方向に対して人為的に定められる方位である。本発明によると画像を回転させる角度としてα＋γを導出するため、現実空間における基準水平方位に対して画像から認識される画面内における基準水平方位が追従する。すなわち、画面の姿勢が変化したときに、基準姿勢の画面に表示される画像に対してどれだけ回転させた画像を画面に表示するかを表す角度として、ユーザの左右方向軸の回転成分であるβ以外のｚ−ｘ−ｚオイラー角であるαとγの和を導出するため、画面に表示された画像によって画面内において認識される方位と現実空間の方位とのずれを低減することができる。
【０００７】
（２）上記目的を達成するための方位追従表示装置において、現実空間においてｘｙｚ直交座標空間の姿勢を表す正格直交行列である姿勢行列Ａが
【数１】
2010014540.tif 000003
ただし
【数２】
2010014540.tif 000004
と定義されるとき、表示制御手段はα＋γを
【数３】
2010014540.tif 000005
を満たす値として導出する、ことが望ましい。
【０００８】
本発明によるとα、βおよびγを個別に導出することなくα＋γを少ない演算量で導出できる。したがって本発明によると演算による遅延を低減できるため、画面に表示された画像によって表されている方位と現実空間の方位とのずれをさらに低減できる。
【０００９】
（３）上記目的を達成するための方位追従表示装置において、表示制御手段は、画像を回転させる角度としてのα＋γの信頼性をa33を指標として判定してもよい。
【００１０】
ｚ−ｘ−ｚオイラー角βの値がπであるとき、画面は基準姿勢から裏返った姿勢である。このときα＋γの値は不定となる。姿勢行列Ａのａ３３成分はｃｏｓβに等しいため、ａ３３が−１であるときα＋γの値は不定となる。またπ／２＜β≦πとなる画面の姿勢は画面へのユーザの視線が水平よりも上向きになるが、左右方向軸周りに画面が回転しても画像は回転しないため、π／２＜β≦πとなる区間ではユーザによっては違和感を感じる場合もある。また姿勢検出の誤差を考慮するとβの値がπに近いときにはβがπと等しくないとしても画面が基準姿勢から裏返った姿勢である確率が高い。したがって姿勢行列Ａのａ３３成分に応じて画像を回転させる角度としてのα＋γの信頼性を判定してもよい。
【００１１】
（４）上記目的を達成するための方位追従表示装置において、３軸の加速度成分を表す加速度データを出力する加速度センサと、３軸の地磁気成分を表す地磁気データを出力する地磁気センサと、をさらに備え、表示制御手段は、加速度データと地磁気データとに基づいて現実空間における画面の姿勢を導出し、画面の姿勢に応じて画像をα＋γの角度だけ回転させてもよい。
【００１２】
（５）上記目的を達成するための方位追従表示方法は、画面に対して固定され画面が基準姿勢にあるときｘ軸が現実空間において左右方向に平行でありｚ軸が画面に対して垂直であるｘｙｚ直交座標空間のｚ−ｘ−ｚオイラー角（α、β、γ）によって現実空間における画面の姿勢が定義されるとき、画面内において基準水平方位を認識させる画像であって基準姿勢の画面に表示されると画面内において認識される基準水平方位が現実空間における基準水平方位に一致する画像が任意の姿勢の画面に表示されるときに画像から認識される基準水平方位が現実空間における基準水平方位に対して追従するように画像を回転させる角度としてα＋γを導出する、ことを含む。
本発明によると画面に表示された画像によって画面内において認識される方位と現実空間の方位とのずれを低減することができる。
【００１３】
（６）上記目的を達成するための方位追従表示プログラムは、画面に対して固定され画面が基準姿勢にあるときｘ軸が現実空間において左右方向に平行でありｚ軸が画面に対して垂直であるｘｙｚ直交座標空間のｚ−ｘ−ｚオイラー角（α、β、γ）によって現実空間における画面の姿勢が定義されるとき、画面内において基準水平方位を認識させる画像であって基準姿勢の画面に表示されると画面内において認識される基準水平方位が現実空間における基準水平方位に一致する画像が任意の姿勢の画面に表示されるときに画像から認識される基準水平方位が現実空間における基準水平方位に対して追従するように画像を回転させる角度としてα＋γを導出する表示制御手段、としてコンピュータを機能させる。
本発明によると画面に表示された画像によって画面内において認識される方位と現実空間の方位とのずれを低減することができる。
【００１４】
尚、請求項に記載された各手段の機能は、構成自体で機能が特定されるハードウェア資源、プログラムにより機能が特定されるハードウェア資源、又はそれらの組み合わせにより実現される。また、これら各手段の機能は、各々が物理的に互いに独立したハードウェア資源で実現されるものに限定されない。さらに、本発明は方位追従表示プログラムの記録媒体としても成立する。むろん、そのコンピュータプログラムの記録媒体は、磁気記録媒体であってもよいし光磁気記録媒体であってもよいし、今後開発されるいかなる記録媒体であってもよい。
【発明を実施するための最良の形態】
【００１５】
１．原理
１．１  方位の認識
本発明はコンパス針などそれ自体が方位を指し示す画像や、地図、海図、建築設計図、星座図、上空から地表を写し取った写真（航空写真、衛星写真）などその情報の認識について方位の認識が伴う画像を対象としている。そのような画像を見ることによって画面内において認識される方位が現実空間の方位と一致していると認識されるためには、また、そのような画像の表示によって画面内において認識すべき方位が現実空間の方位と一致していると認識されるためには、ユーザが認識する左右方向に平行な軸周りに画面Ｆを回転させ画面Ｆを図３Ａの破線で示すように奥行き方向に水平になるまで倒したときに画像から画面Ｆ内で認識すべき北方位（矢印Ｄが指し示す方向）と現実空間の北方位（Ｎ軸正方向）とが図３Ｂに示すように平行である必要がある。尚、視線方向に対して垂直な平面に含まれる水平な線が延びる方向をユーザは左右方向と認識する。そして図４に示すように画面Ｆを見るユーザの視線と鉛直軸（Ｇ軸）とを含む平面Ｐと、画面Ｆを含む平面Ｑとは常に垂直に交わることを前提としている。
【００１６】
基準姿勢から任意の姿勢に回転する画面Ｆの運動は画面Ｆに固定された直交する３つの軸周りの回転運動の合成として表現できる。そこでユーザが認識する左右方向と平行な軸周りの１回の回転運動と画面Ｆに垂直な軸周りの２回の回転運動との合成によって基準姿勢から任意の姿勢に回転する運動を表現できるように画面Ｆに固定された直交座標軸を次節１．２のように定める。すると、画面Ｆに垂直な軸周りの２回の回転運動のそれぞれの回転角度の和から画像を回転させるべき角度を導出可能になる。
【００１７】
１．２  座標系の定義
図１は現実空間の直交座標軸Ｎ、Ｅ、Ｇと、現実空間において運動する画面Ｆに固定された直交座標軸ｘ、ｙ、ｚとｚ-ｘ-ｚオイラー角（α、β、γ）の関係を示している。現実空間の方位は任意の基準方位を１つ定めることによって規定される。そこで、地表上の任意の１点において磁極北に向かうベクトルの水平成分の向きを正方向とするＮ軸とその点における鉛直上向きを正方向とするＧ軸とＮ軸をＧ軸周りに９０度回転させたＥ軸とを定め、Ｎ軸正方向（以下、北という）を基準水平方位とする。
【００１８】
そして画面Ｆに対して固定されるｘｙｚ直交座標空間を次のように定める。まず画面Ｆの長辺と平行で画面Ｆの下辺から上辺に向かう方向が正方向となるｙ軸を定める。画面Ｆの上辺および下辺は重力方向とは無関係に一般に画面Ｆの周囲に配置されるスイッチなどのとの関係で画面Ｆに対して固定的に定められるものである。ここでは文字情報が回転を伴わずに表示されるときにその文字情報が正立していると認識されるように画面Ｆを直立させたときに鉛直上側にある辺を上辺、上辺に対向する辺を下辺とする。次に画面Ｆの短辺と平行で画面Ｆの左辺から右辺に向かう方向が正方向となるｘ軸を定める。画面Ｆの左辺および右辺については画面Ｆを見るユーザから見て上辺が鉛直上側に下辺が鉛直下側になるように直立している画面Ｆを正対して見るときに左に位置する辺を画面Ｆの左辺、そのときに右に位置する辺を画面Ｆの右辺というものとする。そしてｘ軸およびｙ軸のそれぞれに直交し画面Ｆの奥から手前に向かう方向が正方向となるｚ軸を定める。図１、図２において、画面Ｆの姿勢毎にｘ、ｙ、ｚ軸を表示し、同一の姿勢に対応する軸と画面Ｆには同一の添え字を付している。
【００１９】
１．３  基準姿勢
現実空間における画面Ｆの基準姿勢を定めることによって画面Ｆの任意の姿勢を数学的に一意に表現可能になる。そしてｘｙｚ直交座標空間を画面Ｆに対して１．２のように定義した場合、次のように基準姿勢を定めることによって基準水平方位に追従するように画像を回転させる角度を少ない演算で導出することが可能になる。すなわちｘ軸の正方向とＥ軸の正方向とが一致し、ｙ軸の正方向と基準水平方位である北とが一致し、ｚ軸の正方向とＧ軸の正方向とが一致する画面Ｆの姿勢を基準姿勢として定める。尚、ｚ−ｘ−ｚオイラー角において意味するｘ軸がユーザが認識する左右方向と平行であって、ｚ−ｘ−ｚオイラー角において意味するｚ軸が画面Ｆに対して垂直である限り、現実空間と画面Ｆの基準姿勢と画面Ｆに固定されたｘｙｚ直交座標空間との関係をどのように定めても良い。
【００２０】
１．４  方位追従表示
１．２のように座標空間を定義し、１．３のように基準姿勢を定義するとき、ｚ−ｘ−ｚオイラー角（α、β、γ）のそれぞれは次のような画面Ｆの回転角度に対応する。αは基準姿勢にある画面Ｆ０がｚ０軸周りに回転する角度である。すなわちαは画面Ｆ０をユーザの左右方向に傾ける角度である。尚、基準姿勢においてｚ軸とＧ軸とは平行であるため、αは画面Ｆ０が鉛直軸であるＧ軸周りに回転する角度でもある。βはｚ０軸周りに（すなわちＧ軸周りに）ｘ０軸をαだけ回転させた軸であるｘ１軸周りに画面Ｆ１が回転する角度である。そしてｘ１軸はユーザが認識する左右方向と平行であるため、βは画面Ｆ１を左右方向と平行な軸周りに画面Ｆ１が回転する角度でもある。γはｘ１軸周りに（左右方向と平行な軸周りに）βだけｚ１軸を回転させた軸であるｚ２軸周りに画面Ｆ２が回転する角度である。そしてγは画面Ｆ２をユーザの左右方向に傾ける角度でもある。
【００２１】
図１に示す画面Ｆ０から画面Ｆ３への画面Ｆの姿勢の遷移過程は無限に想定できるが、遷移過程にかかわらず、画面Ｆ３に表示する画像で表すべき方位は等しい。そこでｚ−ｘ−ｚオイラー角で定義されている３つの回転運動を経て画面Ｆ０から画面Ｆ３に遷移すると仮定する。そして、図１および図２Ａに示すように基準姿勢の画面Ｆ０に表示されるコンパス針Ｄの画像をｚ０軸周りの回転では図１および図２Ｂに示すように角度αだけ回転させ、ｘ１軸周りの回転では図１および図２Ｃに示すようにコンパス針Ｄの画像を回転させず、ｚ２軸周りの回転では画面Ｆ２に表示されたコンパス針Ｄの画像を図１および図２Ｄに示すように角度γだけ回転させるとする。するとコンパス針Ｄは現実空間の北を常に指し示すことになる。すなわち基準姿勢の画面Ｆから任意の画面Ｆに姿勢が変化するまでにどのような過程を経ていたとしても、また姿勢変化後の画面Ｆがどのような姿勢であったとしても、１．２のように座標空間を定義し、１．３のように基準姿勢を定義している場合には、結局、α＋γの角度だけ、基準姿勢の画面Ｆに表示されると画面内において認識される北が現実空間における北に一致するコンパス針Ｄを回転させれば、任意の姿勢の画面Ｆに表示されるコンパス針Ｄが表す北が現実空間の北に一致していると認識されるようにコンパス針Ｄを表示できるのである。
【００２２】
すなわち基準姿勢の画面に表示されると画面内において認識される基準水平方位が現実空間における基準水平方位に一致する画像を任意の姿勢の画面Ｆに表示する際に回転させる角度を、画面Ｆに対して垂直なｚ軸まわりの２回の画面Ｆの回転運動のそれぞれの回転角度α、γの和とすればよい。このように画像の回転角度を導出することにより、画面内において認識される方位が現実空間の方位と常に一致しているとユーザに認識させることができる。すなわち画面に表示された画像によって画面内に認識する方位と現実空間の方位とのずれがないものとユーザに認識させることができるのである。
【００２３】
２．実施例
２．１  方位追従表示装置の構成
図５、図６、図７は本発明の方位追従表示装置の実施例としてのデジタルカメラ１の構成を示す図である。
デジタルカメラ１はビューファインダおよび写真画像データを再生するためのディスプレイ１０とディスプレイ１０の画面１１にコンパス針Ｄを表示するための加速度センサ４０と地磁気センサ５０とを備えている。ディスプレイ１０、加速度センサ４０、地磁気センサ５０、操作部３０、図示しないレンズなどは筐体２０に固定されている。
【００２４】
加速度センサ４０は、ピエゾ抵抗型、静電容量型、熱検知型などどのような検知方式であってもよく、加速度センサ４０と一体となって運動する物体固定の系における慣性力と重力との合力を後述するｘ軸、ｙ軸およびｚ軸の３成分を有するベクトルデータである加速度データとして検出する。したがって静止状態または等速直線運動状態にある加速度センサ４０から出力される加速度データは画面Ｆに対して固定されたｘｙｚ座標空間において重力加速度の大きさと方向とを示すベクトルデータである。
【００２５】
地磁気センサ５０は、ＭＩ素子（磁気インピーダンス素子）、ＭＲ素子（磁気抵抗効果素子）などからなる３軸の磁気センサユニットを備え、後述するｘ軸、ｙ軸およびｚ軸の３成分によって磁極北に向かう方向を持つベクトルデータである地磁気データを出力する。すなわち地磁気データは画面Ｆに対して固定されたｘｙｚ座標空間において現実空間の北を示すベクトルデータである。
【００２６】
デジタルカメラ１の制御部６０は方位追従表示のためのデータ処理を実行するマイクロコンピュータであって、図示しないプロセッサ、メモリ、バス、入出力インタフェースなどで構成されている。制御部６０の入出力インタフェースには加速度センサ４０、地磁気センサ５０、操作部３０、ディスプレイ１０などが接続されている。操作部３０はメニュー操作キー３１、３２、レリーズボタン３３などで構成され、これらのスイッチに対する操作に応じて制御部６０が各種の処理を実行し、画面１１にコンパス針Ｄや写真画像や現在地の緯度経度を表示したり、写真画像データを図示しない不揮発性記憶媒体に記録したりする。尚、コンパス針Ｄの元画像は回転させずに画面１１に表示されると画面１１の下辺から上辺を向かう方向を指し示す針を模した画像である。
【００２７】
制御部６０は加速度データ処理モジュール６１、地磁気データ処理モジュール６２、方位追従表示モジュール６３などで構成される方位追従表示プログラムを実行することにより、現実空間の方位に追従するコンパス針Ｄを画面１１に表示するための方位追従表示処理を実行する。すなわち制御部６０が方位追従表示プログラムを実行するとき、制御部６０は表示制御手段として機能する。
【００２８】
加速度データ処理モジュール６１は、加速度センサ４０から出力される加速度データを所定の時間間隔（例えば０．２秒）で入力し、加速度データにオフセット補正などの所定の補正処理を施すためのプログラムモジュールである。
【００２９】
姿勢データ処理モジュール６２は、地磁気センサ５０から出力される地磁気データを所定の時間間隔（例えば０．２秒）で入力し、地磁気データにオフセット補正などの所定の補正処理を施すためのプログラムモジュールである。
【００３０】
方位追従表示モジュール６３は加速度データ及び地磁気データに基づいて姿勢行列Ａを生成し、コンパス針Ｄを回転させる角度を姿勢行列Ａに基づいて導出し、導出した角度だけコンパス針Ｄの画像を回転させ、回転させたコンパス針Ｄの画像をディスプレイ１０のフレームメモリ領域に格納するためのプログラムモジュールである。
【００３１】
図５は基準姿勢と現実空間の関係を示している。本実施例において画面１１の基準姿勢は、画面１１が水平上向き（画面１１に対して垂直な視線が鉛直下向き）であるとともに長方形の画面１１の短辺が現実空間のＮ軸と平行であり、画面１１の下辺から上辺に向かう方向がＮ軸の正方向になる姿勢とする。尚、本実施例において画面１１の上辺は画面１１の２つの長辺のうちレリーズボタン３３に近い方の長辺を意味し、これに準じて画面Ｆの上下左右を表現するものとする。
【００３２】
本実施例においてｚ−ｘ−ｚオイラー角および姿勢行列Ａが定義されるｘｙｚ直交座標軸は、ｘ軸正方向が画面の左辺から右辺に向かう方向に一致し、ｙ軸正方向が画面の下辺から上辺に向かう方向に一致し、ｚ軸正方向が画面１１に対して垂直で画面１１の奥から手前に向かう方向に一致するように定義する。上述したように画面１１の基準姿勢を定義すると、画面１１が基準姿勢にあるとき、ｘ軸はＥ軸正向（東方向）に一致し、ｙ軸正方向はＮ軸正方向に一致し、ｚ軸正方向はＧ軸正方向に一致する。そしてｘ軸は画面１１を見るユーザが認識する左右方向に平行である。
【００３３】
以下の式（１）、（３）によって表される姿勢行列Ａは、物体の姿勢を一意に表現するためのデータとして以下のように定義される。
【数４】
2010014540.tif 000006
ただし
【数５】
2010014540.tif 000007
【００３４】
姿勢行列Ａは任意の姿勢にある画面１１の姿勢を一意に表す正格直交行列であって、基準姿勢から任意の姿勢に画面１１が回転したときに現実空間に固定されたＮＥＧ直交座標空間で定義される点を画面１１に固定されたｘｙｚ座標空間で表現するために座標軸を回転させる行列である。図５に示す画面１１の基準姿勢を表す姿勢行列Ａは次式（４）の通りである。
【数６】
2010014540.tif 000008
【００３５】
また図７に示す画面１１の姿勢を示す姿勢行列Ａは次式（５）の通りである。
【数７】
2010014540.tif 000009
【００３６】
このように定義される姿勢行列Ａはオフセット補正された加速度データｇ（３次元ベクトル）と地磁気データｈ（三次元ベクトル）とから次のようにして導出される。
まず、
ｆ＝ｇ×ｈ
なるベクトルｆを定義する（「×」は外積記号とする）。ｆはｘｙｚ座標空間においてＥ軸正方向を示すベクトルである。
また
ｈ'＝ｆ×ｇ
なるベクトルｈ'を定義する。ｈ'はｘｙｚ座標空間においてＮ軸正方向を示すベクトルである。
そしてこのように定義したｆ、ｈ'、−ｇをそれぞれ大きさ１に正規化して上から順に行ベクトルとして並べた行列が姿勢行列Ａである。
【００３７】
姿勢行列Ａとｚ−ｘ−ｚオイラー角（α、β、γ）とは次の関係にある。
角度αの１回目の回転（図１に示すｚ０軸周りの回転）、角度βの２回目の回転（図１に示すｘ１軸周りの回転）、角度γの３回目の回転（図１に示すｚ２軸周りの回転）の行列表現は次式（６）、（７）、（８）の通りである。
【数８】
2010014540.tif 000010
【００３８】
ただし０≦α＜２π、０≦β≦π、０≦γ＜２πである。回転行列Ｒｚ（α）、Ｒｘ（β）、Ｒｚ（γ）と姿勢行列Ａとの関係は次式（９）の通りである。
Ａ＝Ｒｚ（α）Ｒｘ（β）Ｒｚ（γ）・・・（９）
【００３９】
したがって以下の連立方程式が成立する。
ａ１１＝ｃｏｓαｃｏｓγ−ｃｏｓβｓｉｎαｓｉｎγ  ・・・（１０）
ａ１２＝ｃｏｓαｓｉｎγ＋ｃｏｓβｓｉｎαｃｏｓγ  ・・・（１１）
ａ１３＝ｓｉｎβｓｉｎα                            ・・・（１２）
ａ２１＝−ｓｉｎαｃｏｓγ−ｃｏｓβｃｏｓαｓｉｎγ・・・（１３）
ａ２２＝−ｓｉｎαｓｉｎγ＋ｃｏｓβｃｏｓαｃｏｓγ・・・（１４）
ａ２３＝ｓｉｎβｃｏｓα                            ・・・（１５）
ａ３１＝ｓｉｎβｓｉｎγ                            ・・・（１６）
ａ３２＝−ｓｉｎβｃｏｓγ                          ・・・（１７）
ａ３３＝ｃｏｓβ                                    ・・・（１８）
【００４０】
ここで、
Ｘ＝ａ１１＋ａ２２
Ｙ＝ａ１２−ａ２１
と定義すると加法定理から
Ｘ＝（１＋ｃｏｓβ）ｃｏｓ（α＋γ）
Ｙ＝（１＋ｃｏｓβ）ｓｉｎ（α＋γ）
となる。したがって
【数９】
2010014540.tif 000011
を満たす値としてα＋γを導出することによりα、γ、βを個別に導出することなくα＋γを導出できる。また式（１９）、（２０）を満たすα＋γを導出すると、β＝０となる場合であっても計算手順を代える必要がないという効果もある。
【００４１】
尚、式（１９）、（２０）を満たすα＋γを導出すると半開区間［０，２π）または半開区間［２π，４π）のそれぞれについてα＋γが導出されるが、回転角度としてのα＋γはα＋γ＋２πと等価であるため、式（１９）、（２０）を満たすα＋γは半開区間［０，２π）のみにあるとして取り扱って差し支えない。
【００４２】
β＝πであるときα＋γは不定となる。姿勢行列Ａのａ３３成分はｃｏｓβに等しいため、α＋γの値が不定となるときのａ３３は−１である。またπ／２＜β≦πとなる画面の姿勢は画面へのユーザの視線が水平よりも上向きになるが、左右方向軸周りに画面が回転しても画像は回転しないため、π／２＜β≦πとなる区間ではユーザによっては違和感を感じる場合もある。また姿勢検出の誤差を考慮するとβの値がπに近いときにはβがπと等しくないとしても画面が基準姿勢から裏返った姿勢である確率が高い。したがって０≦β≦πの範囲でβの単調増加関数または単調減少関数となる値を、画像を回転させる角度としてのα＋γの信頼性を示す指標として用いてもよい。このような値としては姿勢行列Ａのａ３３成分、上記連立方程式から求まるβなどがあるが、演算量を低減するためには姿勢行列Ａのａ３３成分をそのまま指標として用いるのが好ましい。姿勢行列Ａのａ３３成分をそのまま指標として用いる場合、指標の値域は［−１，１］であり、指標の値が小さいほど信頼性が低いことを表すことになる。
【００４３】
２．２  方位追従表示処理
図８は制御部６０による方位追従表示処理の流れを示すフローチャートである。
はじめに制御部６０は加速度センサ４０および地磁気センサ５０から加速度データおよび地磁気データを入力する（ステップＳ１０）。
次に制御部６０は加速度データおよび地磁気データを補正する（ステップＳ１２）。このとき、加速度データおよび地磁気データのオフセットなどが補正される。
次に制御部６０は加速度データおよび地磁気データに基づいて上述した姿勢行列Ａを導出する（ステップＳ１４）。
次に制御部６０は画像を回転させる角度としてのα＋γを姿勢行列Ａに基づいて導出する（ステップＳ１６）。すなわち式（１９）、（２０）を満たすα＋γを導出する演算を姿勢行列Ａの４つの成分を用いて実行する。
次に制御部６０は、α＋γの角度だけコンパス針Ｄの元画像を回転させ、画面１１に表示される対象画像の少なくとも一部を生成する（ステップＳ１８）。
次に制御部６０は回転させたコンパス針Ｄの画像をフレームメモリ領域に書き込み、ディスプレイ１０の画面１１を更新する（ステップＳ２０）。
【００４４】
以上の処理を繰り返すことにより、コンパス針Ｄが指し示す方向が現実空間の基準水平方位である北の方向に追従するように画面１１が定期的に更新される。そして画面１１の更新間隔が短ければ、画面１１がどのような姿勢になったとしても常に現実空間の北を示しているように認識されるコンパス針Ｄが画面１１に表示されることになる。
【００４５】
３．他の実施形態
尚、本発明の技術的範囲は、上述した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々変更を加え得ることは勿論である。例えば、基準水平方位に追従させる画像は地図などであってもよい。現実空間の基準水平方位に対して地図を追従させるには、地図上の北が下辺から上辺に向かう方向となる地図の画像をｚ−ｘ−ｚオイラー角α、γの和だけ回転させればよい。このように地図を表示すると、地図上の進行方位と現実空間の進行方位とが一致するように地図が表示されることになる。また例えば図７に示すように画面１１が直立した姿勢を画面１１の基準姿勢としても良い。また例えば本発明は電子コンパス、携帯型電話端末、ＰＮＤなどの様々な携帯型情報機器に適用できる。また例えば本発明は画面とユーザとが一体的に運動するような据え置き型のゲーム機器などにも適用できる。すなわち本発明は画面の姿勢を検出する手段がある様々な電子機器に適用可能である。
【００４６】
また例えば式（１９）、（２０）を満たすα＋γを直接導出する代わりに、次のようにしてα、γを個別に求め、その後にα＋γの値を導出しても良い。まず０≦β≦πなので式（１８）からｃｏｓβが一意に求まる。
次に、ｓｉｎβ≠０のとき（すなわち０＜β＜πのとき、あるいは−１＜ｃｏｓβ＜１のとき）には、式（１５）、（１２）、（１７）、（１６）から、
ｃｏｓα＝ａ２３／ｓｉｎβ・・・（２１）
ｓｉｎα＝ａ１３／ｓｉｎβ・・・（２２）
ｃｏｓγ＝−ａ３２／ｓｉｎβ・・・（２３）
ｓｉｎγ＝ａ３１／ｓｉｎβ・・・（２４）
となる。式（２１）、（２２）の右辺の分母は共通であるためａ２３、ａ１３の値を逆正接関数に適用することでαを導出できる。同様に−ａ３２、ａ３１の値を逆正接関数に適用することでγを導出できる。
【００４７】
一方、ｓｉｎβ＝０のとき、αとγは一意に導出できないが、数ある表現のうち１つでも得られればよいとしてγ＝０と固定するとαは一意に求まる。このとき式（１０）、（１１）から
ｃｏｓα＝ａ１１
ｓｉｎα＝ａ１２
となるのでａ１１、ａ１２の値を逆正接関数に適用することでαを導出できる。このようにα、γを個別に求める場合には条件によって演算処理を切り替えなければならないが、α＋γを直接求める場合には条件分岐処理が不要になるためプログラムコストを抑制できるのである。
【図面の簡単な説明】
【００４８】
【図１】本発明の実施形態にかかる斜視図。
【図２】本発明の実施形態にかかる画面遷移図。
【図３】本発明の実施形態にかかる斜視図。
【図４】本発明の実施形態にかかる斜視図。
【図５】本発明の実施形態にかかる斜視図。
【図６】本発明の実施形態にかかるブロック図。
【図７】本発明の実施形態にかかる斜視図。
【図８】本発明の実施形態にかかるフローチャート。
【図９】従来技術の説明にかかる斜視図。
【符号の説明】
【００４９】
１：デジタルカメラ、１０：ディスプレイ、１１：画面、２０：筐体、３０：操作部、３１：メニュー操作キー、３２：メニュー操作キー、３３：レリーズボタン、４０：加速度センサ、５０：地磁気センサ、６０：制御部、６１：加速度データ処理モジュール、６２：地磁気データ処理モジュール、６２：姿勢データ処理モジュール、６３：方位追従表示モジュール、Ｄ：コンパス針、Ｄ：矢印、Ｆ：画面
【図１】
2010014540.tif 000015
【図２】
2010014540.tif 000016
【図３】
2010014540.tif 000017
【図４】
2010014540.tif 000018
【図５】
2010014540.tif 000019
【図６】
2010014540.tif 000020
【図７】
2010014540.tif 000021
【図８】
2010014540.tif 000022
【図９】
2010014540.tif 000023