画像処理装置
【課題】画像種別に応じて、適切に画像データを処理する技術を提供する。
【解決手段】表示対象決定部104が表示対象となる画像データを決定すると、再生制御部82が、表示対象となる画像データの種別を特定する。再生制御部82は、特定した種別に応じて、表示バッファ72の領域を分割する。画像表示制御部90が予備バッファ74に記憶された画像データを用いて画像を表示装置12に表示している間に、デコード実行部84は、画像データをデコードして、表示バッファ72の分割領域に記憶する。
【解決手段】表示対象決定部104が表示対象となる画像データを決定すると、再生制御部82が、表示対象となる画像データの種別を特定する。再生制御部82は、特定した種別に応じて、表示バッファ72の領域を分割する。画像表示制御部90が予備バッファ74に記憶された画像データを用いて画像を表示装置12に表示している間に、デコード実行部84は、画像データをデコードして、表示バッファ72の分割領域に記憶する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像を処理する技術に関する。
【背景技術】
【0002】
ユーザによる表示画像を変更する切替表示指示に応じて、ハードディスクドライブなどの記憶装置に保存された複数の写真画像をディスプレイに次々に切り替えて表示させるビューワが存在する。デコード処理などの画像処理が、画像表示に追いつかなくなる状況を回避するために、表示対象となる可能性の高さに応じた順序で、画像データを先読みして処理する技術が提案されている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】US2009/0295977号公開公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
デジタルカメラの機能および性能の向上に伴って、互いに関連をもつ複数の画像データをまとめて記録するフォーマットが規定されている。カメラ映像機器工業会(Camera & Imaging Products Association)により策定された規格(standard)は、複数の画像データを記録するためのデータ構造を定義し、このデータ構造を用いた「マルチピクチャフォーマット(Multi-Picture Format)」と呼ばれるフォーマットを規定している。
【0005】
マルチピクチャフォーマットでは、画像の種別として「マルチビュー」が定義されている。マルチビューは細分として、「パノラマ」、「立体視」、「マルチアングル」の種別を有し、細分化された各種別はビューワにおける表示形式を指定する。この画像種別は、デジタルカメラの撮影時に、ユーザが撮影モードを設定することで決定され、撮影された複数の画像データは、デジタルカメラの内部回路により、画像種別コードを含めた1つの画像ファイルとしてまとめられる。デジタルカメラにより多様な種別の写真画像が生成されることに伴い、ビューワには、画像データを適切に再生する機能を搭載することが求められている。
【0006】
そこで本発明は、画像種別に応じて、適切に画像データを処理する技術を提供することを目的とする。
【課題を解決するための手段】
【0007】
上記課題を解決するために、本発明のある態様の画像処理装置は、画像データを復号する再生処理部と、復号された画像データを記憶する表示バッファと、表示バッファに記憶された画像データをディスプレイに表示させる画像表示制御部とを備え、再生処理部は、表示対象となる画像データの種別に応じて、表示バッファの領域を分割して、分割した領域に復号した画像データを記憶させる。
【0008】
なお、以上の構成要素の任意の組合せ、本発明の表現を方法、装置、システム、記録媒体、コンピュータプログラムなどの間で変換したものもまた、本発明の態様として有効である。
【発明の効果】
【0009】
本発明の画像処理技術によると、適切に画像データを処理する技術を提供することが可能となる。
【図面の簡単な説明】
【0010】
【図1】本発明の実施例にかかる画像処理システムの使用環境を示す図である。
【図2】入力装置の外観構成を示す図である。
【図3】画像処理装置の機能ブロックを示す図である。
【図4】MPフォーマットの基本構造を示す図である。
【図5】制御部および表示処理部の再生処理に関する機能ブロックを示す図である。
【図6】表示装置に表示されるメニュー画面の一例を示す図である。
【図7】(a)は、バッファメモリの構成を示す図であり、(b)はバッファメモリの使用状況の例を示す図である。
【図8】(a)および(b)は、バッファメモリの使用状況の例を示す図である。
【図9】デコード中にディスプレイに表示される代表画像を示す図である。
【図10】デコード完了後にディスプレイに表示される代表画像を示す図である。
【図11】画像再生処理のフローチャートを示す図である。
【発明を実施するための形態】
【0011】
図1は、本発明の実施例にかかる画像処理システム1の使用環境を示す。画像処理システム1は、ユーザが操作する入力装置20と、画像処理ソフトウェアを実行する画像処理装置10と、画像処理装置10による処理結果を出力する表示装置12とを備える。表示装置12は、画像を出力するディスプレイおよび音声を出力するスピーカを有するテレビであってよく、またコンピュータディスプレイであってもよい。表示装置12は、画像処理装置10に有線ケーブルで接続されてよく、また無線LAN(Local Area Network)により無線接続されてもよい。なお画像処理装置10、入力装置20および表示装置12は、一体に形成されて、画像処理機能を搭載した携帯端末装置として構成されてもよい。
【0012】
画像処理システム1において、画像処理装置10は、ケーブル14を介してパーソナルコンピュータなどの外部機器と接続し、外部機器から画像データを取得できる。また画像処理装置10はUSB(Universal Serial Bus)端子を有し、デジタルカメラとUSBケーブルで接続して、デジタルカメラから画像データを取得できる。また画像処理装置10はメディアドライブを有し、ROM媒体から画像データを取得してもよく、ネットワーク経由で外部サーバなどから画像データを取得してもよい。
【0013】
画像処理装置10は、たとえばゲーム装置であって、画像処理用のアプリケーションプログラムをロードすることで画像処理機能を実現する。なお画像処理装置10は、パーソナルコンピュータであってもよく、画像処理用のアプリケーションプログラムをロードすることで画像処理機能を実現してもよい。
【0014】
図2は、入力装置20の外観構成を示す。入力装置20は、その筐体表面において、ユーザが操作可能な操作手段として、十字キー21、アナログスティック27a、27bと、4種の操作ボタン26を備える。4種の操作ボタン26は、○ボタン22、×ボタン23、□ボタン24および△ボタン25から構成される。また入力装置20の筐体背面には、左側にL1ボタン29a、右側にR1ボタン29bが設けられている。ユーザは、左グリップ28aを左手で把持し、右グリップ28bを右手で把持して、各操作手段を操作する。
【0015】
入力装置20は、ユーザにより入力された操作信号を画像処理装置10に伝送する機能をもち、本実施例では画像処理装置10との間で無線通信可能に構成される。入力装置20と画像処理装置10は、Bluetooth(ブルートゥース)(登録商標)プロトコルやIEEE802.11プロトコルなどを用いて無線接続を確立してもよい。なお入力装置20は、画像処理装置10とケーブルを介して接続して、ユーザにより入力された操作信号を画像処理装置10に伝送してもよい。
【0016】
図3は、画像処理装置10の機能ブロック図を示す。画像処理装置10は、無線インタフェース40、スイッチ42、表示処理部44、ハードディスクドライブ50、記録媒体装着部52、ディスクドライブ54、メインメモリ60、バッファメモリ70および制御部100を有して構成される。表示処理部44は、表示装置12のディスプレイに表示するデータをバッファするフレームメモリを有する。
【0017】
スイッチ42は、イーサネットスイッチ(イーサネットは登録商標)であって、外部の機器と有線または無線で接続して、データの送受信を行うデバイスである。スイッチ42は無線インタフェース40に接続し、無線インタフェース40は、所定の無線通信プロトコルで入力装置20と接続する。入力装置20においてユーザから入力された操作信号は、無線インタフェース40、スイッチ42を経由して、制御部100に供給される。
【0018】
またスイッチ42は、ケーブル14を介して外部機器に接続し、外部機器から、複数の画像ファイルを取得する。複数の画像ファイルは、マルチピクチャフォーマット(以下、「MPフォーマット」と呼ぶ)で規定された画像ファイル(以下、「MPファイル」とも呼ぶ)であってよい。画像ファイルは、複数の画像データを関連付けたものを含み、複数の画像データを関連付けたMPファイルとしては、「マルチビュー」の画像種別が定義されている。なお、複数の画像データの関連付けは、複数の画像データ間の関連情報を別ファイルで記述することで行われてもよい。また、個々の画像データのファイル名を所定のルールで生成して、同一フォルダに格納することで、複数の画像データの関連付けがなされてもよい。このように、複数の画像データの関連付けは、様々な手法によって行われてよいが、以下では、関連付けがMPファイルによりなされている場合を例に説明する。
【0019】
ハードディスクドライブ50は、データを記憶する補助記憶装置として機能する。スイッチ42を介して受信されたMPファイルは、ハードディスクドライブ50に格納される。表示処理の際、ハードディスクドライブ50に格納されたMPファイルは、デコード処理されて、バッファメモリ70に記憶される。
【0020】
記録媒体装着部52は、メモリカードなどのリムーバブル記録媒体が装着されると、リムーバブル記録媒体からデータを読み出す。ディスクドライブ54は、読出専用のROMディスクが装着されると、ROMディスクを駆動して認識し、データを読み出す。ROMディスクは、光ディスクや光磁気ディスクなどであってよい。MPファイルは、リムーバブル記録媒体またはROMディスクに記録されていて、記録媒体装着部52またはディスクドライブ54からハードディスクドライブ50にインストールされてもよく、また表示処理の実行時にデコード処理されてバッファメモリ70に記憶されてもよい。
【0021】
制御部100は、マルチコアCPUを備え、1つのCPUの中に1つの汎用的なプロセッサコアと、複数のシンプルなプロセッサコアを有する。汎用プロセッサコアはPPU(Power Processing Unit)と呼ばれ、残りのプロセッサコアはSPU(Synergistic-Processing Unit)と呼ばれる。
【0022】
制御部100は、メインメモリ60およびバッファメモリ70に接続するメモリコントローラを備える。PPUはレジスタを有し、演算実行主体としてメインプロセッサを備えて、実行するアプリケーションにおける基本処理単位としてのタスクを各SPUに効率的に割り当てる。なお、PPU自身がタスクを実行してもよい。SPUはレジスタを有し、演算実行主体としてのサブプロセッサとローカルな記憶領域としてのローカルメモリを備える。ローカルメモリは、バッファメモリ70として使用されてもよい。メインメモリ60およびバッファメモリ70はRAM(ランダムアクセスメモリ)として構成される。SPUは制御ユニットとして専用のDMA(Direct Memory Access)コントローラをもち、メインメモリ60とバッファメモリ70の間のデータ転送を高速に行うことができ、また表示処理部44におけるフレームメモリとバッファメモリ70の間で高速なデータ転送を実現できる。本実施例の制御部100は、複数のSPUを並列動作させることで、高速な画像処理機能を実現する。表示処理部44は、表示装置12に接続されて、ユーザからの要求に応じた画像処理結果を出力する。
【0023】
図4は、MPフォーマットの基本構造を示す。このMPフォーマットは、複数の画像データを関連づけた構造を示しており、MPファイルは、先頭画像に続いて、単一または複数の個別画像を記録することができる。図4には、先頭画像(個別画像(1))に続く画像として、1つの個別画像(2)のみが示されているが、複数の個別画像が、先頭画像に続けて記録されていてもよい。先頭画像およびそれに続く個別画像は、原則として、Exif付属情報と、MPフォーマット付属情報を有している。
【0024】
(Exif付属情報)
Exif(Exchangeable Image File Format)は、画像ファイルを記録するためのフォーマットであり、画像データとあわせて、撮影時の様々な付属情報を画像ファイルに含めることができる。Exif付属情報には、撮影日時やカメラ機種名、シャッタースピード、絞り値の設定といった撮影に関する情報と、撮影した画像データを正しく読み取るための圧縮モード、色空間、画素数などの情報が含まれる。また、Exif付属情報には、撮影した画像のサムネイル画像も含まれる。
【0025】
(MPフォーマット付属情報)
先頭画像のMPフォーマット付属情報には、MPヘッダ、MPインデックス、MP個別情報が含まれる。MPヘッダは、MPインデックスへのオフセットを記録する。
また先頭画像以外のMPフォーマット付属情報には、MPヘッダ、MP個別情報が含まれる。MPヘッダは、MP個別情報へのオフセットを記録する。
【0026】
(1)MPインデックス
MPインデックスは、先頭画像にのみ含まれる。MPインデックスは、少なくとも以下のインデックス情報を含んで構成される。
a)記録画像数
MPファイル中に含まれる個別画像の数を示す。本実施例において、「マルチアングル」画像ファイルには、最大で15個の個別画像が含まれ、「立体視」画像ファイルには、左目用、右目用の2個の個別画像が含まれる。
b)MPエントリ
個別画像種別管理情報、個別画像サイズ、個別画像データオフセット、従属画像エントリ番号からなるデータ群を示す。このうち、個別画像種別管理情報は、少なくとも以下の管理情報を含んで構成される。
b−1)代表画像フラグ
個別画像が代表画像の場合、1に設定され、代表画像でない場合、0に設定される。1つのMPファイル内で、代表画像フラグが1である個別画像の数は2以上であってはならない。代表画像は、MPファイル内の全ての個別画像を代表する。
b−2)種別コード
個別画像のMP種別を示す。MPフォーマットでは、複数の異なる視点から撮影したマルチビュー画像が定義されている。マルチビュー個別画像の細分(種別)として、「パノラマ」、「立体視」、「マルチアングル」が定義されている。これらの種別を示す、「パノラマ」、「立体視」、「マルチアングル」のそれぞれに種別コードが設定されている。撮影時、ユーザが撮影モードを選択することで、MP種別が決定され、種別コードがインデックス情報として付加される。
(2)MP個別情報
MP個別情報は、撮影モードに応じた情報を含む。「パノラマ」モードで撮影された場合には、複数の個別画像を1枚のパノラマ画像にするときの配置情報や、オーバーラップさせる2つの連続画像の幅情報が含まれる。また、「立体視」モードで撮影された場合には、基準視点に対する輻輳角情報や、基準視点に対する基線長情報が含まれる。また、「マルチアングル」モードで撮影された場合には、水平軸方向の距離、鉛直軸方向の距離、視準軸方向の距離、および鉛直軸回りの回転運動の角度(ヨー角)、水平軸回りの回転運動の角度(ピッチ角)、視準軸回りの回転運動の角度(ロール角)の情報が含まれる。
【0027】
以下、画像ファイルの再生処理について説明する。
図5は、制御部100および表示処理部44の再生処理に関する機能ブロックを示す。画像処理装置10は、入力受付部102、表示対象決定部104、画像データ読出部106、再生処理部80、バッファメモリ70、画像表示制御部90およびハードディスクドライブ50を備える。再生処理部80は、再生制御部82およびデコード実行部84を有し、バッファメモリ70は、表示バッファ72および予備バッファ74を有する。画像処理装置10における再生処理機能は、画像処理装置10にインストールされた画像処理アプリケーション(以下、「画像ビューワ」と呼ぶ)により実現される。
【0028】
図5において、さまざまな処理を行う機能ブロックとして記載される各要素は、ハードウェア的には、CPU(Central Processing Unit)、メモリ、その他のLSIで構成することができ、ソフトウェア的には、メモリにロードされたプログラムなどによって実現される。既述したように、制御部100には1つのPPUと複数のSPUとが設けられており、PPUおよびSPUがそれぞれ単独または協同して、各機能ブロックを構成できる。したがって、これらの機能ブロックがハードウェアのみ、ソフトウェアのみ、またはそれらの組合せによっていろいろな形で実現できることは当業者には理解されるところであり、いずれかに限定されるものではない。
【0029】
ハードディスクドライブ50は、関連付けられた複数の画像データを記憶する記憶部である。なお本実施例の画像ビューワは、ハードディスクドライブ50に格納された写真画像だけでなく、外部の記録媒体に記録されている写真画像も再生できる。また、画像ビューワは、複数の画像データが関連づけられたMPファイルを再生する機能を有するが、JPEGやGIFなどの通常フォーマットで圧縮された一枚の画像データを再生する機能も当然に有する。以下、画像ビューワが、ハードディスクドライブ50に格納されている画像データを再生する場合について説明する。以下、MPファイルや、JPEGやGIFなどで圧縮されたファイルをまとめて、単に画像ファイルと呼ぶこともある。
【0030】
画像処理装置10において、システムソフトウェアは、画像ファイルをハードディスクドライブ50にインストールする際には、画像ファイルに含まれる付属情報を参照してファイルチェックを行う。画像ファイルが正常であれば、システムソフトウェアは、ファイル形式などの属性情報を抽出して、ハードディスクドライブ50に記憶する。インストール時、システムソフトウェアは、画像データを縮小して、サムネイル画像を生成してもよい。
【0031】
たとえば画像ファイルがMPファイルである場合には、システムソフトウェアは、付属情報の少なくとも一部を抽出して、属性情報としてハードディスクドライブ50に記憶する。抽出される付属情報には、サムネイル画像など、メニュー画面に表示されるデータが含まれる。またシステムソフトウェアは、MPファイルの付属情報から、MPファイルの表示形式を特定し、属性情報としてハードディスクドライブ50に記憶する。図4に関して説明したように、MPインデックスには、個別画像のMP種別を示す種別コードが含まれている。システムソフトウェアは、種別コードを参照して、MPファイルの表示形式を特定する。たとえば、種別コードが「マルチアングル」の画像種別を示す場合、システムソフトウェアは、MPファイルの表示形式をマルチアングルと特定し、種別コードが「立体視」の画像種別を示す場合、システムソフトウェアは、MPファイルの表示形式を立体視と特定する。再生モードにおいて、「マルチアングル」の表示形式では、ユーザによる切替表示指示に応じて、複数の方向から撮影された画像が切り替えて表示され、「立体視」の表示形式では、右目用の画像と左目用の画像とが表示される。このようにシステムソフトウェアは、MPファイルに記録されている種別コードに応じて、MPファイルの表示形式を特定する。なお、上記したように、種別コードと表示形式とを一対一に対応させてもよいが、たとえば画像ファイルの種別コードが「立体視」であっても、その画像ファイルに3枚以上の画像が含まれる場合には、システムソフトウェアが、その画像ファイルの表示形式を「マルチアングル」として特定してもよい。以下、「画像データの種別」は、表示形式を意味する用語として用いる。
【0032】
図6は、表示装置12に表示されるメニュー画面の一例を示す。本実施例の画像処理装置10では、システムソフトウェアがメニュー画面を生成する。横方向に配列された複数のフォルダ画像のうち、フォルダ画像200は、写真コンテンツのフォルダを示す。縦方向には、アイコン画像202、204、206が配列される。ユーザは、入力装置20を操作して所望のアイコン画像をフォーカス領域の位置までスクロールさせて動かし、入力装置20の所定のボタンを押下することで、そのアイコン画像に対応付けられている処理を実行させることができる。図6の例では、写真コンテンツのアイコン画像202がフォーカス領域に配置され、ユーザが入力装置20の○ボタン22を押下すると再生指示が生成され、画像ビューワが起動される。なお、図6に示すメニュー画面には、画像データを記録した記録媒体のアイコン画像を示していないが、フォトアイコン画像の直下に、記録媒体のアイコン画像が表示され、媒体アイコン画像の直下または右方に、アイコン画像202、204、206が配列されてもよい。
【0033】
システムソフトウェアは、画像ファイルにサムネイル画像が含まれている場合には、そのサムネイル画像を用いて、アイコン画像を生成する。なお、画像ファイルにサムネイル画像が含まれていない場合には、画像データを縮小して、アイコン画像を生成する。MPファイルについては、システムソフトウェアは、ハードディスクドライブ50から属性情報を読み出して、代表画像フラグが1に設定されている個別画像のサムネイル画像を特定し、アイコン画像を生成する。
【0034】
図6に示すメニュー画面において、ユーザが入力装置20の所定のボタンを押下すると、画像ファイルの再生指示が形成されて画像ビューワが起動される。これにより、フォーカス領域に配置されたアイコン画像202で特定される画像ファイルの再生処理が開始される。
【0035】
本実施例において、ハードディスクドライブ50に記憶される複数の画像ファイルには、画像ビューワによる表示順序が予め設定されている。この表示順序は、ハードディスクドライブ50において各画像ファイルが記憶された順序であってもよく、また各画像ファイルの生成日時(撮影日時)にしたがった順序であってもよい。画像ビューワが起動され、表示装置12に画像が表示されると、ユーザは、入力装置20の筐体背面に設けられたL1ボタン29aまたはR1ボタン29bを押下することで、表示対象となる画像ファイルを切り替えることができる。ある画像ファイルがデコードされて表示装置12に表示されている場合、ユーザがL1ボタン29aを押下すると、一つ前の画像ファイルがデコードされて表示装置12に表示され、一方でR1ボタン29bを押下すると、一つ先の画像ファイルがデコードされて表示装置12に表示される。このように画像処理装置10において、ユーザによるL1ボタン29aボタンの操作は、所定の順序が設定された画像ファイル列に対して逆方向表示指示を形成し、一方で、ユーザによるR1ボタン29bの操作は、画像ファイル列に対して順方向表示指示を形成する。以下、表示画像を切り替える指示を、「切替表示指示」と呼ぶ。
【0036】
入力受付部102が、図6に示すメニュー画面において再生指示を受け付けると、表示対象決定部104が、表示対象となる画像ファイルを決定する。表示対象決定部104は、アイコン画像202で特定される画像ファイルを表示対象として決定し、画像データ読出部106は、ハードディスクドライブ50から、表示対象となる画像ファイルおよびその属性情報を読み出して、再生処理部80に供給する。なお、図5においては、画像データ読出部106が、再生処理部80に画像ファイル等を直接供給している様子が示されているが、実際には、画像データ読出部106は、ハードディスクドライブ50から読み出した画像ファイル等を一旦メインメモリ60に記憶し、再生処理部80が、メインメモリ60に読み出された画像ファイル等を取得する構成となっている。
【0037】
表示順序が定められた画像ファイル列において、表示対象となる画像ファイルの位置(順序)がpであるとし、この画像ファイルをI(p)で表現する。表示対象決定部104はI(p)を特定すると、画像データ読出部106に通知する。この通知を受けると、画像データ読出部106は、p番目の画像ファイルI(p)だけでなく、その前後の所定の数の画像ファイルを、先読み対象として選択する。例えば所定の数が2であれば、画像データ読出部106は、I(p−2)、I(p−1)、I(p)、I(p+1)、I(p+2)の5つの画像ファイルを読み出し、再生処理部80に供給する。前後の画像ファイルを先読みするのは、ユーザによる切替表示指示の前に、前後の画像ファイルを予め復号(デコード)しておき、その後のユーザによる切替表示指示に対してリアルタイムで画像を表示できるようにするためである。
【0038】
再生処理部80は、画像ファイルを取得し、画像データを復号する機能を有する。再生処理部80は、バッファメモリ70を利用して、画像データの種別に応じた効率的なデコード処理を実行する。
【0039】
図7(a)は、バッファメモリ70の構成を示す。バッファメモリ70は、表示バッファ72および予備バッファ74から構成される。表示バッファ72および予備バッファ74は、それぞれ32Mバイトの容量を有する。本実施例において、表示バッファ72および予備バッファ74は、再生処理部80によりデコードされた画像データを記憶する。表示バッファ72は、1つの画像ファイルをデコードした画像データを記憶する。また予備バッファ74は、原則として、先読みされた画像データをデコードした画像データを記憶する。なお表示バッファ72と予備バッファ74は、同じ記憶容量を有してなくてもよく、表示バッファ72の記憶容量の方が大きくてもよい。
【0040】
本実施例の画像処理装置10において、ユーザが入力装置20を操作して、切替表示指示が生成されると、画像表示制御部90は、既にデコードされている画像データを予備バッファ74から読み出して表示装置12に表示し、再生処理部80が、表示対象となる画像データをデコードして表示バッファ72に格納した時点で、画像表示制御部90が、画像データを表示バッファ72から読み出して表示装置12に表示させるようにする。
【0041】
再生処理部80において、デコード実行部84は、画像データ読出部106により読み出された画像データをデコードし、再生制御部82は、デコード実行部84による復号処理を制御する。また再生制御部82は、バッファメモリ70における各バッファの分割処理を実行する。具体的に再生制御部82は、予備バッファ74の記憶領域を、所定の分割数で分割し、表示バッファ72の記憶領域を、表示対象となる画像データの種別に応じた分割数で分割する。分割数は、表示対象となる画像ファイルに含まれる画像データの数以上に設定される。たとえば、マルチアングル画像ファイルや立体視画像ファイルなど、1つの画像ファイルが複数の画像データを含む場合、再生制御部82は、デコード実行部84によりデコードされた複数の画像データのそれぞれを、表示バッファ72の分割した記憶領域に記憶させる。再生制御部82は、画像データの種別を、ハードディスクドライブ50に記憶されている属性情報から特定してもよいし、画像ファイルに含まれる属性情報から特定してもよい。再生制御部82は、表示バッファ72の記憶領域の分割数を、表示対象となる画像ファイルに含まれる画像データの数以上とすることで、画像ファイルに含まれる画像データのデコード結果の全てを、表示バッファ72に記憶させることが可能となる。これにより、画像表示制御部90は、表示バッファ72のみを用いて、1つの画像ファイルに含まれる画像を表示装置12に表示させることができるようになる。
【0042】
本実施例において、画像データの種別は、MPフォーマットにおける「マルチアングル」、「立体視」、「パノラマ」と、一枚の画像データを圧縮するJPEGやGIFなどの「通常フォーマット」を含む。
【0043】
図7(b)は、バッファメモリ70の使用状況の一例を示す。本実施例において、予備バッファ74は、その記憶領域を8分割されて、4Mバイトの領域を8つ作成される。この分割処理は、再生制御部82により実行される。したがって、予備バッファ74は、最大で8つの画像ファイルに含まれる画像データのデコード結果を記憶することができる。なお、バッファメモリ70において、予備バッファ74の分割数は8個に固定されるが、表示バッファ72の分割数は、以下に例示するように、表示対象となる画像ファイルの種別によって定められる。なお、本実施例において、分割数は、分割処理により区分けされる記憶領域の数を示し、再生制御部82が表示バッファ72を分割しない場合、分割数は1となる。
【0044】
図7(b)に示す表示バッファ72の分割数は1である。再生制御部82は、表示対象となる画像データの種別が「パノラマ」または「通常フォーマット」である場合、表示バッファ72の領域を1分割して(1分割とは、分割しないことを示す)、表示バッファ72に、デコード実行部84で復号した画像データを記憶させる。
【0045】
表示対象決定部104が表示対象となる画像データを決定し、再生制御部82に通知すると、再生制御部82は、予備バッファ74にデコード済みの画像データが記憶されていなければ、デコード実行部84に対して、予備バッファ74用に画像データをデコードするように指示する。上記したように、予備バッファ74の分割領域は4Mバイトであり、32Mバイトの表示バッファ72に画像データをデコードするよりも迅速な処理ができる。したがって、再生制御部82は、まず予備バッファ74の分割領域に合わせたサイズで画像データをデコードするようにデコード実行部84に指示する。画像表示制御部90は、予備バッファ74の分割領域に、表示対象となる画像データがデコードされて記憶されると、その画像データを読み出して表示装置12に表示する。なお、予備バッファ74にデコード済みの画像データが既に記憶されている場合、画像表示制御部90は、デコード済みの画像データを予備バッファ74から読み出して、表示装置12に表示する。
【0046】
このように画像を迅速に表示装置12に表示しつつ、再生制御部82は、表示バッファ72の分割領域に合わせたサイズで画像データをデコードするようにデコード実行部84に指示する。図7(b)の例では、表示バッファ72が分割されていないため(分割数は1)、分割領域は32Mバイトであり、したがってデコード実行部84は、32Mバイトの範囲内で画像データをデコードし、表示バッファ72に記憶する。表示バッファ72に画像データが記憶されると、再生制御部82が画像表示制御部90に対して画像データの切替指示を発行し、画像表示制御部90は、この切替指示を受けて、表示バッファ72から画像データを読み出し、表示装置12に表示する。予備バッファ74に記憶される画像データは、表示バッファ72に記憶される画像データの画素数を間引いたものであってもよい。このように、原則として、予備バッファ74には、表示の迅速性を目的として、データ量の少ない画像データが記憶され、一方で、表示バッファ72には、表示の高精細性を目的として、データ量の多い画像データが記憶される。これにより、ユーザに対して迅速に画像を提供できるとともに、表示バッファ72に、デコード済みの画像データを記憶した後は、高精細な画像をユーザに提供できるようになる。
【0047】
図8(a)は、バッファメモリ70の使用状況の別の例を示す。予備バッファ74は、図7(b)に関して説明したように、8分割されることに変わりない。図8(a)に示す表示バッファ72の分割数は16であり、この分割処理は、「マルチアングル」画像ファイルが表示対象となる場合に実行される。以下では、表示対象決定部104が表示対象となる画像データを決定したときに、既に画像データ読出部106により先読みされた画像データがデコード実行部84によりデコードされて、予備バッファ74の分割領域に記憶されているものとする。
【0048】
なお、予備バッファ74の分割領域に記憶させるマルチアングル画像ファイルの先読み画像データは、代表画像フラグが1に設定されている個別画像データとなる。再生制御部82は、画像ファイルに含まれる代表画像フラグが1である個別画像を特定し、デコード実行部84にデコードを指示する。既述したように、マルチアングル画像ファイルは、最大で15個の個別画像を含んでおり、一般に、真ん中の(8番目)の画像に代表画像フラグ1が設定されている。なお、他の画像に代表画像フラグ1が設定されていてもよく、代表画像フラグの設定は、デジタルカメラの内部回路に依存する。いずれの場合であっても、再生制御部82は、マルチアングル画像ファイルにおける代表画像を特定し、デコード実行部84に対して代表画像データを予備バッファ74の分割領域に収まるデータ量でデコードするように指示する。これにより、予備バッファ74には、マルチアングル画像ファイルのデコード済み代表画像データが記憶されることになる。
【0049】
このように再生制御部82は、マルチアングル画像に含まれる複数の個別画像データをデコードして表示バッファ72に記憶させる前に、代表画像データをデコードして、予備バッファ74に記憶させておく。
【0050】
入力受付部102が切替表示指示を受け付けて、表示対象決定部104が、表示対象となる画像データを決定すると、再生制御部82が、表示対象となる画像データの種別がマルチアングル画像であることを特定するとともに、予備バッファ74に、対応するデコード済みの画像データが記憶されているか調査する。このとき、予備バッファ74に、デコード済みの代表画像データが記憶されていれば、画像表示制御部90に、予備バッファ74に記憶された代表画像データを読み出すように指示する。これにより、画像表示制御部90は、マルチアングル画像ファイルの代表画像を表示装置12に表示できる。
【0051】
なお、同時に再生制御部82は、マルチアングル画像ファイルに含まれる画像数N以上の分割数で、表示バッファ72の記憶領域を分割する。ここで、本実施例において、マルチアングル画像ファイルに含まれる画像データの最大数は15であるため、再生制御部82は、表示バッファ72の記憶領域を、15以上の数に分割する。図8(a)の例では、表示バッファ72が16分割されており、1つの分割領域は2Mバイトとなっている。なお、再生制御部82は、マルチアングル画像ファイルに含まれる画像データの数を属性情報から特定し、特定した数で表示バッファ72の記憶領域を分割してもよい。分割数をできるだけ少なくすることで、表示バッファ72の分割領域のデータサイズを大きくすることが可能となる。
【0052】
再生制御部82は、表示バッファ72の記憶領域を分割すると、マルチアングル画像ファイルに含まれる複数の画像データを、表示バッファ72の分割領域に合わせたサイズでデコードするようにデコード実行部84に指示する。図8(a)の例では、表示バッファ72の分割領域は2Mバイトであり、したがってデコード実行部84は、2Mバイトの範囲内で、マルチアングル画像ファイルに含まれる各画像データをデコードし、各分割領域に記憶する。全ての画像データがデコードされて、表示バッファ72の分割領域にそれぞれ記憶されると、再生制御部82が画像表示制御部90に対して画像データの切替指示を発行し、画像表示制御部90は、この切替指示を受けて、表示バッファ72から代表画像のデータを読み出し、表示装置12に表示する。これ以後、ユーザは、マルチアングル画像を楽しむことができるようになる。
【0053】
このように画像表示制御部90が、予備バッファ74に記憶された代表画像データを表示装置12に表示させている間に、デコード実行部84がマルチアングル画像ファイルに含まれる複数の画像データをデコードして、表示バッファ72の分割領域に記憶させることができる。これにより、代表画像の表示中に、デコード実行部84が複数の画像データをデコードできるため、ユーザは、画像ファイルのデコード処理を、代表画像を見ながら待てばよい。デコード実行部84のデコード処理が完了すると、マルチアングル画像の切替機能が、左のアナログスティック27aに割り当てられる。ユーザは、アナログスティック27aを左方向または右方向に倒すことで、マルチアングル画像を切り替え表示することができる。
【0054】
図9は、マルチアングル画像ファイルのデコード中にディスプレイに表示される代表画像を示す。この代表画像は、予備バッファ74に記憶された代表画像データにより作成されている。このとき、マルチアングル画像ファイルのデコードは完了していないため、ユーザがアナログスティック27aを操作しても、入力受付部102は、操作指示を受け付けない。ユーザは、代表画像を見ながら、デコードが完了するのを待機する。
【0055】
図10は、マルチアングル画像ファイルのデコード完了後にディスプレイに表示される代表画像を示す。この代表画像は、表示バッファ72に記憶された代表画像データにより作成されている。デコード実行部84がマルチアングル画像ファイルのデコード処理を完了すると、再生制御部82は、画像表示制御部90に対して、所定のインジケータ210を表示するように指示する。このインジケータ210は、マルチアングル画像を切り替える操作方法をユーザに提示するとともに、マルチアングル画像を切り替え可能となったこともユーザに提示する。ユーザは、インジケータ210を見ることで、マルチアングル画像が切替可能な状態になったことを認識できる。
【0056】
マルチアングル画像の表示中、入力受付部102は、アナログスティック27aの傾動量を検出して、表示切替指示として受け付ける。表示対象決定部104は、表示切替指示を取得すると、表示対象となる画像データを特定し、再生制御部82に通知する。再生制御部82は、画像表示制御部90に、表示対象となる画像データを特定する情報を通知し、画像表示制御部90は、表示バッファ72の分割領域から画像データを読み出して、表示装置12に表示する。マルチアングル画像ファイルに含まれる全ての画像データが表示バッファ72にデコードされているため、画像表示制御部90は、リアルタイムで、マルチアングル画像を切り替えることができる。
【0057】
入力受付部102は、アナログスティック27aの傾動方向により、アングルの切替方向を特定し、アナログスティック27aの傾動量(角度)により、表示画像の切替速度を特定する。ここで、インジケータ210に示すように、アナログスティック27aは左方向または右方向に倒される。マルチアングル画像ファイルの個別画像には、順序が設定されており、アナログスティック27aを左に倒す操作は、表示画像に対して逆方向表示指示を形成し、アナログスティック27aを右に倒す操作は、表示画像に対して順方向表示指示を形成する。ここで、M番目の個別画像が表示されている場合、逆方向表示指示は、M番目よりも番号の小さい個別画像の表示を指示し、順方向表示指示は、M番目よりも番号の大きい個別画像の表示を指示する。
【0058】
表示画像の切替速度は、個別画像の表示時間に対応し、切替速度が大きいことは、個別画像の表示時間が短いことに対応する。ユーザがアナログスティック27aを大きく傾けると、表示画像の切替速度は大きくなり、したがって、個別画像の表示時間は短くなって、個別画像が短時間で切り替わるようになる。またユーザが、アナログスティック27aを戻すと(直立状態にすると)、表示画像の切替が停止する。以上のように、マルチアングル画像の切替操作をアナログスティック27aに割り当てることで、ユーザの直感的な操作が可能となる。
【0059】
図8(b)は、バッファメモリ70の使用状況の別の例を示す。図8(b)に示す表示バッファ72の分割数は2であり、この分割処理は、「立体視」画像ファイルが表示対象となる場合に実行される。予備バッファ74は、図7(b)に関して説明したように、8分割されることに変わりないが、先読みされた立体視画像ファイルに含まれる左目用、右目用の画像データは、分割領域をさらに2分割した領域に、それぞれ記憶される。以下では、先読みされた立体視画像ファイルに含まれる左目用、右目用の画像データが、デコード実行部84によりデコードされて、予備バッファ74の分割領域をさらに2分割した領域に記憶されているものとする。図8(b)の予備バッファ74において、Lは、左目用画像データを、Rは、右目用画像データを示している。
【0060】
入力受付部102が切替表示指示を受け付けて、表示対象決定部104が、表示対象となる画像データを決定すると、再生制御部82が、表示対象となる画像データの種別が立体視画像であることを特定するとともに、予備バッファ74に、対応するデコード済みの画像データが記憶されているか調査する。このとき、予備バッファ74に、デコード済みの左目用画像データおよび右目用画像データが記憶されていれば、画像表示制御部90に、予備バッファ74に記憶された各画像データを読み出すように指示する。これにより、画像表示制御部90は、立体視画像ファイルの左目用画像および右目用画像を表示装置12に表示する。
【0061】
なお、同時に再生制御部82は、表示バッファ72の記憶領域を2分割する。立体視画像ファイルに含まれる画像データの数は2であるため、再生制御部82は、表示バッファ72の記憶領域を2つに分割する。これにより、1つの分割領域は16Mバイトとなる。
【0062】
再生制御部82は、表示バッファ72の記憶領域を分割すると、立体視画像ファイルに含まれる2つの画像データを、表示バッファ72の分割領域に合わせたサイズで画像データをデコードするようにデコード実行部84に指示する。図8(b)の例では、表示バッファ72の分割領域は16Mバイトであり、したがってデコード実行部84は、16Mバイトの範囲内で、左目用画像データおよび右目用画像データのそれぞれをデコードし、各分割領域に記憶する。両方の画像データがデコードされて、表示バッファ72の分割領域にそれぞれ記憶されると、再生制御部82が画像表示制御部90に対して画像データの切替指示を発行し、画像表示制御部90は、この切替指示を受けて、表示バッファ72から左目用画像データおよび右目用画像データを読み出し、表示装置12にて3D表示する。これにより、ユーザは、立体視画像を楽しむことができる。
【0063】
図11は、画像ビューワによる画像再生処理のフローチャートを示す。このフローは、画像ファイルが表示対象として決定されるたびに実行される。なお、本フローにおいて、予備バッファ74には、先読みされた画像データが既にデコードされて記憶されているものとする。
【0064】
表示対象決定部104が、表示対象となる画像ファイルを決定する(S10)。再生制御部82は、表示対象となる画像ファイルの種別を取得し(S12)、その種別に応じて表示バッファ72の記憶領域を分割する(S14)。このとき再生制御部82は、予備バッファ74に、対応する画像データが記憶されているか調査し、対応する画像データが記憶されていれば、画像表示制御部90が、予備バッファ74の画像データを表示装置12に表示する(S16)。なお、S14とS16の先後は、逆であってもよい。
【0065】
画像表示制御部90が、予備バッファ74の画像データを表示装置12に表示させている間に、デコード実行部84は、表示対象となる画像ファイルに含まれる画像データをデコードする(S18)。複数の画像データが含まれる場合には、全ての画像データのデコードが終了するまで(S20のN)、このデコード処理は行われる。全ての画像データのデコードが終了し、表示バッファ72の分割領域に記憶されると(S20のY)、再生制御部82が、画像表示制御部90に対して、使用する画像データの切替指示を発行し(S22)、画像表示制御部90が、表示バッファ72の画像データを表示装置12に表示する(S24)。
【0066】
以上、本発明を実施例をもとに説明した。この実施例は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。
【符号の説明】
【0067】
1・・・画像処理システム、10・・・画像処理装置、12・・・表示装置、20・・・入力装置、50・・・ハードディスクドライブ、70・・・バッファメモリ、72・・・表示バッファ、74・・・予備バッファ、80・・・再生処理部、82・・・再生制御部、84・・・デコード実行部、90・・・画像表示制御部、102・・・入力受付部、104・・・表示対象決定部、106・・・画像データ読出部、200・・・フォルダ画像、202,204,206・・・アイコン画像、210・・・インジケータ。
【技術分野】
【0001】
本発明は、画像を処理する技術に関する。
【背景技術】
【0002】
ユーザによる表示画像を変更する切替表示指示に応じて、ハードディスクドライブなどの記憶装置に保存された複数の写真画像をディスプレイに次々に切り替えて表示させるビューワが存在する。デコード処理などの画像処理が、画像表示に追いつかなくなる状況を回避するために、表示対象となる可能性の高さに応じた順序で、画像データを先読みして処理する技術が提案されている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】US2009/0295977号公開公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
デジタルカメラの機能および性能の向上に伴って、互いに関連をもつ複数の画像データをまとめて記録するフォーマットが規定されている。カメラ映像機器工業会(Camera & Imaging Products Association)により策定された規格(standard)は、複数の画像データを記録するためのデータ構造を定義し、このデータ構造を用いた「マルチピクチャフォーマット(Multi-Picture Format)」と呼ばれるフォーマットを規定している。
【0005】
マルチピクチャフォーマットでは、画像の種別として「マルチビュー」が定義されている。マルチビューは細分として、「パノラマ」、「立体視」、「マルチアングル」の種別を有し、細分化された各種別はビューワにおける表示形式を指定する。この画像種別は、デジタルカメラの撮影時に、ユーザが撮影モードを設定することで決定され、撮影された複数の画像データは、デジタルカメラの内部回路により、画像種別コードを含めた1つの画像ファイルとしてまとめられる。デジタルカメラにより多様な種別の写真画像が生成されることに伴い、ビューワには、画像データを適切に再生する機能を搭載することが求められている。
【0006】
そこで本発明は、画像種別に応じて、適切に画像データを処理する技術を提供することを目的とする。
【課題を解決するための手段】
【0007】
上記課題を解決するために、本発明のある態様の画像処理装置は、画像データを復号する再生処理部と、復号された画像データを記憶する表示バッファと、表示バッファに記憶された画像データをディスプレイに表示させる画像表示制御部とを備え、再生処理部は、表示対象となる画像データの種別に応じて、表示バッファの領域を分割して、分割した領域に復号した画像データを記憶させる。
【0008】
なお、以上の構成要素の任意の組合せ、本発明の表現を方法、装置、システム、記録媒体、コンピュータプログラムなどの間で変換したものもまた、本発明の態様として有効である。
【発明の効果】
【0009】
本発明の画像処理技術によると、適切に画像データを処理する技術を提供することが可能となる。
【図面の簡単な説明】
【0010】
【図1】本発明の実施例にかかる画像処理システムの使用環境を示す図である。
【図2】入力装置の外観構成を示す図である。
【図3】画像処理装置の機能ブロックを示す図である。
【図4】MPフォーマットの基本構造を示す図である。
【図5】制御部および表示処理部の再生処理に関する機能ブロックを示す図である。
【図6】表示装置に表示されるメニュー画面の一例を示す図である。
【図7】(a)は、バッファメモリの構成を示す図であり、(b)はバッファメモリの使用状況の例を示す図である。
【図8】(a)および(b)は、バッファメモリの使用状況の例を示す図である。
【図9】デコード中にディスプレイに表示される代表画像を示す図である。
【図10】デコード完了後にディスプレイに表示される代表画像を示す図である。
【図11】画像再生処理のフローチャートを示す図である。
【発明を実施するための形態】
【0011】
図1は、本発明の実施例にかかる画像処理システム1の使用環境を示す。画像処理システム1は、ユーザが操作する入力装置20と、画像処理ソフトウェアを実行する画像処理装置10と、画像処理装置10による処理結果を出力する表示装置12とを備える。表示装置12は、画像を出力するディスプレイおよび音声を出力するスピーカを有するテレビであってよく、またコンピュータディスプレイであってもよい。表示装置12は、画像処理装置10に有線ケーブルで接続されてよく、また無線LAN(Local Area Network)により無線接続されてもよい。なお画像処理装置10、入力装置20および表示装置12は、一体に形成されて、画像処理機能を搭載した携帯端末装置として構成されてもよい。
【0012】
画像処理システム1において、画像処理装置10は、ケーブル14を介してパーソナルコンピュータなどの外部機器と接続し、外部機器から画像データを取得できる。また画像処理装置10はUSB(Universal Serial Bus)端子を有し、デジタルカメラとUSBケーブルで接続して、デジタルカメラから画像データを取得できる。また画像処理装置10はメディアドライブを有し、ROM媒体から画像データを取得してもよく、ネットワーク経由で外部サーバなどから画像データを取得してもよい。
【0013】
画像処理装置10は、たとえばゲーム装置であって、画像処理用のアプリケーションプログラムをロードすることで画像処理機能を実現する。なお画像処理装置10は、パーソナルコンピュータであってもよく、画像処理用のアプリケーションプログラムをロードすることで画像処理機能を実現してもよい。
【0014】
図2は、入力装置20の外観構成を示す。入力装置20は、その筐体表面において、ユーザが操作可能な操作手段として、十字キー21、アナログスティック27a、27bと、4種の操作ボタン26を備える。4種の操作ボタン26は、○ボタン22、×ボタン23、□ボタン24および△ボタン25から構成される。また入力装置20の筐体背面には、左側にL1ボタン29a、右側にR1ボタン29bが設けられている。ユーザは、左グリップ28aを左手で把持し、右グリップ28bを右手で把持して、各操作手段を操作する。
【0015】
入力装置20は、ユーザにより入力された操作信号を画像処理装置10に伝送する機能をもち、本実施例では画像処理装置10との間で無線通信可能に構成される。入力装置20と画像処理装置10は、Bluetooth(ブルートゥース)(登録商標)プロトコルやIEEE802.11プロトコルなどを用いて無線接続を確立してもよい。なお入力装置20は、画像処理装置10とケーブルを介して接続して、ユーザにより入力された操作信号を画像処理装置10に伝送してもよい。
【0016】
図3は、画像処理装置10の機能ブロック図を示す。画像処理装置10は、無線インタフェース40、スイッチ42、表示処理部44、ハードディスクドライブ50、記録媒体装着部52、ディスクドライブ54、メインメモリ60、バッファメモリ70および制御部100を有して構成される。表示処理部44は、表示装置12のディスプレイに表示するデータをバッファするフレームメモリを有する。
【0017】
スイッチ42は、イーサネットスイッチ(イーサネットは登録商標)であって、外部の機器と有線または無線で接続して、データの送受信を行うデバイスである。スイッチ42は無線インタフェース40に接続し、無線インタフェース40は、所定の無線通信プロトコルで入力装置20と接続する。入力装置20においてユーザから入力された操作信号は、無線インタフェース40、スイッチ42を経由して、制御部100に供給される。
【0018】
またスイッチ42は、ケーブル14を介して外部機器に接続し、外部機器から、複数の画像ファイルを取得する。複数の画像ファイルは、マルチピクチャフォーマット(以下、「MPフォーマット」と呼ぶ)で規定された画像ファイル(以下、「MPファイル」とも呼ぶ)であってよい。画像ファイルは、複数の画像データを関連付けたものを含み、複数の画像データを関連付けたMPファイルとしては、「マルチビュー」の画像種別が定義されている。なお、複数の画像データの関連付けは、複数の画像データ間の関連情報を別ファイルで記述することで行われてもよい。また、個々の画像データのファイル名を所定のルールで生成して、同一フォルダに格納することで、複数の画像データの関連付けがなされてもよい。このように、複数の画像データの関連付けは、様々な手法によって行われてよいが、以下では、関連付けがMPファイルによりなされている場合を例に説明する。
【0019】
ハードディスクドライブ50は、データを記憶する補助記憶装置として機能する。スイッチ42を介して受信されたMPファイルは、ハードディスクドライブ50に格納される。表示処理の際、ハードディスクドライブ50に格納されたMPファイルは、デコード処理されて、バッファメモリ70に記憶される。
【0020】
記録媒体装着部52は、メモリカードなどのリムーバブル記録媒体が装着されると、リムーバブル記録媒体からデータを読み出す。ディスクドライブ54は、読出専用のROMディスクが装着されると、ROMディスクを駆動して認識し、データを読み出す。ROMディスクは、光ディスクや光磁気ディスクなどであってよい。MPファイルは、リムーバブル記録媒体またはROMディスクに記録されていて、記録媒体装着部52またはディスクドライブ54からハードディスクドライブ50にインストールされてもよく、また表示処理の実行時にデコード処理されてバッファメモリ70に記憶されてもよい。
【0021】
制御部100は、マルチコアCPUを備え、1つのCPUの中に1つの汎用的なプロセッサコアと、複数のシンプルなプロセッサコアを有する。汎用プロセッサコアはPPU(Power Processing Unit)と呼ばれ、残りのプロセッサコアはSPU(Synergistic-Processing Unit)と呼ばれる。
【0022】
制御部100は、メインメモリ60およびバッファメモリ70に接続するメモリコントローラを備える。PPUはレジスタを有し、演算実行主体としてメインプロセッサを備えて、実行するアプリケーションにおける基本処理単位としてのタスクを各SPUに効率的に割り当てる。なお、PPU自身がタスクを実行してもよい。SPUはレジスタを有し、演算実行主体としてのサブプロセッサとローカルな記憶領域としてのローカルメモリを備える。ローカルメモリは、バッファメモリ70として使用されてもよい。メインメモリ60およびバッファメモリ70はRAM(ランダムアクセスメモリ)として構成される。SPUは制御ユニットとして専用のDMA(Direct Memory Access)コントローラをもち、メインメモリ60とバッファメモリ70の間のデータ転送を高速に行うことができ、また表示処理部44におけるフレームメモリとバッファメモリ70の間で高速なデータ転送を実現できる。本実施例の制御部100は、複数のSPUを並列動作させることで、高速な画像処理機能を実現する。表示処理部44は、表示装置12に接続されて、ユーザからの要求に応じた画像処理結果を出力する。
【0023】
図4は、MPフォーマットの基本構造を示す。このMPフォーマットは、複数の画像データを関連づけた構造を示しており、MPファイルは、先頭画像に続いて、単一または複数の個別画像を記録することができる。図4には、先頭画像(個別画像(1))に続く画像として、1つの個別画像(2)のみが示されているが、複数の個別画像が、先頭画像に続けて記録されていてもよい。先頭画像およびそれに続く個別画像は、原則として、Exif付属情報と、MPフォーマット付属情報を有している。
【0024】
(Exif付属情報)
Exif(Exchangeable Image File Format)は、画像ファイルを記録するためのフォーマットであり、画像データとあわせて、撮影時の様々な付属情報を画像ファイルに含めることができる。Exif付属情報には、撮影日時やカメラ機種名、シャッタースピード、絞り値の設定といった撮影に関する情報と、撮影した画像データを正しく読み取るための圧縮モード、色空間、画素数などの情報が含まれる。また、Exif付属情報には、撮影した画像のサムネイル画像も含まれる。
【0025】
(MPフォーマット付属情報)
先頭画像のMPフォーマット付属情報には、MPヘッダ、MPインデックス、MP個別情報が含まれる。MPヘッダは、MPインデックスへのオフセットを記録する。
また先頭画像以外のMPフォーマット付属情報には、MPヘッダ、MP個別情報が含まれる。MPヘッダは、MP個別情報へのオフセットを記録する。
【0026】
(1)MPインデックス
MPインデックスは、先頭画像にのみ含まれる。MPインデックスは、少なくとも以下のインデックス情報を含んで構成される。
a)記録画像数
MPファイル中に含まれる個別画像の数を示す。本実施例において、「マルチアングル」画像ファイルには、最大で15個の個別画像が含まれ、「立体視」画像ファイルには、左目用、右目用の2個の個別画像が含まれる。
b)MPエントリ
個別画像種別管理情報、個別画像サイズ、個別画像データオフセット、従属画像エントリ番号からなるデータ群を示す。このうち、個別画像種別管理情報は、少なくとも以下の管理情報を含んで構成される。
b−1)代表画像フラグ
個別画像が代表画像の場合、1に設定され、代表画像でない場合、0に設定される。1つのMPファイル内で、代表画像フラグが1である個別画像の数は2以上であってはならない。代表画像は、MPファイル内の全ての個別画像を代表する。
b−2)種別コード
個別画像のMP種別を示す。MPフォーマットでは、複数の異なる視点から撮影したマルチビュー画像が定義されている。マルチビュー個別画像の細分(種別)として、「パノラマ」、「立体視」、「マルチアングル」が定義されている。これらの種別を示す、「パノラマ」、「立体視」、「マルチアングル」のそれぞれに種別コードが設定されている。撮影時、ユーザが撮影モードを選択することで、MP種別が決定され、種別コードがインデックス情報として付加される。
(2)MP個別情報
MP個別情報は、撮影モードに応じた情報を含む。「パノラマ」モードで撮影された場合には、複数の個別画像を1枚のパノラマ画像にするときの配置情報や、オーバーラップさせる2つの連続画像の幅情報が含まれる。また、「立体視」モードで撮影された場合には、基準視点に対する輻輳角情報や、基準視点に対する基線長情報が含まれる。また、「マルチアングル」モードで撮影された場合には、水平軸方向の距離、鉛直軸方向の距離、視準軸方向の距離、および鉛直軸回りの回転運動の角度(ヨー角)、水平軸回りの回転運動の角度(ピッチ角)、視準軸回りの回転運動の角度(ロール角)の情報が含まれる。
【0027】
以下、画像ファイルの再生処理について説明する。
図5は、制御部100および表示処理部44の再生処理に関する機能ブロックを示す。画像処理装置10は、入力受付部102、表示対象決定部104、画像データ読出部106、再生処理部80、バッファメモリ70、画像表示制御部90およびハードディスクドライブ50を備える。再生処理部80は、再生制御部82およびデコード実行部84を有し、バッファメモリ70は、表示バッファ72および予備バッファ74を有する。画像処理装置10における再生処理機能は、画像処理装置10にインストールされた画像処理アプリケーション(以下、「画像ビューワ」と呼ぶ)により実現される。
【0028】
図5において、さまざまな処理を行う機能ブロックとして記載される各要素は、ハードウェア的には、CPU(Central Processing Unit)、メモリ、その他のLSIで構成することができ、ソフトウェア的には、メモリにロードされたプログラムなどによって実現される。既述したように、制御部100には1つのPPUと複数のSPUとが設けられており、PPUおよびSPUがそれぞれ単独または協同して、各機能ブロックを構成できる。したがって、これらの機能ブロックがハードウェアのみ、ソフトウェアのみ、またはそれらの組合せによっていろいろな形で実現できることは当業者には理解されるところであり、いずれかに限定されるものではない。
【0029】
ハードディスクドライブ50は、関連付けられた複数の画像データを記憶する記憶部である。なお本実施例の画像ビューワは、ハードディスクドライブ50に格納された写真画像だけでなく、外部の記録媒体に記録されている写真画像も再生できる。また、画像ビューワは、複数の画像データが関連づけられたMPファイルを再生する機能を有するが、JPEGやGIFなどの通常フォーマットで圧縮された一枚の画像データを再生する機能も当然に有する。以下、画像ビューワが、ハードディスクドライブ50に格納されている画像データを再生する場合について説明する。以下、MPファイルや、JPEGやGIFなどで圧縮されたファイルをまとめて、単に画像ファイルと呼ぶこともある。
【0030】
画像処理装置10において、システムソフトウェアは、画像ファイルをハードディスクドライブ50にインストールする際には、画像ファイルに含まれる付属情報を参照してファイルチェックを行う。画像ファイルが正常であれば、システムソフトウェアは、ファイル形式などの属性情報を抽出して、ハードディスクドライブ50に記憶する。インストール時、システムソフトウェアは、画像データを縮小して、サムネイル画像を生成してもよい。
【0031】
たとえば画像ファイルがMPファイルである場合には、システムソフトウェアは、付属情報の少なくとも一部を抽出して、属性情報としてハードディスクドライブ50に記憶する。抽出される付属情報には、サムネイル画像など、メニュー画面に表示されるデータが含まれる。またシステムソフトウェアは、MPファイルの付属情報から、MPファイルの表示形式を特定し、属性情報としてハードディスクドライブ50に記憶する。図4に関して説明したように、MPインデックスには、個別画像のMP種別を示す種別コードが含まれている。システムソフトウェアは、種別コードを参照して、MPファイルの表示形式を特定する。たとえば、種別コードが「マルチアングル」の画像種別を示す場合、システムソフトウェアは、MPファイルの表示形式をマルチアングルと特定し、種別コードが「立体視」の画像種別を示す場合、システムソフトウェアは、MPファイルの表示形式を立体視と特定する。再生モードにおいて、「マルチアングル」の表示形式では、ユーザによる切替表示指示に応じて、複数の方向から撮影された画像が切り替えて表示され、「立体視」の表示形式では、右目用の画像と左目用の画像とが表示される。このようにシステムソフトウェアは、MPファイルに記録されている種別コードに応じて、MPファイルの表示形式を特定する。なお、上記したように、種別コードと表示形式とを一対一に対応させてもよいが、たとえば画像ファイルの種別コードが「立体視」であっても、その画像ファイルに3枚以上の画像が含まれる場合には、システムソフトウェアが、その画像ファイルの表示形式を「マルチアングル」として特定してもよい。以下、「画像データの種別」は、表示形式を意味する用語として用いる。
【0032】
図6は、表示装置12に表示されるメニュー画面の一例を示す。本実施例の画像処理装置10では、システムソフトウェアがメニュー画面を生成する。横方向に配列された複数のフォルダ画像のうち、フォルダ画像200は、写真コンテンツのフォルダを示す。縦方向には、アイコン画像202、204、206が配列される。ユーザは、入力装置20を操作して所望のアイコン画像をフォーカス領域の位置までスクロールさせて動かし、入力装置20の所定のボタンを押下することで、そのアイコン画像に対応付けられている処理を実行させることができる。図6の例では、写真コンテンツのアイコン画像202がフォーカス領域に配置され、ユーザが入力装置20の○ボタン22を押下すると再生指示が生成され、画像ビューワが起動される。なお、図6に示すメニュー画面には、画像データを記録した記録媒体のアイコン画像を示していないが、フォトアイコン画像の直下に、記録媒体のアイコン画像が表示され、媒体アイコン画像の直下または右方に、アイコン画像202、204、206が配列されてもよい。
【0033】
システムソフトウェアは、画像ファイルにサムネイル画像が含まれている場合には、そのサムネイル画像を用いて、アイコン画像を生成する。なお、画像ファイルにサムネイル画像が含まれていない場合には、画像データを縮小して、アイコン画像を生成する。MPファイルについては、システムソフトウェアは、ハードディスクドライブ50から属性情報を読み出して、代表画像フラグが1に設定されている個別画像のサムネイル画像を特定し、アイコン画像を生成する。
【0034】
図6に示すメニュー画面において、ユーザが入力装置20の所定のボタンを押下すると、画像ファイルの再生指示が形成されて画像ビューワが起動される。これにより、フォーカス領域に配置されたアイコン画像202で特定される画像ファイルの再生処理が開始される。
【0035】
本実施例において、ハードディスクドライブ50に記憶される複数の画像ファイルには、画像ビューワによる表示順序が予め設定されている。この表示順序は、ハードディスクドライブ50において各画像ファイルが記憶された順序であってもよく、また各画像ファイルの生成日時(撮影日時)にしたがった順序であってもよい。画像ビューワが起動され、表示装置12に画像が表示されると、ユーザは、入力装置20の筐体背面に設けられたL1ボタン29aまたはR1ボタン29bを押下することで、表示対象となる画像ファイルを切り替えることができる。ある画像ファイルがデコードされて表示装置12に表示されている場合、ユーザがL1ボタン29aを押下すると、一つ前の画像ファイルがデコードされて表示装置12に表示され、一方でR1ボタン29bを押下すると、一つ先の画像ファイルがデコードされて表示装置12に表示される。このように画像処理装置10において、ユーザによるL1ボタン29aボタンの操作は、所定の順序が設定された画像ファイル列に対して逆方向表示指示を形成し、一方で、ユーザによるR1ボタン29bの操作は、画像ファイル列に対して順方向表示指示を形成する。以下、表示画像を切り替える指示を、「切替表示指示」と呼ぶ。
【0036】
入力受付部102が、図6に示すメニュー画面において再生指示を受け付けると、表示対象決定部104が、表示対象となる画像ファイルを決定する。表示対象決定部104は、アイコン画像202で特定される画像ファイルを表示対象として決定し、画像データ読出部106は、ハードディスクドライブ50から、表示対象となる画像ファイルおよびその属性情報を読み出して、再生処理部80に供給する。なお、図5においては、画像データ読出部106が、再生処理部80に画像ファイル等を直接供給している様子が示されているが、実際には、画像データ読出部106は、ハードディスクドライブ50から読み出した画像ファイル等を一旦メインメモリ60に記憶し、再生処理部80が、メインメモリ60に読み出された画像ファイル等を取得する構成となっている。
【0037】
表示順序が定められた画像ファイル列において、表示対象となる画像ファイルの位置(順序)がpであるとし、この画像ファイルをI(p)で表現する。表示対象決定部104はI(p)を特定すると、画像データ読出部106に通知する。この通知を受けると、画像データ読出部106は、p番目の画像ファイルI(p)だけでなく、その前後の所定の数の画像ファイルを、先読み対象として選択する。例えば所定の数が2であれば、画像データ読出部106は、I(p−2)、I(p−1)、I(p)、I(p+1)、I(p+2)の5つの画像ファイルを読み出し、再生処理部80に供給する。前後の画像ファイルを先読みするのは、ユーザによる切替表示指示の前に、前後の画像ファイルを予め復号(デコード)しておき、その後のユーザによる切替表示指示に対してリアルタイムで画像を表示できるようにするためである。
【0038】
再生処理部80は、画像ファイルを取得し、画像データを復号する機能を有する。再生処理部80は、バッファメモリ70を利用して、画像データの種別に応じた効率的なデコード処理を実行する。
【0039】
図7(a)は、バッファメモリ70の構成を示す。バッファメモリ70は、表示バッファ72および予備バッファ74から構成される。表示バッファ72および予備バッファ74は、それぞれ32Mバイトの容量を有する。本実施例において、表示バッファ72および予備バッファ74は、再生処理部80によりデコードされた画像データを記憶する。表示バッファ72は、1つの画像ファイルをデコードした画像データを記憶する。また予備バッファ74は、原則として、先読みされた画像データをデコードした画像データを記憶する。なお表示バッファ72と予備バッファ74は、同じ記憶容量を有してなくてもよく、表示バッファ72の記憶容量の方が大きくてもよい。
【0040】
本実施例の画像処理装置10において、ユーザが入力装置20を操作して、切替表示指示が生成されると、画像表示制御部90は、既にデコードされている画像データを予備バッファ74から読み出して表示装置12に表示し、再生処理部80が、表示対象となる画像データをデコードして表示バッファ72に格納した時点で、画像表示制御部90が、画像データを表示バッファ72から読み出して表示装置12に表示させるようにする。
【0041】
再生処理部80において、デコード実行部84は、画像データ読出部106により読み出された画像データをデコードし、再生制御部82は、デコード実行部84による復号処理を制御する。また再生制御部82は、バッファメモリ70における各バッファの分割処理を実行する。具体的に再生制御部82は、予備バッファ74の記憶領域を、所定の分割数で分割し、表示バッファ72の記憶領域を、表示対象となる画像データの種別に応じた分割数で分割する。分割数は、表示対象となる画像ファイルに含まれる画像データの数以上に設定される。たとえば、マルチアングル画像ファイルや立体視画像ファイルなど、1つの画像ファイルが複数の画像データを含む場合、再生制御部82は、デコード実行部84によりデコードされた複数の画像データのそれぞれを、表示バッファ72の分割した記憶領域に記憶させる。再生制御部82は、画像データの種別を、ハードディスクドライブ50に記憶されている属性情報から特定してもよいし、画像ファイルに含まれる属性情報から特定してもよい。再生制御部82は、表示バッファ72の記憶領域の分割数を、表示対象となる画像ファイルに含まれる画像データの数以上とすることで、画像ファイルに含まれる画像データのデコード結果の全てを、表示バッファ72に記憶させることが可能となる。これにより、画像表示制御部90は、表示バッファ72のみを用いて、1つの画像ファイルに含まれる画像を表示装置12に表示させることができるようになる。
【0042】
本実施例において、画像データの種別は、MPフォーマットにおける「マルチアングル」、「立体視」、「パノラマ」と、一枚の画像データを圧縮するJPEGやGIFなどの「通常フォーマット」を含む。
【0043】
図7(b)は、バッファメモリ70の使用状況の一例を示す。本実施例において、予備バッファ74は、その記憶領域を8分割されて、4Mバイトの領域を8つ作成される。この分割処理は、再生制御部82により実行される。したがって、予備バッファ74は、最大で8つの画像ファイルに含まれる画像データのデコード結果を記憶することができる。なお、バッファメモリ70において、予備バッファ74の分割数は8個に固定されるが、表示バッファ72の分割数は、以下に例示するように、表示対象となる画像ファイルの種別によって定められる。なお、本実施例において、分割数は、分割処理により区分けされる記憶領域の数を示し、再生制御部82が表示バッファ72を分割しない場合、分割数は1となる。
【0044】
図7(b)に示す表示バッファ72の分割数は1である。再生制御部82は、表示対象となる画像データの種別が「パノラマ」または「通常フォーマット」である場合、表示バッファ72の領域を1分割して(1分割とは、分割しないことを示す)、表示バッファ72に、デコード実行部84で復号した画像データを記憶させる。
【0045】
表示対象決定部104が表示対象となる画像データを決定し、再生制御部82に通知すると、再生制御部82は、予備バッファ74にデコード済みの画像データが記憶されていなければ、デコード実行部84に対して、予備バッファ74用に画像データをデコードするように指示する。上記したように、予備バッファ74の分割領域は4Mバイトであり、32Mバイトの表示バッファ72に画像データをデコードするよりも迅速な処理ができる。したがって、再生制御部82は、まず予備バッファ74の分割領域に合わせたサイズで画像データをデコードするようにデコード実行部84に指示する。画像表示制御部90は、予備バッファ74の分割領域に、表示対象となる画像データがデコードされて記憶されると、その画像データを読み出して表示装置12に表示する。なお、予備バッファ74にデコード済みの画像データが既に記憶されている場合、画像表示制御部90は、デコード済みの画像データを予備バッファ74から読み出して、表示装置12に表示する。
【0046】
このように画像を迅速に表示装置12に表示しつつ、再生制御部82は、表示バッファ72の分割領域に合わせたサイズで画像データをデコードするようにデコード実行部84に指示する。図7(b)の例では、表示バッファ72が分割されていないため(分割数は1)、分割領域は32Mバイトであり、したがってデコード実行部84は、32Mバイトの範囲内で画像データをデコードし、表示バッファ72に記憶する。表示バッファ72に画像データが記憶されると、再生制御部82が画像表示制御部90に対して画像データの切替指示を発行し、画像表示制御部90は、この切替指示を受けて、表示バッファ72から画像データを読み出し、表示装置12に表示する。予備バッファ74に記憶される画像データは、表示バッファ72に記憶される画像データの画素数を間引いたものであってもよい。このように、原則として、予備バッファ74には、表示の迅速性を目的として、データ量の少ない画像データが記憶され、一方で、表示バッファ72には、表示の高精細性を目的として、データ量の多い画像データが記憶される。これにより、ユーザに対して迅速に画像を提供できるとともに、表示バッファ72に、デコード済みの画像データを記憶した後は、高精細な画像をユーザに提供できるようになる。
【0047】
図8(a)は、バッファメモリ70の使用状況の別の例を示す。予備バッファ74は、図7(b)に関して説明したように、8分割されることに変わりない。図8(a)に示す表示バッファ72の分割数は16であり、この分割処理は、「マルチアングル」画像ファイルが表示対象となる場合に実行される。以下では、表示対象決定部104が表示対象となる画像データを決定したときに、既に画像データ読出部106により先読みされた画像データがデコード実行部84によりデコードされて、予備バッファ74の分割領域に記憶されているものとする。
【0048】
なお、予備バッファ74の分割領域に記憶させるマルチアングル画像ファイルの先読み画像データは、代表画像フラグが1に設定されている個別画像データとなる。再生制御部82は、画像ファイルに含まれる代表画像フラグが1である個別画像を特定し、デコード実行部84にデコードを指示する。既述したように、マルチアングル画像ファイルは、最大で15個の個別画像を含んでおり、一般に、真ん中の(8番目)の画像に代表画像フラグ1が設定されている。なお、他の画像に代表画像フラグ1が設定されていてもよく、代表画像フラグの設定は、デジタルカメラの内部回路に依存する。いずれの場合であっても、再生制御部82は、マルチアングル画像ファイルにおける代表画像を特定し、デコード実行部84に対して代表画像データを予備バッファ74の分割領域に収まるデータ量でデコードするように指示する。これにより、予備バッファ74には、マルチアングル画像ファイルのデコード済み代表画像データが記憶されることになる。
【0049】
このように再生制御部82は、マルチアングル画像に含まれる複数の個別画像データをデコードして表示バッファ72に記憶させる前に、代表画像データをデコードして、予備バッファ74に記憶させておく。
【0050】
入力受付部102が切替表示指示を受け付けて、表示対象決定部104が、表示対象となる画像データを決定すると、再生制御部82が、表示対象となる画像データの種別がマルチアングル画像であることを特定するとともに、予備バッファ74に、対応するデコード済みの画像データが記憶されているか調査する。このとき、予備バッファ74に、デコード済みの代表画像データが記憶されていれば、画像表示制御部90に、予備バッファ74に記憶された代表画像データを読み出すように指示する。これにより、画像表示制御部90は、マルチアングル画像ファイルの代表画像を表示装置12に表示できる。
【0051】
なお、同時に再生制御部82は、マルチアングル画像ファイルに含まれる画像数N以上の分割数で、表示バッファ72の記憶領域を分割する。ここで、本実施例において、マルチアングル画像ファイルに含まれる画像データの最大数は15であるため、再生制御部82は、表示バッファ72の記憶領域を、15以上の数に分割する。図8(a)の例では、表示バッファ72が16分割されており、1つの分割領域は2Mバイトとなっている。なお、再生制御部82は、マルチアングル画像ファイルに含まれる画像データの数を属性情報から特定し、特定した数で表示バッファ72の記憶領域を分割してもよい。分割数をできるだけ少なくすることで、表示バッファ72の分割領域のデータサイズを大きくすることが可能となる。
【0052】
再生制御部82は、表示バッファ72の記憶領域を分割すると、マルチアングル画像ファイルに含まれる複数の画像データを、表示バッファ72の分割領域に合わせたサイズでデコードするようにデコード実行部84に指示する。図8(a)の例では、表示バッファ72の分割領域は2Mバイトであり、したがってデコード実行部84は、2Mバイトの範囲内で、マルチアングル画像ファイルに含まれる各画像データをデコードし、各分割領域に記憶する。全ての画像データがデコードされて、表示バッファ72の分割領域にそれぞれ記憶されると、再生制御部82が画像表示制御部90に対して画像データの切替指示を発行し、画像表示制御部90は、この切替指示を受けて、表示バッファ72から代表画像のデータを読み出し、表示装置12に表示する。これ以後、ユーザは、マルチアングル画像を楽しむことができるようになる。
【0053】
このように画像表示制御部90が、予備バッファ74に記憶された代表画像データを表示装置12に表示させている間に、デコード実行部84がマルチアングル画像ファイルに含まれる複数の画像データをデコードして、表示バッファ72の分割領域に記憶させることができる。これにより、代表画像の表示中に、デコード実行部84が複数の画像データをデコードできるため、ユーザは、画像ファイルのデコード処理を、代表画像を見ながら待てばよい。デコード実行部84のデコード処理が完了すると、マルチアングル画像の切替機能が、左のアナログスティック27aに割り当てられる。ユーザは、アナログスティック27aを左方向または右方向に倒すことで、マルチアングル画像を切り替え表示することができる。
【0054】
図9は、マルチアングル画像ファイルのデコード中にディスプレイに表示される代表画像を示す。この代表画像は、予備バッファ74に記憶された代表画像データにより作成されている。このとき、マルチアングル画像ファイルのデコードは完了していないため、ユーザがアナログスティック27aを操作しても、入力受付部102は、操作指示を受け付けない。ユーザは、代表画像を見ながら、デコードが完了するのを待機する。
【0055】
図10は、マルチアングル画像ファイルのデコード完了後にディスプレイに表示される代表画像を示す。この代表画像は、表示バッファ72に記憶された代表画像データにより作成されている。デコード実行部84がマルチアングル画像ファイルのデコード処理を完了すると、再生制御部82は、画像表示制御部90に対して、所定のインジケータ210を表示するように指示する。このインジケータ210は、マルチアングル画像を切り替える操作方法をユーザに提示するとともに、マルチアングル画像を切り替え可能となったこともユーザに提示する。ユーザは、インジケータ210を見ることで、マルチアングル画像が切替可能な状態になったことを認識できる。
【0056】
マルチアングル画像の表示中、入力受付部102は、アナログスティック27aの傾動量を検出して、表示切替指示として受け付ける。表示対象決定部104は、表示切替指示を取得すると、表示対象となる画像データを特定し、再生制御部82に通知する。再生制御部82は、画像表示制御部90に、表示対象となる画像データを特定する情報を通知し、画像表示制御部90は、表示バッファ72の分割領域から画像データを読み出して、表示装置12に表示する。マルチアングル画像ファイルに含まれる全ての画像データが表示バッファ72にデコードされているため、画像表示制御部90は、リアルタイムで、マルチアングル画像を切り替えることができる。
【0057】
入力受付部102は、アナログスティック27aの傾動方向により、アングルの切替方向を特定し、アナログスティック27aの傾動量(角度)により、表示画像の切替速度を特定する。ここで、インジケータ210に示すように、アナログスティック27aは左方向または右方向に倒される。マルチアングル画像ファイルの個別画像には、順序が設定されており、アナログスティック27aを左に倒す操作は、表示画像に対して逆方向表示指示を形成し、アナログスティック27aを右に倒す操作は、表示画像に対して順方向表示指示を形成する。ここで、M番目の個別画像が表示されている場合、逆方向表示指示は、M番目よりも番号の小さい個別画像の表示を指示し、順方向表示指示は、M番目よりも番号の大きい個別画像の表示を指示する。
【0058】
表示画像の切替速度は、個別画像の表示時間に対応し、切替速度が大きいことは、個別画像の表示時間が短いことに対応する。ユーザがアナログスティック27aを大きく傾けると、表示画像の切替速度は大きくなり、したがって、個別画像の表示時間は短くなって、個別画像が短時間で切り替わるようになる。またユーザが、アナログスティック27aを戻すと(直立状態にすると)、表示画像の切替が停止する。以上のように、マルチアングル画像の切替操作をアナログスティック27aに割り当てることで、ユーザの直感的な操作が可能となる。
【0059】
図8(b)は、バッファメモリ70の使用状況の別の例を示す。図8(b)に示す表示バッファ72の分割数は2であり、この分割処理は、「立体視」画像ファイルが表示対象となる場合に実行される。予備バッファ74は、図7(b)に関して説明したように、8分割されることに変わりないが、先読みされた立体視画像ファイルに含まれる左目用、右目用の画像データは、分割領域をさらに2分割した領域に、それぞれ記憶される。以下では、先読みされた立体視画像ファイルに含まれる左目用、右目用の画像データが、デコード実行部84によりデコードされて、予備バッファ74の分割領域をさらに2分割した領域に記憶されているものとする。図8(b)の予備バッファ74において、Lは、左目用画像データを、Rは、右目用画像データを示している。
【0060】
入力受付部102が切替表示指示を受け付けて、表示対象決定部104が、表示対象となる画像データを決定すると、再生制御部82が、表示対象となる画像データの種別が立体視画像であることを特定するとともに、予備バッファ74に、対応するデコード済みの画像データが記憶されているか調査する。このとき、予備バッファ74に、デコード済みの左目用画像データおよび右目用画像データが記憶されていれば、画像表示制御部90に、予備バッファ74に記憶された各画像データを読み出すように指示する。これにより、画像表示制御部90は、立体視画像ファイルの左目用画像および右目用画像を表示装置12に表示する。
【0061】
なお、同時に再生制御部82は、表示バッファ72の記憶領域を2分割する。立体視画像ファイルに含まれる画像データの数は2であるため、再生制御部82は、表示バッファ72の記憶領域を2つに分割する。これにより、1つの分割領域は16Mバイトとなる。
【0062】
再生制御部82は、表示バッファ72の記憶領域を分割すると、立体視画像ファイルに含まれる2つの画像データを、表示バッファ72の分割領域に合わせたサイズで画像データをデコードするようにデコード実行部84に指示する。図8(b)の例では、表示バッファ72の分割領域は16Mバイトであり、したがってデコード実行部84は、16Mバイトの範囲内で、左目用画像データおよび右目用画像データのそれぞれをデコードし、各分割領域に記憶する。両方の画像データがデコードされて、表示バッファ72の分割領域にそれぞれ記憶されると、再生制御部82が画像表示制御部90に対して画像データの切替指示を発行し、画像表示制御部90は、この切替指示を受けて、表示バッファ72から左目用画像データおよび右目用画像データを読み出し、表示装置12にて3D表示する。これにより、ユーザは、立体視画像を楽しむことができる。
【0063】
図11は、画像ビューワによる画像再生処理のフローチャートを示す。このフローは、画像ファイルが表示対象として決定されるたびに実行される。なお、本フローにおいて、予備バッファ74には、先読みされた画像データが既にデコードされて記憶されているものとする。
【0064】
表示対象決定部104が、表示対象となる画像ファイルを決定する(S10)。再生制御部82は、表示対象となる画像ファイルの種別を取得し(S12)、その種別に応じて表示バッファ72の記憶領域を分割する(S14)。このとき再生制御部82は、予備バッファ74に、対応する画像データが記憶されているか調査し、対応する画像データが記憶されていれば、画像表示制御部90が、予備バッファ74の画像データを表示装置12に表示する(S16)。なお、S14とS16の先後は、逆であってもよい。
【0065】
画像表示制御部90が、予備バッファ74の画像データを表示装置12に表示させている間に、デコード実行部84は、表示対象となる画像ファイルに含まれる画像データをデコードする(S18)。複数の画像データが含まれる場合には、全ての画像データのデコードが終了するまで(S20のN)、このデコード処理は行われる。全ての画像データのデコードが終了し、表示バッファ72の分割領域に記憶されると(S20のY)、再生制御部82が、画像表示制御部90に対して、使用する画像データの切替指示を発行し(S22)、画像表示制御部90が、表示バッファ72の画像データを表示装置12に表示する(S24)。
【0066】
以上、本発明を実施例をもとに説明した。この実施例は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。
【符号の説明】
【0067】
1・・・画像処理システム、10・・・画像処理装置、12・・・表示装置、20・・・入力装置、50・・・ハードディスクドライブ、70・・・バッファメモリ、72・・・表示バッファ、74・・・予備バッファ、80・・・再生処理部、82・・・再生制御部、84・・・デコード実行部、90・・・画像表示制御部、102・・・入力受付部、104・・・表示対象決定部、106・・・画像データ読出部、200・・・フォルダ画像、202,204,206・・・アイコン画像、210・・・インジケータ。
【特許請求の範囲】
【請求項1】
画像データを復号する再生処理部と、
復号された画像データを記憶する表示バッファと、
表示バッファに記憶された画像データをディスプレイに表示させる画像表示制御部と、を備えた画像処理装置であって、
前記再生処理部は、表示対象となる画像データの種別に応じて、前記表示バッファの領域を分割して、分割した領域に、復号した画像データを記憶させることを特徴とする画像処理装置。
【請求項2】
表示対象となる画像データの種別がマルチアングル画像である場合、前記再生処理部は、マルチアングル画像に含まれる画像数N以上に前記表示バッファの領域を分割して、各分割領域に、復号した画像データを記憶させることを特徴とする請求項1に記載の画像処理装置。
【請求項3】
復号された画像データを記憶する予備バッファをさらに備え、
前記再生処理部は、マルチアングル画像に含まれる複数の画像データを復号して前記表示バッファの分割領域に記憶させる前に、マルチアングル画像に含まれる代表画像データを復号して、前記予備バッファに記憶させ、
前記画像表示制御部は、前記予備バッファに記憶された代表画像データをディスプレイに表示させる、
ことを特徴とする請求項2に記載の画像処理装置。
【請求項4】
前記画像表示制御部が、前記予備バッファに記憶された代表画像データをディスプレイに表示させている間に、前記再生処理部は、マルチアングル画像に含まれる複数の画像データを復号して、前記表示バッファの分割領域に記憶させることを特徴とする請求項3に記載の画像処理装置。
【請求項5】
前記画像表示制御部は、前記再生処理部による複数の画像データの復号処理が完了すると、ディスプレイに、所定のインジケータを表示することを特徴とする請求項4に記載の画像処理装置。
【請求項6】
表示対象となる画像データの種別が立体視画像である場合、前記再生処理部は、表示バッファの領域を2分割して、それぞれの領域に、左目用画像データと右目用画像データを記憶させることを特徴とする請求項1に記載の画像処理装置。
【請求項7】
コンピュータに、
表示対象となる画像データを決定する機能と、
表示対象となる画像データの種別を特定する機能と、
特定した種別に応じて、表示バッファの領域を分割する機能と、
画像データを復号して、分割した領域に記憶させる機能と、
を実現させるためのプログラム。
【請求項8】
請求項7に記載のプログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項1】
画像データを復号する再生処理部と、
復号された画像データを記憶する表示バッファと、
表示バッファに記憶された画像データをディスプレイに表示させる画像表示制御部と、を備えた画像処理装置であって、
前記再生処理部は、表示対象となる画像データの種別に応じて、前記表示バッファの領域を分割して、分割した領域に、復号した画像データを記憶させることを特徴とする画像処理装置。
【請求項2】
表示対象となる画像データの種別がマルチアングル画像である場合、前記再生処理部は、マルチアングル画像に含まれる画像数N以上に前記表示バッファの領域を分割して、各分割領域に、復号した画像データを記憶させることを特徴とする請求項1に記載の画像処理装置。
【請求項3】
復号された画像データを記憶する予備バッファをさらに備え、
前記再生処理部は、マルチアングル画像に含まれる複数の画像データを復号して前記表示バッファの分割領域に記憶させる前に、マルチアングル画像に含まれる代表画像データを復号して、前記予備バッファに記憶させ、
前記画像表示制御部は、前記予備バッファに記憶された代表画像データをディスプレイに表示させる、
ことを特徴とする請求項2に記載の画像処理装置。
【請求項4】
前記画像表示制御部が、前記予備バッファに記憶された代表画像データをディスプレイに表示させている間に、前記再生処理部は、マルチアングル画像に含まれる複数の画像データを復号して、前記表示バッファの分割領域に記憶させることを特徴とする請求項3に記載の画像処理装置。
【請求項5】
前記画像表示制御部は、前記再生処理部による複数の画像データの復号処理が完了すると、ディスプレイに、所定のインジケータを表示することを特徴とする請求項4に記載の画像処理装置。
【請求項6】
表示対象となる画像データの種別が立体視画像である場合、前記再生処理部は、表示バッファの領域を2分割して、それぞれの領域に、左目用画像データと右目用画像データを記憶させることを特徴とする請求項1に記載の画像処理装置。
【請求項7】
コンピュータに、
表示対象となる画像データを決定する機能と、
表示対象となる画像データの種別を特定する機能と、
特定した種別に応じて、表示バッファの領域を分割する機能と、
画像データを復号して、分割した領域に記憶させる機能と、
を実現させるためのプログラム。
【請求項8】
請求項7に記載のプログラムを記録したコンピュータ読み取り可能な記録媒体。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【公開番号】特開2013−38559(P2013−38559A)
【公開日】平成25年2月21日(2013.2.21)
【国際特許分類】
【出願番号】特願2011−172292(P2011−172292)
【出願日】平成23年8月5日(2011.8.5)
【出願人】(310021766)株式会社ソニー・コンピュータエンタテインメント (417)
【Fターム(参考)】
【公開日】平成25年2月21日(2013.2.21)
【国際特許分類】
【出願日】平成23年8月5日(2011.8.5)
【出願人】(310021766)株式会社ソニー・コンピュータエンタテインメント (417)
【Fターム(参考)】
[ Back to top ]