(57)【要約】【課題】圧縮データの解凍処理の負担及び処理時間をより低減する。【解決手段】プリンター２０は、ＪＰＥＧデータに対してエントロピー復号及びランレングス復号処理を実行した中間データ（例えばＤＣＴ係数）を生成し、生成した中間データをキャッシュであるＳＲＡＭに記憶し、この記憶した中間データを用いて第１処理部３３が第１の間引率（例えば１／１）で第１画像データを生成する一方、記憶された中間データを用いて第２処理部３４が第２の間引率（例えば１／８）で第２画像データを生成する。このように、中間データを記憶して複数の画像データの生成に利用するから、復号処理の重複実行をより抑制可能である。この画像生成部３２は、ハードウエア処理による第１処理部３３及びソフトウエア処理による第２処理部３４により、第１画像データの生成と第２画像データの生成とを並行して行うものとしてもよい。【選択図】図１
2013115535.tif 000002
【特許請求の範囲】
【請求項１】
複数のプレーンを有しＤＣＴ演算を伴う圧縮方式の圧縮データを解凍して画像データを生成する画像処理装置であって、
前記圧縮データに対してエントロピー復号及びランレングス復号処理を実行した中間データを生成する復号処理手段と、
前記生成した中間データを記憶する記憶手段と、
前記記憶した中間データを用いて第１の間引率で第１画像データを生成する一方、前記記憶された中間データを用いて前記第１の間引率と異なる第２の間引率で第２画像データを生成する画像生成手段と、
を備えた画像処理装置。
【請求項２】
前記画像生成手段は、前記第１画像データの生成と前記第２画像データの生成とを並行して行う、請求項１に記載の画像処理装置。
【請求項３】
前記画像生成手段は、ハードウエア処理により中間データから画像データを生成する第１処理部と、ソフトウエア処理により中間データから画像データを生成する第２処理部とを有し、前記第１処理部は、前記第２の間引率より間引きを行わない前記第１の間引率の第１画像データを生成する、請求項２に記載の画像処理装置。
【請求項４】
前記画像生成手段は、印刷画像を生成し、印刷画像に複数のサイズの同一画像が含まれるときに、前記第１画像データと前記第２画像データとを前記印刷画像として生成する、請求項１〜３のいずれか１項に記載の画像処理装置。
【請求項５】
前記画像生成手段は、前記画像データに施される補正内容を決定する際のサンプリングに利用されるサンプリング画像が複数のサイズであるときに、前記第１画像データと前記第２画像データとを生成する、請求項１〜４のいずれか１項に記載の画像処理装置。
【請求項６】
前記画像生成手段は、指定されているサイズ以上の大きさの画像となる前記第１及び第２の間引率で第１及び第２画像データを生成する、請求項１〜５のいずれか１項に記載の画像処理装置。
【請求項７】
前記圧縮データは、ＪＰＥＧデータ、ＭＰＥＧデータのうちいずれか１以上である、請求項１〜６のいずれか１項に記載の画像処理装置。
【請求項８】
複数のプレーンを有しＤＣＴ演算を伴う圧縮方式の圧縮データを解凍して画像データを生成する画像処理方法であって、
（ａ）前記圧縮データに対してエントロピー復号及びランレングス復号処理を実行した中間データを生成するステップと、
（ｂ）前記生成した中間データを記憶するステップと、
（ｃ）前記記憶された中間データを用いて第１の間引率で第１画像データを生成する一方、前記記憶された中間データを用いて第１の間引率と異なる第２の間引率で第２画像データを生成するステップと、
を含む画像処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置及び画像処理方法に関する。
【背景技術】
【０００２】
従来、画像処理装置としては、サンプリング対象のＪＰＥＧ画像に対しハフマン復号化、ランレングスハフマン復号化及び逆量子化を行い、得られた８×８のブロックの各々に対して全６４画素のうち画素値取得対象の画素を選択し、選択した画素のみについて逆ＤＣＴ演算を行うことにより、圧縮画像をサンプリングして表示するものが提案されている（例えば、特許文献１参照）。この装置では、選択した画素のみについて逆ＤＣＴ演算を行うことから、圧縮画像をサンプリングして表示するための処理負担を軽減してその処理時間長を短縮することができる。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００２−２７１７９４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、上述の装置では、選択した画素のみについて逆ＤＣＴ演算を行うことにより、処理負担を軽減してその処理時間長を短縮することができるが、処理負担の軽減はまだ充分ではなく、更なる処理負担の軽減及びその処理時間の短縮が望まれていた。
【０００５】
本発明は、このような課題に鑑みなされたものであり、圧縮データの解凍処理の負担及び処理時間をより低減することができる画像処理装置及び画像処理方法を提供することを主目的とする。
【課題を解決するための手段】
【０００６】
本発明は、上述の主目的を達成するために以下の手段を採った。
【０００７】
本発明の画像処理装置は、
複数のプレーンを有しＤＣＴ演算を伴う圧縮方式の圧縮データを解凍して画像データを生成する画像処理装置であって、
前記圧縮データに対してエントロピー復号及びランレングス復号処理を実行した中間データを生成する復号処理手段と、
前記生成した中間データを記憶する記憶手段と、
前記記憶した中間データを用いて第１の間引率で第１画像データを生成する一方、前記記憶された中間データを用いて前記第１の間引率と異なる第２の間引率で第２画像データを生成する画像生成手段と、を備えたものである。
【０００８】
この画像処理装置では、ＤＣＴ演算を伴う圧縮方式の圧縮データに対してエントロピー復号及びランレングス復号処理を実行した中間データを生成し、生成した中間データを記憶し、この記憶した中間データを用いて第１の間引率で第１画像データを生成する一方、記憶された中間データを用いて第１の間引率と異なる第２の間引率で第２画像データを生成する。このように、中間データを記憶して複数の画像データの生成に利用するから、復号処理の重複実行をより抑制可能である。したがって、圧縮データの解凍処理の負担及び処理時間をより低減することができる。ここで、中間データとは、例えば、量子化前のＤＣＴ係数としてもよいし、量子化後の量子化データとしてもよい。なお、「第１及び第２画像データを生成する」ものであるが、２以上の画像データを生成するものであればよく、第３の間引率で第３画像データを生成してもよいし、第ｍの間引率（ｍは２以上の整数）で第ｍ画像データを生成してもよい。
【０００９】
本発明の画像処理装置において、前記画像生成手段は、前記第１画像データの生成と前記第２画像データの生成とを並行して行うものとしてもよい。こうすれば、圧縮データの解凍処理の処理時間を更に低減することができる。このとき、前記画像生成手段は、ハードウエア処理により中間データから画像データを生成する第１処理部と、ソフトウエア処理により中間データから画像データを生成する第２処理部とを有し、前記第１処理部は、前記第２の間引率より間引きを行わない前記第１の間引率の第１画像データを生成するものとしてもよい。こうすれば、ハードウエア処理とソフトウエア処理に分担させることによって、より効率よく圧縮データの解凍処理の負担及び処理時間を低減することができる。
【００１０】
本発明の画像処理装置において、前記画像生成手段は、印刷画像を生成し、印刷画像に複数のサイズの同一画像が含まれるときに、前記第１画像データと前記第２画像データとを前記印刷画像として生成するものとしてもよい。こうすれば、複数サイズの画像を印刷するときに、圧縮データの解凍処理の負担及び処理時間を低減することができる。
【００１１】
本発明の画像処理装置において、前記画像生成手段は、前記画像データに施される補正内容を決定する際のサンプリングに利用されるサンプリング画像が複数のサイズであるときに、前記第１画像データと前記第２画像データとを生成するものとしてもよい。こうすれば、サンプリング画像の生成時に、圧縮データの解凍処理の負担及び処理時間を低減することができる。
【００１２】
本発明の画像処理装置において、前記画像生成手段は、指定されているサイズ以上の大きさの画像となる前記第１及び第２の間引率で第１及び第２画像データを生成するものとしてもよい。こうすれば、画質の低下を抑制しつつ、圧縮データの解凍処理の負担及び処理時間をより低減することができる。
【００１３】
前記圧縮データは、ＪＰＥＧデータ、ＭＰＥＧデータのうちいずれか１以上であるものとしてもよい。
【００１４】
本発明の画像処理方法は、
複数のプレーンを有しＤＣＴ演算を伴う圧縮方式の圧縮データを解凍して画像データを生成する画像処理方法であって、
（ａ）前記圧縮データに対してエントロピー復号及びランレングス復号処理を実行した中間データを生成するステップと、
（ｂ）前記生成した中間データを記憶するステップと、
（ｃ）前記記憶された中間データを用いて第１の間引率で第１画像データを生成する一方、前記記憶された中間データを用いて第１の間引率と異なる第２の間引率で第２画像データを生成するステップと、を含むものである。
【００１５】
この画像処理方法は、上述した画像処理装置と同様に、中間データを記憶して複数の画像データの生成に利用するから、復号処理の重複実行をより抑制可能であるため、圧縮データの解凍処理の負担及び処理時間をより低減することができる。なお、この画像処理方法において、上述した画像処理装置の種々の態様を採用してもよいし、また、上述した画像処理装置の各機能を実現するようなステップを追加してもよい。
【００１６】
本発明のプログラムは、上述した画像処理方法の各ステップを１以上のコンピューターに実現させるものである。このプログラムは、コンピューターが読み取り可能な記録媒体（例えばハードディスク、ＲＯＭ、ＦＤ、ＣＤ、ＤＶＤなど）に記録されていてもよいし、伝送媒体（インターネットやＬＡＮなどの通信網）を介してあるコンピューターから別のコンピューターへ配信されてもよいし、その他どのような形で授受されてもよい。このプログラムを１つのコンピューターに実行させるか又は複数のコンピューターに各ステップを分担して実行させれば、上述した画像処理方法の各ステップが実行されるため、この画像処理方法と同様の作用効果が得られる。
【図面の簡単な説明】
【００１７】
【図１】プリンターシステム１０の構成の概略を示す構成図。
【図２】コントローラー２１の機能ブロックの説明図。
【図３】印刷処理ルーチンの一例を示すフローチャート。
【図４】間引解凍処理ルーチンの一例を示すフローチャート。
【図５】間引解凍処理の概念図。
【図６】画像データ６１をレイアウトしたレイアウト画像６０の説明図。
【図７】レイアウト印刷処理ルーチンの一例を示すフローチャート。
【発明を実施するための形態】
【００１８】
次に、本発明の実施の形態の一例を図面を用いて説明する。図１は本実施形態であるプリンターシステム１０の構成の概略を示す構成図である。本実施形態のプリンターシステム１０は、本発明の画像処理装置としてのプリンター２０と、プリンター２０に接続され入力装置４７及びディスプレイ４８を備え印刷指示などを行うパソコン（ＰＣ）４０とを備えている。プリンター２０は、プリンター２０の全体をコントロールするコントローラー２１と、ガラス面に載置された読取原稿を読み取る読取機構２５と、着色剤を用い印刷媒体に画像を形成する印刷機構２６とを備えている。また、プリンター２０は、外部機器との情報のやりとりを行うインターフェイス（Ｉ／Ｆ）２７と、各種情報の表示やユーザーからの入力を受け付ける操作パネル２８と、メモリーカードとのデータの入出力を司るメモリーカードリーダー３０とを備えている。このプリンター２０は、読取機構２５と印刷機構２６とを備え、プリンター機能、スキャナー機能及びコピー機能を有するマルチファンクションプリンターとして構成されている。このプリンター２０では、コントローラー２１や読取機構２５、印刷機構２６、Ｉ／Ｆ２７、操作パネル２８及びメモリーカードリーダー３０は、バス２９によって電気的に接続されている。
【００１９】
コントローラー２１は、ＣＰＵ２２を中心とするマイクロプロセッサーとして構成されており、各種処理プログラムを記憶しデータを書き換え可能なフラッシュメモリー２３と、一時的にデータを記憶したりデータを保存したりするＲＡＭ２４と、を備えている。このコントローラー２１は、画像読取処理を実行するよう読取機構２５を制御すると共に、印刷処理を実行するよう印刷機構２６を制御する。
【００２０】
また、このコントローラー２１は、機能ブロックとして、復号処理部３１、画像生成部３２、サンプリング処理部３５、補正実行処理部３６及び印刷処理部３８を備えている。図２は、コントローラー２１の機能ブロックの説明図である。復号処理部３１は、ＪＰＥＧデータなど、ＤＣＴ演算を伴う圧縮方式の圧縮データに対してエントロピー復号グループ復号及びランレングス復号処理を実行した中間データ５０を生成する機能を有している。この中間データ５０は、Ｎ×Ｎ（例えばＮ＝８など）の成分ブロックにより構成されている。この中間データ５０は、上記復号処理後且つ逆量子化前のＤＣＴ係数データとしてもよいし、逆量子化後のＤＣＴ係数データとしてもよい。ここでは、中間データ５０は、逆量子化前のＤＣＴ係数データとする。この復号処理部３１は、ＪＰＥＧデータやこのＪＰＥＧデータの画像に施す補正情報、印刷指令などを受け、復号した中間データ５０をＣＰＵ２２のキャッシュであるＳＲＡＭ２２ａに記憶させる処理を行う。画像生成部３２は、１以上の間引率を用いて画素を間引きして逆量子化及び逆ＤＣＴ演算を行い画像データを生成する機能を有している。この間引率とは、間引き前の画素数に対する間引き後の縦横の画素数の比率をいうものとし、間引率１は間引きなしであり、間引率１／２，１／４，１／８となると画像データの画素数が小さくなるように間引きを行うものとする。画像生成部３２は、例えば、ＳＲＡＭ２２ａに記憶された中間データ５０（ＤＣＴ係数データ）を用いて第１の間引率で第１画像データ２４ａを生成する一方、第１の間引率と異なる第２の間引率で第２画像データ２４ｂを生成する処理を、並行して行う。この画像生成部３２は、ハードウエア処理（例えば所定の回路構成）により中間データから画像データを生成する第１処理部３３と、ソフトウエア処理（例えばＣＰＵによるソフトウエアの実行）により中間データから画像データを生成する第２処理部３４とを有している。この第１処理部３３は、高速処理可能であり、第２処理部３４よりも間引きを行わない画像データを生成する。第２処理部３４は、更に１／２解凍部３４ａ、１／４解凍部３４ｂ及び１／８解凍部３４ｃを備えている。この画像生成部３２では、第１処理部３３が１／１間引による画像生成を行い、第２処理部３４の１／２解凍部３４ａが１／２間引による画像生成を行い、１／４解凍部３４ｂが１／４間引による画像生成を行い、１／８解凍部３４ｃが１／８間引による画像生成を行い、生成した画像データ（サンプリング画像）をＲＡＭ２４の所定領域に記憶させる処理を行う。サンプリング処理部３５は、解凍されたサンプリング画像を解析することにより、画像データに施す補正処理の補正値などを決定する処理を実行する。このサンプリング処理部３５は、決定した補正値を補正実行処理部３６へ出力する処理を行う。補正実行処理部３６は、サンプリング処理部３５により決定された補正値を用いて補正処理を画像データに施す処理を実行する。印刷処理部３８は、生成した画像データから着色剤（インク）の吐出量を含む印刷データへ変換し、印刷ヘッドの１往動（印刷バンド）に応じた印刷データを印刷機構２６の印刷ヘッドへ出力する機能を有する。
【００２１】
読取機構２５は、フラットベッド式であり、原稿台に載置された原稿を画像データ（圧縮データ）として読み取る読取センサーと、原稿を読み取る際に読取センサーを移動させる移動機構とを備えた周知のイメージスキャナーとして構成されている。読取センサーは、原稿に向かって発光したあとの反射光をレッド（Ｒ）、グリーン（Ｇ）、ブルー（Ｂ）の各色に分解してスキャンデータとするセンサーである。
【００２２】
印刷機構２６は、印刷媒体へインクを吐出することにより印刷を行う印刷ヘッドを備えた周知のインクジェット方式のカラープリンター機構として構成されている。印刷ヘッドは、圧電素子に電圧をかけることによりこの圧電素子を変形させてインクを加圧する方式によりノズルから各色のインクを吐出する。なお、インクへ圧力をかける機構は、ヒーターの熱による気泡の発生によるものとしてもよい。
【００２３】
操作パネル２８は、表示部２８ａと操作部２８ｂとを備えている。表示部２８ａには、メニューの選択や設定を行う各種操作画面などが表示される。また、操作部２８ｂは、電源をオンオフするための電源キーやカーソルを上下左右に移動させるカーソルキー、入力をキャンセルするキャンセルキー，選択内容を決定する決定キーなどがあり、コントローラー２１へユーザーの指示を入力できるようになっている。
【００２４】
メモリーカードリーダー３０は、スロットに挿入されたメモリーカードとの間でデータの入出力を行う。このメモリーカードリーダー３０は、メモリーカードが装着されているとき、メモリーカードに保存されているファイルを読み出してコントローラー２１に送信したりコントローラー２１からの命令を入力しこの命令に基づいてメモリーカードにデータを書き込んだりする。
【００２５】
次に、こうして構成された本実施形態のプリンター２０の動作、特に、ＪＰＥＧデータを解凍し、解凍した画像に所定の補正を行い印刷処理を行う際の動作について説明する。ここでは、説明の便宜のため、主として、メモリーカードに記憶されたＪＰＥＧデータを読み込み、顔認識用と赤目補正用の画像データを画素の間引処理を行って生成し、補正処理して印刷する処理について具体的に説明する。まずユーザーは、メモリーカードリーダー３０にメモリーカードを装着し、図示しない印刷選択画面で印刷を行うＪＰＥＧデータを選択する。この印刷選択画面では、操作部２８ｂの操作により、印刷画像にどのような補正処理を施すかについても設定することができるものとする。ユーザーは、操作部２８ｂの各種キーを操作して印刷したい画像を選択し、図示しない印刷実行キーを押下する。すると、ＣＰＵ２２は、フラッシュメモリー２３に記憶された印刷処理ルーチンを実行する。図３は、コントローラー２１のＣＰＵ２２により実行される印刷処理ルーチンの一例を示すフローチャートである。このルーチンでは、ＣＰＵ２２は、復号処理部３１、画像生成部３２、サンプリング処理部３５、補正実行処理部３６及び印刷処理部３８を利用してＪＰＥＧデータの解凍処理及び印刷用画像の生成処理を行う。
【００２６】
図３の印刷処理ルーチンが開始されると、ＣＰＵ２２は、まず、画像データに合わせた補正内容を取得する補正情報取得処理を実行し（ステップＳ１００）、ＪＰＥＧデータ（圧縮データ）を復号してＤＣＴ係数を得る係数復号処理を実行し（ステップＳ１１０）、復号した中間データ５０（ＤＣＴ係数データ）をＳＲＡＭ２２ａに保存する（ステップＳ１２０）。補正情報取得処理では、ＣＰＵ２２は、ＪＰＥＧデータのタグに格納された情報や、操作パネル２８での入力内容から補正情報を取得する。ここでは、シーン補正の有無、画像シーンの種別（風景、夜景、人物など）、顔認識や赤目補正を補正処理に関連して実行するか否かの情報などを取得する。また、係数復号処理では、ＪＰＥＧデータをエントロピー復号（ハフマン復号）し、グループ復号し、ランレングス復号する。これらの復号処理は、非常に処理時間のかかる高負荷処理である。そして、この結果、Ｎ×Ｎ（例えばＮ＝８）の量子化前のＤＣＴ係数の周波数ブロックが得られる。この状態で、Ｎ×Ｎのブロックから所望の値だけを用いる、いわゆる間引処理が可能な状態になる。このような量子化前のＤＣＴ係数データを利用可能に中間データ５０としてＳＲＡＭ２２ａに保存する（図２参照）。
【００２７】
次に、ＣＰＵ２２は、補正値の決定に関する間引解凍処理と赤目補正に関する処理とを並行して実行する（ステップＳ１３０〜Ｓ１５０，Ｓ１６０〜Ｓ１８０）。ここでは、１／１解凍処理としての赤目検出に関する画像生成処理を第１処理部３３で行い、間引解凍に関する画像生成処理を第２処理部３４で並行して行うものとする。まず、ステップＳ１３０の間引解凍処理について説明する。図４は、間引解凍処理ルーチンの一例を示すフローチャートである。この間引解凍処理は、印刷画像に対する補正内容の補正値を決定するサンプリング画像を生成する処理である。このルーチンを実行すると、ＣＰＵ２２は、要求サイズがＪＰＥＧデータを解凍したときの画像サイズの１／８を超えるか否かを判定し（ステップＳ４００）、要求サイズが画像サイズ／８を超えないとき、即ち１／８間引を実行しても要求サイズよりも画像サイズが大きいときには、１／８解凍部３４ｃにより１／８間引解凍処理を行い画像データを生成してこのルーチンを終了する。
【００２８】
ここで、間引復号について説明する。図５は、間引解凍処理の概念図である。図５に示すように、８×８のＤＣＴ係数の周波数ブロックを間引率１／２で間引きする場合は、例えば、８×８ブロックの全６４個のうち、縦横それぞれ１／２を乗じた４×４個、計１６個が分散的に残るように、以降の処理を行う周波数成分を選択する。また、間引率１／４で間引きする場合は、例えば、８×８ブロックの全６４個のうち、縦横それぞれ１／４を乗じた２×２個、計４個が分散的に残るように、以降の処理を行う周波数成分を選択する。また、間引率１／８で間引きする場合は、例えば、８×８ブロックの全６４個のうち、縦横それぞれ１／８を乗じた１個が残るように、以降の処理を行う周波数成分を選択する。そして、選択したＤＣＴ係数に対して、ＤＣＴ係数の周波数ブロックに対してＤＣＴ係数の逆量子化を行い、逆離散コサイン変換（ＩＤＣＴ）を行い、最小符号化ユニット（ＭＣＵ）処理及び色変換を行い画素データとするのである。なお、ステップＳ４１０では、間引率１／８で間引き復号する。この処理の中で、逆ＤＣＴ演算が最も処理負担が大きく、処理に時間を要する。この逆ＤＣＴ演算などは、特開２００２−２７１７９４号公報などに詳しいのでその説明を省略する。また、ＭＣＵ処理及び色変換は、例えば、処理で得られた画素値を補正するものとしてもよい。なお、ＤＣＴ係数の逆量子化、逆離散コサイン変換は、必要に応じてＹ，Ｃｂ，Ｃｒの各プレーン毎に行うものとする。このように、処理負担の大きい逆ＤＣＴ演算の回数を間引率に応じて低減することができ、処理負担及び処理時間の低減をより図ることができる。なお、各ＤＣＴ係数を処理する際には、図５上段に示すように、ジグザグスキャンするものとしてもよい。こうすれば、より処理の高速化を図ることができる。
【００２９】
一方、ステップＳ４００で、要求サイズが画像サイズ／８を超えるとき、即ち１／８間引を実行すると要求サイズよりも画像サイズが小さくなるときには、ＣＰＵ２２は、要求サイズが画像サイズの１／４を超えるか否かを判定する（ステップＳ４２０）。要求サイズが画像サイズ／４を超えないとき、即ち１／４間引を実行しても要求サイズよりも画像サイズが大きいときには、図５に示したように、１／４解凍部３４ｂにより１／４間引解凍処理を行い画像データを生成し（ステップＳ４３０）、このルーチンを終了する。一方、ステップＳ４２０で、要求サイズが画像サイズ／４を超えるとき、即ち１／４間引を実行すると要求サイズよりも画像サイズが小さくなるときには、ＣＰＵ２２は、要求サイズが画像サイズの１／２を超えるか否かを判定する（ステップＳ４４０）。要求サイズが画像サイズ／２を超えないとき、即ち１／２間引を実行しても要求サイズよりも画像サイズが大きいときには、図５に示したように、１／２解凍部３４ａにより１／２間引解凍処理を行い画像データを生成し（ステップＳ４５０）、このルーチンを終了する。一方、ステップＳ４４０で、要求サイズが画像サイズ／２を超えるとき、即ち１／２間引を実行すると要求サイズよりも画像サイズが小さくなるときには、ＣＰＵ２２は、間引処理を実行せずに第１処理部３３により画像データを生成し（ステップＳ４６０）、このルーチンを終了する。このように、指定されている要求サイズよりも大きなサイズの画像となるように間引処理を行い、補正実行用のサンプリング画像を生成するのである。
【００３０】
さて、図３の印刷処理ルーチンの説明に戻る。ステップＳ１３０で、間引解凍処理を実行すると、ＣＰＵ２２は、画像データを所定の顔認識用の画像サイズに縮小保存し（ステップＳ１４０）、上記生成したサンプリング画像を用い、サンプリング処理部３５を利用して、Ｙ，Ｒ，Ｇ，Ｂ，Ｈ，Ｌ，Ｓの各ヒストグラム計算を行い、各補正内容の補正値などを決定する（ステップＳ１５０）。ここでは、補正内容として、シャープネス処理、色補正処理、ノイズ除去処理のうち１以上が設定されている。
【００３１】
一方、ステップＳ１２０で中間データ５０（ＤＣＴ係数データ）を保存したあと、ＣＰＵ２２は、赤目補正ありか否かを取得した補正情報に基づいて判定し（ステップＳ１６０）、赤目補正ありであるときには、第１処理部３３により１／１解凍処理を行う（ステップＳ１７０）。１／１解凍処理では、処理を行うＤＣＴ係数の間引きを行わず、すべてのＤＣＴ係数に対して、ＤＣＴ係数の周波数ブロックに対してＤＣＴ係数の逆量子化を行い、ＩＤＣＴを行い、ＭＣＵ処理及び色変換を行い画像データを生成する。赤目補正処理では、間引きを行わずに縮小しない画像を生成することにより、処理精度を確保するのである。ここでは、ステップＳ１３０の間引解凍処理とステップＳ１７０の１／１解凍処理とを、同じ中間データ５０（ＤＣＴ係数データ）を用いて並行して行うのである。ここでは、ハードウエア処理により１／１解凍処理を実行するから、処理負担の大きい１／１解凍処理を比較的高速に実行可能であり、間引解凍処理において１／１解凍処理を行わない場合には、１／１解凍処理と間引解凍処理とを並行して実行することができる。ステップＳ１７０のあと、ＣＰＵ２２は、周知の赤目検出処理を実行する（ステップＳ１８０）。ここでは、目の形状を判定したり、目の位置、口、鼻に該当する領域を画像の色の濃淡に基づいて判定し、目が赤色になっている領域を検出するものとした。ここでは、赤目領域が検出されると、その座標を保持するものとした。このように、画像データに施される補正内容を決定する際のサンプリングに利用されるサンプリング画像が複数のサイズであるときに、複数の画像データを生成するのである。
【００３２】
ステップＳ１５０、Ｓ１８０、及びステップＳ１６０で赤目補正がないときなどの処理が全て終了すると、ＣＰＵ２２は、補正内容に顔認識があるか否かを判定し（ステップＳ１９０）、補正内容に顔認識があるときには、ステップＳ１４０で縮小保存した画像データを用い、周知の顔認識処理を実行する（ステップＳ２００）。顔認識処理では、目の領域及びその近傍に口に該当する領域があるか否かなどに基づいて、顔が存在する領域を特定する処理を実行する。なお、赤目検出処理を行った場合は、その結果を利用してもよい。続いて、画像に顔領域があるか否かを判定し（ステップＳ２１０）、顔領域がないとき、又は、ステップＳ１９０で補正内容に顔認識がないときには、ぼけ度などを考慮し、画像全体の最適化を図るエンハンスパラメータ計算を実行し（ステップＳ２２０）、そのＪＰＥＧデータのエンハンスパラメータを決定する。一方、ステップＳ２１０で顔領域があるときには、ぼけ度などを考慮し、顔色の最適化を図るエンハンスパラメータ計算を実行し（ステップＳ２３０）、そのＪＰＥＧデータのエンハンスパラメータを決定する。
【００３３】
ステップＳ２２０、Ｓ２３０のあと、ＣＰＵ２２は、印刷に用いる画像データ（印刷用画像データ）に対して、必要に応じて赤目補正処理を実行する（ステップＳ２４０）。ここで、印刷用画像データは、指定された印刷サイズよりも大きい、解凍後の画像データを用いるものとする。なお、間引処理した画像データしかなく、印刷サイズよりも大きい画像データがない場合は、ステップＳ１７０と同様の１／１解凍処理を実行して印刷用画像データを得るものとしてもよい。また、赤目補正処理では、ステップＳ１８０で検出した赤目領域を無彩色（例えば黒）へ変換する処理を実行する。なお、画像に赤目領域がない場合は、この赤目補正処理をスキップする。続いて、必要に応じてシャープネス処理を実行し（ステップＳ２５０）、必要に応じて色補正処理を実行し（ステップＳ２６０）、必要に応じてノイズ除去処理を実行する（ステップＳ２７０）。これらの補正処理は、ステップＳ２２０，Ｓ２３０で設定されたエンハンスパラメータを用い、補正実行処理部３６が実行するものとする。
【００３４】
次に、指定されている印刷サイズに基づいて印刷画像のリサイズ処理を実行し（ステップＳ２８０）、印刷画像を用いて印刷処理を実行する（ステップＳ２９０）。ここでは、印刷ヘッドを１往復動させる際に必要な印刷データを印刷用画像データから生成し、この印刷データを印刷機構２６へ出力し、印刷機構２６により印刷処理を実行するものとする。この印刷データは、例えば、印刷用画像データのＹ，Ｃｂ，Ｃｒの各値からＣ，Ｍ，Ｙ，Ｋの各値へ、ルックアップテーブルなどを用いて変換し、ハーフトーン処理を行い、各色のインク吐出量に変換して生成するものとしてもよい。そして、印刷が終了したか否かを判定し（ステップＳ３００）、印刷が終了していないときにはステップＳ１００以降の処理を実行し、印刷が終了したときにはこのルーチンを終了する。このように、サンプリング画像を生成する際に、中間データ５０を複数回に亘り利用し、係数復号処理の重複実行をより抑制し、効率よく画像解凍処理を行うのである。
【００３５】
次に、印刷画像に複数のサイズの同一画像が含まれるレイアウト印刷を実行する場合について説明する。図６は、画像データ６１をレイアウトしたレイアウト画像６０の説明図である。また、図７は、レイアウト印刷処理ルーチンの一例を示すフローチャートである。ここでは、画像データ６１を複数サイズ、複数個配列したレイアウト画像６０を印刷する処理について説明する。以下説明するレイアウト印刷処理においても、図３の印刷処理ルーチンと同様に、印刷画像に対する補正処理を行うものとするが、説明の便宜のため、複数のサイズの画像を印刷する点について説明し、この補正処理については詳細な説明を省略する。まず、ユーザーは、操作部２８ｂの各種キーを操作して印刷したい画像を選択すると共に、画像を配置するレイアウトを選択し、図示しない印刷実行キーを押下する。すると、ＣＰＵ２２は、フラッシュメモリー２３に記憶されたレイアウト印刷処理ルーチンを実行する。このルーチンでは、ＣＰＵ２２は、復号処理部３１、画像生成部３２、サンプリング処理部３５、補正実行処理部３６及び印刷処理部３８を利用してＪＰＥＧデータの解凍処理及び印刷用画像の生成処理を行う。
【００３６】
このレイアウト印刷処理ルーチンを実行すると、まず、ＣＰＵ２２は、選択されたレイアウト情報を取得し（ステップＳ５００）、ステップＳ１１０と同様の係数復号処理を実行し（ステップＳ５１０）、復号した中間データ５０（ＤＣＴ係数データ）をＳＲＡＭ２２ａに保存する（ステップＳ５２０）。係数復号処理では、上述したように、ＪＰＥＧデータをエントロピー復号（ハフマン復号）し、グループ復号し、ランレングス復号する。この結果、Ｎ×Ｎ（例えばＮ＝８）の量子化前のＤＣＴ係数の周波数ブロックが得られる。
【００３７】
次に、ＣＰＵ２２は、次に印刷を実行する印刷実行位置の情報を取得し（ステップＳ５３０）、１／１解凍処理と、それ以外の間引解凍処理とを並行して実行する（ステップＳ５４０〜Ｓ５６０，Ｓ５７０〜Ｓ６５０）。ここでは、１／１解凍処理の画像生成処理をハードウエア構成の第１処理部３３で行い、間引解凍の画像生成処理をソフトウエア構成の第２処理部３４で並行して行うものとする。また、ここでは、印刷ヘッドの往復動時にインクを吐出する印刷バンド６２を１単位として印刷データを生成するものとして以下説明する。
【００３８】
ＣＰＵ２２は、ステップＳ５３０のあと、まず、レイアウトの印刷実行位置に含まれる１以上の画像サイズに基づいて、１／１解凍要求があるか否かを判定する（ステップＳ５４０）。ここでは、指定されている要求サイズ以上の大きさの画像となる間引率が間引率１／１であるときに１／１解凍要求があると判定するものとした。１／１解凍要求があるときには、保存した中間データのうち、印刷バンド６２に含まれる範囲のデータに対して１／１解凍処理を実行し（ステップＳ５５０）、リサイズ及びレイアウト処理を行う（ステップＳ５６０）。ここで、１／１解凍処理では、間引処理を行わずに画像データを生成するものとする。また、リサイズ処理は、レイアウト画像の１以上の該当範囲に合うような倍率で、解凍した画像のリサイズ処理（縮小処理）を実行する。また、レイアウト処理は、レイアウト画像の１以上の該当位置に、リサイズした画像を配置する処理を行う。このように、ハードウエア処理により１／１解凍処理を実行するから、処理負担の大きい１／１解凍処理を比較的高速に実行可能であり、１／１解凍処理と間引解凍処理とを並行して実行することができる。
【００３９】
一方、ステップＳ５３０のあと、レイアウトの印刷実行位置に含まれる１以上の画像サイズに基づいて、１／２解凍要求があるか否かを判定する（ステップＳ５７０）。ここでは、最大の間引処理を行ったときに、指定されている要求サイズ以上の大きさの画像となる間引率が間引率１／２であるときに１／２解凍要求があると判定するものとした。１／２解凍要求があるときには、保存した中間データのうち、印刷バンド６２に含まれる範囲のデータに対して１／２解凍処理を実行し（ステップＳ５８０）、リサイズ及びレイアウト処理を行う（ステップＳ５９０）。ここで、リサイズ処理及びレイアウト処理は、以下の説明においても、上記ステップＳ５６０と同様の処理を行うものとし、その説明を省略する。一方、ステップＳ５９０のあと、またはステップＳ５７０で１／２解凍要求がないときには、上記と同様の手法により、１／４解凍要求があるか否かを判定し（ステップＳ６００）、１／４解凍要求があるときには、保存した中間データのうち、印刷バンド６２に含まれる範囲のデータに対して１／４解凍処理を実行し（ステップＳ６１０）、リサイズ及びレイアウト処理を行う（ステップＳ６２０）。一方、ステップＳ６２０のあと、またはステップＳ６００で１／４解凍要求がないときには、上記と同様の手法により、１／８解凍要求があるか否かを判定し（ステップＳ６３０）、１／８解凍要求があるときには、保存した中間データのうち、印刷バンド６２に含まれる範囲のデータに対して１／８解凍処理を実行し（ステップＳ６４０）、リサイズ及びレイアウト処理を行う（ステップＳ６５０）。なお、１／２解凍処理、１／４解凍処理及び１／８解凍処理では、上記ステップＳ１３０と同様の処理を行うものとし、その説明を省略する（図５参照）。また、このリサイズ及びレイアウト処理において、上記補正処理を実行してもよい。
【００４０】
さて、ステップＳ５６０のあと、ステップＳ５４０で１／１解凍要求がないとき、ステップＳ６５０のあと、またはステップＳ６３０で１／８解凍要求がないときなどの処理が全て終了すると、ＣＰＵ２２は、印刷データを生成し、生成した印刷データを印刷機構２６へ出力する処理を実行する（ステップＳ６６０）。印刷データ（ＣＭＹＫデータ）の生成では、リサイズ、レイアウト処理を施して生成した印刷バンド６２の画像データ（ＹＣＣデータ）のＹ，Ｃｂ，Ｃｒの各値からＣ，Ｍ，Ｙ，Ｋの各値へ、ルックアップテーブルなどを用いて変換し、ハーフトーン処理を行い、各色のインク吐出量に変換するものとしてもよい。続いて、ＣＰＵ２２は、印刷が終了したか否かを判定し（ステップＳ６７０）、印刷が終了していないときにはステップＳ５３０以降の処理を実行し、印刷が終了したときにはこのルーチンを終了する。このように、複数サイズの印刷画像を生成する際に、中間データ５０を複数回に亘り利用し、係数復号処理の重複実行をより抑制し、効率よく画像解凍処理を行うのである。
【００４１】
ここで、本実施形態の構成要素と本発明の構成要素との対応関係を明らかにする。本実施形態の復号処理部３１が本発明の復号処理手段に相当し、ＳＲＡＭ２２ａが記憶手段に相当し、画像生成部３２が画像生成手段に相当し、圧縮データがＪＰＥＧデータに相当し、中間データが中間データ５０に相当し、第１処理部３３が第１処理部に相当し、第２処理部３４が第２処理部に相当する。なお、本実施形態では、プリンター２０の動作を説明することにより本発明の画像処理方法の一例も明らかにしている。
【００４２】
以上詳述した本実施形態のプリンター２０によれば、ＤＣＴ演算を伴う圧縮方式のＪＰＥＧデータ（圧縮データ）に対してエントロピー復号及びランレングス復号処理を実行した中間データ５０を生成し、生成した中間データ５０をＳＲＡＭ２２ａに記憶し、この記憶した中間データ５０を用いて第１の間引率（例えば１／２）で第１画像データ２４ａを生成する一方、記憶された中間データ５０を用いて第２の間引率（例えば１／８）で第２画像データ２４ｂを生成する。このように、中間データ５０を記憶して複数の画像データの生成に利用するから、非常に負荷の高いエントロピー復号（ハフマン復号）からランレングス復号（ＤＣ・ＡＣ係数の復号）までの復号処理の重複実行をより抑制可能であるため、圧縮データの解凍処理の負担及び処理時間をより低減することができる。また、ハードウエア処理による第１処理部３３及びソフトウエア処理による第２処理部３４により、第１画像データの生成と第２画像データの生成とを並行して行うため、圧縮データの解凍処理の負担及び処理時間を更に低減することができる。また、ハードウエア処理とソフトウエア処理に分担させることによって、より効率よく圧縮データの解凍処理の負担及び処理時間を低減することができる。更に、印刷画像に複数のサイズの同一画像が含まれるときに、間引率の異なる第１画像データと第２画像データとを印刷画像として生成するため、複数サイズの画像を印刷するときに、圧縮データの解凍処理の負担及び処理時間を低減することができる。更にまた、サンプリング画像が複数のサイズであるときに、間引率の異なる第１画像データと第２画像データとを生成するため、サンプリング画像の生成時に、圧縮データの解凍処理の負担及び処理時間を低減することができる。そして、指定されているサイズ（印刷又はサンプリングの要求サイズ）以上の大きさの画像となる第１及び第２の間引率で第１及び第２画像データを生成するため、画質の低下を抑制しつつ、圧縮データの解凍処理の負担及び処理時間をより低減することができる。
【００４３】
なお、本発明は上述した実施形態に何ら限定されることはなく、本発明の技術的範囲に属する限り種々の態様で実施し得ることはいうまでもない。
【００４４】
例えば、上述した実施形態では、第１の間引率で処理した第１画像データと第１の間引率と異なる第２の間引率で第２画像データを生成する処理を並行して行うものとしたが、中間データを共用して複数の画像データを生成するものとすれば、特にこれに限定されず、並行して行わずに別々に画像データを生成するものとしてもよい。こうしても、復号処理の重複実行をより抑制可能であるため、圧縮データの解凍処理の負担及び処理時間をより低減することができる。
【００４５】
上述した実施形態では、画像生成部３２は、ハードウエア処理を実行する第１処理部３３と、ソフトウエア処理を実行する第２処理部３４とを備えるものとしたが、特にこれに限定されない。例えば、第２処理部３４をハードウエア処理を実行する回路構成としてもよいし、第１処理部３３をソフトウエア処理を実行する構成としてもよい。また、２以上の処理部を設けるものとしてもよい。また、上述した実施形態では、第２処理部３４は、ソフトウエア処理を実行する１／２解凍部３４ａ、１／４解凍部３４ｂ、１／８解凍部３４ｃを備えるものとしたが、これらのうち１以上を適宜、ハードウエア処理を行う構成にしてもよい。
【００４６】
上述した実施形態では、印刷画像に複数のサイズの同一画像が含まれるときに、間引率の異なる第１画像データと第２画像データとを印刷画像として生成するものとしたが、間引率の異なる第１画像データと第２画像データとを生成するものとすれば、特にこれに限定されない。また、サンプリング画像が複数のサイズであるときに、間引率の異なる第１画像データと第２画像データとを生成するものとしたが、間引率の異なる第１画像データと第２画像データとを生成するものとすれば、特にこれに限定されない。
【００４７】
上述した実施形態では、指定されているサイズ以上の大きさの画像となる第１の間引率及び第２の間引率で第１画像データ及び第２画像データをそれぞれ生成するものとしたが、特にこれに限定されず、指定されているサイズに関係ない間引率により画像データを生成するものとしてもよい。こうしても、復号処理の重複実行をより抑制可能であるため、圧縮データの解凍処理の負担及び処理時間をより低減することができる。
【００４８】
上述した実施形態では、中間データ５０を量子化前のＤＣＴ係数としたが、特にこれに限定されず、量子化後の量子化データとしてもよい。また、上述した実施形態では、間引率を１／２n（ｎは０以上の整数）として説明したが、特にこれに限定されず、１／Ｘ（Ｘは１以上の整数）としてもよい。
【００４９】
上述した実施形態では、印刷バンド単位で印刷データを生成するものとしたが、特にこれに限定されず、複数の印刷バンド単位で印刷データを生成するものとしてもよいし、印刷画像単位で印刷データを生成するものとしてもよい。
【００５０】
上述した実施形態では、第１処理部３３は、１／１解凍処理を行うハードウエアとして説明したが、例えば、第１処理部にセレクタースイッチなどを設け、複数の間引率での間引解凍処理を実行可能に構成し、第２処理部に対して間引きを行わない解凍処理を実行するものとし、第１処理部と第２処理部とにより並行処理により複数の画像データを生成するものとしてもよい。こうすれば、並行処理をより確実に実行することができる。
【００５１】
上述した実施形態では、メモリーカードリーダー３０に装着されたメモリーカードに記憶された圧縮データを解凍して印刷するものとしたが、ＤＣＴ演算を伴う圧縮方式の圧縮データを解凍して画像データを生成するものとすれば特にこれに限定されず、例えば、読取機構２５で読み取った圧縮データを解凍する際や、ＰＣ４０から送信された圧縮データを解凍する際としてもよい。
【００５２】
上述した実施形態では、圧縮データをＪＰＥＧデータとして説明したが、ＤＣＴ演算を伴う圧縮方式の圧縮データであれば特にこれに限定されず、例えば、ＭＰＥＧデータとしてもよい。
【００５３】
上述した実施形態では、印刷、スキャン及びコピーを実行可能なマルチファンクションプリンターを本発明の画像処理装置として説明したが、プリンター単体やスキャナー単体、ＦＡＸなどとしてもよい。あるいは、ＤＣＴ演算を伴う圧縮方式の圧縮データを解凍して画像データを生成する装置であれば特に限定されず、例えば、パソコンやノートパソコンなどの情報処理機器、デジタルスチルカメラやデジタルビデオカメラなどの撮影機器、デジタルテレビやＨＤＤレコーダーなどの映像機器、携帯用及び家庭用のゲーム機器、携帯電話などの通信機器などとしてもよい。また、読取機構２５は、原稿を固定し読取センサーを移動して画像を読み取るフラットベッド式としたが、読取センサーを固定し原稿を移動して読み取る方式を採用してもよい。また、印刷機構２６は、インクジェット方式としたが、電子写真方式や、熱転写方式、ドットインパクト方式としてもよい。また、プリンター２０の態様で本発明を説明したが、画像処理方法の態様としてもよいし、この方法のプログラムの態様としてもよい。
【符号の説明】
【００５４】
１０  プリンターシステム、２０  プリンター、２１  コントローラー、２２  ＣＰＵ、２２ａ  ＳＲＡＭ、２３  フラッシュメモリー、２４  ＲＡＭ、２４ａ  第１画像データ、２４ｂ  第２画像データ、２５  読取機構、２６  印刷機構、２７  インターフェイス（Ｉ／Ｆ）、２８  操作パネル、２８ａ  表示部、２８ｂ  操作部、２９  バス、３０  メモリーカードリーダー、３１  復号処理部、３２  画像生成部、３３  第１処理部、３４  第２処理部、３４ａ  １／２解凍部、３４ｂ  １／４解凍部、３４ｃ  １／８解凍部、３５  サンプリング処理部、３６  補正実行処理部、３８  印刷処理部、４０  パソコン（ＰＣ）、４７  入力装置、４８  ディスプレイ、５０  中間データ、６０  レイアウト画像、６１  画像データ、６２  印刷バンド。
【図１】
2013115535.tif 000003
【図２】
2013115535.tif 000004
【図３】
2013115535.tif 000005
【図４】
2013115535.tif 000006
【図５】
2013115535.tif 000007
【図６】
2013115535.tif 000008
【図７】
2013115535.tif 000009