以下、図面を参照して本発明の好適な実施形態を説明する。
(第1の実施形態)
本実施形態では、本発明に係る撮像装置の一例として、デジタルカメラ100を説明する。
<デジタルカメラ100の外観について>
図1は、本発明に係る撮像装置の一例としてのデジタルカメラ100の背面図を示している。
表示部28は画像や各種情報を表示する表示部である。シャッターボタン60は、静止画撮影指示を行うための操作部である。動画撮影ボタン70は、動画撮影指示を行うための操作部材である。操作部62はユーザからの各種操作を受け付ける各種スイッチ、ボタン等の操作部材より成る操作部であり、ユーザからの操作を受付ける。操作部62は、デジタルカメラ100の電源ON、OFFを切り替える電源スイッチ、デジタルカメラ100の動作モードを切り替えるモード切り替えスイッチ、メニュー設定を行うメニューボタン、メニューや設定を指示する十字キーボタンなどが含まれている。記録媒体91はメモリカードやハードディスク等の記録媒体である。蓋93は記録媒体91を収納するための蓋である。
104は、被写体を撮影している撮影者を撮影、または、表示部28に表示されている画像を観賞している鑑賞者を撮影するための、カメラモジュールであり、撮影可能なレンズ、撮像素子等からなる。以後、このカメラをインカメラと呼ぶことする。
インカメラ104は、鑑賞者または撮影者を撮影するために、デジタルカメラ100の表示部28が設けられている側を撮影するように配置されている。また、図1では、表示部28が設けられているデジタルカメラの背面側の外観図であるが、デジタルカメラ100の表側の面には、被写体側を撮影する撮像部であるアウトカメラが設けられている。アウトカメラとサブカメラの光軸(撮影方向)は互いに略平行であり、アウトカメラの光軸(撮影方向)は、サブカメラの光軸(撮影方向)と逆方向に設定されている。
<デジタルカメラ100の構成について>
図2は、本発明の実施例であるデジタルカメラ100の構成を示すブロック図である。
10は、デジタルカメラ100の撮影レンズ11を含む撮像部を覆う事により、撮像部の汚れや破損を防止するバリアである保護手段である。11は撮影レンズ、12は絞り機能を備えるシャッター、13は光学像を電気信号に変換するCCDやCMOS素子等で構成される撮像素子、15は撮像素子13のアナログ信号出力をディジタル信号に変換して画像データを取得するためのA/D変換器である。これらの、バリア10、撮影レンズ11、シャッター12、撮像素子13により、アウトカメラが構成されている。
同様に101の撮影レンズは撮影レンズ11とは別にデジタルカメラ100を使用している撮影者を撮影可能な方向に設置されているズームレンズ、フォーカスレンズを含むレンズ群である。102は絞り機能を備えるシャッターである。103は撮影者側の光学像を電気信号に変換するCCDやCMOS素子等で構成される撮像素子である。これらの、撮影レンズ101、シャッター102、撮像素子103により、インカメラが構成されている。
14は撮像素子13や103、A/D変換器15、D/A変換器21にクロック信号や制御信号を供給するタイミング発生回路であり、メモリ制御回路22及びシステム制御部50により制御される。
インカメラについては、インカメラ撮影機能の有効、無効を設定可能である。インカメラ撮影機能を有効に設定されている場合は、撮像素子103から読み出したデータに基づいて生成された画像、つまりインカメラで撮影した画像が外部記録媒体91に記録されることになる。そして、インカメラ撮影機能を無効にしている場合は、撮像素子103を駆動させない、つまり、インカメラでの撮影を行わない。または、撮像素子103を駆動させ、撮影は行ったとしても、撮像素子103からデータを読み出さずに、外部記録媒体91への撮像素子103の出力に基づく画像の記録は行わないようにする。
20は画像処理回路(画像処理部)であり、A/D変換器15からのデータ或いはメモリ制御回路22からのデータに対して所定の画素補間処理や色変換処理を行う。
また、画像処理部20においては、撮像した画像データを用いて所定の演算処理を行う。そして、得られた演算結果に基づいてシステム制御部50が露出制御部40、測距制御部41に対して制御を行い、AF(オートフォーカス)処理、AE(自動露出)処理、EF(フラッシュプリ発光)処理を行っている。
画像処理部20において、撮像した画像データを用いて所定の演算処理を行い、得られた演算結果に基づいてAWB(オートホワイトバランス)処理も行っている。
さらに、画像処理部20においては、メモリ25に格納された画像を読み込んでJPEG方式やMPEG−4 AVC/H.264方式での圧縮処理或いは伸長処理を行い、処理を終えたデータをメモリ25に書き込む。また、アウトカメラで撮影した画像と、インカメラで撮影した画像の合成も、この画像処理部20において行われる。記録する画像の合成の場合は、アウトカメラの画像の上にインカメラの画像を合成する。表示の場合は、アウトカメラ画像の上にインカメラの画像を合成し、さらにその上に、アイコンや情報表示用のビットマップやフォントデータを重ねて合成する。
22はメモリ制御回路(メモリ制御部)であり、A/D変換器15、タイミング発生回路14、画像処理部20、画像表示メモリ24、D/A変換器21、メモリ25を制御する。
A/D変換器15のデータが画像処理部20、メモリ制御回路22を介して、或いはA/D変換器15のデータが直接メモリ制御回路22を介して、画像表示メモリ24或いはメモリ25に書き込まれる。
24は画像表示メモリ、21はD/A変換器である。28はTFT、LCD等から成る表示部であり、D/A変換器21を介して画像表示メモリ24に書き込まれた表示用の画像データに基づいて表示を行う。表示部28を用いて撮像した画像データを逐次表示すれば、ライブ映像を表示する電子ファインダ機能を実現することが可能である。このように、表示部28は、撮影した画像やさらに、メニューや設定の変更を行うためのグラフィックユーザインタフェースを表示するためにも用いられる。また、表示部28は、TV等の外部表示装置に映像信号を出力する端子も備えている。システム制御部50は、表示部28に対する表示制御を行うだけでなく、外部表示装置に撮影した画像やグラフィックユーザインタフェースを表示させるように表示制御を行ってもよい。
25は撮影した静止画像や動画像を格納するためのメモリであり、所定枚数の静止画像や所定時間の動画像を格納するのに十分な記憶量を備えている。また、メモリ25はシステム制御部50の作業領域としても使用することが可能である。
40は絞り機能を備えるシャッター12、102を個別に制御する露光制御回路(部)である。
41は撮影レンズ11、101のフォーカシングを個別に制御する測距制御回路(部)、42は撮影レンズ11、101のズーミングを個別に制御するズーム制御回路(部)、43はバリア10の動作を制御するバリア制御回路(部)である。
50は本デジタルカメラ全体を制御するシステム制御回路(システム制御部)である。
51は電気的に消去・記録可能な不揮発性メモリであり、例えばEEPROM等が用いられる。不揮発性メモリ51には、プログラムや各種設定情報等が記録されている。
60はシャッターボタンで、シャッターボタン60の操作途中(半押し状態)でシャッタースイッチSW1がONとなり、SW1信号がシステム制御部50に入力される。SW1信号が入力されると、システム制御部50は、AF(オートフォーカス)処理、AE(自動露出)処理、AWB(オートホワイトバランス)処理、EF(フラッシュプリ発光)処理等の撮影準備動作開始を指示する。そして、シャッターボタン60を操作完了(全押し)するとシャッタースイッチSW2がONとなり、SW2信号がシステム制御部50に入力される。SW2信号が入力されると、システム制御部50は、アウトカメラによる静止画の撮影、記録動作の開始を指示する。静止画の撮影、記録動作の開始が指示されると、まず、撮像素子13から読み出した信号をA/D変換器15、メモリ制御回路22を介してメモリ25に画像データを書き込む露光処理が行われる。そして、メモリ25に書き込まれた画像データに対して画像処理部20やメモリ制御回路22での演算を用いた現像処理が行われ、現像処理が施された画像データに対し、画像処理部20により圧縮を行ってメモリ25に格納する。その後、圧縮された画像データをメモリ25から読み出して、カードコントローラ90を介して、外部記録媒体91に画像データを書き込む。このようにして、SW2信号の入力に応じて、静止画像データの撮影および記録という一連の静止画撮影、静止画記録動作が行われる。
62は、システム制御部50の各種の動作指示を入力するための各種ボタンやタッチパネル等からなる操作部である。電源ボタン、メニューボタン、撮影モード/再生モード/その他特殊撮影モードの切替えを行うモード切替スイッチ、十字キー、セットボタン等である。また、マクロボタン、マルチ画面再生改ページボタン、フラッシュ設定ボタン、単写/連写/セルフタイマー切り替えボタン等も含まれる。さらに、メニュー移動+(プラス)ボタン、メニュー移動−(マイナス)ボタン、再生画像移動+(プラス)ボタン、再生画像−(マイナス)ボタン、撮影画質選択ボタン、露出補正ボタン、日付/時間設定ボタン等も含まれる。さらに、音声認識装置等を用いてもよく、上記のボタンやタッチパネルを単数あるいは複数の組み合わせで構成される。
70は動画撮影ボタンであり、動画撮影ボタンが操作(押下)されたことに応じて、システム制御部は、アウトカメラによる動画の撮影を開始するように指示する。動画撮影開始が指示されると、撮像素子13から信号を読み出し、その信号をA/D変換器15で変換して画像データ取得し、画像処理部20により動画圧縮処理を行なって外部記録媒体91に記憶する。この、動画圧縮処理および記録処理を、周期的に行うことで、動画を外部記録媒体91に記録する。この動画圧縮処理および記録処理は、再び動画撮影ボタン70が押下されるまで実行される。再び動画撮影ボタン70が押下されると、動画圧縮処理を終了し、それまで記録した動画を1つの動画ファイルとして外部記録媒体91に記録する。
81は電源制御回路(部)である。
80はアルカリ電池やリチウム電池等の一次電池やNiCd電池やNiMH電池、Li電池等の二次電池、ACアダプター等からなる電源である。
90はメモリカード等の外部記録媒体とデータの送受信を行うカードコントローラである。91はメモリカード等の外部記録媒体である。
なお、画像処理部20、メモリ制御部22、露光制御部40、測距制御部41、ズーム制御部42、バリア制御部43、電源制御部80、カードコントローラ90等の各部は、それぞれの処理を行うための専用の回路、または、プログラムされたプロセッサである。
<静止画・動画撮影同時記録モードについて>
デジタルカメラ100は、静止画撮影モードとして、静止画・動画撮影同時記録モードを有している。静止画・動画撮影同時記録モードでは、シャッターボタン60を全押ししたことに応じて、アウトカメラで静止画を撮影して記録すると共に、静止画撮影前にアウトカメラで撮影した動画も外部記録媒体91に記録する。静止画・動画撮影同時記録モードにおいては、静止画の撮影毎に裏で動画(ショートムービー)を自動的に記録し、静止画・動画撮影同時記録モードで記録した動画(ショートムービー)は、毎回同じ動画ファイルに記録される。そのため、ユーザは何も操作しなくても、静止画撮影時の状況をおさめた動画を自動で作成することができ、さらに、複数回の静止画撮影で得られた動画(ショートムービー)を連続的に観賞することができる1つのダイジェスト動画を得ることができる。以降、静止画・動画撮影同時記録モードにおいて動画(ショートムービー)が記録される動画ファイルをダイジェスト用動画ファイルと呼ぶこととする。静止画・動画撮影同時記録モードは、ユーザが操作部62に含まれるモード切り替えスイッチにより静止画の撮影モード設定を切り替えることにより、設定可能である。
静止画・動画撮影同時記録モードにおいて、前述したようにインカメラ撮影機能を有効または無効に設定することができる。インカメラ撮影機能を有効に設定することで、インカメラで撮影した画像を、アウトカメラに撮影した画像に重畳合成して記録することが可能である。インカメラ撮影機能の設定は、ユーザが操作部を操作することにより有効または無効に設定可能である。インカメラ撮影機能の設定ではなく、インカメラで撮影した画像の表示の入/切をユーザの操作により設定可能とし、インカメラ画像の表示が入に設定されている場合にインカメラ撮影機能を有効にし、表示が切の場合にインカメラ撮影機能を無効にしてもよい。
また、静止画・動画撮影同時記録モードにおいては、さらに、ユーザが操作部を操作することによりストップモーションの入/切を設定可能である。ストップモーション設定が入に設定されている場合は、撮影した静止画を動画に変換したストップモーションが作成され、作成されたストップモーションが、静止画・動画撮影同時記録モード用の動画ファイルに記録される。つまり、静止画撮影前の動画(ショートムービー)に続いて、ストップモーションが記録される。ストップモーションの設定が切に設定されている場合は、ストップモーションの生成および記録は行われない。また、ストップモーションの設定が入に設定され、かつ、インカメラ撮影機能を有効に設定されている場合には、撮影した静止画のストップモーションに、インカメラで撮影された動画が合成された合成動画が記録される。ここで、ストップモーショントは、静止動画のことである。静止画を撮影したときに得られた1つの画像データを動画データに変換する処理を繰り返し行うことにより、所定時間分の動画データが作成される。1つの画像データから所定時間分の動画データが生成されるため、同じ画像が続く動きのない静止動画となる。
なお、静止画・動画撮影同時記録モードが設定されているときに、動画撮影ボタンで70が押下された場合には、アウトカメラによる動画の撮影および記録処理が開始され、静止画の撮影は行われない。この時記録される動画には、インカメラ撮影機能の設定が有効に設定されている場合は、インカメラで撮影した動画合成されて記録され、インカメラ撮影機能の設定が無効の場合は、アウトカメラで撮影した動画のみが記録される。
つまり、静止画・動画撮影同時記録モードが設定されている場合、シャッターボタン60により静止画の撮影指示があった時には、静止画と動画が記録されるが、動画撮影ボタン70により動画撮影の指示があっても、動画は記録されるが静止画は記録されない。
<静止画・動画撮影同時記録モードでの撮影処理について>
図3、図4は、デジタルカメラ100の静止画・動画撮影同時記録モード時の撮影動作について説明する。なお、これらの処理は、システム制御部50が不揮発性メモリ51から読み出したプログラムに基づいて各部の制御や演算処理、判断等を行うことにより実現される。
まず、デジタルカメラ100において、静止画・動画撮影同時記録モードが選択されると、ステップS301において、露出制御部40によって制御された適正露出の撮像素子13の出力を基に表示用画像を生成する。つまり、アウトカメラで撮影したメイン画像に基づいて表示用画像が生成される。以後、アウトカメラの撮像素子13の出力から作成された画像をメイン画像と呼ぶこととする。生成した表示用画像は、メモリ25に一時的に格納する。
ステップS302では、アウトカメラの撮像素子13の出力であるメイン画像を基に動画記録用画像(メイン動画)を生成する。以後、アウトカメラの撮像素子13の出力から作成された動画をメイン動画と呼ぶこととする。生成した動画記録用画像は、メモリ25に一時的に格納する。
ステップS303では、デジタルカメラ100に設定されているインカメラに関する設定を確認する。インカメラ撮影機能が有効となるように設定されていた場合、ステップS304に進み、ステップS304〜S308の処理が行われる。インカメラ撮影機能が無効となるように設定されていた場合には、ステップS304〜S308処理は行わずに、ステップS309に進む。
ステップS304では、デジタルカメラ100に設定されているインカメラの表示位置、表示サイズに関する設定を不揮発性メモリ51から取得する。本実施形態では、インカメラの表示位置、表示サイズをユーザがメニュー等で指示することができ、設定された表示位置、表示サイズの情報が不揮発性メモリ51に格納されている。
ステップS305にでは、露出制御部40によって制御された適正露出の撮像素子103の出力を基に、表示用のインカメラ画像を生成する。生成される画像のサイズは、ステップS304で取得したサイズを基に生成される。
ステップS306において、ステップS301で作成したメイン画像の表示用画像とステップS305で作成された表示用インカメラ画像とを合成して、表示用合成画像を生成する。このとき作成される画像は、メイン画像の上にインカメラ画像が重畳合成された画像になる。表示用のメイン画像500に重畳して表示用インカメラ画像501を配置する場合、表示用インカメラ画像501を重畳する位置は、ステップS304で取得したインカメラ表示位置情報に従う。ステップ306で生成さした表示用合成画像は、ステップS301でメモリ25に格納した表示用画像を上書きする形でメモリ25に一時的に格納する。つまり、メモリ25に格納される表示用画像が、ステップS301で生成したメイン画像から、ステップS306で生成した合成画像に置き換えられる。なお、本実施形態では、メイン画像の上にインカメラ画像を重畳合成したが、インカメラ画の上に、小さなメイン画像を重畳合成するようにしてもよい。
ステップS307では、露出制御部40によって制御された適正露出の撮像素子103の出力を基に動画記録用のインカメラ動画を生成する。以後、インカメラの撮像素子103の出力から作成された動画をインカメラ動画と呼ぶこととする。生成されるインカメラ動画のサイズは、ステップS304で取得したサイズを基に生成される。
ステップS308では、ステップS302で作成した動画記録用のメイン動画とステップS307で作成された動画記録用のインカメラ動画を合成して動画記録用の動画として合成動画を生成する。インカメラ動画の合成位置は、表示用画像と同様の位置に合成されるようにするため、ステップS306と同様にインカメラ表示位置情報に従って、動画記録用メイン動画に動画記録用インカメラ動画を重畳して合成動画を作成する。つまり、S301またはS306で生成される表示用画像とS302またはS308で生成される動画記録用の画像サイズは、メイン画像、インカメラ画像ともにそれぞれ異なっている。しかし、表示用画像と動画記録用画像とで、メイン画像、インカメラ画像のサイズの比率が同じになるように作成され、表示されている画像と記録される画像が同じとなるようにそれぞれ表示用画像、動画用画像を作成する。308で生成した動画記録用の合成動画は、動画記録用画像としてメモリ25に一時的に記録する。つまり、メモリ25に記録される動画記録用画像が、ステップS302で生成したメイン動画から、ステップS308で生成した合成動画に書き換えられる。
ステップS309では、メモリ25に一時的に格納されている表示用画像を表示部28に表示する。つまり、インカメラ撮影機能が有効に設定されている場合は、ステップS306で生成した、合成画像が表示され、インカメラ撮影機能が無効の場合は、ステップS301で生成したメイン画像が表示される。
次に、ステップS310において、メモリ25から動画記録用画像を読み出して画像処理部20により動画圧縮処理を行い、動画データへと圧縮し、メモリ25に格納する動画記録用画像の動画圧縮処理を開始する。インカメラ撮影機能が有効の場合は、ステップS308で生成した合成画像に基づいて動画データを生成し、インカメラ撮影機能が無効の場合は、ステップS302で生成したメイン画像に基づいて動画データを生成して、メモリ25に格納する。また、動画データの圧縮とともに不図示のマイク等で入力された音声データについてもシステム制御部50に含まれる音声圧縮処理を用いて、圧縮し、メモリ25に格納する。ステップS301〜S310の処理は、基本的には、静止画・動画撮影同時記録モードの間繰り返し実行されることになる。そこで、ここでは、リングバッファ形式で最大4秒間分の圧縮された動画データをメモリ25に保持しておく。
このように、ステップS301〜S310においては、表示用画像の生成および表示処理と、動画記録用画像の生成および動画圧縮処理(メモリ25への一時記録)が行われる。これらの処理は、上記の順番に限定されない。表示用画像の生成および表示処理と、動画記録用画像の生成および一時記録を並行して実行してもよい。
次に、ステップS311において、静止画、動画同時記録モードからのモード変更が行われたか判定する。モード切り替えスイッチによるほかの撮影モードの変更や再生モードへの移行、メニューボタンによる設定メニューへの移行、電源スイッチによる電源OFFなどがモード変更に含まれる。ステップS311においてモード変更が行われたと判断された場合は、ステップS312に進み、動画圧縮処理を終了し、メモリ25に格納していた動画データ、音声データを破棄して、静止画、動画同時記録モードを終了する。ステップS311においてモード変更が行われていないと判断された場合は、ステップS313に進む。
ステップS313では、撮影設定の変更が行われたか確認する。変更されたかを確認する撮影設定項目としては、ホワイトバランス、露出補正値、MF・マクロ撮影などのフォーカス方法切り替え、静止画の画像サイズや圧縮率など撮影時に被写体や状況に応じて、即座に切り替えが必要となる撮影条件が含まれる。これらの撮影設定は、操作部62に含まれる割り当てられた撮影設定変更ボタンや表示部28に併設されたタッチパネルへのユーザ操作に応じて、ユーザが撮影設定を変更するためのGUI画面を表示中の画面に一時的に重畳して提供する。このGUI画面において操作部62またはタッチパネルを操作することより撮影設定を変更することができる。ステップS313において撮影設定が変更されたと判断された場合は、ステップS314に進み、ユーザの変更に応じて撮影設定を変更し、撮影設定が変更されていない場合は、ステップS315に進む。
ステップS315では、インカメラの設定の変更が行われたか確認する。インカメラの設定に関してもユーザの操作に応じて設定可能な項目がある。設定可能な項目としては、表示位置、表示サイズ、また、インカメラの撮影機能の有効・無効の切り替えがある。これらのインカメラに関する設定項目についても操作部62や表示部28に併設されたタッチパネルへのユーザ操作に応じてユーザが設定を変更できる。
ステップS315でインカメラの設定が変更されたと判定された場合は、ステップS316に進み、動画圧縮処理を停止し、メモリ25に格納していた動画データ、音声データを破棄する。これは、インカメラ表示の設定を変更するとそれまでに記録された動画データとこれから撮影される動画データでインカメラ表示の切り替わりが記録され、動画データの品位が低下することを防ぐ目的がある。次に、ステップS317において、変更されたインカメラの設定が、インカメラ撮影機能の有効・無効設定であるかを確認する。ステップS317においてインカメラ撮影機能の有効・無効が切り替えられたと判定された場合は、ステップS318でインカメラ設定の有効・無効をユーザの指示に従って変更する。そして、ステップS301に戻り、変更された設定に基づいて、ステップS301からの処理を再度行う。ステップS317において変更されたインカメラの設定がインカメラ撮影機能の有効・無効ではなくインカメラ表示の位置、サイズであると判定された場合は、ステップS319において、ユーザの指示に従ってインカメラ表示の位置、サイズをそれぞれ変更する。その後、ステップS301に進み、新たに設定された内容に応じて再度ステップS301からの処理を行う。
インカメラの設定が変更されていない場合は、ステップS315からステップS320に進む。ステップS320では、シャッターボタン60が半押しされ、SW1信号が入力されたか確認する。SW1信号が入力されていなければ、ステップS321の処理を行わずにステップS322へ進む。SW1が入力された場合は、ステップS321に進み、デジタルカメラ100に設定されているフォーカスモードや露出モードに応じた合焦・露出処理、つまり前述の撮影準備動作を行う。
ステップS322において、シャッターボタン60が全押しされ、SW2信号が入力されたか確認する。SW2信号が入力されていなければ、ステップS01に戻り、処理を繰り返す。ステップS322において、SW2信号が入力されたと判定した場合、ステップS323において、表示部28の画像表示を一時停止すると共に、ステップS310で開始した動画圧縮処理を一時停止させる。ここでは、すでにメモリ25に格納されている動画データおよび音声データは保持しておく。
次に、ステップS324において、アウトカメラの撮像素子13の出力を基に記録用の静止画データ(メイン静止画)を撮影する。そして、ステップS325において、ステップS324で撮影した静止画データ(メイン静止画)から、画像確認用のレビュー用画像を生成する。そして、ステップS326において、画像処理部20によりステップS324で撮影した静止画データ(メイン静止画)に対して静止画圧縮処理を行い、記録用の静止画データ(JPEGデータ)を生成し、メモリ25に格納する。ここで、静止画・動画撮影同時記録モードにおいては、インカメラの撮影機能の有効無効の設定に関わらず、インカメラ画像が合成されていないメイン画像のみが静止画として外部記録媒体91に記録されるため、メイン静止画に対して静止画圧縮処理を行っている。
その後、図4に示すステップS401へ進む。
ステップS401では、ステップS326でメモリ25に格納された静止画データ(JPEGデータ)を1つの静止画ファイル(JPEGファイル)として外部記録媒体91に記録する。
次に、ステップS402において、メモリ25に格納されている動画記録用の動画データの動画記録時間(撮影時間)が、所定の時間()t0より長いか否かの判定を行う。本実施形態では、t0=2秒とする。ステップS402において、動画記録時間が2秒以上であると判定した場合はステップS403へ進み、2秒よりも短いと判定した場合はステップS404へ進む。
ステップS403において、メモリ25に格納されている動画データ、音声データを外部記録媒体91に記録する。ここで、動画データおよび音声データは、外部記録媒体91に記録されているダイジェスト用動画ファイルに動画データおよび音声データを追加するようにして記録する。外部記録媒体91にダイジェスト用動画ファイルがない場合は、新しくダイジェスト用動画ファイルを作成して、メモリ25から読み出した動画データおよび音声データを記録してもよい。また、撮影日が切り替わった場合や、動画データのサイズが所定のサイズよりも大きくなった場合には、新しいダイジェスト用動画ファイルを作成して記録するようにしてもよい。外部記録媒体91への動画データの記録形式については、後に図6を参照して詳しく説明する。ステップS404では、メモリ25に格納していた動画データ、音声データを破棄する。つまり、動画記録時間(撮影時間)が2秒よりも短い場合は、ステップS325において静止画を撮影する前に撮影して、メモリ25に一時保存していた動画データおよび音声データは外部記録媒体91に記録されず保存されない。これは、あまりに短い動画だと、撮影時の状況を確認することができないため、本実施形態では、2秒よりも短い場合は外部記録媒体91に記録しないようにしている。
次にステップS405において、ステップS325で作成したレビュー用画像を、表示部28に表示する。この表示により、ユーザは、撮影した静止画を確認することができる。
ステップS406において、インカメラの撮影機能が有効か無効かの判定を行う。インカメラ撮影機能が有効であると判定した場合はステップS407へ進み、ステップS407〜S414のインカメラ画像を合成した静止画撮影後動画の生成処理を行う。インカメラ設定が無効の場合はステップS418へ進む。
ステップS407では、ステップS324でアウトカメラで撮影したメイン静止画から動画記録用のストップモーション画像を生成する。つまり、メイン静止画を動画データに変換する。ここで、外部記録媒体91に記録する静止画と動画のアスペクト比が異なる場合は、ストップモーション画像にメイン静止画全体が含まれるようにメイン静止画のリサイズ処理をおこない、メイン静止画領域以外は黒塗りにてストップモーション画像を生成する。例えば、静止画のアスペクトが4:3で動画のアスペクトが16:9の場合、左右の領域を黒塗りしたストップモーション画像が生成される。
次に、ステップS408では、ステップS305と同様に、撮像素子103の出力を基に表示用のインカメラ画像を生成する。
そして、ステップS409では、ステップS306と同様に、表示用合成画像を生成する。ただし、ステップS409では、ステップS324でアウトカメラで撮影したメイン静止画の上に、ステップS408で生成したインカメラ画像を合成して表示用合成画像を生成する。
次に、ステップS410では、ステップS307と同様に、撮像素子103の出力を基に動画記録用のインカメラ動画を生成する。
そして、ステップS411では、ステップS409で生成した表示用合成画像を表示部28に表示する。ここでは、アウトカメラで撮影し外部記録媒体91に記録される静止画の上にインカメラで撮影した画像が動画として表示される。
次に、ステップS412において、ステップS308と同様に、動画記録用画像として、インカメラ動画を合成した合成動画を生成する。ただし、ステップS412では、ステップS407で生成したストップモーション画像の上に、ステップS410で生成したインカメラ動画を合成して動画記録用合成画像を生成する。
そして、ステップS413では、ステップS310と同様に、ステップS412において生成した合成動画に対して動画圧縮処理を行って動画データを生成し、静止画撮影後動画データとしてメモリ25に格納する。また、動画データの圧縮とともに、不揮発性メモリ51にあらかじめ記憶してあるシャッター音データおよび、不図示のマイク等で入力された音声データについてもシステム制御部50に含まれる音声圧縮処理を用いて、圧縮し、メモリ25に格納する。
ステップS414では、ステップS413にて生成しメモリ25に格納されている静止画撮影後動画データの動画記録時間(撮影時間)が所定の時間t1以上であるかの判定を行う。本実施形態では、t1=2秒とする。動画データの動画記録時間が2秒以上であると判定した場合はステップS420へ進む。動画データの動画記録時間が2秒よりも短いと判定した場合は、ステップS408へ進み、ステップS408〜S414の処理を繰り返す。つまり、インカメラ撮影機能が有効に設定されている場合、静止画のレビュー表示を開始した後に、静止画撮影後動画データの動画記録時間が2秒になるまで、インカメラにより動画が撮影される。そして、静止画撮影後動画データの動画記録時間が2秒になるまで、ストップモーション画像とインカメラ動画を合成した画像の表示と、合成画像の動画圧縮処理が繰り返される。
また、ステップS411において、アウトカメラ撮影して外部記録媒体91に記録した静止画を表示している間に、インカメラにより動画を撮影している。そのため、表示部28により撮影した静止画を確認しているユーザ(撮影者)の表情をインカメラで撮影して、静止画と共に記録することができる。
ステップS415において、静止画撮影前に撮影した動画記録用の動画データの動画記録時間(撮影時間)がt0以上であるか否か判定を行う。動画記録時間の判定の代わりに、ステップS404において動画データのキャンセル処理が行われたか否かを判定してもよい。静止画撮影前動画の動画記録時願がt0より短いためキャンセル処理が行われた場合は、ステップS301へ戻り、最初から処理を繰り返す。静止画撮影前動画の動画記録時願がt0以上でありキャンセル処理が行われなかったと判定した場合はステップS416へと進む。
ステップS416では、ストップモーション設定が入か切かの判定を行う。ストップモーション設定が入の場合はステップS417へ進み、ストップモーション設定が切の場合は、ステップS301へ戻る。
ステップS417では、ステップS407と同様にストップモーション画像を生成する。
次に、ステップS418において、ステップS417で生成したストップモーション画像に対して動画圧縮処理を行い、静止画撮影後動画データとしてメモリ25に格納する。ここで圧縮する音声データは不揮発性メモリ51にあらかじめ記憶してあるシャッター音データおよび無音データである。
ステップS419において、ステップS418にて動画圧縮処理を行い、メモリ25に一時保存されている静止画撮影後動画データの動画記録時間(撮影時間)が、所定の時間t2以上であるかの判定を行う。本実施形ではt2=1秒とする。ステップS419において静止画撮影後動画データの動画記録時間が1秒以上であると判断されるまで、ステップS417で生成された、同じstop motion画像を使って、ステップS418のストップモーション画像の動画圧縮処理が繰り返される。繰り返しにより新しく生成された動画データは、メモリ25に既に記憶されている静止画撮影後動画データに追加されていく。そのため、動画圧縮処理(step S418)を繰り返すことにより、静止画撮影後動画データの動画データ(動画フレーム)の数は増加する。同じストップモーション画像を使って生成された動画データが時間t2(1秒)となるまで繰り返し記録されるので、静止画撮影後動画データは時間t2(1秒)の静止動画となる。
ステップS420において、ステップS413またはステップS419にて動画圧縮処理により作成した静止画撮影後動画データを外部記録媒体91に記録する。記録する際は、ステップS403と同様にダイジェスト用動画ファイルの動画データおよび音声データに追加するようにして記録する。つまり、ステップS403で静止画撮影前の動画データを記録している場合には、静止画撮影前動画データに続いて静止画撮影後動画データが記録されることになる。
ステップS421において、ステップS420の静止画撮影後動画データの記録が完了したか否かの判定を行う。静止画撮影後動画データの記録が完了したと判定した場合は、メモリ25に一時保存している動画データを消去し、S301に戻る。
<記録されるダイジェスト用動画について>
次に、図5A、図5Bを参照して、記録されるダイジェスト用動画について説明する。
まず、静止画動画同時記録モードにおいて記録されるダイジェスト動画は、インカメラの設定が入になっている場合は、503、504、507、508のように、インカメラの画像がアウトカメラで撮影した画像の上に重畳合成される。インカメラの設定が切の場合は、501、502、505、506のように、アウトカメラで撮影した画像のみが記録される。また、静止画の記録画像サイズの設定によって、記録されるダイジェスト動画が変わる。まず、静止画撮影前動画については、静止画撮影の画像サイズ(アスペクト比)に関係なく、16:9の動画が記録される。これに対し、静止画撮影後動画については、静止画を元にアウトカメラの画像(ストップモーション)を生成するので、静止画の画像サイズ(アスペクト比)の設定によって、生成される動画が変化する。静止画のアスペクト比が16:9の場合は、静止画から同じアスペクト比のストップモーションを生成して記録する(505)。もし、インカメラの設定が入になっている場合は、ストップモーションの上にインカメラの動画を合成して記録する(507)。
静止画のアスペクト比が4:3の場合については、記録するダイジェスト動画のアスペクト比が16:9なので、撮影した4:3の静止画の画像を変倍し、更に左右の両端に黒画像を付加して16:9の画像を生成する。そして、黒画像を付加して生成した画像からストップモーションを生成して静止画撮影後動画として記録する(506)。インカメラ設定が入りの場合は、黒画像を付加して生成したストップモーションの上に、インカメラで撮影した動画を合成して静止画撮影後動画を生成する(508)。
このように、ダイジェスト用動画のアスペクト比と異なるアスペクト比で、静止画の記録サイズが設定されている場合は、撮影後動画において、黒画像が付加されて記録されることになる。
ここで、図5Bにおいて、アウトカメラの撮像素子520(13)のうち、4:3で使用する領域522を破線で示している。それに対し、16:9の画像を撮影する際には、実線で示す領域521を使用している。16:9の撮影で使用する領域521は、4:3の撮影で使用する領域522に内接している。そのため、4:3の領域522は、16:9の領域521よりも、上下方向に大きい。したがって、焦点距離f1で16:9の撮影をする場合の上下方向の画角をM(視野角)、同じ焦点距離f1で4:3の撮影を行う場合の上下方向の画角(視野角)をNとすると、M<Nとなる。そして、図5Aのように、4:3で静止画撮影をした場合、16:9で撮影した静止画撮影前動画の後に、4:3の静止画を、上下の端を16:9の動画と合わせて変倍して記録する。そのため、記録される動画は、静止画撮影前動画と静止画撮影後動画との切り換え部分で、画角がMからNに大きく変化する。連続する画像であるのにも関わらずに、急激に画角が変化するため、連続しない異なるシーンの画像である印象を与えてしまう可能性がある。そこで、本実施形態のデジタルカメラでは、連続する画像(動画)において画角が急激に変化する場合に、連続する画像であることをユーザが認識できるように再生効果を施す。この再生効果を施す処理については後述する。
<ファイル構成及び動画チャプタ参照情報>
図6は、静止画動画同時撮影記録モードにおいて記録される画像の構成および動画のチャプタ参照情報を説明するための図である。図6(a)は、静止画動画同時撮影記録モードにおいて記録される静止画および動画の撮影の時系列の関係を示す図である。図6(b)は撮影された静止画および動画の記録形態を示す模式図、図6(c)はチャプタ参照情報の構成例である。
図6(a)を用いて撮影指示および撮影画像の時系列を説明する。前述したように静止画・動画撮影同時記録モードではユーザがシャッターボタン60を全押して静止画撮影指示(レリーズ)を行うことにより、SW2が入力され、静止画の撮影および動画の撮影が行われ、撮影した画像が記録される。P1はレリーズ1の静止画撮影指示に応じて撮影される静止画であり、M1は静止画P1に関連した、静止画P1を撮影する前に撮影した動画である。同様にレリーズ2〜レリーズ3に応じて撮影される静止画P2〜P3に関連した動画はそれぞれ、M2〜M3となる。
図6(b)を用いて図6(a)で説明した撮影操作に従って撮影された静止画P1〜P3、および動画M1〜M3の記録媒体91上での記録形式を説明する。ステップs401での静止画記録処理、および、ステップS403、S420の動画データ記録処理では、これから説明する記録形式で、静止画ファイルおよび動画ファイルが記録される。
レリーズ1により撮影された動画M1はDCF規則に則り記録媒体91内の撮影日を表すディレクトリ名“100_1010”(ディレクトリ621)に動画ファイル“MDG_0001.MOV”(622)として保存される。以降のファイル名決定もDCF規則に従うこととする。一方同時に撮影された静止画P1は静止画ファイル“IMG_0002.JPG”(627)として同じディレクトリ(621)に保存される。ここで、M1は、ストップモーション画像が記録されない。M1はチャプタ1(624)に、動画ストリームとして記録される。次にレリーズ2により撮影された動画M2は動画ファイル“MDG_0001.MOV”の中にチャプタ2(625)として追記される。一方同時に撮影された静止画P2は静止画ファイル“IMG_0003.JPG”(629)として同じディレクトリ(621)に保存される。そのため、チャプタ2に記録される動画は、M2に続いて、P2から生成したストップモーション画像が挿入されている。次に、レリーズ3により撮影された動画M3は、静止画撮影前に撮影されたM3を使用せずに、P3のストップモーション画像が記録されるものとする。P3のストップモーション画像が、チャプタ3(626)として、動画ファイル“MDG_0001.MOV”の中にチャプタ2(625)として追記される。一方同時に撮影された静止画P3は静止画ファイル“IMG_0004.JPG”(629)として同ディレクトリに保存される。また、それぞれのチャプタには、動画ストリームの他に音声データとチャプタ情報が記録される。そしてチャプタ情報として撮影時間情報が文字列として記録される。
チャプタを追記する際には、動画ファイル“MDG_0001.MOV”のヘッダに部に、チャプタ参照情報(623)が記載され、ヘッダ部を参照することにより、動画ファイル全体を解析しなくてもそれぞれのチャプタに関する情報を取得することができる。静止画・動画撮影同時記録モードにおいては、静止画および動画を記録する際に、撮影日に応じたディレクトリ内に記録する。撮影日に対応するディレクトリがない場合は作成する。そして、撮影日に対応するディレクトリ内に、まず動画ファイルを生成してから、静止画ファイルを生成する。そのため、動画ファイルのファイル番号(DCF番号)は、静止画ファイルのファイル番号(DCF番号)よりも小さくなる。通常、ファイルの生成順にファイル番号(DCF番号)を付与する。そのため、図4のように、先に静止画データを記録してから動画データを記録する場合には、撮影日に対応するダイジェスト用動画ファイルが存在するかを確認し、ない場合には、静止画を記録する前に予めダイジェスト用動画ファイルを生成しておくとよい。このように、複数の静止画撮影において撮影した動画を1つの動画ファイルに記録するが、静止画撮影において撮影した動画毎にチャプタ分けして記録するため、それぞれの動画を区別可能となる。
図6(c)を用いてヘッダ部に記載される情報について説明する。ヘッダ部には、動画ファイルに関する情報として631と632が記載され、チャプタ参照情報(623)として633〜638の情報が記載される。631は動画ファイルサイズであり、チャプタ追記の度にファイルエントリに記載の動画ファイルサイズの値に更新される。632は動画総フレーム数であり、同様にチャプタ追記の度に合計のフレーム数で更新される。633はチャプタ番号であり、チャプタ毎に後述する各チャプタ情報がチャプタ追記毎に追加されていく。634はチャプタの撮影日時であり、本実施例では関連する静止画の撮影日時と同じものを設定する。そのため、静止画ファイルに記録される静止画の撮影日時情報とチャプタ参照情報の撮影日時情報634とにより、関連する静止画と動画を対応付けることができる。635はチャプタの開始フレームであり、この情報をもとに各チャプタの直接再生が可能となる。636は各チャプタのフレーム数であり、この情報をもとにチャプタの再生フレーム数を決定可能となる。637はメイン画像認証情報であり、撮影時に、アウトカメラで撮影した画像について個人認証を行い、認識した個人の識別情報(名前等)が記されている。638は、メイン画像顔情報であり、アウトカメラで撮影した画像について顔検出を行い、検出した顔情報(顔の位置・個数)が記されている。
639はインカメラのサブ画像の有無および合成位置であり、この情報をもとにインカメラ画像の有無に応じた再生制御、一例としてインカメラ画像のあるチャプタのみの連続再生等が行える。また、合成位置情報として、アウトカメラで撮影したメイン画像に対しする、インカメラで撮影したサブ画像の、縦方向のオフセット位置X、縦方向のオフセット位置Y、および、サブ画像の横幅W、縦幅Hの4つの情報が格納されている。そのため、対応するチャプタにおいて、動画からインカメラで撮影した動画のみを切りだして再生することも可能になる。640はサブ画像認証情報であり、撮影時に、インカメラで撮影した画像について個人認証を行い、認識した個人の識別情報(名前等)が記されている。641は、サブ画像顔情報であり、インカメラで撮影した画像について顔検出を行い、検出した顔情報(顔の位置・個数)が記されている。メイン画像顔情報638においても、合成位置と同様に、検出した顔領域について、メイン画像に対する縦横それぞれのオフセット位置、縦横それぞれのサイズが記録されている。サブ画像顔情報641も同様に、検出した顔領域について、サブ画像に対する縦横それぞれのオフセット位置、縦横それぞれのサイズが記録されている。642はストップモーションの有無及びストップモーションが挿入されているフレーム範囲をストップモーション情報である。ここではチャプタ内の相対フレーム情報として表現されている。チャプタ1に対する情報は0−0であり、これはストップモーションが無いことを明示的に表すこととする。チャプタ2に対する情報90−179はチャプタ内先頭から90フレームより179フレームがストップモーションであることを表す。ここでチャプタ2はフレーム数が180フレームであることから、後半半分がストップモーションとなる。チャプタ3に対する情報は0−179であり、チャプタ3のフレームカウントが180であることからチャプタ3はすべてがストップモーションであることを表す。この情報により、ストップモーションの有無及びストップモーションのフレーム位置の判定が可能となる。
643は、チャプタ内の途中で、画像の画角が急激に変化しているかを示す画角変化情報である。図5において説明したように、ストップモーションが記録されている場合には、静止画を撮影する前に撮影した動画と、静止画に対応するストップモーションとで、画像の画角が変わってしまうと、画角が変わらない場合がある。そのため、チャプタ内において、ストップモーションへ切り換わるタイミングにおいて、画像の画角が変わっているかを示す情報を格納している。図6(c)において、チャプタ1については、ストップモーションが挿入されていないので、画角変化はない。この場合、画角変化情報は記録しなくてもよいし、画角変化がないことを記録してもよい。チャプタ2については、画角変化ありと示されている。ストップモーション情報には、90−179と記されているので、チャプタ2内の0−89フレームと90−179フレームとで画像の画角が異なり、チャプタ内先頭から90フレームにおいて、画角が変化していることが分かる。このように、画角変化の情報を用いて、チャプタ内で画角の変化があるかを判断することができるようになる。本実施形態では、画角の変化があるか否かについての情報を画角変化情報として記録したが、画角が変化するフレーム情報を記録してもよい。また、画角が変化したフレームの情報と、変化の前後の画角の情報とを記録するようにしてもよい。このように記録された画角変化情報を使用して画角の変化を判断する場合、記録された画角情報に基づいて、画角の変化の大小を判断し、変化が小さい場合は、画角の変化がないものと判断するようにしてもよい。
ここで述べたチャプタ参照情報は動画の部分削除等の編集の度にも動画ストリームと整合性を保つためにメンテナンスする必要がある。動画の編集が行われた場合、デジタルカメラ100は、システム制御部50の制御により、631〜638の情報を編集内容に応じて適切にメンテナンスを行い、チャプタ情報を変更して動画ファイルを上書きする。一方、このチャプタ参照情報を解釈できない編集機器がこの動画を編集した場合チャプタ参集情報と動画ストリームの整合が崩れ不適格なフレームを指示することになる。このため本実施例のデジタルカメラでは、システム制御部50がチャプタ参照情報を使用する際、同時に記載されているファイルサイズ(631)がファイルエントリに記載されているファイルサイズと一致するかの判定を行う。このことにより、不一致が起これば、チャプタン参照情報の整合が取れないと判断し、チャプタ参書情報を使用しない。あるいは、不一致を検出した場合、ストリーム中のチャプタ情報等からチャプタ参照情報を作り直して記録するようにしてもよい。
<アルバム再生機能>
ここで、本実施形態のデジタルカメラ100は、再生モードにおいてアルバム再生を選択することができる。アルバム再生機能では、アルバム再生が選択された時に表示されている画像に関連する画像(静止画および動画)を、デジタルカメラ100が外部記録媒体91に記録されている複数の画像の中から自動的に抽出する。そして、抽出した画像を順に再生(表示)したり、選択した画像が順に再生される動画を生成したりする。
このアルバム再生におけるデジタルカメラ100の動作について、図7を用いて説明する。この処理は、再生モードにおいて、画像を表示している際に、所定の操作部を操作してアルバム再生を指示することにより開始される。図7のフロー図は、システム制御部50が、不揮発性メモリ51から読み出したプログラムに基づいてデジタルカメラ100の各ブロックを制御することにより実行される処理を示す。なお、本実施形態のアルバム再生は、指定された日付に撮影された画像データから所定数の画像を抽出する例について説明するが、たとえば、指定された人物に関連する画像から所定数の画像を抽出するようにしてもよい。また、ユーザによる評価値(お気に入り度、レーティング)が上位の画像データ群から所定数の画像を抽出するようにしてもよい。
まず、アルバム再生が指定されると、ステップS701において、システム制御部50は、最後に表示部28に表示していた画像データの撮影日時情報を取得する。そして、同じ日時に、静止画撮影モードにて記録された、静止画ファイル及び、静止画・動画記録モードにて記録された静止画ファイル、及び動画ファイルを特定する。特定された静止画ファイルと動画ファイルに含まれる画像がアルバム再生の対象となる。
次に、ステップS702において、システム制御部50は、特定された静止画ファイルと、動画ファイルの各チャプタを1時間ごとのグループ(部分集合)に分類する。なお、グループに分ける場合は1時間単位で単純に区切ってもよいが、連続性のある撮影が行われている可能性もあるので最短距離法を用いて、1時間程度の単位になるように分類してもよい。
次に、ステップS703において、システム制御部50は、分類されたグループ単位で、画像の抽出を行う。ここで抽出された画像が、アルバム再生における再生対象の画像となる。アルバム再生において、再生対象として抽出された静止画については4秒表示し、動画については、抽出されたチャプタの動画を表示する。そして、目標とされる総再生時間が約2分であるものとする。すなわち静止画と動画のシーンの数は、2(分)×60(秒換算)÷2(秒)=60(シーン)である。本実施例では、各グループ内で、動画のシーンと静止画のシーンが、1:3程度の割合になるように、各グループ内で、動画と、静止画とで別々に評価を行い、評価値の高い動画と静止画とを抽出する。なお、静止画の表示時間については4秒に固定されるものではない。本実施例では説明を容易にするために動画と同じ4秒として説明をした。
ここで、動画の評価値の算出方法について説明する。ここではあるチャプタに属する動画の評価値を算出の例について説明する。まず、チャプタ[M]の評価値MovieValue[M]は、チャプタ[M]のチャプタ参照情報中の、顔の位置や個数を示す情報(顔検出情報)を用いて、評価値を算出する。具体的には、チャプタ[M]内の検出された顔の位置が中心に近いほど評価値を高く算出し、また、顔の大きさが大きいほど評価値を高く算出する。さらに、インカメラで撮像された画像の評価値をさらに加えてもよい。たとえば、チャプタ[M]のチャプタ参照情報中の、インカメラで撮像された画像の顔の位置や個数を示す情報(顔検出情報)を用いて評価値を算出する。そして、算出された評価値を評価値MovieValue[M]に加算する。このようにして動画の評価値を算出する。静止画に関してもその画像中の顔の大きさ、位置、個数または笑顔度等の情報を用いて評価値を算出する。
次に、ステップS704において、システム制御部50は、カメラマン表示に使用する動画を含む動画のチャプタを特定する。カメラマン表示とは、インカメラで撮像された画像のみを表示するものである。本実施例では、S703で抽出された動画のチャプタの中でさらに、インカメラで撮像された画像の評価値の高いシーンをカメラマン表示に使用するものとする。そのためシステム制御部50は、S703で抽出されたチャプタのチャプタ参照情報に基づいて、インカメラで撮像された画像中の顔の位置や個数を示す情報に基づいて、インカメラで撮像された画像の評価値を算出する。そして、その上位3つのチャプタをカメラマン表示に使用する動画を含む動画のチャプタであると、特定する。
なお、デジタルカメラ100にあらかじめ、人物や顔を特定するための特徴画像と識別子が関連付けられた「辞書」が保存されている場合は、インカメラで撮像された画像に、「辞書」に登録された人物や顔を含むチャプタを優先して選択するようにしてもよい。
次に、ステップSにおいて、システム制御部50は、S703で抽出した静止画と動画とを時系列順に表示し、S704で特定されたチャプタのインカメラで撮像された画像を切り出した画像を表示するためのアルバムシナリオを作成する。本実施形態では静止画を4秒表示するようにシナリオを作成する。作成されるシナリオについては、後に詳しく説明する。作成したシナリオは、アルバム再生や保存の処理において使用するため、メモリ25に25に格納する。
次に、ステップS706において、システム制御部50は、S705で作成され、メモリ25に格納されているシナリオに従って、順次画像を表示部28に表示する。静止画ファイルに対応する静止画を表示するときは、システム制御部50は、シナリオによって再生対象とされる静止画ファイルを外部記録媒体91からカードコントローラ90を介して読み出すように制御する。そして、読みだした静止画ファイルの画像を画像処理部20で伸張させて表示部28に表示するようにメモリ制御22、画像表示メモリ24、D/A変換器21等を制御する。このとき連続して4秒この静止画の画像が表示されるように制御する。一方、特定されたチャプタに対応する動画を表示する場合、そのチャプタの含まれる動画ファイルのチャプタ参照情報に従って、そのチャプタの動画のフレームが動画ファイルの動画の何フレーム目から何フレーム目までかを特定する。そして、システム制御部50は、動画ファイルのヘッダを参照し、対象フレームのファイルオフセットを特定し、対象の動画データを外部記録媒体91からカードコントローラ90を介して読み出すように制御する。そして、読みだした動画データを画像処理部20で伸張し、伸張した動画データの画像を順次表示部28に表示するように表示制御部141を制御する。
最後に、カメラマン表示を行う場合の処理について説明する。本実施例では前述のように、静止画・動画記録モードで、インカメラを「有効」にしていた場合、アウトカメラで撮像された画像とインカメラで撮像された画像とを合成し、さらに動画として圧縮された状態で記録媒体に記録している。そのため、カメラマン表示を行うためには、インカメラで撮像された画像の合成位置、合成サイズを特定しなければならない。本実施例では、チャプタ参照情報にインカメラで撮像された画像の合成情報(合成位置、合際サイズ)が格納されているので、その情報に基づいて、画像の切り出し(トリミング)を行い、画像を抽出する。そこで、システム制御部50は、S704で特定された、カメラマン表示に使用する動画を含むチャプタの動画をチャプタ参照情報に従って、特定する。そして、そして、システム制御部50は、動画ファイルのヘッダを参照し、対象フレームのファイルオフセットを特定し、対象の動画データを外部記録媒体91から読みだすように記録再生部150を制御する。そして、読みだした動画データを画像処理部20に伸張させる。次に、システム制御部50は、チャプタ参照情報に含まれる合成情報(合成位置、合際サイズ)に基づいて、インカメラで撮像された画像の合成されている領域を特定し、その領域を切り出す(トリミング)ように画像処理部20を制御する。そして切り出された画像と、「cameraman」等のテキスト情報を合成するように画像処理部20を制御し、合成した画像を表示部28に表示するように表示制御部141を制御する。なお、このとき、切り出されたインカメラで撮像された画像を画面中央にくるように移動させたり、拡大したりしてもよい。
次に、ステップS707において、アルバム再生により抽出された画像の再生(表示)を行うか、保存を行うかを、ユーザに選択させる。具体的には、表示部28に、アルバム再生について、再生、または、保存のどちらを行うかをユーザに選択させる選択画面を表示させる。ユーザは、操作部62を操作して、再生または保存を選択する。システム制御部50は、再生の指示が入力されたか、保存の指示が入力されたかを判定する。再生の指示が入力された場合(S707で再生)、ステップS706に戻り、アルバム再生処理を再び実行する。
S707で、保存の指示が入力された場合、システム制御部50は、シナリオに従った画像の表示をすることができる動画データを生成する。画像処理部20を制御し、画像処理部20で生成された動画を外部記録媒体91に記録する。このとき、システム制御部50は、H.264やH.265等の圧縮符号化技術を用いて、シナリオに従った表示画像を圧縮して動画データを生成する。
以上のように本実施例のデジタルカメラ100は、アルバム再生において、外部記録媒体91に記録された、所定の範囲または条件によって絞り込まれた複数の画像群から、評価値の高い画像を自動で抽出して順次表示することができる。さらに、ここで行ったアルバム再生と同様の表示を後でも行うことができるように、アルバム再生での表示と同様の動画データを生成することもできる。
<シナリオとシナリオに基づくアルバム再生について>
次に、図8を参照してステップS705で作成されるアルバム再生のシナリオと、ステップS706におけるアルバム再生について詳しく説明する。
図8は、アルバム再生において作成されるシナリオと画像表示の例を示している。
図8(a)は、ステップS705において作成されるシナリオの例を示している。
801はシーン番号情報であり、アルバムシナリオのシーン番号である。
802はファイルパス情報であり、そのシーンで再生される画像のファイルパスが記されている。
803はチャプタ情報であり、ファイルパス情報802で示される画像ファイルが動画の場合に、再生するチャプタが記されている。
804は表示フレーム数情報であり、そのシーンが何フレームで構成されているか記載されている。ここでの1フレームの表示時間は1/30秒、つまり1秒で30フレーム表示される。
805は再生効果情報であり、再生対象の画像に施す再生効果の種類が記されている。再生効果の種類としては、ズームアウト、スライド、ストップモーションクロスフェード、撮影者、効果なし、等がある。806は、再生効果情報805の補足情報を示す効果サブ情報である。
807は背景色情であり、「撮影者効果」の下地の色を示す情報である。
808は、文字列情報であり、画像に重畳させてどのような文字列を表示するか記されている。なお、ここで記された文字列に対応するラスタデータは不揮発性メモリに予め格納されている。
ステップS705において、S703で再生対象として抽出された静止画および動画のチャプタをアルバム再生するため、図8(a)のようなシナリオが作成されるが、以下のように作成される。
S703で再生対象として抽出された静止画および動画のチャプタについて、再生順でシーン番号が割り当てられる。そして、それぞれの静止画または動画を示す画像ファイルのファイルパスが、ファイルパス情報802に記載される。再生対象の画像が動画の場合は、チャプタ情報803に、再生対象のチャプタの番号が記載される。表示フレーム数情報804には、そのシーンを構成するフレーム数、つまり、再生対象の画像を表示する期間がフレーム数として記載される。本実施形態において静止画は4秒表示すると設定されているため、再生対象の画像が静止画の場合は、表示フレーム数情報804に120と記載される。再生対象の画像が動画の場合は、再生対象として指定されたチャプタ全体が表示されるように、再生対象のチャプタのフレーム数が記載される。
再生効果情報805には、再生対象の画像に施す再生効果の種類が記載されているが、再生効果の種類としては、「ズームイン」、「ズームアウト」、「スライド」、「ストップモーションクロスフェード」、「撮影者」、「効果なし」、等がある。再生対象の画像が静止画の場合には、「効果なし」「ズームアウト」「ズームイン」「スライド」をランダムに付与していく。再生対象の画像が動画の場合は、「効果なし」、または、「ストップモーションクロスフェード」の付与をおこなう。再生対象の動画に対して「ストップモーションクロスフェード」効果を施すか否かは、再生対象の動画チャプタのチャプタ参照情報における画角変化情報参照して決定する。図5を参照して説明したように、静止画・動画記録モードにおいて、静止画のアスペクト比が、ダイジェスト動画のアスペクト比(16:9)と異なるアスペクト比で設定される場合がある。この場合、動画(チャプタ)の途中であるにもかかわらず、動画の画角が切り替わってしまう。記録される動画(チャプタ)は、連続する1つの動画であるにも関わらず、画角が切り替わり、時間的に連続しない画像であるかのように見えてしまうことになる。そこで、本実施形態では、画角変化情報において、画角変化があると記載されているシーン(動画のチャプタ)については、ストップモーションクロスフェード効果を施して再生する。ストップモーションクロスフェード効果では、ストップモーションが挿入されることにより画角が変化するタイミングの動画、つまり画角が切り換わる前後のフレームに対して、クロスフェード効果を施す。この処理については、後に詳しく説明する。再生効果情報805に再生効果が記載された場合は、効果サブ情報806に、再生効果で使用するための補足情報を記載する。例えば、再生効果情報805がズームアウトの場合は、静止画の全体の画角を100%として、どの程度ズームアウトさせるかを記載する。再生効果情報805がスライドの場合は、どの位置からスライドを開始するか、または、スライドの方向等の情報を記載する。再生効果情報805がストップモーションクロスフェードであった場合は、チャプタ内のストップモーション開始フレームと、インカメラ画像が合成されているかを示す情報が記載される。また、シーン番号1には、アルバム再生される画像の撮影日が分かるように、文字列情報808に撮影日を記載する。また、再生効果が「撮影者」の場合は、背景色情報807に背景色の色を、文字列情報808に「Photographer」と記載する。さらに、効果サブ情報806には、再生対象画像中に合成されているインカメラ画像の領域を示す情報(縦横のオフセット位置、縦横のサイズ)を記載する。このように作成されたシナリオに基づいて、ステップ706においてアルバム再生が行われる。
次に、ステップS706で行われるアルバム再生について説明する。以下の処理は、システム制御部50により、演算処理やデジタルカメラ100の各部を制御することにより実行される。
シーン番号順に画像が再生されるため、まずはシーン番号1で指定されている画像から順に以下の処理が行われる。シーン番号に対応する画像のファイルパス情報802に基づいて、外部記録媒体91から画像を読み出すが、動画の場合は、動画ファイル全体を読み出さずに、チャプタ情報803で指定されているチャプタのみを読み出す。読み出した画像を表示するとき、表示フレーム数情報804で指定されているフレーム数に対応する長さで、再生対象の画像を表示部28に表示する。また、再生効果情報805に再生効果が設定されている場合には、再生効果情報805と効果サブ情報806とを使用して、画像処理部20により再生効果を施して表示する。文字列情報808に文字列が設定されている場合には、画像の所定の位置に指定されている文字を画像処理部20において合成してから表示する。再生効果として「撮影者」が設定されている場合には、効果サブ情報だけでなく、背景色情報807、文字列情報808を用いて再生効果を施して表示する。撮影者効果を施す場合は、ファイルパス情報で指定された再生対象の画像から、効果サブ情報で指定されているインカメラの領域を切り出す。そして、背景色情報で指定された背景色のべた塗り画像の上に、切り出したインカメラ画像と、文字列情報に指定されている文字とを合成して表示する。
このような処理を全てのシーンに対して順に行うことで、アルバム再生の再生対象として抽出された画像に、自動的に再生効果を施して、順に表示部28に表示することができる。
図8(b)は、図8(a)のシナリオに基づいて、アルバム再生する場合に、再生(表示)される画像を示す図である。
まず、シーン番号1で指定されている画像が再生される。ファイルパスで指定されている画像が動画であるので、チャプタ情報を参照し、チャプタ情報で指定されているチャプタ1のみが再生される。再生効果はないが、文字列情報に撮影日が指定されているので、読みだした画像に撮影日が合成された画像が、表示フレーム数情報で指定されている180フレーム分表示される。
次に、シーン番号2で指定されている画像が再生される。ファイルパスで指定されている画像が静止画であるので、チャプタ情報は参照しない。再生効果としてズームアウトが指定されているので、まずは、ズームアウト効果を施した画像を表示し、その後、静止画がそのまま(再生効果を施さずに)表示する。ズームアウト再生効果での表示と合わせて、表示フレーム数情報で指定されている120フレーム分表示される。
次に、シーン番号3で指定されている画像が再生される。ファイルパスで指定されている画像が動画であるので、チャプタ情報を参照し、チャプタ情報で指定されているチャプタ2のみが再生される。再生効果はないため、再生効果は施さずに、表示フレーム数情報で指定されている120フレーム分表示される。
次に、シーン番号4で指定されている画像が再生される。ファイルパスで指定されている画像が動画であるので、チャプタ情報を参照し、チャプタ情報で指定されているチャプタ5のみが再生される。再生効果としてストップモーションクロスフェードが指定されているため、ストップモーションクロスフェード処理を施し、表示フレーム数情報で指定されている120フレーム分表示される。ストップモーションクロスフェード処理については、後に詳しく説明する。
このように順に再生していき、シーン番号50では、再生効果として撮影者が指定されているため、ファイルパスで指定されている画像について、効果サブ情報で指定されている領域が切りだされた画像が、文字列情報で指定されている文字列と共に表示される。このような画像が、表示フレーム数情報で指定されている60フレーム分表示される。
<アルバム再生処理のフローチャート>
図9は、上記で説明したアルバム再生の詳細な処理を示すフローチャートである。
まず、ステップS901では、ステップS705で作成され、シーン総数MaxNをメモリ25に保存されているシナリオより取得する。図8(a)のシナリオの場合、1600が取得される。
ステップS902では、現在表示しているシーン番号変数のNを初期値である1に設定する。
ステップS903では、シーン番号Nに対応する表示フレーム数情報804を取得し、MaxDispFramに設定する。図8(a)のシナリオで、シーン番号N=1の場合は、MaxDispFrame=180となる。
ステップS904では、シーン番号Nに対応するファイルパスPathをファイルパス情報802から取得する。図8(a)のシナリオで、シーン番号N=50の場合はPath=DCIM/100_1010/MDG_0001.MP4となる。
ステップS905では、先ほど取得したファイルパスPathが動画であるか判断をおこなう。
動画であった場合は、ステップS906に進み、チャプタ情報803を取得し、動画のどの箇所を再生させるか取得をおこなう。
ステップS907ではメモリ25に保存されているシナリオより再生効果情報805の取得をおこなう。
ステップS908では、取得した再生効果情報805で指定されている再生効果について、効果サブ情報が必要であるかを判断し、必要であればステップS909で効果サブ情報806の取得をおこなう。
ステップS910では、同様に背景色情報807の取得をおこなう。
ステップS911では、同様に文字列情報808の取得をおこなう。
ステップS910、S910については、ステップS908、S909と同様に、再生効果情報805に基づいて、背景色情報、または、文字列情報が必要かを判断し、必要と判断された場合にのみ取得するようにしてもよい。
続くステップS912では、現在表示中のフレーム番号を示す変数DispFrameに初期値である0を代入する。
ステップS913では、表示する画像を外部記録媒体91からシステム制御部50、カードコントローラ90等を介して読み出し、画像処理部20にてデコードし、メモリ25に格納する。ファイルパスPathに対応するファイルが静止画の場合は、その画像を読み出してデコードする。動画の場合は、ファイルパスPathに対応するファイルから、チャプタ情報で指定されるチャプタにおいて、そのチャプタの先頭からDispFarame番目のフレームを外部記録媒体91から読み出してデコードする。
ステップS914では表示部28の表示サイズを元にデコードした画像を変倍するための変倍率の算出をおこなう。変倍率はステップS913にてデコードしたデコード後のサイズと表示部28の表示サイズの比率から変倍率を求める。ここで、デコード後のサイズがHD(1280x720)であり、表示部28が640x360とすると、0.5倍に変倍する。
ステップS915では、表示する画像(DispFrameの画像)を取得する。再生対象が静止画の場合は、デコートした画像に対して、ステップS914で決定した変倍率への変倍処理や、効果情報、効果サブ情報に基づく再生効果を施す処理を画像処理部20により実行する。
ステップS916では、ステップS911で取得した文字列情報をもとに、ステップS915で再生効果を施して取得した画像に、文字列を合成する処理を行う。
ステップS917では、ステップS910にて取得した背景色となるベタ塗り画像の背景と、ステップS915で再生効果を施して取得した画像を合成する処理を行う。
なお、S916、S917は、文字列や背景色が設定されていない場合は、この処理をスキップしてもよい。
ステップS918では、ステップS913〜S917で得られた画像(フレーム)を表示部28に表示する。
ステップS919ではDispFrameを1だけインクリメントする。
ステップS920ではDispFarameがMaxDispFrameを超えたか確認を行い超えていれば、ステップS921に進みそうでなければステップS913に戻る。つまり、DispFarameがMaxDispFrameとなるまで、ステップS913〜S919の処理を繰り返す。再生対象の画像が静止画の場合は、S913では同じ処理の繰り返しとなるので、静止画でDispFarame>0のとき、つまり、静止画でS903の処理を繰り返す場合は、S913の処理を行わずにスキップしてもよい。
ステップS921ではシーン番号Nがシーン総数MaxNを超えたか判断を行い超えていれば処理を終え、そうでなければステップS902に戻る。
<再生効果処理>
次に、S915の再生効果処理について、図10のフローチャート、図11のストップモーションクロスフェード処理の説明図を用いて詳細に説明する。
まず、図11(a)は、クロスフェード処理の処理フロック図である。なお、この処理は、画像処理部20において実行される。
ステップS913でデコードされた画像(YCbCr形式の画像)は、1101において変倍処理が行われる。この変倍処理では、S914で設定された変倍率で変倍される。
変倍されたYCbCr画像データは、YCbCr合成処理ブロック1102の入力1に入力される。そして、YCbCr合成処理1102で合成処理された合成処理済みのYCbCr画像は、出力されると共に、YCbCr合成処理ブロック1102の入力2に入力される。YCbCr合成処理ブロック1102では、入力1と入力2から入力された2つ画像を、設定された合成比率で合成して、出力する。この合成比率はシステム制御部50の制御により変更可能である。入力1:入力2=100:0の場合は、入力1の画像が出力されることになる。
図10は、S915の再生効果処理のフローチャートである。再生効果処理についてこのフローチャートを参照して詳細に説明する。このフローについても、図7と同様に、システム制御部50が読みだしたプログラムに基づいて実行する。
まず、ステップS1000では、ステップS914にて算出された変倍率をYCbCr変倍処理1101に設定する。
ステップS1001では、ステップ907で取得した再生効果情報805が、「ストップモーションクロスフェード」効果であるかを確認する。ストップモーションクロスフェードの場合はステップS1003に進み、それ以外の効果の場合は、ステップS1002に進む。
ステップS1002では、設定されている効果に応じて、変倍率やトリミング範囲の再設定を行い、YCbCr変倍処理1101に設定する。例えば、ズームインズームアウトが設定されている場合は、効果サブ情報806に記載されている情報に基づいて、変倍率を変更する。また、撮影者の場合は、効果サブ情報806からインカメラ画像が合成されている領域を判断して、その部分の画像をトリミングするための設定を行う。
S1003では、効果サブ情報806から、よりストップモーション開始フレームを取得する。ストップモーションクロスフェードの場合、効果サブ情報806には、ストップモーション開始フレームと、インカメラ画像が合成されているかが記載されているので、効果サブ情報806から取得する。
ステップS1004では、現在処理中のDispFrameが、ストップモーション開始フレーム以上であるかを判定する。DispFrameが、ストップモーション開始フレーム以上である場合はステップS1005へ進み、そうでなければステップS1007へと進む。
ステップS1005では、効果サブ情報から、ストップモーションにインカメラ画像が合成されているかどうかを確認する。インカメラ画像が合成されている場合はステップS1007へ進み、インカメラ画像が合成されていない場合はステップS1006へと進む。
ステップS1006では、YCbCr合成処理1102での合成比率を(入力1、入力2)=(50、50)に設定し、ステップS1008へと進む。合成比率を(入力1、入力2)=(50、50)に設定することにより、画像の合成が行われて、クロスフェード処理が施されることになる。
ステップS1007では、YCbCr合成処理1102の合成比率を(入力1、入力2)=(100、0)に設定し、ステップS1008へと進む。合成比率が(入力1、入力2)=(100、0)に設定される場合、入力1の画像が出力されるので、合成は行われず、クロスフェード処理は施されないことになる。つまり、ストップモーションの挿入により画角が切り替わっている場合であっても、ストップモーションにインカメラの画像が合成されている場合は、クロスフェード効果が施されないようになる。また、インカメラ画像の画像が合成されているかを、ステップS1007で判断せずに、シナリオを作成する際に判断して、インカメラが合成されている場合は、再生効果を「効果なし」に設定してもよい。
ステップS1008では、ステップS1000,S1002にて設定された変倍率やトリミング設定で、YCbCr変倍処理1101によりトリミング、変倍処理をおこなう。
次に、ステップS1009では、ステップS1006またはステップS1007にて設定された合成比率を用いて、YCbCr合成処理1102において合成処理をおこなう。このとき、現在処理中のDispFrameの画像データを、入力1として入力し、入力2には、前回の処理で出力された画像データを入力する。
ステップS1010では、次フレームの効果処理のために、処理後の画像データをバッファリング処理する。つまり、この合成処理後の画像データが、次の入力2となる。
このような処理により、ストップモーションクロスフェード処理が施された場合の画像について、図11(b)を用いて説明する。
まず、図11(b)においては、ストップモーションが挿入され画角が変化するフレームは、60番目のフレームとする。そのため、DispFrameが59以下の場合は、合成比率が(入力1、入力2)=(100、0)となり、DispFrameが60以上になると、合成比率が(入力1、入力2)=(50、50)となる。DispFrame=58、59の場合、合成比率が(入力1、入力2)=(100、0)なので、入力2の画像は合成されず、入力1に入力された処理対象の画像がそのまま出力される。DispFrame=60になると、合成比率が(入力1、入力2)=(50、50)となるため、入力される処理対象の画像1113と、前に出力された画像1132(画像1112と同じ)が合成されて、画像1133が出力される。次に、DispFrame=61となると、処理対象の画像1114と前に出力された1133が合成されて、1134が出力される。このように、前の出力と今回の処理対象の画像が合成されるため、徐々に画像が切り替わっていくような再生効果を発生させることができる。60番目以降の画像はストップモーションの静止動画であり、同じ画像が続くため、合成を繰り返していくと、ストップモーションの画像に収束していく。
本実施形態では、クロスフェード処理を施さない場合も、合成比率が(入力1、入力2)=(100、0)にしてYCbCr合成処理1102を行ったが、処理負荷の軽減のために、合成処理自体を行わないようにしてもよい。また、クロスフェード処理を行う場合であっても、合成処理を繰り返し行うことによりストップモーションの画像に収束していくため、所定のフレーム数(例えば30フレーム)合成処理を行ったら、合成処理を行わないようにしてもよい。また、本実施形態のストップモーションクロスフェードにおける合成処理では、ストップモーション開始フレームから合成処理を行い、前に表示したフレームの画像と今回の再生対象のフレームとを合成した。しかし、ストップモーション開始フレームよりも1つ前のフレームから合成処理を開始し、次に表示すべきフレームと合成するようにしてもよい。
このように、本実施形態のデジタルカメラにおいては、ダイジェスト動画において、1つのチャプタ内に動画のアスペクト比と異なる画像が挿入されている場合には、ストップモーションクロスフェード処理の再生効果を施して、画角の切り換わりが目立たないように再生することができる。
本実施形態においては、アルバム再生機能を用いてアルバム再生を行う際に、ストップモーションクロスフェードの再生効果を施した、しかし、アルバム再生に限らず、ダイジェスト動画を再生する際や、ストップモーションが含まれるチャプタのみを再生する場合にも、時間的に連続して記録された一連の動画の途中で画角が変わる場合に、クロスフェード処理を施すようにしてもよい。また、画角の変化だけでなく、時間的に連続して記録されたのにもかかわらず、大きく画像が変化した場合は、それを検出して、その変化点においてクロスフェード処理を施してもよい。
また、上述の実施形態では、システム制御部50は、画像ファイルの情報やチャプタ参照情報からシナリオを作成し、作成したシナリオに基づいて、ストップモーションクロスフェード処理を行うか否かについて、また、処理を開始するフレームを判断した。しかし、システム制御部50は、シナリオを作成せずに、画像ファイルの情報やチャプタ参照情報からストップモーションクロスフェード処理を行うか否か、処理を開始するフレームを判断してもよい。また、システム制御部50は、画像ファイルの情報やチャプタ参照情報からではなく、動画を解析して、解析結果からストップモーションクロスフェード処理を行うか否かを判断してもよい。例えば、動画のフレームの画像の左右または上下の両端に黒画像領域があるかを解析し、最初のフレームからではなく途中のフレームから黒画像領域が出現した場合に、画角が変わったと判定してストップモーションクロスフェード処理を行うようにしてもよい。
上述の実施形態では、アルバム再生の再生処理において、ストップモーションクロスフェード処理を行う場合について詳細に説明した。しかし、アルバム再生において保存が選択された場合は、再生処理と同様に再生すべき画像データを生成し、それを表示せずに動画データに変換して記録することにより、再生処理で表示されたものと同様の画像が動画ファイルとして記録される。
(その他の実施形態)
以上、本発明の好ましい実施形態について説明したが、本発明はこれらの実施形態に限定されず、その要旨の範囲内で種々の変形および変更が可能である。
上述の実施形態では、本発明を適応した撮像装置を例に説明したが、カメラ付き携帯電話や携帯ゲーム機等の電子機器で本発明を実施してもよい。また、1つの装置で上述の実施形態の機能を実現せずに、複数の装置、例えば、複数の撮像部を有する撮像装置、表示部を有する表示装置、CPU、ROM、DRAMを有し撮像装置および表示装置の制御を行う制御装置を接続したシステムで実現してもよい。また、画像再生処理については、撮像装置でなく、撮像装置で撮影した画像を取得可能な画像再生装置において行ってもよい。また、上述の実施形態の一部を適宜組み合わせて実施してもよい。
また、上述の実施形態の機能を実現するソフトウェアのプログラムを、記録媒体から直接、或いは有線/無線通信を用いてプログラムを実行可能なコンピュータを有するシステム又は装置に供給し、そのプログラムを実行する場合も本発明に含む。従って、本発明の機能処理をコンピュータで実現するために、該コンピュータに供給、インストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明の機能処理を実現するためのコンピュータプログラム自体も本発明に含まれる。その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、OSに供給するスクリプトデータ等、プログラムの形態を問わない。プログラムを供給するための記録媒体としては、例えば、ハードディスク、磁気テープ等の磁気記録媒体、光/光磁気記憶媒体、不揮発性の半導体メモリでもよい。また、プログラムの供給方法としては、コンピュータネットワーク上のサーバに本発明を形成するコンピュータプログラムを記憶し、接続のあったクライアントコンピュータがコンピュータプログラムをダウンロードしてプログラムするような方法も考えられる。