(57)【要約】【課題】適正に画像データを評価する。【解決手段】複数の画素で構成された画像データ１３ｂを評価する画像評価を行うにあたり、まず前記画像データ１３ｂにおける複数の大ブロックについてそれぞれエッジブロックの構成比率を先鋭度として取得する。そして、前記大ブロックにオブジェクトとしての顔の少なくとも一部が含まれるか否かに応じた値である閾値Ｔｈを設定する。さらに、各大ブロックについて前記閾値Ｔｈと前記エッジブロックの構成比率の比較を行い、その比較結果に応じて画像データ１３ｂを評価する。【選択図】図７
2009295019.tif 000002
【特許請求の範囲】
【請求項１】
複数の画素で構成された画像データを評価する画像評価方法において、
前記画像データにおける複数のブロックについてそれぞれ先鋭度を取得し、
所定のオブジェクトの少なくとも一部が前記ブロックに含まれるか否かに応じた値である閾値を設定し、
各ブロックについて前記閾値と前記先鋭度の比較を行い、その比較結果に応じて前記画像データを評価することを特徴とする画像評価方法。
【請求項２】
前記ブロックに前記オブジェクトとしての顔の少なくとも一部が含まれる場合には、前記ブロックに前記オブジェクトとしての顔が含まれない場合よりも前記閾値を低先鋭度側に設定することを特徴とする請求項１に記載の画像評価方法。
【請求項３】
前記ブロックに前記オブジェクトとしての顔器官または手の少なくとも一部が含まれる場合には、前記ブロックに前記オブジェクトとしての顔器官または手が含まれない場合よりも前記閾値を低先鋭度側に設定することを特徴とする請求項１に記載の画像評価方法。
【請求項４】
前記ブロックに含まれる前記オブジェクトの面積に応じて前記閾値を調整することを特徴とする請求項１から請求項３のいずれか一項に記載の画像評価方法。
【請求項５】
前記画像データが示す画像から前記オブジェクトを検出し、当該検出された前記オブジェクトの少なくとも一部が前記ブロックに含まれるか否かによって前記閾値を設定することを特徴とする請求項１から請求項４のいずれか一項に記載の画像評価方法。
【請求項６】
複数の画素で構成された画像データを評価する画像評価装置において、
前記画像データにおける複数のブロックについてそれぞれ先鋭度を取得する先鋭度取得手段と、
所定のオブジェクトの少なくとも一部が前記ブロックに含まれるか否かに応じた値である閾値を設定する閾値設定手段と、
各ブロックについて前記閾値と前記先鋭度の比較を行い、その比較結果に応じて前記画像データを評価する評価手段とを具備することを特徴とする画像評価装置。
【請求項７】
複数の画素で構成された画像データを評価する機能をコンピュータに実行させるコンピュータ読み取り可能な画像評価プログラムにおいて、
前記画像データにおける複数のブロックについてそれぞれ先鋭度を取得する先鋭度取得機能と、
所定のオブジェクトの少なくとも一部が前記ブロックに含まれるか否かに応じた値である閾値を設定する閾値設定機能と、
各ブロックについて前記閾値と前記先鋭度の比較を行い、その比較結果に応じて前記画像データを評価する評価機能とをコンピュータに実行させることを特徴とするコンピュータ読み取り可能な画像評価プログラム。
【請求項８】
複数の画素で構成された画像データに対応する印刷画像を印刷する画像出力装置において、
前記画像データにおける複数のブロックについてそれぞれ先鋭度を取得する先鋭度取得手段と、
所定のオブジェクトの少なくとも一部が前記ブロックに含まれるか否かに応じた値である閾値を設定する閾値設定手段と、
各ブロックについて前記閾値と前記先鋭度の比較を行い、その比較結果に応じて前記画像データを評価する評価手段と、
評価した結果に応じて前記印刷を実行させる印刷実行手段とを具備することを特徴とする画像出力装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像評価装置、画像評価方法、画像評価プログラムおよび画像出力装置に関する。
【背景技術】
【０００２】
写真を撮影したときの焦点が合っていない、いわゆるピンぼけした画像データを検出する技術が提案されている（例えば、特許文献１、参照。）。
かかる構成では、以下の手順によってピンぼけか否かを判定している。すなわち、まず所定の基準距離だけ離れた注目画素と比較画素との輝度値の偏差を取得する。そして、この偏差の最大値が所定の閾値を上回っている小ブロックをエッジブロックとし、同偏差が同閾値を上回っていない小ブロックを非エッジブロックとする。大ブロックには複数の小ブロックが属するとともに、各大ブロックにおけるエッジブロックの構成比率が算出される。この構成比率が所定の基準値を上回る場合にはピンぼけでないと判定し、同構成比率が同基準値を上回らない場合にはピンぼけであると判定する。すなわち、色変動が激しいエッジに相当するエッジブロックがいずれかの大ブロックにおいて大規模に分布している場合には、ピンぼけでないと判定する。
【特許文献１】特開２００７−１２８３４２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
上述した技術においては、エッジブロックの構成比率が所定の基準値を上回るか否かによってピンぼけの有無を判定しているが、上述した基準値でピンぼけの有無を判定すると、画像の属性よっては誤判定が生じることがあった。例えば、本質的にエッジが弱くなりがちな顔写真に対して他の写真と同様の基準値を適用して判定を行うと、適切にピントが合っているにもかかわらずピンぼけであると判定されてしまうという問題があった。
本発明は前記課題にかんがみてなされたもので、適正な評価が可能な画像評価装置、画像評価方法、画像評価プログラムおよび画像出力装置を提供することを目的とする。
【課題を解決するための手段】
【０００４】
前記課題を解決するため請求項１にかかる発明では、まず画像データにおける複数のブロックについてそれぞれ先鋭度を取得する。次に、前記ブロックにおいて所定のオブジェクトの少なくとも一部が含まれるか否かに応じた値である閾値を設定する。そして、各ブロックについて前記閾値と前記先鋭度の比較を行い、その比較結果に応じて前記画像データを評価する。このようにすることにより、各ブロックに含まれる前記オブジェクトの属性に適した前記閾値を設定することができ、画像の正確な評価を実現させることができる。例えば、本質的に先鋭度が低くなりがちな前記オブジェクトに対して低先鋭度側の前記閾値を使用することにより、過度に厳しい判定基準を適用することを防止することができる。反対に、本質的に先鋭度が高くなりがちな前記オブジェクトに対して高先鋭度側の前記閾値を使用することにより、過度に緩い判定基準を適用することを防止することができる。
【０００５】
前記オブジェクトの一例として、顔の少なくとも一部が前記ブロックに含まれるか否かに応じた値である閾値を設定するようにしてもよい。すなわち、前記ブロックに前記オブジェクトとしての顔の少なくとも一部が含まれる場合には、前記ブロックに前記オブジェクトとしての顔が含まれない場合よりも前記閾値を低先鋭度側に設定するようにしてもよい。このようにすることにより、本質的に先鋭度が低くなりがちな顔に対して過度に厳しい判定基準を適用することを防止することができる。また、顔器官や手についても、同様の手法を適用することができる。
【０００６】
さらに、前記ブロックに含まれる前記オブジェクトの面積に応じて、当該ブロックに与える前記オブジェクトの影響度が異なるため、このような影響度に応じて適切な前記閾値を設定するのが望ましい。すなわち、前記ブロックに含まれる前記オブジェクトの面積に応じて前記閾値を調整することにより、前記影響度に応じて前記閾値を調整することができる。また、前記オブジェクトが存在する位置や領域は予め前記画像データに対応付けて記憶されていてもよいし、前記画像データが入力された段階で前記オブジェクトを検出するようにしてもよい。いずれの場合であっても、評価を行う段階で適切な前記閾値を設定することができる。
【０００７】
むろん、以上の発明は、方法のみならず、請求項６のような画像評価装置によって実現することも可能であるし、請求項７のように前記方法に従った処理を実行する画像評価プログラムによって実現することも可能である。また、本発明にかかる装置、方法、プログラムは単独で実施される場合もあるし、ある機器に組み込まれた状態で他の装置、方法、プログラムとともに実施されることもあるなど、発明の思想としてはこれに限らず、各種の態様を含むものであり、適宜、変更可能である。例えば、請求項８のように本発明の画像評価装置がプリンタ等の画像出力装置に組み込まれていてもよいし、デジタルスチルカメラ等の画像入力機器に組み込まれていてもよい。
【０００８】
さらに、本発明のプログラムを記録した記録媒体として提供することも可能である。このプログラムの記録媒体は、磁気記録媒体であってもよいし光磁気記録媒体であってもよいし、今後開発されるいかなる記録媒体においても全く同様に考えることができる。また、一次複製品、二次複製品などの複製段階については全く問う余地無く同等である。さらに、一部がソフトウェアであって、一部がハードウェアで実現されている場合においても発明の思想において全く異なるものではなく、一部を記録媒体上に記憶しておいて必要に応じて適宜読み込まれるような形態のものとしてあってもよい。また、必ずしも全部の機能を単独のプログラムで実現するのではなく、複数のプログラムにて実現させるようなものであってもよい。この場合、各機能を複数のコンピュータに実現させるものであればよい。
【発明を実施するための最良の形態】
【０００９】
ここでは、下記の順序に従って本発明の実施形態について説明する。
（１）コンピュータの構成：
（２）画像評価処理の流れ：
（３）変形例：
（４）まとめ：
【００１０】
（１）コンピュータの構成：
図１は、本発明の画像評価装置としてのコンピュータの概略構成を示している。同図において、コンピュータ１０には、内部バス１０ａによって接続されたＣＰＵ１１とＲＡＭ１２とＨＤＤ１３とＵＳＢインターフェイス（Ｉ／Ｆ）１４と入力機器インターフェイス（Ｉ／Ｆ）１５とビデオインターフェイス（Ｉ／Ｆ）１６とが備えられており、ＨＤＤ１３には各種プログラムデータ１３ａと複数の画像データ１３ｂ，１３ｂ，１３ｂ・・・が記憶されている。ＣＰＵ１１は、このプログラムデータ１３ａを読み出して、同プログラムデータ１３ａに基づいた処理をＲＡＭ１２をワークエリアとして利用しながら実行する。ＵＳＢＩ／Ｆ１４にはプリンタ２０とデジタルスチルカメラ３０が接続されており、入力機器インターフェイス１５にはマウス４０およびキーボード５０が接続されている。さらに、ビデオＩ／Ｆ１６にはディスプレイ６０が接続されている。
【００１１】
図２は、コンピュータ１０にて実行されるプログラムのソフトウェア構成を示している。コンピュータ１０においては図示しないオペレーティングシステム（Ｏ／Ｓ）が実行されており、同Ｏ／Ｓ上にて画像管理プログラムＰ１とプリンタドライバＰ２とが実行されている。画像管理プログラムＰ１は、概略、画像評価部Ｐ１ａと画像管理部Ｐ１ｂとから構成されている。画像管理部Ｐ１ｂは、ＨＤＤ１３に記憶された画像データ１３ｂ，１３ｂ，１３ｂ・・・を管理するための機能を提供する。具体的には、各画像データ１３ｂ，１３ｂ，１３ｂ・・・が保存されたパスごとに同画像データ１３ｂ，１３ｂ，１３ｂ・・・のサムネイルをディスプレイ６０に表示させたり、同画像データ１３ｂ，１３ｂ，１３ｂ・・・のヘッダ情報等に基づいて画像データ１３ｂ，１３ｂ，１３ｂ・・・の検索を行ったり、同画像データ１３ｂ，１３ｂ，１３ｂ・・・の削除やコピー、保存パスの変更等を行ったりする。
【００１２】
一方、画像評価部Ｐ１ａは、顔検出部Ｐ１ａ１とブロック設定部Ｐ１ａ２と閾値設定部Ｐ１ａ３と偏差取得部Ｐ１ａ４と最大偏差検出部Ｐ１ａ５と判定部Ｐ１ａ６とから構成されている。顔検出部Ｐ１ａ１は、判定対象として指定された画像データ１３ｂをＨＤＤ１３から取得し、当該画像データ１３ｂが示す画像のなかから本発明のオブジェクトとしての顔を検出する。ブロック設定部Ｐ１ａ２は、判定対象として指定された画像データ１３ｂをＨＤＤ１３から取得し、当該画像データ１３ｂのヘッダに記述された同画像データ１３ｂの縦および横の画素数を取得する。画像データ１３ｂの縦および横の画素数に基づいて、小ブロックと大ブロック（本発明のブロックに相当。）の縦横の画素数、および、基準距離の画素数を算出する。具体的には、当該画像データ１３ｂを写真モードの印刷解像度にてＬ版サイズで印刷した時に正方形の大ブロックの縦横の長さがそれぞれ１０ｍｍとなるような縦および横の画素数を設定する。また、基準距離についても、当該画像データ１３ｂを写真モードの印刷解像度にてＬ版サイズで印刷した時に、距離が０．３ｍｍとなるような画素数を設定する。一方、小ブロックは大ブロックよりも小さく設定される。例えば縦横の長さが大ブロックの１０分の１の大きさとなるように設定される。
【００１３】
閾値設定部Ｐ１ａ３は、ブロック設定部Ｐ１ａ２によって設定された大ブロックと顔検出部Ｐ１ａ１によって検出された顔との位置および大きさの関係を把握し、各ブロックに占める顔の面積比率を算出する。そして、当該面積比率ＦＲに応じて第１閾値Ｔｈ１と第２閾値Ｔｈ２を線形結合することにより、各ブロックについての閾値Ｔｈを設定する。偏差取得部Ｐ１ａ４は、判定対象の画像データ１３ｂから注目画素を選択するとともに、同注目画素から左方向および上方向に基準距離だけ離れた位置にある２個の比較画素を検索する。そして、注目画素と２個の比較画素の色信号を取得する。本実施形態において、画像データ１３ｂの各画素の色が色信号値としてのＲＧＢ値で表現されているため、注目画素と２個の比較画素のＲＧＢ値を取得する。そして、注目画素と２個の比較画素について、ＲＧＢ値から輝度値Ｙを算出する。輝度値Ｙは下記の（１）式によって算出することができる。
Ｙ＝０．２９９×Ｒ＋０．５８７×Ｇ＋０．１１４×Ｂ    ・・・（１）
そして、注目画素の輝度値Ｙから２個の比較画素の輝度値Ｙをそれぞれ減算し、その絶対値を偏差として算出する。一つの注目画素について２個の偏差が算出されることとなる。偏差取得部Ｐ１ａ４は、注目画素を画像データ１３ｂの全体にわたってシフトさせることにより、画像データ１３ｂの全体について偏差を算出する。最大偏差検出部Ｐ１ａ５は、画像データ１３ｂについて予め設定されている各小ブロックについて注目画素の偏差の最大値を検出する。すなわち、各小ブロックについて最大偏差が特定される。
【００１４】
判定部Ｐ１ａ６は、各小ブロックの最大偏差と所定の基準値を比較し、最大偏差が同閾値を上回っている小ブロックを特定する。そして、予め設定されている各大ブロックにおいて最大偏差が同基準値を上回っている小ブロックが占める構成比率を算出する。そして、その構成比率が予め閾値設定部Ｐ１ａ３が設定した閾値Ｔｈよりも大きい大ブロックの有無を判定し、ひとつでも構成比率が閾値Ｔｈよりも大きい大ブロックがあれば当該画像データ１３ｂについてはピントぼけしていない画像であると判定する。一方、ひとつも構成比率が閾値Ｔｈよりも大きい大ブロックがなければ当該画像データ１３ｂについてピンぼけ画像であると判定する。このような評価（判定）を行うことにより、画像データ１３ｂの画像自体を実際に見ることなくピンぼけ判定を行うことができ、ピンぼけのない画像データ１３ｂのみを印刷指定することができる。
【００１５】
プリンタドライバＰ２は画像データ１３ｂのうちピンぼけがないと判定されたものを取得するとともに、同画像データ１３ｂをＬ版サイズで印刷するための処理を実行する。具体的には、Ｌ版サイズで印刷ができるように画像データ１３ｂのサイズを変換する。本実施形態では、プリンタ２０が写真モードの印刷解像度で印刷を行うため、同印刷解像度とＬ版サイズとを考慮して画像データ１３ｂのサイズ変換が行われる。サイズ変換を行うにあたっては、オリジナルの画像データ１３ｂに対して画素数を増減させる必要があるため、適宜、画素の補間や間引きが行われる。次に、各画素の色がＲＧＢ値で表現された画像データ１３ｂをプリンタ２０が使用するインクの色で表現された画像データ１３ｂに色変換する。
【００１６】
例えば、プリンタ２０がＣＭＹＫインクを吐出可能なインクジェットプリンタである場合には、各画素の色がＣＭＹＫ値で表現された画像データ１３ｂに変換される。さらに、色変換後の画像データ１３ｂに対して誤差拡散法やディザ法等のハーフトーン処理を行うことにより、各画素についてインクを吐出させるかさせないかを特定するハーフトーンデータに変換する。次に、ハーフトーンデータを印刷順に並べ替え、印刷用紙や印刷解像度を指定するヘッダを添付することにより、プリンタ２０にて出力可能な印刷データを生成する。印刷データはＵＳＢＩ／Ｆ１４を介してプリンタ２０に出力され、同プリンタ２０にて同印刷データに基づく印刷が行われる。
【００１７】
（２）画像評価処理の流れ：
図３は、画像評価処理の流れを示している。同図において、ステップＳ１００では、ブロック設定部Ｐ１ａ２が判定対象の（評価を行う）画像データ１３ｂをＨＤＤ１３から取得する。ステップＳ１１０において、ブロック設定部Ｐ１ａ２が画像データ１３ｂのヘッダに記述された当該画像データ１３ｂの縦および横の画素数を取得する。本実施形態において、約５００万画素のデジタルスチルカメラ３０にて撮影された横２５６０画素×縦１９２０画素の画像データ１３ｂが判定対象として指定されたものとして以下説明する。また、本実施形態において印刷を行う写真モードにおいてはプリンタ２０における印刷解像度が横２８８０ｄｐｉ×縦２８８０ｄｐｉとされる。また、Ｌ版とは横１２７ｍｍ（５．０ｉｎｃｈ）×縦８９ｍｍ（３．５ｉｎｃｈ）の大きさであり、ＪＩＳ規格ではＢ７サイズに相当する。
【００１８】
ステップＳ１２０において、ブロック設定部Ｐ１ａ２が基準距離の設定を行う。基準距離はＬ版の印刷用紙上において０．３ｍｍとなるように設定される。横２５６０画素×縦１９２０画素の画像データ１３ｂを横１２７ｍｍ×縦８９ｍｍのＬ版に印刷するため、画像データ１３ｂの１画素は、印刷用紙上において横０．０５０（＝１２７／２５６０）ｍｍ、縦０．０４６（＝８９／１９２０）ｍｍに相当する。さらに、印刷用紙上の横０．３ｍｍは画像データ１３ｂの横方向の６（＝０．３／０．０５０）画素に相当し、印刷用紙上の縦０．３ｍｍは画像データ１３ｂの縦方向の６（≒０．３／０．０４６）画素に相当する。従って、本実施形態においてブロック設定部Ｐ１ａ２は、横方向の基準距離を６画素とし、縦方向の基準距離を６画素と設定する。
【００１９】
ステップＳ１３０においては、ブロック設定部Ｐ１ａ２が大ブロックの設定を行う。大ブロックはＬ版の印刷用紙上において横１０ｍｍ×縦１０ｍｍとなるように設定される。画像データ１３ｂの１画素は、印刷用紙上において横０．０５０ｍｍ、縦０．０４６ｍｍに相当するため、印刷用紙上の横１０ｍｍは画像データ１３ｂの横方向の２００（≒１０／０．０５０）画素に相当し、印刷用紙上の縦０．３ｍｍは画像データ１３ｂの縦方向の２００（≒１０／０．０４６）画素に相当する。従って、本実施形態においてブロック設定部Ｐ１ａ２は、大ブロックの横の画素数を２００画素とし、縦方向の画素数を２００画素と設定する。
【００２０】
さらに、ステップＳ１４０において、ブロック設定部Ｐ１ａ２が小ブロックの設定を行う。本実施形態において小ブロックは大ブロックの１／１０の大きさとされる。すなわち。ブロック設定部Ｐ１ａ２は、小ブロックの横の画素数を２０画素とし、縦方向の画素数を２０画素と設定する。以上説明したように、大ブロックと小ブロックと基準距離がＬ版で印刷したときの印刷用紙上の大きさを基準として設定されるため、対象の画像データ１３ｂの縦横の画素数に応じて大ブロックと小ブロックと基準距離が設定されることとなる。ステップＳ１５０において、偏差取得部Ｐ１ａ４が画像データ１３ｂなかから注目画素を選択する。画像データ１３ｂにおいて基準距離の６画素周期の格子点上にある画素が注目画素として選択される。
【００２１】
図４は、画像データ１３ｂにおける各画素の配列を模式的に示している。同図において、各画素が行列状に配列されており、注目画素として選択され得る画素を黒く図示している。例えば、まず最初に左上端の画素Ａ１が注目画素として選択されるものとする。注目画素を選択すると、偏差取得部Ｐ１ａ４はステップＳ１６０にて同注目画素と比較を行う比較画素を特定する。具体的には、基準画素から左方向および上方向に基準距離の６画素だけ離れた位置の画素が比較画素として特定される。従って、比較画素として選択されうる画素も、注目画素として選択され得る画素と同じであり、縦横６画素周期の格子点上の画素となっている。左上端の画素Ａ１が注目画素として選択された場合には、注目画素Ａ１よりも左と上の画素は存在しない。このように比較画素がない場合には、ステップＳ１７０では偏差が０であるとされる。注目画素Ａ１に関しては左方向と上方向とも注目画素が存在しないため、いずれの方向についても偏差が０であるとされる。
【００２２】
ステップＳ１８０においては、全ての注目画素について偏差を算出したかどうかが判定される。すなわち、図４に示すように画像データ１３ｂにおいて６画素周期の格子点上にある注目画素として選択され得る画素が、全てステップＳ１５０にて選択されたかどうかが判定される。そして、全て選択されていない場合には、ステップＳ１５０に戻り、次の注目画素が選択される。本実施形態においては、ステップＳ１５０にて注目画素が順に右へシフトするように選択されるものとする。従って、次の注目画素として画素Ａ２が選択される。注目画素Ａ２においては、上方向の比較画素は存在しないものの、左に６画素離れた位置に画素Ａ１が存在しているため、画素Ａ１が比較画素として特定される。このように比較画素Ａ１が存在する場合には、ステップＳ１７０にて偏差取得部Ｐ１ａ４が注目画素Ａ２と比較画素Ａ１のＲＧＢ値を取得するとともに、同ＲＧＢ値から注目画素Ａ２と比較画素Ａ１の輝度値Ｙをそれぞれ算出する。輝度値Ｙの算出においては前記の（１）式が利用される。さらに、偏差取得部Ｐ１ａ４が注目画素Ａ２と比較画素Ａ１の輝度値Ｙを差し引き、その絶対値を偏差として算出する。
【００２３】
以上のようにステップＳ１５０〜Ｓ１８０を繰り返して行うことにより、順に注目画素をシフトさせつつ、各注目画素について偏差を取得していくことができる。なお、注目画素が画像データ１３ｂの右端までシフトしたところで、次の行の左端の注目画素が選択される。例えば、１行目の右端まで選択した後には２行目の左端の注目画素Ｂ１が選択される。このようにすることにより、画像データ１３ｂの全体にわたって注目画素を選択していくことができる。なお、注目画素Ｂ２以降は、上方向と左方向の双方に比較画素が存在するため、上方向の比較画素に対する偏差と、左方向の比較画素に対する偏差の双方がステップＳ１７０にて算出されることとなる。
【００２４】
そして、最終的にステップＳ１８０にて全ての注目画素について偏差が算出できたことが確認できると、ステップＳ１９０において最大偏差検出部Ｐ１ａ５がステップＳ１４０において設定された各小ブロックにおける最大偏差を検出する。図４においては、太線によって囲まれた横２０画素×縦２０画素の正方形状の小ブロックが図示されており、例えば左上端の小ブロックにて１６個の注目画素Ａ１〜Ａ４，Ｂ１〜Ｂ４，Ｃ１〜Ｃ４，Ｄ１〜Ｄ４が含まれるため、当該小ブロックにおいては、左方向と上方向の偏差が２×１６個算出されていることとなる。ステップＳ１９０においては、このなから最大の偏差を検出する。同様に全ての小ブロックについて最大偏差を検出していく。
【００２５】
各小ブロックについて最大偏差が検出されると、ステップＳ２００にて判定部Ｐ１ａ６が各小ブロックの最大偏差と所定の基準値とを比較する。この基準値は、Ｌ版サイズで印刷したときに０．３ｍｍ離れた注目画素と比較画素の輝度の偏差が全体の輝度階調の４〜５％となるように設定される。例えば、画像データ１３ｂのＲＧＢ階調幅が２５６階調である場合には、１２階調の偏差が基準値となる。注目画素と比較画素との輝度の偏差が基準値を上回る場合には、Ｌ版サイズで印刷したときの０．３ｍｍの間に急激な色変動があり、焦点の合った被写体の輪郭が注目画素の周辺に存在していると考えることができる。ステップ２００を行うことにより、各小ブロックについて最大偏差が基準値を上回るか上回らないかが特定された２値中間画像データを生成することができる。なお、最大偏差が基準値を上回る小ブロックを以下エッジブロックというものとし、最大偏差が基準値を下回る小ブロックを以下非エッジブロックというものとする。
【００２６】
図５は、ステップＳ２００にて生成された２値中間画像データを模式的に示している。同図において、１つのセルが各小ブロックに対応しており、画像データ１３ｂにおける位置に応じて小ブロックが行列状に配列されている。これらの小ブロックがエッジブロック（黒）か非エッジブロック（白）かによって塗り分けられている。また、同図においてはステップＳ１３０にて設定した大ブロックが太線によって図示されている。上述したとおり、本実施形態において大ブロックはＬ版サイズで印刷したときの横１０ｍｍ×縦１０ｍｍに相当する横２００画素×縦２００画素の正方形に設定されており、各大ブロックにおいては横１０ブロック×縦１０ブロックの小ブロックが属することとなる。ステップＳ２１０においては、各大ブロックにおいてエッジブロックが何ブロックあるかを計数し、同大ブロックに属する全体の小ブロック数（１０×１０＝１００ブロック）によって除算する。これにより、各大ブロックにおけるエッジブロックの構成比率を算出することができる。なお、エッジブロックの構成比率が本発明の先鋭度に相当する。次のステップＳ２２０においては、顔検出部Ｐ１ａ１と閾値設定部Ｐ１ａ３と閾値設定処理を実行させる。
【００２７】
図６は閾値設定処理の流れを示し、図７は閾値設定処理の様子を模式的に示している。まずステップＳ２２１において、顔検出部Ｐ１ａ１が画像評価を行う対象の画像データ１３ｂを取得し、当該画像データ１３ｂのサイズ変換を実行し、ＱＶＧＡサイズの顔検出用画像データ１３ｂ１を生成する。ステップＳ２２２においては、顔検出部Ｐ１ａ１が顔検出用画像データ１３ｂ１に対して顔検出を実行する。顔検出の具体的手法は特に限定されない。例えば顔検出用画像データ１３ｂ１における各位置において種々の大きさや角度の検出窓ＳＷを設定し、当該検出窓ＳＷに属する画像と、予め用意された複数の顔テンプレートＴＰとのマッチングを行うことにより顔検出を行うことができる。なお、顔が本発明のオブジェクトに相当する。そして、複数の顔テンプレートＴＰとマッチングするときの検出窓ＳＷの位置と大きさと角度を画像データ１３ｂに対応付けて記憶しておく。このようにすることにより、画像データ１３ｂに存在する顔を含む検出窓ＳＷの位置と大きさと角度を特定することができる。また、図７に示すように、画像データ１３ｂには複数の顔が存在する場合も考えられるが、それぞれの顔を含む検出窓ＳＷの位置と大きさと角度を特定し、記憶しておく。厳密には顔検出用画像データ１３ｂ１での位置等が特定されるが、顔検出用画像データ１３ｂ１と画像データ１３ｂは相似であるため、画像データ１３ｂにおける顔の位置等が特定できることとなる。
【００２８】
以上のようにして顔検出が行われると、ステップＳ２２３にて閾値設定部Ｐ１ａ３が顔検出の結果を取得し、各大ブロックについて、検出された顔の面積比率ＦＲを算出する。なお、テンプレートＴＰとマッチングする検出窓ＳＷにおいて存在する顔（顔の輪郭）の位置（検出窓ＳＷとの相対位置）はほぼ一定であると考えることができるため、検出窓ＳＷの位置と大きさと角度に基づいて画像データ１３ｂにおいて存在する顔の位置を概ね特定することができる。また、検出窓ＳＷにおいて色や輝度の境界を探索することにより、顔の輪郭を特定し、当該輪郭に囲まれる領域を顔として特定するようにしてもよい。大ブロックに顔全体が含まれる場合もあるし、図７に示すように顔の一部のみが含まれる場合もある。面積比率ＦＲは、大ブロックと顔が重複している部分（ハッチングで図示。）の面積を、大ブロック全体の面積で除算することにより算出される。なお、本実施形態では、大ブロックにおいて顔が重複する部分の面積比率ＦＲを算出するようにしているが、より簡易に大ブロックと検出窓ＳＷとが重複する部分の面積に基づいて面積比率ＦＲを算出するようにしてもよい。大ブロックに、顔が一切存在しない場合には、面積比率ＦＲは０％となる。以上のような面積比率ＦＲを各大ブロックについて算出すると、ステップＳ２２４においては閾値設定部Ｐ１ａ３が閾値Ｔｈを下記の（２）式によって算出する。
Ｔｈ＝（１−ＦＲ）×Ｔｈ１＋ＦＲ×Ｔｈ２    ・・・（２）
【００２９】
例えば、第１閾値Ｔｈ１は４０％とされ、第２閾値Ｔｈ２は２０％とされている。上記の（２）式によれば、閾値Ｔｈは、面積比率ＦＲに応じて２０〜４０％の間で変動し、面積比率ＦＲが大きくなれば大きくなるほど、第２閾値Ｔｈ２の２０％に近づいていく。各大ブロックはそれぞれ異なる面積比率ＦＲを有しているため、それぞれ異なる閾値Ｔｈが設定されることとなる。例えば、顔が一切存在しない大ブロックについては閾値Ｔｈが４０％と設定され、顔が半分を占める大ブロックについては閾値Ｔｈが３０％と設定されることとなる。以上のようにして各大ブロックについて閾値Ｔｈが設定されると、閾値設定処理を終了させ、ステップＳ２３０にて、判定部Ｐ１ａ６は各大ブロックについて予め得られたエッジブロックの構成比率と閾値Ｔｈとを比較する。
【００３０】
そして、全ての大ブロックのうちいずれかの大ブロックにおいてエッジブロックの構成比率が閾値Ｔｈを上回っているかどうかを判定する。いずれかの大ブロックにおいてエッジブロックの構成比率が閾値Ｔｈを上回っている場合には、ステップＳ２４０にて、判定対象の画像データ１３ｂがピンぼけしていないと判定する。一方、全ての大ブロックのうちいずれの大ブロックにおいてもエッジブロックの構成比率が基準値を上回っていない場合には、ステップＳ２５０にて判定対象の画像データ１３ｂがピンぼけした画像であると判定する。
【００３１】
Ｌ版サイズで印刷したときに横１０ｍｍ×縦１０ｍｍの領域に相当する大ブロックにおいて所定の基準値よりも高い構成比率で色変動の激しい小ブロックが存在している場合には、当該大ブロックにおいて大規模な輪郭が存在していると考えることができる。写真の撮影にあたって、撮ろうとする被写体の大きさがＬ版サイズに換算したときに横１０ｍｍ×縦１０ｍｍのサイズよりも小さくなるように撮影を行う可能性は極めて低いということができる。従って、いずれかの大ブロックにてエッジブロックの構成比率が基準値を上回っている場合には、撮ろうとした被写体に焦点が合っていると判断することができる。多くの場合、被写体は大ブロックよりも大きくなるため、被写体の輪郭に相当するエッジブロックは、図５のように大ブロックにまたがるように分布することとなる。
【００３２】
図８は、色の変動が激しい先鋭なノイズが含まれた大ブロックを示している。色の変動が激しい先鋭なノイズが含まれる場合には、同ノイズが含まれる小ブロックはエッジブロックと判断されることとなる。しかしながら、ノイズによるエッジブロックの構成比率が横１０ｍｍ×縦１０ｍｍの領域に相当する大ブロックにおいて基準値を上回ることはないため、先鋭ノイズによって画像データ１３ｂがピンぼけしていないと誤判定されることが防止できる。このように、画像データ１３ｂをディスプレイ６０に表示させてユーザーが画像のよしあしを判断することなく、画像データ１３ｂのピンぼけ判定をすることができ、ビンぼけした画像データ１３ｂが印刷されることが防止できる。また、簡単な偏差を算出するだけでピンぼけを判定することができるため、高速な判定を実現することができる。
【００３３】
さらに、上記の（２）式によって閾値Ｔｈを設定することにより、顔が大きく含まれる大ブロックについてはピンぼけしていないと判定するためのエッジブロックの構成比率の基準を緩和することができる。人間の顔は大部分が肌の色で形成され、主として凹凸による曖昧なエッジのみを含むこととなるため、ピンぼけしていない場合でもエッジブロックの構成比率は小さくなりがちである。また、大ブロックに占める顔の面積が大きくなればなるほど、エッジブロックの構成比率は小さる傾向は強くなる。従って、顔の面積比率ＦＲに応じて閾値Ｔｈを緩和することにより、顔が適正に撮影されているにもかかわらずピンぼけしていると誤判定されることが防止できる。
【００３４】
（３）変形例：
以上においては、本発明のピンぼけ判定機能がコンピュータ１０上にて実行される画像管理プログラムＰ１に組み込まれるものを例示したが同ピンぼけ判定機能を他のプログラムに組み込んでもよい。例えば、プリンタドライバＰ２にてピンぼけ判定を行うようにしてもよい。プリンタドライバＰ２においては、印刷条件と印刷する画像データ１３ｂが指定された段階で、当該画像データ１３ｂのピンぼけ判定を行うようにしてもよい。そして、指定された画像データ１３ｂが上述した手法によってピンぼけしていると判定された場合には、ディスプレイ６０に警告画面を表示させたり、印刷を実行させないようにすることもできる。
【００３５】
また、上述した実施形態では、印刷サイズがＬ版であることを前提としたが、例えばＡ４用紙全体に印刷を行う場合や、ポスターに印刷を行う場合等、種々の印刷サイズに適合したピンぼけ判定を行うことができる。Ｌ版サイズの場合、ピンぼけが人間に知覚され得る最小の距離として、基準距離を印刷用紙上において０．３ｍｍとするのが適切であった。しかし、知覚の空間周波数特性は、観察距離に依存するため、観察距離によって基準距離を最適化することが望ましい。例えば、Ａ４用紙やポスターの場合、Ｌ版写真よりも観察距離が長く、微少なピンぼけは感じられにくくなるため、基準距離を０．３ｍｍよりも大きくすることができる。
【００３６】
さらに、デジタルスチルカメラにて、ピンぼけ判定を行うようにしてもよい。このようにすることにより、デジタルスチルカメラの限られた記憶領域に撮影に失敗した画像データが蓄積されることが防止できるため、撮影に成功した画像データをより多く保存することができる。また、コンピュータを経由することなく、デジタルスチルカメラやメモリカードから画像データを印刷することができるプリンタにて、ピンぼけ判定を行うようにしてもよい。この場合も、ピンぼけした画像データが実際に印刷されることが防止でき、印刷用紙やインク等の消耗品の無駄を軽減させることができる。具体的には、図１の各構成に相当する要素をプリンタに備えさせればよい。例えば、画像管理プログラムＰ１に対応する機能を有するファームウェアをプリンタのＣＰＵ上で実行させたり、画像管理プログラムＰ１に対応する機能を実行する回路をプリンタに実装すればよい。デジタルスチルカメラやプリンタにおいては、視覚的にピンぼけを判断するのに十分な表示装置や演算能力の高いＣＰＵを備えることが困難であるため、画像を見ることなく簡単な演算処理によってピンぼけ判定ができる本発明を適用することの意義は大きいといえる。
【００３７】
以上においては、オブジェクトとしての顔の面積比率ＦＲに基づいて閾値Ｔｈを設定するものを例示したが、むろん他のオブジェクトの存在有無や面積比率に応じて閾値Ｔｈを設定するようにしてもよい。例えば、オブジェクトとしての目や口や鼻等の顔器官によって規定される領域に基づいて閾値Ｔｈを設定するようにしてもよい。
【００３８】
図９は、変形例において閾値Ｔｈが設定される様子を模式的に示している。本変形例においては、テンプレートＴＰとして目と口が含まれるものを使用することにより、ステップＳ２１２において顔検出用画像データ１３ｂ１から目と口が含まれる検出窓ＳＷを検出する。そして、口と一対の目によって囲まれる三角形領域を特定する。そして、ステップＳ２１３では、大ブロックと上記三角形領域が重複している部分の面積を、大ブロック全体の面積で除算することにより面積比率ＦＲを算出する。面積比率ＦＲが算出できれば、上述した実施形態と同様に上記の（２）式に基づいて閾値Ｔｈを設定することができる。むろん、目や口の単独の面積（あるいは合計の面積）に基づいて閾値Ｔｈを設定することもできる。本変形例のようにオブジェクトとしての顔器官が大ブロックに含まれる程度に応じて閾値Ｔｈを設定しても、上述した実施形態と同様の効果を得ることができる。さらに、肌の色のみで構成されエッジが表れにくいため、手についても顔や顔器官と同様に閾値Ｔｈを緩和するのが望ましい。従って、種々の手の状態のテンプレートＴＰとのマッチングにより手を検出し、当該検出された手が大ブロックに存在する状態に基づいて閾値Ｔｈを設定するようにしてもよい。
【００３９】
以上においては、面積比率ＦＲに応じて線形的に閾値Ｔｈを調整するようにしたが、むろん閾値Ｔｈが面積比率ＦＲの非線形関数によって与えられるようにしてもよい。さらに、面積比率ＦＲに応じて閾値Ｔｈが徐変するものに限られず、例えば面積比率ＦＲが１０％以下であれば閾値Ｔｈを一律に４０％とし、面積比率ＦＲが１０％よりも大きければ閾値Ｔｈを一律に１０％とするようにしてもよい。むろん、これまで示した閾値Ｔｈは一例に過ぎず、画像データ１３ｂの属性やオブジェクトの検出精度等に応じて最適な値が設定されるべきである。
【００４０】
また、検出された顔の大きさ（画像データ１３ｂにおける絶対的な大きさ）そのものによって、含まれるエッジ量の傾向が異なることも考えられる。そのため、下記の（３）式のように、当該大ブロックに一部または全部が含まれる顔の当該大ブロックに対する相対的な大きさを示す面積比率ＦＲのみならず、当該大ブロックに一部または全部が含まれる顔の絶対的な大きさに依存したサイズ係数ＳＣを面積比率ＦＲに乗算することにより、顔の大きさに応じて閾値Ｔｈを設定するようにしてもよい。
Ｔｈ＝（１−ＦＲ×ＳＣ）×Ｔｈ１＋ＦＲ×ＳＣ×Ｔｈ２    ・・・（３）
サイズ係数ＳＣは、例えば１を中心として０．８〜１．２の間で変動する値であり、上述した顔検出にて特定された顔の大きさに応じて変動する。例えば、大きく撮影された顔の鼻等の輪郭は空間的に緩やかなエッジを構成するため、顔の大きさが大きいほどサイズ係数ＳＣを大きく（１．２に近い値に）すればよい。これにより、大ブロックに一部または全部が含まれる顔が大きいほど閾値Ｔｈを緩和することができる。なお、サイズ係数ＳＣは、顔が検出されたときの検出窓ＳＷの大きさに基づいて特定することができる。以上においては、オブジェクトが大きく存在するほど閾値Ｔｈを緩和するものを例示したが、反対にエッジがはっきりしたオブジェクトを含む大ブロックについての閾値Ｔｈを厳しく設定するようにすることも可能である。例えば、衣服や工業製品等の人工物のオブジェクトにおいてはエッジがはっきりするため、これらのオブジェクトの少なくともが含まれる場合には閾値Ｔｈを厳しくするようにしてもよい。
【図面の簡単な説明】
【００４１】
【図１】コンピュータのハードウェアブロック図である。
【図２】コンピュータのソフトウェアブロック図である。
【図３】画像評価処理の流れを示すフローチャートである。
【図４】画像データの模式図である。
【図５】輪郭が含まれる大ブロックの模式図である。
【図６】閾値設定処理のフローチャートである。
【図７】閾値設定処理の模式図である。
【図８】ノイズが含まれる大ブロックの模式図である。
【図９】変形例にかかる閾値設定処理の模式図である。
【符号の説明】
【００４２】
１０…コンピュータ（画像評価装置），１０ａ…バス，１１…ＣＰＵ，１２…ＲＡＭ，１３…ＨＤＤ，１３ａ…プログラムデータ，１３ｂ…画像データ，１４…ＵＳＢＩ／Ｆ，１５…入力機器Ｉ／Ｆ，１６…ビデオＩ／Ｆ，２０…プリンタ，３０…デジタルスチルカメラ，４０…マウス，５０…キーボード，６０…ディスプレイ，Ｐ１…画像管理プログラム，Ｐ１ａ１…顔検出部，Ｐ１ａ２…ブロック設定部，Ｐ１ａ３…閾値設定部，Ｐ１ａ４…偏差取得部，Ｐ１ａ５…最大偏差検出部，Ｐ１ａ６…判定部，Ｐ１ｂ…画像管理部，Ｐ２…プリンタドライバ
【図１】
2009295019.tif 000003
【図２】
2009295019.tif 000004
【図３】
2009295019.tif 000005
【図４】
2009295019.tif 000006
【図５】
2009295019.tif 000007
【図６】
2009295019.tif 000008
【図７】
2009295019.tif 000009
【図８】
2009295019.tif 000010
【図９】
2009295019.tif 000011