(57)【要約】【課題】記憶媒体に記録された画像データを再生表示する際の待ち時間が短縮した情報処理装置を提供する。【解決手段】情報処理装置１００は、ＣＰＵ１０１と、ＲＯＭ１０２と、ＲＡＭ１０３と、表示部１０４と、入力部１０５と、メディア交換型記録部１０６と、ネットワーク／通信部１０７と、カメラ部１０８とを備え、それらがシステムバス１０９を介して互いに接続されている。ＲＡＭ１０３またはメディア交換型記録部１０６に装着されるカードメモリーに表示した画像データのキャッシュデータを保存し、画像の再生表示の際にはキャッシュデータに基づいて行うとともに不要なキャッシュデータは削除する。【選択図】      図１
2004152172.tif 000002
【特許請求の範囲】
【請求項１】
記憶媒体に記憶された画像データから、複数の表示サイズの表示画像データを生成して再生表示することが可能な情報処理装置であって、
１度表示した前記表示画像データをキャッシュデータとして格納するキャッシュファイルと、
前記キャッシュファイルを管理する為の管理レコードを前記画像データ毎に保持するインデックスファイルとを、前記記憶媒体に設定されたキャッシュメモリに格納することを特徴とする情報処理装置。
【請求項２】
前記表示画像データは、少なくともサムネイル表示用データと一枚表示用データとの２種類の表示サイズのデータからなることを特徴とする請求項１記載の情報処理装置。
【請求項３】
新たなキャッシュデータを前記キャッシュメモリに追加する際に、前記キャッシュデータにファイル名を付与して、少なくとも前記画像データのファイル名、作成日、更新日と共に、前記インデックスファイルの所定の管理レコードに格納することを特徴とする請求項１又は２記載の情報処理装置。
【請求項４】
前記記憶媒体に記憶された前記画像データを再生表示する際に、表示しようとする表示サイズのキャッシュデータが前記キャッシュメモリに存在する場合には、該キャッシュデータを前記キャッシュメモリから読み出して表示する一方、表示しようとするキャッシュデータが前記キャッシュメモリに存在しない場合には、前記記憶媒体から前記画像データを所定の表示サイズの表示画像データを生成して再生表示すると共に、前記表示画像データを前記新たなキャッシュデータとして前記キャッシュメモリに追加することを特徴とする請求項１乃至３のいずれか１項に記載の情報処理装置。
【請求項５】
前記キャッシュデータを追加する際及び読み出す際のいずれの際にも、前記インデックスファイルの所定の管理レコードに格納された前記キャッシュデータの参照日を更新することを特徴とする請求項３又は４記載の情報処理装置。
【請求項６】
前記新たなキャッシュデータを前記キャッシュメモリに追加する際に、前記キャッシュデータを管理する為の管理レコードが既に前記インデックスファイル上に存在する場合には、該管理レコードの参照日を更新すると共に、該キャッシュデータに付与されたファイル名を該管理レコードに格納することを特徴とする請求項４記載の情報処理装置。
【請求項７】
さらに、前記管理レコードに他のキャッシュデータのファイル名が格納されている場合には、前記キャッシュファイル上に前記格納されたファイル名に該当するキャッシュデータが存在するか否かを判定し、前記該当するキャッシュデータが存在しない場合には、前記管理レコードから前記他のキャッシュデータのファイル名を削除することを特徴とする請求項６記載の情報処理装置。
【請求項８】
管理レコードの追加、更新、及び新たなキャッシュデータの追加のいずれか１つを実行する場合に、前記キャッシュメモリの容量を越えるときには、前記いずれか１つの実行ができるだけの前記容量の残量を確保する為に前記参照日が最も古いキャッシュデータから削除することを特徴とする請求項１乃至７のいずれか１項に記載の情報処理装置。
【請求項９】
前記記憶媒体は内部メモリ及び着脱可能な外部メモリであり、前記キャッシュメモリの設定場所は、前記内部メモリ及び外部メモリの何れか一方に選択されることを特徴とする請求項１乃至８のいずれか１項に記載の情報処理装置。
【請求項１０】
前記キャッシュメモリの設定場所の選択は、前記情報処理装置が画像データを再生表示する為に実行するプログラムの格納場所に基づいて決定されることを特徴とする請求項９記載の情報処理装置。
【請求項１１】
前記キャッシュメモリの設定場所の選択は、前記画像データの格納場所に基づいて決定されることを特徴とする請求項９記載の情報処理装置。
【請求項１２】
前記キャッシュメモリを設定した外部メモリが装着されていない場合及び書き込み禁止の場合のいずれかの場合には、前記キャッシュメモリの設定が解除されることを特徴とする請求項９乃至１１のいずれか１項に記載の情報処理装置。
【請求項１３】
前記キャッシュメモリを設定した外部メモリが装着されていない場合及び書き込み禁止の場合のいずれかの場合には、前記キャッシュメモリの設定を前記内部メモリに変更することを特徴とする請求項９乃至１１のいずれか１項に記載の情報処理装置。
【請求項１４】
前記外部メモリを再装着した場合及び書き込み禁止が解除された場合のいずれかの場合には、前記キャッシュメモリの設定が前記内部メモリから前記外部メモリに復帰することを特徴とする請求項１３記載の情報処理装置。
【請求項１５】
記憶媒体に記憶された画像データの作成日及び更新日と、前記インデックスファイル上の該画像データに対応する管理レコードに格納された作成日及び更新日とが一致しない場合に、該管理レコードと該管理レコードが管理する全てのキャッシュデータを削除するガベージ・コレクション処理を実行することを特徴とする請求項１乃至１４のいずれか１項に記載の情報処理装置。
【請求項１６】
前記キャッシュファイルに格納された前記キャッシュデータを管理する為の前記管理レコードが前記インデックスファイル上に存在しない場合に、該管理レコードを削除するガベージ・コレクション処理を実行することを特徴とする請求項１乃至１４のいずれか１項に記載の情報処理装置。
【請求項１７】
前記管理レコード上に１以上のキャッシュデータのファイル名が格納されている場合に、該１以上のキャッシュデータのファイル名に対応するキャッシュデータが１つも存在しない時には該管理レコードを削除し、該１以上のキャッシュデータのファイル名に対応するキャッシュデータが少なくとも１つ存在する場合には、存在するファイル名のみを残して、その他のファイル名を該管理レコードから削除するガベージ・コレクション処理を実行することを特徴とする請求項１乃至１４のいずれか１項に記載の情報処理装置。
【請求項１８】
所定時間以上にアイドル状態が続くときに、前記ガベージ・コレクション処理を実行することを特徴とする請求項１５乃至１７のいずれか１項に記載の情報処理装置。
【請求項１９】
記憶媒体に記憶された画像データから、複数の表示サイズの表示画像データを生成して再生表示する画像データ処理方法であって、
１度表示した前記表示画像データをキャッシュデータとして格納するキャッシュファイルと、前記キャッシュファイルを管理する為の管理レコードを前記画像データ毎に保持するインデックスファイルとを、前記記憶媒体に設定されたキャッシュメモリに格納することを特徴とする画像データ処理方法。
【請求項２０】
前記表示画像データは、少なくともサムネイル表示用キャッシュデータと、一枚表示用キャッシュデータの２種類の表示サイズのキャッシュデータからなることを特徴とする請求項１９記載の画像データ処理方法。
【請求項２１】
新たなキャッシュデータを前記キャッシュメモリに追加する際に、前記キャッシュデータにファイル名を付与して、少なくとも前記画像データのファイル名、作成日、更新日と共に、前記インデックスファイルの所定の管理レコードに格納することを有することを特徴とする請求項１９又は２０記載の画像データ処理方法。
【請求項２２】
前記記憶媒体に記憶された前記画像データを再生表示する際に、表示しようとする表示サイズのキャッシュデータが前記キャッシュメモリに存在する場合には、該キャッシュデータを前記キャッシュメモリから読み出して表示する一方、表示しようとするキャッシュデータが前記キャッシュメモリに存在しない場合には、前記記憶媒体から前記画像データを所定の表示サイズの表示画像データを生成して再生表示すると共に、前記表示画像データを前記新たなキャッシュデータとして前記キャッシュメモリに追加することを特徴とする請求項１９乃至２１のいずれか１項に記載の画像データ処理方法。
【請求項２３】
前記キャッシュデータを追加する際及び読み出す際のいずれの際にも、前記インデックスファイルの所定の管理レコードに格納された前記キャッシュデータの参照日を更新することを特徴とする請求項２１又は２２記載の画像データ処理方法。
【請求項２４】
前記新たなキャッシュデータを前記キャッシュメモリに追加する際に、前記キャッシュデータを管理する為の管理レコードが既に前記インデックスファイル上に存在する場合には、該管理レコードの参照日を更新すると共に、該キャッシュデータに付与されたファイル名を該管理レコードに格納することを特徴とする請求項２２記載の画像データ処理方法。
【請求項２５】
さらに、前記管理レコードに他のキャッシュデータのファイル名が格納されている場合には、前記キャッシュファイル上に前記格納されたファイル名に該当するキャッシュデータが存在するか否かを判定し、前記該当するキャッシュデータが存在しない場合には、前記管理レコードから前記他のキャッシュデータのファイル名を削除することを特徴とする請求項２４記載の画像データ処理方法。
【請求項２６】
管理レコードの追加、更新、及び新たなキャッシュデータの追加のいずれか１つを実行する場合に、前記キャッシュメモリの容量を越えるときには、前記いずれか１つの実行ができるだけの前記容量の残量を確保する為に前記参照日が最も古いキャッシュデータから削除することを特徴とする請求項１９乃至２５のいずれか１項に記載の画像データ処理方法。
【請求項２７】
前記記憶媒体は内部メモリ及び着脱可能な外部メモリであり、前記キャッシュメモリの設定場所は、前記内部メモリ及び外部メモリの何れか一方を選択することを特徴とする請求項１９乃至２６のいずれか１項に記載の画像データ処理方法。
【請求項２８】
前記キャッシュメモリの設定場所の選択は、前記情報処理装置が画像データを再生表示する為に実行するプログラムの格納場所に基づいて決定することを特徴とする請求項２７記載の画像データ処理方法。
【請求項２９】
前記キャッシュメモリの設定場所の選択は、前記画像データの格納場所に基づいて決定されることを特徴とする請求項２７記載の画像データ処理方法。
【請求項３０】
前記キャッシュメモリを設定した外部メモリが装着されていない場合及び書き込み禁止の場合のいずれかの場合には、前記キャッシュメモリの設定が解除されることを特徴とする請求項２７乃至２９のいずれか１項に記載の画像データ処理方法。
【請求項３１】
前記キャッシュメモリを設定した外部メモリが装着されていない場合及び書き込み禁止の場合のいずれかの場合には、前記キャッシュメモリの設定を前記内部メモリに変更することを特徴とする請求項２７乃至２９のいずれか１項に記載の画像データ処理方法。
【請求項３２】
前記外部メモリを再装着した場合及び書き込み禁止が解除された場合のいずれかの場合には、前記キャッシュメモリの設定が前記内部メモリから前記外部メモリに復帰することを特徴とする請求項３１記載の画像データ処理方法。
【請求項３３】
記憶媒体に記憶された画像データの作成日及び更新日と、前記インデックスファイル上の該画像データに対応する管理レコードに格納された作成日及び更新日とが一致しない場合に、該管理レコードと該管理レコードが管理する全てのキャッシュデータを削除するガベージ・コレクション処理を実行することを特徴とする請求項１９乃至３２のいずれか１項に記載の画像データ処理方法。
【請求項３４】
前記キャッシュファイルに格納された前記キャッシュデータを管理する為の前記管理レコードが前記インデックスファイル上に存在しない場合に、該管理レコードを削除するガベージ・コレクション処理を実行することを特徴とする請求項１９乃至３２のいずれか１項に記載の画像データ処理方法。
【請求項３５】
前記管理レコード上に１以上のキャッシュデータのファイル名が格納されている場合に、該１以上のキャッシュデータのファイル名に対応するキャッシュデータが１つも存在しない時には該管理レコードを削除し、該１以上のキャッシュデータのファイル名に対応するキャッシュデータが少なくとも１つ存在する場合には、存在するファイル名のみを残して、その他のファイル名を該管理レコードから削除するガベージ・コレクション処理を実行することを特徴とする請求項１９乃至３２のいずれか１項に記載の画像データ処理方法。
【請求項３６】
所定時間以上にアイドル状態が続くときに、前記ガベージ・コレクション処理を実行することを特徴とする請求項３３乃至３５のいずれか１項に記載の画像データ処理方法。
【請求項３７】
請求項１９乃至３６のいずれか１項に記載の画像データ処理方法をコンピュータに実行させることを特徴とする画像データ処理プログラム。
【請求項３８】
コンピュータ読取り可能な記憶媒体において、請求項３７記載の画像処理プログラムが格納され、該画像処理プログラムをコンピュータに実行させることを特徴とする記憶媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
記録手段に記録した画像データ基づいて画像を再生表示する情報処理装置及び情報処理装置のキャッシュ制御方法に関する。
【０００２】
【従来の技術】
近年、デジタルカメラやＰＤＡ（Ｐｅｒｓｏｎａｌ  Ｄｉｇｉｔａｌ  Ａｓｓｉｓｔａｎｔ：携帯情報端末）、携帯電話等の携帯型情報処理装置で静止画や動画等のコンテンツを再生表示したり、編集加工したりする利用方法が普及しつつある。例えば、「サムネイル」と呼ばれる縮小画像を携帯型情報処理装置の表示画面に一覧表示し、表示されたサムネイルの中から選択したサムネイルに対応するコンテンツを拡大して再生表示したり、コンテンツの編集や加工を行ったり、スライドショウの再生を行ったり、更にはコンテンツを電子メールに添付して通信回線を介して第三者へ送信したりすることも可能になっている。
【０００３】
また、デジタルカメラの高画素化が進んでおり、これに伴って扱う画像のデータ量は膨大なものとなってきている。このようなデータ量の大きな画像の記録再生や編集加工を行うために、携帯型情報処理装置に対してより高い処理性能とより大きい記憶容量が要求されてきている。
【０００４】
しかしながら、特に小型の携帯型情報処理装置においては、コストやサイズの面から、処理性能及び記憶容量ともに制約が多いのが現状である。このため、画像の記録又は再生に要する長い処理時間やメモリ不足などがユーザに操作性の点で不快感を与えたり、不便を強いたりする機会は少なくない。
【０００５】
現在、これらの問題点を解決すべく、幾つかの解決策が提案されている。
【０００６】
その１つに、デジタルカメラにおいて、撮影した画像を表示させた状態から順コマ送りや逆コマ送りの指示をユーザが入力する以前に、記憶媒体に圧縮画像として記録された画像データを先読みして伸張処理し、伸張処理後の画像データをメモリに保持しておき、記憶媒体に記録された圧縮画像を再生表示する際の待ち時間の軽減を図るものがある。（例えば、特許文献１参照）
また、メモリカードに格納されている撮影画像のうち、例えば、その日に撮影された画像のみについて、処理の空き時間を利用してサムネイル画像を作成することにより、メモリ容量の削減と、再生表示する際の待ち時間の軽減とを図る情報処理装置がある。（例えば、特許文献２参照）
さらにまた、画像の特徴量に基づいて、類似度が高い順に複数画像を一覧表示する類似画像検索装置において、一度表示された画像データをキャッシュしておくことで、再度表示が必要になったときには高速に画像を表示すると共に、キャッシュの空き容量や画像の使用頻度に基づいてキャッシュされた画像を削除することでメモリ領域の利用効率化を図るものがある。（例えば、特許文献３参照）
【０００７】
【特許文献１】
特開２００２−１０１３２９号公報
【特許文献２】
特開平１０−１７８６０９号公報
【特許文献３】
特開２０００−１４８７９５号公報
【０００８】
【発明が解決しようとする課題】
しかしながら、特許文献１に記載された例の場合には、操作順序や表示順序がある程度予測できる場合には一定の効果があるものの、ユーザが好む画像や関心が深い画像など、表示頻度の高い画像であっても予測できない画像を待ち時間なく再生表示することはできないという問題がある。
【０００９】
また、特許文献２に記載された例の場合には、記録日（撮影日）に基づいてサムネイル画像の作成対象を決定しており、必ずしもユーザが所望する画像とは一致せず、特許文献１に記載された例の場合と同様に、ユーザが好む画像や関心が深い画像など、表示頻度の高い画像を待ち時間なく再生表示することはできないという問題がある。
【００１０】
また、特許文献３に記載された例の場合には、実データが存在せずキャッシュデータだけが残っているものや、実データとキャッシュデータの作成日時、更新日時が一致しないものなど、キャッシュされていても利用価値のないデータが除去されずに残るので、キャッシュに用いるメモリ領域の利用効率が悪いという問題点がある。
【００１１】
本発明の目的は、記憶媒体に記録された画像データを再生表示する際の待ち時間が短縮した情報処理装置、当該装置の制御方法、プログラム、及び記憶媒体を提供することにある。
【００１２】
さらに、本発明の目的は、キャッシュに用いるメモリ領域の利用効率が向上した情報処理装置、当該装置の制御方法、プログラム、及び記憶媒体を提供することにある。
【００１３】
【課題を解決するための手段】
上記目的を達成するために、請求項１の情報処理装置は、記憶媒体に記憶された画像データから、複数の表示サイズの表示画像データを生成して再生表示することが可能な情報処理装置であって、１度表示した前記表示画像データをキャッシュデータとして格納するキャッシュファイルと、前記キャッシュファイルを管理する為の管理レコードを前記画像データ毎に保持するインデックスファイルとを、前記記憶媒体に設定されたキャッシュメモリに格納することを特徴とする。
【００１４】
請求項２の情報処理装置は、請求項１記載の情報処理装置において、前記表示画像データは、少なくともサムネイル表示用データと、一枚表示用データの２種類の表示サイズのデータからなることを特徴とする。
【００１５】
請求項３の情報処理装置は、請求項１又は２記載の情報処理装置において、新たなキャッシュデータを前記キャッシュメモリに追加する際に、前記キャッシュデータにファイル名を付与して、少なくとも前記画像データのファイル名、作成日、更新日と共に、前記インデックスファイルの所定の管理レコードに格納することを特徴とする。
【００１６】
請求項４の情報処理装置は、請求項１乃至３のいずれか１項に記載の情報処理装置において、前記記憶媒体に記憶された前記画像データを再生表示する際に、表示しようとする表示サイズのキャッシュデータが前記キャッシュメモリに存在する場合には、該キャッシュデータを前記キャッシュメモリから読み出して表示する一方、表示しようとするキャッシュデータが前記キャッシュメモリに存在しない場合には、前記記憶媒体から前記画像データを所定の表示サイズの表示画像データを生成して再生表示すると共に、前記表示画像データを前記新たなキャッシュデータとして前記キャッシュメモリに追加することを特徴とする。
【００１７】
請求項５の情報処理装置は、請求項３又は４記載の情報処理装置において、前記キャッシュデータを追加する際及び読み出す際のいずれの際にも、前記インデックスファイルの所定の管理レコードに格納された前記キャッシュデータの参照日を更新することを特徴とする。
【００１８】
請求項６の情報処理装置は、請求項４記載の情報処理装置において、前記新たなキャッシュデータを前記キャッシュメモリに追加する際に、前記キャッシュデータを管理する為の管理レコードが既に前記インデックスファイル上に存在する場合には、該管理レコードの参照日を更新すると共に、該キャッシュデータに付与されたファイル名を該管理レコードに格納することを特徴とする。
【００１９】
請求項７の情報処理装置は、請求項６記載の情報処理装置において、さらに、前記管理レコードに他のキャッシュデータのファイル名が格納されている場合には、前記キャッシュファイル上に前記格納されたファイル名に該当するキャッシュデータが存在するか否かを判定し、前記該当するキャッシュデータが存在しない場合には、前記管理レコードから前記他のキャッシュデータのファイル名を削除することを特徴とする。
【００２０】
請求項８の情報処理装置は、請求項１乃至７のいずれか１項に記載の情報処理装置において、管理レコードの追加、更新、及び新たなキャッシュデータの追加のいずれか１つを実行する場合に、前記キャッシュメモリの容量を越えるときには、前記いずれか１つの実行ができるだけの前記容量の残量を確保する為に前記参照日が最も古いキャッシュデータから削除することを特徴とする。
【００２１】
請求項９の情報処理装置は、請求項１乃至８のいずれか１項に記載の情報処理装置において、前記記憶媒体は内部メモリ及び着脱可能な外部メモリであり、前記キャッシュメモリの設定場所は、前記内部メモリ及び外部メモリの何れか一方に選択されることを特徴とする。
【００２２】
請求項１０の情報処理装置は、請求項９記載の情報処理装置において、前記キャッシュメモリの設定場所の選択は、前記情報処理装置が画像データを再生表示する為に実行するプログラムの格納場所に基づいて決定されることを特徴とする。
【００２３】
請求項１１の情報処理装置は、請求項９記載の情報処理装置において、前記キャッシュメモリの設定場所の選択は、前記画像データの格納場所に基づいて決定されることを特徴とする。
【００２４】
請求項１２の情報処理装置は、請求項９乃至１１のいずれか１項に記載の情報処理装置において、前記キャッシュメモリを設定した外部メモリが装着されていない場合及び書き込み禁止の場合のいずれかの場合には、前記キャッシュメモリの設定が解除されることを特徴とする。
【００２５】
請求項１３の情報処理装置は、請求項９乃至１１のいずれか１項に記載の情報処理装置において、前記キャッシュメモリを設定した外部メモリが装着されていない場合及び書き込み禁止の場合のいずれかの場合には、前記キャッシュメモリの設定を前記内部メモリに変更することを特徴とする。
【００２６】
請求項１４の情報処理装置は、請求項１３記載の情報処理装置において、前記外部メモリを再装着した場合及び書き込み禁止が解除された場合のいずれかの場合には、前記キャッシュメモリの設定が前記内部メモリから前記外部メモリに復帰することを特徴とする。
【００２７】
請求項１５の情報処理装置は、請求項１乃至１４のいずれか１項に記載の情報処理装置において、記憶媒体に記憶された画像データの作成日及び更新日と、前記インデックスファイル上の該画像データに対応する管理レコードに格納された作成日及び更新日とが一致しない場合に、該管理レコードと該管理レコードが管理する全てのキャッシュデータを削除するガベージ・コレクション処理を実行することを特徴とする。
【００２８】
請求項１６の情報処理装置は、請求項１乃至１４のいずれか１項に記載の情報処理装置において、前記キャッシュファイルに格納された前記キャッシュデータを管理する為の前記管理レコードが前記インデックスファイル上に存在しない場合に、該管理レコードを削除するガベージ・コレクション処理を実行することを特徴とする。
【００２９】
請求項１７の情報処理装置は、請求項１乃至１４のいずれか１項に記載の情報処理装置において、前記管理レコード上に１以上のキャッシュデータのファイル名が格納されている場合に、該１以上のキャッシュデータのファイル名に対応するキャッシュデータが１つも存在しない時には該管理レコードを削除し、該１以上のキャッシュデータのファイル名に対応するキャッシュデータが少なくとも１つ存在する場合には、存在するファイル名のみを残して、その他のファイル名を該管理レコードから削除するガベージ・コレクション処理を実行することを特徴とする。
【００３０】
請求項１８の情報処理装置は、請求項１５乃至１７のいずれか１項に記載の情報処理装置において、所定時間以上にアイドル状態が続くときに、前記ガベージ・コレクション処理を実行することを特徴とする。
【００３１】
上記目的を達成するために、請求項１９の画像データ処理方法は、記憶媒体に記憶された画像データから、複数の表示サイズの表示画像データを生成して再生表示する画像データ処理方法であって、１度表示した前記表示画像データをキャッシュデータとして格納するキャッシュファイルと、前記キャッシュファイルを管理する為の管理レコードを前記画像データ毎に保持するインデックスファイルとを、前記記憶媒体に設定されたキャッシュメモリに格納することを特徴とする。
【００３２】
請求項２０の画像データ処理方法は、請求項１９記載の画像データ処理方法において、前記表示画像データは、少なくともサムネイル表示用キャッシュデータと、一枚表示用キャッシュデータの２種類の表示サイズのキャッシュデータからなることを特徴とする。
【００３３】
請求項２１の画像データ処理方法は、請求項１９又は２０記載の画像データ処理方法において、新たなキャッシュデータを前記キャッシュメモリに追加する際に、前記キャッシュデータにファイル名を付与して、少なくとも前記画像データのファイル名、作成日、更新日と共に、前記インデックスファイルの所定の管理レコードに格納することを有することを特徴とする。
【００３４】
請求項２２の画像データ処理方法は、請求項１９乃至２１のいずれか１項に記載の画像データ処理方法において、前記記憶媒体に記憶された前記画像データを再生表示する際に、表示しようとする表示サイズのキャッシュデータが前記キャッシュメモリに存在する場合には、該キャッシュデータを前記キャッシュメモリから読み出して表示する一方、表示しようとするキャッシュデータが前記キャッシュメモリに存在しない場合には、前記記憶媒体から前記画像データを所定の表示サイズの表示画像データを生成して再生表示すると共に、前記表示画像データを前記新たなキャッシュデータとして前記キャッシュメモリに追加することを特徴とする。
【００３５】
請求項２３の画像データ処理方法は、請求項２１又は２２記載の画像データ処理方法において、前記キャッシュデータを追加する際及び読み出す際のいずれの際にも、前記インデックスファイルの所定の管理レコードに格納された前記キャッシュデータの参照日を更新することを特徴とする。
【００３６】
請求項２４の画像データ処理方法は、請求項２２記載の画像データ処理方法において、前記新たなキャッシュデータを前記キャッシュメモリに追加する際に、前記キャッシュデータを管理する為の管理レコードが既に前記インデックスファイル上に存在する場合には、該管理レコードの参照日を更新すると共に、該キャッシュデータに付与されたファイル名を該管理レコードに格納することを特徴とする。
【００３７】
請求項２５の画像データ処理方法は、請求項２４記載の画像データ処理方法において、さらに、前記管理レコードに他のキャッシュデータのファイル名が格納されている場合には、前記キャッシュファイル上に前記格納されたファイル名に該当するキャッシュデータが存在するか否かを判定し、前記該当するキャッシュデータが存在しない場合には、前記管理レコードから前記他のキャッシュデータのファイル名を削除することを特徴とする。
【００３８】
請求項２６の画像データ処理方法は、請求項１９乃至２５のいずれか１項に記載の画像データ処理方法において、管理レコードの追加、更新、及び新たなキャッシュデータの追加のいずれか１つを実行する場合に、前記キャッシュメモリの容量を越えるときには、前記いずれか１つの実行ができるだけの前記容量の残量を確保する為に前記参照日が最も古いキャッシュデータから削除することを特徴とする。
【００３９】
請求項２７の画像データ処理方法は、請求項１９乃至２６のいずれか１項に記載の画像データ処理方法において、前記記憶媒体は内部メモリ及び着脱可能な外部メモリであり、前記キャッシュメモリの設定場所は、前記内部メモリ及び外部メモリの何れか一方を選択することを特徴とする。
【００４０】
請求項２８の画像データ処理方法は、請求項２７記載の画像データ処理方法において、前記キャッシュメモリの設定場所の選択は、前記情報処理装置が画像データを再生表示する為に実行するプログラムの格納場所に基づいて決定することを特徴とする。
【００４１】
請求項２９の画像データ処理方法は、請求項２７記載の画像データ処理方法において、前記キャッシュメモリの設定場所の選択は、前記画像データの格納場所に基づいて決定されることを特徴とする。
【００４２】
請求項３０の画像データ処理方法は、請求項２７乃至２９のいずれか１項に記載の画像データ処理方法において、前記キャッシュメモリを設定した外部メモリが装着されていない場合及び書き込み禁止の場合のいずれかの場合には、前記キャッシュメモリの設定が解除されることを特徴とする。
【００４３】
請求項３１の画像データ処理方法は、請求項２７乃至２９のいずれか１項に記載の画像データ処理方法において、前記キャッシュメモリを設定した外部メモリが装着されていない場合及び書き込み禁止の場合のいずれかの場合には、前記キャッシュメモリの設定を前記内部メモリに変更することを特徴とする。
【００４４】
請求項３２の画像データ処理方法は、請求項３１記載の画像データ処理方法において、前記外部メモリを再装着した場合及び書き込み禁止が解除された場合のいずれかの場合には、前記キャッシュメモリの設定が前記内部メモリから前記外部メモリに復帰することを特徴とする。
【００４５】
請求項３３の画像データ処理方法は、請求項１９乃至３２のいずれか１項に記載の記載の画像データ処理方法において、記憶媒体に記憶された画像データの作成日及び更新日と、前記インデックスファイル上の該画像データに対応する管理レコードに格納された作成日及び更新日とが一致しない場合に、該管理レコードと該管理レコードが管理する全てのキャッシュデータを削除するガベージ・コレクション処理を実行することを特徴とする。
【００４６】
請求項３４の画像データ処理方法は、請求項１９乃至３２のいずれか１項に記載の画像データ処理方法において、前記キャッシュファイルに格納された前記キャッシュデータを管理する為の前記管理レコードが前記インデックスファイル上に存在しない場合に、該管理レコードを削除するガベージ・コレクション処理を実行することを特徴とする。
【００４７】
請求項３５の画像データ処理方法は、請求項１９乃至３２のいずれか１項に記載の画像データ処理方法において、前記管理レコード上に１以上のキャッシュデータのファイル名が格納されている場合に、該１以上のキャッシュデータのファイル名に対応するキャッシュデータが１つも存在しない時には該管理レコードを削除し、該１以上のキャッシュデータのファイル名に対応するキャッシュデータが少なくとも１つ存在する場合には、存在するファイル名のみを残して、その他のファイル名を該管理レコードから削除するガベージ・コレクション処理を実行することを特徴とする。
【００４８】
請求項３６の画像データ処理方法は、請求項３３乃至３５のいずれか１項に記載の画像データ処理方法において、所定時間以上にアイドル状態が続くときに、前記ガベージ・コレクション処理を実行することを特徴とする。
【００４９】
上記目的を達成するために、請求項３７の画像データ処理プログラムは、請求項１９乃至３６のいずれか１項に記載の画像データ処理方法をコンピュータに実行させることを特徴とする。
【００５０】
上記目的を達成するために、請求項３８の記憶媒体は、コンピュータ読取り可能な記憶媒体において、請求項３７記載の画像処理プログラムが格納され、該画像処理プログラムをコンピュータに実行させることを特徴とする。
【００５１】
【発明の実施の形態】
以下、本発明の実施の形態に係る情報処理装置について図面を参照しながら詳細に説明する。
【００５２】
（第１の実施の形態）
図１は本発明の第１の実施の形態に係る情報処理装置のハードウェア構成を示すブロック図である。図２は図１の情報処理装置の全体を示す斜視図である。
【００５３】
図１及び図２に示す情報処理装置１００はＰＤＡ（Ｐｅｒｓｏｎａｌ  Ｄｉｇｉｔａｌ  Ａｓｓｉｓｔａｎｔ：携帯情報端末）である。
【００５４】
図１に示すように、情報処理装置１００は、ＣＰＵ１０１と、ＲＯＭ１０２と、ＲＡＭ１０３（記憶媒体）と、表示部１０４と、入力部１０５と、メディア交換型記録部１０６（記憶媒体）と、ネットワーク／通信部１０７と、カメラ部１０８とを備え、それらがシステムバス１０９を介して互いに接続されている。
【００５５】
ＣＰＵ１０１は情報処理装置１００を全体的に制御する。ＣＰＵ１０１は、ＲＯＭ１０２に格納された所定のプログラムを実行することによって制御を行う。この所定のプログラムはＲＡＭ１０３に一時的に格納される。また、ＲＡＭ１０３にはデータも一時的に格納される。後述するようにこのＲＡＭ１０３はキャッシュデータの保存先として選択することができる。
【００５６】
表示部１０４は、本体の前面に設けられており（図２参照）、画像を表示するのみでなく、各種の入出力用のユーザインタフェースを提供する。
【００５７】
入力部１０５は、後述するジョグダイヤル２０１、スタイラスペン２０２、キー（ボタン）２０３，２０４、不図示のキーボードなどから構成されており、データの入力やモードの切替えなど、ＰＤＡ１００のユーザからの指示をＣＰＵ１０１に伝える為に使用される入力インタフェースである。
【００５８】
メディア交換型記憶部１０６は、不図示のカードメディアに記憶した画像データやプログラムをＰＤＡ１００で利用する為に使用するインタフェースである。このメディア交換型記憶部１０６は、コンパクトフラッシュ（登録商標）カードやその他の異なる種類のカードメディア規格に対応するよう複数のインタフェースを備えるようにしても良い。このメディア交換型記憶部１０６には、後述するようにメモリカードを装着でき、装着したメモリカードはキャッシュデータの保存先として選択することができる。
【００５９】
ネットワーク／通信部１０７は、移動体通信・移動体電話との通信機能及び無線ＬＡＮ、Ｂｌｕｅｔｏｏｔｈ（商標）などのワイアレスによるネットワーク接続機能を提供する。さらに、有線ＬＡＮ、ＵＳＢ等の有線でのネットワーク接続／通信機能を提供して、外部とのデータ授受を実現する。ネットワーク／通信部１０７は、これらのうちの一部の機能だけを備えても良いし、またこれに限定されず他の機能を備えても良い。
【００６０】
カメラ部１０８は画像撮影機能を有するデジタルカメラユニットである。このカメラ部１０８とネットワーク／通信部１０７の各種機能とはＰＤＡ１００に内蔵してあるが、メディア交換型記録部１０６と共通の拡張インタフェースを介して必要に応じて必要な機能を組み込む形態であってもよい。
【００６１】
図２に示すジョグダイヤル２０１は、円盤状のダイヤルであり、円盤の中心線を中心に回転可能であるとともにダイヤルの周縁から中心線に向かう方向の力によって同方向に変位可能であり、回転と変位の操作によって片手で入力処理を実行することができる。ジョグダイヤル２０１は装置側面に１つだけ配置されたものを例示したが、前面に配置してもよい。また、複数個のジョグダイヤルを配置してもよい。
【００６２】
スタイラスペン２０２は表示部１０４に表示されたインタフェースから入力操作をする際に使用するものであり、表示部１０４上でのタップ操作によって入力処理を行うことができる。表示部１０４の下方には４つのキー２０３が間に方向指示／実行キー２０４を挟んで一列に配設されており、これらのキー２０３を押下操作することによって入力処理が実行される。例えば、アプリケーションの切替えや後述するモードの切替えの際に使用する。方向指示／実行キー２０４は上下左右の方向指示と、指示位置での確定（Ｅｎｔｅｒ）を行う際に使用される。上下左右の各矢印部分は、押すと、方向指示／実行キー２０４の中心を支点にして押下することができる。また、中心部を押した場合には、中心部の中心線方向に押下することができ、この操作によって確定を行うことができる。
【００６３】
カメラ部１０８は画像撮影機能を提供するデジタルカメラユニットである。本体の前面にレンズを配置した例を示したが、レンズを本体の背面に配置してもよい。また、ＰＤＡ１００の本体に回転可能に装着してもよい。
【００６４】
なお、ＰＤＡ１００は不図示の電源スイッチ、電池ボックス、スタイラス収納部等を備えている。
【００６５】
次に、表示部１０４に表示される画面の例を説明する。
【００６６】
図３は、サムネイル画像の一覧表示の画面を示す図である。図４は、３枚のサムネイル画像とさらにその内の１枚を拡大した拡大画像とを表示した画面を示す図である。なお、両図に共通する項目等には同一符号を付してある。
【００６７】
図３に示すサムネイル表示領域３０１には９枚のサムネイル画像が表示されており、サムネイル画像はイメージ領域３０２とタイトル領域３０３との２つの小域から構成されている。イメージ領域３０２には、表示対象となったコンテンツの縮小画像が生成されて表示されている。タイトル領域３０３にはイメージ領域３０２に表示された画像データのファイル名が表示されている。
【００６８】
サムネイル表示領域３０１に表示された９枚のサムネイル画像のうち、「選択状態」にあるサムネイル画像と「アクティブ状態」にあるサムネイル画像とは、色彩の相違、囲い枠の有無などで他のサムネイル画像とは識別できるように表示される。ここで、「選択状態」とは、複数のサムネイル画像に対して実行できる削除、回転、反転等の機能の操作対象となっている状態を言い、スライドショウの再生対象もこれに含まれる。一方、「アクティブ状態」とは、現在の表示対象になっているサムネイル画像であること、或いは表示開始位置にある状態をいい、アクティブ状態にあるサムネイル画像は同一階層に１枚だけ存在する。図３に示すサムネイル画像の中で、左の最上位に有るサムネイル画像及び図４に示す左のサムネイル画像が「選択状態」かつ「アクティブ状態」にある。
【００６９】
画面下部にはメニュー領域３０４とアイコン領域３０５とが配置されている。メニュー領域３０４には「ファイル」、「編集」、「表示」等のメニュー項目が表示されており、メニュー項目をスタイラスペン２０２でタップすることによってメニュー項目のサブメニュー（図示せず）が表示される。表示されたサブメニューには複数の機能が表示され、ユーザは所望の機能を選択することができる。
【００７０】
一方、アイコン領域３０５には「保存」、「削除」、「回転」等の機能を示すアイコンが表示されており、所望のアイコンをペンでタップすることによって直接に所望の機能を実行することができる。
【００７１】
これらのメニュー領域３０４及びアイコン領域３０５は画面下部に限らず、上部や側部に配置しても良いし、ユーザの好みによって移動可能であっても良い。また、アイコンは、便宜上、文字で図示してあるが、機能を認識させるものであれば絵や記号であっても良い。
【００７２】
図４は画面の下部に３枚のサムネイル画像が横一列に表示され、画面の上部には３枚のサムネイル画像のうち「アクティブ状態」にある１枚が拡大表示されている。図示した例では左端のサムネイル画像が「アクティブ状態」にあり、拡大表示されている。
【００７３】
図３に図示した「サムネイル一覧」の画面と図４に図示した「サムネイル＋拡大画像（１枚）」の画面とは、アイコン領域の「表示モード」アイコン３０６をタップすることで何れの画面からも他の画面に切り替えることができる。また、図３で表示されたサムネイル画像のうちの１つをタップすることによっても、「サムネイル一覧」の画面から「サムネイル＋拡大画像（１枚）」の画面に切り替えることができる。
【００７４】
図３及び図４に図示したどちらの画面においても、表示し切れないサムネイル画像が存在する場合には、スクロールバー３０７を使って画面をスクロールさせることによって表示されるサムネイル画像を入れ替えることができ、これにより、ユーザは全てのサムネイル画像を見ることができる。
【００７５】
図３では、３行×３列の格子状にサムネイル画像を配列し、９つのサムネイル画像を同時に表示しているが、サムネイルの同時表示数や配列はこれに限定されず、２行×２列や４行×４列、２行×３列などでも良く、また、それらの配列を相互に変更できるようにしても良い。更に格子状の平面的な配置ではなく３次元的な配置であっても良い。また、サムネイルの同時表示数や表示位置に応じてサムネイルサイズを変更するようにしても良い。
【００７６】
表示モードは図３に示した「サムネイル一覧」と図４に示した「サムネイル＋拡大画像（１枚）」との２つのモードの他に、選択されたサムネイル画像に対応するコンテンツを１つだけ拡大表示する「１枚表示」モードを加えてもよい。この場合、アイコン領域３０５の「表示モード」アイコン３０６に対するタップ操作によって、これら３つのモードを順次切替えるようにしても良いし、「サムネイル＋拡大画像（１枚）」と「１枚表示」のどちらかを予め設定画面などで設定しておくようにして、「表示モード」アイコン３０６をタップすることにより、「サムネイル一覧」と設定した表示との何れか一方のモードを切替えられるようにしても良い。
【００７７】
次に、キャッシュ処理の説明をする。
【００７８】
図５は、図２のＰＤＡ１００のキャッシュ処理の基本的な流れを示すフローチャートである。
【００７９】
キャッシュ処理は、画像閲覧中に表示切替の指示がされた場合に開始される。その際、新たに表示が必要となった画像データがキャッシュされているかの問合せ、すなわち、キャッシュデータの有無確認の処理をする（ステップＳ５０１）。
【００８０】
次に、キャッシュデータの有無を判別し（ステップＳ５０２）、キャッシュデータが有る場合には、キャッシュデータの取得処理を実行して表示する（ステップＳ５０３）。一方、キャッシュデータが無い場合には、イメージデータの読込み処理を実行し、読み込んだ画像の縮小表示を行い（ステップＳ５０４）、これと共にキャッシュデータとしての保存処理を実行し（ステップＳ５０５）、キャッシュ処理を終了する。
【００８１】
以上がキャッシュ処理の基本的な流れである。これら一連の処理によって、メディア交換型記録部１０６に装着されてたメモリカードやＲＡＭ１０３に記録された画像データを再生表示するに当たって、一度表示した画像データをキャッシュしておき、それを再利用するので、同じ画像データを再度表示する際の待ち時間が軽減される。なお、画像データがこれから表示しようとするサイズよりも小さいときには、オーバーヘッド防止のため、キャッシュデータは作成せずに、表示の都度、そのままのサイズで、あるいはリサイズして表示するようにする。
【００８２】
ここで、ＰＤＡ１００の構成のうちキャッシュ処理に係る部分の概念的構成を説明し、その各構成要素が図５に示したキャッシュ処理の各ステップでどの様に機能して、キャッシュ処理が実現するのかを図７乃至図１０を参照しながら詳細に説明する。
【００８３】
図６はＰＤＡ１００の概念的な構成を示すブロック線図である。
【００８４】
画像再生メインプログラム６０１は、ＰＤＡ１００が動作する為のプログラム本体である。この画像再生メインプログラム６０１は主に情報の入出力の管理とイメージの描画、メッセージの処理を行う。
【００８５】
キャッシュライブラリ６０２は、画像再生メインプログラム６０１の指示に従って、キャッシュデータの書き込みや読み出し、キャッシュデータの有無の確認（検索）などを制御する為のソフトウェアである。
【００８６】
インデックスファイル６０３は、キャッシュデータ管理用に構成されたデータファイルであり、ＰＤＡ１００のＲＡＭ１０３に設定されるキャッシュメモリに格納される。このインデックスファイル６０３は、インデックスファイルの構成例として図７に示すように、ファイル名、ファイルの作成日時、ファイルの更新日時、ファイルサイズ、キャッシュファイル名（一覧表示用）、キャッシュファイル名（１枚表示用）、キャッシュの参照回数、キャッシュの最終参照日などで構成されている。
【００８７】
キャッシュファイル６０４（サムネイル表示用キャッシュファイル、１枚表示用キャッシュファイル）は、記憶媒体に記憶された画像データから生成した複数の表示サイズの表示画像データをキャッシュデータ（サムネイルキャッシュデータ、１枚表示キャッシュデータ）として格納するデータファイルであり、ＲＡＭ１０３またはメディア交換型記憶部１０６に設定されるキャッシュメモリに保存することができる。ＲＡＭ１０３及びメディア交換型記憶部１０６のうちどちらに保存するかの選択、すなわちキャッシュメモリの選択は後述するキャッシュ機能設定画面からの設定・変更によってユーザが任意に決定できる。
【００８８】
イメージプラグイン６０５は、イメージデータの入力を行う外部ライブラリファイル（ＤＬＬ形式）である。ＪＰＥＧ、ＢＩＴＭＡＰ、ＦＬＡＳＨＰＩＸ（商標）などの各種のファイルフォーマットに対応した読み込み用プラグインファイルがサポートされる。
【００８９】
画像再生メインプログラム６０１、キャッシュライブラリ６０２、及びイメージプラグイン６０５は実行形式ファイルとして、ＰＤＡ１００の内部メモリ（ＲＡＭ１０３若しくはＲＯＭ１０２）またはメディア交換型記憶部１０６に格納されている。
【００９０】
図８は、図５におけるキャッシュデータの有無確認の処理（ステップＳ５０１）を示すフローチャートである。
【００９１】
画像閲覧中にユーザからの表示切替の指示があった場合に、画像再生メインプログラム６０１は、始めにキャッシュ機能が有効か否か（Ｏｎの状態かＯｆｆの状態か）をキャッシュライブラリ６０２に対して問い合わせて判別し、新たに表示が必要となった画像データのファイル名と現在の表示モード（一覧表示用か１枚表示用か）とを併せてキャッシュライブラリ６０２に通知する（ステップＳ８０１）。このキャッシュ機能のＯｎ／Ｏｆｆは予め設定画面で設定しておくが、詳細は後述する。
【００９２】
キャッシュ機能が無効（Ｏｆｆ）である場合には、キャッシュライブラリ６０２は画像再生メインプログラム６０１に対して「ＦＡＬＳＥ」を返却する（ステップＳ８０５）。ステップＳ８０１の判別の結果、キャッシュ機能がＯｎである場合には、キャッシュライブラリ６０２は、画像再生メインプログラム６０１から受け取ったファイル名に該当するレコードがインデックスファイル６０３に格納されているか検索する（ステップＳ８０２）。この検索は、ダイレクトアクセス可能な検索キーとして設定されているファイル名（図７参照）を用いて行われる。
【００９３】
インデックスファイル６０３に該当するレコードが存在する場合には、ステップＳ８０１でファイル名と共に通知された現在の表示モードに対応するキャッシュファイル名が有るか（登録されているか）否かを確認する（ステップＳ８０３）。検索の結果、インデックスファイル６０３に該当するレコードが存在し、かつ現在の表示モードに対応するキャッシュファイル名が登録されている場合には、キャッシュデータが存在するものと判定して、画像再生メインプログラム６０１に対して「ＴＲＵＥ」を返却する（ステップＳ８０４）。
【００９４】
一方、インデックスファイル６０３に該当するレコードが存在しない場合、又はレコードは存在するが現在の表示モードに対応するキャッシュファイル名が登録されていない場合には、キャッシュライブラリ６０２は、キャッシュデータが存在しないものと判定して、画像再生メインプログラム６０１に対して「ＦＡＬＳＥ」を返却する（ステップＳ８０５）。このようにして、キャッシュデータの有無確認が行われる。
【００９５】
上記の処理によってキャッシュデータの存在が確認された場合には、続いて、キャッシュデータの取得を行う。
【００９６】
図９は、図５におけるキャッシュデータの取得処理（ステップＳ５０３）を示すフローチャートである。
【００９７】
キャッシュライブラリ６０２は、画像再生メインプログラム６０１から渡されたファイル名の作成日時、更新日時を取得し（ステップＳ９０１）、インデックスファイル６０３から検索されたレコードの作成日時、更新日時を取得して（ステップＳ９０２）、それぞれ作成日時、更新日時がともに一致しているか否かを判別する（ステップＳ９０３）。判別の結果、作成日時、更新日時ともに一致する場合には、キャッシュデータが存在するものと判定して、指定されたキャッシュファイル名をインデックスファイル６０３から取得する（ステップＳ９０４）。
【００９８】
次に取得したキャッシュファイル名に該当するキャッシュデータをキャッシュファイル６０４から読み込む（ステップＳ９０５）。キャッシュデータの読込みが成功したか否かを判別し（ステップＳ９０６）、キャッシュデータの読込みが成功した場合には、インデックスファイル６０３に記録したキャッシュの最終参照日（最終更新日）と参照回数を更新する（ステップＳ９０７）。
【００９９】
最後に、キャッシュライブラリ６０２はキャッシュデータをキャッシュファイル６０４から読み込んで取得し、画像再生メインプログラム６０１へ渡し（ステップＳ９０８）、本処理を終了する。
【０１００】
一方、ステップＳ９０３の判別の結果、作成日時、更新日時のどちらか一方又は双方が不一致の場合、及びステップＳ９０６の判別の結果、キャッシュデータの読込みが失敗である場合には、キャッシュされているデータは破損などで再表示に利用できないものと判定して、インデックスファイル６０３からは該当キャッシュファイル名のレコードを削除し（ステップＳ９０９）、キャッシュファイル６０４からは該当するキャッシュデータを削除する（ステップＳ９１０）。以降は、キャッシュデータが存在しない場合の処理と同様の処理を行う必要があるので、図５のイメージデータの読込み処理（ステップＳ５０４）に移行する。
【０１０１】
次に、イメージデータの読込み処理を説明する。
【０１０２】
図１０は、図５におけるイメージデータの読込み処理（ステップＳ５０４）を示すフローチャートである。
【０１０３】
図８に示したキャッシュデータの有無確認の処理において、キャッシュライブラリ６０２から「ＦＡＬＳＥ」の返却を受けた画像再生メインプログラム６０１は、イメージプラグイン６０５に対して、イメージデータの読込みを指示する。指示を受けたイメージプラグイン６０５は指定されたファイルのイメージフォーマットを確認し（ステップＳ１００１）、フォーマットに適合する入力プラグインを起動させ、指定された表示モード（一覧表示か１枚表示か）に応じた縮小読込みを行い、デバイス非依存の標準画像フォーマット、例えば、Ｗｉｎｄｏｗｓ（登録商標）オペレーティングシステム標準のＤＩＢ（Ｄｅｖｉｃｅ  Ｉｎｄｅｐｅｎｄｅｎｔ  Ｂｉｔｍａｐ）フォーマットに変換して（ステップＳ１００２〜Ｓ１００４の変換処理のいずれか）、画像再生メインプログラム６０１へ返却し（ステップＳ１００４）、本処理を終了する。
【０１０４】
ここでは、ＪＰＥＧ、ＢＩＴＭＡＰ、及びＦＬＡＳＨＰＩＸの３つの画像フォーマットのみを示したが、画像フォーマットはこれらに限定されるものではなく、ＪＰＥＧ２０００やＧＩＦ、ＰＮＧなどのフォーマットであっても良い。対応フォーマットは、外部ライブラリファイル（ＤＬＬ形式）の更新や追加によって容易に増やすことができる。
【０１０５】
上記のようにして新たにイメージデータを読込み表示した場合には、将来の再表示に備えて、キャッシュデータを保存する。キャッシュデータの保存は、キャッシュファイル６０４へのキャッシュデータ本体の書き込みと、インデックスファイル６０３への管理レコードの追加・更新との２つが行われる。
【０１０６】
図１１は、図５におけるキャッシュデータの保存処理（ステップＳ５０５）を示すフローチャートである。
【０１０７】
新たにイメージデータを読み込んだキャッシュライブラリ６０２は、新しく書き込みを行うキャッシュファイル名を取得する（ステップＳ１１０１）。キャッシュファイル名は一意性を保つ為に、キャッシュライブラリ内で自動的に命名される。
【０１０８】
キャッシュファイル名の取得後、そのキャッシュファイル名を付けたキャッシュデータをキャッシュファイル６０４に書き込み（ステップＳ１１０２）、続いて、インデックスファイル６０３への管理レコードの追加・更新を行う。この際に、指定されたファイルの管理レコードが存在するかを確認する（ステップＳ１１０３）。これは、１つの管理レコードで一覧表示用と１枚表示用の２種類のキャッシュデータを管理する為に必要になる処理である。
【０１０９】
管理レコードが有るか否かを判別し（ステップＳ１１０４）、指定されたファイルの管理レコードが存在する場合には、既存のインデックスファイル６０３の管理レコードに新規に書き込まれたキャッシュファイル名を設定すると共に、キャッシュデータの参照回数、キャッシュデータの最終参照日を更新する（ステップＳ１１０５）。この際に、対象となる管理レコードのキャッシュデータに論理不整合がある場合は修正を行う。キャッシュデータの論理不整合のチェック内容を具体的に説明すると、１枚表示用キャッシュデータ（１枚表示データ）を更新する場合には、一覧表示用キャッシュファイル名が管理レコードに登録されているかを確認し、登録されている場合にはキャッシュファイル６０４から該当するキャッシュデータを検索する。ここで、該当するキャッシュデータが存在しない場合には、論理不整合であると判断して、対象となる管理レコードから一覧表示用のキャッシュファイル名を削除する。反対に、一覧表示用キャッシュデータ（サムネイルデータ）を更新する場合には、１枚表示用のキャッシュデータの論理不整合をチェックする。
【０１１０】
ステップＳ１１０４の判別の結果、指定されたファイルの管理レコードが存在しない場合には、ステップＳ１１０６に進み、インデックスファイル６０３に新しい管理レコードを追加して保存する。この際に、キャッシュの使用量のチェックを行い、容量を越えている場合には、インデックスファイル６０３に格納された、キャッシュの最終参照日を手掛かりにして、最も過去に参照されたキャッシュデータを削除する。この削除処理は、新しい管理レコードを追加するのに必要な容量を確保できるまで繰り返される。このようにしてキャッシュデータの保存処理が終了する。
【０１１１】
図１２は、ＰＤＡ１００に表示されるキャッシュ機能設定画面を例示する図であり、（ａ）はキャッシュ機能設定画面の基本画面を示し、（ｂ）はキャッシュ機能設定画面の詳細設定画面を示す。
【０１１２】
図１２の（ａ）に示すチェックボックス１２０１は、キャッシュ機能を使用する（Ｏｎ）か否（Ｏｆｆ）かを予め設定しておくためのものである。キャッシュデータの保存場所１２０２はキャッシュメモリの設定場所であり、キャッシュファイル６０４の所在を設定するための項目である。白抜きで図示したように通常は「自動設定」が選択されており、実行形式ファイルが格納された記憶領域と同じ記憶領域にフォルダが生成されてキャッシュデータが保存されるが、ユーザは、キャッシュデータの保存先を本体のＲＡＭ１０３またはメディア交換型記憶部１０６に装着したメモリカードに選択することができる。
【０１１３】
「メモリカード」はＰＤＡ１００のメディア交換型記憶部１０６にメモリカードが装着された場合にのみ表示される。複数のメモリカードを装着した場合には、「メモリカード１」、「メモリカード２」の様に装着されたメモリカードを識別できるように表示される。
【０１１４】
設定を変えたときは、「設定」ボタン１２０４を押すことにより、変えた設定内容で設定を更新することができ、「キャンセル」ボタン１２０５を押すことにより、変えようとした設定内容による設定の更新をキャンセルできる。
【０１１５】
より詳細な設定を行う場合には、「詳細設定」ボタン１２０３を押して、図１２の（ｂ）に示す詳細設定画面を表示させる。
【０１１６】
詳細設定画面では、「メモリの使用率」１２０６によるメモリの使用率の設定及び「キャッシュのクリア条件」１２０７によるキャッシュのクリア条件の設定ができる他、「クリア」ボタン１２０８によってキャッシュの強制クリアを実行させることができる。
【０１１７】
「メモリの使用率」１２０６は、キャッシュデータの保存場所に設定した記憶媒体の全記憶容量の内どの程度をキャッシュ領域として割り当てるかを設定する為のものである。図示した例ではキャッシュ領域を割り当てない場合（０％）から最大で全記憶容量の３０％をキャッシュ領域に割り当てる場合まで、ユーザが任意に設定できる。
【０１１８】
「キャッシュのクリア条件」１２０７は、どの様なタイミングでキャッシュ（キャッシュデータ、管理レコード）をクリアするかを設定するためのものである。図示の例では、「アプリケーションの終了時」、「キャッシュデータの保存場所変更時」、及び「キャッシュ機能をＯｆｆにした時」の中から１つ又は複数の条件をチェックボックスで設定しておくことができる。
【０１１９】
「アプリケーションの終了時」に設定すると、アプリケーションの終了時に全てのキャッシュが消去される。「キャッシュデータの保存場所変更時」に設定すると、上述の基本画面で保存場所を変更したときや保存場所を「メモリカード」に設定した状態でメモリカードを抜いたときに、全てのキャッシュが消去される。また、「キャッシュ機能をＯｆｆにした時」に設定すると、上述の基本画面で「チェックボックス」１２０１のチェックを外したときに全てのキャッシュが消去される。
【０１２０】
「クリア」ボタン１２０８は、上記の「キャッシュのクリア条件」１２０７によるクリア条件の設定に関わらず、その場で強制的にキャッシュをクリアしたいときに操作するボタンである。
【０１２１】
上記のように第１の実施の形態に係る情報処理装置は、記憶媒体に記録された画像データを再生表示するに当たって、一度表示した画像データをキャッシュしてあるので、再び表示する際の待ち時間を軽減することができる。
【０１２２】
本実施の形態に係る情報処理装置についてＰＤＡを例に挙げて説明したが、情報処理装置はこれに限らず、デジタルカメラ、携帯電話等であってもよい。
【０１２３】
なお、一覧表示用のキャッシュデータ及び１枚表示用のキャッシュデータは、夫々のデータが必要になった時点で個別にキャッシュするが、これらのうち、どちらか一方をキャッシュする際にもう一方のキャッシュデータも同時に生成して保存しておいても良い。これにより、一覧表示モード及び１枚表示モードのいずれか一方の表示モードで表示した画像を、後に、もう一方の表示モードで表示する場合に、キャッシュデータが保持されているので、画像を表示する際の待ち時間が短縮する。
【０１２４】
また、キャッシュをクリアする場合には全てのキャッシュ情報を削除したが、キャッシュ機能設定画面に「キャッシュのクリア範囲」のような項目を設けて、クリアする範囲を選択できるようにしても良い。
【０１２５】
また、キャッシュデータの保存場所についても、本体のＲＡＭ１０３及びメディア交換型記憶部１０６に装着されたメモリカードのどちらか一方に固定するのではなく、本体ＲＡＭ１０３に記憶された実体データに対しては本体のＲＡＭ１０３をキャッシュデータの保存場所にし、メディア交換型記憶部１０６に装着されたメモリカードに記憶された実体データに対しては同じメモリカードをキャッシュデータの保存場所にする、というように実体データと同一の記憶領域にキャッシュデータを保存するように自動的に切替えるようにしても良い。これにより、例えば、複数のメモリカードを交換して使用する場合でも、各々のメモリカードには、実体データとそれに対応するキャッシュデータとが格納されているので、画像を表示する際の待ち時間が短縮されて利便性が向上する。
【０１２６】
また、キャッシュ機能が有効である場合であっても、保存場所として指定されたメモリカードが抜かれたり、或いは書き込み禁止であったりなどの理由によって、キャッシュができない場合には自動的にキャッシュ機能を無効にするようにしても良い。更に、保存場所が有効になるか、保存場所を変更した場合には、再びキャッシュ機能を有効に戻すようにしても良い。
【０１２７】
（第２の実施の形態）
第２の実施の形態に係る情報処理装置について説明する。本実施の形態に係る情報処理装置は第１の実施の形態に係る情報処理装置として例示したＰＤＡ１００と同一のハードウェア構成（図１参照）及び外観（図２参照）を有する。
【０１２８】
第１の実施の形態においては、管理レコードの追加処理で「最も過去に参照されたキャッシュデータの削除」、キャッシュデータの最終参照日の更新処理で「更新対象となるキャッシュデータの論理不整合の修正」、キャッシュデータの問い合せ時に「壊れたキャッシュファイルの削除」が行われるが、チェック範囲が処理対象となるレコードのみであった。
【０１２９】
これに対して本実施の形態に係る情報処理装置では、キャッシュデータ全体の不整合については別のタイミングでチェック、削除、修正処理を行って、不必要なキャッシュデータによるメモリ領域の占有を解消するために、キャッシュした画像データに対してガベージ・コレクションを行うことによって、キャッシュに用いるメモリ領域の利用効率化を図る点が第１の実施の形態に係るＰＤＡ１００とは異なる。
【０１３０】
ガベージ・コレクションは、アプリケーション終了時及びアイドルの間に実行される。ただし、これらのタイミングで毎回処理が実行されるのではなく、処理を行うかどうかの抽選を行い、抽選に当たった場合のみ実行される。これは、論理不整合がおきるキャッシュデータの発生頻度が高くないこと、及びシステムの処理を重くしないためである。なお、ガベージ・コレクションは、アプリケーション起動時に実行するようにしてもよい。
【０１３１】
なお、アイドルか否かの判定は、入出力状態を監視して無入力・無出力の状態をアイドルとする方法、表示画面上で他のアプリケーションの背後になった状態をアイドルとする方法など、オペレーティングシステムの仕様によって様々な判定方法が考えられる。
【０１３２】
図１３は、ガベージ・コレクション処理を示すフローチャートである。
ガベージ・コレクションは始めにキャッシュ機能が有効か（Ｏｎ）否か（Ｏｆｆ）を判別する（ステップＳ１３０１）。キャッシュ機能が有効の場合には、ガベージ・コレクションを実行するか否かを決める抽選処理を行う（ステップＳ１３０２）。抽選の当選確率は例えば１／１００（１００回に１回）のように予め設定されている。
【０１３３】
抽選の結果を判別し（ステップＳ１３０３）、当選した場合には、ガベージ・コレクションを実行する。ガベージ・コレクションは、次の（１）〜（３）のいずれかの条件を満たすキャッシュデータに対して実行してキャッシュデータを削除する（ステップＳ１３０４，ステップＳ１３０５）。
（１）実体が存在しない
（２）実体のファイルの作成日時、更新日時と、キャッシュデータの作成日時、更新日時が一致しない
（３）インデックスファイルに管理レコードが無い
ステップＳ１３０１の判別の結果、キャッシュ機能が無効の場合、及び抽選にはずれた場合にはガベージ・コレクションは実行されない。
【０１３４】
なお、ガベージ・コレクション実行中に何らかの操作が行われた場合には、直ちにガベージ・コレクションの実行を中止し、アプリケーションに制御を戻す。
【０１３５】
図１４は、図１３におけるステップＳ１３０４の処理を示すフローチャートである。この処理では、実体の無いキャッシュ、日付の一致しないキャッシュの削除が行われる。
【０１３６】
先ず、インデックスファイル６０３に登録された全ての管理レコードをチェックしたか否かを判別する（ステップＳ１４０１）。全ての管理レコードをチェックしていない場合、すなわち、未チェックの管理レコードがある場合には未チェックの管理レコードを読み込む（ステップＳ１４０２）。
【０１３７】
次に、管理レコードに記録されたキャッシュデータに対応する実体データがキャッシュファイル６０４に存在するか否かを判別（ステップＳ１４０３）し、実体データが存在する場合は、管理レコードに記録されたキャッシュデータの作成日時、更新日時が実体データのものと一致するか否かを判別する（ステップＳ１４０４）。
【０１３８】
実体データがない場合、或いはキャッシュデータの作成日時、更新日時が実体データのものと一致しない場合には、キャッシュファイル６０４から該当するキャッシュデータを削除し（ステップＳ１４０５）、また、インデックスファイル６０３から管理レコードを削除する（ステップＳ１４０６）。
【０１３９】
ここまでの処理が終了するとステップＳ１４０１に戻り、全ての未チェックの管理レコードに対してチェックが終了するまで処理を繰り返す。
【０１４０】
図１５は、図１３におけるステップＳ１３０５の処理を示すフローチャートである。この処理では、管理レコードが存在しないキャッシュデータの削除を行う。
【０１４１】
先ず、全てのキャッシュデータをチェックしたか否かの判別をする（ステップＳ１５０１）。全てのキャッシュデータをチェックしていない場合、すなわち、未チェックのキャッシュデータがある場合には、未チェックのキャッシュファイル名をキャッシュファイル６０４から取得する（ステップＳ１５０２）。
【０１４２】
次に、取得したキャッシュファイル名に対応する管理レコードがインデックスファイル６０３に存在するか否かを判別する（ステップＳ１５０３）。キャッシュファイル名に対応する管理レコードが存在しない場合には、そのキャッシュファイル名の付いたキャッシュデータをキャッシュファイル６０４から削除する（ステップＳ１５０４）。
【０１４３】
ここまでの処理が終了するとステップＳ１５０１に戻り、全ての未チェックのキャッシュデータに対してチェックが終了するまで本処理を繰り返す。
【０１４４】
なお、図１３に示したフローチャートにおけるステップ１３０４の処理とステップ１３０５の処理とは順序を逆にしても良いし、どちらか一方の処理のみを行うようにしても良い。
【０１４５】
図１６は、ガベージ・コレクション処理の変形例を示すフローチャートである。
【０１４６】
図１６に示すガベージ・コレクション処理は、本フローチャートにおけるステップＳ１６０６の処理を追加して行う点のみが図１３に示したガベージ・コレクション処理と異なる。したがって、ステップＳ１６０６以外のステップの説明は省略する。
【０１４７】
図１７は、図１６におけるステップＳ１６０６の処理を示すフローチャートである。この処理はキャッシュデータの存在しない管理レコードを削除する処理である。
【０１４８】
先ず、全ての管理レコードをチェックしたか否かの判別をする（ステップＳ１７０１）。全ての管理レコードをチェックしていない場合、すなわち、未チェックの管理レコードがある場合には、未チェックの管理レコードをインデックスファイル６０３から読みこむ（ステップＳ１７０２）。
【０１４９】
次に、管理レコードに書きこまれているキャッシュファイル名に対応するキャッシュデータが存在するか否かを判別する（ステップＳ１７０３）。ここで、１つの管理レコードは、一覧表示用及び１枚表示用の２種類のキャッシュデータの管理に使用されているので、１つの管理レコードについて最大２回の判別が実行される。
【０１５０】
管理レコードに書き込まれたキャッシュファイル名が一覧表示用及び１枚表示用のうち何れか一方だけが存在する場合には、１回だけ判別を行って、そのキャッシュファイル名に対応するキャッシュデータが存在する場合には有効な管理データであるので管理レコードを削除することなくステップＳ１７０１に戻り、全ての未チェックの管理レコードに対してチェックが終了するまで本処理を繰り返す。一方、管理レコードに書きこまれているキャッシュファイル名に対応するキャッシュデータが存在しない場合には、管理レコードは不要であるので削除する。
【０１５１】
また、管理レコードに書き込まれたキャッシュファイル名が一覧表示用及び１枚表示用の両方が存在する場合には、２回の判別を行って、どちらのキャッシュファイル名にもそれぞれ対応するキャッシュデータが存在する場合には有効な管理データであるので管理レコードを削除することなくステップＳ１７０１に戻り、全ての未チェックの管理レコードに対してチェックが終了するまで本処理を繰り返す。どちらか一方のキャッシュファイル名のみに対応するキャッシュデータが存在する場合には、キャッシュデータが存在しない方のキャッシュファイル名を管理レコードから削除する。また、２つのキャッシュファイル名に対応するキャッシュデータがいずれも存在しない場合には、管理レコードは不要であるので削除する。
【０１５２】
なお、図１６に示したフローチャートにおけるステップ１６０４〜ステップＳ１６０６の各処理間の順序はどのような順序でも良いし、いずれか１つの処理のみを実行するものであっても良い。
【０１５３】
上記の何れのガベージ・コレクション処理によっても、無駄なキャッシュデータや管理データを削除できるので、キャッシュに割り当てたメモリ領域の利用効率が向上する。
【０１５４】
なお、ガベージ・コレクションの実行を所定確率の抽選で決定していたが、これをアクセス回数が所定値に達したときに実行するようにしても良い。アクセス回数が増えるに従って、キャッシュデータの論理不整合が起きる可能性が高くなるので、これにより、一層に効果的なガベージ・コレクションが実現できる。
【０１５５】
上記の実施の形態においては、一覧表示用のキャッシュデータと１枚表示用のキャッシュデータとの２種類（２サイズ）のキャッシュデータを持つものとして説明したが、これに限定せず、画像データの表示形態に応じて、より多くの種類（サイズ）のキャッシュデータを持つようにしても良い。この場合であっても、１つの管理レコードによって複数のキャッシュデータを管理することはいうまでもない。
【０１５６】
本発明は、上述した実施の形態の機能を実現するソフトウェアのプログラム（図５、図８乃至図１７のフローチャート）をコンピュータ又はＣＰＵに供給し、そのコンピュータ又はＣＰＵが該供給されたプログラムを読出して実行することによって、その目的を達成することができる。
【０１５７】
この場合、上記プログラムは、該プログラムを記録した記憶媒体から直接に供給されるか、又はインターネット、商用ネットワーク、若しくはローカルエリアネットワーク等に接続される不図示の他のコンピュータやデータベース等からダウンロードすることにより供給される。
【０１５８】
上記プログラムの形態は、オブジェクトコード、インタプリタにより実行されるプログラムコード、ＯＳ（オペレーティングシステム）に供給されるスクリプトデータ等の形態から成ってもよい。
【０１５９】
また、本発明は、上述した実施の形態の機能を実現するソフトウェアのプログラムを記憶した記憶媒体をコンピュータ又はＣＰＵに供給し、そのコンピュータ又はＣＰＵが記憶媒体に記憶されたプログラムを読出して実行することによっても、達成することができる。
【０１６０】
この場合、格納媒体から読出されたプログラムコード自体が上述した各実施の形態の機能を実現すると共に、そのプログラムコードを記憶した記憶媒体は本発明を構成する。
【０１６１】
プログラムコードを記憶する記憶媒体としては、例えば、ＲＯＭ、ＲＡＭ、ＮＶ−ＲＡＭ、フロッピー（登録商標）ディスク、ハードディスク、光ディスク（登録商標）、光磁気ディスク、ＣＤ−ＲＯＭ、ＭＯ、ＣＤ−Ｒ、ＣＤ−ＲＷ、ＤＶＤ−ＲＯＭ、ＤＶＤ−ＲＡＭ、ＤＶＤ−ＲＷ、ＤＶＤ＋ＲＷ、磁気テープ、不揮発性のメモリカード等がある。
【０１６２】
上述した実施の形態の機能は、コンピュータから読出されたプログラムコードを実行することによるばかりでなく、コンピュータ上で稼動するＯＳ等がプログラムコードの指示に基づいて実際の処理の一部又は全部を行うことによっても実現することができる。
【０１６３】
【発明の効果】
以上詳細に説明したように、請求項１記載の情報処理装置、請求項１９記載の画像データ処理方法、請求項３７記載の画像データ処理プログラム、及び請求項３８記載の記憶媒体によれば、画像データから、生成した複数の表示サイズの表示画像データは、１度表示するとキャッシュデータとしてキャッシュファイルに格納し、このキャッシュファイルを管理する為の管理レコードを画像データ毎にインデックスファイルに保持し、キャッシュファイル及びインデックスファイルを記憶媒体に設定されたキャッシュメモリに格納するので、画像データを再生表示する際にはキャッシュファイルに格納されたデータを使用でき、これによって画像の再生表示の待ち時間が短縮する。
【図面の簡単な説明】
【図１】本発明の第１の実施の形態に係る情報処理装置のハードウェア構成を示すブロック図である。
【図２】図１の情報処理装置の全体を示す斜視図である。
【図３】サムネイル画像の一覧表示の画面を示す図である。
【図４】３枚のサムネイル画像とさらにその内の１枚を拡大した拡大画像とを表示した画面を示す図である。
【図５】図２のＰＤＡ１００のキャッシュ処理の基本的な流れを示すフローチャートである。
【図６】ＰＤＡ１００の概念的な構成を示すブロック線図である。
【図７】インデックスファイルの構成例を示す図である。
【図８】図５におけるキャッシュデータの有無確認の処理を示すフローチャートである。
【図９】図５におけるキャッシュデータの取得処理を示すフローチャートである。
【図１０】図５におけるイメージデータの読込み処理を示すフローチャートである。
【図１１】図５におけるキャッシュデータの保存処理を示すフローチャートである。
【図１２】ＰＤＡ１００に表示されるキャッシュ機能設定画面を例示する図であり、（ａ）はキャッシュ機能設定画面の基本画面を示し、（ｂ）はキャッシュ機能設定画面の詳細設定画面を示す。
【図１３】ガベージ・コレクション処理を示すフローチャートである。
【図１４】図１３におけるステップＳ１３０４の処理を示すフローチャートである。
【図１５】図１３におけるステップＳ１３０５の処理を示すフローチャートである。
【図１６】ガベージ・コレクション処理の変形例を示すフローチャートである。
【図１７】図１６におけるステップＳ１６０６の処理を示すフローチャートである。
【符号の説明】
１００  ＰＤＡ
１０２  ＲＯＭ
１０３  ＲＡＭ
１０４  表示部
１０５  入力部
１０６  メディア交換型記録部
６０１  画像再生メインプログラム
６０２  キャッシュライブラリ
６０３  インデックスファイル
６０４  キャッシュファイル
【図１】
2004152172.tif 000003
【図２】
2004152172.tif 000004
【図３】
2004152172.tif 000005
【図４】
2004152172.tif 000006
【図５】
2004152172.tif 000007
【図６】
2004152172.tif 000008
【図７】
2004152172.tif 000009
【図８】
2004152172.tif 000010
【図９】
2004152172.tif 000011
【図１０】
2004152172.tif 000012
【図１１】
2004152172.tif 000013
【図１２】
2004152172.tif 000014
【図１３】
2004152172.tif 000015
【図１４】
2004152172.tif 000016
【図１５】
2004152172.tif 000017
【図１６】
2004152172.tif 000018
【図１７】
2004152172.tif 000019