JP2010067261A - 画像処理装置 - Google Patents

画像処理装置 Download PDF

Info

Publication number
JP2010067261A
JP2010067261A JP2009136896A JP2009136896A JP2010067261A JP 2010067261 A JP2010067261 A JP 2010067261A JP 2009136896 A JP2009136896 A JP 2009136896A JP 2009136896 A JP2009136896 A JP 2009136896A JP 2010067261 A JP2010067261 A JP 2010067261A
Authority
JP
Japan
Prior art keywords
image
display
unit
change request
request signal
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2009136896A
Other languages
English (en)
Other versions
JP5215945B2 (ja
Inventor
Akio Oba
章男 大場
Hiroyuki Segawa
博之 勢川
Tetsugo Inada
徹悟 稲田
Hirotoshi Maekawa
博俊 前川
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Interactive Entertainment Inc
Original Assignee
Sony Computer Entertainment Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Computer Entertainment Inc filed Critical Sony Computer Entertainment Inc
Priority to JP2009136896A priority Critical patent/JP5215945B2/ja
Priority to US12/537,316 priority patent/US8331701B2/en
Publication of JP2010067261A publication Critical patent/JP2010067261A/ja
Application granted granted Critical
Publication of JP5215945B2 publication Critical patent/JP5215945B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/20Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterised by details of the game platform
    • A63F2300/203Image generating hardware

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Controls And Circuits For Display Device (AREA)
  • Processing Or Creating Images (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

【課題】ユーザからの画像変更要求に応じて、スムーズに表示画像を変更することのできる技術を提供する。
【解決手段】圧縮形式特定部132が、メインメモリ60に保持された画像データの圧縮形式を特定する。伝達関数決定部140は、特定されたタイル画像の圧縮形式に応じて、伝達関数を決定する。畳み込み演算部142は、変更要求信号と、決定された伝達関数を畳み込み演算して、変更指示信号を生成する。先読み処理部150は、変更要求信号を用いて、メインメモリ60からタイル画像を読み出してデコードし、バッファメモリ70に書き込む。表示画像処理部170は、変更指示信号を用いて、表示画像を生成する。
【選択図】図7

Description

本発明は、ディスプレイに表示する画像を拡大/縮小、または上下左右に移動させる画像処理技術に関する。
ゲームプログラムを実行するだけでなく、動画を再生できる家庭用エンタテインメントシステムが提案されている。この家庭用エンタテインメントシステムでは、GPUがポリゴンを用いた三次元画像を生成する。
米国特許第6563999号公報
従来より、高精細な写真などのディジタル画像から生成された複数の解像度のタイル画像を用いて、表示画像の拡大/縮小処理や、上下左右方向の移動処理を行う技術が提案されている。この画像処理技術では、原画像サイズを複数段階に縮小して異なる解像度の画像を生成し、各階層の画像を一又は複数のタイル画像に分割して、原画像を階層構造で表現する。通常、最も解像度の低い画像は1つのタイル画像で構成され、最も解像度の高い原画像は、最も多い数のタイル画像で構成される。画像処理装置は、表示画像の拡大処理または縮小処理時に、使用しているタイル画像を、異なる階層のタイル画像に切り替えることで、拡大表示または縮小表示を迅速に行うようにしている。
このような画像処理装置においては、タイル画像の切替時に、表示画像がなめらかに拡大または縮小されないことがある。なお、表示画像を上下左右方向に移動させるときも同様の事情が存在し、移動方向に位置するタイル画像に切り替える際に、表示画像がなめらかに移動されないことがある。このように表示画像が連続的に変更されない場合、ユーザに違和感を生じさせる。
そこで本発明は、ユーザからの画像変更要求に応じて、スムーズに表示画像を変更することのできる技術を提供することを目的とする。
上記課題を解決するために、本発明のある態様は、画像をディスプレイに表示する画像処理装置であって、異なる解像度ごとに少なくとも1つの圧縮したタイル画像を含む画像データを保持する記憶装置と、記憶装置に保持された画像データの圧縮形式を特定する特定部と、特定されたタイル画像の圧縮形式に応じて、伝達関数を決定する伝達関数決定部と、ディスプレイに表示されている表示画像の変更要求信号を受け付ける受付部と、変更要求信号と、決定された伝達関数を畳み込み演算して、変更指示信号を生成する畳み込み演算部と、変更要求信号を用いて、記憶装置からタイル画像を読み出してデコードする先読み処理部と、変更指示信号を用いて表示画像を生成する表示画像処理部とを備える。
なお、以上の構成要素の任意の組合せ、本発明の表現を方法、装置、システム、記録媒体、コンピュータプログラムなどの間で変換したものもまた、本発明の態様として有効である。
本発明によると、ユーザからの画像変更要求に応じてスムーズに表示画像を変更する技術を提供することができる。
本発明の実施例にかかる画像処理システムの使用環境を示す図である。 入力装置の外観構成を示す図である。 画像処理システムにおいて使用する画像データの階層構造を示す図である。 画像処理装置の機能ブロック図を示す図である。 先読み処理を説明するための説明図である。 画像データの処理の流れを説明するための図である。 画像処理装置の構成を示す図である。 画像変更要求信号と画像変更指示信号との関係を示す図である。 3つのガウシアン関数を示す図である。 本実施例における画像処理のフローチャートを示す図である。 関連付けられた複数の階層データの先読み処理をするための説明図である。 (a)は、グローバル座標系において階層データが切り替わったときの画像変更指示信号を示す図であり、(b)は、2つのローカル座標系において階層データが切り替わったときの画像変更指示信号を示す図である。
図1は、本発明の実施例にかかる画像処理システム1の使用環境を示す。画像処理システム1は、入力装置20と、画像処理ソフトウェアを実行する画像処理装置10と、画像処理装置10による処理結果を出力する表示装置12とを備える。表示装置12は、画像を出力するディスプレイおよび音声を出力するスピーカを有するテレビであってよい。また表示装置12は、コンピュータディスプレイであってもよい。表示装置12は、画像処理装置10に有線ケーブルで接続されてよく、また無線LAN(Local Area Network)などにより無線接続されてもよい。なお画像処理装置10、入力装置20および表示装置12は、一体に形成されてもよく、たとえば画像処理機能を搭載した携帯端末装置として構成されてもよい。
画像処理システム1において、画像処理装置10は、ケーブル14を介してインターネットなどの外部ネットワークに接続し、階層化された圧縮画像データをダウンロードして取得してもよい。なお画像処理装置10は、無線通信により外部ネットワークに接続してもよい。
画像処理装置10は、たとえばゲーム装置であって、画像処理用のアプリケーションプログラムをロードすることで画像処理機能を実現する。なお画像処理装置10は、パーソナルコンピュータであってもよく、画像処理用のアプリケーションプログラムをロードすることで画像処理機能を実現してもよい。
画像処理装置10は、ユーザから入力装置20に入力される要求に応じて、表示装置12のディスプレイに表示する画像の拡大/縮小処理や、上下左右方向への移動処理など、表示画像を変更する処理を行う。ユーザが、ディスプレイに表示された画像を見ながら入力装置20を操作すると、入力装置20が、表示画像の変更要求信号を画像処理装置10に送信する。
図2は、入力装置20の外観構成を示す。入力装置20は、ユーザが操作可能な操作手段として、十字キー21、アナログスティック27a、27bと、4種の操作ボタン26を備える。4種の操作ボタン26は、○ボタン22、×ボタン23、□ボタン24および△ボタン25から構成される。
画像処理システム1において、入力装置20の操作手段には、表示画像の拡大/縮小要求、および上下左右方向へのスクロール要求を入力するための機能が割り当てられる。たとえば、表示画像の拡大/縮小要求の入力機能は、右側のアナログスティック27bに割り当てられる。ユーザはアナログスティック27bを手前に引くことで、表示画像の縮小要求を入力でき、また手前から押すことで、表示画像の拡大要求を入力できる。また、表示画像のスクロール要求の入力機能は、十字キー21に割り当てられる。ユーザは十字キー21を押下することで、十字キー21を押下した方向のスクロール要求を入力できる。なお、画像変更要求の入力機能は別の操作手段に割り当てられてもよく、たとえばアナログスティック27aに、スクロール要求の入力機能が割り当てられてもよい。
入力装置20は、入力された画像変更要求信号を画像処理装置10に伝送する機能をもち、本実施例では画像処理装置10との間で無線通信可能に構成される。入力装置20と画像処理装置10は、Bluetooth(ブルートゥース)(登録商標)プロトコルやIEEE802.11プロトコルなどを用いて無線接続を確立してもよい。なお入力装置20は、画像処理装置10とケーブルを介して接続して、画像変更要求信号を画像処理装置10に伝送してもよい。
図3は、画像処理システム1において使用する画像データの階層構造を示す。画像データは、深さ(Z軸)方向に、第0階層30、第1階層32、第2階層34および第3階層36を含む階層構造を有し、以下、この階層構造をもつ画像データを「階層データ」とよぶ。なお第4階層以上の高階層があってもよい。図3に示す階層データ28は4分木の階層構造を有し、各階層は、1以上のタイル画像38で構成される。すべてのタイル画像38は同じ画素数をもつ同一サイズに形成され、たとえば256×256画素を有する。各階層の画像データは、一つの画像を異なる解像度で表現しており、最高解像度をもつ第3階層36の原画像を複数段階に縮小して、第2階層34、第1階層32、第0階層30の画像データが生成される。たとえば第N階層の解像度(Nは0以上の整数)は、左右(X軸)方向、上下(Y軸)方向ともに、第(N+1)階層の解像度の1/2であってよい。
画像処理装置10において、階層データ28は、所定の圧縮形式で圧縮された状態で記憶装置に保持されており、ディスプレイに表示される前に記憶装置から読み出されてデコードされる。本実施例の画像処理装置10は、複数種類の圧縮形式に対応したデコード機能を有し、たとえばS3TC形式、JPEG形式、JPEG2000形式の圧縮データをデコード可能とする。なおデコード処理により同一サイズの画像をバッファメモリ上に展開する時間は、S3TC形式の圧縮画像データが最も短く、JPEG形式、JPEG2000形式の順に長くなる。階層データにおいて、圧縮処理は、タイル画像単位に行われていてもよく、また同一階層であれば複数のタイル画像単位に行われていてもよい。
階層データ28の階層構造は、図3に示すように、左右方向をX軸、上下方向をY軸、深さ方向をZ軸として設定され、仮想的な3次元空間を構築する。この階層構造において、X軸およびY軸は、原点を等しくする共通の座標系を定義する。画像処理装置10は、入力装置20から供給される入力信号から表示画像の変更量を導出すると、その変更量を用いて仮想空間におけるフレーム画像の4隅の座標(フレーム座標)を導出する。仮想空間におけるフレーム座標は、後述する先読み処理および表示画像の生成処理に利用される。なお、仮想空間におけるフレーム座標の代わりに、画像処理装置10は、階層を特定する情報と、その階層におけるテクスチャ座標(UV座標)を導出してもよく、また仮想空間におけるフレーム画像の中心座標(X,Y)と縮尺率SCALEを導出してもよい。たとえばユーザからの操作要求が、階層データ28の階層構造において、仮想的なカメラを移動させる要求であると考えるならば、フレーム画像の中心座標と縮尺率情報との組み合わせ(X,Y,SCALE)を、仮想カメラ画像座標と呼んでもよい。以下では、説明の便宜上、(X,Y,SCALE)を仮想カメラ画像座標と呼び、画像変更要求信号を、仮想空間における仮想カメラを移動させて、フレームごとに仮想カメラ画像座標(X,Y,SCALE)を特定するための信号として表現することもある。縮尺率SCALEは、後述するようにL3の表示画像の縮尺率を1としたときのフレーム画像の縮尺率として定められてよい。なお、縮尺率は、X軸方向の縮尺率X_SCALEおよびY軸方向の縮尺率Y_SCALEとして定義され、X_SCALEとY_SCALEとを異ならせて、アスペクト比を変更可能とすることも可能である。その場合、仮想カメラ画像座標は、(X,Y,X_SCALE、Y_SCALE)として表現される。
図4は、画像処理装置10の機能ブロック図を示す。画像処理装置10は、無線インタフェース40、スイッチ42、表示処理部44、ハードディスクドライブ50、記録媒体装着部52、ディスクドライブ54、メインメモリ60、バッファメモリ70および制御部100を有して構成される。表示処理部44は、表示装置12のディスプレイに表示するデータをバッファするフレームメモリを有する。
スイッチ42は、イーサネットスイッチ(イーサネットは登録商標)であって、外部の機器と有線または無線で接続して、データの送受信を行うデバイスである。スイッチ42は、ケーブル14を介して外部ネットワークに接続し、画像サーバから階層化された圧縮画像データを受信してもよい。またスイッチ42は無線インタフェース40に接続し、無線インタフェース40は、所定の無線通信プロトコルで入力装置20と接続する。入力装置20においてユーザから入力された画像変更要求信号は、無線インタフェース40、スイッチ42を経由して、制御部100に供給される。
ハードディスクドライブ50は、データを記憶する補助記憶装置として機能する。スイッチ42を介して受信された圧縮画像データは、ハードディスクドライブ50に格納されてもよい。表示処理の実行時、ハードディスクドライブ50に格納された圧縮画像データは、メインメモリ60に読み出される。記録媒体装着部52は、メモリカードなどのリムーバブル記録媒体が装着されると、リムーバブル記録媒体からデータを読み出す。ディスクドライブ54は、読出専用のROMディスクが装着されると、ROMディスクを駆動して認識し、データを読み出す。ROMディスクは、光ディスクや光磁気ディスクなどであってよい。
制御部100は、マルチコアCPUを備え、1つのCPUの中に1つの汎用的なプロセッサコアと、複数のシンプルなプロセッサコアを有する。汎用プロセッサコアはPPU(Power Processing Unit)と呼ばれ、残りのプロセッサコアはSPU(Synergistic-Processing Unit)と呼ばれる。
制御部100は、メインメモリ60およびバッファメモリ70に接続するメモリコントローラを備える。PPUはレジスタを有し、演算実行主体としてメインプロセッサを備えて、実行するアプリケーションにおける基本処理単位としてのタスクを各SPUに効率的に割り当てる。なお、PPU自身がタスクを実行してもよい。SPUはレジスタを有し、演算実行主体としてのサブプロセッサとローカルな記憶領域としてのローカルメモリを備える。ローカルメモリは、バッファメモリ70として使用されてもよい。メインメモリ60およびバッファメモリ70は記憶装置であり、RAM(ランダムアクセスメモリ)として構成される。SPUは制御ユニットとして専用のDMA(Direct Memory Access)コントローラをもち、メインメモリ60とバッファメモリ70の間のデータ転送を高速に行うことができ、また表示処理部44におけるフレームメモリとバッファメモリ70の間で高速なデータ転送を実現できる。本実施例の制御部100は、複数のSPUを並列動作させることで、高速な画像処理機能を実現する。表示処理部44は、表示装置12に接続されて、ユーザからの要求に応じた画像処理結果を出力する。
本実施例の画像処理装置10は、表示画像の拡大/縮小処理や、スクロール処理を行う際に、表示画像をスムーズに変更させるために、ユーザからの画像変更要求をもとに、将来表示させるタイル画像38を予測し、記憶装置に保持されている階層データからタイル画像38をデコードして、バッファメモリ70に展開しておく。これにより、後の必要なタイミングで、表示画像の生成に使用するタイル画像38を瞬時に切り替えることが可能となる。以下において、将来表示させるタイル画像を予測して、バッファメモリ70に前もって展開しておく処理を、「先読み処理」とよぶ。
図5は、先読み処理を説明するための説明図を示す。図5は、階層データの構造を示しており、各階層はL0(第0階層)、L1(第1階層)、L2(第2階層)、L3(第3階層)と表現されている。図5に示す階層データ構造において、深さ(Z軸)方向における位置は、解像度を示し、L0に近い位置ほど解像度が低く、L3に近い位置ほど解像度は高い。なおディスプレイに表示される画像の大きさに注目すると、深さ方向における位置は、縮尺率に対応し、L3の表示画像の縮尺率を1とすると、L2における縮尺率は1/4、L1における縮尺率は1/16となり、L0における縮尺率は1/64となる。したがって深さ方向において、表示画像がL0側からL3側へ向かう方向に変化する場合、表示画像は拡大していき、L3側からL0側へ向かう方向に変化する場合は、表示画像は縮小していく。矢印80は、ユーザからの画像変更要求信号が、表示画像の縮小を要求しており、縮尺率1/4(L2)をまたいだ様子を示している。本実施例の画像処理装置10では、タイル画像38として用意しているL1、L2の深さ方向の位置を、深さ方向の先読み境界として設定し、画像変更要求信号が先読み境界をまたぐと、先読み処理が開始される。
表示画像の縮尺率がL2の近傍にある場合、表示画像は、L2(第2階層)のタイル画像を用いて作成される。具体的には、表示する画像の縮尺率が、L1タイル画像とL2タイル画像の切替境界82と、L2タイル画像とL3タイル画像の切替境界84の間にある場合に、L2タイル画像が利用される。したがって、矢印80に示すように画像の縮小処理が要求されると、L2のタイル画像が拡大された画像から、縮小された画像に変換されて表示される。本実施例の画像処理装置10は、入力装置20からの画像変更要求信号と伝達関数を畳み込み演算して、画像変更要求信号が要求する表示画像の生成を遅延させ、その間に、画像変更要求信号から予測される将来必要なタイル画像38を特定して、記憶装置から先読みしておく。図5の例では、画像変更要求信号による要求縮尺率がL2をまたいだときに、画像処理装置10が、縮小方向にあるL1の対応するタイル画像38を記憶装置から先読みしてデコードし、バッファメモリ70に書き込む。なお本実施例では説明を簡略にする目的で、入力装置20から画像変更要求信号が入力されることとしているが、画像変更要求信号は、入力装置20からの入力信号を、画像処理装置10において、たとえばフレームごとの仮想カメラ画像座標(X,Y,SCALE)に変換したものであってよい。
なお以上は深さ方向の先読み処理について説明したが、上下左右方向の先読み処理についても同様に処理される。具体的には、バッファメモリ70に展開されている画像データに先読み境界を設定しておき、画像変更要求信号による表示位置が先読み境界をまたいだときに、先読み処理が開始されるようにする。
図6は、画像データの処理の流れを説明するための図である。たとえば階層データは、外部ネットワークを介してハードディスクドライブ50に圧縮された状態で保持されている。なお階層データは、メモリカードなどの外部記憶装置に保持されていてもよく、またROMなどのディスク記憶装置に保持されていてもよい。
画像処理の開始前に、ハードディスクドライブ50に保持された階層データは、圧縮された状態のままメインメモリ60に読み込まれる。このとき階層構造を構成するすべての階層データがメインメモリ60に読み込まれてもよく、また一部の階層データが読み込まれてもよい。たとえば、表示画像の生成に使用しているタイル画像の周辺のタイル画像が、圧縮された状態でメインメモリ60に読み込まれてもよい。本実施例の制御部100は、既述したように複数のSPUを並列に動作させることができ、したがってメインメモリ60に圧縮保持された階層データを必要に応じて短時間でデコードできる。これにより、メインメモリ60には、デコード済みの画像データを用意しておく必要がなく、メインメモリ60のメモリ容量を小さくできる。
画像処理装置10は、画像処理を実行してディスプレイに初期画像を表示する。画像処理装置10は、入力装置20から画像変更要求信号を受けると、メインメモリ60から将来必要なタイル画像38を先読みしてデコードし、バッファメモリ70に書き込む。
バッファメモリ70は、少なくとも2つのバッファ領域72、74を有して構成される。各バッファ領域72、74のサイズは、フレームメモリ90のサイズよりも大きく設定され、入力装置20からスクロール要求信号や、拡大縮小の要求信号が入力された場合に、ある程度の量の変更要求に対しては、バッファ領域72、74に展開した画像データで表示画像を生成できるようにする。
バッファ領域72、74の一方は、表示画像の生成に用いるタイル画像38を保持するために利用され、他方は、階層データの先読み処理により将来必要なタイル画像38を準備するために利用される。図5を参照して、深さ方向に関していえば、表示画像の要求縮尺率がL2を下回った時点でL1タイル画像の先読み処理が開始され、要求縮尺率が切替境界82を超えるまでの間に先読み処理が完了して、デコード済みのタイル画像38がバッファ領域72または74に保持される。これにより、要求縮尺率が切替境界82に到達した時点で必要なタイル画像38に切り替えることができ、表示画像をスムーズに表示できるようになる。
図7は、画像処理装置10の構成を示す。画像処理装置10は、信号処理部120、先読み処理部150および表示画像処理部170を備える。信号処理部120は、信号受付部122、情報特定部130、伝達関数決定部140、畳み込み演算部142および最大速度設定部144を有し、情報特定部130は、圧縮形式特定部132およびリソース情報特定部134を有する。信号処理部120は、入力装置20から供給される画像変更要求信号を処理する。先読み処理部150は、変更量導出部152、空間座標決定部154、判定部156、読出画像決定部158、画像データ取得部160およびデコード部162を有する。先読み処理部150は、表示画像処理部170による表示画像の生成に先立って、将来必要なタイル画像38を先読みしてデコードしておく。表示画像処理部170は、変更量導出部172、空間座標決定部174および表示画像生成部176を有する。表示画像処理部170は、先読み処理部150によりデコードされた画像データを用いて、表示画像を生成する。
図7において、さまざまな処理を行う機能ブロックとして記載される各要素は、ハードウェア的には、CPU(Central Processing Unit)、メモリ、その他のLSIで構成することができ、ソフトウェア的には、メモリにロードされたプログラムなどによって実現される。既述したように、制御部100は1つのPPUと複数のSPUとを有し、PPUおよびSPUがそれぞれ単独または協同して、各機能ブロックを構成できる。したがって、これらの機能ブロックがハードウェアのみ、ソフトウェアのみ、またはそれらの組合せによっていろいろな形で実現できることは当業者には理解されるところであり、いずれかに限定されるものではない。特に画像処理装置10では、複数のSPUが協同してデコード部162として機能することで、表示画像の生成に将来必要とされるタイル画像38を短時間でデコードすることができる。
画像処理装置10において、信号処理部120は、先読み処理部150および表示画像処理部170の動作に先立って、表示画像を変更する速度の最大値を設定し、また画像変更要求信号と畳み込み演算する伝達関数を決定する。伝達関数は、たとえばガウシアン関数であってもよい。画像変更要求信号は、決定された伝達関数と畳み込み演算されることで遅延させられ、画像処理装置10は、この遅延時間を利用して、画像データの先読み処理に要する時間を確保する。これにより、ユーザの要求に対応したスムーズな画像表示が可能となる。伝達関数の決定処理および最大変更速度の設定処理は、情報特定部130により特定された情報をもとに実行される。
圧縮形式特定部132は、メインメモリ60に保持された画像データの圧縮形式を特定する。圧縮形式特定部132は、たとえば画像データの拡張子および/または画像フォーマット中のヘッダ情報を参照して、画像データの圧縮形式を特定する。デコード部162がS3TC形式、JPEG形式、JPEG2000形式の圧縮画像データをデコード可能な場合、圧縮形式特定部132は、画像データがいずれの形式で圧縮されているか特定する。
既述したように、S3TC形式、JPEG形式、JPEG2000形式の圧縮画像データは、この順にデコードに要する時間が短い。したがって、画像データがS3TC形式で圧縮されていれば、他の圧縮形式と比較してタイル画像38を短時間でデコードできるため、先読み処理にかかる時間を短縮でき、また表示画像の変更速度を高速に設定することができる。
最大速度設定部144は、圧縮形式特定部132により特定された画像データの圧縮形式に応じて、表示画像を変更する速度の最大値を設定する。この最大速度は、1フレームにおいて表示画像が変更される速度の最大値である。表示画像の変更速度は、仮想カメラの移動速度に対応する。具体的に最大速度設定部144は、S3TC形式の画像データに対しては最大速度をV1、JPEG形式の画像データに対しては最大速度をV2、JPEG2000形式の画像データに対しては最大速度をV3(ここでV1>V2>V3)となるように設定する。なお、最大速度設定部144は、画像を拡大するときの最大速度、縮小するときの最大速度、また上下左右方向にスクロールするときの最大速度をそれぞれ設定する。これらの最大速度は、表示画像の縮尺に応じて適宜定められてもよい。既述したように、それぞれの最大速度は、デコードに要する時間の長い圧縮形式の方がより小さくなるように設定される。
伝達関数決定部140は、圧縮形式特定部132により特定された画像データの圧縮形式に応じて、畳み込み演算に用いる伝達関数を決定する。伝達関数は、画像変更要求信号を信号受付部122で受け付けてから、実際にディスプレイに表示するまでの遅延時間を実質的に設定する。伝達関数決定部140は、伝達関数を、たとえばピーク位置の異なる複数のガウシアン関数から選択してもよい。
図8は、仮想カメラの移動要求に対応する画像変更要求信号200と、画像変更要求信号200を畳み込み演算した結果である画像変更指示信号202とを示す。ここでは画像変更要求信号200が、矩形波信号である場合を示す。伝達関数決定部140が伝達関数を決定し、畳み込み演算部142が、入力された画像変更要求信号200と、決定された伝達関数を畳み込み演算して、画像変更指示信号202を生成する。図8に示すように、畳み込み演算することで、画像変更指示信号202は、画像変更要求信号200を遅延した信号となる。なお画像処理装置10において、階層データは、全ての階層に共通の1つのローカルな座標系で定義されているため、表示に利用するタイル画像38の階層が切り替わる場合であっても、仮想カメラの移動は1つの座標系の中で行われ、仮想カメラ画像座標(X,Y,SCALE)を特定する画像変更要求信号200の連続性は担保される。本実施例の画像処理装置10では、画像変更要求信号200を伝達関数で畳み込み演算することで、画像変更要求信号200を遅延させて、先読み処理の時間を確保する。
図9は、3つのガウシアン関数を示す。図9に示す関数曲線は、縦軸を重み、横軸をフレーム数として表現されている。1フレーム期間は、1/60秒である。ガウシアン関数92は幅を16フレーム、ピーク位置を8フレーム目とし、ガウシアン関数94は幅を32フレーム、ピーク位置を16フレーム目とし、ガウシアン関数96は幅を64フレーム、ピーク位置を32フレーム目とする。
ユーザが入力装置20の操作手段を操作している間、操作量が一定値である場合、入力装置20は画像変更要求信号を矩形波信号として出力する。したがって画像変更要求信号とガウシアン関数92を畳み込み演算すると、演算結果は、画像変更要求信号の入力時点から徐々に上昇し、8フレーム目からピーク値を維持する信号となる。またユーザが操作手段の操作を終了し、画像変更要求信号の出力が停止されると、畳み込み演算の結果は、画像変更要求信号の停止時点から徐々に下降し、停止時点から8フレーム目でゼロ値になる信号となる。同様に画像変更要求信号とガウシアン関数96を畳み込み演算すると、演算結果は、画像変更要求信号の入力時点から緩やかに上昇し、32フレーム目からピーク値を維持する信号となる。またユーザが操作手段の操作を終了し、画像変更要求信号の出力が停止されると、畳み込み演算の結果は、画像変更要求信号の停止時点から緩やかに下降し、停止時点から32フレーム目でゼロ値になる信号となる。したがってガウシアン関数96を用いると、ガウシアン関数92と比較して遅延時間の大きい畳み込み演算結果を得ることができる。
伝達関数として、図9に示す3つのガウシアン関数がハードディスクドライブ50に予め用意されている場合、伝達関数決定部140は、S3TC形式の画像データに対してはガウシアン関数92を伝達関数として決定し、JPEG形式の画像データに対してはガウシアン関数94を伝達関数として決定し、JPEG2000形式の画像データに対してはガウシアン関数96を伝達関数として決定する。このように伝達関数決定部140は、デコードに要する時間の長い圧縮形式の画像データに対して、より遅延時間の長いガウシアン関数を割り当てることで、先読み処理の時間を確保する。
以上のように、表示画像処理部170による表示画像の処理、および先読み処理部150による画像データの先読み処理に先だって、伝達関数決定部140が伝達関数を決定し、また最大速度設定部144が表示画像の最大速度を決定する。これにより、表示画像処理部170および先読み処理部150による各処理が実行される環境が整えられる。
なお最大速度設定部144が、画像データの圧縮形式に応じて表示画像の最大速度を設定する場合に、異なる圧縮形式に対して同一の最大速度を設定することも可能である。画像処理システム1では、表示画像処理部170が、先読み処理部150により先読み処理されたタイル画像38を、スムーズに切り替えて表示画像を生成できることが必要であり、この条件を満たす限りにおいて、最大速度設定部144は、最大速度を任意に設定してもよい。同様に伝達関数決定部140は、異なる圧縮形式に対して同一の伝達関数を設定してもよい。この場合も、表示画像処理部170が、先読み処理部150により先読み処理されたタイル画像38を、スムーズに切り替えて表示画像を生成できることが必要であり、この条件を満たす限りにおいて、伝達関数決定部140は、伝達関数を任意に設定してもよい。
以上は、画像データの圧縮形式に応じて表示画像の最大速度および伝達関数を設定する例を示したが、圧縮率に応じてこれらを設定してもよい。元画像を圧縮する際、より圧縮率を高くすることで、圧縮データ量をより小さくできるため、デコードに要する時間も短くできる。これを利用して、たとえばJPEG形式の画像フォーマット中のヘッダ情報に、圧縮率を示す情報が含まれている場合、最大速度設定部144が、ヘッダ情報から読み出した圧縮率に応じて表示画像の最大速度を設定し、同様に伝達関数決定部140が、圧縮率に応じて伝達関数を設定してもよい。具体的に、圧縮率が所定値以上であれば、最大速度設定部144が表示画像の最大速度をV1、伝達関数決定部140が伝達関数をガウシアン関数92に設定し、また圧縮率が所定値より小さければ、最大速度設定部144が表示画像の最大速度をV2(またはV3)、伝達関数決定部140が伝達関数をガウシアン関数94(またはガウシアン関数96)に設定してもよい。
信号受付部122は、入力装置20から送信される画像変更要求信号を受け付ける。なお既述したように、本実施例では説明の簡略化のために、入力装置20から画像変更要求信号が入力されることとしているが、信号受付部122は、入力装置20からの入力信号を受け付けると、最大速度設定部144において設定された上下左右方向の最大速度および深さ方向の最大速度を用いてフレームごとに仮想カメラ画像座標(X,Y,SCALE)を決定して、画像変更要求信号を生成してもよい。畳み込み演算部142は、画像変更要求信号と、伝達関数決定部140により決定された伝達関数を畳み込み演算して、画像変更指示信号を生成する。先読み処理部150は、画像変更要求信号を用いて、メインメモリ60からタイル画像38を読み出してデコードする先読み処理を実行する。また表示画像処理部170は、畳み込み演算された結果である画像変更指示信号を用いて表示画像を生成する。
先読み処理部150において、変更量導出部152は、要求される表示画像の変更量を導出する。表示画像の変更量は、1フレームごとの上下左右方向の移動量および深さ方向の移動量である。たとえば信号受付部122が、入力装置20から入力信号を受け付けるが、画像変更要求信号を生成しない場合、変更量導出部152が、入力装置20からの入力信号をもとに、最大速度設定部144において設定された上下左右方向の最大速度および深さ方向の最大速度を用いて、表示画像の変更量を導出してもよい。空間座標決定部154は、図3に示すデータ階層構造における前回フレームの4隅のフレーム座標から、導出された変更量により移動する今回フレームの4隅のフレーム座標を決定する。なお、信号受付部122が画像変更要求信号を生成する場合は、変更量導出部152は、表示画像の変更量を導出する必要はなく、空間座標決定部154が、信号受付部122から画像変更要求信号を受け取り、画像変更要求信号から直接、今回フレームの4隅のフレーム座標を決定する。
判定部156は、決定された4隅のフレーム座標で特定されるフレーム画像を表現するためのタイル画像38が既にデコードされて、バッファメモリ70のバッファ領域72またはバッファ領域74のいずれかに展開されているか判定する。なお判定部156は、変更要求信号で特定される仮想カメラ画像座標(X,Y,SCALE)から、フレーム画像を表現するためのタイル画像38が既にデコードされて、バッファメモリ70のバッファ領域72またはバッファ領域74のいずれかに展開されているか判定してもよい。既にバッファ領域72またはバッファ領域74に存在している場合には、表示するフレーム画像の縮尺率が、タイル画像38の先読み境界位置を超えているか判定する。判定部156は、決定された4隅のフレーム座標の画像を表現するためのタイル画像38がバッファメモリ70に存在しない場合、および要求される縮尺率が先読み境界位置を超えている場合に、画像データ取得部160に対して、必要なタイル画像38の取得を指示する。画像データ取得部160は、指示されたタイル画像38をメインメモリ60から取得し、デコード部162がデコードして、バッファ領域72またはバッファ領域74に保持させる。これにより、表示画像処理部170による表示画像の生成前に、先読み処理部150が必要なタイル画像38をバッファメモリ70に展開することができる。
表示画像処理部170において、変更量導出部172は、畳み込み演算部142で生成された画像変更指示信号をもとに、指示される表示画像の変更量を導出する。画像変更要求信号がフレームごとの仮想カメラ画像座標を特定する情報である場合、画像変更指示信号も、フレームごとの仮想カメラ画像座標を特定する情報となる。既述したように画像変更指示信号は、画像変更要求信号を伝達関数で畳み込み演算して生成された信号であり、伝達関数に応じた遅延を有している。したがって、表示画像処理部170が表示画像を生成する前に、先読み処理部150は、表示画像の生成に用いるタイル画像38の先読み処理を完了している。
変更量導出部172は、表示画像の変更量を、1フレームごとの上下左右方向の移動量および深さ方向の移動量として導出する。なお上記したように信号受付部122が仮想カメラ画像座標(X,Y,SCALE)を特定する画像変更要求信号を生成する場合は、畳み込み演算部142が、仮想カメラ画像座標(X,Y,SCALE)を特定する変更指示信号を生成するため、変更量導出部172は、表示画像の変更量を導出しなくてもよい。この場合は、空間座標決定部174が、画像変更指示信号から直接、今回フレームの4隅のフレーム座標を決定する。なお、変更量導出部172において、表示画像の変更量が、最大速度設定部144において設定された上下左右方向の最大速度および深さ方向の最大速度を用いて入力装置20からの入力信号より算出される場合には、空間座標決定部174は、図3に示すデータ階層構造における前回フレームの4隅のフレーム座標から、導出された変更量により移動する今回フレームの4隅のフレーム座標を決定する。
表示画像生成部176は、バッファメモリ70に保持された画像データから、フレーム座標で特定されるデータを抽出して表示画像を生成し、フレームメモリ90に供給する。なお表示画像生成部176は、テクスチャ画像として表示画像を生成してもよい。以上により、画像処理装置10は、画像データの圧縮形式または圧縮率に応じて先読み処理を実行し、また画像変更速度の最大値を導出することで、表示画像の拡縮処理や、スクロール処理をスムーズに実行できる。
上記した実施例においては、画像データの圧縮形式または圧縮率に応じて表示画像の最大速度および畳み込み演算で用いる伝達関数を決定したが、最大速度および伝達関数は、他のリソース情報をもとに決定されてもよい。たとえばリソース情報特定部134は、バッファメモリ70におけるバッファ領域72、74のメモリサイズを特定する。バッファ領域72、74のメモリサイズは、上下左右方向の変更要求に対する先読み境界を規定するため、メモリサイズが大きければ先読み処理に時間的な余裕ができ、一方でメモリサイズが小さければ先読み処理の時間的な余裕が少なくなる。
したがって最大速度設定部144は、表示画像の変更速度の最大値を、バッファ領域72、74のメモリサイズに応じて設定する。たとえば最大速度設定部144は、バッファ領域72、74のメモリサイズがフレームメモリ90のメモリサイズの2倍未満であれば最大速度をV3、フレームメモリ90のメモリサイズの2倍以上3倍未満であれば最大速度をV2、フレームメモリ90のメモリサイズの3倍以上であれば最大速度をV1(ここでV1>V2>V3)となるように設定してもよい。
このとき伝達関数決定部140は、リソース情報特定部134により特定されたバッファ領域72、74のメモリサイズに応じて、畳み込み演算に用いる伝達関数を決定する。伝達関数として、図9に示す3つのガウシアン関数が用意されている場合、伝達関数決定部140は、バッファ領域72、74のメモリサイズがフレームメモリ90のメモリサイズの2倍未満であればガウシアン関数96を伝達関数として決定し、フレームメモリ90のメモリサイズの2倍以上3倍未満であればガウシアン関数94を伝達関数として決定し、フレームメモリ90のメモリサイズの3倍以上であればガウシアン関数92を伝達関数として決定する。このように伝達関数決定部140は、バッファ領域72、74のメモリサイズが小さい場合には、より遅延時間の長いガウシアン関数を割り当てることで、先読み処理の時間を確保する。
なお、最大速度設定部144は、圧縮形式特定部132で特定された圧縮形式と、リソース情報特定部134で特定されたリソース情報とを用いて、それぞれに基づいた最大速度を導出し、遅い方の最大速度を採用してもよい。同様に伝達関数決定部140は、圧縮形式特定部132で特定された圧縮形式と、リソース情報特定部134で特定されたリソース情報とを用いて、それぞれに基づいた伝達関数を導出し、遅延時間の長い方の伝達関数を採用してもよい。これにより画像処理装置10は、安定した表示画像の処理を保証できる。
以上、本実施例の画像処理システム1では、メインメモリ60が、圧縮階層データのすべてを保持することとしたが、先読み処理により、必要な圧縮階層データだけをメインメモリ60が保持するようにしてもよい。これにより、メインメモリ60のメモリ容量をさらに小さく構成できる。
画像処理の開始前に、リソース情報特定部134は、圧縮階層データを保持するリソースを特定し、圧縮階層データの保持リソースからメインメモリ60への転送速度(バス速度)を特定する。画像処理装置10においては、たとえば圧縮階層データの保持リソースとして、ハードディスクドライブ50、リムーバブル記録媒体、ROMディスクの3種類が想定される。リムーバブル記録媒体は、たとえばフラッシュメモリであり、記録媒体装着部52に装着されて、比較的高速なデータの転送が可能である。またハードディスクドライブ50とROMディスクを駆動するディスクドライブ54のデータ転送速度を比較すると、ハードディスクドライブ50からの転送速度の方が速い。したがって、データの転送速度は、リムーバブル記録媒体、ハードディスクドライブ50、ROMディスクの順で速い。
以上より、圧縮階層データを保持する記憶装置からメインメモリ60に圧縮階層データを逐次読み出す場合には、最大速度設定部144が、表示画像の変更速度の最大値を、圧縮階層データを保持した記憶装置に応じて設定する。表示画像の最大速度は、リムーバブル記録媒体、ハードディスクドライブ50またはROMディスクからの転送速度に応じて設定されてよく、相対的には、リムーバブル記録媒体から圧縮データを読み出す場合に、最も大きい変更速度が割り当てられ、ROMディスクから圧縮データを読み出す場合に、最も小さい変更速度が割り当てられる。
同様に畳み込み演算部142は、伝達関数を、圧縮階層データを保持した記憶装置に応じて設定する。具体的に畳み込み演算部142は、リムーバブル記録媒体から圧縮データを読み出す場合に、遅延時間の最も小さい伝達関数を採用し、ROMディスクから圧縮データを読み出す場合に、遅延時間の最も大きい伝達関数を採用する。
図10は、本実施例における画像処理のフローチャートを示す。まず圧縮形式特定部132が、記憶装置に保持された圧縮画像データの圧縮形式を特定する(S10)。またリソース情報特定部134が、画像処理装置10のリソース情報を特定する(S12)。リソース情報特定部134が特定するリソース情報は、圧縮画像データを保持した記憶装置からメインメモリ60への転送速度や、デコードした画像データを展開するバッファメモリ70のメモリサイズなどを含む。最大速度設定部144は、特定された圧縮形式および/またはリソース情報をもとに、表示画像の変更速度の最大値を決定する(S14)。また伝達関数決定部140は、特定された圧縮形式および/またはリソース情報をもとに、畳み込み演算に用いる伝達関数を決定する(S16)。以上の処理を行った後に、先読み処理部150および表示画像処理部170が、それぞれ画像データの先読み処理および表示画像の生成処理を実行して、画像をディスプレイに表示する(S18)。
以上、本発明を実施例をもとに説明した。この実施例は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。
たとえば最大速度設定部144は、表示画像の縮小方向の速度の最大値を、表示画像の拡大方向の速度の最大値よりも小さく設定してもよい。たとえば画像を拡大表示していく場合、表示画像の解像度が粗くなることを許容すれば、表示画像生成部176がバッファメモリ70に展開された画像データをもとに表示画像を生成できる。一方、画像を縮小表示していく場合、表示画像がバッファメモリ70に展開された画像データを超える場合があるため、先読み処理を確実に実行しておくことが好ましい。そのため、表示画像の縮小方向の最大速度を、拡大方向の最大速度よりも小さく設定しておくことで、縮小方向時の先読み処理を確実に実行できるようにしてもよい。同様に伝達関数決定部140は、表示画像の縮小時の伝達関数の遅延時間を、拡大時の伝達関数の遅延時間よりも大きく設定してもよい。
また階層データを構成する各タイル画像には、最大速度および伝達関数を指定する属性情報が割り当てられてもよい。各タイル画像の属性情報は、階層データとは別に、タイル画像の識別情報に対応づけられてテーブルに保持される。この場合、信号処理部120が、表示画像の生成に用いるタイル画像38を特定する機能を有して構成される。信号処理部120は、タイル画像38を特定すると、テーブルから当該タイル画像38の属性情報を読み出し、属性情報により特定される最大速度および伝達関数を抽出して、それぞれを設定する。これにより、たとえば画像の提供主体が、ある階層において表示画像を緩やかに変化させたい場合には、小さい最大速度の設定情報および遅延時間の大きい伝達関数の設定情報を属性情報に含めることで、画像提供主体の意図に応じた画像表示を実現できる。なお、属性情報は各タイル画像に割り当てられるのではなく、たとえば階層に対して割り当てられてもよい。
また実施例では、画像処理装置10が、ローカルな座標系で定義される1つの階層データを処理する例について説明したが、複数の階層データを取り扱うことも可能である。このとき、複数の階層データを互いに関連付けることで、様々なアプリケーションを実現することが可能となる。
図11は、関連付けられた複数の階層データ28a、28bの先読み処理をするための説明図を示す。アプリケーション例として、階層データ28aは、世界地図の画像データを構成し、階層データ28bは、世界地図に含まれる日本地図の詳細な画像データを構成する。図中、階層データ28aを表現する三角形と階層データ28bを表現する三角形の重複箇所が存在するが、この重複箇所において表示画像を拡大させる(すなわち、画像変更要求信号が矢印方向の画像変更を要求する)場合、切替境界86で、階層データ28aから階層データ28bへの切替が行われ、逆に表示画像を縮小する場合、切替境界86で階層データ28bから階層データ28aへの切替が行われる。
このアプリケーションの初期画像は、メルカトル図法による世界地図の全体を表示装置12のディスプレイに表示するものであり、階層データ28aの画像データにより形成される。ユーザが世界地図に含まれる日本地図の拡大要求を入力装置20から入力し続けると、画像処理装置10は、階層データ28aを利用して日本地図を拡大表示していき、途中で階層データ28bに切り替えて、日本地図の詳細画像を拡大表示していく。表示画像を拡大する際、画像変更要求信号は図中の矢印方向に生成され、階層データ28bの先読み処理は、画像変更要求信号が切替境界86の手前(すなわち図中の切替境界86よりも上方)にある先読み境界(図示せず)をまたいだ時点で行われる。一方、表示画像を縮小する際、画像変更要求信号は図中の矢印とは逆方向に生成され、階層データ28aの先読み処理は、画像変更要求信号が切替境界86の手前(すなわち図中の切替境界86よりも下方)にある先読み境界(図示せず)をまたいだ時点で行われる。
階層データ28aと階層データ28bとの座標系が共通に設定されている場合、すなわち1つのグローバルな座標系で階層データ28aと階層データ28bとが生成されている場合、画像変更要求信号は、仮想カメラ画像座標(X,Y,SCALE)の変更要求信号であるため、座標系が共通であれば、階層データが切り替わったとしても、仮想カメラが連続して移動しているものとして扱うことができる。
図12(a)は、グローバル座標系において、時間t1で階層データが切り替わったときの画像変更指示信号204を示す。階層データ28aから階層データ28b、または階層データ28bから階層データ28aに切り替わった場合であっても、両方の階層データが共通の座標系で定義されていれば、仮想カメラは1つの座標系を移動することになり、畳み込み演算部142により畳み込み演算された結果は、階層データの切り替えにかかわらず、そのまま受け継がれる。
しかしながら、上記アプリケーション例において、階層データ28aと階層データ28bとを共通のグローバル座標系で表現すると、拡大画像の位置精度を維持するための演算量が膨大となる欠点がある。具体的には、世界地図の全体図から日本のある街の交差点を表示させる場合、グローバル座標系では、この交差点を、世界地図を定義する座標で表現しなければならない。そうすると、交差点の位置精度を高くするために、座標値の桁数が非常に大きくなり、演算量が膨大となる。
そこで、本変形例では、階層データ28aと階層データ28bとを、それぞれローカルの異なる座標系で表現する。これにより、グローバル座標系で表現する場合と比較すると、各階層データにおける座標の桁数を少なくでき、演算量を低減できるという利点がある。
図12(b)は、2つのローカル座標系において、時間t1で階層データが切り替わったときの画像変更指示信号206、208を示す。ここでは、表示画像の拡大中、階層データ28aから階層データ28bに切り替える場合を例に説明するが、表示画像の縮小中に階層データ28bから階層データ28aに切り替える場合も同様である。画像変更要求信号200は、図12(a)に示したものと同じである。
画像変更指示信号206は、階層データ28aにおける仮想カメラの移動要求であり、図12(a)に示す時間t1までの画像変更指示信号204と同じである。一方、表示画像の生成に利用するタイル画像を、階層データ28aのものから、別の座標系で定義された階層データ28bのものに切り替えると、仮想カメラ画像座標(X,Y,SCALE)の連続性が途切れる。たとえば畳み込み演算部142は、2つの連続するフレームの仮想カメラ画像座標間の距離が、表示画像の最大速度によるフレーム間の最大距離を超えている場合に、仮想カメラ画像座標の連続性が途切れたことを判定する。この場合、畳み込み演算部142は、時間t1以降の画像変更要求信号200を、階層データ28bに対して新たに生成されたものと判断し、時間t1における画像変更要求信号値を最初の入力値として伝達関数との畳み込み演算を行い、画像変更指示信号208を生成する。
なお、圧縮形式特定部132は、先読み処理されてメインメモリ60に保持された階層データ28bの圧縮形式を予め特定しておく。最大速度設定部144は、圧縮形式特定部132により特定された画像データの圧縮形式に応じて、表示画像を変更する速度の最大値を設定する。また伝達関数決定部140は、圧縮形式特定部132により特定された画像データの圧縮形式に応じて、畳み込み演算に用いる伝達関数を決定する。これらの処理は、階層データ28bを先読み処理したときに実行され、時間t1では、既に完了していることが好ましく、最大速度を用いて、時間t1以降の画像変更要求信号200が生成されてもよい。なお、階層データ28aと階層データ28bとが同じ圧縮形式であれば、階層データ28aに対して決定された最大速度および伝達関数が、階層データ28bに対しても適用されてよく、図12(a)および図12(b)に示す例では、階層データ28a、28bの圧縮形式が同じであることを前提としている。
図12(b)に示す画像変更指示信号208によると、時間t1で、仮想カメラ画像座標の引き継ぎ処理が行われないため、世界地図の全体画像から、たとえば一定速度で拡大していた地図画像が、時間t1で階層データを切り替えたときに一旦拡大が停止し、それからゆっくりと拡大されるように表示される。ユーザは、不連続な表示画像を見ることで、なんらかの理由で画像が切り替わったことを認識する。アプリケーションによっては、不連続性をユーザに見せることが好ましいこともあるが、世界地図から日本のある街の交差点を連続拡大表示で表現するアプリケーションにおいては、連続性が途切れることは好ましくない。
そこで、本変形例では、表示画像生成部176が表示画像の生成に利用するタイル画像を、別の座標系で定義された階層データ28のタイル画像に切り替えるときに、畳み込み演算部142が、2つの階層データの座標系をもとに、接続関係を定義する。具体的に畳み込み演算部142は、切替前の階層データ28aの仮想カメラ画像座標を、切替後の階層データ28bの仮想カメラ画像座標に座標変換して、時間t1以降において、時間t1以前の仮想カメラ画像座標が、あたかも階層データ28bにおける仮想カメラ画像座標であったかのように引き継げるようにする。時間t1以前の階層データ28aにおける仮想カメラ画像座標を、階層データ28bにおける仮想カメラ画像座標に座標変換することで、畳み込み演算部142は、連続した仮想カメラ画像座標として扱うことができ、画像変更要求信号200に対して伝達関数を畳み込み演算することで、図12(a)に示す画像変更指示信号204を生成することができる。すなわち、時間t1より前の画像変更要求信号を、時間t1以後に利用する階層データ28bにおける画像変更要求信号に変換して、変換した画像変更要求信号を利用することで、同一座標系における画像変更指示信号を生成することが可能となる。
たとえば、図9に示すガウシアン関数の例では、最大の遅延フレーム数が、ガウシアン関数96の32フレームであるため、畳み込み演算部142は、時間t1より前の32フレーム分の仮想カメラ画像座標を、座標変換すればよい。これにより、どのガウシアン関数が伝達関数として選択された場合であっても、時間t1より前の仮想カメラ画像座標を、確実に時間t1以降に引き継ぐことが可能となる。
また、座標変換は、図11に示す階層データ28aと階層データ28bの仮想3次元空間上の位置関係を利用して行われる。階層データ28aと階層データ28bとは、それぞれ異なる座標系で表現されているが、図11に示すように、両者は一部において仮想3次元空間上で重なり合っている。そのため、一方の座標は、他方の座標に一義的に変換することが可能であり、たとえば座標変換式を利用するなど、既知の手法を用いることができる。
なお、上記したように、アプリケーションによっては、階層データを切り替える場合に、仮想カメラを連続して移動させない方が好ましいこともある。たとえば階層データ28aがショッピングモール(たとえば複数の店舗が存在し、ただ店舗の扉は閉まっているため店舗内は見えない)の画像データを構成し、階層データ28bが1つの店舗内の商品棚の画像データを構成する場合、店舗の扉が閉じていることで、ショッピングモールと店舗内とは空間的に連続していない。このような場合は、表示画像をあえて不連続にすることが好ましく、したがって階層データを切り替えるときに、図12(b)に示す画像変更指示信号208を生成することが好ましい。そこで畳み込み演算部142は、階層データを切り替える際に、仮想カメラを連続して移動させるか否かを示す属性情報を、2つの階層データに対して保持するようにしてもよい。畳み込み演算部142は、階層データを切り替える際に、この属性情報を参照して、座標変換をするか否かを判定する。
1・・・画像処理システム、10・・・画像処理装置、12・・・表示装置、20・・・入力装置、30・・・第0階層、32・・・第1階層、34・・・第2階層、36・・・第3階層、38・・・タイル画像、44・・・表示処理部、50・・・ハードディスクドライブ、52・・・記録媒体装着部、54・・・ディスクドライブ、60・・・メインメモリ、70・・・バッファメモリ、72・・・バッファ領域、74・・・バッファ領域、90・・・フレームメモリ、100・・・制御部、120・・・信号処理部、122・・・信号受付部、130・・・情報特定部、132・・・圧縮形式特定部、134・・・リソース情報特定部、140・・・伝達関数決定部、142・・・畳み込み演算部、144・・・最大速度設定部、150・・・先読み処理部、152・・・変更量導出部、154・・・空間座標決定部、156・・・判定部、158・・・読出画像決定部、160・・・画像データ取得部、162・・・デコード部、170・・・表示画像処理部、172・・・変更量導出部、174・・・空間座標決定部、176・・・表示画像生成部。

Claims (7)

  1. 画像をディスプレイに表示する画像処理装置であって、
    異なる解像度ごとに少なくとも1つの圧縮したタイル画像を含む画像データを保持する記憶装置と、
    前記記憶装置に保持された画像データの圧縮形式を特定する特定部と、
    特定されたタイル画像の圧縮形式に応じて、伝達関数を決定する伝達関数決定部と、
    ディスプレイに表示されている表示画像の変更要求信号を受け付ける受付部と、
    前記変更要求信号と、決定された伝達関数を畳み込み演算して、変更指示信号を生成する畳み込み演算部と、
    前記変更要求信号を用いて、前記記憶装置からタイル画像を読み出してデコードする先読み処理部と、
    前記変更指示信号を用いて、表示画像を生成する表示画像処理部と、
    を備えることを特徴とする画像処理装置。
  2. 特定された画像データの圧縮形式に応じて、表示画像を変更する速度の最大値を設定する最大速度設定部とをさらに備えることを特徴とする請求項1に記載の画像処理装置。
  3. 前記最大速度設定部は、表示画像の縮小方向の速度の最大値を、拡大方向の速度の最大値よりも小さくすることを特徴とする請求項2に記載の画像処理装置。
  4. 前記伝達関数決定部は、タイル画像の属性情報をもとに、伝達関数を決定することを特徴とする請求項1から3のいずれかに記載の画像処理装置。
  5. 前記記憶装置は、異なる座標系で定義された複数の画像データを保持しており、
    前記表示画像処理部が、表示画像の生成に利用するタイル画像を、別の座標系で定義された画像データのタイル画像に切り替えるときに、前記畳み込み演算部は、切り替え前の変更要求信号を、別の座標系で定義された画像データにおける変更要求信号に変換し、変換した変更要求信号を利用して、変更指示信号を生成することを特徴とする請求項1から4のいずれかに記載の画像処理装置。
  6. コンピュータに、
    記憶装置に保持されており、異なる解像度ごとに少なくとも1つの圧縮したタイル画像を含む画像データの圧縮形式を特定する機能と、
    特定したタイル画像の圧縮形式に応じて、伝達関数を決定する機能と、
    ディスプレイに表示されている表示画像の変更要求信号を受け付ける機能と、
    前記変更要求信号と、決定した伝達関数を畳み込み演算して、変更指示信号を生成する機能と、
    前記変更要求信号を用いて、前記記憶装置からタイル画像を読み出してデコードする機能と、
    前記変更指示信号を用いて、表示画像を生成する機能と、
    を実現させるためのプログラム。
  7. 請求項6に記載のプログラムを記録したコンピュータ読み取り可能な記録媒体。
JP2009136896A 2008-08-12 2009-06-08 画像処理装置 Active JP5215945B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2009136896A JP5215945B2 (ja) 2008-08-12 2009-06-08 画像処理装置
US12/537,316 US8331701B2 (en) 2008-08-12 2009-08-07 Image processing device for displaying an image on a display

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2008207619 2008-08-12
JP2008207619 2008-08-12
JP2009136896A JP5215945B2 (ja) 2008-08-12 2009-06-08 画像処理装置

Publications (2)

Publication Number Publication Date
JP2010067261A true JP2010067261A (ja) 2010-03-25
JP5215945B2 JP5215945B2 (ja) 2013-06-19

Family

ID=41681310

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009136896A Active JP5215945B2 (ja) 2008-08-12 2009-06-08 画像処理装置

Country Status (2)

Country Link
US (1) US8331701B2 (ja)
JP (1) JP5215945B2 (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012053748A (ja) * 2010-09-02 2012-03-15 Nikon Corp 電子機器及びデータ送信方法
WO2013042292A1 (ja) * 2011-09-22 2013-03-28 株式会社ソニー・コンピュータエンタテインメント 画像処理装置、画像処理方法、および画像ファイルのデータ構造
JP2014222272A (ja) * 2013-05-13 2014-11-27 株式会社ジャパンディスプレイ 表示装置および表示装置の駆動方法
KR20230030974A (ko) * 2021-08-26 2023-03-07 현대제철 주식회사 중공 코일 제조용 중간 부재 및 중공 코일 제조 방법
JP7469762B2 (ja) 2021-11-08 2024-04-17 スリーアイ インコーポレイティド イメージ出力方法及び装置

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5215945B2 (ja) * 2008-08-12 2013-06-19 株式会社ソニー・コンピュータエンタテインメント 画像処理装置
CN102667864B (zh) * 2009-10-26 2015-06-03 索尼计算机娱乐公司 图像文件生成装置、图像处理装置、图像文件生成方法、图像处理方法
JP2011112958A (ja) * 2009-11-27 2011-06-09 Olympus Corp 画像表示方法及びその装置、並びに画像表示プログラム、記録媒体
JP2011139276A (ja) * 2009-12-28 2011-07-14 Sony Computer Entertainment Inc 画像処理装置および画像処理方法
US8411970B2 (en) * 2010-03-16 2013-04-02 Pixia Corp. Method and system for determining statistical data for image pixels having a higher bit depth per band
JP5202584B2 (ja) * 2010-06-24 2013-06-05 株式会社ソニー・コンピュータエンタテインメント 画像処理装置、コンテンツ作成支援装置、画像処理方法、コンテンツ作成支援方法、および画像ファイルのデータ構造
US9007432B2 (en) * 2010-12-16 2015-04-14 The Massachusetts Institute Of Technology Imaging systems and methods for immersive surveillance
US9036001B2 (en) 2010-12-16 2015-05-19 Massachusetts Institute Of Technology Imaging system for immersive surveillance
US9641823B2 (en) * 2011-01-31 2017-05-02 Hewlett-Packard Development Company, L.P. Embedded light field display architecture to process and display three-dimensional light field data
US20130016098A1 (en) * 2011-07-17 2013-01-17 Raster Labs, Inc. Method for creating a 3-dimensional model from a 2-dimensional source image
US9324299B2 (en) * 2011-09-09 2016-04-26 Microsoft Technology Licensing, Llc. Atlasing and virtual surfaces
JP5548671B2 (ja) * 2011-12-27 2014-07-16 株式会社ソニー・コンピュータエンタテインメント 画像処理システム、画像提供サーバ、情報処理装置、および画像処理方法
JP6213817B2 (ja) * 2012-09-03 2017-10-18 パナソニックIpマネジメント株式会社 画像送信が可能な電子機器
US9781356B1 (en) * 2013-12-16 2017-10-03 Amazon Technologies, Inc. Panoramic video viewer

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001034319A (ja) * 1999-07-26 2001-02-09 Mitsubishi Electric Corp 軌跡制御装置
JP2005202327A (ja) * 2004-01-19 2005-07-28 Canon Inc 画像表示装置および画像表示方法

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2687034B1 (fr) * 1992-02-04 1994-04-01 Isaac Azancot Procede et appareil de traitement-enregistrement et de reconstitution d'un signal video analogique haute resolution a cadence video normalisee destine aux procedures d'angiographie et d'angioplastie cardio vasculaire en temps reel.
IL107657A (en) * 1993-11-18 1997-01-10 Scitex Corp Ltd Method for transferring documents
US5835637A (en) * 1995-03-20 1998-11-10 Eastman Kodak Company Method and apparatus for sharpening an image by scaling spatial residual components during image reconstruction
SG64486A1 (en) 1997-03-27 1999-04-27 Sony Corp Method and apparatus for information processing computer readable medium and authoring system
CA2298738A1 (en) * 1997-07-31 1999-02-11 University Of California, Berkeley Apparatus and methods for image and signal processing
EP1119186A3 (en) * 2000-01-19 2002-07-31 Xerox Corporation Method for generating anti-aliased text and line graphics in compressed document images
JP4086520B2 (ja) * 2001-03-19 2008-05-14 株式会社リコー 多値画像の符号化及び復号化方法並びに装置
JP3898091B2 (ja) * 2002-06-03 2007-03-28 Necディスプレイソリューションズ株式会社 画像表示装置および画像表示装置の制御方法
JP5215945B2 (ja) * 2008-08-12 2013-06-19 株式会社ソニー・コンピュータエンタテインメント 画像処理装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001034319A (ja) * 1999-07-26 2001-02-09 Mitsubishi Electric Corp 軌跡制御装置
JP2005202327A (ja) * 2004-01-19 2005-07-28 Canon Inc 画像表示装置および画像表示方法

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012053748A (ja) * 2010-09-02 2012-03-15 Nikon Corp 電子機器及びデータ送信方法
WO2013042292A1 (ja) * 2011-09-22 2013-03-28 株式会社ソニー・コンピュータエンタテインメント 画像処理装置、画像処理方法、および画像ファイルのデータ構造
JP2013069173A (ja) * 2011-09-22 2013-04-18 Sony Computer Entertainment Inc 画像処理装置、画像処理方法、および画像ファイルのデータ構造
US9697638B2 (en) 2011-09-22 2017-07-04 Sony Corporation Image processing apparatus, image processing method, and data structure of image file
JP2014222272A (ja) * 2013-05-13 2014-11-27 株式会社ジャパンディスプレイ 表示装置および表示装置の駆動方法
KR20230030974A (ko) * 2021-08-26 2023-03-07 현대제철 주식회사 중공 코일 제조용 중간 부재 및 중공 코일 제조 방법
JP7469762B2 (ja) 2021-11-08 2024-04-17 スリーアイ インコーポレイティド イメージ出力方法及び装置

Also Published As

Publication number Publication date
US20100040297A1 (en) 2010-02-18
JP5215945B2 (ja) 2013-06-19
US8331701B2 (en) 2012-12-11

Similar Documents

Publication Publication Date Title
JP5215945B2 (ja) 画像処理装置
CN109600666B (zh) 游戏场景中的视频播放方法、装置、介质以及电子设备
US9373308B2 (en) Multi-viewport display of multi-resolution hierarchical image
CN113661471B (zh) 混合渲染
US9715718B2 (en) Image processing device, image processing system, image processing method, and computer program for effecting changes in a selected display region
EP1282109A2 (en) Method and apparatus using a two-dimensional circular data buffer for scrollable image display
WO2010116578A1 (ja) 情報処理装置および情報処理方法
JP2012014640A (ja) 画面出力装置、画面出力システム、および画面出力方法
JP5662267B2 (ja) 画像表示システム、情報処理装置、サーバ、および画像処理方法
CN112486606A (zh) 一种基于Android系统的云桌面显示优化方法及系统
JP2004213641A (ja) 画像処理装置、画像処理方法、情報処理装置、情報処理システム、半導体デバイス、コンピュータプログラム
JP2011090663A (ja) 画像処理装置及びプログラム
WO2011077550A1 (ja) 画面中継装置
JP5265306B2 (ja) 画像処理装置
US9819958B2 (en) Drawing system, information processing apparatus and drawing control method which switch drawing from still image data to video image data
JP5399788B2 (ja) 情報処理装置
JP2019028652A (ja) 表示制御装置および表示制御方法
JP5520469B2 (ja) 画像処理装置および画像処理方法
JP5292149B2 (ja) 情報処理装置および情報処理方法
JP5920673B2 (ja) 画像処理装置および画像処理方法
JP2010204782A (ja) 画像処理装置、画像処理方法およびデータ構造
JP5520471B2 (ja) 画像処理装置および画像処理方法
JP5701964B2 (ja) 画面中継装置
JPH09297854A (ja) グラフィック描画装置
JP5524469B2 (ja) 画像処理装置および画像処理方法

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20101125

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20110128

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120319

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130213

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20130219

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130301

R150 Certificate of patent or registration of utility model

Ref document number: 5215945

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20160308

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250