(57)【要約】【課題】画像データを保存するキャッシュメモリの利用効率を向上させることにより、画像を表示するまでの時間を短縮し、操作感の向上をはかる。【解決手段】圧縮記憶された画像を表示する際に、デコードされた画像がキャッシュメモリにあれば、そのデコードされた画像を表示し（Ｓ９０２〜９０３）、デコードされた画像がキャッシュメモリになければ、圧縮記憶された画像をデコードして表示する（Ｓ９０７，９１１）とともに、そのデコードに要した時間を計測し（Ｓ９０６，９０８）、デコードされた画像をデコードに要した時間と共にキャッシュメモリに保存する（Ｓ９１０）ようにし、キャッシュメモリに空きがなければ、キャッシュメモリ中の各画像のデコードに要した時間に基づいて、置換対象となる画像データを決定する（Ｓ９０４〜９０５）。【選択図】        図９
2005074626.tif 000002
【特許請求の範囲】
【請求項１】
圧縮記憶された複数の画像の中から所望の画像を選択する画像選択工程と、
当該選択された画像を復元済の画像がキャッシュメモリにあれば、その復元済の画像を表示する第１の表示工程と、
当該選択された画像を復元済の画像が前記キャッシュメモリになければ、その選択された画像を復元する復元工程と、
当該復元した画像を表示する第２の表示工程と、
前記キャッシュメモリに空き領域があればその空き領域を選択し、空き領域がなければ置換対象となる画像を決定して、その決定した画像の領域を選択する領域選択工程と、
当該選択された領域に前記第２の表示工程で表示した画像を所定の属性データと対応づけて保存する保存工程とを備え、
前記領域選択工程では、前記キャッシュメモリ中の各画像の復元に要する時間及び当該画像に付随した属性データを用いた評価値に基づいて、前記置換対象となる画像を決定することを特徴とする画像処理方法。
【請求項２】
前記各画像の復元に要する時間を前記復元工程による復元の実行中に計測する計測工程を備え、前記保存工程では、当該計測した時間を各画像と対応付けて保存することを特徴とする請求項１に記載の画像処理方法。
【請求項３】
前記各画像の復元に要する時間を圧縮記憶された画像に付随したデータから予測する予測工程を備えることを特徴とする請求項１に記載の画像処理方法。
【請求項４】
前記画像に付随したデータは、画像のサイズ、画像の色の深さ、画像の圧縮方法のうち少なくとも１つを表わすデータであることを特徴とする請求項３に記載の画像処理方法。
【請求項５】
前記領域選択工程において、前記キャッシュメモリに保存された画像中に新たに復元した画像よりも評価値の低い画像がなければ、領域の選択及び前記保存工程による保存を非実行とすることを特徴とする請求項１に記載の画像処理方法。
【請求項６】
前記所定の属性データを前記圧縮記憶された画像から取得する属性取得工程を有することを特徴とする請求項１に記載の画像処理方法。
【請求項７】
前記領域選択工程において、前記評価値を前記画像選択工程による選択後に生成される変数を更に用いて求めることを特徴とする請求項１に記載の画像処理方法。
【請求項８】
前記変数は、新たに復元された画像と前記キャッシュメモリに保存された各画像との関係に基づいて、当該各画像に対して生成される変数であることを特徴とする請求項７に記載の画像処理方法。
【請求項９】
前記変数は、新たに復元された画像の表示状態から前記キャッシュメモリに保存された各画像を表示するまでの操作量に基づいて生成される変数であることを特徴とする請求項８に記載の画像処理方法。
【請求項１０】
前記所定の属性データは圧縮記憶された各画像に付随したデータであることを特徴とする請求項１に記載の画像処理方法。
【請求項１１】
前記各画像に付随したデータは、画像の回転方向、サムネイル画像の有無のうち少なくとも１つを表わすデータであることを特徴とする請求項１０に記載の画像処理方法。
【請求項１２】
前記所定の属性データは、復元された画像に対するユーザの指示操作に基づいて設定されるデータであることを特徴とする請求項１に記載の画像処理方法。
【請求項１３】
前記ユーザの指示操作に基づいて設定されるデータは、画像選択設定データと、レイアウト設定データと、トリミング設定データのうち少なくとも１つであることを特徴とする請求項１に記載の画像処理方法。
【請求項１４】
前記第１または第２の表示工程により表示された画像を、印刷指示に応じて印刷する印刷工程を有することを特徴とする請求項１に記載の画像処理方法。
【請求項１５】
圧縮記憶された複数の画像の中から所望の画像を選択する画像選択手段と、
当該選択された画像を復元済の画像がキャッシュメモリにあれば、その復元済の画像を表示する第１の表示制御手段と、
当該選択された画像を復元済の画像が前記キャッシュメモリになければ、その選択された画像を復元する復元手段と、
当該復元した画像を表示する第２の表示制御手段と、
前記キャッシュメモリに空き領域があればその空き領域を選択し、空き領域がなければ置換対象となる画像を決定して、その決定した画像の領域を選択する領域選択手段と、
当該選択された領域に前記第２の表示制御手段により表示した画像を所定の属性データと対応づけて保存する保存手段とを備え、
前記領域選択手段は、前記キャッシュメモリ中の各画像の復元に要する時間及び当該画像に付随した属性データを用いた評価値に基づいて、前記置換対象となる画像を決定することを特徴とする画像処理装置。
【請求項１６】
コンピュータにより実行可能な画像処理プログラムであって、
圧縮記憶された複数の画像の中から所望の画像を選択する画像選択工程と、
当該選択された画像を復元済の画像がキャッシュメモリにあれば、その復元済の画像を表示する第１の表示工程と、
当該選択された画像を復元済の画像が前記キャッシュメモリになければ、その選択された画像を復元する復元工程と、
当該復元した画像を表示する第２の表示工程と、
前記キャッシュメモリに空き領域があればその空き領域を選択し、空き領域がなければ置換対象となる画像を決定して、その決定した画像の領域を選択する領域選択工程と、
当該選択された領域に前記第２の表示工程で表示した画像を所定の属性データと対応づけて保存する保存工程とを備え、
前記領域選択工程では、前記キャッシュメモリ中の各画像の復元に要する時間及び当該画像に付随した属性データを用いた評価値に基づいて、前記置換対象となる画像を決定することを特徴とする画像処理プログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、デジタルカメラなどの撮像装置或いはメモリ等から画像データを入力して記録媒体に印刷する画像印刷装置、および記録装置のビューワ等の表示装置およびその方法に関するものである。
【０００２】
【従来の技術】
近年、簡単な操作で画像を撮影してデジタル画像データに変換できるデジタルカメラ（撮像装置）、所謂、デジカメが広く使用されるようになってきている。このようなカメラで撮影した画像を印刷して写真として使用する場合には、通常、その撮影されたデジタル画像データを、一旦、デジタルカメラからＰＣ（コンピュータ）に取り込み、そのＰＣで画像処理を行った後、そのＰＣからカラープリンタに出力して印刷するのが一般的である。
【０００３】
これに対して、最近は、ＰＣを介することなく、デジタルカメラからカラープリンタに、直接デジタル画像データを伝送して印刷することができるカラープリントシステムや、撮像した画像をデジタルカメラに装着されたメモリカードに記憶するようにし、そのメモリカードをカラープリンタに装着して、撮影された画像をそのメモリカードから読み出して印刷できる、所謂フォトダイレクト（ＰＤ）プリンタ等も開発されている。
【０００４】
そしてフォトダイレクトプリンタにおいて、メモリカードに記憶されている画像をＬＣＤパネルに表示して、印刷すべき画像を容易に選択できるようにした機種も開発されている。しかし、メモリカードに記憶した画像は圧縮されており、展開して表示可能な形式に変換するには時間がかかるため、ユーザは画像が表示されるまで待たねばならず、操作感が悪くなるという欠点があった。
【０００５】
表示までの時間を削減するために、一旦表示可能な形式にした画像を、画像の表示が終了しても、フォトダイレクトプリンタ内のメモリに一時的に保存（以下キャッシュとよぶ）しておくという方法が有効である。これにより、再度同じ画像が選択された場合は、キャッシュしてある画像データを用いて画像表示が行える為、デコード時間が不要となり、高速に画像の表示が可能となる。
【０００６】
ここで、データをキャッシュしておくメモリの容量が不足した場合は、データに対する何らかの優先度に従って、最も優先度の低いデータに代えて新たなデータを保存するのが一般的である。
【０００７】
例えば、プリンタフォントの分野においては、データを展開後に展開したデータをメモリにキャッシュする場合、展開にかかる時間やフォントの形状によってキャッシュの優先度を決定する手法が公知である（例えば、特許文献１を参照）。
【０００８】
また、キャッシュ管理テーブルにコスト情報を書き込み、コスト情報の比較によってキャッシュ優先度を決定する手法が知られている（例えば、特許文献２を参照）。
【０００９】
またＥＸＩＦタグ情報からプリント時間を予測しユーザに提示する手法が知られている（例えば、特許文献３を参照）。
【００１０】
【特許文献１】
特開平６−１１０４３７号公報
【特許文献２】
特開平６−１９５０５７号公報
【特許文献３】
特開２０００−２４４８５４号公報
【００１１】
【発明が解決しようとする課題】
ここで、フォトダイレクトプリンタで入力される画像データは、以下の点でフォントとは異なる。
【００１２】
フォントデータの場合、デコード前の元データは予め決められた条件で保存されており、文字毎に異なった条件で保存されていることはない。一方、デジタルカメラで撮影し保存された画像の場合（主にＪＥＰＧ画像の場合が多い）は、デジタルカメラの種類や撮影条件等で画像の縦横のサイズやアスペクト比やサムネイル画像の有無といった条件が、画像毎に異なる場合が発生する。また、デジタルカメラで撮影された画像をＰＣ上に取りこんで編集し、再びファイル化して保存されたデータなどは、ユーザの編集の仕方や使用アプリケーションに依存して、異なった条件でデータが保存されていることがある。一般に、前述のフォトダイレクトプリンタにおいてはこのような様々に条件の異なる画像を順次表示／印刷する必要性が発生する。
【００１３】
このため、フォトダイレクトプリンタで扱う元画像データの場合、キャッシュに保持しておくデータの優先順位は、特定の決まった条件で保存されているフォントデータの場合と同様では、必ずしも有効なキャッシュ効果が得られない。
【００１４】
また、ユーザがパネルから行う操作によって、その後の画面の表示が変化し、その際にも効果を得る為のキャッシュの優先順位が異なることが解った。これは、フォトダイレクトプリンタの場合、ビューアに一旦表示した画像をトリミングやレイアト変更といったユーザ操作によって異なる画面の表示を行う必要があるため、操作によって別々の画像変換を行う必要があるためである。
【００１５】
またそのために元画像から表示画像まで一貫した画像変換ではなく、いくつかの画像変換手段を組み合わせて表示可能な形式まで変換する方法をとる構成を採ることが多く、トータルの変換にかかった時間を測定するのが難しいといった点が文字の場合と異なる。
【００１６】
かかる相違により、上記文献に示された技術では、画像特有の情報や画像に対してユーザが行う操作によって、画像の展開時間やその後画像が表示される頻度が変化するというフォトダイレクトプリンタにおける問題に対応することができず、これらを解決するための他の技術も考案されていないのが現状である。
【００１７】
また上記特許文献３に示された技術を用いれば、ＥＸＩＦ情報から予想される再生時間を計算し、ユーザに提示することで、時間のかかるインデックス表示を行うか、１枚ずつ画像を選択しながら印刷を行うか、画像を確認せずに印刷を開始するかを選択させることができる。しかし小型の液晶を搭載し、メモリも少なく処理能力も劣る機種では、インデックス表示を行うこと自体が処理時間の面でも視認性の問題でも困難であり、一度に１画像ずつ表示しユーザは１画像ずつ順送り、逆送りを行って印刷を希望する画像を選択するのユーザインタフェースが良好であると考えられる。このため小型の液晶を搭載し、メモリも少なく処理能力も劣るフォトダイレクトプリンタ等の装置では、単にユーザに再生にかかる時間を提示しても、画像の表示までの時間を短縮しなければ操作性の向上に結びつかないという問題があった。
【００１８】
本発明はこれらの点に鑑みてなされたものであり、画像データの情報やユーザ操作の情報を用いて、画像データを保存するキャッシュメモリの利用効率を向上させることにより、画像を表示するまでの時間を短縮し、操作感の向上をはかることを目的とする。
【００１９】
【課題を解決するための手段】
上記目的を達するために、本発明の画像処理方法は、圧縮記憶された複数の画像の中から所望の画像を選択する画像選択工程と、当該選択された画像を復元済の画像がキャッシュメモリにあれば、その復元済の画像を表示する第１の表示工程と、当該選択された画像を復元済の画像が前記キャッシュメモリになければ、その選択された画像を復元する復元工程と、当該復元した画像を表示する第２の表示工程と、前記キャッシュメモリに空き領域があればその空き領域を選択し、空き領域がなければ置換対象となる画像を決定して、その決定した画像の領域を選択する領域選択工程と、当該選択された領域に前記第２の表示工程で表示した画像を所定の属性データと対応づけて保存する保存工程とを備え、前記領域選択工程では、前記キャッシュメモリ中の各画像の復元に要する時間及び当該画像に付随した属性データを用いた評価値に基づいて、前記置換対象となる画像を決定することを特徴とする。
【００２０】
また本発明の他の態様によれば、画像処理装置に、圧縮記憶された複数の画像の中から所望の画像を選択する画像選択手段と、当該選択された画像を復元済の画像がキャッシュメモリにあれば、その復元済の画像を表示する第１の表示制御手段と、当該選択された画像を復元済の画像が前記キャッシュメモリになければ、その選択された画像を復元する復元手段と、当該復元した画像を表示する第２の表示制御手段と、前記キャッシュメモリに空き領域があればその空き領域を選択し、空き領域がなければ置換対象となる画像を決定して、その決定した画像の領域を選択する領域選択手段と、当該選択された領域に前記第２の表示制御手段により表示した画像を所定の属性データと対応づけて保存する保存手段とを備え、前記領域選択手段は、前記キャッシュメモリ中の各画像の復元に要する時間及び当該画像に付随した属性データを用いた評価値に基づいて、前記置換対象となる画像を決定することを特徴とする。
【００２１】
また本発明の他の態様によれば、コンピュータにより実行可能な画像処理プログラムに、圧縮記憶された複数の画像の中から所望の画像を選択する画像選択工程と、当該選択された画像を復元済の画像がキャッシュメモリにあれば、その復元済の画像を表示する第１の表示工程と、当該選択された画像を復元済の画像が前記キャッシュメモリになければ、その選択された画像を復元する復元工程と、当該復元した画像を表示する第２の表示工程と、前記キャッシュメモリに空き領域があればその空き領域を選択し、空き領域がなければ置換対象となる画像を決定して、その決定した画像の領域を選択する領域選択工程と、当該選択された領域に前記第２の表示工程で表示した画像を所定の属性データと対応づけて保存する保存工程とを備え、前記領域選択工程では、前記キャッシュメモリ中の各画像の復元に要する時間及び当該画像に付随した属性データを用いた評価値に基づいて、前記置換対象となる画像を決定することを特徴とする。
【００２２】
【発明の実施の形態】
図１は、本発明の実施の形態に係るフォトダイレクトプリンタ装置１０００の概観斜視図である。
【００２３】
図１において、本実施形態に係るフォトダイレクトプリンタ装置１０００の外殻をなす本体は、下ケース１００１、上ケース１００２、アクセスカバー１００３及び排出トレイ１００４の外装部材を有している。また、下ケース１００１は、このプリンタ装置１０００の略下半部を、上ケース１００２は本体の略上半部をそれぞれ形成しており、両ケースの組合せによって内部に後述の各機構を収納する収納空間を有する中空体構造をなし、その上面部及び前面部にはそれぞれ開口部が形成されている。
【００２４】
更に、排出トレイ１００４は、その一端部が下ケース１００１に回転自在に保持され、その回転によって下ケース１００１の前面部に形成される開口部を開閉させ得るようになっている。このため、記録動作を実行させる際には、排出トレイ１００４を前面側へと回転させて開口部を開成させることにより、ここから記録シートが排出可能となると共に、排出された記録シートを順次積載し得るようになっている。
【００２５】
また、排紙トレイ１００４には、２枚の補助トレイ１００４ａ，１００４ｂが収納されており、必要に応じて各トレイを手前に引き出すことにより、用紙の支持面積を３段階に拡大、縮小させ得るようになっている。
【００２６】
アクセスカバー１００３は、その一端部が上ケース１００２に回転自在に保持され、上面に形成される開口部を開閉し得るようになっており、このアクセスカバー１００３を開くことによって本体内部に収納されている記録ヘッドカートリッジ（不図示）あるいはインクタンク（不図示）等の交換が可能となる。なお、ここでは特に図示しないが、アクセスカバー１００３を開閉させると、その裏面に形成された突起がカバー開閉レバーを回転させるようになっており、そのレバーの回転位置をマイクロスイッチなどで検出することにより、アクセスカバーの開閉状態を検出し得るようになっている。
【００２７】
また、上ケース１００２の右側には、液晶表示部１００６や各種キースイッチ等を備える操作パネル１０１０が設けられている。この操作パネル１０１０の構造は、図３を参照して詳しく後述する。１００７は自動給送部で、記録シートを装置本体内へと自動的に給送する。１００８は紙間選択レバーで、記録ヘッドと記録シートとの間隔を調整するためのレバーである。１００９はカードスロットで、ここにメモリカードが挿入され、メモリカードに記憶されている画像データを直接取り込んで印刷することができる。このメモリカード（ＰＣ）としては、例えばコンパクトフラッシュ（登録商標）メモリ、スマートメディア、メモリスティック等がある。
【００２８】
１０１１はビューワ（液晶表示部）で、ＰＣカードに記憶されている画像の中からプリントしたい画像を検索する場合などに、１コマ毎の画像やインデックス画像などを表示するのに使用される。１０１２は後述するデジタルカメラを接続するための端子、１０１３は、パーソナルコンピュータ（ＰＣ）を接続するためのＵＳＢバスコネクタを示す。
【００２９】
図２は、本実施形態に係るフォトダイレクトプリンタ装置１０００の記録ヘッドの構成を示す概観斜視図である。
【００３０】
本実施形態における記録ヘッドカートリッジ１２００は、図２に示すようにインクを貯留するインクタンク１３００と、このインクタンク１３００から供給されるインクを記録情報に応じてノズルから吐出させる記録ヘッド１３０１とを有し、記録ヘッド１３０１は、キャリッジ１１０２に対して着脱可能に搭載される、いわゆるカートリッジ方式を採るものとなっている。
【００３１】
そして記録に際しては、記録ヘッドカートリッジ１２００はキャリッジ軸に沿って往復走査され、それに伴って記録シート上にカラー画像が記録される。ここに示す記録ヘッドカートリッジ１３０１では、写真調の高画質なカラー記録を可能とするため、インクタンクとして、例えば、ブラック、ライトシアン（ＬＣ）、ライトマゼンタ（ＬＭ）、シアン、マゼンタ及びイエローの各色独立のインクタンクが用意されており、それぞれが記録ヘッド１３０１に対して着脱自在となっている。
【００３２】
なお、本実施形態では、上述した６色のインクを使用する場合で説明するが、本発明は、これら６色のインクを用いる場合に限定されるものでなく、例えばブラック、シアン、マゼンタ及びイエローの４色のインクを使用して記録を行なうインクジェットプリンタであってもよい。その場合には、４色それぞれ独立のインクタンクが、それぞれ記録ヘッド１３０１に対して着脱自在となっていても構わない。
【００３３】
図３は、本実施形態に係る操作パネルおよびＬＣＤ表示装置１０１０の概観図である。
【００３４】
１０１１はＬＣＤ表示装置であり、現在の本フォトダイレクトプリンタの状態によってメニュー画面や画像選択画面など様々な画面を表示する。
【００３５】
２００１は方向キーであり、このキー２００１を押下することによりメニューに表示されているカーソルを動かしたり、選択されている画像を変更することができる。
【００３６】
２００２は決定キーであり、このキー２００２を押下することにより現在選択されている項目を決定したり、印刷確認画面でこれを押下することにより印刷を開始することができる。
【００３７】
２００３はメニューキーであり、このキー２００３を押下することによりメニュー画面を表示することができる。
【００３８】
２００４は用紙／設定キーであり、このキー２００４を押下することにより用紙／設定画面を表示することができる。
【００３９】
２００５はトリミングキーであり、このキー２００５を押下することによりトリミングモードに遷移することができる。
【００４０】
２００６は拡大・縮小キーであり、このキー２００６を押下することにより画像の拡大表示をしたり、トリミングモードでトリミング枠を拡大・縮小して印字領域を選択したりすることができる。
【００４１】
２００７はフォトビューワキーであり、ＵＳＢバスコネクタ１０１３を介してＰＣ３０１０に接続時に、このキー２００７を押下することによりＰＣ３０１０上のフォトビューワアプリケーションを起動することができる。またこのキー２００７を３秒間以上長押しすることによりＰＣ３０１０のハードディスク等にメモリカード３０１１内のファイルを保存することができる。このキー２００７は自照式であり、フォトビューワアプリケーション起動時には点灯することにより、フォトビューワが起動していることを示すことができる。
【００４２】
２００８は印刷キーであり、このキー２００８を押下することにより印刷を開始することができる。このキー２００８は自照式であり、印刷開始可能な状態になると点灯して印刷可能であることを示すことができ、印刷中は点滅して印刷中であることを示すことができる。
【００４３】
２００９はキャンセルキーであり、このキー２００９を押下することにより印刷キャンセル指示や、一つ前のメニュー項目に戻ったりすることができる。
【００４４】
２０１０はパワーキーであり、このキー２０１０を押下することによりパワーオン状態とパワーオフ状態を切り替えることができる。
【００４５】
２０１１はレジュームキーであり、このキー２０１１を押下することにより印刷キャンセル指示やエラー状態からの復帰をすることができる。
【００４６】
フォトダイレクトプリンタ装置の機能構成を示すブロック図である。
【００４７】
図４において、３０００は制御部（制御基板）を示している。３００１はＡＳＩＣ（専用カスタムＬＳＩ）を示し、その構成は図５のブロック図を参照して詳しく後述する。３００２はＣＰＵであり、後述する装置全体の各種制御処理及び、輝度信号（ＲＧＢ）から濃度信号（ＣＭＹＫ）への変換、スケーリング、ガンマ変換、誤差拡散等の画像処理等を担当している。
【００４８】
３００３はメモリで、３００２のＣＰＵの制御プログラムを記憶するプログラムメモリ３００３ａ、及び実行時のプログラムを記憶するＲＡＭエリア，画像データなどを記憶するワークメモリとして機能するメモリエリア等を有している。
【００４９】
３００４はプリンタエンジンで、ここでは、複数色のカラーインクを用いてカラー画像を印刷するインクジェットプリンタのプリンタエンジンが搭載されている。３００５はデジタルカメラ３０１２を接続するためのポートとしてのＵＳＢバスコネクタである。３００６はビューワ１０１１を接続するためのコネクタである。
【００５０】
３００８はＵＳＢバスハブ（ＵＳＢ  ＨＵＢ）で、このプリンタ装置１０００がＰＣ３０１０からの画像データに基づいて印刷を行う際には、ＰＣ３０１０からのデータをそのままスルーし、ＵＳＢバス３０２１を介してプリンタエンジン３００４に出力する。これにより、接続されているＰＣ３０１０は、プリンタエンジン３００４と直接、データや信号のやり取りを行って印刷を実行することが出来る（一般的なＰＣプリンタとして機能する）。３００９は電源コネクタで、電源３０１３により、商用ＡＣから変換された直流電圧を入力している。
【００５１】
ＰＣ３０１０は一般的なパーソナルコンピュータ、３０１１は前述したメモリカード（ＰＣカード）、３０１２はデジタルカメラである。
【００５２】
尚、この制御部３０００とプリンタエンジン３００４との間の信号のやり取りは、前述したＵＳＢバス３０２１又はＩＥＥＥ１２８４バス３０２２を介して行われる。
【００５３】
図５は、ＡＳＩＣ３００１の構成を示すブロック図で、この図５においても、前述の図面と共通する部分は同じ記号を付与して、それらの説明を省略する。
【００５４】
４００１はＰＣカードインターフェース部で、装着されたＰＣカード３０１１に記憶されている画像データを読取ったり、或いはＰＣカード３０１１へのデータの書き込み等を行う。４００２はＩＥＥＥ１２８４インターフェース部で、プリンタエンジン３００４との間のデータのやり取りを行う。このＩＥＥＥ１２８４インターフェース部４００２は、デジタルカメラ３０１２或いはＰＣカード３０１１に記憶されている画像データを印刷する場合に使用されるバスである。４００３はＵＳＢインターフェース部で、ＰＣ３０１０との間でのデータのやり取りを行う。４００４はＵＳＢホストインターフェース部で、デジタルカメラ３０１２との間でのデータのやり取りを行う。４００５は操作パネル・インターフェース部で、操作パネル１０１０からの各種操作信号を入力したり、表示部１００６への表示データの出力などを行う。４００６はビューワ・インターフェース部で、ビューワ１０１１への画像データの表示を制御している。４００７は各種スイッチやＬＥＤ４００９等との間のインターフェースを制御するインターフェース部である。４００８はＣＰＵインターフェース部で、ＤＳＰ３００２との間でのデータのやり取りの制御を行っている。４０１０はこれら各部を接続する内部バス（ＡＳＩＣバス）である。
【００５５】
図６は、本実施形態に係るフォトダイレクトプリンタ装置１０００のインターフェース及び画像処理制御に係る機能構成を示すブロック図である。尚、この図６においても、前述の図面と共通する部分は同じ記号を付与して、それらの説明を省略する。
【００５６】
６０００は、このフォトダイレクトプリンタ装置１０００からみた場合でのホスト（画像データ源）に該当しており、このホスト６０００には、上述したホストコンピュータであるＰＣ３０１０、デジタルカメラ３０１２、ＰＣカード３０１１、更には不図示のゲーム機やテレビジョン機器なども含まれる。このようなホスト６０００は、ＵＳＢバス、ＩＥＥＥ１２８４、或はＩＥＥＥ１３９４等のインターフェースを介して接続される。またこれ以外にもブルートゥース（Ｂｌｕｅｔｏｏｔｈ）等のインターフェースを用いても良い。
【００５７】
また前述した制御基板３０００の有する機能には、ＡＳＩＣ３００１により実現されるデータ入力及び格納処理部６００１と、プリンタエンジン３００４にプリントデータを出力するプリンタインターフェース部６００４、そしてＤＳＰ３００２により実行されるマルチレンダラ処理６００２、画像処理及びプロセス処理６００３が含まれる。
【００５８】
この制御プログラムは、機能モジュールごとにタスク化したマルチタスク形式で構成されており、そのタスク構成の主なものを示すと図７のようになる。
【００５９】
図７において、８０００はシステムコントロールタスクで、各タスク間でのイベント発行、エベントの終了に伴うシーケンス制御や排他処理等、システム全体の調停を行っている。８００１はキーイベントタスクを示し、操作パネル１０１０のキー操作に基づいて、押下されたキーの解析等を行う。８００２はＬＣＤ表示部１００６への表示タスクを示し、表示部１００６におけるＵＩ制御或はメッセージ表示要求等が発生した時点で起動され、表示部１００６への表示制御を実行している。
【００６０】
８００３はＰＣカード３０１１への読み書き、或はＩＥＥＥ１３９４、或はブルーツゥースなどによるデータの入出力により起動されるタスクを示す。８００４はＵＳＢバスを介して接続されるＰＣ３０１０からのデータ転送により起動されるＵＳＢプリンタタスクで、ＵＳＢのプリンタ割り込みにより起動され、ＰＣプリンタとしての機能を実行する。８００５は、システムコントロールタスク８０００により起動され、ファームウェアの初期化を行う。またシステムコントロールタスク８０００からのメッセージに応じて、下位タスクであるＵＳＢコントロールタスク、ＵＳＢバルクタスクの起動・終了を行う。８００６はＵＳＢタスクにより起動され、ＵＳＢを介して接続されるデジタルカメラ３０１２からのデータの読込みや各種通信制御等を実行する。８００７はファイルシステムタスクで、ファイルのオープン、クローズ、リード、ライト等の入出力制御を行う。
【００６１】
８００８はプリンタエンジン３００４と接続されるセントロニクス・インターフェースから起動されるタスクで、印刷データのＤＭＡ送信、ステータス応答等を実行する。
【００６２】
８００９は画像処理タスクで、ＲＧＢデータを受取り、前述した３Ｄ処理、四面体補完、色変換やスケーリング及び誤差拡散処理などによりＹＭＣＫデータを作成し、最終的にプリンタエンジン３００４に出力するラスタイメージデータを作成する。
【００６３】
８０１０はページ・クリエイトタスクで、ＪＰＥＧデータを伸長して画像データに変換したり、或はＢＭＰ形式のデータからイメージデータを作成したり、或はＨＴＭＬ文書からイメージデータを作成するとともに、フォトデータの補正、階調補正等の画像処理やＲＧＢデータの作成等を行っている。
【００６４】
８０１１はＬＣＤ制御タスクで、システムコントロールの命令によりＬＣＤ表示部に各種メニューを表示したり、メモリカード内の画像を表示したりする。
【００６５】
８０２０はＬＣＤ表示用画像処理タスクで、ＪＰＥＧデータをデコードして画像データに変換し、ＬＣＤ制御タスクで表示できる形式に変換する。
【００６６】
図８はＬＣＤ制御タスクの機能構成を示した図である。
【００６７】
９００１は、圧縮された画像ファイルをＲＧＢ形式に変換するデコード部である。９００２は、デコード部９００１によってＲＧＢ形式にされた画像をＬＣＤに表示できる形式にするよう、解像度変換や回転等の画像処理を行う画像変換部である。９００３は、デコード部９００１または画像変換部９００２によって画像処理の行われた画像を保存しておくためのキャッシュ部である。９００４は、デコード部９００１の処理に要する時間を計測する計測部である。
【００６８】
これらはＣＰＵ３００２およびメモリ３００３を使用したソフトウェアとして実現されているが、専用のハードウェアまたは専用のハードウェアとソフトウェアを組み合わせて実現してもよい。
【００６９】
キャッシュ部９００３は、変換部９００２によって変換された画像を最大で１１枚保存することができる。キャッシュ部９００３には変換部９００２によって変換された画像の他に、計測部で計測された時間Ｔ、画像番号、変換後の画像の幅と高さ、元画像の幅と高さ、回転の指定等の情報を画像ごとに格納するエリアが存在する。キャッシュ部９００３は、電源投入時やメモリカードの挿抜時にその内容をクリアする。
【００７０】
次に、本実施形態にかかるフォトダイレクトプリンタ１０００のＣＰＵ３００２による処理の概要について説明する。
【００７１】
ファイルシステムタスク８００７は、メモリカード読み出し部にメモリカード３０１１が挿入されると、メモリカード３０１１内にある画像ファイルのリストをファイル名によって順番付けて生成する。ファイルのリストのｘ番目の画像を画像番号ｘの画像とする。このときのファイルの順番は、ファイル名およびファイルの格納されているディレクトリがＤＣＦ規格に準じていたらＤＣＦ番号の昇順であり、ＤＣＦ規格外のファイルであればＤＣＦ規格のファイルより順番が後ろになるようにソートする。
【００７２】
メモリカード３０１１が挿入され、ファイルのリストが生成されると、ＬＣＤ画面１０１１は画像選択モードに遷移する。画像選択モードは印刷する画像を選択するために、現在選択されている画像ファイルを再生し、現在選択されている画像ファイルの画像番号と、生成されたファイルのリストに含まれる総画像枚数と、現在選択されている画像がＤＣＦ規格に準じている場合にＤＣＦ番号を表示するモードである。
【００７３】
画像選択モードにおいて、再生される画像は画像ファイル内にサムネイル画像がある場合には、高速化のためサムネイル画像を再生する。画像ファイル内にサムネイル画像がない場合には主画像を再生する。
【００７４】
画像選択モードにおいて、再生される画像ファイルはＥＸＩＦのＯｒｉｅｎｔａｔｉｏｎタグの指定に従って回転されて再生される。本プリンタによって印刷された日付情報は、印刷物を画像選択モードにおいて表示される向きと同様の向きにしてみたときに、文字が正立するように印刷される。ユーザ操作によって画像選択モードの回転方向がＥＸＩＦのＯｒｉｅｎｔａｔｉｏｎタグの指定と異なる向きに変更され、画像選択モードの表示が変更された場合も同様に、本プリンタによって印刷された日付情報は、印刷物を画像選択モードにおいて表示される向きと同様の向きにしてみたときに、文字が正立するように印刷することが可能である。
【００７５】
画像選択モードにおいて、トリミングキーを押下するとＬＣＤ画面１０１１はトリミング指定画面に遷移する。トリミング指定画面では、画像選択枠が表示され、ユーザはキー操作によって画像選択枠の移動、画像選択枠の拡大・縮小を行うことができ、決定キー２００２を押下することによりトリミング情報を確定し画像選択モードに遷移する。
【００７６】
画像ファイル中にサムネイル画像がある場合、サムネイル画像は必ずしも主画像を正確に縮小したものとは限らない。
【００７７】
よってトリミング指定画面において再生する画像は、画像ファイル中にサムネイル画像がある場合でも必ず主画像から再生することによって、正確なトリミングの領域の指定を行うことができる。
【００７８】
画像選択モードにおいて、ＬＣＤ画面１０１１はトリミング指定された画像に、トリミング指定アイコンが表示し、ユーザにトリミングが指定されているということを示す。
【００７９】
画像選択モードにおいて、拡大キーを押下するとＬＣＤ画面１０１１は拡大表示モードに遷移する。拡大表示モードにおいて、ＬＣＤ画面１０１１は選択された画像を拡大表示する。表示しきれない部分については方向キー２００１でスクロールして表示することが可能である。
【００８０】
画像選択モードにおいて決定キー２００２を押下すると、ＬＣＤ画面１０１１は印刷確認画面に遷移し、印刷キー２００８が点灯する。印刷確認画面は、現在設定されている印刷設定を表示する。印刷設定には、用紙サイズ、用紙種類、フチ指定、日付印刷指定、印刷画質、画像補正、ノイズ除去等の項目がある。
【００８１】
印刷確認画面表示中おいて、印刷キー２００８または決定キー２００２を押下すると指定された印刷設定に従って印刷が開始される。
【００８２】
用紙／設定キーを押下すると、用紙／設定画面に遷移する。用紙／設定画面では印刷設定を選択することができる。印刷設定には、用紙サイズ、用紙種類、フチ指定、日付印刷指定、印刷画質、画像補正、ノイズ除去等の項目がある。
【００８３】
用紙サイズは、Ｌ判、２Ｌ判、ハガキ、Ａ４、パノラマ、の中から一つを選択する。
用紙種類は、プロフォトペーパー、スーパーフォト、マットフォト、普通紙の中から一つを選択する。
フチ指定は、フチなし、フチありの中から一つを選択する。
日付印刷は、ＹＹＹＹ／ＭＭ／ＤＤ，ＭＭ／ＤＤ／ＹＹＹＹ，ＤＤ／ＭＭ／ＹＹＹＹ、の中から一つを選択する。
印刷画質は、きれい、標準、の中から一つを選択する。
ノイズ除去は、あり、なし、の中から一つを選択する。
画像補正は、Ｅｘｉｆ  Ｐｒｉｎｔ、ＶＩＶＩＤ，ＡＰＰ，ＶＩＶＩＤ＋ＡＰＰ，なし、の中から一つを選択する。
【００８４】
用紙／設定画面において、すべての項目を選択するか、用紙／設定画面において用紙／設定キーを押下すると、用紙／設定確認画面に遷移する。用紙／設定確認画面では現在設定されている印刷設定を一覧表示する。
【００８５】
画像選択モードに遷移すると、画像処理タスクは表示制御タスクから、メモリカード内の画像を表示可能な形式に変換するようにメッセージを受信する。
【００８６】
図９は画像処理タスクが受信したメッセージを受けて、表示制御タスクに画像データを返すべく行う一連の動作手順を示すフローチャートである。以下では説明を解り易くする為に元の画像データとしてＪＰＥＧファイル形式で保存されている場合について述べるが、ファイル形式についてはこれに限定するものでは無く、ＴＩＦＦやＧＩＦ等のデコードが必要なファイルフォーマットの場合に本発明を適応できるのは言うまでもない。
【００８７】
ＬＣＤ表示用画像処理タスク８０２０は、ステップＳ９０１でＬＣＤ制御タスクからメッセージを受信する。そして、ステップＳ９０２で受信したメッセージを解析し、要求された画像番号を特定して該当する画像データがキャッシュ部９００３に存在しないかを検索する。ＬＣＤ表示用画像処理タスク８０２０は、キャッシュ部９００３に該画像データがある場合には、デコード部９００１以下の処理を行わずに、ステップＳ９０３でキャッシュ部９００３のデータを読み出し、ＬＣＤ制御タスク８０１１に渡して終了する。キャッシュ部９００３に該画像データが存在せず、かつキャッシュ部９００３に新たな画像データを格納することができる場合には、空いている領域に以降の処理で生成したデータを格納することとしてステップＳ９０６に進む。キャッシュ部９００３に該画像データが存在せず、かつキャッシュ部９００３に新たな画像データを格納することができる空き領域がない場合には、ステップＳ９０５に進む。
【００８８】
ステップＳ９０５では、新たな画像データを格納する領域を確保するために、キャッシュ部９００３に含まれている各画像について、要求された画像番号と、キャッシュ部９００３のタグに含まれるタグ情報とから、キャッシュから削除してもよい画像を一つ決定する。
【００８９】
以下の説明では、ある画像Ａを表示した状態から画像Ｂを表示するのに必要なユーザのキー操作等のステップ数を相対値として表したものを画像Ａと画像Ｂの距離ということにする。この距離はプリンタの設計環境によって変わるもので、値としては絶対値としての意味を持たず、提供するシステムによって異なるものである。
【００９０】
本実施形態では、キャッシュに含まれている画像と要求されている画像との距離と、キャッシュに含まれている画像をデコードするのに要した時間と、キャッシュに含まれている画像の回転方向と、キャッシュに含まれている画像の画像ファイルにサムネイルが含まれているか否かと、をパラメータとしてキャッシュから削除してもよい画像を一つ決定する。
【００９１】
すなわち、評価関数ｆ（Ｔ，Ｔｒ，Ｔｔ，Ｄ）の値が最小となる画像を選択し決定する。評価関数ｆは例えば、
ｆ（Ｔ，Ｔｒ，Ｔｔ，Ｄ）＝（Ｔ−Ｔｒ）×Ｔｔ／Ｄ
のように定義される。
【００９２】
ここで、パラメータの意味は次の通りである。
【００９３】
Ｔ：キャッシュに含まれている画像データをデコードするためにデコード部９００１で要した時間
Ｔｔ：キャッシュに含まれている画像ファイルにサムネイルがあり、かつキャッシュ内の画像が主画像からのデコードである場合に０．２。そうでなければ１。
Ｔｒ：キャッシュに含まれている画像が回転されて縦に表示する場合であれば定数値。そうでなければ０。
Ｄ：キャッシュに含まれている画像と要求されている画像の距離。
【００９４】
Ｄは以下のように定義する。
即ちＤ＝｜Ｎ＿１−Ｎ＿Ｏ｜
【００９５】
ここでＮ＿１はキャッシュ部に格納されている画像データの画像番号であり、Ｎ＿Ｏは要求されている画像の画像番号である。両者の絶対値を画像Ｎ＿１とＮ＿Ｏの距離Ｄとして定義する。
【００９６】
ただし最後の画像番号の次の画像を選択すると、画像番号１に戻るような循環する画像選択方法で実現している場合は、総画像枚数をＡとして
Ｄ１＝｜Ｎ＿１−Ｎ＿Ｏ｜
Ｄ２＝Ａ−Ｄ１
Ｄ＝Ｍｉｎ（Ｄ１，Ｄ２）
として距離Ｄを扱うこともできる。ただし演算Ｍｉｎ（Ｄ１，Ｄ２）はＤ１とＤ２のどちらか小さい方と等しい値を示すものとする。
【００９７】
サムネイルのない形式で保存されている画像は、表示するときに必ず主画像からデコードしなくてはならないため、サムネイルのある画像とくらべて時間がよりかかる。このため例えばサムネイルがない画像と、サムネイルはあるが主画像からデコードした画像とでは、デコードにかかった時間が同じであったとしてもサムネイルのない画像のキャッシュを優先したほうが再表示の時間を短縮できる。以上のようにサムネイルの有無を考慮せずにキャッシュを行った場合にはキャッシュの効果が十分でない場合が発生する。
【００９８】
パラメータＴｔを考慮した関数にすることで、サムネイル画像のない画像を優先的にキャッシュに残すことが可能になる。サムネイル画像のないが画像を優先的にキャッシュに残すことで、再表示に時間のかかるサムネイル画像以外からのデコードを極力少なくすることが可能になり、高速に表示することができる。
【００９９】
一方パラメータＴｒを考慮した関数にすることで、画像を回転する時間をキャッシュの優先度に反映することができる。例えばユーザまたは画像表示方向の指示によって画像の表示方向が違う場合、同じ画像であっても画像変換部で要する処理が異なり、処理時間が異なる。また表示装置に表示する面積も変化し、ＬＣＤ制御部で表示完了までに要する処理時間も異なる。
【０１００】
横に長く表示する画像と、縦に長く表示する画像とでは、表示する面積が横に長く表示する画像の方が大きいために、表示装置に表示する時間が長くなる。表示装置に表示する時間をキャッシュに優先度に反映することで、高速に表示することが出来るようになる。
【０１０１】
以上のように表示画像の回転の有無を考慮せずにキャッシュを行った場合にはキャッシュの効果が十分でない場合が発生する。
【０１０２】
上記に示した評価関数および定数値はあくまで一例であり、システムによって最適な値は変化する。
【０１０３】
ステップＳ９０５でキャッシュ内の削除可能な画像を決定したらステップＳ９０６に進む。
【０１０４】
ステップＳ９０６ではステップＳ９０７で画像デコードに要する時間を測定するために計測部９００４のタイマカウントをリセットする。または９００４のタイマカウントを記憶しておき、後のステップＳ７での９００４のタイマカウントの差分をとるようにしてもよい。
【０１０５】
ステップＳ９０７では、デコード部９００１はメモリカードから読み出した画像データをＲＧＢ各８ビットの点順次ビットマップ形式に展開する。このとき展開の対象とする画像は、選択した画像ファイルにＥＸＩＦ規格のサムネイル画像があればサムネイル画像を、無ければ主画像とする。
【０１０６】
ステップＳ９０８で計測部９００４のタイマカウントを読み出し、ステップＳ９０７でデコードに要した時間を測定する。
【０１０７】
ステップＳ９０９で画像変換部９００２はＬＣＤパネル上に表示できる形式にデータを変換する。
【０１０８】
画像変換部９００２はデコード部９００１によってデコードされた画像を、ＬＣＤ表示部の横１２０ドット、縦９０ドットの矩形領域に表示できるように、Ｒ５ビット、Ｇ６ビット、Ｂ５ビットの点順次ビットマップに変換する。デジタルカメラで撮影された画像の多くはアスペクト比が４：３であり、横１２０ドット、縦９０ドットに変換するが、アスペクト比が３：２の場合は、横１２０、縦８０ドットに変換する。またその他のアスペクト比の場合でも、画像のアスペクト比を保ったままなるべく大きく表示できるように変換する。
【０１０９】
ＥＸＩＦのＯｒｉｅｎｔａｔｉｏｎタグによって画像の回転が指示されている場合は、回転を行い、アスペクト比が４：３の画像で右へ９０度回転が指示されている場合には、横６７ドット、縦９０ドットに変換する。またその他のアスペクト比の場合でも、画像のアスペクト比を保ったままなるべく大きく表示できるように変換する。
【０１１０】
画像変換部９００２行う変倍処理は線形補間法を用いているが、もちろん他の方法を用いてもかまわない。
【０１１１】
次に各色８ビットで扱ってきた、解像度変換と回転を施された画像を、ＬＣＤ表示部に表示するためにＲ５ビット、Ｇ６ビット、Ｂ５ビットに変換する。
【０１１２】
ステップＳ９１０で、変換したデータをキャッシュの空き領域またはステップＳ９０５で決定した領域に記録する。
【０１１３】
ステップＳ９１１で、ＬＣＤ表示用画像処理タスク８０２０はメモリカード内の画像をＬＣＤに表示すべくＬＣＤ制御タスク８００２に通知する。
【０１１４】
ＬＣＤ制御タスク８００２は受信したデータに基づき、画像データをＬＣＤ表示部１０１１に送信し、表示を完了する。
【０１１５】
このように本実施形態のフォトダイレクトプリンタでは、削除してもよいキャッシュ画像を選択するのに、デコードに要する時間と、ユーザが選択した情報と、ファイル固有の情報との関数を設定して、画像ごとに前記関数を比較することによって、最適なキャッシュの優先度を求めることができ、高速な画像の再生を行うことが可能である。
【０１１６】
［実施形態２］
次に第２の実施形態に付いて説明するが、第１の実施形態との差異についてのみ注目し、第１の実施形態と同様に実施可能な点についての説明は割愛する。
【０１１７】
本実施形態では、キャッシュに含まれている画像と要求されている画像との距離と、キャッシュに含まれている画像をデコードするのに要した時間と、キャッシュに含まれている画像の回転方向と、キャッシュに含まれている画像の画像ファイルにサムネイルが含まれているか否かとをパラメータとしてキャッシュから削除してもよい画像を一つ決定する。
【０１１８】
そのため、ステップＳ９０５では、キャッシュに含まれている各画像について、要求された画像番号と、キャッシュ部のタグに含まれるタグ情報と、キャッシュに含まれている画像のファイル固有情報と、ユーザ操作による情報から、評価関数ｆ（Ｔ，Ｐｌ，Ｐｔ，Ｄ）の値を求め、評価関数ｆの値が最小となる画像を選択し、キャッシュから削除してもよい画像に決定する。
【０１１９】
パラメータＴ，Ｄの意味は第１実施形態と同様であり、Ｐｌ，Ｐｔの意味は次の通りである。
【０１２０】
Ｐｌ：ユーザが設定した画像選択情報の有無。当該画像が印刷選択されていれば１、非選択なら０．
Ｐｔ：  ユーザが設定したトリミング情報の有無。当該画像がトリミングされていれば１、トリミングされていなければ０．
【０１２１】
ユーザに印刷選択された画像は、表示が終わっても印刷前プレビュー等で再表示を要求される可能性が高い。このためたとえば二つの画像のデコードに要する時間が同じであっても、一方の画像が印刷指定され、他方の画像には印刷指定がされていない場合には、印刷指定のされている画像を優先的にキャッシュした方が印刷前プレビュー等で再表示を要求された場合の表示を高速化することができる。
【０１２２】
以上のように印刷選択の有無を考慮せずにキャッシュを行った場合にはキャッシュの効果が十分でない場合が発生する。そこで、パラメータＰｌを反映した関数にすることで、ユーザによって選択されている画像を優先的にキャッシュに残すことが可能になる。
【０１２３】
また、サムネイル画像は必ずしも主画像を正確に縮小したものとは限らないため、トリミング指定するために表示する画像は、例えサムネイルがあっても主画像からデコードする。再表示を行うときにも主画像からデコードしなければ正確な表示ができない。このため、正確なトリミング指定を表示する為には、トリミング設定された画像とトリミング指定されていない画像との二つの画像のデコードに要する時間が同じであっても、トリミング指定された画像を優先的にキャッシュしたほうが再表示を要求された場合の表示を高速化することができる。
【０１２４】
以上のようにトリミングの有無を考慮せずにキャッシュを行った場合にはキャッシュの効果が十分でない場合が発生する。そこで、パラメータＰｔを反映した関数にすることで、トリミング指定されている画像を優先的にキャッシュに残すことが可能になる。また、レイアウト指定を考慮するようにしてもよい。
【０１２５】
本実施形態では、ユーザによって選択されている画像を優先的にキャッシュに残すことによって、印刷前に印刷イメージをプレビューする際に高速に表示することが可能となる。また、トリミング指定された画像を優先的にキャッシュに残すことによって、主画像によるトリミング指定を高速に表示することができる。
【０１２６】
このように本実施形態のフォトダイレクトプリンタでは、削除してもよいキャッシュ画像を選択するのに、デコードに要する時間と、ユーザが選択した情報と、ファイル固有の情報との関数を設定して、画像ごとに前記関数を比較することによって、最適なキャッシュの優先度を求めることができ、高速な画像の再生を行うことが可能である。
【０１２７】
［実施形態３］
次に第３の実施形態に付いて説明するが、第１の実施形態との差異についてのみ注目し、第１の実施形態と同様に実施する点についての説明は割愛する。
【０１２８】
本実施形態では、第１の実施形態のＬＣＤ表示用画像処理タスク８０２０による画像変換をＬＣＤ制御タスク８００２で実行する。
【０１２９】
図１０は、第３の実施形態におけるＬＣＤ表示用画像処理タスク８０２０の機能構成を示した図である。
【０１３０】
９００１は、圧縮された画像ファイルをＲＧＢ形式に変換するデコード部である。９００３は、デコード部９００１によってデコードの行われた画像を保存しておくためのキャッシュ部である。９００４は、デコード部９００１でデコードに要する時間を計測する計測部である。本実施形態では、画像変換をＬＣＤ制御タスク８００２で実行するため、第１の実施形態における画像変換部９００３は存在しない。
【０１３１】
図１１は、画像処理タスクが受信したメッセージを受けて、表示制御タスクに画像データを返すべく行う一連の動作を示したものである。
【０１３２】
図１１のフローチャートにおけるステップＳ１１０１〜１１０８、ステップＳ１１１０〜１１１１は、第１の実施形態における図９のフローチャートにおけるステップＳ９０１〜９０８、ステップＳ９１０〜９１１とほぼ同様であり、ステップＳ９０９の画像変換に相当するステップを含まない点でのみ異なっている。但し、ステップＳ１１０５では、削除してもよい画像を第２の実施形態と同様の手法で決定する。
【０１３３】
本実施形態におけるＬＣＤ制御タスク８００２は、第１の実施形態における画像変換部９００２に相当する画像変換機能を備え、ＬＣＤ表示用画像処理タスク８０２０によってデコードされた画像をＬＣＤ表示部に表示可能な形式に変換した後に、ＬＣＤ表示部１０１１に表示する。
【０１３４】
本実施形態では、画像変換をＬＣＤ制御タスク８００２で実行するため、一度のデコードで、回転方向やサイズを変更した複数の画像を作成することができる。
【０１３５】
［実施形態４］
次に第４の実施形態に付いて説明するが、第１の実施形態との差異についてのみ注目し、第１の実施形態と同様に実施する点についての説明は割愛する。
【０１３６】
図１２は本実施形態におけるＬＣＤ制御タスクの内部構成を示した図である。
【０１３７】
本実施形態では、各画像のデコードに要する時間を、デコード実行時に計測して求める代わりに、データサイズや形式などからの予測により求める。
【０１３８】
９００１は圧縮された画像ファイルをＲＧＢ形式に変換するデコード部である。９００２はデコード部によってＲＧＢ形式にされた画像をＬＣＤに表示できる形式にするよう、解像度変換や回転等の画像処理を行う画像変換部である。９００３はデコード部または画像変換部によって画像処理の行われた画像を保存しておくためのキャッシュ部である。本実施形態では、デコード部９００１が要する時間は予測により求めるため、第１の実施形態におけるデコード時間を計測する計測部９００４は存在しない。
【０１３９】
Ｅｘｉｆ  Ｖｅｒ．２．０においては、ＪＰＥＧまたはＴＩＦＦ形式のいずれかで画像データが格納されている。いずれの形式でも、マーカあるいはタグと呼ばれる部分を解析することで、実際の画像データを読む前に、画像の幅、画像の高さ、画像のビットの深さ、圧縮の種類などのメタデータを知ることができる。そしてこれらのメタデータから、当該画像のデコードに要する時間を予測することが可能である。ＪＰＥＧ及びＥＸＩＦファイルフォーマットなどのファイルフォーマットは何らかの形態のメタデータを含むと考えられる。しかし、メタデータの仕様に対応するどのようなファイルフォーマットでも、本発明と組み合わせて使用できる。
【０１４０】
予測されるデコード時間Ｔｉｍｅは以下のように求められる。
Ｔｉｍｅ＝Ｆｕｎｃｔｉｏｎ（Ｗｉｄｔｈ，  Ｈｅｉｇｈｔ，  Ｄｅｐｔｈ，  Ｃｏｍｐｒｅｓｓ）
Ｗｉｄｔｈ，  画像の高さ
Ｈｅｉｇｈｔ，  画像の幅
Ｄｅｐｔｈ，  画像ビットの深さ
Ｃｏｍｐｒｅｓｓ  圧縮の種類
【０１４１】
キャッシュの優先度を決定する手法としてはＬＲＵ（ＬｅａｓｔＲｅｃｅｎｔｌｙＵｓｅｄ）等が公知であるが、画像によって再度デコードするコストが大きく異なることを考慮して優先度Ｐを以下のように定める。
Ｐ＝ｆ（Ｔｉｍｅ，  Ｄ，  Ｔｒ，  Ｔｔ）
パラメータＤ，  Ｔｒ，  Ｔｔの意味は実施形態１と同様である。
【０１４２】
図１３はＬＣＤ上にメモリカードの画像を表示するときのフローチャートである。
【０１４３】
ステップＳ１３０１〜１３０３は、ステップＳ９０１〜９０３と同様である。
【０１４４】
ステップＳ１３０４で画像ファイルに付帯したメタデータを読み込み、デコードに必要な時間を計算する。
【０１４５】
ステップＳ１３０５で、デコード部に９００１によってメモリカード内の要求された画像をデコードする。
【０１４６】
ステップＳ１３０６で、キャッシュ部９００３にデコードした画像データが格納できる空き領域があるかをチェックし、空き領域があればステップＳ１３０９へ、無ければステップＳ１３０７へ進む。
【０１４７】
ステップＳ１３０７で、キャッシュの優先度をキャッシュ部９００３に保存されている各画像とステップＳ１３０５でデコードされた画像とで比較し、最も優先度の低い画像を検索する。ステップＳ１３０５でデコードされた画像の優先度が最も低い場合はステップＳ１３１０へ、そうでない場合はステップＳ１３０８へ進む。
【０１４８】
ステップＳ１３０８では、ステップＳ１３０７で検索したもっとも優先度の低い画像の領域を置き換え領域として設定し、Ｓ１３０９へ進む。
【０１４９】
ステップＳ１３０９でキャッシュ部へステップＳ１３０５でデコードした画像データを書き込む。ステップＳ１３０９において書き込む領域は、ステップＳ１３０６から遷移した場合は空き領域とする。ステップＳ１３０８から遷移した場合はステップＳ１３０８で決定した領域とする。
【０１５０】
ステップＳ１３１０では、ステップＳ１３０５でデコードした画像をＬＣＤ表示部へ送る。
【０１５１】
このように本実施形態のフォトダイレクトプリンタでは、削除してもよいキャッシュ画像を選択するのに、デコードに要する予測時間と、ユーザが選択した情報と、ファイル固有の情報との関数を設定して、画像ごとに前記関数を比較することによって、最適なキャッシュの優先度を求めることができ、高速な画像の再生を行うことが可能である。
【０１５２】
［実施形態５］
次に第４の実施形態に付いて説明するが、第２の実施形態との差異についてのみ注目し、第２の実施形態と同様に実施する点についての説明は割愛する。
【０１５３】
本実施形態では、キャッシュに含まれている画像と要求されている画像との距離と、キャッシュに含まれている画像をデコードの見積もり時間と、キャッシュに含まれている画像の回転方向と、キャッシュに含まれている画像の画像ファイルにサムネイルが含まれているか否かと、をパラメータとしてキャッシュから削除してもよい画像を一つ決定する。
【０１５４】
そのため、評価関数ｆ（Ｔｉｍｅ，Ｐｌ，Ｐｔ，Ｄ）が最小となる画像を選択し決定する。
【０１５５】
各パラメータの意味は前述の通りである。
【０１５６】
本実施形態は、各画像のデコードに要する時間として、実行時間Ｔを計測して求める代わりに、予測時間Ｔｉｍｅをデータサイズや形式などから求める点で、第２実施形態とは異なる。
【０１５７】
このように本実施形態のフォトダイレクトプリンタでは、削除してもよいキャッシュ画像を選択するのに、デコードに要する時間と、ユーザが選択した情報と、ファイル固有の情報との関数を設定して、画像ごとに前記関数を比較することによって、最適なキャッシュの優先度を求めることができ、高速な画像の再生を行うことが可能である。
【０１５８】
以上に示した実施形態においては、詳細な事例を示すために個々の実施項目について具体的に述べたが、本発明は以上に示した実施形態に限定されるものではなく、考えられる他の要素と取り替えても実施可能である。
【０１５９】
【発明の効果】
以上説明したように、本発明によれば、画像に応じて最適なキャッシュ優先度を設定でき、キャッシュメモリの効果を向上させることで、結果として画像再生までに要する時間を減らし操作性を向上させることができるという効果がある。
【図面の簡単な説明】
【図１】実施形態に係るフォトダイレクトプリンタ装置の概観斜視図である。
【図２】フォトダイレクトプリンタ装置の記録ヘッドの構成を示す概観斜視図である。
【図３】フォトダイレクトプリンタ装置の操作パネルおよびＬＣＤ表示装置の概観図である。
【図４】フォトダイレクトプリンタ装置の機能構成を示すブロック図である。
【図５】ＡＳＩＣの構成を示すブロック図である。
【図６】インターフェース及び画像処理制御に係る機能構成を示すブロック図である。
【図７】機能モジュールごとにタスク化したマルチタスク構成の制御プログラムを示す図である。
【図８】実施形態１に係るＬＣＤ表示用画像処理タスクの機能構成を表わす図である。
【図９】実施形態１に係るＬＣＤ表示用画像処理タスクの処理手順を示すフローチャートである。
【図１０】実施形態２に係るＬＣＤ表示用画像処理タスクの機能構成を表わす図である。
【図１１】実施形態２に係るＬＣＤ表示用画像処理タスクの処理手順を示すフローチャートである。
【図１２】実施形態３に係るＬＣＤ表示用画像処理タスクの機能構成を表わす図である。
【図１３】実施形態３に係るＬＣＤ表示用画像処理タスクの処理手順を示すフローチャートである。
【図１】
2005074626.tif 000003
【図２】
2005074626.tif 000004
【図３】
2005074626.tif 000005
【図４】
2005074626.tif 000006
【図５】
2005074626.tif 000007
【図６】
2005074626.tif 000008
【図７】
2005074626.tif 000009
【図８】
2005074626.tif 000010
【図９】
2005074626.tif 000011
【図１０】
2005074626.tif 000012
【図１１】
2005074626.tif 000013
【図１２】
2005074626.tif 000014
【図１３】
2005074626.tif 000015