以下、添付図面に従って本発明に係る画像ファイル管理装置及びデジタルカメラの好ましい実施の形態について説明する。
<デジタルカメラの構成>
図1、図2は、それぞれ本発明が適用されたデジタルカメラの外観構成を示す正面斜視図と背面斜視図である。
同図に示すように、このデジタルカメラ10は、いわゆるコンパクトカメラであり、そのカメラボディ(カメラ本体)12は、片手で把持可能な薄い箱状に形成されている。
カメラボディ12の正面には、図1に示すように、撮影レンズ14、フラッシュ16、スピーカ18、AF補助光ランプ20等が設けられており、上面には、シャッタボタン22、モードレバー24、電源ボタン26等が設けられている。
一方、カメラボディ12の背面には、図2に示すように、モニタ28、ズームボタン30、再生ボタン32、削除ボタン34、十字ボタン36、MENU/OKボタン38、DISP/BACKボタン40等が設けられており、側面には、外部接続端子42が設けられている。
また、図示されていないが、カメラボディ12の底面には、三脚ネジ穴及び開閉自在なバッテリカバーが設けられており、バッテリカバーの内側には、バッテリを収納するためのバッテリ収納室及びメモリカードを装着するためのメモリカードスロットが設けられている。
撮影レンズ14は、沈胴式のズームレンズで構成されており、デジタルカメラ10の電源をONすると、カメラボディ12から繰り出される。なお、撮影レンズ14のズーム機構や沈胴機構については、公知の技術なので、ここでは、その具体的な構成についての説明は省略する。
フラッシュ16は、キセノン管で構成されており、暗い被写体を撮影する場合や逆光時などに必要に応じて発光される。
AF補助光ランプ20は、たとえば高輝度LED構成されており、AF時に必要に応じて発光される。
シャッタボタン22は、いわゆる「半押し」と「全押し」が可能な二段ストローク式の押下スイッチで構成されている。デジタルカメラ10は、このシャッタボタン22を半押しすると撮影準備処理、すなわち、AE(Automatic Exposure:自動露出)、AF(Auto Focus:自動焦点合わせ)、AWB(Automatic White Balance:自動ホワイトバランス)の各処理を行い、全押すると、画像の撮影・記録処理を行う。
モードレバー24は、撮影モードの設定に用いられる。このモードレバー24は、シャッタボタン22の周りを回動自在に設けられており、「SP位置」、「AUTO位置」、「M位置」、「動画位置」にセット可能に設けられている。デジタルカメラ10は、このモードレバー24を「SP位置」にセットすることにより、「シーンプログラム撮影モード」に設定され、撮影シーンに応じた露出制御、撮影制御を行うモードに設定される。また、「AUTO位置」にセットすることにより、「オート撮影モード」に設定され、露出制御を全自動で行うモードに設定される。また、「M位置」に設定されることにより、「マニュアル撮影モード」に設定され、露出設定を手動で行うモードに設定される。また、「動画位置」に設定することにより、「動画撮影モード」に設定され、動画を撮影するモードに設定される。
なお、「シーンプログラム撮影モード」としては、たとえば、人物撮影を行う「人物撮影モード」、風景撮影を行う「風景撮影モード」、スポーツ撮影を行う「スポーツ撮影モード」、夜景撮影を行う「夜景撮影モード」、水中撮影を行う「水中撮影モード」等が用意されており、メニュー画面で設定可能にされている。
電源ボタン26は、デジタルカメラ10の電源をON/OFFするのに用いられ、所定時間(たとえば、2秒)押下されることにより、デジタルカメラ10の電源が、ON/OFFされる。
モニタ28は、カラーLCDで構成されている。このモニタ28は、撮影済み画像の再生表示に利用されるとともに、各種設定時にGUIとして利用される。また、撮影時には、撮像素子で捉えた画像がスルー表示されて、電子ファインダとしても利用される。
ズームボタン30は、撮影レンズ14及び再生画像のズーム指示に用いられ、望遠側及び拡大側へのズームを指示するズームテレボタンと、広角側及び縮小側へのズームを指示するズームワイドボタンとで構成されている。
再生ボタン32は、再生モードへの切り替え指示に用いられる。すなわち、デジタルカメラ10は、撮影中、この再生ボタン32が押されると、再生モードに切り替えられる。また、電源OFFの状態でこの再生ボタン32が押されると、再生モードの状態でデジタルカメラ10が起動する。
削除ボタン34は、再生中の画像に対する削除指示に用いられる。すなわち、画像再生中に、この削除ボタン34が押されると、モニタ28に再生表示されている画像に対して削除指示が行われる。この削除ボタン34が押されると、モニタ28上に削除の実行を確認するメッセージが表示され、実行が指示(MENU/OKボタンの押下)された後、対象画像の画像ファイルがメモリカード152から削除される。
なお、この画像ファイルは、見かけ上、メモリカード152からは削除されるが、所定のゴミ箱ファイルに格納されて、必要に応じて復元される。この点については、後に詳述する。
十字ボタン36は、上下左右4方向に押圧操作可能に設けられており、各方向には、カメラの設定状態に応じた機能が割り当てられる。
たとえば、撮影時には、左ボタンにマクロ機能のON/OFFを切り替える機能が割り当てられ、右ボタンにフラッシュモードを切り替える機能が割り当てられる。また、上ボタンにモニタ28の明るさを替える機能が割り当てられ、下ボタンにセルフタイマのON/OFFを切り替える機能が割り当てられる。
また、再生時には、左ボタンにコマ送りの機能が割り当てられ、右ボタンにコマ戻しの機能が割り当てられる。
また、各種設定時には、モニタ28に表示されたカーソルを各ボタンの方向に移動させる機能が割り当てられる。
なお、本実施の形態のデジタルカメラ10において、フラッシュモードには、オート発光モード(撮影シーンに応じて自動的にフラッシュが発光される)と、強制発光モード(強制的にフラッシュが発光される)と、発光禁止モード(発光が禁止される)と、スローシンクロモード(スローシャッタ撮影が行われる)、赤目軽減発光モード(赤目軽減処理が行われる)、二枚撮りモード(1回の記録指示(シャッタボタンの全押し)でフラッシュON画像とフラッシュOFF画像の二枚の画像を撮影する)が用意されており、十字ボタン36の右ボタンを押すたびに順次モードが切り替わるようにされている。
MENU/OKボタン38は、メニュー画面の呼び出し(MENU機能)に用いられるとともに、選択内容の確定、処理の実行指示等(OK機能)に用いられ、デジタルカメラ10の設定状態に応じて割り当てられる機能が切り替えられる。
なお、メニュー画面では、たとえば、画像サイズ(記録画素数)の設定、感度の設定、記録方式(圧縮/RAW画像データ記録)の設定、ホワイトバランスの設定、測光方式の設定、AF方式の設定、セルフタイマの設定、デジタルズーム機能の設定、連写機能の設定、DPOFの設定等、デジタルカメラ10が有する各種機能の設定が行われる。
DISP/BACKボタン40は、モニタ28の表示内容の切り替え指示(DISP機能)に用いられるとともに、入力操作のキャンセル等の指示(BACK機能)に用いられ、デジタルカメラ10の設定状態に応じて割り当てられる機能が切り替えられる。
外部接続端子42は、パソコンやプリンタ等の外部機器にカメラを接続するための通信インタフェイスである(たとえば、USB、IEEE1394等)。デジタルカメラ10は、この外部接続端子42に専用のケーブルを接続して、パソコン等の外部機器に接続することができる。
図3は、本実施の形態のデジタルカメラ10の電気的構成を示すブロック図である。
同図に示すように、デジタルカメラ10は、CPU110、操作部(シャッタボタン22、モードレバー24、電源ボタン26、ズームボタン30、再生ボタン32、削除ボタン34、十字ボタン36、MENU/OKボタン38、DISP/BACKボタン40等)112、ROM116、フラッシュROM118、メモリ(SDRAM)120、VRAM122、撮影レンズ14、ズーム制御部124、絞り・シャッタ制御部126、フォーカス制御部128、撮像素子134、撮像素子制御部136、アナログ信号処理部138、A/D変換器140、デジタル信号処理部142、AF検出部144、AE/AWB検出部146、圧縮伸張処理部148、メディアコントローラ150、メモリカード(記憶メディア)152、表示制御部154、OSD(On−Screen Display)部156、モニタ28、フラッシュ制御部158、フラッシュ16、通信制御部160、通信インタフェイス162等を備えて構成されている。
CPU110は、デジタルカメラ10の全体の動作を統括制御する制御手段として機能し、操作部112からの入力に基づき所定の制御プログラムに従って各部を制御する。
バス114を介して接続されたROM116には、このCPU110が実行する制御プログラム及び制御に必要な各種データ等が格納される。また、フラッシュROM118には、ユーザ設定情報等のデジタルカメラ10の動作に関する各種設定情報や画像ファイル等が格納される。すなわち、このフラッシュROM118は、内部メモリとしても機能し、画像ファイルの保存先として指定された場合、このフラッシュROM118に撮影により得られた画像ファイルが格納される。
メモリ(SDRAM)120は、CPU110の演算作業用領域として利用されるとともに、画像データの一時記憶領域として利用され、VRAM122は、表示用の画像データ専用の一時記憶領域として利用される。
撮影レンズ14は、ズームレンズ14Z、絞り・シャッタユニット14I、フォーカスレンズ14F等を含んで構成されている。
ズームレンズ14Zは、図示しないズームレンズアクチュエータに駆動されて光軸に沿って前後移動する。これにより、撮影レンズ14の焦点距離が可変する。CPU110は、ズーム制御部124を介してズームレンズアクチュエータの駆動を制御することにより、ズームレンズ14Zの移動を制御し、ズーミングを行う。
フォーカスレンズ14Fは、図示しないフォーカスレンズアクチュエータに駆動されて光軸に沿って前後移動する。これにより、撮影レンズ14の結像位置が変化する。CPU110は、フォーカス制御部128を介してフォーカスレンズアクチュエータの駆動を制御することにより、フォーカスレンズ14Fの移動を制御し、フォーカシングを行う。
絞り・シャッタユニット14Iは、図示しない絞りとメカシャッタを備えている。絞りは、絞り・シャッタユニット14Iに内蔵された図示しない絞りアクチュエータに駆動されて動作し、これにより、撮像素子134への入射光量が調整される。CPU110は、絞り・シャッタ制御部126を介して絞りアクチュエータの駆動を制御することにより、絞りの動作を制御し、撮像素子134への入射光量(絞り値)を制御する。メカシャッタは、絞り・シャッタユニット14Iに内蔵された図示しないシャッタアクチュエータに駆動されて動作し、これにより、撮像素子134の露光/遮光が行われる。CPU110は、絞り・シャッタ制御部126を介してシャッタアクチュエータの駆動を制御することにより、メカシャッタの動作を制御し、撮像素子134の露光/遮光を制御する。
撮像素子134は、所定のカラーフィルタ配列のカラーCCDやカラーCMOSセンサ等で構成される(本例では、カラーCCD(たとえば、ベイヤ配列))。CPU110は、撮像素子制御部136を介して撮像素子134を駆動し、撮影レンズ14を通して撮像した被写体画像を画像信号として出力させる。
アナログ信号処理部138は、撮像素子134から出力される画像信号を相関二重サンプリング処理するとともに増幅する。
A/D変換器140は、アナログ信号処理部138から出力されたアナログの画像信号をデジタルの画像信号に変換する。
デジタル信号処理部142は、CPU110からの指令に従い、A/D変換器140から出力される画像信号を取り込み、所定の信号処理を施して輝度信号Yと色差信号Cr、CbとからなるY/Cの画像信号を生成する。また、CPU110からの指令に従い、Y/Cの画像信号に色調補正処理、階調補正処理等の各種画像処理を施す。
AF検出部144は、A/D変換器140から出力されるR、G、Bの各色の画像信号を取り込み、AF制御に必要な焦点評価値を算出する。このAF検出部144は、G信号の高周波成分のみを通過させるハイパスフィルタ、絶対値化処理部、画面に設定された所定のフォーカスエリア内の信号を切り出すフォーカスエリア抽出部、及び、フォーカスエリア内の絶対値データを積算する積算部を含み、この積算部で積算されたフォーカスエリア内の絶対値データを焦点評価値としてCPU110に出力する。
CPU110は、AF制御時、このAF検出部144から出力される焦点評価値が極大となる位置をサーチし、その位置にフォーカスレンズ14Fを移動させることにより、主要被写体への焦点合わせを行う。すなわち、CPU110は、AF制御時、まず、フォーカスレンズ14Fを至近から無限遠まで移動させ、その移動過程で一定間隔おきに逐次AF検出部144から焦点評価値を取得する。そして、その焦点評価値が極大となる位置を検出し、検出された焦点評価値が極大の位置を合焦位置と判定して、その位置にフォーカスレンズ14Fを移動させる。これにより、フォーカスエリアに位置する被写体(主要被写体)に撮影レンズ14の焦点が合わせられる。
なお、焦点評価値が極大の位置が検出されない場合(たとえば、低コントラスト時)、CPU110は、AFエラーと判定し、所定の警告を行う(たとえば、モニタ28へのエラーメッセージの表示)。
AE/AWB検出部146は、A/D変換器140から出力されるR、G、Bの各色の画像信号を取り込み、AE制御及びAWB制御に必要な積算値を算出する。すなわち、このAE/AWB検出部146は、一画面を複数のエリア(たとえば、8×8=64エリア)に分割し、分割されたエリアごとにR、G、B信号の積算値を算出する。
CPU110は、AE制御時、このAE/AWB検出部146で算出されたエリアごとのR、G、B信号の積算値を取得し、被写体の明るさ(測光値)を求めて、適正な露光量を得るための露出設定を行う。すなわち、感度、絞り値、シャッタスピード、フラッシュ発光の要否を設定する。
また、CPU110は、AWB制御時、AE/AWB検出部146で算出されたエリアごとのR、G、B信号の積算値をデジタル信号処理部142に加える。デジタル信号処理部142は、得られた積算値に基づいてホワイトバランス調整用のゲイン値を算出するとともに、光源種を検出する。
圧縮伸張処理部148は、CPU110からの指令に従い、入力された画像データに所定形式(たとえば、JPEG形式)の圧縮処理を施し、圧縮画像データを生成する。また、CPU110からの指令に従い、入力された圧縮画像データに所定形式の伸張処理を施し、非圧縮のY/Cの画像データを生成する。
なお、撮影された画像をRAW画像データとして記録することもできる。この場合、圧縮処理は行われずに、A/D変換後の画像データが、所定のファイル形式でそのままメモリカード152に記録される。
メディアコントローラ150は、CPU110からの指令に従い、メモリカード152に対してデータの読み/書きを制御する。メモリカード152は、上記のようにカメラ本体に設けられたメディアスロットに着脱自在に装填される。
表示制御部154は、CPU110からの指令に従い、モニタ28への表示を制御する。すなわち、CPU110からの指令に従い、入力された画像信号をモニタ28に表示するための信号形式に変換してモニタ28に出力する。また、CPU110からの指令に従い、OSD部156から加えられる文字、図形、記号等のOSD信号を画像信号に混合して、モニタ28に出力する。
OSD部156は、キャラクタジェネレータを含み、CPU110からの指令に従い、モニタ28に表示する文字(警告メッセージや撮影情報(絞り、感度、シャッタ速度等)、撮影日時、撮影可能枚数、ファイル名等)、図形(顔検出枠、撮影補助線)、記号(フォーカスフレーム、電池残量マーク等)等の信号(OSD信号)を生成する。OSD部156で生成されたOSD信号は、表示制御部154に出力され、画像信号に混合されて液晶モニタ28に出力される。これにより、撮影画像や再生画像に文字情報等が重ねて表示される。
フラッシュ制御部158は、CPU110からの指令に従い、フラッシュ16の発光を制御する。
通信制御部160は、CPU110からの指令に従い、通信インタフェイス162を介して接続された外部機器との間の通信を制御する。なお、本デジタルカメラ10は、通信インタフェイス162を介してパソコンに接続されると、ストレージデバイスとして認識され、メモリカード152に格納されたデータの送受信が可能になる。
次に、以上のように構成された本実施の形態のデジタルカメラ10による処理動作について説明する。
まず、基本的な撮影、再生の処理動作について説明する。
撮影はデジタルカメラ10のモードを撮影モードに設定することにより行われる。撮影モードの設定は、電源OFFの状態で電源ボタン26を押圧操作することにより、あるいは、再生モードの状態でシャッタボタン22を押圧操作することにより行われる。
デジタルカメラ10のモードが撮影モードに設定されると、まず、撮像素子134で捉えた画像がモニタ28にスルー表示される。すなわち、撮像素子134で連続的に画像が撮像され、その画像が連続的に処理されて、スルー画像用の画像データが生成される。生成された画像データは、VRAM122を介して順次表示制御部154に加えられ、表示用の信号形式に変換されて、モニタ28に出力される。これにより、撮像素子134で捉えた画像がモニタ28にスルー表示される。撮影者は、このモニタ28に表示されたスルー画像を見て構図を決定し、シャッタボタン22を半押しする。
シャッタボタン22が半押しされると、CPU110にS1ON信号が入力される。CPU110は、このS1ON信号の入力に応動して、撮影準備処理、すなわちAE、AF、AWBの各処理を実行する。
まず、撮像素子134から出力された画像信号をアナログ信号処理部138、A/D変換器140を介してAE/AWB検出部146及びAF検出部144に加える。
AE/AWB検出部146は、入力された画像信号からAE制御及びAWB制御に必要な積算値を算出し、CPU110に出力する。CPU110は、このAE/AWB検出部146から得られた積算値に基づき被写体輝度を算出し、適正露出を得るための感度、絞り値、シャッタスピード等を決定する。また、ホワイトバランス補正のためにAE/AWB検出部146から得られた積算値をデジタル信号処理部142に加える。
また、AF検出部144は、入力された画像信号からAF制御に必要な積算値を算出し、CPU110に出力する。CPU110は、このAF検出部144からの出力に基づきフォーカス制御部128介してフォーカスレンズ14Fの移動を制御し、撮影レンズ14の焦点を主要被写体に合わせる。
撮影者は、モニタ28に表示されるスルー画像を見てピント状態等を確認し、撮影実行を指示する。すなわち、シャッタボタン22を全押しする。
シャッタボタン22が全押しされると、CPU110にS2ON信号が入力される。CPU110は、このS2ON信号に応動して、本撮影の処理を実行する。
まず、上記AE制御の結果求めた感度、絞り値、シャッタスピードで撮像素子134を露光し、記録用の画像を撮像する。
撮像素子134から出力された記録用の画像信号は、アナログ信号処理部138、A/D変換器140を介してデジタル信号処理部142に加えられる。デジタル信号処理部142は、入力された画像信号に所定の信号処理を施して、輝度データYと色差データCr、Cbとからなる画像データ(Y/Cデータ)を生成する。
生成された画像データは、圧縮伸張処理部148に加えられ、所定の圧縮処理が施されたのち、メモリ120に格納される。CPU110は、このメモリ120に格納された圧縮画像データに撮影に関する所定の情報を付加し、所定フォーマット(本実施の形態のデジタルカメラではExif)の画像ファイルとして、メディアコントローラ150を介してメモリカード152に記録する。
図4に示すように、Exif規格の画像ファイルは、ファイルのヘッダ部分に画像の付属情報をタグ形式で記録できるようにされており、その付属情報タグには、バージョンに関する情報や画像データの特性に関する情報、構造に関する情報、ユーザ情報、関連ファイル情報、日時に関する情報、撮影条件に関する情報、IFDへのポインタに関する情報等の撮影した画像に関する撮影データがタグ形式で記録できるようにされている。
また、撮影条件に関するタグには、撮影時の露出時間やFナンバー、露出プログラム、スペクトル感度、ISOスピードレート、光電変換関数、シャッタスピード、絞り値、輝度値、露出補正値、レンズ最小F値、被写体距離、測光方式、光源、フラッシュ、レンズ焦点距離、フラッシュ強度、空間周波数応答、焦点面の幅の解像度、焦点面の高さの解像度、焦点面解像度単位、被写体位置、露出インデックス、センサ方式、ファイルソース、シーンタイプ、CFAパターン等が記録できるようにされている。
また、ユーザ情報に関するタグには、メーカーノート、ユーザコメントが記録できるようにされており、このメーカーノート、ユーザコメントにカメラやユーザ固有の各種情報を記録できるようにされている。
また、Exif規格の画像ファイルは、ファイルのヘッダ部分にサムネイル画像(主画像の縮小画像)を記録できるようにされており、このサムネイル画像を利用することにより、モニタへの高速表示が可能にされている。
さらに、Exif規格の画像ファイルは、データの先端にSOIマーカ(Start Of Image)が記録されるとともに、終端にEOIマーカ(End Of Image)が記録され、ファイルの始まりと終わりを認識できるようにされている。
撮影された画像データは、これらの付属情報が付された画像ファイル(Exifファイル)としてメモリカード152に記録される。
なお、記録形式としてRAW画像データ記録が選択されている場合は、A/D変換後の画像データ(RAW画像データ)が、所定フォーマットの画像ファイル(RAW画像ファイル)としてメモリカード152に記録される。このRAW画像ファイルも、そのヘッダ部分に撮影に関する所定の情報がタグ形式で付加されて記録される。
また、画像ファイルは、所定のカメラファイルシステム規格(本例では、DCF規格(Design rule for Camera File system規格))に従ってメモリカード152に記録される。
以上のようにしてメモリカード152に記録された画像は、デジタルカメラ10のモードを再生モードに設定することにより、モニタ28に再生表示される。すなわち、再生ボタン32を押圧操作し、デジタルカメラ10のモードが、再生モードに設定されると、CPU110は、メディアコントローラ150を介してメモリカード152に最後に記録された画像ファイルの圧縮画像データを読み出す。
メモリカード152から読み出された圧縮画像データは、圧縮伸張処理部148に加えられ、非圧縮の画像データとされたのちVRAM122に加えられる。そして、VRAM122から表示制御部154を介してモニタ28に出力される。これにより、メモリカード152に記録されている画像が、モニタ28に再生表示される。
画像のコマ送りは、十字ボタン36の右キー及び左キーにて行われ、右キーが押圧操作されると、次の画像がメモリカード152から読み出され、モニタ28に再生表示される。また、左キーが押圧操作されると、1つ前の画像がメモリカード152から読み出され、モニタ28に再生表示される。
なお、RAW画像ファイルの場合は、デジタル信号処理部142で所定の信号処理が施されて、モニタ28に再生表示される。
以上のように、本実施の形態のデジタルカメラ10は、カメラのモードを撮影モードに設定し、シャッタボタン22を全押しすることにより、画像の記録が行われる。そして、記録された画像は、カメラのモードを再生モードに設定することにより、モニタ28に再生表示される。
<画像ファイルの削除処理>
上記のように、撮影された画像は、すべてメモリカード152に記録されるが、記録枚数が多くなると、閲覧性が低下し、見たい画像がすぐに見つけ出せなくする。
そこで、必要に応じて適宜不要な画像を削除し、メモリカード152に記録されている画像を整理する必要がある。
画像の削除は、再生モードの下、削除対象の画像ファイルの画像をモニタ28に再生表示させ、削除ボタン34を押下することにより行われる。
CPU110は、画像再生中に削除ボタン34が押下されたことを検知すると、モニタ28に削除実行を確認するメッセージ(たとえば、「削除しますか? OK/CANCEL」)を表示させる。
ユーザは、このメッセージを確認し、削除を実行する場合は、MENU/OKボタン38を押下し、指示を取り消す場合は、DISP/BACKボタン40を押下する。
CPU110は、この操作部からの入力に応じて、その後の処理を実行する。すなわち、DISP/BACKボタン40が押下された場合は、通常の再生時の状態に復帰し、MENU/OKボタン38が押下された場合は、削除対象の画像ファイルをメモリカード152から削除する。
ここで、この削除対象の画像ファイルは、メモリカード152から削除されると同時に所定のゴミ箱ファイルに格納される。すなわち、見かけ上はメモリカード152から削除されるが、所定のゴミ箱ファイルに格納されて保管される。したがって、必要に応じて復元することができる。
このゴミ箱ファイルは、図5に示すように、削除された画像ファイルを1つにまとめて格納するファイル(いわゆる、マルチページファイル)であり、削除された画像ファイルは、すべてこのゴミ箱ファイルに格納される。
なお、図5は、メモリカード152内に[DSCF0001]、[DSCF0002]、[DSCF0003]、[DSCF0004]、[DSCF0005]の5つの画像ファイルが記録されている場合において、[DSCF0001]、[DSCF0002]、[DSCF0004]の3つの画像ファイルを削除したときの状態を示している。この場合、[DSCF0001]、[DSCF0002]、[DSCF0004]の3つの画像ファイルが、1つのゴミ箱ファイル([TRSH0001])に格納される。そして、メモリカード152には、ゴミ箱ファイルと画像ファイル[DSCF0003]と[DSCF0005]とが残る。
図6は、ゴミ箱ファイルのデータ構造を示す概略図である。同図に示すように、ゴミ箱ファイルは、代表画像領域D1と削除画像領域D2とを有している。
削除画像領域D2は、削除された画像ファイルを格納する領域である。削除された画像ファイルは、そのデータ構造(Exif規格)を維持したまま、削除された順に、この削除画像領域D2に格納される。この際、各画像ファイルには、そのデータの先端にSOIマーカが記録されるとともに、終端にEOIマーカが記録される。これにより、各画像ファイルの始まりと終わりを認識することができる。
代表画像領域D1は、削除画像領域D2に格納された削除済みの画像ファイルの1つを選択し、その画像ファイルの画像を代表画像として格納する領域である。本例では、一番最初に削除された画像ファイルの画像を代表画像として格納する。
この代表画像領域D1は、Exif規格に準じて構成される。したがって、ゴミ箱ファイルの認識ができない機器であっても、Exifファイルを認識可能な機器であれば、少なくともこの代表画像領域D1に格納された画像(代表画像)を表示することができる。
この代表画像領域D1のヘッダ部分に設けられたIFD0領域(0th IFD)のExif IFD領域には、本ファイル(ゴミ箱ファイル)が、削除画像領域D2を含むか否かを示す削除画像領域有無情報、及び、削除画像領域D2を含む場合に、削除画像Index情報の格納場所を示す情報(ポインタ)が格納される。したがって、ゴミ箱ファイルを認識可能な機器は、このIFD0領域(0th IFD)を読み込むことで、ゴミ箱ファイルか否かを判定することができる。
また、このIFD0領域(0th IFD)には、本ファイルにおける削除画像ファイルの格納場所(各画像ファイルのSOIマーカのアドレス)を示す削除画像識別IFD(1)、…、IFD(n)が格納される。したがって、ゴミ箱ファイルを認識可能な機器は、このIFD0領域(0th IFD)を読み込むことで、各画像ファイルの格納位置を認識することができる。
一方、IFD1領域(1st IFD)には、削除した画像ファイルのサムネイル画像が格納される。したがって、ゴミ箱ファイルを認識可能な機器において、ゴミ箱ファイル内に格納されている各画像ファイルをモニタに一覧表示する場合は、このIFD1領域(1st IFD)に格納されたサムネイル画像を利用して、モニタに表示させることができる。
なお、ヘッダの他の領域には、格納した画像の情報が、そのまま記録される。したがって、本例の場合、一番最初に削除された画像ファイルの画像の情報が、そのまま記録され、サムネイル画像も、一番最初に削除された画像ファイルのサムネイルが記録される。
また、上記のように、代表画像領域D1は、Exif規格に準じて構成されているので、ゴミ箱ファイルの認識ができない機器であっても、代表画像領域D1の情報を読み出すことにより、モニタに画像を表示することができる。この場合、代表画像領域D1に格納された画像(代表画像)が表示される(本例の場合、最初に削除された画像ファイルの画像が表示される)。
なお、本例では、代表画像領域D1のIFD0領域(0th IFD)に削除した画像ファイルの情報を記録する構成としているが、この他、メーカーノートに削除した画像ファイルの情報(ゴミ箱ファイルの内部情報(ファイル数や削除した日時、画像情報など))を記録するようにしてもよい。すなわち、Exifファイルに準じた構成でヘッダに記録された情報から、少なくとも格納されている画像ファイルの数、領域(開始アドレスと終了アドレス)が読み取れる構成であればよい。
また、ゴミ箱ファイルは、削除された画像ファイルと同じディレクトリ(フォルダ)に記録される。
ここで、上記のように、本実施の形態のデジタルカメラ10では、DCF規格に従ってメモリカード152に画像ファイルが格納される。
図7に示すように、DCF規格では、ルートディレクトリの直下にDCFイメージディレクトリ(「DCIM」)が生成され、そのDCFイメージディレクトリ(「DCIM」)の下位層にDCFディレクトリ(「100_FUJI」、「101_FUJI」、…)が生成される。撮影により画像の画像ファイルは、このDCFディレクトリ(「100_FUJI」、「101_FUJI」、…)に格納される。
したがって、ゴミ箱ファイルは、DCFディレクトリ(DCFフォルダ)単位で生成され、DCFディレクトリに格納される。
なお、DCFディレクトリのディレクトリ名は、先頭3文字がディレクトリ番号、そのディレクトリ番号に続く5文字が自由文字で構成される(本例では、自由文字を「_FUJI」で構成している)。
また、ファイル名は、先頭4文字が自由文字、その自由文字に続く4文字がファイル番号で構成される(本例では、自由文字を「DSCF」で構成している(ゴミ箱ファイルについては、自由文字を「TRSH」で構成している)。
図8は、ゴミ箱ファイルの生成処理の手順を示すフローチャートである。
上記のように、画像ファイルの削除は、再生モードの下、削除対象とする画像ファイルの画像をモニタ28に表示させ、削除ボタン34を押下することにより行われる。
まず、ユーザは、カメラのモードを再生モードに設定し、削除対象とする画像ファイルの画像をモニタ28に表示させる(ステップS10)。
CPU110は、操作部112からの入力に基づいて、削除ボタン34が押下されたか否か、すなわち、削除が指示されたか否かを判定する(ステップS11)。
削除が指示されたと判定すると、CPU110は、削除確認のメッセージ(たとえば、「この画像を削除しますか?」等)をモニタ28に表示させる(ステップS12)。ユーザは、このメッセージを確認し、削除を実行する場合は、MENU/OKボタン38を押下し、指示を取り消す場合は、DISP/BACKボタン40を押下する。CPU110は、操作部からの入力に基づいて、削除の実行が指示されたか否かを判定する(ステップS13)。そして、削除実行が指示されると、CPU110は、当該削除対象の画像ファイルが格納されているフォルダ(ディレクトリ)にゴミ箱ファイルが存在するか否かを判定する(ステップS14)。
ここで、削除対象の画像ファイルが格納されているフォルダにゴミ箱ファイルが存在していないと判定すると、CPU110は、新規にゴミ箱ファイルを作成する(ステップS15)。上記のように、ゴミ箱ファイルは、代表画像領域D1に、最初に削除指示された画像を代表画像として格納するとともに、そのヘッダ部に所要の情報を記録して生成される。CPU110は、その新規に作成したゴミ箱ファイルに削除指示された画像の画像ファイルを追記する(ステップS16)。これにより、削除指示された画像の画像ファイルが格納されたゴミ箱ファイルが生成される。
一方、上記ステップS14で既にゴミ箱ファイルが存在していると判定すると、CPU110は、その既存のゴミ箱ファイルに削除指示された画像の画像ファイルを追記する(ステップS16)。これにより、削除指示された画像の画像ファイルが、追加して格納されたゴミ箱ファイルが生成される。
このように、CPU110は、削除実行の指示を受けると、その削除指示された画像の画像ファイルをゴミ箱ファイルに格納する。CPU110は、このゴミ箱ファイルへの格納処理を行った後、削除指示された画像の画像ファイルをメモリカード152から削除する(ステップS17)。
この後、CPU110は、操作部112からの入力に基づいて、再生モードの終了が指示されたか否かを判定し(ステップS18)、再生モードの終了が指示されると、処理を終了する。
なお、画像ファイルが削除された場合、モニタ28には、次の画像ファイルの画像(ファイル番号が、次の画像ファイルの画像)が再生表示される。
以上のように、本実施の形態のデジタルカメラでは、画像の削除が指示されると、その削除指示された画像の画像ファイルが、ゴミ箱ファイルに格納された後、メモリカード152から削除される。そして、このゴミ箱ファイルは、1つのファイルで構成され、削除された画像ファイルが逐次追記されて生成される。このように削除指示された画像ファイルを1つのファイルとして保管することにより、画像ファイルの管理、閲覧性を向上させることができる。
なお、本例では、削除が指示された後、一度、削除実行を確認する処理を行っているが(ステップS12及びステップS13)、当該確認の処理は行わずに、削除するようにしてもよい。
また、本例では、削除指示された画像ファイルをすべて1つのゴミ箱ファイルに格納するようにしているが、1つのゴミ箱ファイルに格納できる画像ファイルの数に上限値を設定し、上限値に達したら、ゴミ箱ファイルを新規に生成するようにしてもよい。この場合、上限値は、ユーザが設定できるようにしてもよいし、また、固定値としてもよい。
また、本例では、DCFディレクトリごとにゴミ箱ファイルを生成(削除された画像ファイルと同じディレクトリにゴミ箱ファイルを格納)しているが、ゴミ箱ファイルの格納は、これに限定されるものではない。別途、ゴミ箱ファイルのみを格納するディレクトリを生成(たとえば、DCFイメージルートディレクトリの直下に生成)し、当該ディレクトリにゴミ箱ファイルを格納するようにしてもよい。この場合、ディレクトリ単位でゴミ箱ファイルを生成してもよいし、また、画像ファイルの格納元のディレクトリに関わらず、共通のゴミ箱ファイルを生成してもよい。また、メモリカード152に格納するのではなく、フラッシュROM118等の内部メモリに格納するようにしてもよい。
<ゴミ箱ファイルに格納された画像ファイルの表示設定>
さて、上記のように、本実施の形態のデジタルカメラでは、削除した画像ファイルが1つのゴミ箱ファイルに格納される。
ゴミ箱ファイルに格納された画像ファイルは、必要に応じて復元させることができる。後述するように、この復元の操作は、ゴミ箱ファイルに格納されている画像ファイルの画像をモニタ28に表示させ、目的とする画像に対して復元の指示を与えることにより行われる。
ところで、ゴミ箱ファイルに格納されている画像ファイルのなかには、一応確保しておきたいものもあれば、まったく不要のものも存在する。
したがって、不要な画像ファイルは、中身の閲覧時に表示されないようにすることが好ましい。
本実施の形態のデジタルカメラでは、ゴミ箱ファイルに格納された画像ファイルの表示/非表示の設定(表示のON/OFFの設定)を個別に行うことができる。
以下、このゴミ箱ファイルに格納された画像ファイルの表示設定(表示のON/OFFの設定)の処理について説明する。
図9は、ゴミ箱ファイルに格納された画像ファイルの表示設定の処理手順を示すフローチャートである。
ゴミ箱ファイルに格納された個々の画像ファイルの表示設定は、あらかじめ用意された表示設定機能(具体的には表示設定処理を行うプログラム)を呼び出して行われる。この表示設定機能の呼び出しは、メニュー画面で行われる。すなわち、あらかじめメニュー項目の一つとして、「ゴミ箱ファイルの中身の表示設定」の項目が用意されており、この項目がメニュー画面で選択されると、所定の表示設定の機能が呼び出される。
したがって、この処理を行う場合、まず、ユーザは、メニュー画面で表示設定機能の呼び出しの処理を行う(ステップS20)。
CPU110は、表示設定機能が呼び出されると、所定の制御プログラムに従って、表示設定の処理を実行する。
まず、CPU110は、CPU110は、ユーザにディレクトリ(フォルダ)を選択させる(ステップS21)。すなわち、表示設定を行う画像ファイルが格納されているディレクトリの選択をさせる。この選択処理は、たとえば、メモリカード152のDCFイメージルートディレクトリに生成されているDCFディレクトリをモニタ28に一覧表示させ、その1つを選択させることにより行われる。
ディレクトリの選択が行われると、CPU110は、メモリカード152にアクセスし、そのディレクトリにゴミ箱ファイルが存在するか否かを判定する(ステップS22)。ここで、選択されたディレクトリにゴミ箱ファイルが存在しないと判定すると、CPU110は、所定のエラーメッセージ(たとえば、「復元可能な画像がありません」等)をモニタ28に表示させる(ステップS38)。
一方、選択されたディレクトリにゴミ箱ファイルが存在する場合、CPU110は、そのゴミ箱ファイルの解析処理を行う(ステップS23)。すなわち、そのゴミ箱ファイルに格納されている画像ファイルの総数等を確認する処理を行う。そして、その解析結果に基づき、パラメータNにゴミ箱ファイルに格納されている画像ファイルの総数を設定する(ステップS24)。また、パラメータnに1を設定する(ステップS25)。
この後、CPU110は、ゴミ箱ファイルに格納されたnコマ目の画像ファイルの画像をモニタ28に表示させる(ステップS26)。
ここでは、nが1に設定されているので、1コマ目の画像ファイルの画像がモニタ28に表示される。
図10は、モニタ28の表示例を示す図である。同図に示すように、モニタ28には、画面中央に読み出した画像ファイルの画像(nコマ目の画像)が表示される。そして、その画像の上下左右に十字ボタン36に割り当てられた機能のアイコンが表示される。
ここで、本実施の形態のデジタルカメラ10では、表示設定のモード時、十字ボタン36の右ボタンにコマ送り、左ボタンにコマ戻し、上ボタンに表示のON設定、下ボタンに表示のOFF設定の機能が割り当てられる。したがって、画像の右側にコマ送りのアイコン、左側にコマ戻しのアイコン、上側に表示のON設定(表示)のアイコン、下側に表示のOFF設定(非表示)のアイコンが表示される。
CPU110は、読み出した画像ファイルの画像をモニタ28に表示させるとともに、これらのアイコン画像を表示させる。
なお、画面左上隅のアイコンは、現在のモードを示すアイコンであり、現在のモードが表示設定のモードであることを示している。
また、画面右上隅の表示は、現在のコマ番号(表示される画像に付与される通し番号)を示しており、分子が現在のコマ番号、分母がゴミ箱ファイル内に格納されている画像ファイルの総数を示している(コマ番号/総数)。
また、画面右下隅の表示は、表示中の画像の現在の表示設定を示しており、ON又はOFFが表示される。なお、初期設定では、すべてONにされている。したがって、本表示設定の処理を行わない場合、ゴミ箱ファイルに格納された画像ファイルは、その展開表示時にすべて表示される。
ユーザは、このモニタ28の表示に基づいて必要な操作を行う。すなわち、現在、モニタ28に表示されている画像の表示設定がONに設定されている場合において、その表示設定をOFFに切り替えたい場合は、十字ボタン36の下ボタンを押下する。一方、現在、モニタ28に表示されている画像の表示設定がOFFに設定されている場合において、その表示設定をONに切り替えたい場合は、十字ボタン36の上ボタンを押下する。また、現在の表示設定を切り替えずに次の画像を確認する場合は、十字ボタン36の右ボタンを押下し、前の画像を確認する場合は、十字ボタン36の左ボタンを押下する。さらに、表示設定の機能を終了する場合は、DISP/BACKボタン40を押下する。
CPU110は、操作部112からの入力に基づき、キー入力の有無を判定し(ステップS27)、入力されたキー操作に応じた処理を実行する。
・十字ボタン36の上ボタンが押下された場合
上記のように、十字ボタン36の上ボタンが押下されると、現在表示中の画像の表示設定がONに設定される。
十字ボタン36の上ボタンが押下されると、現在表示中の画像の表示設定をONに設定(表示フラグ:1(有効フラグ))し、その情報をゴミ箱ファイルの所定領域に記録する(ステップS28)。記憶領域としては、たとえば、代表画像領域D1のヘッダ部分に設けられたメーカーノートに記録する。あるいは、当該画像ファイルのヘッダ部分に設けられたメーカーノートに記録する。
この後、CPU110は、パラメータnに1を加算する(ステップS29)。そして、1加算した後のパラメータnが、パラメータN(ゴミ箱ファイル内の総数)を超えているか否か判定する(ステップS34)。すなわち、最終コマの画像ファイルであったか否かを判定する。
ここで、パラメータnが、パラメータNを超えていないと判定すると、ステップS26の処理に戻り、次のコマをモニタ28に表示させる。
一方、パラメータnが、パラメータNを超えていると判定すると、CPU110は、パラメータnに1を設定し、ステップS26の処理に戻る。すなわち、最初のコマをモニタ28に表示させる。
このように、十字ボタン36の上ボタンが押下されると、現在表示中の画像の表示設定がONに設定されるとともに、コマ送りされる。
・十字ボタン36の下ボタンが押下された場合
上記のように、十字ボタン36の下ボタンが押下されると、現在表示中の画像の表示設定がOFFに設定される。
十字ボタン36の下ボタンが押下されると、現在表示中の画像の表示設定をOFFに設定(表示フラグ:0(無効フラグ))し、その情報をゴミ箱ファイルの所定領域に記録する(ステップS30)。
この後、CPU110は、パラメータnに1を加算する(ステップS31)。そして、1加算した後のパラメータnが、パラメータNを超えているか否か判定する(ステップS34)。
ここで、パラメータnが、パラメータNを超えていないと判定すると、ステップS26の処理に戻り、次のコマをモニタ28に表示させる。一方、パラメータnが、パラメータNを超えていると判定すると、CPU110は、パラメータnに1を設定し、ステップS26の処理に戻る。すなわち、最初のコマをモニタ28に表示させる。
このように、十字ボタン36の下ボタンが押下されると、現在表示中の画像の表示設定がOFFに設定されるとともに、コマ送りされる。
・十字ボタン36の右ボタンが押下された場合
上記のように、十字ボタン36の右ボタンが押下されると、コマ送りされる。
十字ボタン36の右ボタンが押下されると、CPU110は、パラメータnに1を加算する(ステップS32)。そして、1加算した後のパラメータnが、パラメータNを超えているか否か判定する(ステップS34)。
ここで、パラメータnが、パラメータNを超えていないと判定すると、ステップS26の処理に戻り、次のコマをモニタ28に表示させる。一方、パラメータnが、パラメータNを超えていると判定すると、CPU110は、パラメータnに1を設定し、ステップS26の処理に戻る。すなわち、最初のコマをモニタ28に表示させる。
・十字ボタン36の左ボタンが押下された場合
上記のように、十字ボタン36の左ボタンが押下されると、コマ戻しされる。
十字ボタン36の左ボタンが押下されると、CPU110は、パラメータnから1を除算する(ステップS33)。そして、1除算した後のパラメータnが、0か否か判定する(ステップS36)。
ここで、パラメータnが0ではないと判定すると、ステップS26の処理に戻り、一つ前のコマをモニタ28に表示させる。一方、パラメータnが、0であると判定すると、CPU110は、パラメータnにNを設定し、ステップS26の処理に戻る。すなわち、最終コマの画像をモニタ28に表示させる。
・DISP/BACKボタン40が押下された場合
上記のように、DISP/BACKボタン40が押下されると、CPU110は、表示設定の機能を終了する。この場合、直前のモードに復帰する。すなわち、直前のモードが、撮影モードの場合は、撮影モードに復帰し、再生モードの場合は、再生モードに復帰する。
なお、上記の例では、ゴミ箱ファイルに格納された画像ファイルを1コマずつモニタ28に表示させているが、複数コマをまとめて表示するようにしてもよい。たとえば、モニタ28の表示領域に2×2コマの表示領域を設け、4コマ分の画像をまとめて表示するようにしてもよいし、3×3コマの表示領域を設け、9コマ分の画像をまとめて表示するようにしてもよい。また、これらの表示形態をユーザが選択できるようにしてもよい。
なお、このように複数コマの画像を表示する場合は、たとえば、カーソルや選択枠等の選択手段で特定の画像を選択できるようにし、当該選択手段で選択された画像に対して、表示設定ができるようにする。
また、上記の例では、表示設定が切り替えられるたびに逐次、その情報をゴミ箱ファイルに記録(表示設定の情報を更新)するようにしているが、設定した情報をメモリ120等にまとめて記憶しておき、処理の最後にゴミ箱ファイルに記録するようにしてもよい(最後に一括して更新するようにしてもよい。)。
<ゴミ箱ファイルに格納された画像ファイルの表示方法>
次に、ゴミ箱ファイルに格納された画像ファイルの表示方法について説明する。
上記のように、ゴミ箱ファイルに格納された画像ファイルの表示は、表示設定に基づいて行われる。すなわち、表示設定がONにされている画像のみが表示される。
図11は、ゴミ箱ファイルに格納された画像ファイルの表示処理の手順を示すフローチャートである。
ゴミ箱ファイルに格納された画像ファイルの表示は、ゴミ箱ファイルに対して展開表示の指示を与えることにより行われる。
なお、上記のように、ゴミ箱ファイルは、その代表画像領域D1がExif形式に準じて生成されているため、デジタルカメラ10のモードを再生モードにすると、代表画像領域D1に格納された画像(代表画像)がモニタに表示される。すなわち、再生モード時にコマ送り又はコマ戻しされて、ゴミ箱ファイルが表示される番になると、そのゴミ箱ファイルの代表画像領域D1に格納された画像がモニタ28に表示される。
ユーザは、このゴミ箱ファイルの代表画像がモニタに表示された状態でデジタルカメラ10に対して、展開表示の指示を与えて、ゴミ箱ファイルに格納されている画像の表示を指示する(たとえば、MENU/OKボタン38を押下して、展開表示を指示する。)。
なお、この展開表示の指示方法は一例であり、他の方法でゴミ箱ファイルの展開表示を指示するようにすることもできる。たとえば、メニュー項目の一つにゴミ箱ファイルの展開表示の指示の項目を用意しておき、メニュー画面でゴミ箱ファイルの展開表示を指示するようにすることもできる。
CPU110は、ゴミ箱ファイルの展開表示の指示が入力されると(ステップS40)、指定されたゴミ箱ファイルにアクセスし、そのゴミ箱ファイルの解析処理を行う(ステップS41)。そして、その解析結果に基づき、パラメータMにゴミ箱ファイルに格納されている画像ファイルの総数を設定する(ステップS42)。また、パラメータmに1を設定する(ステップS43)。
この後、CPU110は、mコマ目の画像ファイルの表示設定を確認し、表示設定がONにされているか否かを判定する(ステップS44)。
この判定の結果、mコマ目の画像ファイルの表示設定がONにされていると判定すると、CPU110は、そのmコマ目の画像ファイルの画像をモニタ28に表示させる(ステップS45)。
図12は、モニタ28の表示例を示す図である。同図に示すように、モニタ28には、画面中央に読み出した画像ファイルの画像(mコマ目の画像)が表示される。そして、その画像の左右に十字ボタン36に割り当てられた機能のアイコンが表示される。本例の場合、画像の右側にコマ送りのアイコン、左側にコマ戻しのアイコンが表示される。
CPU110は、読み出した画像ファイルの画像をモニタ28に表示させるとともに、これらのアイコン画像を表示させる。
なお、画面左上隅のアイコンは、現在のモードを示すアイコンであり、現在のモードが展開表示のモードであることを示している。
また、画面右上隅の表示は、現在のコマ番号(表示される画像に付与される通し番号)を示しており、分子が現在のコマ番号、分母が表示される画像ファイルの総数(表示設定がONにされている画像ファイルの総数)を示している。
一方、上記ステップS44において、mコマ目の画像ファイルの表示設定がOFFにされていると判定すると、CPU110は、パラメータmに1を加算し(ステップS53)、加算後のパラメータmが、パラメータM(ゴミ箱ファイル内の総数)を超えているか否か判定する(ステップS54)。すなわち、最終コマの画像ファイルであるか否かを判定する。
ここで、パラメータmが、パラメータMを超えていないと判定すると、ステップS44の処理に戻り、次のコマの表示設定を確認する。
一方、パラメータmが、パラメータMを超えていると判定すると、CPU110は、パラメータmに1を設定し、ステップS44の処理に戻る。すなわち、最初のコマの表示設定を確認する。
このように、表示設定がOFFにされている画像ファイルについてはスキップし、表示設定がONにされている画像ファイルまで自動的にコマ送りされる。これにより、表示設定がONにされている画像ファイルの画像のみがモニタ28に表示される。
一方、ユーザは、モニタ28に表示された画像を確認し、次の画像を見る場合は、十字ボタン36の右ボタンを押下し、一つ前の画像を見る場合は、十字ボタン36の左ボタンを押下する。また、ゴミ箱ファイルの展開表示を終了する場合は、DISP/BACKボタン40を押下する。
CPU110は、キー入力の有無を判定し(ステップS46)、入力された操作情報に応じた処理を実行する。
・十字ボタン36の右ボタンが押下された場合
上記のように、十字ボタン36の右ボタンが押下されると、コマ送りされる。
十字ボタン36の右ボタンが押下されると、CPU110は、パラメータmに1を加算する(ステップS47)。そして、1加算した後のパラメータmが、パラメータMを超えているか否か判定する(ステップS48)。
ここで、パラメータmが、パラメータMを超えていないと判定すると、ステップS44の処理に戻り、次のコマの表示設定を確認する。一方、パラメータmが、パラメータMを超えていると判定すると、CPU110は、パラメータmに1を設定し、ステップS44の処理に戻る。すなわち、最初のコマの表示設定を確認する。
・十字ボタン36の左ボタンが押下された場合
上記のように、十字ボタン36の左ボタンが押下されると、コマ戻しされる。
十字ボタン36の左ボタンが押下されると、CPU110は、パラメータmから1を除算する(ステップS50)。そして、1除算した後のパラメータmが、0か否か判定する(ステップS51)。
ここで、パラメータmが0ではないと判定すると、ステップS44の処理に戻り、一つ前のコマの表示設定を確認する。一方、パラメータmが、0であると判定すると、CPU110は、パラメータmにMを設定し、ステップS44の処理に戻る。すなわち、最終コマの表示設定を確認する。
・DISP/BACKボタン40が押下された場合
上記のように、DISP/BACKボタン40が押下されると、CPU110は、展開表示の処理を終了する。この場合、ゴミ箱ファイルの次の画像ファイルがモニタ28に再生表示される(メニュー画面でゴミ箱ファイルの展開表示を指示した場合には、直前のモードに復帰する。)。
このように、本実施の形態のデジタルカメラでは、ゴミ箱ファイル内の画像を確認する際、必要な画像のみ表示させることができるので、目的とする画像を容易に探し出すことができ、管理閲覧性を向上させることができる。
また、表示/非表示の設定を行っているだけなので、必要な場合にいつでも復元させることができる。
また、表示/非表示の設定を行っているだけなので、処理に負担が掛からず、処理能力の低い機器においても、待ち時間等を発生させずに、軽快に表示処理動作を行うことができる。
なお、上記の例では、ゴミ箱ファイルに格納された画像ファイルを1コマずつモニタ28に表示させているが、複数コマをまとめて表示するようにしてもよい。
<ゴミ箱ファイル内の画像ファイルの復元方法>
さて、上記のように、本実施の形態のデジタルカメラでは、ゴミ箱ファイル内の画像を任意に展開表示させることができる。したがって、この展開表示中に画像ファイルの復元指示ができるようにすることが好ましい。同様に展開表示中に画像ファイルの表示設定(表示OFFの設定)ができるようにすることが好ましい。
以下、ゴミ箱ファイル内の画像の展開表示中に画像ファイルの復元指示、表示設定を行う場合の処理について説明する。
ゴミ箱ファイルの展開表示中における画像ファイルの復元指示、及び、表示設定は、復元対象の画像、又は、表示設定をOFFにする画像が、モニタ28に表示されている時に、所定のキー操作を行うことにより行われる。
本例では、目的画像の表示中に十字ボタン36の上ボタンが押下されると、復元指示が入力され、下ボタンが押下されると、表示設定がOFFにされる。
図13は、ゴミ箱ファイルの展開表示中に画像ファイルの復元処理及び表示設定を行う場合の処理の手順を示すフローチャートである。
なお、展開表示中に表示設定がONにされている画像のみが表示される点は、上述した展開表示時の処理の手順と同じである。
したがって、ここでは、画像ファイルの復元処理及び表示設定の処理についてのみ説明する。
上記のように、本例では、画像表示中に十字ボタン36の上ボタンが押下されると、復元指示が入力され、下ボタンが押下されると、表示設定がOFFに設定される(右ボタンが押下された場合はコマ送り、左ボタンが押下された場合はコマ戻し)。
図14は、モニタ28の表示例を示す図である。同図に示すように、モニタ28には、画面中央に読み出した画像ファイルの画像(mコマ目の画像)が表示される。そして、その画像の上下左右に十字ボタン36に割り当てられた機能のアイコンが表示される。本例の場合、画像の右側にコマ送りのアイコン、左側にコマ戻しのアイコン、上側に復元のアイコン、下側に表示のOFF設定のアイコンが表示される。
CPU110は、読み出した画像ファイルの画像をモニタ28に表示させるとともに、これらのアイコン画像を表示させる。
ユーザは、このモニタ28の表示に基づいて必要な操作を行う。すなわち、現在、モニタ28に表示されている画像を復元する場合には、十字ボタン36の上ボタンを押下する。一方、現在、モニタ28に表示されている画像の表示設定をOFFにする場合(非表示とする場合)は、十字ボタン36の下ボタンを押下する。また、次の画像を確認する場合は、十字ボタン36の右ボタンを押下し、前の画像を確認する場合は、十字ボタン36の左ボタンを押下する。さらに、ゴミ箱ファイルの展開表示を終了する場合は、DISP/BACKボタン40を押下する。
CPU110は、操作部112からの入力に基づき、キー入力の有無を判定し(ステップS45)、入力されたキー操作に応じた処理を実行する。
なお、右ボタン、左ボタン、DISP/BACKボタン40が押下されたときの処理内容は、上述した展開表示時と同じなので、ここでは上ボタン又は下ボタンが押下されたときの処理について説明する。
・十字ボタン36の右ボタンが押下された場合
上記のように、十字ボタン36の上ボタンが押下されると、表示中の画像の復元処理が行われる(ステップS60)。
図15は、復元処理の手順を示すフローチャートである。
同図に示すように、まず、CPU110は、復元対象画像(現在表示中の画像)の画像ファイルをゴミ箱ファイルから抽出する(ステップS70)。
次に、抽出した画像ファイルを元に画像ファイルを新規作成する(ステップS71)。すなわち、単独のExifファイルとして必要な情報を付加(必要に応じて削除)して、画像ファイルを新規に作成する。なお、本例では、削除した画像ファイルは、ほぼそのままの状態でゴミ箱ファイルに格納されるので、ゴミ箱ファイルを抽出するだけ(必要に応じてヘッダのタグ情報を修正)で画像ファイルを復元することができる。
画像ファイルの復元後、CPU110は、ゴミ箱ファイルから復元した画像ファイルの格納領域を削除し(ステップS72)、ファイルの基本情報(格納数などヘッダに記録される情報)を更新する。そして、パラメータMから1を除算するとともに(ステップS73)、パラメータmから1を除算して(ステップS74)、元のフローに復帰する。
この後、CPU110は、パラメータmに1を加算し(ステップS61)、1加算した後のパラメータmが、パラメータMを超えているか否か判定し(ステップS48)、パラメータmが、パラメータMを超えていないと判定すると、ステップS44の処理に戻り、次のコマの表示設定を確認する。また、パラメータmが、パラメータMを超えていると判定すると、パラメータmに1を設定し、ステップS44の処理に戻って、最初のコマの表示設定を確認する。
このように、表示中に十字ボタン36の上ボタンが押下されると、復元処理が行われ、削除された画像ファイルが復元される。
・十字ボタン36の左ボタンが押下された場合
上記のように、十字ボタン36の下ボタンが押下されると、現在表示中の画像の表示設定がOFFにされる。
CPU110は、十字ボタン36の下ボタンが押下されると、現在表示中の画像に対して、表示設定をOFFに設定し、その情報をゴミ箱ファイルの所定領域に記録する(ステップS62)。
この後、CPU110は、パラメータmに1を加算し(ステップS63)、1加算した後のパラメータmが、パラメータMを超えているか否かを判定する(ステップS48)。そして、パラメータmが、パラメータMを超えていないと判定すると、ステップS44の処理に戻り、次のコマを表示設定を確認する。また、パラメータmが、パラメータMを超えていると判定すると、パラメータmに1を設定し、ステップS44の処理に戻って、最初のコマの表示設定を確認する。
このように、ゴミ箱ファイルの展開表示中に画像の復元処理を行うことにより、復元しようとする画像を簡単に見つけ出すことができ、利便性が向上する。
なお、上記の例では、復元した画像ファイルをゴミ箱ファイルから削除しているが、削除せずに残しておいてもよい。この場合、表示設定をOFFに切り替えるようにしてもよい。
また、上記の例では、復元と同時に元の画像ファイルをゴミ箱ファイルから削除しているが、削除処理は別のタイミングで実施するようにしてもよい。たとえば、ゴミ箱ファイルの展開表示終了後に実施するようにしてもよい。これにより、複数の画像ファイルを復元したような場合に一括して削除処理を行うことができるので、処理効率を向上させることができる。
<ゴミ箱ファイル内の画像ファイルの完全削除>
上記のように、ゴミ箱ファイル内の各画像ファイルに対して表示/非表示の設定を個別に行うことにより、ゴミ箱ファイル内の画像の閲覧、管理性を向上させることができ、また、処理負荷の低減を図ることができる。
その一方で不要な画像ファイルが、いつまでも残存することにより、記憶メディアの記憶容量を圧迫する不具合がある。
したがって、ゴミ箱ファイル内の不要な画像ファイルは完全に削除できるようにすることが好ましい。
この場合、ゴミ箱ファイル内の画像ファイルを個別に削除することもできるが、不要な画像ファイルを一括して削除することにより、効率的に処理することができる。
本実施の形態のデジタルカメラ10では、表示設定がOFFにされている画像ファイルをゴミ箱ファイルから一括して削除する機能(以下、清掃機能という。)を備えている。以下、この清掃機能について説明する。
清掃機能の呼び出しは、メニュー画面で行われる。すなわち、あらかじめメニュー項目の一つとして、「ゴミ箱ファイルの清掃」の項目が用意されており、この項目がメニュー画面で選択されると、清掃の機能が呼び出される(清掃の処理プログラムが実行される。)。
なお、ゴミ箱ファイルが複数存在する場合は、清掃処理を実行するゴミ箱ファイルの選択処理が行われる。
なお、処理の実行の指示方法は、これに限定されるものではなく、たとえば、ゴミ箱ファイルの再生表示中(代表画像の再生表示中)に清掃指示を与えられるようにしてもよい。
CPU110は、清掃の指示が入力されると、ゴミ箱ファイルを解析し、図16に示すように、表示設定がOFFにされている画像ファイルを削除して、ゴミ箱ファイルを再構築する。
図17は、清掃処理の手順を示すフローチャートである。
清掃指示が入力されると(ステップS80)、CPU110は、ゴミ箱ファイルを解析し(ステップS81)、その解析結果に基づいて、表示設定OFFの画像ファイルが存在するか否かを判定する(ステップS82)。
ここで、ゴミ箱ファイル内に表示設定OFFの画像ファイルが存在しないと判定すると、処理を終了する(必要に応じてエラーメッセージを表示して終了する。)
一方、ゴミ箱ファイル内に表示設定OFFの画像ファイルが存在すると判定すると、その画像ファイル以降に表示設定ONの画像ファイルが存在するか否かを判定する(ステップS83)。
ここで、その表示設定OFFの画像ファイル以降に表示設定がONの画像ファイルが存在すると判定すると、図18(b)に示すように、その表示設定がOFFの画像ファイルの領域に以降の画像ファイルをコピーする(ステップS84)。たとえば、図18の例では、同図(a)に示すように、画像ファイルAについては表示設定ON、画像ファイルBについては表示設定OFF、画像ファイルCについては表示設定OFF、画像ファイルDについては表示設定ONの設定がなされているので、同図(b)に示すように、表示設定OFFの画像ファイルB、Cの領域に、それ以降の画像ファイルである画像ファイルDをコピーする。
この後、CPU110は、更に、表示設定がOFFの画像ファイルの有無を判定し(ステップS84)、表示設定がOFFの画像ファイルが存在すると判定すると、ステップS83に戻って、その画像ファイル以降に表示設定ONの画像ファイルが存在するか否かを判定する。
ここで、その表示設定OFFの画像ファイル以降に表示設定ONの画像ファイルが存在しないと判定すると、CPU110は、当該ゴミ箱ファイルの管理情報を更新し(ステップS86)、処理を終了する。この場合、図18(c)に示すように、最終の画像ファイル以降の領域が開放される。すなわち、図18に示す例では、最終の画像ファイルである画像ファイルDの終端以降の領域が開放される。
これにより、図18(d)に示すように、ゴミ箱ファイル内には、表示設定ONの画像ファイルのみが残される。なお、管理情報の更新は、たとえば、表示設定のON/OFFの設定情報を代表画像領域のヘッダ部分に記録している場合には、当該表示設定情報を最新の情報の情報に更新する。また、併せて該当する関連情報を最新のものに更新する。
このように、不要な画像ファイルをゴミ箱ファイルから削除(完全削除)することにより、ゴミ箱ファイルのファイルサイズを縮小させることができる。また、一括して削除することにより、効率的に処理することができる。
<ゴミ箱ファイル内の画像ファイルの個別削除>
上記の例では、ゴミ箱ファイル内の表示設定がOFFの画像ファイルを一括して削除することとしているが、個別に削除できるようにしてもよい。
以下、ゴミ箱ファイル内の画像ファイルを個別に削除する場合について説明する。
図19は、ゴミ箱ファイルに格納された画像ファイルを個別に削除する時の処理の手順を示すフローチャートである。
ゴミ箱ファイルに格納された画像ファイルの個別削除の処理は、カメラのモードを個別削除モードに設定して行われる(ステップS90)。個別削除モードへの移行は、メニュー画面で行われる。
カメラのモードが、個別削除モードに設定されると、CPU110は、ユーザにディレクトリ(フォルダ)の選択をさせる(ステップS91)。すなわち、完全削除する画像ファイルが格納されているディレクトリの選択処理を行わせる。この選択処理は、たとえば、メモリカード152のDCFイメージルートディレクトリに生成されているDCFディレクトリをモニタ28に一覧表示させ、その1つを選択させることにより行われる。
ディレクトリの選択が行われると、CPU110は、メモリカード152にアクセスし、そのディレクトリにゴミ箱ファイルが存在するか否かを判定する(ステップS92)。ここで、選択されたディレクトリにゴミ箱ファイルが存在しないと判定すると、CPU110は、所定のエラーメッセージ(たとえば、「ゴミ箱ファイルがありません」等)をモニタ28に表示させる(ステップS99)。
一方、選択されたディレクトリにゴミ箱ファイルが存在する場合は、そのゴミ箱ファイルに格納されている画像ファイルの画像をモニタ28に表示させる(ステップS93)。ユーザは、操作部を利用して、このモニタ28に表示された画像の中から完全に削除する画像を選択し、完全削除の実行を指示する(ステップS94)。
ここで、画像の表示は、たとえば、1コマずつ行われるものとし、十字ボタン36の右ボタンの押下でコマ送り、左ボタンの押下でコマ戻しが行われる。そして、下ボタンの押下で完全削除の指示が行われる。ユーザは、十字ボタン36の右ボタン又は左ボタンの押下で完全削除する画像をモニタ28に表示させ、表示されたところで下ボタンを押下する。これにより、削除する画像が選択され、完全削除の指示が入力される。
削除させる画像が選択され、完全削除の指示が入力されると、CPU110は、削除の実行を確認するメッセージ(たとえば、「この画像を完全に削除しますか?」等)をモニタ28に表示させる(ステップS95)。ユーザは、このメッセージを見て、完全削除の実行を指示する場合は、MENU/OKボタン38を押下し、処理をキャンセルする場合は、DISP/BACKボタン40を押下する。
CPU110は、操作部112からの入力に基づき、完全削除の実行が指示されたか否かを判定する(ステップS96)。そして、完全削除の実行が指示されたと判定すると、選択された画像の画像ファイルをゴミ箱ファイルから削除する。すなわち、その画像ファイルが格納されているゴミ箱ファイルの領域を削除する(ステップS47)。
なお、この削除処理は、上記のように、削除対象の画像ファイルが格納されている領域を完全に削除して、ゴミ箱ファイルを再構築するようにしてもよいし、削除対象の画像ファイルが格納されている領域をNULLとして、削除するようにしてもよい。
この後、CPU110は、画像ファイルの完全削除の処理を継続するか否かを問い合わせるメッセージをモニタ28に表示させる。ユーザは、このメッセージに確認して、操作部112から処理の継続の要否を入力する。
CPU110は、操作部112の入力に基づいて、処理の継続の要否を判定し(ステップS98)、処理の終了が指示されたと判定すると、処理を終了する。一方、継続する場合は、ステップS91に戻り、上記処理を再度実行する。
このように、ゴミ箱ファイル内の画像ファイルを個別に削除(完全削除)することもできる。
なお、本モードでは、表示設定のON/OFFに関わらず、ゴミ箱ファイル内のすべての画像ファイルが表示される。
なお、上記の例では、削除処理のみを行うようにしているが、同時に復元処理もできるようにしてもよい。
図20は、ゴミ箱ファイルに格納された画像ファイルを復元/削除する処理の手順を示すフローチャートである。
この処理は、カメラのモードをゴミ箱ファイル編集モードに設定して行われる(ステップS100)。ゴミ箱ファイル編集モードへの移行は、たとえば、メニュー画面で行われる。
カメラのモードが、ゴミ箱ファイル編集モードに設定されると、CPU110は、ユーザにディレクトリ(フォルダ)の選択をさせる(ステップS101)。すなわち、編集対象とするゴミ箱ファイルが格納されているディレクトリの選択処理を行わせる。
ディレクトリの選択が行われると、CPU110は、メモリカード152にアクセスし、そのディレクトリにゴミ箱ファイルが存在するか否かを判定する(ステップS102)。ここで、選択されたディレクトリにゴミ箱ファイルが存在しないと判定すると、CPU110は、所定のエラーメッセージ(たとえば、「ゴミ箱ファイルがありません」等)をモニタ28に表示させる(ステップS115)。
一方、選択されたディレクトリにゴミ箱ファイルが存在する場合は、そのゴミ箱ファイルに格納されている画像ファイルの画像をモニタ28に表示させる(ステップS103)。
ここで、画像の表示は、たとえば、1コマずつ行われるものとし、十字ボタン36の右ボタンの押下でコマ送り、左ボタンの押下でコマ戻しが行われる。また、上ボタンの押下で復元指示、下ボタンの押下で完全削除の指示が行われる。
CPU110は、操作部112からの入力に基づいて、画像のコマ送り、コマ戻しの指示が行われたか否かを判定する(ステップS104)。
ここで、コマ送りが指示されると、CPU110は、次に削除された画像ファイルの画像をモニタ28に表示させ、コマ戻しが表示されると、その前に削除された画像ファイルの画像(最初に削除された画像ファイルの場合は、最後に削除された画像ファイルの画像)をモニタ28に表示させる(ステップS105)。
このように、ユーザは、十字ボタン36の右ボタン又は左ボタンの操作により、復元又は完全削除を希望する画像をモニタ28の画面上に表示させる。
そして、復元又は完全削除を希望する画像ファイルの画像がモニタ28に表示されたところで、十字ボタン36の上ボタン又は下ボタンを押下する。すなわち、モニタ28に表示された画像の復元を希望する場合は、十字ボタン36の上ボタンを押下し、削除を希望する場合は、下ボタンを押下する。
上記ステップS104でコマ送り/コマ戻しが指示されていないと判定すると、CPU110は、操作部からの入力に基づいて、表示画像の復元又は削除が指示されたか否かを判定する(ステップS106)。
ここで、復元が指示されたと判定すると(十字ボタン36の上ボタンが押下されたと判定すると)、CPU110は、復元実行を確認するメッセージ(たとえば、「この画像を復元しますか?」等)をモニタ28に表示させる(ステップS107)。ユーザは、このメッセージを見て、復元実行を指示する場合は、MENU/OKボタン38を押下し、処理をキャンセルする場合は、DISP/BACKボタン40を押下する。
CPU110は、操作部112からの入力に基づき、復元の実行が指示されたか否かを判定する(ステップS108)。そして、復元の実行が指示されたと判定すると、選択された画像の画像ファイルをゴミ箱ファイルから抽出し、その画像ファイルを復元する(ステップS109)。そして、復元した画像ファイルが格納されていたゴミ箱ファイルの領域を削除する(ステップS110)。
この後、CPU110は、復元処理の継続を問い合わせるメッセージをモニタ28に表示させる。ユーザは、このメッセージに確認して、操作部112から復元処理の継続の要否を入力する。CPU110は、操作部112の入力に基づいて、復元処理の継続の要否を判定し(ステップS114)、復元処理の終了が指示されたと判定すると、処理を終了する。これにより、所望の画像を復元することができる。
一方、上記ステップS106にて、削除が指示されたと判定すると(十字ボタン36の下ボタンが押下されたと判定すると)、CPU110は、削除実行を確認するメッセージ(たとえば、「この画像を完全に削除しますか?」等)をモニタ28に表示させる(ステップS71)。ユーザは、このメッセージを見て、完全削除の実行を指示する場合は、MENU/OKボタン38を押下し、処理をキャンセルする場合は、DISP/BACKボタン40を押下する。
CPU110は、操作部112からの入力に基づき、削除の実行が指示されたか否かを判定する(ステップS112)。そして、削除の実行が指示されたと判定すると、選択された画像の画像ファイルをゴミ箱ファイルから削除する(ステップS113)。
この後、CPU110は、復元処理の継続を問い合わせるメッセージをモニタ28に表示させる。ユーザは、このメッセージに確認して、操作部112から復元処理の継続の要否を入力する。CPU110は、操作部112の入力に基づいて、復元処理の継続の要否を判定し(ステップS114)、復元処理の終了が指示されたと判定すると、処理を終了する。これにより、不要な画像ファイルをゴミ箱ファイルから削除し、メモリカード152から完全に削除することができる。
このように、1つのモード(ゴミ箱ファイル編集モード)で画像ファイルの復元と完全削除を行うようにすることもできる。これにより、効率よく画像ファイルの管理を行うことができる。
なお、本例では、十字ボタン36の右ボタンをコマ送り、左ボタンをコマ戻し、上ボタンを復元、下ボタンを削除に割り当てているが、たとえば、十字ボタン36の右ボタンを削除、左ボタンを復元、上ボタンをコマ送り、下ボタンをコマ戻しに割り当てるようにしてもよい。
また、モニタ28には、十字ボタン36に割り当てられた機能をアイコンで表示することが好ましい。
<ゴミ箱ファイルの他の例>
上記のように、本実施の形態のデジタルカメラでは、Exif形式に準じてゴミ箱ファイルを生成している。そして、その代表画像領域D1には、最初に削除された画像ファイルの画像を代表画像として格納している。このように生成されたゴミ箱ファイルは、通常のExifファイルと同様に扱うことができ、Exifファイルを認識可能な機器で開くと、代表画像(最初に削除された画像ファイルの画像)がモニタに表示される。
しかし、このような表示は、通常の画像ファイルと混同を生じるおそれがあり、誤って削除されるおそれがある。
したがって、ゴミ箱ファイルは、一見して他の画像ファイルと識別できるようにすることがより好ましい。
このため、代表画像領域D1には、ゴミ箱ファイルであることが認識できる画像を代表画像として格納することが好ましい。
このような画像としては、図21に示すような画像が考えられる。同図(a)〜(c)は、ゴミ箱ファイル内に格納されている画像ファイルの画像をインデックス表示したものである。
同図(a)は、ゴミ箱ファイル内に格納されている特定の画像ファイルの画像(たとえば、最初に削除された4つの画像ファイルの画像)を整列させてインデックス表示させたものを代表画像としたものであり、各画像を縦横に整列させて構成されている(この例では2×2で整列)。
同図(b)は、ゴミ箱ファイル内に格納されている特定の画像ファイルの画像(たとえば、最初に削除された5つの画像ファイルの画像)をランダムにインデックス表示させたものを代表画像としたものであり、各画像をランダムに配置して構成されている。
同図(c)は、ゴミ箱ファイル内に格納されている全画像ファイルの画像をインデックス表示させたものを代表画像としたものであり、各画像を縦横に整列させて構成されている。
一方、同図(d)は、ゴミ箱の図柄を代表画像としたものである。
図21(d)に示す画像を代表画像として使用する場合は、当該画像の画像ファイルをあらかじめ用意しておき(たとえば、ROM116やフラッシュROM118等に格納しておく)、ゴミ箱ファイルの生成時に当該画像ファイルを使用して、ゴミ箱ファイルを生成する。
一方、図21(a)〜(c)に示すように、ゴミ箱ファイル内に格納されている画像ファイルの画像を利用する場合は、ゴミ箱ファイルの生成時に代表画像を生成する。
図22は、ゴミ箱ファイル内に格納されている画像のインデックス画像を代表画像とする場合のゴミ箱ファイルの生成処理の手順を示すフローチャートである。
なお、本フローチャートは、図21(a)に示す画像をゴミ箱ファイルの代表画像として生成する場合のフローチャートである。すなわち、最初に削除された4つの画像ファイルの画像からインデックス画像を生成し、当該インデックス画像を代表画像とする場合のフローチャートである。
再生モードの状態で画像ファイルの削除を行う点は上記と同じである。まず、ユーザは、カメラのモードを再生モードに設定し、削除対象とする画像ファイルの画像をモニタ28に表示させる(ステップS120)。
CPU110は、操作部112からの入力に基づいて、削除ボタン34が押下されたか否か、すなわち、削除が指示されたか否かを判定する(ステップS121)。
削除が指示されたと判定すると、CPU110は、削除確認のメッセージをモニタ28に表示させる(ステップS122)。ユーザは、このメッセージを確認し、削除を実行する場合は、MENU/OKボタン38を押下し、指示を取り消す場合は、DISP/BACKボタン40を押下する。CPU110は、操作部からの入力に基づいて、削除の実行が指示されたか否かを判定する(ステップS123)。そして、削除実行が指示されると、CPU110は、当該削除対象の画像ファイルが格納されているフォルダ(ディレクトリ)にゴミ箱ファイルが存在するか否かを判定する(ステップS124)。
ここで、削除対象の画像ファイルが格納されているフォルダにゴミ箱ファイルが存在していないと判定すると、CPU110は、新規にゴミ箱ファイルを作成する(ステップS12)。
この後、ゴミ箱ファイルの代表画像の更新の要否を判定する(ステップS126)。すなわち、最初に削除された4つの画像ファイルの画像からインデックス画像が生成されているか否かを判定する。
ここで、最初に削除された4つの画像ファイルの画像からインデックス画像が生成されていないと判定すると(代表画像の更新が必要と判定すると)、CPU110は、インデックス画像の生成処理(代表画像の更新処理)を行う(ステップS127)。すなわち、削除された画像ファイルの画像を利用して、デジタル信号処理部142にインデックス画像の生成処理を行わせる。そして、生成されたインデックス画像を代表画像として、ゴミ箱ファイルを生成する。すなわち、生成されたインデックス画像を代表画像として、代表画像領域D1に格納する。
この代表画像の更新処理は、インデックス画像が完成されるまで、すなわち、4つの画像ファイルが削除されるまで行われる。
CPU110は、このようにして作成されたゴミ箱ファイルに削除指示された画像の画像ファイルを記録する(ステップS128)。そして、削除指示された画像の画像ファイルをメモリカード152から削除する(ステップS129)。
この後、CPU110は、操作部112からの入力に基づいて、再生モードの終了が指示されたか否かを判定し(ステップS130)、再生モードの終了が指示されると、処理を終了する。
このようにして生成されたゴミ箱ファイルは、その表示時にゴミ箱ファイルに格納されている画像ファイルの画像(最初に削除された4枚分の画像)がインデックス表示された画像が表示され、他の画像ファイルから容易に識別できるようになる。また、その内容物の確認も行うことができるようになる。
なお、本例では、最初に削除された4枚の画像ファイルの画像からインデックス画像を生成するようにしているが、インデックス画像を生成する画像、及び、その枚数は、これに限定されるものではない。たとえば、最後に削除された4枚の画像ファイルの画像からインデックス画像を生成するようにしてもよいし(この場合、削除するたびにインデックス画像を更新する)、また、一定枚数ごとに抽出した画像からインデックス画像を生成するようにしてもよい。
また、図21(c)に示すように、ゴミ箱ファイルに格納されている画像ファイルの画像すべてをインデックス表示させた画像を代表画像とする場合は、画像ファイルを削除するたびに、代表画像を更新する処理が行われる。
また、インデックス画像を生成する場合は、ゴミ箱ファイルであることが、より明瞭に認識できるようにするため、背景に所定の図柄(たとえば、ゴミ箱の画等)を合成することが好ましい。
なお、インデックス画像で代表画像を生成する場合、その生成タイミングは、画像の削除時(ゴミ箱ファイルへの追記時)やゴミ箱ファイルの生成時に限らず、任意のタイミングで行うことができるようにしてもよい。
また、特定の画像ファイルからインデックス画像を生成して代表画像とする場合、そのインデックス画像に用いられた画像の表示設定がOFFにされると、表示設定がONの画像から改めて代表画像を生成するようにしてもよい。
また、すべての画像ファイルからインデックス画像を生成して代表画像を生成する場合は、表示設定がONにされている画像ファイルの画像のみを利用して代表画像を生成するようにしてもよい。また、この場合、表示設定が切り替えられた場合は、改めて代表画像を生成するようにしてもよい。
<ゴミ箱ファイルの表示方法の他の例>
上記のように、本実施の形態のデジタルカメラでは、Exif形式に準じてゴミ箱ファイルを生成しており、Exifファイルを認識可能な機器で開くと、代表画像領域D1に格納された代表画像がモニタに表示される。
ここで、上記のように、ゴミ箱ファイルに格納されている削除済み画像のインデックス画像が代表画像として格納されている場合は、そのインデックス画像がモニタに表示されるので、他の画像ファイルと容易に区別することができる。
しかし、インデックス画像が代表画像として格納されていない場合は、他の画像ファイルと容易に区別できないおそれがある。
そこで、ゴミ箱ファイルを表示する場合は、ゴミ箱ファイルに格納されている画像をインデックス表示させることが好ましい。
以下、ゴミ箱ファイルを表示する場合の処理について説明する。
図23は、ゴミ箱ファイルに格納されている画像をインデックス表示する場合の処理手順を示すフローチャートである。
上記のように、再生モードに設定すると(ステップS140)、メモリカード152に記録されている画像ファイルの画像がモニタに表示される。
まず、CPU110は、表示対象とする画像のファイルが、ゴミ箱ファイルか否かを判定する(ステップS141)。
ここで、ゴミ箱ファイルではないと判定すると、CPU110は、通常の表示処理の方式に従って当該画像ファイルの画像をモニタ28に表示させる(ステップS148)。
一方、表示対象とする画像ファイルがゴミ箱ファイルと判定すると、CPU110は、そのゴミ箱ファイルを解析する(ステップS142)。そして、代表画像領域D1に代表画像として、インデックス画像が格納されているか否かを判定する(ステップS143)。
なお、代表画像領域D1に格納されている代表画像が、インデックス画像か否かの判定は、たとえば、代表画像領域D1のヘッダの情報を読み取って判定する。したがって、インデックス画像を代表画像として記録する場合は、代表画像領域D1のヘッダに当該画像がインデックス画像であることを示す情報を記録しておく。
CPU110は、代表画像として格納されている画像がインデックス画像であると判定すると、その代表画像として格納されたインデックス画像をモニタ28に表示させる(ステップS144)。これにより、当該ファイルがゴミ箱ファイルであること、及び、その中身を確認することができる。
なお、代表画像として格納されているインデックス画像のサムネイルが格納されている場合には、このサムネイルをモニタに表示させるようにしてもよい。これにより、インデックス画像を素早く表示させることができる。
一方、代表画像としてインデックス画像が格納されていないと判定すると、そのゴミ箱ファイルに格納されている画像ファイルからインデックス画像を生成する(ステップS145)。この際、表示設定がONにされている画像ファイルの画像でインデックス画像を生成する。
そして、生成したインデックス画像をモニタ28に表示させる(ステップS146)。これにより、当該ファイルがゴミ箱ファイルであること、及び、その中身を確認することができる。
なお、インデックス画像を代表画像として生成する場合、各画像ファイルにサムネイルが格納されている場合には、そのサムネイルを利用してインデックス画像を生成するようにしてもよい。
このように、ゴミ箱ファイルの代表画像(代表画像領域D1に格納される画像)としてインデックス画像が記録されていない場合であっても、ゴミ箱ファイルに格納された各画像ファイルからインデックス画像を生成し、これをモニタに表示させることにより、通常の画像ファイルとゴミ箱ファイルとを容易に見分けることができる。また、ゴミ箱ファイルの中身を容易に確認することができる。
なお、本例では、ゴミ箱ファイルの代表画像としてインデックス画像が記録されている場合、これを利用してゴミ箱ファイルの表示を行っているが、インデックス画像の有無にかかわらず、ゴミ箱ファイルに格納された画像ファイルからインデックス画像を生成し、これをモニタに表示させるようにしてもよい。
また、インデックス画像は、ゴミ箱ファイルに格納されているすべての画像ファイルの画像をから生成してもよいし、特定の画像ファイルの画像(たとえば、最初に削除されたN枚、最後に削除されたN枚(Nは整数))から生成してもよい。また、その配列形態も種々の態様をとることができる。
また、ゴミ箱ファイルの画像の表示の際には、ゴミ箱ファイルに格納されている画像の枚数も同時に表示させることが好ましい。これにより、格納枚数も把握することができる。
また、このゴミ箱ファイルの内容を個別に表示する場合には、現在表示中の画像が、全体の中で何枚目の画像かを識別できる表示(たとえば、全体の枚数が102枚で3枚目の表示ならば、「3/102枚」と表示する等)を併せて表示することが好ましい。
<ゴミ箱ファイルの表示方法の他の例2>
上記のように、本実施の形態のデジタルカメラでは、Exif形式に準じてゴミ箱ファイルを生成しており、Exifファイルを認識可能な機器で開くと、代表画像領域D1に格納された代表画像がモニタに表示される。
ゴミ箱ファイルは、不要な画像ファイルを1つにまとめ、必要に応じて復元できるようにしたものであるから、その表示は必要な場合だけでよい(たとえば、展開表示時や復元時、完全削除時など)。
そこで、ゴミ箱ファイルの表示/非表示を任意に設定できるようにすることが好ましい。
以下、ゴミ箱ファイルの表示/非表示を任意に設定し、ゴミ箱ファイルを表示する場合の処理について説明する。
ゴミ箱ファイルの表示/非表示の設定は、たとえば、メニュー画面で行われる。すなわち、メニュー項目の1つとして、ゴミ箱ファイルの表示/非表示の設定項目を用意しておき、この項目を選択して、表示/非表示(表示のON/OFF)の設定ができるようにする。
設定された情報は、たとえば、フラッシュROM118に格納される。CPU110は、このゴミ箱ファイルの表示/非表示の設定に応じてゴミ箱ファイルの表示処理を行う。
図24は、ゴミ箱ファイルの表示/非表示の設定が行われた場合における画像ファイルの再生処理の手順を示すフローチャートである。
まず、カメラのモードが、再生モードに設定されると(ステップS160)。メモリカード152に格納されている画像ファイルの読み出しが行われる(ステップS161)。この際、最初に読み出すファイルは、特に限定されないが、ここでは、一番最後に撮影された画像ファイルとする。
CPU110は、読み出した画像ファイルが、ゴミ箱ファイルか否かを判定する(ステップS162)。
ここで、読み出した画像ファイルが、ゴミ箱ファイルでないと判定すると、CPU110は、通常の処理に従って、その画像ファイルの画像をモニタ28に表示させる(ステップS164)。
一方、読み出し画像ファイルが、ゴミ箱ファイルであると判定すると、CPU110は、フラッシュROM118に格納された設定情報に基づき、ゴミ箱ファイルの表示設定がONにされているか否かを判定する(ステップS163)。
ここで、ゴミ箱ファイルの表示設定がONに設定されていると判定すると、CPU110は、その画像ファイルの画像(代表画像の画像)をモニタ28に表示させる(ステップS164)。
一方、ゴミ箱ファイルの表示設定がOFFに設定されていると判定すると、CPU110は、その画像の表示は行わず、次の画像ファイルの読み出しを行う(ステップS161)。
この後、CPU110は、操作部112からの入力に基づいて、コマ送り/コマ戻しの操作が行われたか否かを判定する(ステップS165)。そして、コマ送り/コマ戻しの操作が行われたと判定すると、上記ステップS161に戻り、次の画像ファイル(コマ送り字)又は前の画像ファイル(コマ戻し時)の読み出しを行う。また、コマ送り/コマ戻しの操作が行われていないと判定すると、再生モードの終了が指示されたか否かを判定し(ステップS166)、再生モードの終了が指示されたと判定すると、画像の再生処理を終了する。
このように、ゴミ箱ファイルの表示/非表示を設定できることにより、ゴミ箱ファイルを誤って削除するのを防止でき、また、使い勝手も向上させることができる。
なお、本例では、ゴミ箱ファイルの表示設定をフラッシュROM118に記録する構成としているが、ゴミ箱ファイル自体に記録するようにしてもよい(たとえば、メーカーノート等に記録)。
また、本例では、ゴミ箱ファイルの表示設定を一括して行っているが、各ゴミ箱ファイルごとに個別に表示/非表示を設定するようにしてもよい。
<ゴミ箱ファイルの格納形態の他の例>
上記実施の形態では、メモリカードに生成されたDCFディレクトリごとにゴミ箱ファイルを生成している。すなわち、削除された画像ファイルと同じディレクトリにゴミ箱ファイルを格納している。
しかし、ゴミ箱ファイルの格納場所は、これに限定されるものではない。以下、このゴミ箱ファイルの格納形態について説明する。
図25は、メモリカードのディレクトリ構造の他の例を示す概略図である。同図に示すように、この例では、メモリカードをDCFイメージルートディレクトリにゴミ箱ファイルを格納している。このように、画像ファイルが格納されたディレクトリ(フォルダ)ごとにゴミ箱ファイルを格納するのではなく、DCFイメージルートディレクトリごとに格納することもできる。
この場合、ゴミ箱ファイル自体は、画像ファイルが格納されたディレクト単位で生成するようにしてもよいし、また、画像ファイルが格納されたディレクトに関係なく、1つにまとめて生成するようにしてもよい。
図26は、メモリカードのディレクトリ構造の他の例を示す概略図である。同図に示すように、この例では、DCFイメージルートディレクトリの直下にゴミ箱ファイルを格納するための専用のディレクトリ(フォルダ)を生成し、そのディレクトリにゴミ箱ファイルを格納している。
この場合も、ゴミ箱ファイル自体は、画像ファイルが格納されたディレクト単位で生成するようにしてもよいし、また、画像ファイルが格納されたディレクトに関係なく、1つにまとめて生成するようにしてもよい。
図27は、ゴミ箱ファイルの格納形態の他の例の説明図である。同図に示すように、この例では、撮影により得られた画像の画像ファイルは、メモリカード152に格納し、ゴミ箱ファイルは、内蔵メモリであるフラッシュROM118に格納している。
これにより、メモリカード152がカメラから取り外され、他の機器で読み取られた際、ゴミ箱ファイルを誤って削除してしまうのを有効に防止することができる。また、他の機器がゴミ箱ファイルを認識できずに、不具合が発生するのを有効に防止することができる。
この場合も、ゴミ箱ファイル自体は、画像ファイルが格納されたメモリカードのディレクト単位で生成するようにしてもよいし、また、画像ファイルが格納されたメモリカードのディレクトに関係なく、1つにまとめて生成するようにしてもよい。
なお、上記のように、ゴミ箱ファイルは、これを認識できない機器で読み取ろうとすると、不具合を発生させるおそれがある。
そこで、ゴミ箱ファイルは、選択的に外部の機器に認識させないようにすることが好ましい。
この方法としては、たとえば、ファイルの属性を隠しファイルに設定したりすること考えられる。
また、本実施の形態のデジタルカメラは、通信インタフェイス162を介してパソコン等の外部機器に接続でき、接続された場合はストレージデバイスとして認識されるので、外部機器に接続された場合には、外部機器側にゴミ箱ファイルを通知しないことで、ゴミ箱ファイルを認識させないことができる。
さらに、ゴミ箱ファイルを機器の内部メモリ(上記の例では、フラッシュROM118)に格納する場合には、内部メモリ自体を外部機器に認識(通知)させないことで、ゴミ箱ファイルが外部機器に認識されるのを防止することができる。
<その他の実施の形態>
上記実施の形態では、本発明をデジタルカメラに適用した場合を例に説明したが、本発明の適用は、これに限定されるものではない。画像を記憶する記憶手段と、その記憶手段に記憶された画像ファイルを表示する機能を有する機器であれば、同様に適用することができ、同様の作用効果を奏することができる。特に、パソコンの場合には、上記の各機能を所定のプログラムによって実現させることができる。
また、上記実施の形態では、ゴミ箱ファイルをExif形式に準じて構成しているが、ゴミ箱ファイルの構成は、これに限定されるものではない。すなわち、削除された複数の画像ファイルをまとめて、1つのファイルとして格納できる構成のものであればよい。
また、格納する画像ファイルについても、上記実施の形態では、Exifファイルを格納する場合を例に説明したが、格納する画像ファイルの形式についても、特に限定されるものではなく、他の形式の画像ファイルを削除する場合についても、同様に適用することができる。したがって、たとえば、RAW画像ファイルを格納することもできる。
この場合、ゴミ箱ファイルにExifファイルとRAW画像ファイル等の他の画像ファイルを混在して格納するようにしてもよいが、ファイル形式ごとにゴミ箱ファイルを生成するようにしてもよい。すなわち、たとえば、Exifファイルは、Exifファイル用のゴミ箱ファイル、RAW画像ファイルは、RAW画像ファイル用のゴミ箱ファイルを個別に生成し、分別して格納するようにしてもよい。
また、RAW画像ファイルを格納する場合には、当該RAW画像データを所定フォーマットで圧縮し、圧縮後の画像ファイルを格納するようにしてもよい。この場合、圧縮方式は、可逆圧縮でもよいし、また、非可逆圧縮でもよい。非可逆圧縮の場合は、RAW画像ファイルに格納された、RAW画像データをJPEG圧縮し、RAW画像ファイルをExifファイルに変換して、格納するようにしてもよい。
また、上記実施の形態では、ゴミ箱ファイルをDCF規格に準じてメモリカードに記録する構成としているが、ゴミ箱ファイルを格納する方法や、ゴミ箱ファイル名の付与方法は、これに限定されるものではない。
さらに、上記実施の形態では、静止画の画像ファイルを削除する場合について説明したが、動画の画像ファイルを削除する場合も同様に適用することができる。この場合、動画は動画ファイルは、動画の画像ファイルごとにゴミ箱ファイルに格納するようにしてもよいし、また、静止画と動画のファイルを混在させてゴミ箱ファイルに格納するようにしてもよい。
また、本実施の形態では、削除指示した画像をゴミ箱ファイルに格納するようにしているが、削除指示時にゴミ箱ファイルに格納するか、完全に削除するかを選択できるようにし、ゴミ箱ファイルに格納することが選択された場合にのみ、ゴミ箱ファイルに格納するようにしてもよい(完全削除が指示された場合は、ゴミ箱ファイルには格納せずに、完全にメモリカードから消去する。)。
10…デジタルカメラ、12…カメラボディ、14…撮影レンズ、16…フラッシュ、18…スピーカ、20…AF補助光ランプ、22…シャッタボタン、24…モードレバー、26…電源ボタン、30…ズームボタン、32…再生ボタン、34…削除ボタン、36…十字ボタン、38…MENU/OKボタン、40…DISP/BACKボタン、42…顔検出ボタン、110…CPU、112…操作部、116…ROM、118…フラッシュROM、120…メモリ(SDRAM)、122…VRAM、134…撮像素子、136…撮像素子制御部、138…アナログ信号処理部、140…A/D変換器、142…デジタル信号処理部、144…AF検出部、146…AE/AWB検出部、148…圧縮伸張処理部、150…メディアコントローラ、152…メモリカード(記憶メディア)、154…表示制御部、156…OSD(On−Screen Display)部、158…フラッシュ制御部、160…通信制御部、162…通信インタフェイス