(57)【要約】【課題】指定された印刷対象画像を印刷するための画像処理が開始されるまでの時間を短縮する。【解決手段】指定された印刷対象画像の印刷実行指示に従って、前記印刷対象画像の画質を補正するための補正パラメータに基づいて、前記指定された印刷対象画像を表す印刷対象画像データを補正し、補正後の印刷対象画像データに基づいて印刷を実行する印刷制御装置である。印刷対象画像指定部は印刷を希望する前記印刷対象画像を指定する。前処理実行部は、前記印刷対象画像指定部によって指定された前記印刷対象画像についての補正パラメータを求めるために、所定の前処理を実行する。前処理管理部は、前記印刷対象画像指定部によって前記印刷対象画像が指定された場合には、前記印刷実行指示が発生する前に、前記前処理実行部に対して前記前処理の実行を先行して指示する。【選択図】図１
2007194980.tif 000002
【特許請求の範囲】
【請求項１】
指定された印刷対象画像の印刷実行指示に従って、前記印刷対象画像の画質を補正するための補正パラメータに基づいて、前記指定された印刷対象画像を表す印刷対象画像データを補正し、補正後の印刷対象画像データに基づいて印刷を実行する印刷制御装置であって、
印刷を希望する前記印刷対象画像を指定する印刷対象画像指定部と、
指定された前記印刷対象画像を表す印刷対象画像データに基づいて、前記指定された印刷対象画像についての補正パラメータを求めるために、所定の前処理を実行する前処理実行部と、
前記印刷対象画像指定部によって前記印刷対象画像が指定された場合には、前記印刷実行指示が発生する前に、前記前処理実行部に対して前記前処理の実行を先行して指示する前処理管理部と、
を備えることを特徴とする印刷制御装置。
【請求項２】
請求項１に記載の印刷制御装置であって、
前記前処理管理部は、前記印刷対象画像指定部によって指定された複数の前記印刷対象画像についての前記前処理のうち、未実行の前記前処理については、あらかじめ設定されている所定の順番で、前記前処理の実行を先行して指示する、
ことを特徴とする印刷制御装置。
【請求項３】
請求項１または請求項２記載の印刷制御装置であって、
前記補正パラメータには、前記指定された印刷対象画像を表す印刷対象画像データに対して統計処理を行うことにより求められる第１種のパラメータと、前記印刷対象画像データに対して顔認識処理を行うことにより求められる第２種のパラメータ群と、前記印刷対象画像データに対して赤目解析処理を行うことにより求められる第３種のパラメータのうち、少なくとも、１種のパラメータが含まれる、
ことを特徴とする印刷制御装置。
【請求項４】
請求項１ないし請求項請求項３のいずれかに記載の印刷制御装置であって、さらに、
所定の形式で圧縮されている圧縮画像データを展開処理する展開処理部、を備え、
前記印刷対象画像指定部は、前記展開処理部により前記圧縮画像データを展開処理することにより得られた展開画像データに基づいてプレビュー画像を表示し、表示されているプレビュー画像が印刷の対象として指定された場合に、指定されたプレビュー画像に対応する展開画像データの表す画像が前記印刷対象画像として指定されたと判断し、
前記前処理管理部は、前記展開画像データを前記印刷対象画像データとして、前記前処理実行部に前記前処理を実行させる、
ことを特徴とする印刷制御装置。
【請求項５】
請求項４記載の印刷制御装置であって、
前記前処理管理部は、前記展開画像データの表す画像が前記印刷対象画像として指定された場合に、前記前処理実行部に、前記展開画像データの所定の画素に対するサンプリングを実行させるとともに、得られたサンプリング結果を利用することにより、前記補正パラメータを求めさせる、
ことを特徴とする印刷制御装置。
【請求項６】
請求項４記載の印刷制御装置であって、
前記前処理管理部は、前記展開画像データの表す画像が前記印刷対象画像として指定された場合に、前記前処理実行部に、前記プレビュー画像が表示される際に、前記展開画像データの所定の画素に対するサンプリングを実行することにより、あらかじめ求められているサンプリング結果を利用して、前記補正パラメータを求めさせる、
ことを特徴とする印刷制御装置。
【請求項７】
指定された印刷対象画像の印刷実行指示に従って、前記印刷対象画像の画質を補正するための補正パラメータに基づいて、前記指定された印刷対象画像を表す印刷対象画像データを補正し、補正後印刷対象画像データに基づいて印刷を実行する印刷制御方法であって、
印刷を希望する前記印刷対象画像を指定する印刷対象画像指定工程と、
指定された前記印刷対象画像を表す印刷対象画像データに基づいて、前記指定された印刷対象画像に対応する補正パラメータを求めるために、所定の前処理を実行する前処理実行工程と、
前記印刷対象画像指定部によって前記印刷対象画像が指定された場合には、前記印刷実行指示が発生する前に、前記前処理実行部に対して前記前処理の実行を先行して指示する前処理管理工程と、
を備えることを特徴とする印刷制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ディジタルカメラ等の撮像装置によって撮像された画像を印刷するための画像処理に関する。
【背景技術】
【０００２】
近年、ディジタルカメラ等の撮像装置によって撮像されてメモリカード等の記憶媒体に格納されている画像データを、パーソナルコンピュータを介さずに直接プリンタに読み込んで、読み込んだ画像データの表す画像の印刷を行うことができるプリンタや、ディジタルカメラ等の撮像装置から画像データを直接プリンタに読み込んで、読み込んだ画像データの表す画像の印刷を行うことができるプリンタが普及しつつある。なお、以下では、このような撮像装置によって撮像された画像を「フォト画像」とも呼び、このフォト画像を表す画像データを「フォト画像データ」とも呼ぶ。また、上記のようなフォト画像を印刷することができるプリンタを、「フォトプリンタ」とも呼ぶ。
【０００３】
上記のようなフォトプリンタでは、フォト画像を印刷するために実行する画像処理の一つとして、適切な印刷結果が得られるように、あらかじめ、読み込んだフォト画像データに対して種々の補正処理を行っている。このようなフォト画像データに対する補正技術としては、例えば特許文献１に記載の技術が提案されている。
【０００４】
【特許文献１】特開２００１−１６５６４７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
ところで、上記のようなフォトプリンタでは、補正処理を行うための前処理として、まず、フォト画像データを読み込んで、読み込んだフォト画像データから所定の割合で画素データのサンプリングを行ってヒストグラムを作成し、作成したヒストグラムに基づいて統計処理を行って、画像の特徴を示す特徴量を求めることにより、補正パラメータを決定している。そして、フォト画像を印刷するために実行する画像処理において、決定した補正パラメータに基づいてフォト画像データに対する補正処理を行っている。また、顔認識処理を行って、フォト画像中に人物の顔の存在を認識し、これに応じた補正パラメータを決定して補正処理を行う場合もある。さらに、また、フォト画像中の人物の目が赤目になっている場合において、赤目解析処理を行って、これに応じた補正パラメータを決定して補正処理を行う場合もある。
【０００６】
従って、１枚のフォト画像を印刷する場合において、上記補正処理を含む画像処理の前に、補正パラメータを求めるための前処理を実行する必要がある。このため、印刷を希望するフォト画像を指定した後、印刷の実行を指示してから、実際に、その指定したフォト画像データに対する画像処理が開始されるまでに、前処理を開始してから前処理が終了するまでの待ち時間が発生し、結果として、実際の印刷処理が開始されるまでの待ち時間が長くなるという問題がある。
【０００７】
また、フォト画像データは、通常は、所定の圧縮形式、例えば、ＪＰＥＧ（Joint Photographic Coding Experts Group）形式により圧縮されている。このため、上記画像処理や前処理を実行する前に、ＪＰＥＧ形式で圧縮されているフォト画像データを展開処理する必要があり、これにより、さらに、いっそう待ち時間が長くなる。
【０００８】
本発明は、上述の課題を解決するためになされたものであり、印刷を希望する画像として指定された印刷対象画像を印刷するための画像処理が開始されるまでの時間を短縮し、結果として実際の印刷処理が開始されるまでの待ち時間を短縮することが可能な技術を提供することを目的とする。
【課題を解決するための手段】
【０００９】
上述の課題の少なくとも一部を解決するために、本発明の態様は、
指定された印刷対象画像の印刷実行指示に従って、前記印刷対象画像の画質を補正するための補正パラメータに基づいて、前記指定された印刷対象画像を表す印刷対象画像データを補正し、補正後の印刷対象画像データに基づいて印刷を実行する印刷制御装置であって、
印刷を希望する前記印刷対象画像を指定する印刷対象画像指定部と、
指定された前記印刷対象画像を表す印刷対象画像データに基づいて、前記指定された印刷対象画像についての補正パラメータを求めるために、所定の前処理を実行する前処理実行部と、
前記印刷対象画像指定部によって前記印刷対象画像が指定された場合には、前記印刷実行指示が発生する前に、前記前処理実行部に対して前記前処理の実行を先行して指示する前処理管理部と、
を備えることを特徴とする。
【００１０】
上記印刷制御装置によれば、指定した印刷対象画像について印刷実行指示がなされる前に、指定した印刷対象画像について所定の前処理を先行して開始することができるので、従来のように印刷実行指示後に、所定の前処理が実行される場合に比べて、指定した印刷対象画像を印刷するための画像処理が開始されるまでの時間を短縮し、結果として実際の印刷処理が開始されるまでの待ち時間を短縮することが可能となる。
【００１１】
そして、前記前処理管理部は、前記印刷対象画像指定部によって指定された複数の前記印刷対象画像についての前記前処理のうち、未実行の前記前処理については、あらかじめ設定されている所定の順番で、前記前処理の実行を先行して指示することが好ましい。
【００１２】
こうすれば、例えば、印刷処理が実行される順番があらかじめ所定の順番に設定されているような場合において、印刷対象画像が指定される順番が、その所定の順番と異なっている場合においても、効率よく前処理の実行を先行して指示することが可能である。
【００１３】
なお、前記補正パラメータには、前記指定された印刷対象画像を表す印刷対象画像データに対して統計処理を行うことにより求められる第１種のパラメータと、前記印刷対象画像データに対して顔認識処理を行うことにより求められる第２種のパラメータ群と、前記印刷対象画像データに対して赤目解析処理を行うことにより求められる第３種のパラメータのうち、少なくとも、１種のパラメータが含まれる。
【００１４】
上記印刷制御装置では、さらに、
所定の形式で圧縮されている圧縮画像データを展開処理する展開処理部、を備え、
前記印刷対象画像指定部は、前記展開処理部により前記圧縮画像データを展開処理することにより得られた展開画像データに基づいてプレビュー画像を表示し、表示されているプレビュー画像が印刷の対象として指定された場合に、指定されたプレビュー画像に対応する展開画像データの表す画像が前記印刷対象画像として指定されたと判断し、
前記前処理管理部は、前記展開画像データを前記印刷対象画像データとして、前記前処理実行部に前記前処理を実行させるようにすることができる。
【００１５】
そして、前記前処理管理部は、前記展開画像データの表す画像が前記印刷対象画像として指定された場合に、前記前処理実行部に、前記展開画像データの所定の画素に対するサンプリングを実行させるとともに、得られたサンプリング結果を利用することにより、前記補正パラメータを求めさせるようにすることもできる。
【００１６】
あるいは、前記前処理管理部は、前記展開画像データの表す画像が前記印刷対象画像として指定された場合に、前記前処理実行部に、前記プレビュー画像が表示される際に、前記展開画像データの所定の画素に対するサンプリングを実行することにより、あらかじめ求められているサンプリング結果を利用して、前記補正パラメータを求めさせるようにすることもできる。
【００１７】
本発明は、上記印刷制御装置としての構成のほか、画像処理装置として構成することもできる。また、これら装置発明の態様に限ることなく、印刷制御方法、画像処理方法といった方法発明の態様で実現することも可能である。なお、方法発明の態様においても、先に示した種々の付加的要素を適用することが可能である。さらには、それら方法や装置を実現するコンピュータプログラム、およびそのプログラムを記録した記録媒体、そのプログラムを含み搬送波内に具現化されたデータ信号など種々の態様で実現することが可能である。なお、それぞれの態様において、先に示した種々の付加的要素を適用することが可能である。
【００１８】
本発明をコンピュータプログラムまたはそのプログラムを記録した記録媒体等として構成する場合には、印刷制御装置や画像処理装置の動作を制御するプログラム全体として構成するものとしてもよいし、本発明の機能を果たす部分のみを構成するものとしてもよい。また、記録媒体としては、フレキシブルディスクやＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、光磁気ディスク、ＩＣカード、ＲＯＭカートリッジ、パンチカード、バーコードなどの符号が印刷された印刷物、コンピュータの内部記憶装置（ＲＡＭやＲＯＭなどのメモリ）および外部記憶装置などコンピュータが読み取り可能な種々の媒体を利用できる。
【発明を実施するための最良の形態】
【００１９】
以下、本発明の実施の形態について、実施例に基づき以下の順序で説明する。
Ａ．実施例：
Ａ１．印刷制御装置の構成および動作概要：
Ａ２．印刷対象画像指定動作：
Ａ３．前処理管理動作：
Ａ４．前処理の先行処理動作についての具体例：
Ａ５．実施例の効果：
Ｂ．変形例：
【００２０】
Ａ．実施例：
Ａ１．印刷制御装置の構成および動作概要：
図１は、本発明の一実施例としての印刷制御装置の構成例を示す機能ブロック図である。この印刷制御装置１０は、複数のプロセッサを備えるマルチプロセッサシステムを、１つの半導体基板上に集積化したマイクロプロセッサである。各プロセッサは、それぞれ、ＣＰＵや、メモリ、バスコントローラ等の周辺回路を含むユニットを意味している。なお、本実施例では、図１に示すように、１つのメインプロセッサ１００と、４つのサブプロセッサ２００Ａ〜２００Ｄ（図中、「サブプロセッサ１」〜「サブプロセッサ４」と表記されている。）と、を備える場合を例に示している。また、印刷制御装置１０は、複数のプロセッサの他、印刷機構部２０の動作を制御する回路である機構制御部３００や、操作部３０による入力動作を制御する回路である入力Ｉ／Ｆ部４００、表示装置である液晶パネル（ＬＣＤ）４０による表示動作を制御するＬＣＤコントローラ５００、カードスロット５０に装着されるメモリカードからのデータの読み取り動作を制御する回路であるカードＩ／Ｆ部６００、専用メモリ６０に対するメインプロセッサ１００からのアクセスを制御する専用メモリコントローラ７００、共有メモリ７０に対する各プロセッサ１００，２００Ａ〜２００Ｄからのアクセスを制御する共有メモリコントローラ８００等の種々の周辺回路を備えている。なお、本発明に特に関係のない周辺回路については図示を省略している。
【００２１】
印刷制御装置１０を構成する各プロセッサは、専用メモリ６０に格納されている各プロセッサ用の所定のプログラムを読み出して実行することにより、それぞれ対応する各機能ブロックとして動作する。具体的には、メインプロセッサ１００は、専用メモリ６０に格納されているメインプロセッサ１００のためのプログラムを読み出して実行することにより、以下で説明する機能ブロックとして動作する。また、各サブプロセッサ２００Ａ〜２００Ｄは、メインプロセッサ１００のためのプログラムが読み出される際に、専用メモリ６０から読み出されて共有メモリ７０に格納されているプログラムを、共有メモリ７０から読み出して実行することにより、それぞれ、以下で説明する機能ブロックとして動作する。
【００２２】
メインプロセッサ１００は、印刷処理動作を全体として制御する機能ブロック（以下、「印刷制御部」と呼ぶ。）として動作する。なお、以下では、メインプロセッサ１００を、「印刷制御部１００」とも呼ぶ。
【００２３】
印刷制御部１００は、具体的には、ファイルアクセス部１１０、ユーザインタフェース部（「ＵＩ部」とも呼ぶ。）１２０、前処理管理部１３０、前処理実行部１４０、画像処理管理部１５０、画像処理部１６０、印刷イメージ処理部１７０、および、印刷処理部１８０の各機能ブロックに区分される。
【００２４】
ファイルアクセス部１１０は、メモリカード５２に格納されているフォト画像データの読み出しを制御する。
【００２５】
ＵＩ部１２０は、印刷を希望するフォト画像を印刷対象画像として選択するための選択画面をＬＣＤ４０に表示し、ユーザが操作部３０を操作することにより、フォト画像データとしてメモリカード５２に格納されているフォト画像を、ＬＣＤ４０の選択画面中に表示する。そして、ＵＩ部１２０は、ユーザが操作部３０を操作して、選択画面中に表示したフォト画像の印刷枚数を設定することにより、印刷対象画像として指定する。また、ＵＩ部１２０は、印刷対象画像を指定すると、これに従って、指定した印刷対象画像に対する前処理を先行して実行するための依頼（以下、「前処理先行処理依頼」とも呼ぶ。）を前処理管理部１３０に指示する。そして、ＵＩ部１２０は、ユーザが操作部３０を操作することによって印刷の実行を指示すると、これに従って、印刷を実行するための画像処理の依頼を画像処理管理部１５０に指示する。すなわち、ＵＩ部１２０は、本発明の印刷対象画像指定部に相当する。
【００２６】
前処理管理部１３０は、後述するように、ＵＩ部１２０からの前処理先行処理依頼を受けて、前処理実行部１４０に前処理の実行を指示する。
【００２７】
前処理実行部１４０は、前処理管理部１３０からの前処理の実行指示に従って、後述する画像処理における補正処理で利用される補正パラメータを求めるための前処理を実行する。なお、前処理には、印刷対象画像の特徴を示す特徴量としての最大輝度、最小輝度、平均輝度、中央輝度等を求めるための統計処理や、顔の存在を調べる顔認識処理、赤目を補正するための赤目解析処理等の少なくとも一つが含まれている。本例では、統計処理、顔認識処理、赤目解析処理の全てを行うこととする。また、通常の前処理では、統計処理や顔認識処理において、印刷対象画像データを所定の割合でサンプリングすることにより作成したヒストグラムに基づいて実行するため、本例の前処理は、このサンプリング処理も含むものとして説明する。
【００２８】
画像処理管理部１５０は、ＵＩ部１２０からの画像処理の実行指示を受けると、前処理管理部１３０に対して、実行指示を受けた印刷対象画像に対する前処理を実行するための依頼（「前処理依頼」とも呼ぶ。）を前処理管理部１３０に指示する。そして、前処理管理部１３０から前処理の終了通知を受け取ると、画像処理部１６０に画像処理の実行を指示し、画像処理部１６０で実行する画像処理の動作を制御する。
【００２９】
ここで、後述するように、ユーザが印刷の実行を指示する前に、対応する前処理が先行して実行されている場合には、前処理依頼があると、直ちに、前処理の終了応答が通知されるので、印刷の実行時には、前処理のために必要とする時間はわずかである。
【００３０】
なお、メモリカード５２に格納されているフォト画像データは、例えば、ＪＰＥＧ形式の圧縮データである。そこで、画像処理部１６０は、画像処理の一つとして、メモリカード５２から読み出した印刷対象画像データを、ＲＧＢ形式の画像データに展開処理するデコード処理を実行する。
【００３１】
また、画像処理部１６０は、上記デコード処理のほか、印刷対象画像データを展開処理することにより得られた画像データ（「原画像データ」あるいは「展開画像データ」とも呼ぶ）に対して、前処理により求められた補正パラメータに基づいて、色補正、明るさ補正、コントラスト補正、彩度補正、ノイズ除去、平滑化、輪郭補正等の種々の補正処理うち、少なくとも一つを施す画像補正処理を実行する。さらに、また、画像処理部１６０は、印刷対象画像データの解像度を変換する解像度変換処理、印刷対象画像データの表す画像を印刷媒体上の実際の印刷位置に配置した画像データ（「レイアウト画像データ」とも呼ぶ。）を生成するレイアウト処理実行する。
【００３２】
なお、画像処理部１６０は、実際には、上記画像処理を実行せず、後述するように、画像処理制御部として動作する第１のサブプロセッサ２００Ａに対して、具体的な処理を指示し、指示のあった処理に対応する機能ブロックとして動作する第１のサブプロセッサ２００Ａ〜第３のサブプロセッサ２００Ｃが、その処理を実行する。
【００３３】
印刷イメージ処理部１７０は、画像処理管理部１５０の管理のもと、画像処理部１６０において画像処理が施された画像データに基づいて、印刷イメージデータを生成する。印刷イメージデータとは、印刷媒体上に実際に画像を印刷するために用いられるデータであり、例えば、インクジェット形式の印刷装置の場合には、印刷媒体上のドットの配置を表す２値データを意味している。ただし、印刷イメージ処理部１７０は、画像処理部１６０と同様に、自身が実際に印刷イメージデータの生成を実行するのではなく、印刷イメージ処理実行部として動作する第４のサブプロセッサ２００Ｄに対して、印刷イメージデータの生成処理を指示することにより、第４のサブプロセッサ２００Ｄが印刷イメージデータの生成を実行する。
【００３４】
印刷処理部１８０は、印刷イメージ処理部１７０で生成された印刷イメージデータに基づいて、機構制御部３００を介して印刷機構部２０を制御することにより、実際の印刷を実行する。
【００３５】
第１のサブプロセッサ２００Ａは、画像処理部１６０からの指示に従って画像処理動作を制御する機能ブロック（画像処理制御部）として動作する。なお、以下では、第１のサブプロセッサ２００Ａを、「画像処理制御部２００Ａ」とも呼ぶ。
【００３６】
第２のサブプロセッサ２００Ｂは、画像処理制御部２００Ａからの指示に従って、ＪＰＥＧ形式の画像データのデコード処理（「画像展開処理」とも呼ぶ。）を実行する機能ブロック（以下、「デコード処理実行部」あるいは「画像展開部」と呼ぶ。）として動作する。なお、以下では、第２のサブプロセッサ２００Ｂを、「デコード処理実行部２００Ｂ」と呼ぶ場合もある。
【００３７】
デコード処理実行部２００Ｂは、画像処理部１６０から画像処理制御部２００Ａを介してデコード処理が指示された場合に、実際に画像デコード処理を実行する。
【００３８】
第３のサブプロセッサ２００Ｃは、後述するように、画像処理制御部２００Ａからの指示に従って、画像補正処理を実行する機能ブロック（以下、「補正処理実行部」と呼ぶ。）として動作する。なお、以下では、第３のサブプロセッサ２００Ｃを、「補正処理実行部２００Ｃ」とも呼ぶ。
【００３９】
第４のサブプロセッサ２００Ｄは、上述したように、画像処理部１６０において画像処理が施された画像データに基づいて、印刷イメージデータを生成する処理を実行する機能ブロック（印刷イメージ処理実行部）として動作する。なお、以下では、第４のサブプロセッサ２００Ｄを、「印刷イメージ処理実行部２００Ｄ」とも呼ぶ。
【００４０】
ところで、本発明の特徴は、印刷の実行が指示されたときに、画像処理管理部１５０から前処理管理部１３０に対して依頼される前処理依頼に先行して、印刷の実行が指示される前の印刷対象画像が指定された段階で、ＵＩ部１２０から前処理管理部１３０に対して、前処理先行処理依頼が指示されることにより、印刷の実行が指示される前から前処理が開始される点にある。そこで、以下では、この前処理の先行動作に関係する印刷対象画像指定動作および前処理管理動作について説明を加え、さらに、前処理先行動作の具体例について説明する。
【００４１】
Ａ２．印刷対象画像指定動作：
図２は、ＵＩ部１２０によって実行される印刷対象画像指定動作について示す説明図である。この説明図に示す処理は、例えば、ＬＣＤ４０に表示されるメニュー画面から、メモリカード５２に格納されている画像の印刷を実行するための項目を、操作部３０を操作して選択指定することにより、実行される。この処理が開始されると、以下の処理ステップが実行される。
【００４２】
まず、ステップＳ１０において、ＵＩ部１２０は、所定のイニシャライズ処理を実行する。具体的には、例えば、ファイルアクセス部１１０を介して、メモリカード５２に格納されているフォト画像データを検索し、画像ファイル名をアルファベット順に並べ替えたリストを作成し、専用メモリ６０に格納する。以後、メモリカード５２に格納されているフォト画像データは、並べ替えたアルファベットの順番に扱われる。例えば、ファイル名Ａ，Ｂ，Ｃ，Ｄの４つのフォト画像データがメモリカード５２に格納されている場合において、後述するプレビュー表示は、ファイル名Ａ，Ｂ，Ｃ，Ｄの順に表示される。また、仮に、後述する印刷対象画像として指定された順番が、ファイル名Ｄ，Ｃ，Ｂ，Ａの順番であったとしても、ファイル名Ａ，Ｂ，Ｃ，Ｄの順に印刷が実行される。
【００４３】
次に、ステップＳ２０において、ＵＩ部１２０は、アルファベット順の先頭にあるフォト画像データについてプレビュー処理を実行する。例えば、上述したように、ファイル名Ａ，Ｂ，Ｃ，Ｄの４つのフォト画像データがメモリカード５２に格納されている場合には、ファイル名Ａのフォト画像データに対してプレビュー処理が実行される。
【００４４】
図３は、プレビュー処理について示す説明図である。
【００４５】
プレビュー処理を開始すると、まず、ステップＳ２１０において、プレビュー表示のための画像処理の開始を画像処理部１６０に対して指示することにより、画像処理部１６０がプレビュー表示のための画像処理を実行することが可能か否か問い合わせる。
【００４６】
ステップＳ２２０では、ステップＳ１６０における問い合わせに対して、画像処理部１６０から開始可能であることを示す通知（開始可能通知）を受け取るまで待機する。そして、開始可能通知を受け取った場合には（ステップＳ２２０：ＹＥＳ）、ステップＳ２３０の処理を実行する。
【００４７】
ステップＳ２３０では、画像処理部１６０に対してプレビュー表示のための画像処理の実行を要求する。なお、画像処理は、対象となるフォト画像データをあらかじめ定められた複数のブロック（「バンド」と呼ばれる）単位で実行するのが一般的であり、ステップＳ２３０における画像処理の実行要求も、そのバンド単位で行われる。
【００４８】
ここで、画像処理部１６０は、画像処理制御部２００Ａを介してデコード処理実行部２００Ｂに対して、プレビュー表示の対象となるフォト画像データのうち、画像処理の要求のあったバンドについてデコード処理の要求を行う。そして、デコード処理の要求を受け取ったデコード処理実行部２００Ｂは、要求されたバンドのデコード処理を実行する。
【００４９】
ステップＳ２４０では、ステップＳ２３０で要求したバンドの画像処理の終了が、デコード処理実行部２００Ｂから画像処理制御部２００Ａを介して通知されるまで待機する。そして、要求したバンドの画像処理の終了通知を受け取った場合には（ステップＳ２４０：ＹＥＳ）、ステップＳ２５０の処理を実行する。
【００５０】
ステップＳ２５０では、プレビュー表示の対象となるフォト画像データの全バンドについて、プレビュー表示のための画像処理を終了したか否か判断する。そして、まだ終了していないバンドがある場合には（ステップＳ２５０：ＮＯ）、ステップＳ２３０に戻って、まだ実行されていないバンドについてプレビュー表示のための画像処理の実行を繰り返し要求する。一方、全てのバンドについて処理が終了した場合には（ステップＳ２５０：ＹＥＳ）、ステップＳ２６０の処理を実行する。こうして、全てのバンドについて処理が終了するまで、ステップＳ２３０からステップＳ２５０の処理が繰り返される。
【００５１】
ステップＳ２６０では、プレビュー表示のための画像処理の終了を、画像処理部１６０に指示する。
【００５２】
ステップＳ２７０では、ステップＳ２６０における終了指示に対して、画像処理部１６０から終了通知を受け取るまで待機する。そして、終了通知を受け取った場合には（ステップＳ２７０：ＹＥＳ）、プレビュー処理を終了して、図２のステップＳ３０の処理を実行する。
【００５３】
ステップＳ３０では、プレビュー処理により展開処理されたフォト画像データの表すフォト画像を、ＬＣＤ４０にプレビュー表示する。図４は、ＬＣＤ４０にプレビュー表示されるフォト画像の一例を示す説明図である。図４に示すように、ＬＣＤ４０には、印刷対象となるフォト画像（写真）を選択するための選択画面５００Ｍが表示されており、この選択画面５００Ｍ中のプレビュー表示欄５０２に、プレビュー処理されたフォト画像データの表すフォト画像がプレビュー表示される。
【００５４】
そして、ステップＳ８０における判断処理において、処理の終了が判断される（ステップＳ８０：ＹＥＳ）まで、ステップＳ４０、Ｓ５０、Ｓ６０、および、Ｓ７０の各判断処理が繰り返し実行される。
【００５５】
ステップＳ４０では、プレビュー表示されているフォト画像の変更が指示されたか否か判断する。具体的には、図４に示す選択ボタン５０６Ｐ，５０６Ｎ（操作部３０の所定のボタンに対応する。また、選択ボタン５０６Ｐは前側の選択に対応し、選択ボタン５０６Ｎは後側の選択に対応する。）が操作されて、現在表示されているフォト画像よりも前あるいは後のフォト画像の選択がなされることにより、フォト画像の変更が指示されたと判断される。
【００５６】
そして、プレビュー表示されているフォト画像の変更操作がなされた場合には（ステップＳ４０：ＹＥＳ）、ステップＳ２０に戻って選択されたフォト画像のプレビュー処理が実行されて、ステップＳ３０でプレビュー表示される。一方、プレビュー表示されているフォト画像の変更操作がなされない場合には（ステップＳ４０：ＮＯ）、ステップＳ５０における判断処理が実行される。
【００５７】
ステップＳ５０では、プレビュー表示されているフォト画像が印刷対象画像として選択されたか否か判断する。具体的には、図４に示す枚数指定ボタン５０８Ｕ，５０８Ｄ（操作部３０の所定のボタンに対応し、枚数指定ボタン５０８Ｕが枚数増加指定ボタンであり、枚数指定ボタン５０８Ｄが枚数減少指定ボタンである。）のうち、枚数指定ボタン５０８Ｄを操作して、印刷枚数が０枚から１枚に設定されることにより、印刷対象画像として選択されたと判断される。なお、設定された印刷枚数は、印刷枚数表示部５０４に表示される。
【００５８】
そして、プレビュー表示されているフォト画像が印刷対象画像として選択された場合には（ステップＳ５０：ＹＥＳ）、ステップＳ５２の処理が実行される。一方、印刷対象画像として選択されていない場合には（ステップＳ５０：ＮＯ）、ステップＳ６０の判断処理が実行される。
【００５９】
ステップＳ５２では、印刷対象画像として選択されたフォト画像を表すフォト画像データを印刷対象画像データとして指定し、前処理管理部１３０に対して、指定した印刷対象画像データについての前処理の先行処理依頼を行う。そして、ステップＳ４０に戻って、ステップＳ４０〜ステップＳ８０の判断処理を繰り返す。
【００６０】
ステップＳ６０では、プレビュー表示されているフォト画像の印刷対象画像としての選択が取り消されたか否か判断する。具体的には、図４に示す枚数指定ボタン５０８Ｄを操作して印刷枚数が１枚以上の状態から０枚に設定されることにより、印刷対象画像としての選択が取り消されたと判断される。
【００６１】
そして、印刷対象画像としての選択が取り消された場合には（ステップＳ６０：ＹＥＳ）、ステップＳ６２の処理が実行される。一方、印刷対象画像としての選択が取り消されない場合には（ステップＳ６０：ＮＯ）、ステップＳ７０の判断処理が実行される。
【００６２】
ステップＳ６２では、印刷対象画像としての選択が取り消されたフォト画像を表すフォト画像データについて、印刷対象画像データとして依頼していた前処理の先行処理についての終了依頼を行う。そして、ステップＳ４０に戻って、ステップＳ４０〜ステップＳ８０の判断処理を繰り返す。
【００６３】
ステップＳ７０では、印刷実行指示がなされたか否か判断する。具体的には、図４に示す印刷開始ボタン５１０（操作部３０の所定のボタンに対応するボタンである。）が操作されることにより、印刷実行指示がなされたと判断される。
【００６４】
印刷実行指示がなされた場合には（ステップＳ７０：ＹＥＳ）、ステップＳ７２〜ステップＳ７６の処理を実行する。そして、ステップＳ４０に戻って、ステップＳ４０〜ステップＳ８０の判断処理を繰り返す。一方、印刷実行指示がない場合には（ステップＳ７０：ＮＯ）、ステップＳ８０の判断処理が実行される。
【００６５】
ステップＳ７２では、画像処理管理部１５０に対して、指定した印刷対象画像について、印刷のための画像処理の依頼を行う。
【００６６】
そして、ステップＳ７４では、ステップＳ７２における画像処理の依頼に対してその終了通知を受け取り、対応する印刷処理が終了するまで待機する。そして、印刷処理が終了した場合には（ステップＳ７４：ＹＥＳ）、ステップＳ７６の処理を実行する。
【００６７】
ステップＳ７６では、印刷対象画像選択の状態をリセットする。
【００６８】
ステップＳ８０では、以上のようにして、ＵＩ部１２０によって実行される印刷対象画像指定動作を終了するか否か判断する。なお、この処理の終了は、操作部３０中の処理の終了に対応する所定のボタンを操作することにより判断される。
【００６９】
Ａ３．前処理管理動作：
図５および図６は、前処理管理部１３０によって実行される前処理管理動作について示す説明図である。
【００７０】
前処理管理部１３０は、ステップＳ３１０、Ｓ３２０、Ｓ３３０、Ｓ３４０、Ｓ３５０、および、Ｓ３６０の各判断処理を繰り返す。
【００７１】
ステップＳ３１０では、画像処理管理部１５０から、印刷開始後になされる前処理依頼があったか否か判断する。前処理依頼があった場合には（ステップＳ３１０：ＹＥＳ）、ステップＳ３７０〜ステップＳ４１０の処理を実行する。一方、前処理依頼がないと判断された場合には（ステップＳ３１０：ＮＯ）、ステップＳ３２０の判断処理を実行する。なお、ステップＳ３７０〜ステップＳ４１０の処理については、後述する。
【００７２】
ステップＳ３２０では、ＵＩ部１２０から前処理先行処理依頼があったか否か判断する。前処理先行処理依頼が有った場合には（ステップＳ３２０：ＹＥＳ）、ステップＳ３２２の処理を実行する。一方、前処理先行処理依頼がない場合には（ステップＳ３２０：ＮＯ）、ステップＳ３３０の判断処理を実行する。
【００７３】
ステップＳ３２２では、前処理先行処理依頼を専用メモリ６０に設けられた先行処理依頼バッファに保存する。そして、ステップＳ３１０に戻って、ステップＳ３１０〜ステップＳ３５０の判断処理を繰り返す。
【００７４】
ステップＳ３３０では、前処理実行部１４０で前処理の先行処理が実行可能か否か判断する。具体的には、前処理実行部１４０から終了通知を受け取っていない先行処理があれば、前処理実行部１４０は先に依頼している先行処理を実行しているので、実行不可と判断する。
【００７５】
前処理の先行処理が実行可能と判断された場合には（ステップＳ３３０：ＹＥＳ）、ステップＳ３３２の処理を実行する。一方、前処理の先行処理が実行不可と判断された場合には（ステップＳ３３０：ＮＯ）、ステップＳ３４０の判断処理を実行する。
【００７６】
ステップＳ３３２では、前処理実行部１４０に対して前処理先行処理依頼を実行する。図７は、前処理の先行処理の依頼処理について示す説明図である。
【００７７】
ステップＳ３３２ａでは、前処理先行処理依頼が複数有るか否か判断する。具体的には、前処理先行処理依頼を保存している先行処理依頼バッファに複数の前処理先行処理依頼が保存されているか否か調べることにより判断する。
【００７８】
前処理先行処理依頼が１つであった場合には（ステップＳ３３２ａ：ＮＯ）、ステップＳ３３２ｂで、その前処理の先行処理を、前処理実行部１４０に依頼する。一方、前処理先行処理依頼が複数あった場合には（ステップＳ３３２ａ：ＹＥＳ）、先行処理依頼バッファに保存されている複数の未実行の前処理先行処理依頼のうち、イニシャライズ処理（図２のステップＳ１０）で説明した印刷における処理の順番のうち、先頭になる画像に対応する前処理の先行処理を、前処理実行部１４０に依頼する。そして、前処理の先行処理の依頼処理を終了すると、図５のステップＳ３１０に戻って、ステップＳ３１０〜ステップＳ３５０の判断処理を繰り返す。
【００７９】
ステップＳ３４０では、前処理実行部１４０に依頼した前処理の先行処理について終了通知があったか否か判断する。前処理先行処理の終了通知があった場合には（ステップＳ３４０：ＹＥＳ）、ステップＳ３４２およびＳ３４４の処理を実行し、ステップＳ３１０に戻って、ステップＳ３１０〜ステップＳ３５０の判断処理を繰り返す。一方、前処理先行処理の終了通知がない場合には（ステップＳ３４０：ＮＯ）、ステップＳ３５０の判断処理を実行する。
【００８０】
ステップＳ３４２では、前処理先行処理の終了通知を受けた前処理先行処理依頼を先行処理依頼バッファから削除し、ステップＳ３４４では、専用メモリ６０の前処理終了済みリストに保存する。そして、ステップＳ３１０に戻って、ステップＳ３１０〜ステップＳ３５０の判断処理を繰り返す。
【００８１】
ステップＳ３５０では、ＵＩ部１２０から前処理先行処理の終了依頼があったか否か判断する。前処理先行処理の終了依頼がない場合には（ステップＳ３５０：ＮＯ）、ステップＳ３１０に戻って、ステップＳ３１０〜ステップＳ３５０の判断処理を繰り返す。一方、前処理先行処理の終了依頼があった場合には(ステップＳ３５０：ＹＥＳ)、ステップＳ３６０の判断処理を実行する。
【００８２】
ステップＳ３６０では、前処理先行処理の終了依頼があった前処理が、前処理実行部１４０で実行中の先行処理であるか否か判断する。実行中の先行処理の場合には（ステップＳ３６０：ＹＥＳ）、その処理のキャンセル依頼を前処理実行部１４０に対して行う。一方、未実行の前処理先行処理依頼の場合には（ステップＳ３６２：ＮＯ）、その前処理先行処理依頼が保存されている先行処理依頼バッファからその前処理先行処理依頼を削除する。そして、ステップＳ３１０に戻って、ステップＳ３１０〜ステップＳ３５０の判断処理を繰り返す。
【００８３】
以上のようにして、前処理管理部１３０によって、前処理の先行処理が管理される。
【００８４】
ところで、上記したように、ステップＳ３１０において、画像処理管理部１５０から、印刷開始後の前処理依頼があった場合には（ステップＳ３１０：ＹＥＳ）、ステップＳ３７０〜Ｓ４１０の処理が実行される。
【００８５】
ステップＳ３７０では、依頼の有った前処理が、先行処理によって既に実行済みの前処理であるか否か判断する。先行処理によって実行済みの前処理であった場合には（ステップＳ３７０：ＹＥＳ）、ステップＳ３７２の処理を実行する。一方、実行済みの前処理でない場合には（ステップＳ３７０：ＮＯ）、ステップＳ３８０の判断処理を実行する。
【００８６】
ステップＳ３７２では、画像処理管理部１５０に対して直ちに前処理の終了を通知する。そして、ステップＳ３１０に戻って、ステップＳ３１０〜ステップＳ３５０の判断処理を繰り返す。
【００８７】
ステップＳ３８０では、依頼のあった前処理が、先行処理を実行中の前処理に相当するか否か判断する。実行中の前処理に相当する場合には（ステップＳ３８０：ＹＥＳ）、ステップＳ３８２の処理を実行する。一方、実行中の前処理に相当しない場合には（ステップＳ３８０：ＮＯ）、ステップＳ３９０の判断処理を実行する。
【００８８】
ステップＳ３８２では、実行中の前処理の終了を待って、画像処理管理部１５０に前処理の終了を通知する。さらに、ステップＳ３８４では、先行処理依頼を保存しているバッファ（先行処理バッファ）をリセットして、すべての先行処理を中止する。そしてステップＳ３１０に戻って、ステップＳ３１０〜ステップＳ３５０の判断処理を繰り返す。
【００８９】
ステップＳ３９０では、先行処理依頼バッファに未実行の前処理先行処理依頼が保存されているか否か判断する。未実行の前処理先行処理依頼が保存されている場合には（ステップＳ３９０：ＹＥＳ）、ステップＳ３９２の処理を実行後、ステップＳ４００の処理を実行する。一方、未実行の前処理先行処理依頼が保存されていない場合には（ステップＳ３９０：ＮＯ）、ステップＳ４００の処理を実行する。
【００９０】
ステップＳ３９２では、先行処理依頼バッファをリセットして、すべての前処理先行処理を中止する。
【００９１】
ステップＳ４００では、ステップＳ３１０で判断された前処理の依頼に応じて、前処理実行部１４０に対して、その前処理の依頼を行う。
【００９２】
ステップＳ４１０では、前処理実行部１４０から前処理の終了が通知されるまで待機する。
【００９３】
前処理の終了が通知された場合には、画像処理管理部１５０に対して、依頼のあった前処理の終了を通知する。そして、ステップＳ３１０に戻って、ステップＳ３１０〜ステップＳ３５０の判断処理を繰り返す。
【００９４】
Ａ４．前処理の先行処理動作についての具体例：
図８〜図１０は、前処理の先行処理動作についての具体例を示す説明図である。この具体例は、画像Ａおよび画像Ｂの２枚のフォト画像を印刷対象画像として選択し、印刷を開始する場合を例に示している。
【００９５】
ユーザが選択ボタン５０６Ｐ，５０６Ｎを操作することにより画像Ａの表示を指示すると、ＵＩ部１２０は、画像Ａについて、プレビュー表示のための画像処理の開始を画像処理部１６０に指示する。
【００９６】
このとき、画像処理部１６０は、画像処理の開始が可能であれば、ＵＩ部１２０に対して、開始可能応答を通知する。
【００９７】
開始可能応答通知を受けたＵＩ部１２０は、プレビュー処理を開始する。このプレビュー処理では、画像Ａをｎ個（１以上の整数）のバンドに区分し、このバンドごとにプレビュー表示用の画像処理が実行される。
【００９８】
具体的には、まず、ＵＩ部１２０は、画像処理部１６０に対して、画像Ａのバンド１についてプレビュー表示用の画像処理の実行を要求する。画像処理の実行要求を受けた画像処理部１６０は、画像処理制御部２００Ａを介してデコード処理実行部２００Ｂに対してデコード処理の実行を要求する。デコード処理の要求を受けたデコード処理実行部２００Ｂは、画像Ａのバンド１についてデコード処理を実行後、その終了応答を、画像処理制御部２００Ａを介して画像処理部１６０に通知する。デコード処理の終了通知を受けた画像処理部１６０は、ＵＩ部１２０に対して、要求されていた画像Ａのバンド１についての画像処理の終了応答を通知する。
【００９９】
以下、画像Ａのバンド１についてのプレビュー表示用の画像処理と同様の手順で、画像Ａについてのバンドごとのプレビュー表示用の画像処理を、バンドｎの画像処理が終了するまで繰り返す。
【０１００】
そして、ＵＩ部１２０は、画像Ａについての全てのバンドについてプレビュー表示用の画像処理を終了して、画像Ａについてのプレビュー処理を終了すると、画像Ａについてプレビュー表示を実行する。
【０１０１】
プレビュー表示された画像Ａについて、ユーザが枚数指定ボタン５０８Ｕを操作して印刷枚数を１枚以上に設定すると、ＵＩ部１２０は、画像Ａを印刷対象画像として指定し、前処理管理部１３０に対して、画像Ａについて前処理の先行処理を依頼する。
【０１０２】
前処理の先行処理依頼を受けた前処理管理部１３０は、前処理実行部１４０に対して、画像Ａについて前処理を依頼する。
【０１０３】
前処理の依頼を受けた前処理実行部１４０は、前処理を開始する。なお、この前処理として、本例では、デコード処理された画像データをサンプリングしてヒストグラムを作成する処理、作成したヒストグラムに基づいて画像の特徴量、例えば、最大輝度、最小輝度、平均値、中央値等を求める統計処理、顔認識処理、および、赤目解析処理の４つの処理を実行する。
【０１０４】
次に、ユーザが選択ボタン５０６Ｐ，５０６Ｎを操作することにより画像Ｂの表示を指示すると、ＵＩ部１２０は、画像Ｂについて、プレビュー表示のための画像処理の開始を画像処理部１６０に指示し、画像Ａの場合と同様の手順でプレビュー処理を行う。
【０１０５】
ここで、画像Ｂのプレビュー処理の開始前に、開始された画像Ａについての前処理では、上述したように、４つの処理を行う必要がある。これら４つの処理を終了後画像Ｂの表示が指示された場合には問題ないが、これら４つの処理の実行中に画像Ｂの表示が指示された場合には、画像Ｂについてのプレビュー処理と、画像Ａについての前処理と、が１つのメインプロセッサ１００に並存することになる。かかる場合には、ユーザインタフェースに関する処理を優先するのが、一般的である。そこで、本例においても、前処理実行部１４０で実行される前処理は、他の機能ブロックで実行される処理よりも優先順位が低く設定されており、図９において太線で囲まれた矩形枠で示すように、他の機能ブロックが動作していない空き時間に実行される。
【０１０６】
ＵＩ部１２０は、画像Ｂについてのプレビュー処理を終了すると、画像Ｂについてプレビュー表示を実行する。
【０１０７】
そして、プレビュー表示された画像Ｂについて、ユーザが枚数指定ボタン５０８Ｕを操作して印刷枚数を１枚以上に設定すると、ＵＩ部１２０は、画像Ａと同様に、画像Ｂを印刷対象画像として指定し、前処理管理部１３０に対して、画像Ｂについて前処理の先行処理を依頼する。
【０１０８】
ここで、前処理実行部１４０では、まだ、画像Ａについての前処理を実行しており、前処理実行部１４０から前処理管理部１３０に、画像Ａについての前処理の終了応答が通知されていない。このため、前処理管理部１３０は、前処理実行部１４０に対して、画像Ｂについての前処理の依頼をすることができない。そこで、前処理管理部１３０は、画像Ａについての前処理の終了応答が通知されるのを待って、画像Ｂについての前処理を依頼する。
【０１０９】
そして、画像Ｂについての前処理の依頼を受けた前処理実行部１４０は、画像Ｂについての前処理を開始する。
【０１１０】
なお、上記したように、前処理実行部１４０における画像Ｂについての前処理は、メインプロセッサ１００が構成する他の機能ブロックが動作していない空き時間に実行される処理であるが、ここでは、説明を容易にするため、前処理実行部１４０以外の他の機能ブロックは待機中であって非動作状態にあり、前処理実行部１４０が画像Ｂについての前処理を実行することとする。
【０１１１】
そして、前処理実行部１４０は、画像Ｂについての前処理を終了すると、前処理管理部１３０に対して、画像Ｂについての前処理の終了応答を通知する。
【０１１２】
一方、ＵＩ部１２０は、ユーザが印刷開始ボタン５１０を操作して印刷開始を指示すると、画像処理管理部１５０に対して印刷用の画像処理の開始を指示する。
【０１１３】
画像処理管理部１５０は、画像Ａ、画像Ｂの順で印刷用の画像処理を制御する。まず、画像処理管理部１５０は、画像Ａについての前処理を、前処理管理部１３０に対して依頼する。
【０１１４】
このとき、前処理の先行処理によって、画像Ａについての前処理は既に終了して、その結果は共有メモリ７０に保存されているので、前処理管理部１３０は、画像Ａについての前処理依頼を受けると、直ちに、画像処理管理部１５０に対して、その終了応答を通知する。
【０１１５】
画像Ａについての前処理の終了応答通知を受けた画像処理管理部１５０は、画像処理部１６０に対して、画像Ａについての画像処理の要求をバンドごとに繰り返し実行する。
【０１１６】
具体的には、まず、画像処理管理部１５０は、画像処理部１６０に対して、画像Ａのバンド１について印刷用の画像処理の実行を要求する。画像処理の実行要求を受けた画像処理部１６０は、画像処理制御部２００Ａを介してデコード処理実行部２００Ｂに対してデコード処理の実行を要求する。デコード処理の要求を受けたデコード処理実行部２００Ｂは、画像Ａのバンド１についてデコード処理を実行後、その終了応答を、画像処理制御部２００Ａに通知する。デコード処理の終了通知を受けた画像処理制御部２００Ａは、補正処理実行部２００Ｃに対して、画像Ａのバンド１について補正処理を要求する。補正処理の要求を受けた補正処理実行部２００Ｃは、共有メモリ７０に保存されている画像Ａについての前処理で求められた補正パラメータに基づいて、画像Ａのバンド１について補正処理を実行後、その終了応答を画像処理制御部２００Ａに通知する。そして、画像処理制御部２００Ａは、自身が実行する他の処理を終了後、画像処理部１６０に対して、要求されていた画像Ａのバンド１についてのデコード処理の終了応答を通知する。デコード処理の終了通知を受けた画像処理部１６０は、画像処理管理部１５０に対して、要求されていた画像Ａのバンド１についての画像処理の終了応答を通知する。
【０１１７】
以下、画像Ａのバンド１についての印刷用の画像処理と同様の手順で、画像Ａについてのバンドごとの印刷用の画像処理を、バンドｎの画像処理が終了するまで繰り返す。また、画像Ｂについても同様である。
【０１１８】
Ａ５．実施例の効果：
以上説明したように、上記実施例の印刷制御装置１０では、メモリカード５２に格納されたフォト画像データの表すフォト画像をプレビュー表示し、プレビュー表示したフォト画像の印刷枚数を設定すると、そのフォト画像を印刷対象画像として指定し、印刷開始を指示する前の段階で、前処理を開始することができる。これにより、従来のように、印刷開始を指示した後に、印刷対象画像についての前処理を行い、その後、印刷のための画像処理を行っている場合に比べて、印刷のための画像処理が開始されるまでの時間を短縮し、結果として実際の印刷処理が開始されるまでの待ち時間を短縮することが可能となる。
【０１１９】
また、上記実施例の印刷制御装置１０では、ユーザが印刷枚数の設定を０枚に戻すと、ＵＩ部１２０が前処理管理部１３０に対して依頼していた前処理の先行処理の終了を依頼することができる。そして、前処理管理部１３０は、終了依頼のあった前処理の先行処理が実行中の処理であるならば、前処理実行部１４０に対してその処理のキャンセルを依頼し、未実行の処理ならば、先行処理依頼バッファから削除することができる。これにより、無駄な前処理の先行処理を中止することができるので、次の前処理の先行処理の依頼があった場合において、その前処理の先行処理を効率よく実行することが可能となり、待ち時間の短縮を図ることが可能となる。
【０１２０】
また、上記実施例の印刷制御装置１０では、未実行の前処理先行処理依頼が複数ある場合に、その先行処理が実行される順番は、ユーザが選択画面で印刷対象画像として選択することにより発生した前処理先行処理依頼の順番ではなく、あらかじめ設定されている順番となるように設定されている。本例では、イニシャライズ処理において検索された、画像ファイル名のアルファベット順に等しい順番で、プレビュー表示および印刷処理が実行されるように設定されており、先行処理が実行される順番は、この印刷処理が実行される順番となるように設定されている。
【０１２１】
これにより、前処理先行処理依頼の発生順が印刷順と異なる場合においても、効率よく前処理を実行することが可能となり、待ち時の短縮を図ることが可能である。
【０１２２】
例えば、多面割付された画像を印刷する場合においては、図１１に示すように、画像Ａと画像Ｂの先行処理結果が最初に必要となるが、印刷対象画像として選択された画像の順番が画像Ｃ，画像Ｄ，画像Ｂ，画像Ａの順番であった場合に、仮に選択した順番で前処理が実行されるとすると、前処理の先行処理を行う効果を得ることができないことになる。すなわち、このような多面割付の画像を印刷する場合において、特に、本実施例のように、未実行の前処理先行処理依頼に対応する先行処理の実行順を、選択順ではなく、印刷処理が実行される順番とする効果は大きい。
【０１２３】
ただし、必ずしも、実施例のように、前処理の先行処理を実行する順番が、あらかじめ設定されている順番となるように設定する必要はなく、ユーザが選択画面で印刷対象画像として選択指定した順番としてもかまわない。
【０１２４】
また、上記実施例では、実際の画像処理をメインプロセッサ１００ではなく、３つのサブプロセッサ２００Ａ〜２００Ｃにおいて実行させる構成としているので、高速な処理が可能であるとともに、メインプロセッサ１００において、前処理を実行するための空き時間を効果的に設けることが可能であり、処理時間の短縮を図ることが可能となる。
【０１２５】
Ｂ．変形例：
以上、本発明の実施の形態について説明したが、本発明はこのような実施の形態になんら限定されるものではなく、その要旨を逸脱しない範囲において種々の態様にて実施することが可能である。
【０１２６】
Ｂ１．変形例１：
上記実施例では、前処理の先行処理を実行時に、サンプリング処理を実行する場合を例に説明しているが、プレビュー表示を行うためのプレビュー処理の実行時に、サンプリング処理を行ってヒストグラムを作成するようにしてもよい。
【０１２７】
Ｂ２．変形例２：
上記実施例では、プレビュー表示されたフォト画像に対して印刷枚数を設定することにより、そのフォト画像を印刷対象画像として選択指定する場合を例に説明したが、これに限定されるものではない。例えば、印刷対象画像として指定する専用のボタンを用意して、印刷対象画像を指定するようにしてもよい。すなわち、印刷開始ボタンを押して、印刷開始が指示される前に、プレビュー表示されているフォト画像を印刷対象画像として指定することができれば、どのような方法で指定するようにしてもよい。
【０１２８】
また、必ずしも、プレビュー表示されたフォト画像を一枚ずつ印刷対象画像として指定する必要はなく、例えば、サムネイル画像の一覧を表示し、あるいは、ファイル名の一覧を表示し、その一覧を見ながら印刷対象画像を選択指定するようにしてもよく、また、全画像を印刷するボタンを用意して、そのボタンを押すことにより印刷対象画像として全画像を選択指定するようにしてもよい。
【０１２９】
なお、上記場合には、ＪＰＥＧ形式で圧縮されているフォト画像データが展開処理されていないので、実行される前処理の先行処理の前に、先行処理の対象となるフォト画像データについてのデコード処理を実行する必要がある。従って、実施例に比べて、デコード処理を実行するための時間が余分に必要であるので、その分だけ効果は少ないが、印刷開始の指示前に、先行して前処理を開始できるという点で、待ち時間の短縮を図ることが可能である。
【０１３０】
Ｂ３．変形例３：
上記実施例では、先行処理依頼バッファに保存される前処理先行処理依頼の数について、特に限定していないが、先行処理数が多すぎても、処理効率が悪くなるため、あらかじめ設定した所定の数以内に限定するようにしてもよい。例えば、多面割付画像を印刷する場合において、同時に印刷される画像の数、例えば、４，８，１６等の画像数に限定するようにしてもよい。
【図面の簡単な説明】
【０１３１】
【図１】本発明の一実施例としての印刷制御装置の構成例を示す機能ブロック図である。
【図２】ＵＩ部１２０によって実行される印刷対象画像指定動作について示す説明図である。
【図３】プレビュー処理について示す説明図である。
【図４】ＬＣＤ４０にプレビュー表示されるフォト画像の一例を示す説明図である。
【図５】前処理管理部１３０によって実行される前処理管理動作について示す説明図である。
【図６】前処理管理部１３０によって実行される前処理管理動作について示す説明図である。
【図７】前処理の先行処理の依頼処理について示す説明図である。
【図８】前処理の先行処理動作についての具体例を示す説明図である。
【図９】前処理の先行処理動作についての具体例を示す説明図である。
【図１０】前処理の先行処理動作についての具体例を示す説明図である。
【図１１】多面割付画像について示す説明図である。
【符号の説明】
【０１３２】
１０…印刷制御装置
２０…印刷機構部
３０…操作部
４０…液晶パネル（ＬＣＤ）
５０…カードスロット
５２…メモリカード
６０…専用メモリ
７０…共有メモリ
１００…メインプロセッサ（印刷制御部）
１１０…ファイルアクセス部
１２０…ユーザインタフェース部（ＵＩ部）
１３０…前処理管理部
１４０…前処理実行部
１５０…画像処理管理部
１６０…画像処理部
１７０…印刷イメージ処理部
１８０…印刷処理部
２００Ａ…第１のサブプロセッサ（画像処理制御部）
２００Ｂ…第２のサブプロセッサ（デコード処理実行部）
２００Ｃ…第３のサブプロセッサ（補正処理実行部）
２００Ｄ…第４のサブプロセッサ（印刷イメージ処理実行部）
３００…機構制御部
５００Ｍ…選択画面
５０２…プレビュー表示欄
５０４…印刷枚数表示部
５０６Ｎ…選択ボタン
５０６Ｐ…選択ボタン
５０８Ｄ…枚数指定ボタン
５０８Ｕ…枚数指定ボタン
５１０…印刷開始ボタン
４００…入力Ｉ／Ｆ部
６００…カードＩ／Ｆ部
７００…専用メモリコントローラ
８００…共有メモリコントローラ
【図１】
2007194980.tif 000003
【図２】
2007194980.tif 000004
【図３】
2007194980.tif 000005
【図４】
2007194980.tif 000006
【図５】
2007194980.tif 000007
【図６】
2007194980.tif 000008
【図７】
2007194980.tif 000009
【図８】
2007194980.tif 000010
【図９】
2007194980.tif 000011
【図１０】
2007194980.tif 000012
【図１１】
2007194980.tif 000013