(57)【要約】【課題】角度情報の取得や三角関数演算等の複雑な演算を必要とすることなく、スクロール長からマスクの変形パラメータを取得することができ、また、スクロール停止時とスクロール時との間の遷移におけるマスク形状の連続性を確保できるようにする。【解決手段】地図スクロール機能とマスクによる局所詳細表示機能を有するカーナビゲーションシステムは、画像処理ＬＳＩ２を備える。画像処理ＬＳＩ２は、スクロール前の現在位置情報とスクロール後の現在位置情報とに基づいて、回転角を用いることなく、マスクをスクロール速度およびスクロール方向に適合したマスク形状へ変換するための変換行列を算出する手段と、その変換行列を用いてマスクを変換する手段を有する。【選択図】図１
2008209506.tif 000002
【特許請求の範囲】
【請求項１】
地図スクロール機能とマスクによる局所詳細表示機能を有するグラフィックスシステムであって、
スクロール前の現在位置情報とスクロール後の現在位置情報とに基づいて、マスクをスクロール速度およびスクロール方向に適合したマスク形状へ変換するための変換行列を算出する変換行列算出手段と、
前記変換行列算出手段により算出された変換行列を用いて前記マスクを変換するマスク変換手段と、
を備えることを特徴とするグラフィックスシステム。
【請求項２】
前記変換行列算出手段は、前記スクロール前の現在位置情報及びスクロール後の現在位置情報と、地図縮尺と、前記地図縮尺から画面解像度への変換比と、前記マスク変換手段による変換前のマスクサイズとに応じて、前記変換行列を算出する、
ことを特徴とする請求項１記載のグラフィックスシステム。
【請求項３】
前記マスク変換手段は、スクロール停止時においては、前記変換行列算出手段により算出された変換行列の代わりに単位行列を用いて前記マスクを変換する、
ことを特徴とする請求項１又は２記載のグラフィックスシステム。
【請求項４】
前記スクロール前の現在位置情報とスクロール後の現在位置情報とに基づいて、マスクをスクロール方向に回転させたマスク形状へ変換するための回転行列を算出し、記憶する回転行列算出手段を更に備え、
前記マスク変換手段は、スクロール停止時においては、前記変換行列算出手段により算出された変換行列の代わりに前記回転行列算出手段により最後に記憶された回転行列を用いて前記マスクを変換する、
ことを特徴とする請求項１又は２記載のグラフィックスシステム。
【請求項５】
地図スクロール機能とマスクによる局所詳細表示機能を有するグラフィックスシステムにおけるマスク変形方法であって、
スクロール前の現在位置情報とスクロール後の現在位置情報とに基づいて、マスクをスクロール速度およびスクロール方向に適合したマスク形状へ変換するための変換行列を算出し、
前記変換行列を用いて前記マスクを変換する、
ことを特徴とするマスク変形方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、例えばカーナビゲーションシステム等の、地図スクロール機能を有するグラフィックスシステムに関する。
【背景技術】
【０００２】
カーナビゲーションシステムでは、ＧＰＳ（Global Positioning System）等を利用して検出した現在の自車位置を含む周辺所定範囲の地図画像をモニターに表示すると共にその地図画像上の自車位置に自車を表すマークを表示するという処理を所定のフレームレートで繰り返すことにより、リアルタイムに自車位置を表示することができる。走行中においては、刻々と変化する自車位置に応じてモニターに表示される地図画像の範囲も変化することから、モニター画面上の地図画像がスクロールされて表示されるようになる。
【０００３】
また、カーナビゲーションシステムでは、指定された地図の縮尺に応じて道路網描画の詳細度を切替えて表示を行っている。例えば、小縮尺が指定された場合には主要道路だけを表示し、大縮尺が指定された場合には細街路までを表示するようにしている。また、道路優先、文字優先、住所優先、施設優先等といった、強調表示対象を切替える強調表示モードを備えたカーナビゲーションシステムもある。このシステムでは、細街路を淡色表示にして主要道路を目立たせるような表現も可能である。さらに、縮尺の異なる地図を２つのウィンドウに別々に並べる表示モードを備えたカーナビゲーションシステムもある。
【０００４】
このようなカーナビゲーションシステムの地図表示に関しては、種々の提案が為されている。例えば特許文献１には、車両の速度や進行方向に応じてマスク領域を生成し、これに基づいて道路データを切り出して表示するようにした装置が提案されている。この装置では、停車時には円形のマスク領域を生成し、走行時には車速に応じた扇形のパターンを進行方向に応じて回転させたマスク領域を生成するようにしている。また、この装置では、生成したマスク領域を基に切り出した領域内だけ選択的に詳細道路を表示することもできる。
【０００５】
これ以外にも、カーナビゲーションシステムの地図表示に関して、例えば特許文献２及び３等に提案されている装置もある。
【特許文献１】特開平６−２５１２９６号公報
【特許文献２】特開平７−１９０７９０号公報
【特許文献３】特開２００４−７８１９３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
ところで、従来のカーナビゲーションシステムにおいて、縮尺に応じて詳細度を切替えた場合には、詳細度が画面全体で均一になる。そのため、詳細な細街路情報が必要な自車位置近傍だけでなく、詳細が不要な遠方（表示画面の端の部分）まで細街路が表示され、道路が密集しすぎて視覚的に乱雑に見えることがあった。逆に、上述の強調表示モードを活用して細街路を目立たなくすると、自車位置近傍の細街路まで見え難くなってしまっていた。また、上述の２つのウィンドウを並べる表示モードを活用した場合には、縮尺が異なることとウィンドウ位置が一致しないことによって両ウィンドウの位置的対応関係が希薄になり、両ウィンドウの表示情報を同時に視認するのが困難であった。
【０００７】
また、上述の特許文献１に提案されている装置では、マスク領域となる扇形のパターンを自車の進行方向に沿って回転させる際に、進行方向を専用のセンサーにより検出したり
、三角関数等を用いた計算により求める必要があった。また、この装置では、走行時に扇形のマスク領域を使い、停車時に円形のマスク領域を使うため、停車時と走行時の間を遷移する瞬間に、マスク領域の形状が不連続に変化し、表示形態が瞬間的に変わってしまう。
【０００８】
本発明は、上記実情に鑑み、地図スクロール機能とマスクによる局所詳細表示機能を有するグラフィックスシステムにおいて、角度情報の取得や三角関数演算および平方根演算といった複雑な演算を必要とすることなく、スクロール長からマスクの変形パラメータを取得することができ、また、スクロール停止時とスクロール時との間の遷移におけるマスク形状の連続性を確保することができる、グラフィックスシステム及びマスク変形方法を提供することを目的とする。
【課題を解決するための手段】
【０００９】
上記目的を達成するため、本発明の第１の態様は、地図スクロール機能とマスクによる局所詳細表示機能を有するグラフィックスシステムであって、スクロール前の現在位置情報とスクロール後の現在位置情報とに基づいて、マスクをスクロール速度およびスクロール方向に適合したマスク形状へ変換するための変換行列を算出する変換行列算出手段と、前記変換行列算出手段により算出された変換行列を用いて前記マスクを変換するマスク変換手段と、を備えることを特徴とする。
【００１０】
この態様によれば、回転角を用いることなく、スクロール前後の現在位置情報に基づいて、マスクをスクロール速度およびスクロール方向に適合した形状に変形することができる。
【００１１】
本発明の第２の態様は、上記第１の態様において、前記変換行列算出手段は、前記スクロール前の現在位置情報及びスクロール後の現在位置情報と、地図縮尺と、前記地図縮尺から画面解像度への変換比と、前記マスク変換手段による変換前のマスクサイズとに応じて、前記変換行列を算出する、ことを特徴とする。
【００１２】
この態様によれば、回転角を用いることなく、スクロール前後の現在位置情報と、地図縮尺と、その地図縮尺から画面解像度への変換比と、マスクオリジナルサイズとに応じて、マスクをスクロール速度およびスクロール方向に適合した形状に変形することができる。
【００１３】
本発明の第３の態様は、上記第１又は２の態様において、前記マスク変換手段は、スクロール停止時においては、前記変換行列算出手段により算出された変換行列の代わりに単位行列を用いて前記マスクを変換する、ことを特徴とする。
【００１４】
この態様によれば、スクロール停止時に、マスクを変形させずにオリジナル形状を維持させることができる。
本発明の第４の態様は、上記第１又は２の態様において、前記スクロール前の現在位置情報とスクロール後の現在位置情報とに基づいて、マスクをスクロール方向に回転させたマスク形状へ変換するための回転行列を算出し、記憶する回転行列算出手段を更に備え、前記マスク変換手段は、スクロール停止時においては、前記変換行列算出手段により算出された変換行列の代わりに前記回転行列算出手段により最後に記憶された回転行列を用いて前記マスクを変換する、ことを特徴とする。
【００１５】
この態様によれば、スクロール停止時に、マスクを等倍のまま方向だけを変えることができる。
また、本発明は、上記態様のほか、グラフィックスシステムにおけるマスク変形方法と
して構成することもできる。
【発明の効果】
【００１６】
本発明によれば、地図スクロール機能とマスクによる局所詳細表示機能を有するグラフィックスシステムにおいて、角度情報の取得や三角関数演算および平方根演算といった複雑な演算を必要とすることなく、スクロール長からマスクの変形パラメータを取得することができ、また、スクロール停止時とスクロール時との間の遷移におけるマスク形状の連続性を確保することができる。
【発明を実施するための最良の形態】
【００１７】
以下、図面を参照しながら本発明の実施の形態を説明する。
図１は、本発明の一実施の形態に係るグラフィックスシステムであるカーナビゲーションシステムのブロック図である。
【００１８】
同図に示したように、このシステムは、主要な構成として、ＧＰＳ（Global Positioning System）モジュール１、画像処理ＬＳＩ（Large Scale Integration）２、フレームバッファ３、及び、ディスプレイ４等を備え、自車位置の検出および検出した自車位置を含む周辺所定範囲の地図画像の表示を所定のフレームレートで行うことが可能なシステムである。
【００１９】
ＧＰＳモジュール１は、ＧＰＳを利用して現在の自車位置（例えば緯度と経度）を検出し、その位置情報（以下「自車位置情報」という）を出力する。
画像処理ＬＳＩ２は、現フレーム自車位置保持バッファ５、前フレーム自車位置保持バッファ６、自車位置変位算出器７、自車位置変位／スクロールベクトル変換器８、ゼロベクトル判定器９、スイッチ１０、１１、１２、スクロールベクトル長L近似多項式演算器１３、1/L近似多項式演算器１４、変換行列算出器１５、回転行列算出器１６、マスク画像変換器１７、及び、レイヤー重畳機構１８等を有する。
【００２０】
現フレーム自車位置保持バッファ５及び前フレーム自車位置保持バッファ６は、ＧＰＳモジュール１から出力された２フレーム分（現在フレーム分と前回フレーム分）の自車位置情報を保持しておくためのバッファである。現フレーム自車位置保持バッファ５は、ＧＰＳモジュール１から出力された現在フレーム分（これから表示しようとするフレーム分）の自車位置情報を保持する。前フレーム自車位置保持バッファ６は、現フレーム自車位置保持バッファ５に現在フレーム分の自車位置情報が新たに保持されるときに（フレームが切り替わるときに）、それまで現フレーム自車位置保持バッファ５に保持されていた自車位置情報を前回フレーム分の自車位置情報として保持する。
【００２１】
なお、前回フレーム分の自車位置情報と現在フレーム分の自車位置情報は、スクロール前の自車位置情報とスクロール後の自車位置情報でもある。
自車位置変位算出器７は、現フレーム自車位置保持バッファ５と前フレーム自車位置保持バッファ６とに保持されている自車位置情報から、前回フレーム分の自車位置に対する現在フレーム分の自車位置の変位を算出する。
【００２２】
自車位置変位／スクロールベクトル変換器８は、自車位置変位算出器７により算出された自車位置の変位を、表示する地図の縮尺とその縮尺から画面解像度への変換比に応じて、スクロールベクトル（px,py）に変換する。この変換では、例えば緯度と経度という空間情報で表されている自車位置の変位が、ディスプレイ４の表示画面上での前回フレーム分から現在フレーム分への地図画像のx,y方向のスクロール量px,pyを成分とするスクロールベクトル（px,py）に変換される。なお、px,pyは、x,y方向のスクロール量を画素単位で表した量である。
【００２３】
ゼロベクトル判定器９は、自車位置変位／スクロールベクトル変換器８により変換されたスクロールベクトル（px,py）がゼロベクトル（0,0）であるか否かを判定する。なお、スクロールベクトル（px,py）がゼロベクトル（0,0）であるときには自車が停止していると判断することができ、そうでないときには自車が移動していると判断することができる。
【００２４】
スイッチ１０、１１、１２は、ゼロベクトル判定器９による判定結果に応じて切り替わるスイッチである。本実施形態では、スクロールベクトル（px,py）がゼロベクトル（0,0）であると判定されなかったときは各スイッチの端子ａと端子ｂが短絡し、スクロールベクトル（px,py）がゼロベクトル（0,0）であると判定されたときは各スイッチの端子ａと端子ｃが短絡するようになっている。
【００２５】
スクロールベクトル長L近似多項式演算器１３は、自車位置変位／スクロールベクトル変換器８により変換されたスクロールベクトル（px,py）から、スクロールベクトル長Lを、近似多項式を用いて演算することにより求める。
【００２６】
1/L近似多項式演算器１４は、自車位置変位／スクロールベクトル変換器８により変換されたスクロールベクトル（px,py）から、1/L（スクロールベクトル長Lの逆数）を、近似多項式を用いて演算することにより求める。
【００２７】
なお、詳しくは後述するが、スクロールベクトル長Lおよび1/Lを求める際の近似多項式は、例えば、（px,py）の２次項までのべき級数展開により近似した多項式を用いることができる。
【００２８】
変換行列算出器１５は、自車位置変位／スクロールベクトル変換器８により変換されたスクロールベクトル（px,py）と、スクロールベクトル長L近似多項式演算器１３により求められたスクロールベクトル長Lと、1/L近似多項式演算器１４により求められた1/Lと、フレームバッファ３にテンプレートとして格納されているマスク画像データに係るマスク画像のｘ方向の長さを画素単位で表したdxとから、テンプレートとしてのマスク画像をスクロールベクトル方向に回転、伸長させるためのマスク画像変換行列Mを算出する。なお、マスク画像は、同一縮尺の低詳細度地図画像と高詳細度地図画像とを重畳表示する際に、その高詳細度地図画像における自車位置近傍の局所領域を可視としそれ以外の領域を不可視とするためのものである。また、詳しくは後述するが、マスク画像変換行列Mは、次式（１）を用いて算出することができる。
【００２９】
【数１】
2008209506.tif 000003
【００３０】
回転行列算出器１６は、自車位置変位／スクロールベクトル変換器８により変換されたスクロールベクトル（px,py）と、1/L近似多項式演算器１４により求められた1/Lとから、テンプレートとしてのマスク画像をスクロールベクトル方向に回転させるためのマスク画像回転行列Rを算出し、これを所定の記憶部（不図示）に記憶する。なお、詳しくは後述するが、マスク画像回転行列Rは、次式（２）を用いて算出することができる。
【００３１】
【数２】
2008209506.tif 000004
【００３２】
マスク画像変換器１７は、変換行列算出器１５により算出されたマスク画像変換行列Mまたは回転行列算出器１６によって最後に保存されたマスク画像回転行列Rに基づいて、フレームバッファ３にテンプレートとして格納されているマスク画像データを座標変換する。詳しくは、ゼロベクトル判定器９によりスクロールベクトル（px,py）がゼロベクトル（0,0）であると判定されなかったときは、そのスクロールベクトル（px,py）と変換行列算出器１５により算出されたマスク画像変換行列Mとに応じてマスク画像データを座標変換する。これにより、そのマスク画像データに係るマスク画像が回転、伸長され、スクロール速度およびスクロール方向に適合したマスク形状に変形される。或いは、ゼロベクトル判定器９によりスクロールベクトル（px,py）がゼロベクトル（0,0）であると判定されたときは、そのスクロールベクトル（px,py）と回転行列算出器１６によって最後に保存されたマスク画像回転行列Rとに応じてマスク画像データを座標変換する。これにより、そのマスク画像データに係るマスク画像が回転され、等倍のまま方向だけが異なるマスク形状に変形される。
【００３３】
レイヤー重畳機構１８は、マスク画像変換器１７により座標変換されたマスク画像データと、フレームバッファ３に格納されている現在フレーム分の低詳細度地図画像データ及び現在フレーム分の高詳細度地図画像データとを、対応する位置関係にてレイヤーとして重畳し、マスク画像により現在フレーム分の自車位置近傍の局所領域を可視としそれ以外の領域を不可視とした高詳細度地図画像を低詳細度地図画像上に重畳させた地図画像をディスプレイ４に表示させる。なお、低詳細度地図画像と高詳細度地図画像は同一縮尺である。また、重畳表示された地図画像においては、現在フレーム分の自車位置に自車を表すマークも併せて表示される。
【００３４】
フレームバッファ３は、低詳細度地図画像データが格納される領域３ａと、高詳細度地図画像データが格納される領域３ｂと、テンプレートとしてのマスク画像データが格納される領域３ｃとを有する。領域３ａに格納される低詳細度地図画像データ及び領域３ｂに格納される高詳細度地図画像データは、現在フレーム分の自車位置を含む周辺の地図画像データであって、不図示の記録媒体に記録されている地図画像データに基づいて描画されるものである。また、両地図画像データは同一縮尺である。領域３ｃに格納されるテンプレートとしてのマスク画像データは、可視領域を例えばくさび形や円形の領域とするマスク画像データである。
【００３５】
ディスプレイ４は、レイヤー重畳機構１８によって重畳された地図画像を画面に表示する。なお、ディスプレイ４は、例えばＬＣＤ（Liquid Crystal Display）であり、ドライバーから視認可能な車内の位置に設けられている。
【００３６】
次に、このような構成のカーナビゲーションシステムの動作を説明する。
図２は、このシステムが行う処理の一部を示すフローチャートであって、主に、自車位置を含む周辺所定範囲の地図画像を所定のフレームレートでディスプレイ４に表示する処理を示している。
【００３７】
同図に示したように、この処理では、まず、マスク画像回転行列Rとマスク画像変換行列Mとを単位行列で初期化する（ステップ（以下単に「Ｓ」という）１）。
続くＳ２乃至Ｓ１０の処理は、１フレーム毎に行われる処理である。
【００３８】
まず、ＧＰＳモジュール１が検出した現在フレーム分の自車位置情報が現フレーム自車位置保持バッファ５に保持されると共に、それまで現フレーム自車位置保持バッファ５に保持されていた自車位置情報が前回フレーム分として前フレーム自車位置保持バッファ６に保持された後、自車位置変位算出器７が、その現在フレーム分の自車位置情報と前回フレーム分の自車位置情報とから前回フレーム分に対する現在フレーム分の自車位置の変位を算出し、続いて、自車位置変位／スクロールベクトル変換器８が、その自車位置の変位を元に、表示する地図の縮尺とその縮尺から画面解像度への変換比に応じて換算して、表示画面上での前回フレーム分から現在フレーム分への地図画像のスクロール量px,pyを画素単位で算出する（Ｓ２）。なお、スクロール量px,pyはスクロールベクトルのx,y成分でもあるので、ここではスクロールベクトル（px,py）への変換が行われたことになる。
【００３９】
続いて、ゼロベクトル判定器９が、px = py = 0であるか否か（スクロールベクトル（px,py）がゼロベクトル（0,0）であるか否か）を判定する（Ｓ３）。
この判定結果がＮｏの場合には、各スイッチ１０、１１、１２の端子ａと端子ｂとが短絡し、スクロールベクトル長L近似多項式演算器１３がＳ２で算出されたスクロール量px,pyをスクロールベクトル長Lを求めるための近似多項式に代入してスクロールベクトル長Lを求め、また1/L近似多項式演算器１４がＳ２で算出されたスクロール量px,pyを1/Lを求めるための近似多項式に代入して1/Lを求める（Ｓ４）。なお、詳しくは後述するが、近似多項式は、例えば（px,py）の２次項までのべき級数展開により近似した多項式を用いることができる。
【００４０】
続いて、回転行列算出器１６が、Ｓ２で算出されたスクロール量px,pyと、Ｓ６で求められた1/Lとから、マスク画像を回転させるためのマスク画像回転行列Rを算出し、これを所定の記憶部に記憶する（Ｓ５）。
【００４１】
また、このＳ５と並行して、変換行列算出器１５が、Ｓ２で算出されたスクロール量px,pyと、Ｓ４で求められたスクロールベクトル長Lおよび1/Lと、フレームバッファ３にテンプレートとして格納されているマスク画像データに係るマスク画像のｘ方向長さを画素単位で表したdxとから、マスク画像を回転、伸長させるためのマスク画像変換行列Mを算出する（Ｓ６）。
【００４２】
続いて、マスク画像変換器１７が、Ｓ７で算出されたマスク画像変換行列Mに応じて、フレームバッファ３の領域３ｃに格納されているテンプレートとしてのマスク画像データを座標変換する（Ｓ８）。これにより、そのマスク画像データに係るマスク画像が回転、伸長され、スクロール速度およびスクロール方向に適合したマスク形状に変形される。
【００４３】
一方、Ｓ３の判定結果がＹｅｓの場合には、各スイッチ１０、１１、１２の端子ａと端子ｃとが短絡し、マスク画像変換器１７が、前述のＳ６で回転行列算出器１６によって所定の記憶部に最後に保存されたマスク画像回転行列Rを参照し、そのマスク画像回転行列Ｒに応じてフレームバッファ３の領域３ｃに格納されているテンプレートとしてのマスク画像データを座標変換する（Ｓ４）。これにより、そのマスク画像データに係るマスク画像が回転され、等倍のまま方向だけが異なるマスク形状に変形される。
【００４４】
このようにしてＳ４又はＳ８によりマスク画像データの座標変換が行われた後は、続いて、レイヤー重畳機構１８が、座標変換されたマスク画像データと、フレームバッファ３の領域３ａに格納されている現在フレーム分の低詳細度地図画像データと、その領域３ｂに格納されている現在フレーム分の高詳細度地図画像データとを、対応する位置関係にてレイヤーとして重畳し、マスク画像により現在フレーム分の自車位置近傍の局所領域を可視としそれ以外の領域を不可視とした高詳細度地図画像を低詳細度地図画像上に重畳させ
た地図画像をディスプレイ４に表示させる（Ｓ９）。なお、低詳細度地図画像と高詳細度地図画像は同一縮尺である。また、重畳表示された地図画像においては、現在フレーム分の自車位置に自車を表すマークも併せて表示される。
【００４５】
続いて、当該システムの停止指示を受け付けたか否かを判定し（Ｓ１０）、その判定結果がＹｅｓの場合には後続の不図示の処理へ移行し、Ｎｏの場合には、Ｓ２へ戻り、上述と同様に、次のフレームについての処理を開始する。
【００４６】
図３は、上記Ｓ９の処理を模式的に示す図である。
同図に示したように、座標変換された後のマスク画像データに係る画像２１と、フレームバッファ３の領域３ａに格納されている現在フレーム分の低詳細度地図画像データに係る画像２２と、その領域３ｂに格納されている現在フレーム分の高詳細度地図画像データに係る画像２３とを、対応する位置関係にてレイヤーとして重畳することで、マスク画像２１によって現在フレーム分の自車位置近傍の局所領域を可視としそれ以外の領域を不可視とした高詳細度地図画像２３を低詳細度地図画像２２上に重畳させた地図画像がディスプレイ４の表示画面２４に表示される。なお、低詳細度地図画像２２と高詳細度地図画像２３は同一縮尺である。また、このときには、表示画面２４に重畳表示された地図画像上における現在フレーム分の自車位置に自車マーカー（自車を表すマーク）も併せて表示される。
【００４７】
なお、詳しくは説明しないが、本実施形態においてルート探索が行われていた場合には、低詳細度地図画像データが格納されたフレームバッファ３の領域３ａにおいて、ルート探索で検索された細街路データも例外的に描画される。よって、この場合には、同図に示した低詳細度地図画像２２のように、ルート探索で検索された細街路を含む低詳細度地図画像となり、表示画面２４には、その細街路も表示されるようになる。これにより、ルート探索が行われていた場合には、仮にマスク画像によって高詳細度地図画像上の不可視とされた領域に含まれる細街路であっても、ルート探索で検索された細街路については、表示画面２４に表示されるようになる。
【００４８】
ところで、本実施形態では、上記Ｓ４、Ｓ６、及びＳ７の処理に示したように、近似多項式を用いてLと1/Lを求め、そのLと1/Lを用いてマスク画像変換行列Mを算出し、そのマスク画像変換行列Mを用いてマスク画像の回転、伸長を行っている。このような処理の仕方は理想的な処理とは異なるが、効果は同様のものが得られる。
【００４９】
ここで、本実施形態に係る処理が理想的な処理と同様の効果を得ることができる理由について説明する。
図４は、表示画面上での地図画像のスクロール例を示す図である。
【００５０】
同図において、本実施形態に係る処理では、画面に表示された前回フレーム分の地図画像（前画面）と、画面に表示された現在フレーム分の地図画像（現画面）との間におけるスクロールベクトル（px,py）を取得し、これに基づいてマスク画像の回転、伸長を行っている。このとき、スクロールベクトル長Lは、
L = sqrt(px * px + py * py)
により求めることができるが、本実施形態では、これを多項式に近似して求めるようにしている。
【００５１】
一方、理想的な処理では、例えば車速センサーとジャイロセンサーや地磁気センサー等を用いて、前画面と現画面との間における車速ベクトル（vx,vy）と回転角θを取得し、これらに基づいてマスク画像の伸長、回転が行われる。なお、このとき、px,pyは、
px = -a * vx
py = -a * vy
により求めることができる。但し、aは、変換係数である。
【００５２】
図５(a),(b),(c) は、理想的な処理の流れを説明する図である。
例えば、テンプレートとしてのマスク画像が、同図(a) に示したように、ｘ方向サイズがdx、ｙ方向サイズがdyであって可視領域を円形の領域とするマスク画像とする場合、理想的な処理では、まず、このマスク画像を同図(b) に示したように、
拡大率 = {1 + a * sqrt(vx * vx + vy * vy)}
によりｘ軸方向に拡大する。
【００５３】
続いて、拡大されたマスク画像を、同図(c) に示したように、ｘ軸からの角度θで回転させる。
これにより、テンプレートとしてのマスク画像が伸長、回転される。
【００５４】
図６は、本実施形態に係る処理を説明する図である。
同図に示したように、本実施形態に係る処理では、px,pyのみから求めたマスク画像変換行列Mを用いて、例えば図５(a) に示したテンプレートとしてのマスク画像を座標変換することによって、最終的に回転、伸長された図６に示したマスク画像を得る。
【００５５】
マスク画像変換行列Mは、図６に示した式（＝上記式（１））にあるように、L、1/L、px、py、1/dxとの間で加算及び乗算のみを行うことで求めることができる。また、上述の図２に示した処理中における実用的なスクロール速度（画面に表示される地図画像のスクロール速度）においては、テンプレートとしてのマスク画像のサイズよりもスクロールベクトル長Lの長さの方が十分に小さいことから、Lと1/Lは、例えば、px,pyの２次項までのべき級数展開により近似した多項式を用いて求めることができる。なお、仮にこれを正確な計算により求めるとした場合には、1/L（= 1 / sqrt(px * px + py *py)）といった平方根の逆数の計算が必要となり、処理に負担がかかるので非効率である。
【００５６】
これにより、マスク画像変換行列Mは、1/dxが定数であることから、px,pyのみから求めることができる。
本実施形態に係る処理では、このようにpx,pyのみから求めたマスク画像変換行列Mを用いてテンプレートとしてのマスク画像を回転、伸長させているが、このマスク画像変換行列Mは、理想的なスケーリング行列と回転行列との組み合わせと等価である。
【００５７】
ここで、それらが等価であることを幾何学的に証明する。
図７は、図４に示したベクトル長Lのスクロールベクトル（px,py）と回転角θを示す図である。
【００５８】
同図において、本実施形態に係る処理では、スクロール前（前回フレーム分）の自車位置（緯度経度）に対応する座標を（x0,y0）とし、スクロール後（現在フレーム分）の自車位置（緯度経度）に対応する座標を（x1,y1）とし、地図縮尺をgとし、地図縮尺から画面解像度への変換比をhとすると、スクロール量（スクロール変位）px,pyは、
px = g * h * (x1 - x0)
py = g * h * (y1 - y0)
により求めることができる。そして、このようにして求めたpx,pyを用いて上記式（１）によりマスク画像変換行列Mを求めることができる。
【００５９】
一方、理想的なスケーリング行列と回転行列との組み合わせによる場合、回転行列Rとスケーリング行列Sは、
【００６０】
【数３】
2008209506.tif 000005
【００６１】
となる。
よって、理論的なマスク画像変換行列は、R × Sとなる。
これを変形すると、三角関数の公式により、
px = L × cosθ
py = L × sinθ
であることから、
【００６２】
【数４】
2008209506.tif 000006
【００６３】
となる。
ここで、ｘ軸方向のみのスケーリングを考え、且つ、スクロール停止時にマスク画像が標準サイズ（テンプレートとしてのマスク画像サイズ）を保持することと、テンプレートとしてのマスク画像のｘ方向サイズdxとスクロール距離Lとの比率がスケール比として適切であることを考慮すると、ｘ軸方向のスケーリングsxとｙ軸方向のスケーリングsyは、
【００６４】
【数５】
2008209506.tif 000007
【００６５】
となる。従って、
【００６６】
【数６】
2008209506.tif 000008
【００６７】
となり、定数1/dxと（px,py）のみから求める上記式（１）のマスク画像変換行列Mに一致する。
よって、スクロール量px,pyのみから求めたマスク画像変換行列Mと、回転角θを使って求めた理論的な行列（理想的なスケーリング行列と回転行列との組み合わせにより求めた行列）とが等価であることが証明された。
【００６８】
なお、このマスク画像変換行列Mにおいて、px = py = 0のときは特異点になって計算できないので、この場合には、直接、
【００６９】
【数７】
2008209506.tif 000009
【００７０】
の単位行列に置き換える必要がある。
このとき、M = I としてマスク画像を座標変換した場合と一般の場合（(px,py)≠(0,0)のときに上記式（１）を用いてマスク画像を座標変換した場合）とでマスク画像のスケール比の連続性は保たれるが、マスク画像の向きの連続性は保持されない。そこで、その対処法として、次の２通りの方法が考えられる。
・方法１
可視領域を円形の領域とするマスク画像をテンプレートとし、px = py = 0の時とそれ以外の時との遷移の瞬間に、向きの影響を受けないようにする。
・方法２
可視領域を任意形状（例えばくさび形）の領域とするマスク画像をテンプレートとしたい場合には、マスク画像変換行列Mだけでなくマスク画像回転行列Rも利用し、(px,py)≠(0,0)を満たしていた最も最近の画面（フレーム）における、
【００７１】
【数８】
2008209506.tif 000010
【００７２】
を記憶しておき、これをpx = py = 0になったときのMとして、Iの代わりに採用する。
本実施形態では、上述の図１及び図２を用いて説明したとおり、上記方法２を採用して処理を行っているが、上記方法１を採用して処理を行うことも可能である。この場合には、図１に示した回転行列算出器１６や図２のＳ６に示した処理等が不要になり、構成及び
動作をより簡単にすることができる。
【００７３】
また、本実施形態において、Lと１/Lは、２変数の初等関数なので、テイラー展開により、
a ＋ b×px ＋ b'×py ＋ c×px2 ＋ c'×px×py ＋ c"×py2 ＋…
の形式に展開でき、２次か３次の項までで打ち切っても、本発明の目的には十分正確な精度で近似できる。よって、上述のように、例えば、（px,py）の２次項までのべき級数展開により近似した多項式を用いることができる。
【００７４】
一例として、（px,py）=（1,1）を中心に２次の項までテイラー展開した場合、Lと1/Lは、
【００７５】
【数９】
2008209506.tif 000011
【００７６】
となる。
以上、本実施形態によれば、角度情報（進行方向の情報）の取得や三角関数演算および平方根演算といった複雑な演算を必要とすることなく、表示画面上での地図画像のスクロール量px,pyからマスクの変形パラメータ（マスク画像変換行列M）を取得することができる。
【００７７】
特にポータブルナビゲーションシステムのような低価格品においては、ジャイロセンサーや地磁気センサーのような高価な部品が搭載されておらず、角度情報（進行方向の情報）が直接与えられない。そのため、ＧＰＳを利用して取得した自車位置情報だけが頼りであり、前回フレーム分の自車位置と現在フレーム分の自車位置との差分情報しか分からないが、スクロールベクトルならば、その差分情報と地図縮尺だけから直接知ることができる。従って、とりわけポータブルナビゲーションシステムにとって大きな効果が得られる。
【００７８】
また、本実施形態によれば、スクロール停止時とスクロール時との間の遷移におけるマスク形状の連続性を確保することができる。
また、本実施形態によれば、図３の表示画面２４に示したように、同一縮尺で画面に表示されている地図画像内において、背景には主要道路だけのすっきりした地図を表示し、自車位置近傍の局所領域にだけ細街路を含む詳細地図を重畳表示して、画面内での道路網詳細度を不均一にすることができるので、メリハリを付けて焦点を明確にし、視線を誘導することができる。
【００７９】
また、本実施形態によれば、２ウィンドウ方式における「拡大表示」の概念と「細街路の表示」という概念とを分離し、拡大地図に現れる余計な詳細情報に気を取られることなく、細街路を右左折すべきかどうかの判断に焦点を合わせられるようにすることができる。仮に、本当に拡大地図が見たい場合には、２ウィンドウ方式による拡大表示と本実施形態に係る表示を組み合わせることもできる。
【００８０】
また、本実施形態によれば、当該システムが搭載するメモリー上の地図描画領域であるフレームバッファ３において、低詳細度地図画像データが描画される領域と高詳細度地図画像データが描画される領域とを分けて独立に管理しているので、再描画頻度を下げて冗
長なメモリーアクセスを排除し、性能低下を防ぐことができる。これは、低詳細度地図画像及び高詳細度地図画像の表示領域とマスク領域（マスク画像）との相対位置関係がスクロールするたびにずれるので、１枚の画像に統合してしまうとスクロールのたびに再描画しなければならないが、独立管理にすれば、参照原点アドレスシフトによるスクロールで低詳細度地図画像及び高詳細度地図画像とマスク領域とをずらして重ね合わせられるので、再描画頻度を減らせることができるからである。
【００８１】
なお、本実施形態では、低詳細度地図画像と高詳細度地図画像とを重ね合わせる際、自車位置近傍局所領域のみ高詳細度地図画像が可視になるようなマスク機構として、マスク形状を書き込むバッファ（フレームバッファ３の領域３ｃ）を当該システムが搭載するメモリー上に用意して参照しながら可視性を制御するようにしているが、例えば、画面座標を使ってマスク領域を定義しておき、その中に入っているか否かを画素スキャン時に論理回路で計算することによって可視性を制御するようにすることも可能である。
【００８２】
以上、本発明について詳細に説明したが、本発明は上記実施形態に限定されず、本発明の要旨を逸脱しない範囲において、各種の改良及び変更を行っても良いのはもちろんである。
【図面の簡単な説明】
【００８３】
【図１】本発明の一実施の形態に係るグラフィックスシステムであるカーナビゲーションシステムのブロック図である。
【図２】カーナビゲーションシステムが行う処理の一部を示すフローチャートである。
【図３】Ｓ９の処理を模式的に示す図である。
【図４】表示画面上での地図画像のスクロール例を示す図である。
【図５】(a),(b),(c) は、理想的な処理の流れを説明する図である。
【図６】本実施形態に係る処理を説明する図である。
【図７】図４に示したベクトル長Lのスクロールベクトル（px,py）と回転角θを示す図である。
【符号の説明】
【００８４】
１      ＧＰＳモジュール
２      画像処理ＬＳＩ
３      フレームバッファ
４      ディスプレイ
５      現フレーム自車位置保持バッファ
６      前フレーム自車位置保持バッファ
７      自車位置変位算出器
８      自車位置変位／スクロールベクトル変換器
９      ゼロベクトル判定器
１０、１１、１２  スイッチ
１３      スクロールベクトル長L近似多項式演算器
１４      1/L近似多項式演算器
１５      変換行列算出器
１６      回転行列算出器
１７      マスク画像変換器
１８      レイヤー重畳機構
２１      マスク画像
２２      低詳細度地図画像
２３      高詳細度地図画像
２４      表示画面
【図１】
2008209506.tif 000012
【図２】
2008209506.tif 000013
【図３】
2008209506.tif 000014
【図４】
2008209506.tif 000015
【図５】
2008209506.tif 000016
【図６】
2008209506.tif 000017
【図７】
2008209506.tif 000018