JP2008123346A - ぼやけ判定装置、ぼやけ判定方法および印刷装置 - Google Patents
ぼやけ判定装置、ぼやけ判定方法および印刷装置 Download PDFInfo
- Publication number
- JP2008123346A JP2008123346A JP2006307915A JP2006307915A JP2008123346A JP 2008123346 A JP2008123346 A JP 2008123346A JP 2006307915 A JP2006307915 A JP 2006307915A JP 2006307915 A JP2006307915 A JP 2006307915A JP 2008123346 A JP2008123346 A JP 2008123346A
- Authority
- JP
- Japan
- Prior art keywords
- blur
- edge
- blurred
- image data
- blur determination
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Facsimile Image Signal Circuits (AREA)
- Compression Of Band Width Or Redundancy In Fax (AREA)
- Image Analysis (AREA)
- Accessory Devices And Overall Control Thereof (AREA)
- Image Processing (AREA)
Abstract
【課題】処理負担の軽減や使用するメモリ容量の低減を図りつつ、画像のぼやけを精度良く検出する。
【解決手段】画像データがぼやけているか否かを判定するに当たり、印刷装置は、まず、画像データから帯領域毎にDCT係数を読み出してメモリ部に記憶し、その帯領域内のDCT係数と所定の基本エッジパターンとの比較に基づき、ブロック毎にぼやけているか否か判定する。そして、ぼやけていないと判定されたブロックが多く存在するウィンドウ領域については、DCT係数を輝度値に逆変換した上で、この輝度値に基づきエッジを検出し、エッジが多く含まれていれば、画像データ全体がぼやけていないと判定する。
【選択図】図7
【解決手段】画像データがぼやけているか否かを判定するに当たり、印刷装置は、まず、画像データから帯領域毎にDCT係数を読み出してメモリ部に記憶し、その帯領域内のDCT係数と所定の基本エッジパターンとの比較に基づき、ブロック毎にぼやけているか否か判定する。そして、ぼやけていないと判定されたブロックが多く存在するウィンドウ領域については、DCT係数を輝度値に逆変換した上で、この輝度値に基づきエッジを検出し、エッジが多く含まれていれば、画像データ全体がぼやけていないと判定する。
【選択図】図7
Description
本発明は、画像のぼやけを検出する技術に関する。
近年、デジタルスチルカメラが普及し、これに使用されるメモリカードの容量も増大している。そのため、一般のユーザが、画像を大量に保有する場合が増えている。デジタルスチルカメラは、フィルム代が不要であり、気軽に撮影を行えることから、被写体ブレや手ブレ等を意識することなく撮影が行われることが多い。従って、被写体ブレや手ブレに起因して画像にぼやけが生じている場合が比較的多く、撮影された画像を印刷装置によって印刷しようとすると、正常な画像を選別する作業が事前に必要であった。
大量の画像の中から正常な画像を選別する作業は、非常に煩雑な作業である。そこで、ユーザが画像を印刷するのに先立ち、自動的にぼやけが生じている画像を印刷の対象から排除する技術が望まれている。こうしたぼやけの検出技術に関連し、下記特許文献1には、画像を撮像したデジタルスチルカメラにおいて、画像のぼやけの有無を検出する技術が開示されている。
しかし、近年のデジタルスチルカメラは、数百万ないし一千万画素もの高解像度の画像を撮像するため、デジタルスチルカメラや印刷装置等の小型機器でぼやけの検出を行おうとすると、処理能力の高いCPUや多くのメモリ容量が必要となり、製造コストが増加することになる。そこで、特許文献1では、フレームメモリに記憶された画像を縮小して、この縮小画像に基づいてぼやけの判定を行っている(特許文献1の段落0069〜0070参照)。
しかし、画像を縮小すると、ぼやけた画像がシャープに変化することが一般的に知られている。そのため、縮小画像を用いたぼやけの検出処理では、精度良くぼやけを検出することができない場合があった。
上述した種々の問題を考慮し、本発明が解決しようとする課題は、処理負担の軽減や使用するメモリ容量の低減を図りつつ、画像のぼやけを精度良く検出することにある。
上記課題を踏まえ、本発明のぼやけ判定装置を次のように構成した。すなわち、
画像がぼやけているか否かを判定するぼやけ判定装置であって、
複数の画素からなるブロックを単位として画素値を空間領域から周波数領域に変換して得られた係数が記録されている画像データを参照する画像データ参照部と、
前記画像データ内の係数の連なりを、前記画素値の変化の代表的な勾配形状を前記係数によって表した複数種類の基本エッジパターンと比較することにより、前記ブロック毎にぼやけているか否かを判定するブロックぼやけ判定部と、
前記画像データを、複数のブロックからなるウィンドウ領域に区切り、ぼやけていないと判定されたブロックを所定個以上含むウィンドウ領域を抽出するウィンドウ抽出部と、
前記抽出されたウィンドウ領域について、前記係数を、前記周波数領域から前記空間領域に逆変換して、該係数に応じた画素値を取得するデコード部と、
前記取得された画素値の勾配変化に基づき、前記抽出されたウィンドウ領域内に存在するエッジを検出するエッジ検出部と、
前記抽出されたいずれかのウィンドウ領域が、前記エッジを所定個数以上含む場合に、前記画像データはぼやけていないと判定する画像ぼやけ判定部と
を備えることを要旨とする。
画像がぼやけているか否かを判定するぼやけ判定装置であって、
複数の画素からなるブロックを単位として画素値を空間領域から周波数領域に変換して得られた係数が記録されている画像データを参照する画像データ参照部と、
前記画像データ内の係数の連なりを、前記画素値の変化の代表的な勾配形状を前記係数によって表した複数種類の基本エッジパターンと比較することにより、前記ブロック毎にぼやけているか否かを判定するブロックぼやけ判定部と、
前記画像データを、複数のブロックからなるウィンドウ領域に区切り、ぼやけていないと判定されたブロックを所定個以上含むウィンドウ領域を抽出するウィンドウ抽出部と、
前記抽出されたウィンドウ領域について、前記係数を、前記周波数領域から前記空間領域に逆変換して、該係数に応じた画素値を取得するデコード部と、
前記取得された画素値の勾配変化に基づき、前記抽出されたウィンドウ領域内に存在するエッジを検出するエッジ検出部と、
前記抽出されたいずれかのウィンドウ領域が、前記エッジを所定個数以上含む場合に、前記画像データはぼやけていないと判定する画像ぼやけ判定部と
を備えることを要旨とする。
本発明のぼやけ判定装置は、画像データがぼやけているか否かを判定するに当たり、まず、画像データから係数を読み出して、その係数と所定の基本エッジパターンとの比較に基づき、ブロック毎にぼやけているか否か判定する。そして、ぼやけていないと判定されたブロックが所定個以上存在するウィンドウ領域については、係数を画素値に逆変換した上で、この画素値に基づきエッジを検出し、エッジが多く含まれていれば、画像データ全体がぼやけていないと判定する。
このような構成のぼやけ判定装置によれば、係数に基づくぼやけ判定の結果、ぼやけていないと判定されたブロックが所定個数以上含まれるウィンドウ領域についてのみ、係数から画素値への逆変換を行うため、逆変換を行う範囲を制限することができる。この結果、処理負担を軽減することができる。また、ぼやけていないと判定されたブロックが所定個数以上含まれるウィンドウ領域について、更に、その画素値を用いてエッジを検出するので、ぼやけているか否かを精度良く判断することができる。更に、本発明では、1箇所でもウィンドウ領域がぼやけていないと判断されれば、画像データ全体がぼやけていないと判定するため、ぼやけの判定を高速に行うことが可能になる。
なお、本発明においてぼやけの判定対象となる画像データは、例えば、JPEG規格に基づき生成されているものとすることができる。この場合、係数とは、画素値をブロック毎に離散コサイン変換して得られた、いわゆるDCT係数のことをいう。なお、空間領域から周波数領域への変換は、離散コサイン変換以外にも、例えば、フーリエ変換やウェーブレット変換などによって行うことも可能である。
上記構成のぼやけ判定装置において、
前記画像データを、少なくとも一方向に連続して配置されたブロックを含む帯領域に区切り、該帯領域毎に前記係数を一時的に記憶する帯領域記憶部を備え、
前記ブロックぼやけ判定部は、前記帯領域記憶部に記憶された係数の連なりを、前記複数種類の基本エッジパターンと比較し、
前記ウィンドウ抽出部は、前記帯領域をこれよりも小さな領域である前記ウィンドウ領域に区切り、前記抽出を行うものとしてもよい。
前記画像データを、少なくとも一方向に連続して配置されたブロックを含む帯領域に区切り、該帯領域毎に前記係数を一時的に記憶する帯領域記憶部を備え、
前記ブロックぼやけ判定部は、前記帯領域記憶部に記憶された係数の連なりを、前記複数種類の基本エッジパターンと比較し、
前記ウィンドウ抽出部は、前記帯領域をこれよりも小さな領域である前記ウィンドウ領域に区切り、前記抽出を行うものとしてもよい。
このような構成によれば、画像データを帯領域毎に分割して帯領域記憶部に記憶するため、画像データを記憶するための記憶容量を低減することができる。また、帯領域内の係数に基づき、ブロック毎にぼやけの判定を行い、ぼやけていないと判定されたブロックを所定個以上含むウィンドウ領域についてのみ周波数領域から空間領域への逆変換を行うため、帯領域全体について逆変換を行う必要がない。そのため、処理負担を軽減することができる。
上記構成のぼやけ判定装置において、
前記エッジ検出部は、前記抽出されたウィンドウ領域内の、複数の方向別に、該方向に沿ったエッジを検出するものとしてもよい。
前記エッジ検出部は、前記抽出されたウィンドウ領域内の、複数の方向別に、該方向に沿ったエッジを検出するものとしてもよい。
このような構成であれば、1つのウィンドウ領域について、様々な方向から被写体のぼやけ部分であるエッジを検出することができるので、精度良くぼやけの判定を行うことが可能になる。
上記構成のぼやけ判定装置において、
前記エッジ検出部は、前記検出の方向と、前記画素値の勾配方向とのなす角が、所定の角度範囲に収まる画素が、前記検出の方向に連続して連なる画素の範囲を、1つのエッジとして検出するものとしてもよい。
前記エッジ検出部は、前記検出の方向と、前記画素値の勾配方向とのなす角が、所定の角度範囲に収まる画素が、前記検出の方向に連続して連なる画素の範囲を、1つのエッジとして検出するものとしてもよい。
このような構成であれば、画素毎にその画素値の勾配方向がまちまちの方向を向いていたとしても、検出方向と画素値の勾配方向とのなす角が所定の角度範囲に収まるか否かに基づき、容易に1つのエッジを構成しているかを判断することができる。なお、所定の角度範囲とは、例えば、0度以上90度未満(好ましくは、0度以上80度以下)の範囲とすることができる。
上記構成のぼやけ判定装置において、
前記エッジ検出部は、前記1つのエッジとして検出された各画素の画素値の勾配方向と、前記検出の方向とのなす角の平均値が、所定の角度以下である場合に、該エッジは、前記方向に沿ったエッジであると判断するものとしてもよい。
前記エッジ検出部は、前記1つのエッジとして検出された各画素の画素値の勾配方向と、前記検出の方向とのなす角の平均値が、所定の角度以下である場合に、該エッジは、前記方向に沿ったエッジであると判断するものとしてもよい。
このような構成であれば、1つのエッジとして検出された画素群のそれぞれの勾配方向に偏りがある場合などに、そのエッジを、現在の検出方向のエッジとして扱うことを排除することができる。従って、各方向のエッジの検出を精度良く行うことができる。なお、所定の角度以下とは、例えば、45度程度とすることができる。
上記構成のぼやけ判定装置において、
前記エッジ検出部は、前記複数の方向として、少なくとも水平方向、垂直方向、斜め45度方向を含む方向別に前記エッジを検出するものとしてもよい。
前記エッジ検出部は、前記複数の方向として、少なくとも水平方向、垂直方向、斜め45度方向を含む方向別に前記エッジを検出するものとしてもよい。
このように、水平方向、垂直方向、斜め45度の検出方向にエッジの検出を行えば、ウィンドウ領域内に生じているエッジの多くを検出することが可能になる。
上記構成のぼやけ判定装置において、
前記エッジ検出部は、前記検出の方向のすべてについて、前記検出を行う画素の数が同一になるように、前記ウィンドウ領域内において前記エッジの検出を行う部位が設定されているものとしてもよい。
前記エッジ検出部は、前記検出の方向のすべてについて、前記検出を行う画素の数が同一になるように、前記ウィンドウ領域内において前記エッジの検出を行う部位が設定されているものとしてもよい。
このような構成であれば、水平方向・垂直方向と、斜め方向とで、エッジの検出を行う画素数を統一することができるので、処理の効率化を図ることが可能になる。
上記構成のぼやけ判定装置において、
前記画像ぼやけ判定部は、前記抽出されたいずれかのウィンドウ領域が、前記検出の方向のすべての方向について、前記エッジを所定個数以上含み、かつ、前記各方向別のエッジの幅の平均が、すべて所定の幅以下の場合に、前記画像データはぼやけていないと判定するものとしてもよい。
前記画像ぼやけ判定部は、前記抽出されたいずれかのウィンドウ領域が、前記検出の方向のすべての方向について、前記エッジを所定個数以上含み、かつ、前記各方向別のエッジの幅の平均が、すべて所定の幅以下の場合に、前記画像データはぼやけていないと判定するものとしてもよい。
このような構成であれば、エッジが所定個数含まれ、更に、各方向別のエッジの幅の平均が所定の幅以下の場合にその画像データはぼやけていないと判定するので、精度良くぼやけの有無を判定することが可能になる。
上記構成のぼやけ判定装置において、
前記ブロックぼやけ判定部は、隣接するブロック間で、前記係数の連なりに対応する前記基本エッジパターンの勾配の方向が一致する場合に、前記勾配の幅を累積加算し、該累積加算された勾配の幅に基づき、前記隣接するブロックに跨って、ぼやけが存在するか否かを判定するものとしてもよい。
前記ブロックぼやけ判定部は、隣接するブロック間で、前記係数の連なりに対応する前記基本エッジパターンの勾配の方向が一致する場合に、前記勾配の幅を累積加算し、該累積加算された勾配の幅に基づき、前記隣接するブロックに跨って、ぼやけが存在するか否かを判定するものとしてもよい。
このような構成であれば、ぼやけ部分が複数のブロックに跨っていたとしても、精度良くブロック毎のぼやけを判定することができる。
なお、本発明は、上述したぼやけ判定装置としての構成のほか、印刷装置や、ぼやけ判定方法、コンピュータプログラムとしても構成することができる。コンピュータプログラムは、コンピュータが読取可能な記録媒体に記録されていてもよい。記録媒体としては、例えば、フレキシブルディスクやCD−ROM、DVD−ROM、光磁気ディスク、メモリカード、ハードディスク等の種々の媒体を利用することができる。
以下、上述した本発明の作用・効果を一層明らかにするため、本発明の実施の形態を実施例に基づき次の順序で説明する。
A.印刷装置の構成:
B.印刷処理:
C.ぼやけ判定処理:
D.効果:
A.印刷装置の構成:
B.印刷処理:
C.ぼやけ判定処理:
D.効果:
A.印刷装置の構成:
図1は、本発明の実施例としての印刷装置100の外観を示す説明図である。印刷装置100は、いわゆる複合機タイプの印刷装置であり、光学的に画像を読み込むスキャナ110や、画像データの記録されたメモリカードMCを挿入するためのメモリカードスロット120、デジタルカメラ等の機器を接続するUSBインタフェース130等を備えている。印刷装置100は、スキャナ110によって取り込んだ画像や、メモリカードMCから読み取った画像、USBインタフェース130を介してデジタルカメラから読み取った画像を印刷用紙Pに印刷することができる。また、プリンタケーブルやUSBケーブルによって接続された図示していないパーソナルコンピュータから入力した画像の印刷も行うことができる。
図1は、本発明の実施例としての印刷装置100の外観を示す説明図である。印刷装置100は、いわゆる複合機タイプの印刷装置であり、光学的に画像を読み込むスキャナ110や、画像データの記録されたメモリカードMCを挿入するためのメモリカードスロット120、デジタルカメラ等の機器を接続するUSBインタフェース130等を備えている。印刷装置100は、スキャナ110によって取り込んだ画像や、メモリカードMCから読み取った画像、USBインタフェース130を介してデジタルカメラから読み取った画像を印刷用紙Pに印刷することができる。また、プリンタケーブルやUSBケーブルによって接続された図示していないパーソナルコンピュータから入力した画像の印刷も行うことができる。
印刷装置100は、印刷に関する種々の操作を行うための操作パネル140を備えている。操作パネル140の中央部には、液晶ディスプレイ145が備えられている。この液晶ディスプレイ145は、メモリカードMCやデジタルカメラなどから読み取った画像の表示や、印刷装置100の各種機能を利用する際のGUI(グラフィカルユーザインタフェース)の表示に利用される。
印刷装置100は、メモリカードMCやデジタルカメラ等から入力した複数の画像データの中から、ぼやけている画像(以下「ぼやけ画像」という)を排除して、ピントが1カ所でも合っている画像(以下、「合焦画像」という)のみを抽出し、液晶ディスプレイ145に表示する機能を有している。ユーザは、こうして液晶ディスプレイ145に表示された画像の中から、所望の画像を選択することで、印刷に適した画像のみを印刷することが可能となる。以下では、このぼやけ画像を排除する機能を実現するための印刷装置100の構成および処理について詳細に説明する。
図2は、印刷装置100の内部構成を示す説明図である。図示するように、印刷装置100は、印刷用紙Pに印刷を行う機構として、インクカートリッジ212を搭載したキャリッジ210や、キャリッジ210を主走査方向に駆動するキャリッジモータ220、印刷用紙Pを副走査方向に搬送する紙送りモータ230等を備えている。
キャリッジ210は、シアン、マゼンタ、イエロ、ブラック、ライトシアン、ライトマゼンタの色を現す各インクに対応して、計6種類のインクヘッド211を備えている。キャリッジ210には、これらのインクが収容されたインクカートリッジ212が装着されており、インクカートリッジ212からインクヘッド211に供給されたインクは、図示しないピエゾ素子を駆動することで印刷用紙Pに吐出される。
キャリッジ210は、プラテン270の軸方向と並行に設置された摺動軸280に移動自在に保持されている。キャリッジモータ220は、制御ユニット150からの指令に応じて駆動ベルト260を回転させることで、プラテン270の軸方向と平行に、すなわち、主走査方向にキャリッジ210を往復運動させる。紙送りモータ230は、プラテン270を回転させることで、プラテン270の軸方向と垂直に印刷用紙Pを搬送する。つまり、紙送りモータ230は、キャリッジ210を相対的に副走査方向に移動させることができる。
印刷装置100は、上述したインクヘッド211やキャリッジモータ220、紙送りモータ230の動作を制御するための制御ユニット150を備えている。制御ユニット150には、図1に示したスキャナ110やメモリカードスロット120、USBインタフェース130、操作パネル140、液晶ディスプレイ145が接続されている。
制御ユニット150は、CPU160とRAM170とROM180とによって構成されている。ROM180には、印刷装置100の動作を制御するための制御プログラムや、後述するぼやけ判定処理で用いられるエッジパターンテーブル181が記憶されている。CPU160はROM180に記憶された制御プログラムをRAM170に展開して実行することで図示する各機能部(161〜164)として動作する。
制御ユニット150は、CPU160によって実現される機能部として、画像データ参照部161、係数ぼやけ判定部162、JPEGデコーダ163、輝度ぼやけ判定部164を備えている。以下、これらの機能部の働きについて簡単に説明する(詳細な働きについては後述する各種処理内容を参照)。
画像データ参照部161は、メモリカードスロット120やUSBインタフェース130を介して、メモリカードMCやデジタルカメラに記録されたJPEG形式の画像データ(以下、「JPEGデータ」という)を参照する機能部である。JPEGデータには、8画素×8画素のブロック単位で画像が記録されている。この各ブロック内の画像データは、(1)RGB色空間からYCbCr色空間への画素値の色変換、(2)空間領域から周波数領域への離散コサイン変換(DCT変換)、(3)データの情報量を削減する量子化、(4)エントロピー符号化の一種であるハフマン符号化、が順次行われることでデータ量が圧縮されている。
図3は、JPEGデータ内にブロック毎にデータが記録されている様子を示す説明図である。図示するように、JPEGデータには、8画素×8画素のブロックが、行毎に記録されている。なお、JPEGデータの中には、他の記録順によって各ブロックのデータが記録されているものもあるが、本実施例では、図3に示した記録順で各ブロックが記録されているものとする。
JPEGデコーダ163(図2参照)は、画像データ参照部161が参照したJPEGデータをビットマップ形式のデータにデコードする機能部である。
図4は、JPEGデコーダ163の詳細な構成を示す説明図である。図示するように、JPEGデコーダ163は、ハフマン復号部191と、逆量子化処理部192と、逆DCT変換部193と、色空間変換部194とによって構成されている。
ハフマン復号部191は、ハフマン符号化によって可逆圧縮されたJPEGデータのビットストリームを復号する機能を有する。
逆量子化処理部192は、ハフマン復号部191によって復号したデータに対して、所定の量子化テーブルを用いて逆量子化を行い、ブロック毎に、8×8個のDCT係数を求める機能部である。
逆DCT変換部193は、逆量子化処理部192によって求められたDCT係数に対して逆DCT変換を行い、YCbCr形式の画像データを求める機能部である。
色空間変換部194は、逆DCT変換部193によって得られたYCbCr形式のデータをRGB形式のビットマップデータに変換する機能部である。
ここで、説明を図2に戻す。係数ぼやけ判定部162(本願の「ブロックぼやけ判定部」に相当する)は、JPEGデコーダ163が備えるハフマン復号部191および逆量子化処理部192を用いてJPEGデータをハフマン復号および逆量子化し、この結果得られたDCT係数に基づき、ぼやけの判断を行う機能部である。
図5は、逆量子化処理部192によって取得されたDCT係数の配列を示す説明図である。図示するように、各ブロックからは、逆量子化が行われた段階で、F00からF77までの計64個のDCT係数が得られる。これらのうち、最も左上に存在する係数F00は、直流成分と呼ばれ、他の係数は、交流成分と呼ばれる。各係数は、図中の右側および下側に位置するものほど、周波数の高い値となる。
係数ぼやけ判定部162は、図中に「第1の係数群」と記載した水平方向のみの交流成分である係数F01〜F07と、図中に「第2の係数群」と記載した垂直方向のみの交流成分である係数F10〜F70とを抽出して、これらの係数群に基づき、ぼやけの判定を行う。かかる判定処理の詳細については後述する。
輝度ぼやけ判定部164(本願の「画像ぼやけ判定部」に相当する)(図2参照)は、係数ぼやけ判定部162がDCT係数に基づきぼやけの判定を行った結果、合焦していると推測された領域について、更に、その領域の輝度値に基づきぼやけの判定を行う機能部である。かかるぼやけの判定処理の詳細については後述する。
B.印刷処理:
図6は、印刷装置100のCPU160が実行する印刷処理のフローチャートである。この印刷処理は、メモリカードMC等に記録された画像データを印刷するための処理である。
図6は、印刷装置100のCPU160が実行する印刷処理のフローチャートである。この印刷処理は、メモリカードMC等に記録された画像データを印刷するための処理である。
操作パネル140を用いたユーザの所定の操作に応じてこの印刷処理の実行が開始されると、まず、CPU160は、画像データ参照部161によって、メモリカードMCに記録されたJPEGデータを1つ参照する(ステップS10)。なお、ここでは、メモリカードMC内のJPEGデータを参照するものとするが、USBインタフェース130を介して接続されたデジタルカメラやコンピュータ内のJPEGデータを参照するものとしてもよい。
JPEGデータを参照すると、CPU160は、入力したJPEGデータについてぼやけ判定処理を行う(ステップS20)。このぼやけ判定処理の詳細については後述する。
1つのJPEGデータについてぼやけ判定処理を終了すると、CPU160は、メモリカードMC内の全てのJPEGデータを参照したかを判断する(ステップS30)。かかる処理によって、全てのJPEGデータを参照していないと判断した場合には(ステップS30:No)、処理をステップS10に戻し、次のJPEGデータを参照して、そのJPEGデータについてぼやけ判定処理を行う。
上記ステップS30によって、全てのJPEGデータを参照したと判断した場合には(ステップS30:Yes)、CPU160は、ステップS20のぼやけ判定処理によって合焦画像であると判定されたJPEGデータを、液晶ディスプレイ145に一覧表示する(ステップS40)。
合焦画像の一覧を液晶ディスプレイ145に表示すると、CPU160は、操作パネル140を介して、ユーザから、印刷の対象となる画像の選択を受け付ける(ステップS50)。そして、選択された画像を、インクヘッド211や紙送りモータ230、キャリッジモータ220等を制御して印刷する(ステップS60)。
以上で説明した印刷処理では、メモリカードMC内の全てのJPEGデータを参照するものとしたが、メモリカードMC内に複数のフォルダが生成されている場合には、ユーザによって指定されたフォルダ内に含まれるJPEGデータのみを参照するものとしてもよい。また、同一年、同一月、あるいは、同一日に撮像されたJPEGデータのみを参照するものとしてもよい。
C.ぼやけ判定処理:
図7は、図6に示した印刷処理のステップS20で実行されるぼやけ判定処理のフローチャートである。このぼやけ判定処理は、現在参照しているJPEGデータが、合焦画像であるか、ぼやけ画像であるかを判定するための処理である。
図7は、図6に示した印刷処理のステップS20で実行されるぼやけ判定処理のフローチャートである。このぼやけ判定処理は、現在参照しているJPEGデータが、合焦画像であるか、ぼやけ画像であるかを判定するための処理である。
当該ぼやけ判定処理が実行されると、CPU160は、まず、現在参照しているJPEGデータの中から、所定の帯領域毎にブロックデータを読み込み、JPEGデコーダ163を用いて、これをハフマン復号および逆量子化し、DCT係数を取得する(ステップS100)。取得したDCT係数は、RAM170に一時的に記憶する。
図8は、上述した帯領域の概念を示す説明図である。図示するように、本実施例において「帯領域」とは、横方向のブロック数が、JPEGデータの横方向のブロック数と同一であり、縦方向のブロック数が、所定の数(例えば、30ブロック)を有する帯状の領域のことをいう。上記ステップS100では、この帯領域内のブロックデータをJPEGデータから読み込みつつ、このデータをハフマン復号および逆量子化することで、DCT係数を取得する。このように、画像全体ではなく、帯領域毎にJPEGデータからデータを読み込むことで、RAM170の記憶容量を削減することが可能になる。
ここで説明を図7に戻す。上記ステップS100によって、帯領域内のDCT係数をRAM170に記憶すると、次に、CPU160は、係数ぼやけ判定部162を用いて、RAM170に記憶されたDCT係数に基づき、係数ぼやけ判定処理を行う(ステップS110)。
図9は、係数ぼやけ判定処理のフローチャートである。この処理は、RAM170に記憶されたすべてのブロックについて、それぞれが「合焦ブロック」であるか「ぼやけブロック」であるかを判定するための処理である。この係数ぼやけ判定処理は、ブロックの水平方向と垂直方向についてそれぞれ同様の処理が実行されるため、以下では、特記しない限り、水平方向のぼやけ分析処理を行う場合について説明する。
この処理が実行されると、CPU160は、まず、各ブロックを構成する8×8個のDCT係数の中から、図5に示した水平方向の交流成分である係数群F0i(i=1〜7)(垂直方向のぼやけ分析処理にあっては、係数群Fj0(j=1〜7))を取得する(ステップS300)。
係数群を取得すると、CPU160は、下記式(1)に基づき、取得した各係数の絶対値の和Sを求め、この値が、所定の平坦閾値を超えるかを判断する(ステップS310)。
S=Σ|F0i| (i=1〜7) ・・・(1)
上記ステップS310において、和Sが所定の平坦閾値以下であると判断されれば(ステップS310:No)、そのブロックの係数が表す輝度変化が平坦であるとみなし、分析対象のブロックは、「ぼやけブロック」であると判定する(ステップS320)。
一方、ステップS310において、和Sが所定の平坦閾値を超えると判断されれば(ステップS310:Yes)、そのブロックには、何らかの輝度変化があると判断できるため、CPU160は、後述するエッジパターンとの比較が容易となるように、まず、取得した各係数を下記式(2)によって正規化する(ステップS330)。この正規化処理によれば、正規化後の各係数値Fr01〜Fr07は、係数群の絶対値の和Sで、それぞれの係数値F01〜F07を除算した値となる。
Fr0i=F0i/S (i=1〜7) ・・・(2)
次に、CPU160は、ROM180に記憶されたエッジパターンテーブル181を参照して(ステップS340)、正規化後の各係数値Fr01〜Fr07によって表される勾配形状がいずれかの基本エッジパターンに近似するかを判断する(ステップS350)。
図10は、エッジパターンテーブル181の一例を示す説明図である。このエッジパターンテーブル181には、「A1」から「A16」までのパターン番号(図の1列目)に対して16種類の基本エッジパターン(図の3列目)が対応付けて記録されている。基本エッジパターンの横軸は、ブロック内の係数の位置(F01〜F07もしくはF10〜F70)を表しており、縦軸は、正規化後の係数値Frを表している。つまり、基本エッジパターンは、7つの係数値からなるデータとして構成されている。
各基本エッジパターンは、図10の2列目に示した輝度パターンに基づき生成されている。すなわち、図の2列目に示した輝度パターンをDCT変換して正規化したものが図10の3列目に示す基本エッジパターンとなる。なお、図中の輝度パターンは、実際には、エッジパターンテーブル181には記録されておらず、理解の便のために記載している。各輝度パターンは、1ブロック内の輝度変化の典型的な形状を、予め16種類に分類したものである。本実施例では、このように、基本エッジパターンを16種類に分類するものとするが、より多くのパターンに分類するものとしてもよい。
エッジパターンテーブル181には、更に、基本エッジパターンに対応付けて、左側エッジ幅LWと、中央エッジ幅MWと、右側エッジ幅RWという3種類のパラメータが記録されている。左側エッジ幅LWは、輝度パターンの左側に存在する平坦部の幅を表しており、右側エッジ幅RWは、輝度パターンの右側に存在する平坦部の幅を表している。また、中央エッジ幅MWは、左側エッジ幅LWと右側エッジ幅RWとに挟まれる勾配部分の幅を表している。
なお、図示を省略しているが、このエッジパターンテーブル181には、「A1」から「A16」までの基本エッジパターンに加え、これらの基本エッジパターンを左右反転させたエッジパターンがパターン番号B1〜B16に定義されており、上下反転させたエッジパターンがパターン番号C1〜C16に定義されている。また、「A1」から「A16」までの基本エッジパターンを上下および左右に反転させたエッジパターンがパターン番号D1〜D16に定義されている。つまり、全体で、64種類の基本エッジパターンがこのエッジパターンテーブル181に定義されている。
図9のステップS350では、ステップS330で正規化を行った各係数値Fr01〜Fr07と、基本エッジパターンを構成する各係数値Fb01〜Fb07との差の絶対値の合計SDを下記式(3)に従って算出し、この合計値SDが最小となる基本エッジパターンをエッジパターンテーブル181の中から選択する。そして、選択された基本エッジパターンについての合計値SDが、所定の閾値よりも小さければ、形状が近似する基本エッジパターンが検索されたと判断する(ステップS350:Yes)。一方、上述した演算によって得られた値SDが、所定の閾値よりも大きい場合には、近似する基本エッジパターンが検索されなかったと判断し(ステップS350:No)、分析対象のブロックを「ぼやけブロック」であると判定する(ステップS320)。
SD=Σ|Fr0i−Fb0i| (i=1〜7) ・・・(3)
上記ステップS350において、形状が近似する基本エッジパターンが検索されたと判断されれば、CPU160は、その基本エッジパターンに対応付けられた中央エッジ幅MWをエッジパターンテーブル181から取得する(ステップS360)。そして、その中央エッジ幅MWが、所定のぼやけ幅閾値よりも狭いかを判断する(ステップS370)。この判断の結果、中央エッジ幅MWがぼやけ幅閾値よりも狭ければ(ステップS370:Yes)、分析対象のブロックが「合焦ブロック」であると判定する(ステップS380)。中央エッジ幅MWが狭ければ、そのブロック内の輝度変化が急峻であり、被写体の輪郭がはっきりとブロック内に現れていると判断できるためである。これに対して、中央エッジ幅MWがぼやけ幅閾値よりも広ければ(ステップS370:No)、輪郭がぼやけていると判断できるため、そのブロックを「ぼやけブロック」であると判定する(ステップS320)。こうして分析対象のブロックが、「合焦ブロック」であるか「ぼやけブロック」であるかを判定すると、CPU160は、上述した一連の係数ぼやけ判定処理を終了して、処理を図7のぼやけ判定処理に戻す。
なお、上述した係数ぼやけ分析処理は、ブロック内の水平方向と垂直方向とについてそれぞれ行われるが、少なくともいずれか一方のぼやけ分析処理において、「合焦ブロック」と判定されれば、他方の分析処理で「ぼやけブロック」と判定されたとしてもそのブロックは、合焦ブロックであると判定するものとする。
ところで、上述した係数ぼやけ判定処理では、ブロック毎にぼやけの有無を判別するものとしたが、これに対して、隣接したブロック間のぼやけ幅を累積していくことで、ブロックを跨って存在するぼやけを検出することもできる。
図11ないし図13は、ぼやけ幅を累積する概念を示す説明図である。ぼやけ幅を累積するにあたっては、図9に示した係数ぼやけ分析処理のステップS350によって、ブロック毎に近似する基本エッジパターンを選択した後に、CPU160は、隣接ブロック同士でエッジパターンの傾き方向が一致するかを判断する。図11には、隣接ブロック同士のエッジパターンの傾き方向が一致する例を示し、図12には、一致しない例を示している。
図11のように隣接ブロック同士の傾き方向が一致すれば、そのエッジパターン同士は、画像中において、同じぼやけ部分を形成している場合がある。そのため、CPU160は、現在注目しているブロックの右側エッジ幅RWとこれに隣接しているブロックの左側エッジ幅LWの加算値が、図13に示すように、所定の連結誤差閾値内であるかを判定し、連結誤差閾値内であれば、これらのブロックのエッジパターンは、同じぼやけ部分を形成していると判断できる。そこで、このような場合には、CPU160は、図9のステップS360において、両ブロックのぼやけ幅を累積加算し、ブロックを跨ったぼやけ幅を算出する。そして、ステップS370において、累積加算したぼやけ幅と所定のぼやけ幅閾値とを比較して、そのブロックが合焦ブロックであるかぼやけブロックであるかを判断する。
なお、上述した処理をブロックの連なり(横方向および縦方向)に沿って逐次実行していけば、2つの隣接ブロックだけではなく、複数のブロックに跨って存在するぼやけの幅を算出することができる。従って、図9のステップS370では、その結果算出されたぼやけ幅と、所定のぼやけ幅閾値とを比較すれば、ブロックのサイズを超えるぼやけ幅に基づき、分析対象のブロックが合焦ブロックかぼやけブロックかを判断することができる。なお、複数のブロックにぼやけ幅が跨る場合には、ぼやけの途中部分に位置するブロックについては、一律にぼやけブロックであると判断し、ぼやけの終端に位置するブロックに累積されたぼやけ幅に基づき、そのブロックが合焦ブロックであるか否かを判断するものとする。
このように、ぼやけ幅を累積するものとすれば、画像内のぼやけ部分が1ブロックのサイズを超えるような高解像度な画像においても、精度良く、ぼやけの有無を判断することができる。例えば、600万画素(約3000画素×2000画素)の画像を、L版サイズ(約13cm×約9cm)の印刷用紙に印刷すると、8×8画素からなる1ブロックの実サイズは、0.35mm×0.35mmほどの大きさになる。そのため、1ブロックのサイズ内でぼやけの有無を判定することが困難であるが、上述した方法によってぼやけ幅を累積していけば、0.35mmを超えるぼやけ幅についても検出することが可能となり、精度良く画像がぼやけているかを判断することができる。
ここで、説明を図7のぼやけ判定処理に戻す。上述した係数ぼやけ判定処理(ステップS110)によって、帯領域内の各ブロックについてそれぞれ「ぼやけブロック」であるか「合焦ブロック」であるかを判定すると、次に、CPU160は、図8に示すように、帯領域を横方向に複数の領域(以下、かかる領域を「ウィンドウ領域」という)に区分し、それぞれのウィンドウ領域について、その中に含まれる合焦ブロックの数を集計して、その集計値が、所定数以上となるウィンドウ領域を抽出する(ステップS120)。ウィンドウ領域の大きさとしては、例えば、L版の印刷用紙において、実用的に合焦か否かを判断可能な1cm×1cm相当の大きさとすることができる(600万画素の画像をL版の用紙に印刷するものとすると、30×30ブロック程度の大きさ)。
上記ステップS120において、該当するウィンドウ領域が抽出されれば(ステップS130:Yes)、そのウィンドウ領域は、合焦ブロックを多く含むことから、合焦している領域であると推測できる。そこで、CPU160は、輝度ぼやけ判定部164を用いて、以下のステップS140〜S170に係る処理を実行することで、ウィンドウ領域内の輝度値に基づき、より厳密なぼやけの判定を行う。
すなわち、まず、CPU160は、ステップS120で抽出された1つ目のウィンドウ領域内のDCT係数を、JPEGデコーダ163を用いてデコードし、ビットマップ形式のデータに変換する(ステップS140)。
ウィンドウ領域内のデータをビットマップ形式に変換すると、CPU160は、そのウィンドウ領域内の上下方向、左右方向、および、斜め方向の各方向別に各画素の輝度値に基づき、そのウィンドウ領域内に存在するエッジの数およびエッジ幅の検出を行う(ステップS150)。なお、ビットマップ形式のデータは、R,G,B各色の画素値によって表されるため、CPU160は、この検出処理に先立ち、これらの値から、周知の演算式である下記式(4)によって輝度値Lを求める。
輝度値L=(0.298912*R+0.586611*G+0.114478*B) ・・・(4)
図14は、輝度値に基づいてエッジ幅およびエッジ数を検出する概念を示す説明図である。ここでは、図中に「エッジ検出方向」と示した直線上に存在するエッジを検出する場合について説明する。図14内に示した各格子は、ウィンドウ領域内の各画素を表しており、それぞれが輝度値を有している。
「エッジ検出方向」と示した直線上の各画素の上には、それぞれ、矢印を付している。この矢印の方向は、それぞれ各画素の輝度勾配の方向を示している。例えば、図中に示した画素Dの輝度勾配のベクトル量Aは、その周囲に隣接する画素の輝度値を図示するようにL1,L2,L3,L4とすれば、下記式(5)によって算出することができる。
A=((L3−L2)/2,(L4−L1)/2) ・・・(5)
上記ステップS150では、エッジ検出方向の直線上に位置する各画素の輝度勾配と、エッジ検出方向とのなす角θが所定の角度(例えば、80°)以下である画素が続く場合に、その連続した画素群を、1つのエッジであると検出し、その画素の続く長さをエッジ幅として検出する。ただし、輝度勾配がゼロ、すなわち、ベクトル量Aが(0,0)の場合には、その画素はエッジを構成しないものとする。もちろんそのベクトルの大きさが予め設定した値以下の場合にも、エッジを構成しないものとしてもよい。なお、エッジ検出方向が、図14のように、水平(あるいは垂直)から45°に傾いていれば、その画素の続く長さに、2の平方根(ルート2)を乗じて得た値が、エッジ幅となる。このようにしてエッジの検出を行うと、図14の場合には、図中、「エッジ幅」と示した部分が、1つのエッジとして検出され、その幅は、画素数「4」に、ルート2を乗じて得た値、即ち、約5.66と検出される。なお、上述した輝度勾配とエッジ検出方向とのなす角θは、エッジ検出方向のベクトル量を「B」とすると(図14の場合には、B=(1,1))、ベクトルの内積によって下記式(6)によって求めることができる。
cosθ=(A・B)/(|A|・|B|) ・・・(6)
上記ステップS150では、更に、検出されたエッジを構成する各画素について、その輝度勾配とエッジ検出方向とのなす角θの平均が、45°以下である場合に、そのエッジは、そのエッジ検出方向と同じ方向を向くものであると判断する。つまり、各画素の輝度勾配とエッジ検出方向とのなす角θがすべて80°以内に収まったとしても、その平均値が45°を超えていれば、現在のエッジ検出方向のエッジとしてカウントしないものとする。このようにすることで、各方向別にエッジの有無を精度良く判定することができる。
図14では、1つの検出方向について、1つの直線上に存在するエッジを検出しているが、その検出方向に存在するエッジは、必ずこの直線上に存在するとは限らない。そこで、本実施例では、より広い範囲でエッジの検出を行うため、1つの検出方向につき、2ないし3の直線上において上述した検出処理を繰り返し行う。
図15は、1つのウィンドウ領域内においてエッジの検出を行う方向と検出を行う直線の位置とを示す説明図である。図15に示すように、本実施例においてエッジの検出を行う方向は、(1)下から上、(2)左下から右上、(3)左から右、(4)左上から右下、(5)上から下、(6)右上から左下、(7)右から左、(8)右下から左上、の計8方向である。また、図示するように、水平方向あるいは垂直方向のエッジの検出は、1つのウィンドウ領域において異なる直線上で2回行い、斜め方向のエッジの検出は、1つのウィンドウ領域において異なる直線上で3回行う。このように水平・垂直方向と斜め方向とで検出の回数を異なるものとしたのは、エッジの検出を行う画素数を統一するためである。例えば、図15に示したウィンドウ領域が6×6の画素で構成されているとすると、図の(1)の場合には、図中に破線で示すように、6画素×2本で計12画素についてエッジの検出を行うことになり、(2)の場合には、3画素+6画素+3画素で、やはり、計12画素についてエッジの検出を行うことになる。なお、本実施例では、2ないし3の直線上においてエッジの検出を行うものとしたが、それ以上の数の直線上においてエッジの検出を行うものとしても構わない。
上記ステップS150では、図15に示したように8方向についてエッジの数を検出すると、図15の(1)と(5)、(2)と(6)、(3)と(7)、(4)と(8)についてそれぞれエッジの数を合計する。つまり、水平方向、垂直方向、斜め45°方向、斜めマイナス45°方向の4方向について、それぞれエッジの数を求める。そして、CPU160は、この4方向のすべてにおいて、エッジの数が所定の閾値(例えば、4個)未満であるかを判断する(ステップS160)。
上記ステップS160において、各方向のいずれもが所定の閾値以上の数のエッジを含んでいると判断すれば(ステップS160:No)、CPU160は、各方向毎に、それぞれ含まれているエッジの幅の平均値を算出する。そして、算出された4つの平均値が、すべて所定の閾値以下であるかどうかを判断する(ステップS170)。その結果、この4つの平均値が、すべて所定の閾値以下であれば、その画像は、「合焦画像」であると判断し(ステップS180)、当該ぼやけ判定処理を終了する。この場合には、4方向のすべてにおいて、十分な個数のエッジを含んでおり、更に、そのエッジの幅も十分に小さく、そのウィンドウ領域は合焦していると判断できるためである。また、画像全体のうち、1箇所でもウィンドウ領域が合焦していれば、その画像の中のどこかにピントが合っている正常な画像であると判断できるため、他のウィンドウ領域や帯領域についてぼやけの判定を行うことなく、上記ステップS180では、「合焦画像」であると判断する。
上記ステップS160において、4方向のいずれもが、閾値未満の数のエッジしか含んでいないと判断されれば(ステップS160:No)、そのウィンドウ領域は、十分な数のエッジを含んでいないことになるため、ぼやけていると判断することができる。そのため、CPU160は、現在のウィンドウ領域についてのぼやけの判定処理を終了し、上記ステップS120の処理によって他のウィンドウ領域が抽出されていないかを判断する(ステップS190)。その結果、他のウィンドウ領域が抽出されていれば(ステップS190:No)、処理をステップS140に戻して、そのウィンドウ領域について、ビットマップ形式へのデコードを行い、輝度値に基づくぼやけ判定処理を行う。
ステップS120の処理によって抽出されたすべてのウィンドウ領域について上述した輝度値に基づくぼやけの判定を完了した場合(ステップS190:Yes)、もしくは、ステップS120において、合焦ブロックが所定数以上含まれるウィンドウ領域が1つも抽出されなかった場合には(ステップS130:No)、CPU160は、現在の帯領域が、画像の終端に位置するかを判断する(ステップS200)。その結果、現在の帯領域が画像の終端であれば(ステップS200:Yes)、合焦しているウィンドウ領域が1つも存在していなかったことになるので、現在の画像を、「ぼやけ画像」と判定する(ステップS210)。これに対して、現在の帯領域が、画像の終端でなければ(ステップS200:No)、CPU160は、処理をステップS100に戻して、次の帯領域についてハフマン復号および逆量子化を行い、上述した一連の処理を繰り返す。
以上で説明したぼやけ判定処理が完了すれば、CPU160は、処理を図6に示した印刷処理に戻す。こうして、メモリカードMCに記録されたすべてのJPEGデータに対して上述したぼやけ判定処理を行えば、ぼやけている画像を排除して、合焦しているJPEGデータのみをユーザに提示することができる。
なお、上記ぼやけ判定処理のステップS140,S150では、JPEGデータを、一旦、ビットマップ形式のデータにデコードしてから、RGB値に基づき輝度値Lを求めるものとしたが、JPEGデコーダ163の逆DCT変換部193によって得られるデータは、輝度値を含むYCbCr形式のデータであるため、この出力値「Y」をそのまま用いるものとしてもよい。このようにすれば、ビットマップ形式までデコードする必要がないので、処理速度を向上させることができる。
D.効果:
以上で説明した本実施例の印刷装置100によれば、メモリカードMC等に記録されたJPEGデータを帯領域毎に分割してRAM170に記憶するため、RAM170の記憶容量を低減することができる。
以上で説明した本実施例の印刷装置100によれば、メモリカードMC等に記録されたJPEGデータを帯領域毎に分割してRAM170に記憶するため、RAM170の記憶容量を低減することができる。
また、本実施例では、輝度値に基づくぼやけの判定に先立ち、RAM170に記憶した帯領域内のDCT係数に基づき、ブロック毎にぼやけの判定を行う。従って、帯領域全体についてデコードすることなく、各ブロックがぼやけているか否かを簡易的に判別することができるので、CPU160の処理負担を軽減することができる。
また、本実施例では、DCT係数を用いたぼやけの判定処理によって合焦ブロックと判断されたブロックが多く含まれるウィンドウ領域についてのみ、ビットマップ形式までデコードを行う。そのため、ビットマップ形式までデコードする範囲を制限することができるので、CPU160の処理負担を軽減することができる。
また、本実施例では、DCT係数によるぼやけの判定に加え、ビットマップ形式に変換された領域について、更に、その輝度値を用いてぼやけの有無を判断する。そのため、精度良く、ぼやけの有無を判断することができる。
更に、本実施例では、1箇所でもウィンドウ領域が合焦していると判断されれば、画像全体が合焦画像であると判断するため、ぼやけの判定を高速に行うことが可能になる。
以上、本発明の一実施例について説明したが、本発明はこのような実施例に限定されず、その趣旨を逸脱しない範囲で種々の構成を採ることができることはいうまでもない。例えば、上述した各種処理をコンピュータが実行する構成とすれば、コンピュータによってぼやけの判定を行うことが可能になる。
100...印刷装置
110...スキャナ
120...メモリカードスロット
140...操作パネル
145...液晶ディスプレイ
150...制御ユニット
160...CPU
161...画像データ参照部
162...係数ぼやけ判定部
163...JPEGデコーダ
164...輝度ぼやけ判定部
170...RAM
180...ROM
181...エッジパターンテーブル
191...ハフマン復号部
192...逆量子化処理部
193...逆DCT変換部
194...色空間変換部
210...キャリッジ
211...インクヘッド
212...インクカートリッジ
220...キャリッジモータ
230...モータ
260...駆動ベルト
270...プラテン
280...摺動軸
110...スキャナ
120...メモリカードスロット
140...操作パネル
145...液晶ディスプレイ
150...制御ユニット
160...CPU
161...画像データ参照部
162...係数ぼやけ判定部
163...JPEGデコーダ
164...輝度ぼやけ判定部
170...RAM
180...ROM
181...エッジパターンテーブル
191...ハフマン復号部
192...逆量子化処理部
193...逆DCT変換部
194...色空間変換部
210...キャリッジ
211...インクヘッド
212...インクカートリッジ
220...キャリッジモータ
230...モータ
260...駆動ベルト
270...プラテン
280...摺動軸
Claims (14)
- 画像がぼやけているか否かを判定するぼやけ判定装置であって、
複数の画素からなるブロックを単位として画素値を空間領域から周波数領域に変換して得られた係数が記録されている画像データを参照する画像データ参照部と、
前記画像データ内の係数の連なりを、前記画素値の変化の代表的な勾配形状を前記係数によって表した複数種類の基本エッジパターンと比較することにより、前記ブロック毎にぼやけているか否かを判定するブロックぼやけ判定部と、
前記画像データを、複数のブロックからなるウィンドウ領域に区切り、ぼやけていないと判定されたブロックを所定個以上含むウィンドウ領域を抽出するウィンドウ抽出部と、
前記抽出されたウィンドウ領域について、前記係数を、前記周波数領域から前記空間領域に逆変換して、該係数に応じた画素値を取得するデコード部と、
前記取得された画素値の勾配変化に基づき、前記抽出されたウィンドウ領域内に存在するエッジを検出するエッジ検出部と、
前記抽出されたいずれかのウィンドウ領域が、前記エッジを所定個数以上含む場合に、前記画像データはぼやけていないと判定する画像ぼやけ判定部と
を備えるぼやけ判定装置。 - 請求項1に記載のぼやけ判定装置であって、
前記画像データを、少なくとも一方向に連続して配置されたブロックを含む帯領域に区切り、該帯領域毎に前記係数を一時的に記憶する帯領域記憶部を備え、
前記ブロックぼやけ判定部は、前記帯領域記憶部に記憶された係数の連なりを、前記複数種類の基本エッジパターンと比較し、
前記ウィンドウ抽出部は、前記帯領域をこれよりも小さな領域である前記ウィンドウ領域に区切り、前記抽出を行う
ぼやけ判定装置。 - 請求項1または請求項2に記載のぼやけ判定装置であって、
前記エッジ検出部は、前記抽出されたウィンドウ領域内の、複数の方向別に、該方向に沿ったエッジを検出する
ぼやけ判定装置。 - 請求項3に記載のぼやけ判定装置であって、
前記エッジ検出部は、前記検出の方向と、前記画素値の勾配方向とのなす角が、所定の角度範囲に収まる画素が、前記検出の方向に連続して連なる画素の範囲を、1つのエッジとして検出する
ぼやけ判定装置。 - 請求項4に記載のぼやけ判定装置であって、
前記エッジ検出部は、前記1つのエッジとして検出された各画素の画素値の勾配方向と、前記検出の方向とのなす角の平均値が、所定の角度以下である場合に、該エッジは、前記方向に沿ったエッジであると判断する
ぼやけ判定装置。 - 請求項3ないし請求項5のいずれかに記載のぼやけ判定装置であって、
前記エッジ検出部は、前記複数の方向として、少なくとも水平方向、垂直方向、斜め45度方向を含む方向別に前記エッジを検出する
ぼやけ判定装置。 - 請求項6に記載のぼやけ判定装置であって、
前記エッジ検出部は、前記検出の方向のすべてについて、前記検出を行う画素の数が同一になるように、前記ウィンドウ領域内において前記エッジの検出を行う部位が設定されている
ぼやけ判定装置。 - 請求項3ないし請求項7のいずれかに記載のぼやけ判定装置であって、
前記画像ぼやけ判定部は、前記抽出されたいずれかのウィンドウ領域が、前記検出の方向のすべての方向について、前記エッジを所定個数以上含み、かつ、前記各方向別のエッジの幅の平均が、すべて所定の幅以下の場合に、前記画像データはぼやけていないと判定する
ぼやけ判定装置。 - 請求項1ないし請求項8のいずれかに記載のぼやけ判定装置であって、
前記ブロックぼやけ判定部は、隣接するブロック間で、前記係数の連なりに対応する前記基本エッジパターンの勾配の方向が一致する場合に、前記勾配の幅を累積加算し、該累積加算された勾配の幅に基づき、前記隣接するブロックに跨って、ぼやけが存在するか否かを判定する
ぼやけ判定装置。 - 請求項1ないし請求項9のいずれかに記載のぼやけ判定装置であって、
前記画像データは、JPEG規格に基づき生成されたデータであり、前記係数は、前記画素値をブロック毎に離散コサイン変換して得られた係数である
ぼやけ判定装置。 - 画像がぼやけているか否かを判定するぼやけ判定方法であって、
複数の画素からなるブロックを単位として画素値を空間領域から周波数領域に変換して得られた係数が記録されている画像データを参照し、
前記画像データ内の係数の連なりを、前記画素値の変化の代表的な勾配形状を前記係数によって表した複数種類の基本エッジパターンと比較することにより、前記ブロック毎にぼやけているか否かを判定し、
前記画像データを、複数のブロックからなるウィンドウ領域に区切り、ぼやけていないと判定されたブロックを所定個以上含むウィンドウ領域を抽出し、
前記抽出されたウィンドウ領域について、前記係数を、前記周波数領域から前記空間領域に逆変換して、該係数に応じた画素値を取得し、
前記取得された画素値の勾配変化に基づき、前記抽出されたウィンドウ領域内に存在するエッジを検出し、
前記抽出されたいずれかのウィンドウ領域が、前記エッジを所定個数以上含む場合に、前記画像データはぼやけていないと判定する
ぼやけ判定方法。 - 画像がぼやけているか否かを判定して印刷する印刷装置であって、
複数の画素からなるブロックを単位として画素値を空間領域から周波数領域に変換して得られた係数が記録されている画像データを参照する画像データ参照部と、
前記画像データ内の係数の連なりを、前記画素値の変化の代表的な勾配形状を前記係数によって表した複数種類の基本エッジパターンと比較することにより、前記ブロック毎にぼやけているか否かを判定するブロックぼやけ判定部と、
前記画像データを、複数のブロックからなるウィンドウ領域に区切り、ぼやけていないと判定されたブロックを所定個以上含むウィンドウ領域を抽出するウィンドウ抽出部と、
前記抽出されたウィンドウ領域について、前記係数を、前記周波数領域から前記空間領域に逆変換して、該係数に応じた画素値を取得するデコード部と、
前記取得された画素値の勾配変化に基づき、前記抽出されたウィンドウ領域内に存在するエッジを検出するエッジ検出部と、
前記抽出されたいずれかのウィンドウ領域が、前記エッジを所定個数以上含む場合に、前記画像データはぼやけていないと判定する画像ぼやけ判定部と
前記ぼやけていないと判定された画像データの印刷を行う印刷部と
を備える印刷装置。 - 画像がぼやけているか否かを判定するためのコンピュータプログラムであって、
複数の画素からなるブロックを単位として画素値を空間領域から周波数領域に変換して得られた係数が記録されている画像データを参照する画像データ参照機能と、
前記画像データ内の係数の連なりを、前記画素値の変化の代表的な勾配形状を前記係数によって表した複数種類の基本エッジパターンと比較することにより、前記ブロック毎にぼやけているか否かを判定するブロックぼやけ判定機能と、
前記画像データを、複数のブロックからなるウィンドウ領域に区切り、ぼやけていないと判定されたブロックを所定個以上含むウィンドウ領域を抽出するウィンドウ抽出機能と、
前記抽出されたウィンドウ領域について、前記係数を、前記周波数領域から前記空間領域に逆変換して、該係数に応じた画素値を取得するデコード機能と、
前記取得された画素値の勾配変化に基づき、前記抽出されたウィンドウ領域内に存在するエッジを検出するエッジ検出機能と、
前記抽出されたいずれかのウィンドウ領域が、前記エッジを所定個数以上含む場合に、前記画像データはぼやけていないと判定する画像ぼやけ判定機能と
をコンピュータに実現させるコンピュータプログラム。 - 請求項13に記載のコンピュータプログラムを記録したコンピュータ読み取り可能な記録媒体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006307915A JP2008123346A (ja) | 2006-11-14 | 2006-11-14 | ぼやけ判定装置、ぼやけ判定方法および印刷装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006307915A JP2008123346A (ja) | 2006-11-14 | 2006-11-14 | ぼやけ判定装置、ぼやけ判定方法および印刷装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2008123346A true JP2008123346A (ja) | 2008-05-29 |
Family
ID=39508024
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006307915A Pending JP2008123346A (ja) | 2006-11-14 | 2006-11-14 | ぼやけ判定装置、ぼやけ判定方法および印刷装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2008123346A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011113526A (ja) * | 2009-11-30 | 2011-06-09 | Nikon Corp | 画像判定装置および画像判定プログラム |
US8897593B2 (en) | 2008-12-04 | 2014-11-25 | Kabushiki Kaisha Toshiba | Determining image quality based on distribution of representative autocorrelation coefficients |
-
2006
- 2006-11-14 JP JP2006307915A patent/JP2008123346A/ja active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8897593B2 (en) | 2008-12-04 | 2014-11-25 | Kabushiki Kaisha Toshiba | Determining image quality based on distribution of representative autocorrelation coefficients |
JP2011113526A (ja) * | 2009-11-30 | 2011-06-09 | Nikon Corp | 画像判定装置および画像判定プログラム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4193881B2 (ja) | 画像処理装置およびぼやけ検出方法 | |
US20080137982A1 (en) | Blurring determination device, blurring determination method and printing apparatus | |
JP4487805B2 (ja) | 画像評価方法、画像評価装置、及び印刷装置 | |
US9649839B2 (en) | Image processing apparatus and image processing method | |
JP6335214B2 (ja) | 高容量2dカラーバーコードの設計およびデコード方法 | |
US10013626B2 (en) | Image processing apparatus and image processing method setting division size for dividing image data | |
JP6383753B2 (ja) | 高容量の2dカラーバーコード設計、およびカメラベースのアプリケーションの処理方法 | |
US8441701B2 (en) | Image processing apparatus, image processing method, image processing program, and storage medium | |
US20100260423A1 (en) | Apparatus and method for processing image | |
JP2017013378A (ja) | 画像処理装置および画像処理方法 | |
US20060152765A1 (en) | Image processing apparatus, image forming apparatus, image reading process apparatus, image processing method, image processing program, and computer-readable storage medium | |
US7646911B2 (en) | Conversion method, apparatus and computer program for converting a digital image obtained by a scanner | |
JP4229072B2 (ja) | 画像処理装置、印刷装置 | |
JP6327533B2 (ja) | カメラベースのアプリケーション用の高容量2dカラーバーコードの設計および処理方法 | |
US20050036160A1 (en) | Image processing apparatus and method thereof | |
US7924468B2 (en) | Camera shake determination device, printing apparatus and camera shake determination method | |
KR101228932B1 (ko) | 화상형성장치 및 화상형성방법 | |
JP2008123346A (ja) | ぼやけ判定装置、ぼやけ判定方法および印刷装置 | |
JP2007208583A (ja) | 画像出力装置および画像出力方法 | |
CN106457835B (zh) | 对与半色调图像相对应的垂直边缘进行归类 | |
JP4910971B2 (ja) | 手ぶれ判定装置、および、手ぶれ判定方法 | |
JP2020093494A (ja) | 画像出力装置、画像出力方法および出力画像データ生産方法 | |
JP6323720B2 (ja) | 画像処理装置 | |
JP2008165734A (ja) | ぼやけ判定装置、ぼやけ判定方法および印刷装置 | |
JP2008028886A (ja) | 画像処理装置およびぼやけ検出方法 |