本発明の情報処理装置、その制御方法およびプログラムの実施の形態について図面を参照しながら説明する。本実施形態の情報処理装置は、画像処理装置の一例である電子撮像装置が接続され、この電子撮像装置とともに画像表示システムを構成するコンピュータに適用される。なお、電子撮像装置の例としては、デジタルカメラなどがあげられる。
(情報処理装置の構成)
図1は実施の形態における情報処理装置の一例であるコンピュータ100の構成を示すブロック図である。コンピュータ(PC)100は、CPU101、RAM102、HDD103、外部記憶装置104、ネットワークI/F105、VRAM106、表示装置107、サウンドデバイス108、キーボード109およびポインティングデバイス110を有する。また、PC100は印刷装置111および通信インターフェイス112を有する。
CPU(Central Processing Unit)101は、画像表示装置を制御する。RAM(Random Access Memory)102には、プログラムや画像データが展開される。プログラムは、画像表示や画像処理を制御するためのプログラムコードであり、CPUによって実行される。その他、RAM102は、CPUのワーク領域、エラー処理時のデータの退避領域などとして使用される。HDD(Hard Disk Drive)103は、画像表示装置で実行される各制御プログラムや、画像ファイルやテキストファイルなどのコンテンツファイルなどを格納する。
外部記憶装置(Removable Drive)104は、外部記憶媒体に対して読み出しおよび書込みを行う装置である。プログラムや画像データが外部記憶媒体に記録されている場合、これらは外部記憶装置(Removable Drive)104を介してRAMにロードされる。外部記憶媒体には、例えば、DVD−RWドライブ、CD−ROM、CD−R、DVD−RAMなどの光ディスクや、フレキシブルディスク、MOなどの磁気ディスク、またフラッシュメモリなどの不揮発性メモリが含まれる。
ネットワークインタフェース(Network I/F)105は、このデバイスを介して、LAN(Local Area Network)やWWW(World Wide Web)などに接続される。そして、ネットワークインタフェース105は、アクセス可能な記録装置に記録されているプログラムや画像データをロードする。
VRAM(Video RAM)106は、画像データや実行されたプログラムのUI(User Interface)などの映像信号を出力する。
表示装置107は、VRAM106に入力された映像信号を表示処理を行う。表示装置107には、例えば、CRT(Cathode Ray Tube)やLCD(Liquid Crystal Display)を用いることができる。また、SED(Surface−conduction Electron−emitter Display)やEL(Electro Luminescent)を用いることができる。
サウンドデバイス(Sound Device)108は、例えば、画像データに添付されている音声データを処理し、スピーカなどに転送する。キーボード109は文字などを入力するための各種キーを有する。
ポインティングデバイス110として、例えばマウスパッドが挙げられる。ポインティングデバイス110は、表示装置107の表示画面上に表示されたマウスポインタを制御し、プログラムのメニューやその他のオブジェクトを操作するために使用される。
印刷装置(プリントデバイス)111は、例えばインクジェットプリンタや昇華型プリンタが挙げられる。印刷装置111は、HDD103に保存された、または外部記憶装置(Removable Drive)104から読み込まれた画像やテキストなどのコンテンツデータを紙媒体に印刷するために使用される。
通信インターフェイス112として、例えばPTP規格があげられる。PTPは、Picture Transfer Protocol(PIMA 15740:2000, PHOTOGRAPHIC AND IMAGING MANUFACTURERS ASSOCIATION, INC.参照)である。PC100は、この通信インターフェイスを用いて、外部デバイスとデータを送受信することが可能となる。
なお、本実施形態では、HDD103に記録されたプログラムや画像データをRAM102にロードし、CPU101がプログラムを実行することにより、コンピュータ100を通信装置として機能させる。
(電子撮像装置の構成)
図2は電子撮像装置200の構成を示すブロック図である。電子撮像装置200では、撮影レンズ201、絞り機能を備えるシャッタ202を通して撮像素子203に光学像が結像される。撮像素子203は、光学像を電気信号に変換し、アナログ信号を出力する。なお、撮像素子203としてはCCD、CMOSセンサ等、周知の素子を利用することが可能である。
A/D変換器204は、撮像素子203から出力されたアナログ信号をデジタルデータに変換する。タイミング発生部205は、メモリ制御部206およびシステム制御部207により制御され、撮像素子203、A/D変換器204およびD/A変換器208にクロック信号や制御信号を供給する。
画像処理部209は、A/D変換器204からのデジタルデータあるいはメモリ制御部206からのデータに対して所定の画素補間処理や色変換処理を行う。また、画像処理部209は、撮像した画像データを用いて所定の演算処理を行い、この演算結果をシステム制御部207に供給する。
システム制御部207は、得られた演算結果に基づき、露光制御部および測距制御部に対する制御を行い、TTL(スルー・ザ・レンズ)方式のAF(オートフォーカス)処理、AE(自動露出)処理およびEF(フラッシュプリ発光)処理を実現する。さらに、画像処理部209は、撮像した画像データを用いて所定の演算処理を行い、得られた演算結果に基づいてTTL方式のAWB(オートホワイトバランス)処理を実現する。
メモリ制御部206は、A/D変換器204、タイミング発生部205、画像処理部209、D/A変換器208、メモリ210、圧縮伸長部211等を制御する。A/D変換器204からのデジタルデータは、画像処理部209とメモリ制御部206を介して、あるいは直接メモリ制御部206を介して、メモリ210(あるいは別途設けられた画像表示メモリ)に画像データとして書き込まれる。
メモリに書き込まれた画像データは、D/A変換器208を介して画像表示部212により表示される。画像表示部212は、例えばTFT LCD等から構成される。画像表示部212を用いて撮像した画像データを逐次表示する場合、EVF(電子ビューファインダ)機能を実現することが可能である。
また、画像表示部212は、システム制御部207の指示により任意に表示をON/OFFにすることが可能である。画像表示部212の表示をOFFにした場合、電子撮像装置200における電力消費を大幅に低減することができる。従って、光学ファインダ213を用いて撮影を行う際、画像表示部212の表示をOFFとし、省電力を図ることが可能となる。
メモリ210には、撮影した静止画像や動画像が格納される。メモリ210は、所定枚数の静止画像や所定時間の動画像を格納するために十分な記憶量を備える。これにより、複数枚の静止画像を連続して撮影する連写撮影やパノラマ撮影の場合にも、高速かつ大量の画像の書込みをメモリ210に対して行うことが可能となる。また、メモリ210はシステム制御部207の作業領域としても使用することが可能である。
圧縮伸長部211は、ADCT(適応離散コサイン変換)等により画像データを圧縮あるいは伸長する。圧縮伸長部211は、メモリ210に格納された画像を読み込んで圧縮処理あるいは伸長処理を行い、その処理を終えたデータをメモリ210に書き込む。
露光制御部(図示せず)は、シャッタ202が備える絞り機能を制御すると共に、フラッシュ214と連携することによりフラッシュ調光機能を実現する。測距制御部(図示せず)は、撮影レンズ201のフォーカシングを制御する。ズーム制御部(図示せず)は撮影レンズ201のズーミングを制御する。バリア制御部(図示せず)は保護部材であるバリア228の動作を制御する。
システム制御部207は、撮像した画像データに対して画像処理部209が行った演算の結果に基づき、露光制御部および測距制御部を制御する。露光制御部および測距制御部はTTL方式を用いて制御される。
システム制御部207は、電子撮像装置200の全体を制御する。システムメモリ215は、システム制御部207の動作用の定数、変数、プログラム等を記憶する。また、システムメモリ215はAEで用いるプログラム線図も格納している。なお、プログラム線図は、露出値に対する絞り開口径とシャッタ速度の制御値の関係を定義したテーブルである。
システム制御部207によるプログラムの実行に応じて、文字、画像、音声等を用いて動作状態やメッセージ等がユーザに提示される。提示部は、各種情報を表示するための液晶表示器(LCD)やLED、スピーカ(発音素子)等の組み合わせで構成され、電子撮像装置200の操作部近辺の視認し易い位置に単数あるいは複数設置される。また、提示部の一部の機能は、光学ファインダ213内に設置されている。
表示する内容としては、シングルショット/連写撮影表示、セルフタイマ表示、圧縮率表示、記録画素数表示、記録枚数表示、残撮影可能枚数表示、シャッタスピード表示、絞り値表示等がある。また、露出補正表示、フラッシュ表示、赤目緩和表示、マクロ撮影表示、ブザー設定表示、時計用電池残量表示、電池残量表示、エラー表示、複数桁の数字による情報表示、記録媒体299の着脱状態表示、通信I/Fの動作表示、日付・時刻表示等がある。また、光学ファインダ213内に表示するものとしては、合焦表示、手振れ警告表示、フラッシュ充電表示、シャッタスピード表示、絞り値表示、露出補正表示等がある。
不揮発性メモリ216は、電気的に消去・記録可能なメモリであり、例えばEEPROM等で構成される。モード切替スイッチ217は、電源OFF、自動撮影モード、撮影モード、パノラマ撮影モード、再生モード、マルチ画面再生・消去モード、PC接続モード等の各機能モードの切り替えを設定するためのスイッチである。
シャッタスイッチ(SW1)218は、シャッタボタン(図示せず)の操作途中でONとなる。シャッタスイッチ218のON入力により、システム制御部207は、AF(オートフォーカス)処理、AE(自動露出)処理、AWB(オートホワイトバランス)処理、EF(フラッシュプリ発光)処理等の動作を開始する。
また、シャッタスイッチ(SW2)219は、シャッタボタン(図示せず)の操作完了でONとなる。シャッタスイッチ219のON入力により、システム制御部207は、撮影に関わる一連の動作、即ち、露光処理、現像処理および記録処理を実行する。
露光処理では、撮像素子203から読み出した信号がA/D変換器204およびメモリ制御部206を介してデジタルデータとしてメモリ210に書き込まれる。現像処理では、画像処理部209やメモリ制御部206がデジタルデータに対して演算を施し、演算の結果、取得されたデジタル画像データがメモリ210に書き込まれる。記録処理では、メモリ210から画像データが読み出され、圧縮伸長部211で圧縮され、記録媒体299に書き込まれる。
操作部220は各種ボタンやタッチパネル等からなる。例えば、メニューボタン、セットボタン、マクロボタン、マルチ画面再生改ページボタン、フラッシュ設定ボタン、単写/連写/セルフタイマ切り替えボタン、メニュー移動+(プラス)ボタン、メニュー移動−(マイナス)ボタン等がある。また、再生画像移動+(プラス)ボタン、再生画像−(マイナス)ボタン、撮影画質選択ボタン、露出補正ボタン、日付/時間設定ボタン等がある。
また、動画撮影の開始と終了を指示するための動画ボタン238が備わっている。動画撮影が行われていないときに動画ボタン238が押下されると動画撮影開始となり、動画撮影中に動画ボタン238が押下されると動画撮影終了となる。また、動画撮影中の静止画撮影においてWBの動作を設定するためのユーザインターフェイスが備わっている。本実施形態では、色再現性優先モード、動画優先モード、静止画優先モードの3種類のモードから1つを選択することができる。
電源制御部221は、電池検出回路、DC−DCコンバータ、通電するブロックを切り替えるスイッチ回路等から構成される。電源制御部221は、電池の装着の有無、電池の種類、電池残量の検出を行い、その検出結果およびシステム制御部207の指示に基づいてDC−DCコンバータを制御し、必要な電圧を必要な期間、記録媒体を含む各部へ供給する。また、電源制御部221は、コネクタ222、223を介して電源部224に接続される。電源部224として、アルカリ電池やリチウム電池等の一次電池、NiCd電池、NiMH電池、Li電池等の二次電池、ACアダプタ等を用いることができる。
インターフェイス225は、メモリカードやハードディスク等の記録媒体と内部バスを接続する。コネクタ226は、メモリカードやハードディスク等の記録媒体との接続を行うコネクタである。記録媒体着脱検知部227は、コネクタ226に記録媒体が装着されているか否かを検知する。
なお、本実施形態では、記録媒体を取り付けるインターフェイスおよびコネクタは1系統備わっている。勿論、記録媒体を取り付けるインターフェイスおよびコネクタは、単数あるいは複数、いずれの系統数備わる構成としてもよい。
また、異なる規格のインターフェイスおよびコネクタを組み合わせた構成としてもよい。インターフェイスおよびコネクタとして、PCMCIAカードやCF(コンパクトフラッシュ(登録商標))カード等の規格に準拠したものを用いて構成してもよい。
さらに、コネクタ226に通信カードを装着することにより、他のコンピュータやプリンタ等の周辺機器との間で画像データや画像データに付属した管理情報を転送し合うことが可能である。そのような通信を実現するインターフェイスおよびコネクタとして、例えば、PCMCIAカードやCF(コンパクトフラッシュ(登録商標))カード等の規格に準拠したものが挙げられる。また、その場合の通信カードとしては、LANカードやモデムカード、USBカード、IEEE1394カード、P1284カード、SCSIカード、PHSカード等が挙げられる。
バリア228は、電子撮像装置200のレンズ201を含む撮像部を覆うことにより、撮像部の汚れや破損を防止する。
通信部229は、RS232C、USB、IEEE1394、P1284、SCSI、モデム、LAN、無線通信等の各種通信機能を有する。コネクタ/アンテナ230は、通信部229により電子撮像装置200を他の機器と接続するためのものである。コネクタ/アンテナ230は、接続形態が有線の場合、コネクタであり、無線通信の場合、アンテナである。
記録媒体299はメモリカードあるいはハードディスク等である。記録媒体299は、半導体メモリや磁気ディスク等から構成される記録部231、電子撮像装置200とのインターフェイス232、および電子撮像装置200と接続を行うためのコネクタ233を備える。
上記ハードウェア構成を有する電子撮像装置において、予め画像データは記録部231に保存されているものとする。また、本電子撮像装置を制御するプログラムは、不揮発性メモリ216に記録されている。このプログラムが実行されると、システム制御部207は、メモリ210に展開され、記録部231に保存された画像データをロードする。そして、システム制御部207は、画像表示部212で画像データの再生表示を行う。
なお、本電子撮像装置として、本実施形態では、デジタルカメラを採用したが、これにはデジタル一眼レフカメラやデジタルカムコーダなどを含むものとする。
なお、コンピュータ100、電子撮像装置200ともに、1つの制御部が装置全体を制御してもよいし、複数の制御部が処理を分担することで、全体として協働して装置全体を制御する手段として機能してもよい。
(電子撮像装置の外観)
図3は電子撮像装置200の外観の一例を示す図である。電源ボタン301は、電子撮像装置200の電源をONまたはOFFにするためのボタンである。モード切替スイッチ217は、静止画や動画を撮影する撮影モード、もしくはメモリカードなどの記憶媒体に保存された画像データを表示する再生モードを選択するためのスイッチである。
シャッタボタン303は、AF、AE等の開始を指示する第1レリーズスイッチと、静止画または動画の撮影の開始を指示する第2レリーズスイッチとを有するボタンである。第1レリーズスイッチ(SW1)はシャッタボタン303を半分押下するとONになり、第2レリーズスイッチ(SW2)はシャッタボタン303を全て押下するとONになる。
メニューボタン304は、電子撮像装置200の設定を変更するための設定メニューを表示部212に表示するためのボタンである。十字ボタン305は、表示部212に表示されたカーソルを上、下、右または左に移動させるためのボタンである。SETボタン306は、カーソルが選択している設定項目、画像データ、値などを電子撮像装置200に設定または選択するためのボタンである。
ディスプレイボタン307は、表示部212をONまたはOFFにするためのボタンである。光源308は、例えばLEDで構成され、画像を記録部231へ転送する最中、または電子撮像装置200が起動時に通信を開始するといった動作をユーザに知らせるために、点滅または点灯する。
スピーカ309は、メニューボタン304、十字ボタン305、SETボタン306やディスプレイボタン307が押された時に、音声を出力する。また、スピーカ309は、電源ボタン301が押下された時の起動音や終了音、シャッタボタン303が押された時のレリーズ音や合焦音、通信開始時などの音声を出力する。また、これらの音声は、ユーザが音声出力機能をONに設定した場合に出力される。三脚接続部310は、三脚を接続するためのコネクタである。
なお、本実施形態では、電源ボタン301およびシャッタボタン303は電子撮像装置200の上面に配置されている。また、モード切り替えスイッチ302、メニューボタン304、表示部212、十字ボタン305、SETボタン306およびディスプレイボタン307は電子撮像装置200の背面に配置されている。また、三脚接続部310は電子撮像装置200の下面に配置されている。
(電子撮像装置のシングル再生モード)
本実施形態における電子撮像装置200は、再生モードの中でさらに複数の表示モードに遷移することが可能である。まず、図4は電子撮像装置200の再生モードにおける1枚(シングル)表示モードの遷移を示す図である。ここで、電子撮像装置200の記録部231には、画像が少なくとも2枚以上格納されているものとする。
操作者は、モード切替スイッチ217を操作し、再生モードを選択すると、表示部212には、記録部231に格納されている画像データ401が全画面表示される。操作者が十字ボタン305の右ボタンを押下することにより、操作部220からシステム制御部207にその押下情報が通知される。システム制御部207は、記録部231から表示すべき画像を読み取り、表示部212に通知する。これにより、表示部212には、画像データ402が表示される。本実施形態では、このような画像データの全画面表示の表示モードを「シングル再生モード」と呼ぶ。
(電子撮像装置の拡大再生モード)
図5は電子撮像装置200の再生モードにおける拡大表示モードの遷移を示す図である。ここで、表示部212には、図4と同様、画像データ401が全画面表示されている状態であるとする。例えば、十字ボタン305の上ボタンを押下することにより、表示部212の画面は、画像データ401から、拡大された画像データ501へと遷移する。この表示シーケンスは、図4と同様である。本実施形態では、このような画像データの拡大表示の表示モードを「拡大再生モード」と呼ぶ。
(電子撮像装置のマルチ再生モード)
図6は電子撮像装置200の再生モードにおけるマルチ(複数)表示モードの遷移を示す図である。本実施形態における「マルチ表示」とは、1画面に複数の画像データを一覧表示することをいう。ここで、表示部212には、図4と同様、画像データ401が表示されている状態であるとする。また、記録部231には、9枚以上の画像が格納されているとする。例えば、十字ボタン305の下ボタンが押下されることにより、表示部212の画面は、画像データ401が複数枚表示されるマルチ表示601に遷移する。この表示シーケンスは、図4と同様である。本実施形態では、このような画像データの複数枚表示の表示モードを「マルチ再生モード」と定義する。
(装置の接続構成)
図7はコンピュータ100に電子撮像装置200が接続された画像表示システムの構成を示すブロック図である。コンピュータ100および電子撮像装置200は、通信ケーブル701を介して接続される。
通信ケーブル701としては、PTP規格に従ってデータを送受信できるものである限り、いかなるものでも構わない。一例として、USB(Universal Serial Bus)ケーブルが利用可能である。また、コンピュータ100と電子撮像装置200とは、有線ではなく、例えばIEEE802.11x(xはa,b,gなど)に準拠した無線インターフェイスによって接続されていてもよい。本実施形態では、コンピュータ100の通信インターフェイス112と電子撮像装置200の通信部229とは、USBの有線ケーブルで接続されており、PTP規格に従った通信を行い、データの送受信を行う。
また、本実施形態のコンピュータ100には、PTPに従って電子撮像装置200と通信可能なプログラムがHDD103にインストールされている。また、コンピュータ100内のHDD103、あるいは電子撮像装置200内の記録部231には、あらかじめ画像データが保存されているものとする。
HDD103内の画像データ、および電子撮像装置200からコンピュータ100へ送信された画像データは、RAM102にロードされ、CPU101によって表示される。
また、本実施形態におけるコンピュータ100は、電子撮像装置で撮影を行うことで生成される、EXIF情報を含むJPEG画像を再生可能である。なお、EXIF情報とは、EXIF規格に準拠した画像ファイルのヘッダに含まれる情報であり、EXIF情報には画像の画素数や撮影日時などが記録されている。
また、本実施形態におけるコンピュータは、画像として、サムネイル画像を取得して表示することを主として説明するが、サムネイル画像に代えて画像ファイルのEXIF情報を取得して表示する場合も、本発明は同様に適用することができる。
(情報処理装置と電子撮像装置の同期表示方法)
図4、図5、図6では、電子撮像装置の画像データの再生機能について説明した。つぎに、これらの再生表示で情報処理装置に同期表示を行わせる方法を示す。
図8は電子撮像装置200の同期表示処理手順を示すフローチャートである。この処理プログラムは、システムメモリ215に格納されており、システム制御部207によって実行される。
システム制御部207は、電子撮像装置200がコンピュータ100に接続されると、PTPに従って情報処理装置内のHDD103にインストールされている電子撮像装置200と通信可能なプログラムを起動させる(ステップS1、図12のS22と対応)。このプログラム(アプリケーション)には、同期表示を可能とするプログラムが含まれている。
システム制御部207は、同期表示を可能とするプログラムを起動させ、同期表示処理を開始する(ステップS2)。そして、ユーザは、電子撮像装置200を操作し、図4、図5あるいは図6に示す再生モードを表示部212に表示させる。
システム制御部207は、ユーザからの操作に応じて、表示モードが変更されたか否かを検知する(ステップS3)。変更が検知されない場合、システム制御部207は検知されるまでループ処理を行う。一方、変更が検知された場合、システム制御部207は、表示モードが変更されたことをコンピュータ100に通知する(ステップS4)。なお、同期表示処理の開始後、最初に再生モードで画像表示させる操作は、表示モードの変更指示に相当するものとする。
そして、システム制御部207は、コンピュータ100からの要求(図12のS24における同期表示処理の開始要求)を受信する(ステップS5)。システム制御部207は、コンピュータ100が必要とする画像表示情報を送信する(ステップS6)。
コンピュータ100が必要とする画像表示情報(表示機能の情報)は、図9に示す通りである。図9は画像表示情報をデータ通信する際に必要となる構造体の一例を示すテーブルである。データ構造1000とデータ構造1001は、ユニオン(共用体)型になっている。データ構造1000、1001を有する画像表示情報は、システムメモリ215に格納されている。
データ構造1000において、「Length」とは、転送するデータの全長を表す。「Camera State」とは、カメラ状態を示し、再生状態にある、撮影状態にある、もしくはその他の状態にあるといった、電子撮像装置200自身が保持する状態を示す。
「Camera Mode ID」とは、「Camera State」の状態に従属する動作モードを示す。本実施形態における「Camera Mode ID」は、シングル表示モード、マルチ表示モード、拡大表示モードである。「Camera Mode ID」以降のデータ構造は、「Camera Mode ID」の値によって構造が異なる。
「Camera Mode ID」がシングル表示モードであった場合、表示部212は、画像データ401や画像データ402のような画面を表示する。このとき、「Object Handle」には、現在表示している画像データの変数値(Object Handle)が格納される。
また、「Camera Mode ID」が拡大表示モードであった場合、表示部212は、画像データ501のような画面を表示する。このとき、「Object Handle」には、現在表示している画像データの変数値(Object Handle)が格納される。また、現在表示している画像の、全体の解像度におけるカメラの表示領域の座標(X1,Y1)、(X2,Y2)が格納される。この座標(X1,Y1)、(X2,Y2)は、「Coordinates X1」、「CoordinatesY1」、「Coordinates X2」、「CoordinatesY2」として格納される。
一方、データ構造1001はマルチ表示モードにおけるデータ構造例を示す。データ構造1001において、「Length」、「Camera State」および「Camera Mode ID」は、データ構造1000と同様である。
「MultiMode Type」には、マルチ表示に関するマルチ表示情報、具体的には、複数枚の画像がどのようにレイアウトされるかを示す情報が格納される。例として、図6に示すような3×3のマトリクス表示が挙げられる。また、複数枚表示のレイアウトの例として、図示しないが、M×Nのようなマトリクス表示だけではなく、円形に並べた表示や、斜めに並べた表示であってもよい。本実施形態では、「MultiMode Type」が3x3のマトリクス表示を行う描画方法である場合を示す。
また、この値は、1台の電子撮像装置で複数のマルチ表示のレイアウトを持っていてもよい。その場合、マルチ表示のレイアウトが変更される毎に、「MultiMode Type」の値は変更され、表示情報としてコンピュータ100に送信される。また、電子撮像装置によってマルチ表示のレイアウトが個々に異なる場合、情報処理装置と接続される個々の電子撮像装置のマルチ表示のレイアウトと同期する表示処理が行われる。
「Cursor Place」には、カーソル位置を示す情報が格納されている。3×3のマトリクスの要素1つ1つに0番〜8番と場所を割り当てることで、どの画像データの位置にカーソルが当てられているか、つまりどの画像データが選択状態にあるかを判別することが可能となる。
「Object Handle Num」には、オブジェクトの数が格納される。今回、3×3のマトリクス表示であるので、「9」の値が格納される。「Object Handle」には、9個分の画像データの変数値(Object Handle)が格納される。
図10は電子撮像装置200と同様の構成を有し、4×3のマトリクス表示が可能である電子撮像装置2000の再生モードにおけるマルチ表示モードの遷移を示す図である。この電子撮像装置2000は、十字ボタンの下を押下すると、画面レイアウト1101が表示される。電子撮像装置2000のマルチ再生モードは、4×3の12個の画像を表示可能であるので、表示情報のデータ構造1001の「Multi Mode Type」には、レイアウトが4×3であることを示す値が格納される。また、「Object Handle Num」には、「12」の値が格納される。
コンピュータ100は、この値に沿ったレイアウトを表示するような処理を行うことになる。図11はコンピュータ100と電子撮像装置2000の表示例を示す図である。図11に示すように、電子撮像装置2000は4×3のマルチ表示を行う。そして、コンピュータ100も、「MultiMode Type」の値が、レイアウトが4×3であることを示す値であるので、4×3のマルチ表示を行う。この表示処理における情報処理装置側の処理の詳細については後述する。
このような定義を持つことで、マルチ表示モードをコンピュータで通知するために必要な情報を汎用的に作ることができる。また、表示されるべき箇所に、表示されている画像がない場合や、カーソルの位置が特殊な状態にある場合、特別な値を定義することによって実現することが可能である。
ここでは、カーソルの値が「0」の場合、全画像を選択している状態を示す。また、表示すべき「Object Handle」の値が「0」であった場合、正しくないものとみなし、表示しないとしている。
ステップS6において、電子撮像装置200は、上記画像表示情報をコンピュータ100に通知した後、コンピュータ100からの再要求があるか否かを検知する(ステップS7)。ここでは、電子撮像装置側のマルチ表示が、情報処理装置で同期表示できない場合、情報処理装置から表示の変更要求が送信される。再要求がない場合、システム制御部207は、ステップS10の処理に進む。
一方、ステップS7で再要求があった場合、システム制御部207は、マルチ表示の変更を行う(ステップS8)。例えば、最初に、電子撮像装置のマルチ表示が10×10のマトリクス表示に変更され、情報処理装置では10×10のマルチ表示が不可能であった場合、電子撮像装置のマルチ表示は、情報処理装置が表示可能なマルチ表示に変更される。本実施形態では、画像が最小数となるマルチ表示に自動的に変更される。例えば、3×3のマトリクス表示に変更される。
システム制御部207は、電子撮像装置の画像表示情報を、再度、コンピュータ100に送信する(ステップS9)。この後、システム制御部207は、同期表示処理が終了されたか否かを検知する(ステップS10)。同期表示処理が終了されない場合、システム制御部207は、ステップS3の処理に戻り、表示が変更されたかを検知するループ処理を行う。一方、同期表示処理が終了された場合、システム制御部207は、本処理を終了する。
図12はコンピュータ100の同期表示処理手順を示すフローチャートである。この同期表示処理を行うプログラムは、HDD103にインストールされており、CPU101によって実行される。
CPU101は、コンピュータ100に電子撮像装置200が接続されたことを検知すると(ステップS21)、電子撮像装置200からの指示に従ってアプリケーションを起動する(ステップS22)。CPU101は、同期表示処理が開始されたか否かを検知する(ステップS23)。同期表示処理が開始されたことを検知しない場合、CPU101は、ステップS23に戻り、同期表示処理の開始が検知されるまでループ処理を行う。
一方、ステップS23で同期表示処理が開始されたことを検知した場合、CPU101は、電子撮像装置200から再生モードの変更の通知を受けると(図8のS4参照)、同期表示処理の開始要求を電子撮像装置200に送信する(ステップS24)。ステップS24の処理は情報要求手段の一例である。この同期表示処理の開始要求に応じて、電子撮像装置200から表示情報(表示機能の情報)が送信される(図8のS6参照)。この表示情報には、前述したマルチ表示情報も含まれる。また、電子撮像装置200において、表示モードが変更されたり、表示する画像が変更されると、その都度、更新された表示情報が情報処理装置に対して送信される。コンピュータ100(CPU101)は、その表示情報を受信する(ステップS25)。ここで、表示情報(画像表示情報)とは、前述した図9に示す情報である。すなわち、受信した表示情報には、「Length」、「Camera State」、「Camera Mode ID」等が含まれる。また、前述した動作モードを示す「Camera Mode ID」、マルチ表示のレイアウトを示す「MultiMode Type」、カーソル位置を示す「Cursor Place」等の情報が含まれる場合もある。また、「Cursor Place」の情報を受信することにより、コンピュータ100側でも、どの画像データの位置にカーソルが当てられているか、つまりどの画像データが選択状態にあるかを把握することができる。
CPU101は、電子撮像装置200がマルチ表示モードに設定されたか否かを検知する(ステップS26)。マルチ表示モードの設定が検知されない場合、CPU101はステップS28の処理に進む。一方、マルチ表示モードに設定されたことを検知した場合、CPU101はカメラの表示能力の確認を行う(ステップS27)。
ここでは、受信した表示情報のデータ構造1001に示す、「MultiMode Type」と「ObjectHandle Num」が参照される。図6に示した電子撮像装置200の場合、「MultiMode Type」には、3×3を示す値が格納されており、「ObjectHandle Num」には、「9」の値が格納される。また、図10に示した電子撮像装置2000の場合、「MultiMode Type」には、4×3を示す値が格納されており、「ObjectHandle Num」には、「12」の値が格納される。
一方、ステップS26でマルチ表示モードに設定されたことが検知されなかった場合、CPU101はその他の同期表示処理を行う(ステップS28)。電子撮像装置200の再生モードがマルチ表示モード以外のモードである場合、CPU101は、図9の表示情報(データ構造1000)の内容に従って、コンピュータ100の表示装置(Display)107に画像を表示する。例えば、電子撮像装置200がシングル表示モードで表示されている場合、表示装置(Display)107にも同様の画像が表示される。また、拡大表示モードにおいても同様である。この後、CPU101はステップS25の処理に戻る。
ステップS27でカメラの表示能力を確認した後、CPU101は、電子撮像装置200のマルチ再生モードにおける表示レイアウトがコンピュータ100において表示可能であるか否かを判定する(ステップS29)。表示不可能である場合、CPU101はステップS32の処理に進む。
一方、表示可能である場合、CPU101は、電子撮像装置200から画像データを取得する(ステップS30)。この画像データの取得に際し、CPU101は、表示情報(データ構造1001)に示される、必要な画像情報をPTP規格に基づいて取得する。
CPU101は、ステップS30で取得した画像データを、電子撮像装置200の表示レイアウトに合わせて画像データを表示する(ステップS31)。例えば、図6に示すマルチ再生モードであった場合、CPU101は、表示情報に格納されている情報に基づき、3×3のレイアウトに合わせて画像を表示する。図10に示すマルチ再生モードであった場合、CPU101は、4×3のレイアウトに合わせて画像を表示する。4×3のレイアウトに合わせた画像の表示の一例は、図11に示した通りである。
また、ステップS31では、CPU101は、カーソル位置を示す「Cursor Place」の情報を基に、どの画像データの位置にカーソルが当てられているか、つまりどの画像データが選択状態にあるかを識別可能に表示する。例えば、選択状態にある画像データを識別可能に表示する場合、表示される画像の枠を特定の色で表示したり、強調して表示することが行われる。
一方、ステップS29で表示不可能である場合、CPU101は、電子撮像装置200のマルチ表示の変更要求を行う(ステップS32)。本実施形態では、電子撮像装置200のマルチ再生モードがコンピュータ100で表示不可能なレイアウトや画像の個数を有するモードであった場合、CPU101は電子撮像装置に対してマルチ表示の変更を要求する。
CPU101は、電子撮像装置200のマルチ表示が変更された表示情報を受信する(ステップS33)。電子撮像装置200は、ステップS32で変更要求を受け、マルチ表示を変更する。そして、電子撮像装置200は画像表示情報(再生情報)を再びコンピュータ100に送信する。
CPU101は、この更新された画像表示情報(再生情報)を受信する(ステップS33)。情報処理装置(CPU101)は、ステップS33で受信した表示情報を解析し、電子撮像装置200のマルチ表示の内容に合わせて、表示装置(Display)107に画像データを表示する(ステップS34)。このステップS34の処理においても、ステップS31の処理と同様の表示処理が行われる。例えば、CPU101は、カーソル位置を示す「Cursor Place」の情報を基に、どの画像データの位置にカーソルが当てられているか、つまりどの画像データが選択状態にあるかを識別可能に表示する。なお、ステップS31、S34の処理は表示制御手段の一例である。
ステップS31、S34の処理後、CPU101は、アプリケーションが終了されたことを検知する処理を行う(ステップS35)。アプリケーションが終了されている場合、CPU101は本同期表示処理を終了する。一方、アプリケーションが終了されていない場合、CPU101は、ステップS25の処理に戻り、電子撮像装置200から送信される表示情報を受信する処理を行う。
このように、本実施形態の画像表示システムでは、コンピュータ100は、電子撮像装置200から画像表示情報を取得し、さらに、電子撮像装置200のメモリ210に記憶された複数の画像データを受信する。そして、コンピュータ100は、取得した画像表示情報に基づいてマルチ表示を実行し、コンピュータ100の表示装置107に、受信した複数の画像データを一覧表示する。これにより、マルチ表示を実行可能である電子撮像装置の能力に応じて情報処理装置に画像を表示させることができる。従って、電子撮像装置の画像データを情報処理装置の表示部に表示させる際、ユーザは違和感なく快適に画像を閲覧することができる。このように、電子撮像装置のマルチ表示の表示能力(機能)に合わせて、電子撮像装置の表示と情報処理装置の表示との同期表示処理が行われるので、電子撮像装置を操作することで情報処理装置の表示部を操作することが可能となり、ユーザの視認性が向上する。
また、情報処理装置側から電子撮像装置に問い合わせることで、電子撮像装置の種類に応じたマルチ表示の同期表示処理が可能となる。
また、情報処理装置側でマルチ表示が不可能であった場合、電子撮像装置のマルチ表示を、情報処理装置が表示可能なマルチ表示に変更させることができる。このように、電子撮像装置のマルチ表示が情報処理装置で同期表示処理できない場合でも、情報処理装置の表示能力に合わせて電子撮像装置のマルチ表示が変更されるので、同期表示処理に矛盾が生じず、ユーザは快適に画像を閲覧することができる。
また、情報処理装置の表示装置に複数のデータを表示する際、複数の画像データを容易に特定することができる。また、どの画像データが選択状態にあるかを容易に判別することができる。
また、情報処理装置の表示装置に複数のデータを表示する際、画像データの数を電子撮像装置に揃えることができる。また、情報処理装置の表示装置に複数のデータを表示する際、マルチ表示のレイアウトを電子撮像装置に揃えることができる。
なお、本発明は、上記実施形態の構成に限られるものではなく、特許請求の範囲で示した機能、または本実施形態の構成が持つ機能が達成できる構成であればどのようなものであっても適用可能である。
例えば、上記実施形態では、外部装置として、電子撮像装置を示したが、これに限らず、複数の画像データをマルチ表示可能に記憶する機器であればよく、携帯情報端末などであってもよい。
また、上記実施形態では、電子撮像装置として、コンパクトタイプのデジタルカメラを例に説明したが、本発明は、デジタルビデオカメラ、デジタルSLR(一眼レフカメラ)等にも適用可能である。
また、本発明の目的は、以下の処理を実行することによって達成される。即ち、上述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)が記憶媒体に格納されたプログラムコードを読み出す処理である。
この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施の形態の機能を実現することになり、そのプログラムコード及び該プログラムコードを記憶した記憶媒体は本発明を構成することになる。
また、プログラムコードを供給するための記憶媒体としては、次のものを用いることができる。例えば、フロッピー(登録商標)ディスク、ハードディスク、光磁気ディスク、CD−ROM、CD−R、CD−RW、DVD−ROM、DVD−RAM、DVD−RW、DVD+RW、磁気テープ、不揮発性のメモリカード、ROM等である。または、プログラムコードをネットワークを介してダウンロードしてもよい。
また、コンピュータが読み出したプログラムコードを実行することにより、上記実施の形態の機能が実現される場合も本発明に含まれる。加えて、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているOS(オペレーティングシステム)等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
更に、前述した実施形態の機能が以下の処理によって実現される場合も本発明に含まれる。即ち、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれる。その後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPU等が実際の処理の一部または全部を行う場合である。