(57)【要約】【課題】種々の形式の画像に効率的に対応してぼやけ判定を行える画像処理装置の提供。【解決手段】プリンタ１００のＣＰＵ１６０は、画像データのＥＸＩＦ情報を参照して、印刷候補として入力された画像データがＪＰＥＧデータ、ビットマップデータ、ＲＡＷデータのうち、いずれであるのかを判断する。その結果、ＪＰＥＧデータである場合には、ハフマン復号化・逆量子化を行い、ビットマップデータである場合には、ＲＧＢ色空間のＧ成分をＤＣＴ変換し、ＲＡＷデータである場合には、Ｇ成分を周辺の画素から補間した上でＤＣＴ変換する。こうして得られたＤＣＴ係数から所定の係数群を抽出し、この係数群の変化形状に近似する基本エッジパターンをエッジパターンテーブル１８１から選出する。この選出された基本エッジパターンに基づいて、画像のぼやけ判定を行う。【選択図】図６
2008140331.tif 000002
【特許請求の範囲】
【請求項１】
画像を表現しているデジタルデータに基づいて、該画像のぼやけを検出する画像処理装置であって、
所定数の画素からなるブロックを単位として周波数領域で前記画像を表現する複数の係数であり、少なくとも圧縮のための符号化が行われた係数から構成されたデジタルデータを第１の形式の画像データとして入力し、該第１の形式の画像データに対して、前記符号化に対応した復号化を行って、前記画像を周波数領域で表現する複数の係数からなるブロック係数群を取得する第１の係数群取得部と、
所定の色空間の階調値で表現された画素の集合として構成されたデジタルデータを第２の形式の画像データとして入力し、該第２の形式の画像データに対して、前記ブロックと対応した大きさのブロックを単位とする前記周波数領域への変換を行って、前記画像を周波数領域で表現する複数の係数からなるブロック係数群を取得する第２の係数群取得部と、
前記デジタルデータが、前記第１または第２の形式の画像データの何れに該当するかを判定し、該判定結果に基づいて、前記第１または第２の係数群取得部を動作させ、前記ブロック係数群を出力させる判定動作部と、
該判定動作部による判定に伴って出力された前記ブロック係数群から、前記画像データの前記ブロック内における所定方向の変化を代表する複数の係数からなる代表係数群を抽出する係数抽出部と、
前記ブロック内の画素の画像データの前記ブロック内における少なくとも一方向の代表的な変化を前記代表係数群によって表した複数種類のパターンを、基本パターンとして分類して記憶するパターン記憶部と、
前記抽出された代表係数群の変化のパターンを、前記記憶された複数の基本パターンと照合し、近似する基本パターンを選出するパターン照合部と、
前記ブロックについて選出された前記各基本パターンの前記画像内における配置に基づいて、前記デジタルデータが表す画像のぼやけを判定するぼやけ判定部と
を備えた画像処理装置。
【請求項２】
請求項１記載の画像処理装置であって、
前記第１の形式の画像データは、ＪＰＥＧ形式の画像であり、前記圧縮のための符号化は、量子化及びエントロピ符号化を含む
画像処理装置。
【請求項３】
請求項１または請求項２記載の画像処理装置であって、
前記第２の係数群取得部は、前記第２の形式の画像データであって、所定の色空間のいずれかの色成分の階調値で表現された画素の集合体として構成されたデジタルデータを第３の形式の画像データとして入力した場合には、所定の色成分の階調値を有しない画素の、前記所定の色成分の階調値を、該画素の周囲の画素の前記所定の色成分の階調値から補間して、各画素の所定の色成分の階調値を取得する階調値補間手段を備え、
前記判定動作部は、前記デジタルデータが前記第２の形式の画像データに該当すると判定した場合には、更に、該第２の形式の画像データが、前記第３の形式の画像データに該当するか否かを判定し、前記第３の形式の画像データであると判定したときには、前記階調値補間手段を備えた第２の係数群取得部を動作させ、前記ブロック係数群を出力させる
画像処理装置。
【請求項４】
請求項３記載の画像処理装置であって、
前記判定動作部は、前記デジタルデータが前記第３の形式の画像データに該当すると判定した場合には、更に、該第３の画像データに前記第１の形式のサムネイルが含まれるか否かを判定し、前記第１の形式のサムネイルが含まれると判定したときには、前記階調値補間手段を備えた第２の係数群取得部に代えて、前記第１の係数群取得部を動作させ、前記サムネイルデータに対応する前記ブロック係数群を出力させる
画像処理装置。
【請求項５】
請求項１ないし請求項４のいずれか記載の画像処理装置であって、
前記第２の係数群取得部は、前記第２の形式の画像データのＲＧＢ色空間のＧ成分、または輝度成分に対して、前記周波数領域への変換を行って、前記ブロック係数群を取得する
画像処理装置。
【請求項６】
請求項１ないし請求項５のいずれか記載の画像処理装置であって、
前記ぼやけ判定部は、
前記基本パターンが選出されたブロックの、前記選出された基本パターンの係数群の各係数の変化が形成する第１の勾配と、該ブロックに隣接するブロックで選出された基本パターンの係数群の各係数の変化が形成する第２の勾配との連続性を検定する連続性検定手段と、
前記連続性検出手段の検定結果により、前記各勾配が連続しない時には、前記基本パターンが選出されたブロックの前記勾配の幅を、前記ブロックのぼやけ度を表すぼやけ幅として検出し、前記各勾配が連続する時には、前記ブロックに分割された画像内における前記各ブロックの前記所定方向の連なりに沿って、前記各勾配が連続する範囲を前記ぼやけ幅として検出するぼやけ幅検出手段と、
該検出されたぼやけ幅の長さに基づいて、前記デジタルデータが表す画像のぼやけを判定するぼやけ判定手段と
を備えた画像処理装置。
【請求項７】
請求項１ないし請求項６のいずれか記載の画像処理装置であって、
更に、前記ぼやけ判定部によってぼやけていないと判定された画像をユーザに提示する提示部を備える
画像処理装置。
【請求項８】
請求項７に記載の画像処理装置であって、
更に、前記提示された画像の中からユーザによって選択された画像を印刷する印刷部を備える
画像処理装置。
【請求項９】
画像を表現しているデジタルデータに基づいて、該画像のぼやけを検出するぼやけ検出方法であって、
前記デジタルデータが、所定数の画素からなるブロックを単位として周波数領域で前記画像を表現する複数の係数であり、少なくとも圧縮のための符号化が行われた係数から構成された第１の形式の画像データ、または所定の色空間の階調値で表現された画素の集合として構成された第２の形式の画像データの何れに該当するかを判定し、
前記第１の形式の画像データであると判断されたときは、該第１の形式の画像データに対して、前記符号化に対応した復号化を行って、前記画像を周波数領域で表現する複数の係数からなるブロック係数群を出力し、
前記第２の形式の画像データであると判断されたときは、該第２の形式の画像データに対して、前記ブロックと対応した大きさのブロックを単位とする前記周波数領域への変換を行って、前記画像を周波数領域で表現する複数の係数からなるブロック係数群を出力し、
前記出力されたブロック係数群から、前記画像データの前記ブロック内における所定方向の変化を代表する複数の係数からなる代表係数群を抽出し、
前記ブロック内の画素の画像データの前記ブロック内における少なくとも一方向の代表的な変化を前記代表係数群によって表した複数種類のパターンを、基本パターンとして分類して記憶するパターン記憶部を参照して、前記抽出された代表係数群の変化のパターンを、前記記憶された複数の基本パターンと照合し、近似する基本パターンを選出し、
前記ブロックについて選出された前記各基本パターンの前記画像内における配置に基づいて、前記デジタルデータが表す画像のぼやけを判定する
ぼやけ検出方法。
【請求項１０】
画像を表現しているデジタルデータに基づいて、該画像のぼやけを検出するためのコンピュータプログラムであって、
所定数の画素からなるブロックを単位として周波数領域で前記画像を表現する複数の係数であり、少なくとも圧縮のための符号化が行われた係数から構成されたデジタルデータを第１の形式の画像データとして入力し、該第１の形式の画像データに対して、前記符号化に対応した復号化を行って、前記画像を周波数領域で表現する複数の係数からなるブロック係数群を取得する第１の係数群取得機能と、
所定の色空間の階調値で表現された画素の集合として構成されたデジタルデータを第２の形式の画像データとして入力し、該第２の形式の画像データに対して、前記ブロックと対応した大きさのブロックを単位とする前記周波数領域への変換を行って、前記画像を周波数領域で表現する複数の係数からなるブロック係数群を取得する第２の係数群取得機能と、
前記デジタルデータが、前記第１または第２の形式の画像データの何れに該当するかを判定し、該判定結果に基づいて、前記第１または第２の係数群取得機能を用いて、前記ブロック係数群を出力させる判定動作機能と、
該判定動作部による判定に伴って出力された前記ブロック係数群から、前記画像データの前記ブロック内における所定方向の変化を代表する複数の係数からなる代表係数群を抽出する係数抽出機能と、
前記ブロック内の画素の画像データの前記ブロック内における少なくとも一方向の代表的な変化を前記代表係数群によって表した複数種類のパターンを、基本パターンとして分類して記憶するパターン記憶部を参照して、前記抽出された代表係数群の変化のパターンを、前記記憶された複数の基本パターンと照合し、近似する基本パターンを選出するパターン照合機能と、
前記ブロックについて選出された前記各基本パターンの前記画像内における配置に基づいて、前記デジタルデータが表す画像のぼやけを判定するぼやけ判定機能と
をコンピュータに実現させるコンピュータプログラム。
【請求項１１】
請求項１０に記載のコンピュータプログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像を表現しているデジタルデータに基づいて、該画像のぼやけを検出する技術に関する。
【背景技術】
【０００２】
近年、デジタルスチルカメラが普及し、デジタルデータの写真画像を撮影する機会が増えている。これらのデジタル写真画像には、被写体ブレや手ブレによるぼやけ画像も含まれており、ユーザが画像を印刷するのに先立ち、画像のぼやけを検出し、ぼやけが生じている画像を印刷の対象から排除することが必要である。こうしたぼやけ画像を排除するためのぼやけ検出技術に関して、例えば、下記の特許文献に記載の技術が知られている。
【０００３】
【特許文献１】特開平４−１７０８７２号公報
【特許文献２】特開平１０−２７１５１６号公報
【０００４】
特許文献１は、撮像した画像を８画素×８画素を単位とする複数のブロックに分割して、離散コサイン変換された各ブロックについて周波数分析を行い、ブロック毎に像のシャープさ（逆に言えば、ぼやけ度合い）を判別する技術を開示している。
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかし、ぼやけ判定を行うべき画像は、ＪＰＥＧ形式の圧縮画像を中心として、ＣＣＤ（Charge Coupled Device）などの撮像素子で得られた電気信号をデジタル変換しただけのＲＡＷデータや、画素ごとの色空間の階調値で構成される未圧縮のビットマップ画像、例えば、ＴＩＦＦ形式、ＰＮＧ形式といった種々の形式があり、それぞれの画像形式に効率的に対応してぼやけ判定を行える画像処理装置が求められていた。
【課題を解決するための手段】
【０００６】
上記課題を解決する本発明の画像処理装置は、
画像を表現しているデジタルデータに基づいて、該画像のぼやけを検出する画像処理装置であって、
所定数の画素からなるブロックを単位として周波数領域で前記画像を表現する複数の係数であり、少なくとも圧縮のための符号化が行われた係数から構成されたデジタルデータを第１の形式の画像データとして入力し、該第１の形式の画像データに対して、前記符号化に対応した復号化を行って、前記画像を周波数領域で表現する複数の係数からなるブロック係数群を取得する第１の係数群取得部と、
所定の色空間の階調値で表現された画素の集合として構成されたデジタルデータを第２の形式の画像データとして入力し、該第２の形式の画像データに対して、前記ブロックと対応した大きさのブロックを単位とする前記周波数領域への変換を行って、前記画像を周波数領域で表現する複数の係数からなるブロック係数群を取得する第２の係数群取得部と、
前記デジタルデータが、前記第１または第２の形式の画像データの何れに該当するかを判定し、該判定結果に基づいて、前記第１または第２の係数群取得部を動作させ、前記ブロック係数群を出力させる判定動作部と、
該判定動作部による判定に伴って出力された前記ブロック係数群から、前記画像データの前記ブロック内における所定方向の変化を代表する複数の係数からなる代表係数群を抽出する係数抽出部と、
前記ブロック内の画素の画像データの前記ブロック内における少なくとも一方向の代表的な変化を前記代表係数群によって表した複数種類のパターンを、基本パターンとして分類して記憶するパターン記憶部と、
前記抽出された代表係数群の変化のパターンを、前記記憶された複数の基本パターンと照合し、近似する基本パターンを選出するパターン照合部と、
前記ブロックについて選出された前記各基本パターンの前記画像内における配置に基づいて、前記デジタルデータが表す画像のぼやけを判定するぼやけ判定部と
を備えたことを要旨とする。
【０００７】
かかる構成の画像処理装置は、画像データの形式を判定し、判定された形式に応じた処理によって、所定数の画素からなるブロック内の画像を周波数領域で表現する複数の係数からなるブロック係数群を取得する。そして、このブロック係数群から、所定方向の画像データの変化を代表する代表係数群を抽出し、この代表係数群の変化のパターンと近似した基本パターンをパターン記憶部から選出し、選出された基本パターンの画像内における配置に基づいて、画像のぼやけを判定する。従って、種々の画像形式に対して、同一の方法を用いて効率的にぼやけ判定を行うことができる。
【０００８】
また、かかる構成の画像処理装置において、第１の形式の画像データは、ＪＰＥＧ形式の画像であり、圧縮のための符号化は、量子化及びエントロピ符号化を含むものとしてもよい。
【０００９】
このような構成によれば、圧縮画像形式として頻繁に用いられるＪＰＥＧ形式についても対応できる。
【００１０】
また、かかる構成の画像処理装置において、第２の係数群取得部は、第２の形式の画像データであって、所定の色空間のいずれかの色成分の階調値で表現された画素の集合体として構成されたデジタルデータを第３の形式の画像データとして入力した場合には、所定の色成分の階調値を有しない画素の、所定の色成分の階調値を、該画素の周囲の画素の所定の色成分の階調値から補間して、各画素の所定の色成分の階調値を取得する階調値補間手段を備え、判定動作部は、デジタルデータが第２の形式の画像データに該当すると判定した場合には、更に、該第２の形式の画像データが、第３の形式の画像データに該当するか否かを判定し、第３の形式の画像データであると判定したときには、階調値補間手段を備えた第２の係数群取得部を動作させ、ブロック係数群を出力させるものとしてもよい。
【００１１】
このような構成によれば、各画素が所定の色空間のいずれかの色成分の階調値の情報を持つ形式の画像データ、例えば単板式のデジタルスチルカメラで撮像された、ＲＧＢ色空間のいずれかの色成分の階調値の情報を持つＲＡＷデータであっても、周囲の画素から補間して、各画素の所定の色成分の階調値を取得し、ぼやけ判定を行えるので、より広い画像形式に対応できる。
【００１２】
また、かかる構成の画像処理装置において、判定動作部は、デジタルデータが第３の形式の画像データに該当すると判定した場合には、更に、該第３の画像データに第１の形式のサムネイルが含まれるか否かを判定し、第１の形式のサムネイルが含まれると判定したときには、階調値補間手段を備えた第２の係数群取得部に代えて、第１の係数群取得部を動作させ、サムネイルデータに対応するブロック係数群を出力させるものとしてもよい。
【００１３】
このような構成によれば、画像データに含まれるサムネイルのデータを復号化してブロック係数群を取得するので、画像データの所定の色空間の階調値を補間し、更に、周波数領域へ変換してブロック係数群を取得する場合と比べ、処理を高速化することができる。
【００１４】
また、かかる構成の画像処理装置において、第２の係数群取得部は、第２の形式の画像データのＲＧＢ色空間のＧ成分、または輝度成分に対して、周波数領域への変換を行って、ブロック係数群を取得するものとしてもよい。
【００１５】
このような構成によれば、画像データのうち、人間の眼の感度が高い、ＲＧＢ色空間のＧ成分や輝度を用いて、ぼやけの判定を行うので、精度良くぼやけ判定を行うことができる。
【００１６】
また、かかる構成の画像処理装置において、ぼやけ判定部は、基本パターンが選出されたブロックの、選出された基本パターンの係数群の各係数の変化が形成する第１の勾配と、該ブロックに隣接するブロックで選出された基本パターンの係数群の各係数の変化が形成する第２の勾配との連続性を検定する連続性検定手段と、連続性検出手段の検定結果により、各勾配が連続しない時には、基本パターンが選出されたブロックの勾配の幅を、ブロックのぼやけ度を表すぼやけ幅として検出し、各勾配が連続する時には、ブロックに分割された画像内における各ブロックの所定方向の連なりに沿って、各勾配が連続する範囲をぼやけ幅として検出するぼやけ幅検出手段と、該検出されたぼやけ幅の長さに基づいて、デジタルデータが表す画像のぼやけを判定するぼやけ判定手段とを備えたものとしてもよい。
【００１７】
このような構成によれば、ブロックの連なりに沿って、選出した基本パターンの係数群の各係数の変化が形成する勾配の連続性を検出し、勾配が連続する場合には、複数ブロックに跨って勾配が連続する範囲をぼやけ幅として検出する。したがって、ぼやけの幅が１つのブロックのサイズを超える場合においても、精度良く画像がぼやけているか否かを判断することができる。
【００１８】
また、かかる構成の画像処理装置において、更に、ぼやけ判定部によってぼやけていないと判定された画像をユーザに提示する提示部を備えるものとしてもよい。
【００１９】
このような構成であれば、ユーザは、撮影に成功した画像のみを確認することができる。ユーザに提示する方法としては、例えば、表示装置に画像を表示させるものとすることができる。その他、ぼやけていないと判定された画像の一覧を印刷してユーザに提示するものとしてもよい。
【００２０】
また、かかる構成の画像処理装置において、更に、提示された画像の中からユーザによって選択された画像を印刷する印刷部を備えるものとしてもよい。
【００２１】
このような構成であれば、ユーザは、手ブレや被写体ブレによって画像にぼやけの生じている画像を意識することなく、撮影に成功した画像の中から所望の画像を容易に印刷することができる。
【００２２】
なお、本発明は、上述した画像処理装置としての構成のほか、コンピュータが画像のぼやけを検出するぼやけ検出方法や、画像のぼやけを検出するためのコンピュータプログラムとしても構成することができる。かかるコンピュータプログラムは、コンピュータが読取可能な記録媒体に記録されていてもよい。記録媒体としては、例えば、フレキシブルディスクやＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、光磁気ディスク、メモリカード、ハードディスク等の種々の媒体を利用することができる。
【発明を実施するための最良の形態】
【００２３】
以下、上述した本発明の作用・効果を一層明らかにするため、本発明の実施の形態を次の順序で説明する。
Ａ．実施例：
Ａ−１．プリンタのハードウェア構成：
Ａ−２．印刷処理：
Ａ−３．ぼやけ判定処理：
Ａ−４．エッジパターン照合処理の詳細：
Ａ−５．エッジ連結処理の詳細：
Ａ−６．ブロックぼやけ判定処理の詳細：
Ａ−７．ウィンドウぼやけ判定処理の詳細：
Ｂ．変形例：
【００２４】
Ａ．実施例：
Ａ−１．プリンタのハードウェア構成：
図１は、本願の画像処理装置の実施例としてのプリンタ１００の外観を示す説明図である。プリンタ１００は、いわゆる複合機タイプのプリンタであり、光学的に画像を読み込むスキャナ１１０や、画像データの記録されたメモリカードＭＣを挿入するためのメモリカードスロット１２０、デジタルカメラ等の機器を接続するＵＳＢインタフェース１３０等を備えている。プリンタ１００は、スキャナ１１０によって取り込んだ画像や、メモリカードＭＣから読み取った画像、ＵＳＢインタフェース１３０を介してデジタルカメラから読み取った画像を印刷用紙Ｐに印刷することができる。また、プリンタケーブルやＵＳＢケーブルによって接続された図示しないパーソナルコンピュータから入力した画像の印刷も行うことができる。
【００２５】
プリンタ１００は、印刷に関する種々の操作を行うための操作パネル１４０を備えている。操作パネル１４０の中央部には、液晶ディスプレイ１４５が備えられている。この液晶ディスプレイ１４５は、メモリカードＭＣやデジタルカメラなどから読み取った画像の表示や、プリンタ１００の各種機能を利用する際のＵＩ（ユーザインタフェース）の表示に利用される。
【００２６】
プリンタ１００は、メモリカードＭＣやデジタルカメラ等から入力した複数の画像データの中から、ぼやけている画像（以下「ぼやけ画像」という）を排除して、ピントが１カ所でも合っている画像（以下、「合焦画像」という）のみを抽出し、液晶ディスプレイ１４５に表示する機能を有している。ユーザは、こうして液晶ディスプレイ１４５に表示された画像の中から、所望の画像を選択することで、印刷に適した画像のみを印刷することが可能となる。
【００２７】
図２は、プリンタ１００の内部構成を示す説明図である。図示するように、プリンタ１００は、印刷用紙Ｐに印刷を行う機構として、インクカートリッジ２１２を搭載したキャリッジ２１０や、キャリッジ２１０を主走査方向に駆動するキャリッジモータ２２０、印刷用紙Ｐを副走査方向に搬送する紙送りモータ２３０等を備えている。
【００２８】
キャリッジ２１０は、シアン、マゼンタ、イエロ、ブラック、ライトシアン、ライトマゼンタの色を現す各インクに対応して、計６種類のインクヘッド２１１を備えている。キャリッジ２１０には、これらのインクが収容されたインクカートリッジ２１２が装着されており、インクカートリッジ２１２からインクヘッド２１１に供給されたインクは、図示しないピエゾ素子を駆動することで印刷用紙Ｐに吐出される。
【００２９】
キャリッジ２１０は、プラテン２７０の軸方向と並行に設置された摺動軸２８０に移動自在に保持されている。キャリッジモータ２２０は、制御ユニット１５０からの指令に応じて駆動ベルト２６０を回転させることで、プラテン２７０の軸方向と平行に、すなわち、主走査方向にキャリッジ２１０を往復運動させる。紙送りモータ２３０は、プラテン２７０を回転させることで、プラテン２７０の軸方向と垂直に印刷用紙Ｐを搬送する。つまり、紙送りモータ２３０は、キャリッジ２１０を相対的に副走査方向に移動させることができる。
【００３０】
プリンタ１００は、上述したインクヘッド２１１やキャリッジモータ２２０、紙送りモータ２３０の動作を制御するための制御ユニット１５０を備えている。制御ユニット１５０には、図１に示したスキャナ１１０やメモリカードスロット１２０、ＵＳＢインタフェース１３０、操作パネル１４０、液晶ディスプレイ１４５が接続されている。
【００３１】
制御ユニット１５０は、ＣＰＵ１６０とＲＡＭ１７０とＲＯＭ１８０とによって構成されている。ＲＯＭ１８０には、プリンタ１００の動作を制御するための制御プログラムが記憶されており、更に、後述する種々の処理で使用されるエッジパターンテーブル１８１が記憶されている。
【００３２】
ＣＰＵ１６０はＲＯＭ１８０に記憶された制御プログラムをＲＡＭ１７０に展開して実行することで図示する各機能部（１６１〜１６７）として動作する。これらの機能部の機能については、後に詳述する。ＲＡＭ１７０には、制御プログラムを実行するためのワークエリアが確保されている。
【００３３】
Ａ−２．印刷処理：
図３は、プリンタ１００のＣＰＵ１６０が実行する印刷処理のフローチャートである。この印刷処理は、メモリカードＭＣ等から画像データを入力して印刷を行うための処理である。
【００３４】
操作パネル１４０を用いたユーザの所定の操作に応じてこの印刷処理が実行されると、まず、ＣＰＵ１６０は、画像データ入力部１６１を用いて、メモリカードスロット１２０に挿入されたメモリカードＭＣから、画像データを入力する（ステップＳ１０）。なお、ここでは、メモリカードＭＣから画像データを入力するものとするが、ＵＳＢインタフェース１３０を介して接続されたデジタルカメラやコンピュータ等から入力するものとしてもよい。
【００３５】
なお、本実施例においては、請求項の画像データの例として、以下の画像を入力するものとした。
（１）所定数の画素からなるブロックを単位として周波数領域で画像を表現する複数の係数であり、少なくとも圧縮のための符号化が行われた係数から構成されたデジタルデータ（第１の形式の画像データ）の例：ＪＰＥＧデータ
（２）所定の色空間の階調値で表現された画素の集合として構成されたデジタルデータ（第２の形式の画像データ）の例：ビットマップデータ、ＲＡＷデータ
（３）所定の色空間のいずれかの色成分の階調値で表現された画素の集合体として構成されたデジタルデータ（第３の形式の画像データ）の例：ＲＡＷデータ
これらの画像のデータは、デジタルスチルカメラで撮像されたものであり、ＥＸＩＦ（Exchangeable Image File Format）と呼ばれる規格により、デジタルスチルカメラの機種、撮影条件、画像の形式、サムネイル等の情報が埋め込まれている。
【００３６】
ＪＰＥＧデータは、図４（ａ）に示すように、８画素×８画素のＭＣＵ（Minimum Coded Unit）と呼ばれるブロックが水平方向および垂直方向に（つまり、行毎に）連なって構成される。この各ブロック内の画像データは、（１）ＲＧＢ色空間からＹＣｂＣｒ色空間への画素値の色変換、（２）空間領域から周波数領域へのＤＣＴ（Discrete Cosine Transform：離散コサイン変換）変換、（３）データの情報量を削減する量子化、（４）エントロピ符号化の一種であるハフマン符号化、が順次行われることでデータ量が圧縮される。
【００３７】
ビットマップデータは、画素毎の所定の色空間のデータが水平方向及び垂直方向に連なって構成される画像データであり、本実施例においては、ＲＧＢ色空間のデータを想定している。
【００３８】
ＲＡＷデータは、ＣＣＤ等の撮像素子で得られた電気信号をデジタル変換しただけの画像データであり、ホワイトバランスの調整等の画像処理を一切施していない画像データである。本実施例においては、ＣＣＤ素子を１枚しか持たない単板式のデジタルスチルカメラで撮像された、各画素がＲＧＢ色空間のいずれかひとつの色成分の階調値を有する画像データで構成される画像を想定している。
【００３９】
次に、ＣＰＵ１６０は、上記ステップＳ１０によって入力した画像データについて、ぼやけ判定処理を行う（ステップＳ２０）。このぼやけ判定処理の詳細については「Ａ−３．ぼやけ判定処理」で後述する。
【００４０】
１つの画像データについてぼやけ判定処理を終了すると、ＣＰＵ１６０は、メモリカードＭＣ内のすべての画像データを入力してぼやけ判定処理を行ったか否かを判断する（ステップＳ３０）。かかる処理によって、全ての画像データのぼやけ判定処理を行っていないと判断した場合には（ステップＳ３０：ＮＯ）、処理をステップＳ１０に戻し、次の画像データを入力する。
【００４１】
上記ステップＳ３０によって、全ての画像データについてぼやけ判定処理が終了したと判断した場合には（ステップＳ３０：ＹＥＳ）、ＣＰＵ１６０は、上記ステップＳ２０によってぼやけていないと判定された画像、すなわち、合焦画像を、液晶ディスプレイ１４５に一覧表示する（ステップＳ４０）。
【００４２】
合焦画像の一覧を液晶ディスプレイ１４５に表示すると、ＣＰＵ１６０は、操作パネル１４０を介して、ユーザから、印刷の対象となる画像の選択を受け付ける（ステップＳ５０）。そして、選択された画像を、インクヘッド２１１や紙送りモータ２３０、キャリッジモータ２２０等を制御して印刷する（ステップＳ６０）。
【００４３】
以上で説明した印刷処理では、メモリカードＭＣ内の全ての画像データを入力するものとしたが、メモリカードＭＣ内に複数のフォルダが生成されている場合には、ユーザによって指定されたフォルダについてのみ画像データを入力するものとしてもよい。
【００４４】
かかる構成の印刷処理装置は、画像のぼやけの判定を行い、合焦画像と判定された画像のみを表示して、印刷指示を受け付けるので、ユーザが視覚的にぼやけの判定を行うことが困難な小型の液晶ディスプレイを搭載した印刷装置であっても、ユーザは、撮影に成功した画像のみを確認しながら、所望の画像を容易に印刷することができる。
【００４５】
Ａ−３．ぼやけ判定処理：
図５は、図３に示した印刷処理のステップＳ２０で実行されるぼやけ判定処理のフローチャートである。この処理が開始されると、まず、ＣＰＵ１６０は、ぼやけ判定を行うべきウィンドウ（以下、「注目ウィンドウ」という）をその連なりに沿って移動する（ステップＳ１００）。最初の移動先は、画像データの最も左上に存在するウィンドウである。注目ウィンドウは、ステップＳ１００の処理が実行される度に、右方向へウィンドウの幅分だけ移動し、画像の右端まで到達すると、左端に戻ると共にウィンドウの高さ分だけ下に移動し、再度、右方向へ移動する。
【００４６】
上述のウィンドウとは、Ｌ版の印刷用紙において、最小の合焦エリアと想定される約１ｃｍ×約１ｃｍのサイズの領域を表しており、このウィンドウ領域を単位としたぼやけ判定結果に基づき、最終的に画像全体のぼやけ判定を行うものである。Ｌ版の印刷用紙（約１３ｃｍ×縦約９ｃｍ）に、６００万画素（横約３０００画素×縦約２０００画素）の画像を印刷するとすれば、１ブロックのサイズは、約０．３５ｍｍ×約０．３５ｍｍになる。そのため、約１ｃｍ×約１ｃｍのウィンドウ領域内には、図４（ｂ）に示すように、２８×２８個のブロックが存在することになる。なお、本実施例では、上述のように、Ｌ版の印刷用紙に６００万画素の画像を印刷することを想定して、ウィンドウのサイズを約１ｃｍ×約１ｃｍとしているが、印刷対象の用紙サイズ、画像の画素数、ＣＰＵの処理速度等に応じて、ウィンドウサイズが適宜変更されることは言うまでもない。Ａ４版で印刷する場合や、３００万画素の画像を印刷する場合、ＣＰＵの処理速度を向上できる場合などは、ウィンドウサイズを大きく、例えば、約２ｃｍ×約２ｃｍとしてもよい。
【００４７】
注目ウィンドウを移動すると、ＣＰＵ１６０は、注目ウィンドウについて、後述するぼやけ判定に用いる係数を取得済みであるか否かを判断する（ステップＳ１１０）。その結果、係数を取得済みでなければ（ステップＳ１１０：ＮＯ）、係数取得処理を行う（ステップＳ１２０）。
【００４８】
このステップＳ１２０の係数取得処理については、図６を用いて詳述する。図６は、図５に示したぼやけ判定処理のステップＳ１２０で実行される係数所得処理の手順を示すフローチャートである。この処理が開始されると、ＣＰＵ１６０は、判定動作部１６２を用いて、入力された画像データがＪＰＥＧデータであるか否かを判断する（ステップＳ３００）。その結果、ＪＰＥＧデータであれば（ステップＳ３００：ＹＥＳ）、ＣＰＵ１６０は、ＪＰＥＧデコード部１６４を動作させて、ＪＰＥＧデータの輝度成分に対応するデータをハフマン復号化及び逆量子化して、ブロック（ＭＣＵ）ごとに、８個×８個の周波数成分（以下、「ＤＣＴ係数」という）を取得する（ステップＳ３１０）。
【００４９】
次に、ＣＰＵ１６０は、係数抽出部１６５を用いて、上記ステップＳ３１０で取得したＤＣＴ係数から、水平方向の交流周波数成分を表す第１の係数群（以下、「水平エッジパターン」という）と、垂直方向の交流周波数成分を表す第２の係数群（以下、「垂直エッジパターン」という）とを抽出する（ステップＳ３２０）。
【００５０】
このステップＳ３２０については、図７を用いて具体的に説明する。図７は、図６に示したステップＳ３２０の係数群の抽出についての説明図である。図示するように、各ブロックからは、上記ステップＳ３１０の逆量子化が行われた段階で、Ｆ００からＦ７７までの計６４個のＤＣＴ係数が得られる。これらのうち、最も左上に存在する係数Ｆ００は、直流成分と呼ばれ、他の係数は、交流成分と呼ばれる。このうち、係数抽出部１６５は、水平方向のみの交流成分である係数Ｆ０１〜Ｆ０７を水平エッジパターンとして抽出し、垂直方向のみの交流成分である係数Ｆ１０〜Ｆ７０を垂直エッジパターンとして抽出する。
【００５１】
なお、上述の係数取得処理では、ＣＰＵ１６０は、図４（ｂ）に示すように、ウィンドウの高さ分のブロック行（図中の係数群スプール幅）ずつ係数群を取得し、ＲＡＭ１７０にスプールする。そして、上記ステップＳ１００の注目ウィンドウが左端から右方向へウィンドウの幅分ずつ移動し、画像の右端まで到達すると、新たに、係数群を取得する。これは、ＪＰＥＧデータが常にデータの先頭からしかスキャンできない性質を有しているためである。
【００５２】
一方、上記ステップＳ３００において、画像データがＪＰＥＧデータでないと判断されれば（ステップＳ３００：ＮＯ）、ＣＰＵ１６０は、判定動作部１６２を用いて、画像データがビットマップデータであるか否かを判断する（ステップＳ３３０）。その結果、ビットマップデータであれば（ステップＳ３３０：ＹＥＳ）、ＣＰＵ１６０は、ＪＰＥＧ画像エンコード部１６３を動作させて、ビットマップデータのうち、ＲＧＢ色空間のＧ成分を８画素×８画素のブロックを単位としてＤＣＴ変換して、８個×８個のＤＣＴ係数を取得する（ステップＳ３４０）。そして、上記ステップＳ３２０へ進み、ＪＰＥＧデータの場合と同様に、水平エッジパターン及び垂直エッジパターンを抽出する。
【００５３】
また、上記ステップＳ３３０において、画像データがビットマップデータでないと判断されれば（ステップＳ３３０：ＮＯ）、画像データは、各画素がＲＧＢ色空間のうち、いずれかひとつの色成分しか情報として持っていないＲＡＷデータの画像であるということである。この場合、ＣＰＵ１６０は、ＪＰＥＧエンコード部１６３を動作させて、各画素のＧ成分を、その周囲の画素から補間して算出する（ステップＳ３５０）。そして、上記ステップＳ３４０に進み、ビットマップデータと同様に、Ｇ成分をＤＣＴ変換し、さらに、上記ステップＳ３２０に進み、水平エッジパターン及び垂直エッジパターンを抽出する。
【００５４】
上述のステップＳ３５０については、図８を用いて具体的に説明する。図８は、図６に示したステップ３５０のＲＡＷデータのＧ成分の補間についての説明図である。図中のＲ１〜Ｒ４，Ｇ１〜Ｇ８，Ｂ１〜Ｂ４は、ＲＡＷデータを構成する各画素を表しており、Ｇ，Ｂ，Ｒは、各画素が情報として持っている、ＲＧＢ色空間のＲ成分，Ｇ成分，Ｂ成分を表している。本実施例のＲＡＷデータは、図示するように、Ｇ成分の画素が市松状に配置され、残りの画素はＲ成分とＢ成分で２分されるベイヤ配列の画像データである。
【００５５】
上記ステップＳ３５０の処理は、Ｇ成分を情報として持たない画素について、当該画素の周辺のＧ成分の画素から補間して、仮想的なＧ成分を算出する処理である。例えば、Ｒ成分の画素Ｒ１の仮想的なＧ成分は、その周辺のＧ成分の画素Ｇ１，Ｇ３，Ｇ５，Ｇ４のＧ成分の平均値として算出される。同様に、その他のＲ成分の画素やＢ成分の画素についても、周囲のＧ成分の平均値として算出される。なお、本実施例においては、画像データの画素配置がベイヤ配列である場合の例を示したが、他の画素配置であっても、周囲の画素値が反映される方法により補間すればよい。
【００５６】
以上により、一連の係数取得処理が終了し、図５のぼやけ判定処理に戻る。なお、本実施例においては、画像データがビットマップデータまたはＲＡＷデータである場合には、ＲＧＢ色空間の中で最も人間の眼の分光感度が高いＧ成分をＤＣＴ変換して水平エッジパターン及び垂直エッジパターンを抽出した。こうすることで、ＪＰＥＧデータと同様に輝度値をＤＣＴ変換した水平エッジパターン及び垂直エッジパターンを抽出する場合と比べて、ＲＧＢ色空間から輝度値を算出する処理を省略できるので、処理を高速化することができる。ただし、水平エッジパターン及び垂直エッジパターンの抽出は、このような方法に限られるものではなく、他の方法を用いてもよい。例えば、ＲＧＢ色空間（画像データがＲＡＷデータである場合には、周辺画素の補間により算出する）をＹＣｒＣｂ色空間に変換してＹ成分（輝度値）を用いたり、ＨＳＶ色空間に変換してＶ成分（明度）を用いたりしてもよい。なお、ＨＳＶ色空間のＶ成分は、ＲＧＢ色空間の各階調値の最大値として与えられる。
【００５７】
なお、本実施例においては、上記ステップ３００，Ｓ３３０における対象画像の種類の判断は、判定動作部１６２がＥＸＩＦ情報を参照して行うこととしたが、ファイルの拡張子から判断するなど別の方法を用いてもよい。
【００５８】
ここで、説明を図５に戻す。上記ステップＳ１２０において係数取得処理が完了すると、あるいは、上記ステップＳ１１０において、係数が取得済みであると判断されると（ステップＳ１１０：ＹＥＳ）、ＣＰＵ１６０は、パターン照合部１６６を用いて、エッジパターン照合処理を実行する（ステップＳ１３０）。この処理は、ブロック内の画素値の代表的な変化形状を係数群によって表した複数種類の基本エッジパターンを分類して記憶したエッジパターンテーブル１８１から、上記ステップＳ１２０において取得された係数群（水平エッジパターン、垂直エッジパターン）の変化形状に近似する基本エッジパターンをエッジパターンテーブル１８１から選出し、その基本エッジパターンに割り振られたパターン番号をＲＡＭ１７０に保存するための処理である（詳細な処理内容については「Ａ−４．エッジパターン照合処理の詳細」で後述）。
【００５９】
エッジパターン照合処理が行われると、ＣＰＵ１６０は、ぼやけ判定部１６７を用いて、ＲＡＭ１７０に保存されたパターン番号を参照して、エッジ連結処理を実行する（ステップＳ１４０）。このエッジ連結処理では、上記ステップＳ１３０で選出された基本エッジパターンについて、注目ブロックと隣接するブロックが同じ傾き方向であれば、これらのブロック同士のぼやけ幅（画素値の変化の勾配の幅）を累積加算し、注目ブロックのぼやけ幅が算出される（詳細な処理内容については、「Ａ−５．エッジ連結処理の詳細」で後述）。
【００６０】
エッジ連結処理が行われると、ＣＰＵ１６０は、ぼやけ判定部１６７を用いて、ブロックぼやけ判定処理を実行する（ステップＳ１５０）。この処理は、エッジ連結処理によって算出されたぼやけ幅に基づき、注目ブロックがぼやけているか否かを判定するための処理である。本実施例においては、かかる処理の実行結果として、注目ブロックが、「ぼやけブロック」、「合焦ブロック」、「平坦ブロック」のいずれかの判定結果として取得される。なお、本実施例における「平坦」とは、ブロック内の色の変化が少ない状態をいい、平坦ブロックは、ぼやけの判定を行いにくいため、ぼやけブロックと合焦ブロック以外にこのような区分を設けている（詳細な処理内容については「Ａ−６．ブロックぼやけ判定処理の詳細」で後述）。
【００６１】
ブロックぼやけ判定処理の判定がなされると、ＣＰＵ１６０は、ぼやけ判定部１６７を用いて、その注目ウィンドウ領域全体について、ウィンドウぼやけ判定処理を行う（ステップ１６０）。この処理は、上記ステップＳ１５０でなされたブロックごとのぼやけ判定結果を集計して、ウィンドウ領域としてのぼやけ判定を行うものである（詳細な処理内容については「Ａ−７．ウィンドウぼやけ判定処理の詳細」で後述）。
【００６２】
上記ステップＳ１６０においてウィンドウぼやけ判定処理が終了すると、ＣＰＵ１６０は、この判定処理の判定結果に基づき、現在のウィンドウ領域が合焦ウィンドウであるか否かを判断する（ステップＳ１７０）。その結果、当該ウィンドウが合焦ウィンドウであれば（ステップＳ１７０：ＹＥＳ）、現在入力している画像データが合焦画像であると判定し（ステップＳ１８０）、上述した一連のぼやけ判定処理を終了する。つまり、画像内のいずれかのウィンドウ領域が合焦ウィンドウであると判定された時点で、図３のステップＳ１０で入力した画像データが合焦画像であると判断することになる。こうすることで、画像内のいずれかのウィンドウ領域が合焦ウィンドウであれば、画像内のすべてのウィンドウ領域についてぼやけの有無を判定する必要がないため、ぼやけ判定処理に要する時間を高速化することができる。
【００６３】
これに対して、上記ステップＳ１６０においてウィンドウぼやけ判定処理を行ったウィンドウ領域が、ぼやけウィンドウであると判断された場合には（ステップＳ１７０：ＮＯ）、ＣＰＵ１６０は、続いて、現在の注目ウィンドウが、最終ウィンドウであるかを判断する（ステップＳ１９０）。この結果、現在の注目ウィンドウが、最終ウィンドウであると判断されれば（ステップＳ１９０：ＹＥＳ）、どのウィンドウ領域も合焦ウィンドウではなかったと判断できるため、現在入力している画像データはぼやけ画像であると判定して（ステップＳ２００）、上述した一連のぼやけ判定処理を終了する。一方、現在の注目ウィンドウが最終ウィンドウでなければ（ステップＳ１９０：ＮＯ）、ＣＰＵ１６０は、上記ステップＳ１００へ処理を戻し、次の位置のウィンドウについて、上述した種々の処理を繰り返し実行する。
【００６４】
かかる構成の画像処理装置は、対象画像の種類を判断して、その画像の種類に応じた処理を行うことによって画素の変化を表す係数群を取得し、その係数群に基づいて同一の方法によりぼやけ判定を行うため、同一のぼやけ判定手段により種々の画像形式に効率的に対応したぼやけ判定を行うことができる。
【００６５】
また、かかる構成の画像処理装置は、ブロックごとのぼやけ幅を連結処理して、複数のブロック間に及ぶぼやけ幅を算出することができるので、ぼやけの幅が１つのブロックのサイズを超える場合においても、精度良く画像がぼやけているか否かを判断することができる。さらに、複数のブロックによって構成されるウィンドウ領域毎にぼやけの有無を判断することができるので、より人の感性に近い精度で画像にぼやけが生じているかを判断することが可能になる。このようなサイズのウィンドウ領域内が画像中のいずれかの箇所でぼやけていないと判断されれば、その領域に焦点が合っているものと判断することができるためである。
【００６６】
Ａ−４．エッジパターン照合処理の詳細：
図９は、図５に示したぼやけ判定処理のステップＳ１３０で実行されるエッジパターン照合処理のフローチャートである。ＣＰＵ１６０は、ぼやけ判定部１６７を用いて、次の手順により、エッジパターン照合処理を実行する。
【００６７】
この処理が実行されると、まず、ＣＰＵ１６０は、ぼやけ判定処理のステップＳ１２０で抽出した水平エッジパターン及び垂直エッジパターン（図７参照）を取得する（ステップＳ４００）。当該エッジパターン照合処理では、水平エッジパターンと垂直エッジパターンとについてそれぞれ同様の処理が実行されるため、以下では、これらを代表して、水平方向のＤＣＴ係数を表す水平エッジパターンに対する処理を説明する。
【００６８】
ＣＰＵ１６０は、上記ステップＳ４００によって、水平エッジパターンを取得すると、この水平エッジパターンを構成する各係数Ｆ０１〜Ｆ０７の絶対値の和を求め、これが所定の閾値Ｔｈ１（例えば、８０）を超えるか否かを判定する（ステップＳ４１０）。第１の係数群の絶対値の和Ｓは、下記式（１）によって求めることができる。
Ｓ＝Σ｜Ｆ０ｉ｜  （ｉ＝１〜７）    ・・・（１）
【００６９】
上記ステップＳ４１０において、第１の係数群の絶対値の和Ｓが閾値Ｔｈ１以下であると判断されれば（ステップＳ３１０：ＮＯ）、そのブロックの水平方向の輝度変化は、平坦であると見なすことができる。したがって、かかるブロックのエッジパターンのパターン番号を「平坦」と決定する（ステップＳ４６０）。
【００７０】
上記ステップＳ４１０において、第１の係数群の絶対値の和Ｓが閾値Ｔｈ１を超えると判断されれば（ステップＳ４１０：ＹＥＳ）、そのブロックの水平方向には、なんらかの輝度変化があると判断できる。そこで、まず、ＣＰＵ１６０は、水平エッジパターンの各係数値Ｆ０１〜Ｆ０７について下記式（２）に基づき正規化を行う（ステップＳ４２０）。下記式（２）によれば、正規化後の各係数値Ｆｒ０１〜Ｆｒ０７は、第１の係数群の絶対値の和Ｓで、それぞれの係数値Ｆ０１〜Ｆ０７を除算した値となる。
Ｆｒ０ｊ＝Ｆ０ｊ／Ｓ    （ｊ＝１〜７）    ・・・（２）
【００７１】
次に、ＣＰＵ１６０は、ＲＯＭ１８０に記憶されたエッジパターンテーブル１８１を参照する（ステップＳ４３０）。
【００７２】
ここで、エッジパターンテーブル１８１について説明する。図１０は、エッジパターンテーブル１８１の一例を示す説明図である。このエッジパターンテーブル１８１には、「Ａ１」から「Ａ１６」までのパターン番号（図の１列目）に対して１６種類の基本エッジパターン（図の３列目）が対応付けて記録されている。基本エッジパターンの横軸は、ブロック内の係数の位置（Ｆ０１〜Ｆ０７）を表しており、縦軸は、正規化後の係数値Ｆｒを表している。つまり、基本エッジパターンは、７つの係数値からなるデータである。
【００７３】
各基本エッジパターンは、図の２列目に示した輝度パターンに基づき生成されている。すなわち、図の２列目に示した輝度パターンをＤＣＴ変換して正規化したものが図の３列目に示す基本エッジパターンとなる。なお、図中の輝度パターンは、実際には、エッジパターンテーブル１８１には記録されておらず、理解の便のために記載している。各輝度パターンは、１ブロック内で傾きの符号が変化しない輝度変化の典型的な形状を、予め１６種類に分類したものである。本実施例では、このように、基本エッジパターンを１６種類に分類するものとするが、より多くのパターンに分類するものとしてもよい。
【００７４】
エッジパターンテーブル１８１には、更に、基本エッジパターンに対応付けて左側エッジ幅ＬＷと、中央エッジ幅ＭＷと、右側エッジ幅ＲＷという３種類のパラメータが記録されている。左側エッジ幅ＬＷは、輝度パターンの左側に存在する平坦部の幅を表しており、右側エッジ幅ＲＷは、輝度パターンの右側に存在する平坦部の幅を表している。また、中央エッジ幅ＭＷは、左側エッジ幅ＬＷと右側エッジ幅ＲＷとに挟まれる勾配部分の幅を表している。
【００７５】
なお、図示を省略しているが、このエッジパターンテーブル１８１には、「Ａ１」から「Ａ１６」までの基本エッジパターンに加え、これらの基本エッジパターンを左右反転させたエッジパターンがパターン番号Ｂ１〜Ｂ１６に定義されており、上下反転させたエッジパターンがパターン番号Ｃ１〜Ｃ１６に定義されている。また、「Ａ１」から「Ａ１６」までの基本エッジパターンを上下および左右に反転させたエッジパターンがパターン番号Ｄ１〜Ｄ１６に定義されている。つまり、全体で、６４種類の基本エッジパターンがこのエッジパターンテーブル１８１に定義されている。
【００７６】
ここで説明を図９戻す。エッジパターンテーブル１８１を参照すると、ＣＰＵ１６０は、上記ステップＳ４２０で正規化を行った各係数値Ｆｒ０１〜Ｆｒ０７と、基本エッジパターンを構成する各係数値Ｆｂ０１〜Ｆｂ０７との誤差ＳＤを算出し、この誤差ＳＤが所定の閾値Ｔｈ２以下となる基本エッジパターンがあるか否かを判断する（ステップＳ４４０）。なお、本実施例においては、誤差ＳＤは、下記式（３）に従って算出した。
ＳＤ＝Σ｜Ｆｒ０ｋ−Ｆｂ０ｋ｜    （ｋ＝１〜７）    ・・・（３）
【００７７】
上記ステップＳ４４０において、誤差ＳＤが所定の閾値Ｔｈ２以下となる基本エッジパターンがあると判断されれば（ステップＳ４４０：ＹＥＳ）、ＣＰＵ１６０は、最も誤差ＳＤが小さくなる基本エッジパターンに対応付けられたパターン番号を取得し、ＲＡＭ１７０に保存する（ステップＳ４５０）。一方、所定の閾値Ｔｈ２以下となる基本エッジパターンがないと判断されれば（ステップＳ４７０：ＮＯ）、近似する基本エッジパターンが検索されなかったとして、パターン番号「不明」を取得し、ＲＡＭ１７０に保存する（ステップＳ４７０）。
【００７８】
以上の処理によって、注目ブロックのパターン番号が決定すると、上述した一連のエッジパターン照合処理は終了し、図５に示したぼやけ判定処理に戻る。
【００７９】
かかる構成のエッジパターン照合処理は、ブロック内の画素値の変化が小さいと判断される場合には、ステップＳ４２０〜ステップＳ４５０の基本エッジパターンの選出を省略できるため、エッジパターン照合処理を高速化することができる。
【００８０】
Ａ−５．エッジ連結処理の詳細：
図１１は、図５に示したぼやけ判定処理のステップＳ１４０で実行されるエッジ連結処理のフローチャートである。この処理は、上下左右に隣接したブロックに基づき、中央のブロック（注目ブロック）のぼやけ幅を決定するための処理である。かかる処理は、水平方向と垂直方向とについて行われるが、説明を簡単にするため、特記しない限り、水平方向に対して行われる処理の説明をする。ＣＰＵ１６０は、ぼやけ判定部１６７を用いて、次の手順により、エッジ連結処理を実行する。
【００８１】
この処理が開始されると、まず、ＣＰＵ１６０は、エッジ連結処理を行うべき注目ブロックをその連なりに沿って移動する（ステップＳ５００）。最初の移動先は、注目ウィンドウの最も左上に存在するブロックである。注目ブロックは、ステップＳ５００の処理が実行される度に、右方向へ移動し、注目ウィンドウの右端まで到達すると、左端に戻ると共にブロックの高さ分だけ下に移動し、再度、右方向へ移動する。
【００８２】
注目ブロックを移動すると、ＣＰＵ１６０は、現在の注目ブロックのパターン番号をＲＡＭ１７０から取得する（ステップＳ５１０）。
【００８３】
次に、ＣＰＵ１６０は、ステップＳ５１０で取得したパターン番号が「不明」または「平坦」であるかを判断する（ステップＳ５２０）。この判断の結果、パターン番号が「不明」または「平坦」であれば（ステップＳ５２０：ＹＥＳ）、上記ステップＳ１３０のエッジパターン照合処理において、注目ブロックの水平方向の輝度変化が基本エッジパターンのいずれにも近似しないか、平坦であると判定されていることになる（図９のステップＳ４６０，Ｓ４７０参照）。本実施例では、基本エッジパターンのいずれにも近似しない場合も「平坦」として扱い、注目ブロックのぼやけ幅を「０」と確定する（ステップＳ５９０）。こうして確定したぼやけ幅を、以下では、「確定ぼやけ幅ＤＷ」というものとする。
【００８４】
上記ステップＳ５２０において、パターン番号が「不明」または「平坦」ではないと判断されれば（ステップＳ５２０：ＮＯ）、ＣＰＵ１６０は、注目ブロックの右側（垂直方向のエッジ連結処理の場合には下側）に隣接するブロック（以下、「隣接ブロックという」）のパターン番号をＲＡＭ１７０から取得する（ステップＳ５３０）。そして、注目ブロックのパターン番号と、隣接ブロックのパターン番号とを対比して、これらのブロックの基本エッジパターンの傾き方向が一致するかを判断する（ステップＳ５４０）。
【００８５】
図１２は、注目ブロックと隣接ブロックとで基本エッジパターンの傾き方向が一致する例を示す説明図である。図示した例では、両ブロックの傾きは、共に右下がりであるため、両者の傾き方向は一致しているといえる。注目ブロックと隣接ブロックの傾き方向が一致する組み合わせとしては、以下のようなパターン番号の組み合わせがある。つまり、ＣＰＵ１６０は、注目ブロックのパターン番号と隣接ブロックのパターン番号の組み合わせが、以下に示す（１）から（８）のいずれかの組み合わせに含まれれば、これらの傾き方向が一致すると判断することができる。
【００８６】
注目ブロックＮｏ．    隣接ブロックＮｏ．
（１）Ａ１〜Ａ１６          Ａ１〜Ａ１６
（２）Ａ１〜Ａ１６          Ｄ１〜Ｄ１６
（３）Ｂ１〜Ｂ１６          Ｂ１〜Ｂ１６
（４）Ｂ１〜Ｂ１６          Ｃ１〜Ｃ１６
（５）Ｃ１〜Ｃ１６          Ｃ１〜Ｃ１６
（６）Ｃ１〜Ｃ１６          Ｂ１〜Ｂ１６
（７）Ｄ１〜Ｄ１６          Ｄ１〜Ｄ１６
（８）Ｄ１〜Ｄ１６          Ａ１〜Ａ１６
【００８７】
図１３は、注目ブロックと隣接ブロックとで基本エッジパターンの傾き方向が一致しない例を示す説明図である。図示した例では、注目ブロックの傾きが右下がりであるのに対して、隣接ブロックの傾きが右上がりであることから、両者の傾きは一致していないと言える。両ブロックの傾き方向が一致しないパターン番号の組み合わせは、上述した（１）から（８）以外の組み合わせである。
【００８８】
上記ステップＳ５４０において、傾き方向が一致すると判断された場合には（ステップＳ５４０：ＹＥＳ）、ＣＰＵ１６０は、続いて、注目ブロックの右側エッジ幅ＲＷと、隣接ブロックの左側エッジ幅ＬＷの加算値が、所定の連結誤差閾値Ｔｈ３以内であるかを判断する（ステップＳ５５０）。なお、この判断に先立ち、ＣＰＵ１６０は、隣接ブロックのパターン番号から、エッジパターンテーブル１８１を参照して、その左側エッジ幅ＬＷを取得するものとする。
【００８９】
図１４は、注目ブロックの右側エッジ幅ＲＷと隣接ブロックの左側エッジ幅ＬＷの加算値と連結誤差閾値Ｔｈ３との比較の様子を示す説明図である。図示するように、注目ブロックの基本エッジパターンの右側に存在する平坦部（右側エッジ幅ＲＷ）と、隣接ブロックの基本エッジパターンの左側に存在する平坦部（左側エッジ幅ＬＷ）との和が大きく、連結誤差閾値Ｔｈ３を超えるような場合には、注目ブロックと隣接ブロックとでは勾配が連続せず、別々のぼやけ部分を形成していると判断することができる。そのため、上記ステップＳ５５０では、「ＮＯ」と判定される。これに対して、上述した和が小さく、連結誤差閾値Ｔｈ３以下となる場合には、注目ブロックのエッジパターンと隣接ブロックのエッジパターンとは連続した勾配であると考えることができるため、上記ステップＳ５５０では、「ＹＥＳ」と判定される。
【００９０】
上記ステップＳ５５０において、注目ブロックの右側エッジ幅ＲＷと、隣接ブロックの左側エッジ幅ＬＷの加算値が、所定の連結誤差閾値Ｔｈ３以内であると判定されれば（ステップＳ５５０：ＹＥＳ）、ＣＰＵ１６０は、これまで左側（垂直方向のエッジ連結処理にあっては、上側）のブロックに累積されている累積ぼやけ幅ＣＷをＲＡＭ１７０から読み込む。そして、この累積ぼやけ幅ＣＷに注目ブロックの左側エッジ幅ＬＷと中央エッジ幅ＭＷとを加算する処理を行う（ステップＳ６００）。こうして新たな累積ぼやけ幅ＣＷを求めると、ＣＰＵ１６０は、新たな値をＲＡＭ１７０に上書きして更新する。こうすることで、隣接ブロック同士でエッジパターンの傾きが一方向に連続していく場合には、各ブロックのぼやけ幅を順次累積していくことができる。なお、本実施例においては、上記ステップＳ６００では、ＣＰＵ１６０は、注目ブロックの確定ぼやけ幅ＤＷを便宜的に「０」と確定する。つまり、ぼやけ幅を累積する場合には、その累積途中のブロックについては、一律に平坦なブロックであるとみなすのである。
【００９１】
図１５は、上記ステップＳ６００における累積ぼやけ幅ＣＷの算出概念を示す説明図である。図示するように、上記ステップＳ６００では、これまでの累積ぼやけ幅ＣＷに対して、注目ブロックの左側エッジ幅ＬＷと中央エッジ幅ＭＷとを加算した値を、新たな累積ぼやけ幅ＣＷとする。なお、かかる演算に先立ち、ＣＰＵ１６０は、エッジパターンテーブル１８１を参照して、注目ブロックのパターン番号に対応する左側エッジ幅ＬＷと中央エッジ幅ＭＷとを取得するものとする。
【００９２】
上記ステップＳ５４０において、注目ブロックの傾き方向と隣接ブロックの傾き方向とが一致しないと判断された場合（ステップＳ５４０：ＮＯ）、もしくは、上記ステップＳ５５０において、注目ブロックの右側エッジ幅ＲＷと隣接ブロックの左側エッジ幅ＬＷとの和が連結誤差閾値Ｔｈ３を超えると判断された場合（ステップＳ５５０：ＮＯ）には、ＣＰＵ１６０は、ＲＡＭ１７０から読み込んだ累積ぼやけ幅ＣＷが「０」であるかを判断する（ステップＳ５６０）。この判断によって累積ぼやけ幅ＣＷが「０」であると判断されれば（ステップＳ５６０：ＹＥＳ）、注目ブロックはぼやけの生じる開始点であり、更に、上記ステップＳ５４０，Ｓ５５０における判定結果によれば、右側（垂直方向のエッジ連結処理にあっては、下側）の隣接ブロックともエッジパターンが連続しないことになるため、注目ブロックは、単独のエッジパターンを有すると判断することができる。従って、ＣＰＵ１６０は、注目ブロックの中央エッジ幅ＭＷを確定ぼやけ幅ＤＷとして確定する（ステップＳ６１０）。なお、ＣＰＵ１６０は、かかる処理に先立ち、エッジパターンテーブル１８１を参照して、注目ブロックのパターン番号に対応する中央エッジ幅ＭＷを取得するものとする。
【００９３】
上記ステップＳ５６０において、累積ぼやけ幅ＣＷが「０」ではないと判断されれば、注目ブロックは、右側（垂直方向のエッジ連結処理にあっては、下側）の隣接ブロックとは連続しないが、左側（垂直方向のエッジ連結処理にあっては、上側）の隣接ブロックとは連続することになる。つまり、注目ブロックは、ぼやけ部分の終端に該当することになる。そのため、ＣＰＵ１６０は、ＲＡＭ１７０から読み込んだ累積ぼやけ幅ＣＷに注目ブロックの左側エッジ幅ＬＷと中央エッジ幅ＭＷとを加算し、この値を確定ぼやけ幅ＤＷとして確定する（ステップＳ５７０）。なお、ＣＰＵ１６０は、かかる処理に先立ち、エッジパターンテーブル１８１を参照して、注目ブロックのパターン番号に対応する左側エッジ幅ＬＷと中央エッジ幅ＭＷとを取得するものとする。
【００９４】
続いて、ＣＰＵ１６０は、現在の注目ブロックが、注目ウィンドウ領域の最終ブロックであるかを判断する（ステップＳ５８０）。この結果、現在の注目ブロックが、最終ブロックであると判断されれば（ステップＳ５８０：ＹＥＳ）、上述した一連のエッジ連結処理を終了し、図５に示したぼやけ判定処理に戻る。一方、現在の注目ブロックが最終ブロックでなければ（ステップＳ５８０：ＮＯ）、ＣＰＵ１６０は、上記ステップＳ５００へ処理を戻し、次の位置のブロックについて、上述した種々の処理を繰り返し実行する。
【００９５】
かかる構成のエッジ連結処理は、基本エッジパターンに対応付けられたパターン番号と、基本エッジパターンに対応付けられたエッジ幅（ＬＷ、ＭＷ、ＲＷ）を用いて、エッジの連結を行うので、エッジパターン照合処理を高速化することができる。
【００９６】
Ａ−６．ブロックぼやけ判定処理の詳細：
図１６は、図５に示したぼやけ判定処理のステップＳ１５０で実行されるブロックぼやけ判定処理のフローチャートである。この処理は、上述したエッジ連結処理に引き続いて実行される処理であり、注目ブロックが合焦しているか否かを判定する処理である。ＣＰＵ１６０は、ぼやけ判定部１６７を用いて、次の手順により、ブロックぼやけ判定処理を実行する。
【００９７】
この処理が開始されると、まず、ＣＰＵ１６０は、ブロックぼやけ判定処理を行うべき注目ブロックをその連なりに沿って移動する（ステップＳ７００）。最初の移動先は、注目ウィンドウの最も左上に存在するブロックである。注目ブロックは、ステップＳ７００の処理が実行される度に、右方向へ移動し、注目ウィンドウの右端まで到達すると、左端に戻ると共にブロックの高さ分だけ下に移動し、再度、右方向へ移動する。
【００９８】
次に、ＣＰＵ１６０は、上記ステップＳ１４０のエッジ連結処理で確定された注目ブロックの水平および垂直方向の確定ぼやけ幅ＤＷを取得し（ステップＳ７１０）、２つの確定ぼやけ幅ＤＷのうち、大きい方の値を有する確定ぼやけ幅ＤＷを、最大確定ぼやけ幅ＭＤＷとして決定する（ステップＳ７２０）。
【００９９】
最大確定ぼやけ幅ＭＤＷを決定すると、ＣＰＵ１６０は、この最大確定ぼやけ幅ＭＤＷが「０」であるか否かを判断する（ステップＳ７３０）。その結果、最大確定ぼやけ幅ＭＤＷが「０」であれば（ステップＳ７３０：ＹＥＳ）、水平方向、垂直方向共に大きな輝度変化がない（本実施例では、基本エッジパターンが不明なもの、ぼやけの途中に存在するブロックを含む）ということであり、ＣＰＵ１６０は、注目ブロックは「平坦ブロック」であると判定する（ステップＳ７４０）。
【０１００】
上記ステップＳ７３０において、最大確定ぼやけ幅ＭＤＷが「０」でなければ（ステップＳ７３０：ＮＯ）、ＣＰＵ１６０は、最大確定ぼやけ幅ＭＤＷが所定のぼやけ幅閾値Ｔｈ４（例えば、「１６」）以下であるか否かを判定する（ステップＳ７５０）。かかる判定の結果、最大確定ぼやけ幅ＭＤＷがこの条件を満たせば（ステップＳ７５０：ＹＥＳ）、注目ブロックは「合焦ブロック」であると判定する（ステップＳ７７０）。これに対して、最大確定ぼやけ幅ＭＤＷが所定のぼやけ幅閾値Ｔｈ４よりも大きければ（ステップＳ７５０：ＮＯ）、注目ブロックは「ぼやけブロック」であると判定する（ステップＳ７６０）。
【０１０１】
以上の処理により、現在の注目ブロックが、「合焦ブロック」か「ぼやけブロック」か「平坦ブロック」かの判定が終了すると、続いて、ＣＰＵ１６０は、現在の注目ブロックが、注目ウィンドウ領域の最終ブロックであるかを判断する（ステップＳ７８０）。この結果、現在の注目ブロックが、最終ブロックであると判断されれば（ステップＳ７８０：ＹＥＳ）、上述した一連のブロックぼやけ判定処理を終了し、図５に示したぼやけ判定処理に戻る。一方、現在の注目ブロックが最終ブロックでなければ（ステップＳ７８０：ＮＯ）、ＣＰＵ１６０は、上記ステップＳ７００へ処理を戻し、次の位置のブロックについて、上述した種々の処理を繰り返し実行する。
【０１０２】
以上で説明したブロックぼやけ判定処理によれば、水平方向の確定ぼやけ幅ＤＷと垂直方向の確定ぼやけ幅ＤＷとのうち、その値が大きい方の確定ぼやけ幅ＤＷを最大確定ぼやけ幅ＭＤＷとして決定し、この最大確定ぼやけ幅ＭＤＷが所定のぼやけ幅閾値Ｔｈ４以上であれば、注目ブロックがぼやけていると判断する。よって、一方向で判断する場合と比べて、精度良くぼやけ判定を行うことができる。
【０１０３】
Ａ−７．ウィンドウぼやけ判定処理の詳細：
図１７は、図５に示したぼやけ判定処理のステップＳ１６０で実行されるウィンドウぼやけ判定処理のフローチャートである。上述したブロックぼやけ判定処理がブロック毎にぼやけの有無を判定する処理であるのに対して、このウィンドウぼやけ判定処理は、ブロックぼやけ判定処理の結果に基づき、図４（ｂ）に示したウィンドウ領域毎にぼやけの有無を判定する処理である。ＣＰＵ１６０は、ぼやけ判定部１６７を用いて、次の手順により、ウィンドウぼやけ判定処理を実行する。
【０１０４】
この処理が実行されると、ＣＰＵ１６０は、上記ステップ１５０のブロックぼやけ判定処理の判定結果を用いて、注目ウィンドウ内の全てのブロックについて、合焦ブロック数とぼやけブロック数を集計する（ステップＳ８００）。
【０１０５】
上記ステップＳ８００によって、ブロック数を集計すると、ＣＰＵ１６０は、次式（４）で示すように、合焦ブロック数Ｎｆを、合焦ブロック数Ｎｆとぼやけブロック数Ｎｎの和で除して得られる合焦ブロック率Ｒｆを計算し、この合焦ブロック率Ｒｆが所定の合焦閾値Ｔｈ５以上であるかを判断する（ステップＳ８１０）。
Ｒｆ＝Ｎｆ／（Ｎｆ＋Ｎｎ）・・・（４）
【０１０６】
かかる判定の結果、合焦ブロックの総数が合焦閾値Ｔｈ５以上であれば（ステップＳ８１０：ＹＥＳ）、現在の注目ウィンドウを「合焦ウィンドウ」と判定し（ステップＳ８３０）、合焦密度閾値に満たなければ（ステップＳ８１０：ＮＯ）、「ぼやけウィンドウ」と判定して、図５に示したぼやけ判定処理に戻る（ステップＳ８２０）。
【０１０７】
Ｂ．変形例：
Ｂ−１．変形例１
図１８は、変形例としての、図５に示すぼやけ判定処理のステップＳ１２０で実行される係数取得処理の手順を示すフローチャートである。この処理が実施例の係数取得処理と異なる点は、画像データがＲＡＷデータであると判断された場合の処理（ステップＳ９５０〜Ｓ９７０）であり、その他の点は、実施例と同様である（ステップＳ９００〜Ｓ９４０は、上述の実施例のステップＳ３００〜Ｓ３４０と同一の処理）。したがって、ステップＳ９５０〜Ｓ９７０について説明する。
【０１０８】
ステップＳ９３０において、画像データがビットマップデータでないと判断されれば（ステップＳ９３０：ＮＯ）、画像データは、各画素がＲＧＢ色空間のうち、いずれかの色成分しか情報として持っていないＲＡＷデータであるということである。この場合、ＣＰＵ１６０は、判定動作部１６２を用いて、このＲＡＷデータが有するＥＸＩＦ情報の中にＪＰＥＧ形式のサムネイルがあるか否かを判断する（ステップＳ９５０）。
【０１０９】
その結果、ＪＰＥＧ形式のサムネイルがあれば（ステップＳ９５０：ＹＥＳ）、ＣＰＵ１６０は、ＪＰＥＧデコード部１６４を動作させ、このサムネイルデータの輝度成分に対応するデータをハフマン復号化及び逆量子化して、ブロック（ＭＣＵ）ごとに、８個×８個のＤＣＴ係数を取得し（ステップＳ９７０）、ステップＳ９２０に進む。
【０１１０】
一方、ＪＰＥＧ形式のサムネイルがなければ（ステップＳ９５０：ＮＯ）、ＣＰＵ１６０は、ＪＰＥＧエンコード部１６３を動作させて、各画素のＧ成分を、その周囲の画素から補間して算出し（ステップＳ９６０）、ステップＳ９４０に進み、更に、ステップＳ９２０に進む。このステップＳ９６０の処理は、上記ステップＳ３５０の処理と同一の処理である。
【０１１１】
かかる構成の画像処理装置は、画像データがＲＡＷデータであり、かつＥＸＩＦ情報の中にＪＰＥＧ形式のサムネイルがある場合には、サムネイルデータをハフマン復号化及び逆量子化して、ＤＣＴ係数を取得する。したがって、ＲＡＷデータのＲＧＢ色空間の色成分を補間して、ＤＣＴ変換する場合と比較して、処理を高速化することができる。
【０１１２】
Ｂ−２．変形例２：
本実施例においては、図５に示したステップＳ１２０の係数取得処理において、水平方向と垂直方向のＤＣＴ係数を表す水平エッジパターンと垂直エッジパターンとを抽出し、これを基に、ステップＳ１３０以降のぼやけ判定処理を行ったが、これに限られるものではない。ステップＳ１２０において、所定の一方向のみ、例えば、水平エッジパターンのみを抽出してもよい。こうすれば、処理を高速化することができる。あるいは、更に多くのエッジパターン、例えば、水平方向、垂直方向、水平方向と４５度の角度をなす方向について、エッジパターンを抽出してもよい。こうすれば、より精度の高いぼやけ判定を行うことができる。
【０１１３】
Ｂ−３．変形例３：
本実施例においては、図５に示したステップＳ１２０の係数取得処理の中で、入力された画像データの形式の判定を行うこととしたが、これに限られるものではない。例えば、画像データが入力された際に、画像データの形式を判定し、係数取得処理の中では、その判定結果に応じた処理ルーチンにより係数群を取得してもよい。こうすれば、処理を高速化することができる。
【０１１４】
Ｂ−４．変形例４：
本実施例においては、請求項の、所定数の画素からなるブロックを単位として周波数領域で画像を表現する複数の係数であり、少なくとも圧縮のための符号化が行われた係数から構成されたデジタルデータ（第１の形式の画像データ）の例として、ＹＣｒＣｂ色空間の画素値をＤＣＴ変換したＪＰＥＧデータについて示したが、これに限られるものではない。例えば、離散フーリエ変換（ＤＦＴ変換）やウェーブレット変換、カルーネン・レーベ変換など、他の方法により周波数領域で画像を表現する画像データについても、図５に示したステップＳ１２０の係数取得処理において、それらの変換方法に対応したデコード部により、ＤＣＴ係数に代わる係数群を取得してぼやけ判定処理に用いることで適用可能である。
【０１１５】
また、請求項の、所定の色空間の階調値で表現された画素の集合として構成されたデジタルデータ（第２の形式の画像データ）であって、所定の色空間のいずれかの色成分の階調値で表現された画素の集合体として構成されたデジタルデータ（第３の形式の画像データ）でないデジタルデータの例として、ＲＧＢ色空間のビットマップデータについて示したが、これに限られるものではない。例えば、ＹＣｒＣｂなど、他の色空間で階調値の情報を持つ画像データであっても、図５に示したステップＳ１２０の係数取得処理において、輝度値を空間領域から周波数領域へ変換したり、当該色空間の階調値をＲＧＢ色空間の階調値に変換して、Ｇ成分を空間領域から周波数領域へ変換したりして、係数群を取得してぼやけ判定処理に用いることで適用可能である。
【０１１６】
以上、本発明の幾つかの実施例、変形例について説明したが、本発明はこうした実施例に限られるものではなく、本発明の要旨を脱しない範囲において、種々なる態様で実施できることは勿論である。例えば、本発明の画像処理装置は、実施例に示したプリンタに限らず、デジタルスチルカメラ、カメラ付携帯電話、写真画像を拡大確認するためのフォトビューアなどに搭載することができる。もとより、コンピュータに搭載して、コンピュータのモニタで写真画像を取捨選択する場合にも採用可能である。また、ぼやけ検出方法、ぼやけ検出プログラム、またはプログラムを記録したコンピュータで読み取り可能な記録媒体等の形態でも実現することができる。
【図面の簡単な説明】
【０１１７】
【図１】画像処理装置の実施例としてのプリンタ１００の外観を示す説明図である。
【図２】プリンタ１００の内部構成を示す説明図である。
【図３】プリンタ１００の印刷処理のフローチャートである。
【図４】ブロックとウィンドウの概念を示す説明図である。
【図５】印刷処理で実行されるぼやけ判定処理のフローチャートである。
【図６】ぼやけ判定処理で実行される係数所得処理の手順を示すフローチャートである。
【図７】係数群の抽出についての説明図である。
【図８】ＲＡＷデータのＧ成分の補間についての説明図である。
【図９】ぼやけ判定処理で実行されるエッジパターン照合処理のフローチャートである。
【図１０】エッジパターンテーブル１８１の一例を示す説明図である。
【図１１】ぼやけ判定処理で実行されるエッジ連結処理のフローチャートである。
【図１２】注目ブロックと隣接ブロックとで基本エッジパターンの傾き方向が一致する例を示す説明図である。
【図１３】注目ブロックと隣接ブロックとで基本エッジパターンの傾き方向が一致しない例を示す説明図である。
【図１４】注目ブロックの右側エッジ幅ＲＷと隣接ブロックの左側エッジ幅ＬＷの加算値と連結誤差閾値Ｔｈ３との比較の様子を示す説明図である。
【図１５】累積ぼやけ幅ＣＷの算出概念を示す説明図である。
【図１６】ぼやけ判定処理で実行されるブロックぼやけ判定処理のフローチャートである。
【図１７】ぼやけ判定処理で実行されるウィンドウぼやけ判定処理のフローチャートである。
【図１８】変形例としての、ぼやけ判定処理で実行される係数所得処理の手順を示すフローチャートである。
【符号の説明】
【０１１８】
１００...プリンタ
１１０...スキャナ
１２０...メモリカードスロット
１３０...ＵＳＢインタフェース
１４０...操作パネル
１４５...液晶ディスプレイ
１５０...制御ユニット
１６０...ＣＰＵ
１６１...画像データ入力部
１６２...判定動作部
１６３...ＪＰＥＧエンコード部
１６４...ＪＰＥＧデコード部
１６５...係数抽出部
１６６...パターン照合部
１６７...ぼやけ判定部
１７０...ＲＡＭ
１８０...ＲＯＭ
１８１...エッジパターンテーブル
２１０...キャリッジ
２１１...インクヘッド
２１２...インクカートリッジ
２２０...キャリッジモータ
２３０...モータ
２６０...駆動ベルト
２７０...プラテン
２８０...摺動軸
Ｐ...印刷用紙
ＭＣ...メモリカード
【図１】
2008140331.tif 000003
【図２】
2008140331.tif 000004
【図３】
2008140331.tif 000005
【図４】
2008140331.tif 000006
【図５】
2008140331.tif 000007
【図６】
2008140331.tif 000008
【図７】
2008140331.tif 000009
【図８】
2008140331.tif 000010
【図９】
2008140331.tif 000011
【図１０】
2008140331.tif 000012
【図１１】
2008140331.tif 000013
【図１２】
2008140331.tif 000014
【図１３】
2008140331.tif 000015
【図１４】
2008140331.tif 000016
【図１５】
2008140331.tif 000017
【図１６】
2008140331.tif 000018
【図１７】
2008140331.tif 000019
【図１８】
2008140331.tif 000020