1.実施形態1
以下、図面を参照して、本発明の第1の実施形態を詳細に説明する。本実施形態においては、画像形成出力による出力結果を読み取った読取画像とマスター画像とを比較することにより出力結果を検査する検査装置を含む画像検査システムにおいて、検査時間を短縮するための機能について説明する。図1は、本実施形態に係る画像検査システムの全体構成を示す図である。
図1に示すように、本実施形態に係る画像検査システムは、DFE(Digital Front End)1、エンジンコントローラ2、プリントエンジン3、検査装置4及びインタフェース端末5を含む。DFE1は、受信した印刷ジョブに基づいて印刷出力するべき画像データ、即ち出力対象画像であるビットマップデータを生成し、生成したビットマップデータをエンジンコントローラ2に出力する画像処理装置である。
エンジンコントローラ2は、DFE1から受信したビットマップデータに基づいてプリントエンジン3を制御して画像形成出力を実行させる。また、エンジンコントローラ2は、DFE1から受信したビットマップデータを、プリントエンジン3による画像形成出力の結果を検査装置4が検査する際に参照するための検査用画像の元となる情報として検査装置4に送信する。
プリントエンジン3は、エンジンコントローラ2の制御に従い、ビットマップデータに基づいて記録媒体である用紙に対して画像形成出力を実行する画像形成装置である。尚、記録媒体としては、上述した用紙の他、フィルム、プラスチック等のシート状の材料で、画像形成出力の対象物となるものであれば採用可能である。
検査装置4は、エンジンコントローラ2から入力されたビットマップデータに基づいてマスター画像を生成する。そして、検査装置4は、プリントエンジン3が出力した用紙を読取装置で読み取って生成した読取画像を上記生成したマスター画像と比較することにより、出力結果の検査を行う画像検査装置である。
検査装置4は、出力結果に欠陥があると判断した場合、欠陥として判定されたページを示す情報をエンジンコントローラ2に通知する。これにより、エンジンコントローラ2によって欠陥ページの再印刷制御が実行される。
インタフェース端末5は、検査装置4による欠陥判定結果を確認するためのGUI(Graphical User Interface)や、検査におけるパラメータを設定するためのGUIを表示するための情報処理端末である。例えば、インタフェース端末5は、PC(Personal Computer)等の一般的な情報処理端末によって実現される。
ここで、本実施形態に係るDFE1、エンジンコントローラ2、プリントエンジン3、検査装置4及びインタフェース端末5を構成するハードウェアについて、図2を参照して説明する。図2は、本実施形態に係る検査装置4のハードウェア構成を示すブロック図である。図2においては、検査装置4のハードウェア構成を示すが、他の装置についても同様である。
図2に示すように、本実施形態に係る検査装置4は、一般的なPC(Personal Computer)やサーバ等の情報処理装置と同様の構成を有する。即ち、本実施形態に係る検査装置4は、CPU(Central Processing Unit)10、RAM(Random Access Memory)20、ROM(Read Only Memory)30、HDD(Hard Disk Drive)40及びI/F50がバス90を介して接続されている。また、I/F50にはLCD(Liquid Crystal Display)60、操作部70及び専用デバイス80が接続されている。
CPU10は演算手段であり、検査装置4全体の動作を制御する。RAM20は、情報の高速な読み書きが可能な揮発性の記憶媒体であり、CPU10が情報を処理する際の作業領域として用いられる。ROM30は、読み出し専用の不揮発性記憶媒体であり、ファームウェア等のプログラムが格納されている。HDD40は、情報の読み書きが可能な不揮発性の記憶媒体であり、OS(Operating System)や各種の制御プログラム、アプリケーション・プログラム等が格納されている。
I/F50は、バス90と各種のハードウェアやネットワーク等を接続し制御する。LCD60は、ユーザが検査装置4の状態を確認するための視覚的ユーザインタフェースである。操作部70は、キーボードやマウス等、ユーザが検査装置4に情報を入力するためのユーザインタフェースである。
専用デバイス80は、エンジンコントローラ2、プリントエンジン3及び検査装置4において、専用の機能を実現するためのハードウェアである。プリントエンジン3の場合、専用デバイス80は、画像形成出力対象の用紙を搬送する搬送機構や、紙面上に画像形成出力を実行するプロッタ装置である。また、エンジンコントローラ2、検査装置4の場合は、高速に画像処理を行うための専用の演算装置である。このような演算装置は、例えばASIC(Application Specific Integrated Circuit)として構成される。また、紙面上に出力された画像を読み取る読取装置も、専用デバイス80によって実現される。
このようなハードウェア構成において、ROM30に格納されているプログラムや、HDD40若しくは図示しない光学ディスク等の記録媒体からRAM20に読み出されたプログラムに従ってCPU10が演算を行うことにより、ソフトウェア制御部が構成される。このようにして構成されたソフトウェア制御部と、ハードウェアとの組み合わせによって、本実施形態に係るDFE1、エンジンコントローラ2、プリントエンジン3、検査装置4及びインタフェース端末5の機能を実現する機能ブロックが構成される。
図3は、本実施形態に係るDFE1、エンジンコントローラ2、プリントエンジン3及び検査装置4の機能構成を示すブロック図である。図3においては、データの送受信を実線で、用紙の流れを破線で示している。図3に示すように、本実施形態に係るDFE1は、ジョブ情報処理部101及びRIP処理部102を含む。また、エンジンコントローラ2は、データ取得部201、エンジン制御部202、ビットマップ送信部203を含む。また、プリントエンジン3は、印刷処理部301を含む。また、検査装置4は、読取装置400、読取画像取得部401、マスター画像処理部402、検査制御部403及び比較検査部404を含む。
ジョブ情報処理部101は、DFE1外部からネットワークを介して入力される印刷ジョブや、オペレータの操作によりDFE1内部に格納された画像データに基づいて生成される印刷ジョブに基づき、画像形成出力の実行を制御する。画像形成出力の実行に際して、ジョブ情報処理部101は、印刷ジョブに含まれる画像データに基づき、RIP処理部102にビットマップデータを生成させる。
RIP処理部102は、ジョブ情報処理部101の制御に従い、印刷ジョブに含まれる画像データに基づいてプリントエンジン3が画像形成出力を実行するためのビットマップデータを生成する。ビットマップデータは、画像形成出力するべき画像を構成する各画素の情報である。
本実施形態に係るプリントエンジン3は、CMYK(Cyan,Magenta,Yellow,blacK)各色二値の画像に基づいて画像形成出力を実行する。これに対して、一般的に、印刷ジョブに含まれる画像のデータは、一画素が256階調等の多階調で表現された多値画像である。そのため、RIP処理部102は、印刷ジョブに含まれる画像データを多値画像から少値画像に変換して、CMYK各色二値のビットマップデータを生成し、エンジンコントローラ2に送信する。
データ取得部201は、DFE1から入力されるビットマップデータを取得し、エンジン制御部202及びビットマップ送信部203夫々を動作させる。エンジン制御部202は、データ取得部201から転送されたビットマップデータに基づき、プリントエンジン3に画像形成出力を実行させる。ビットマップ送信部203は、データ取得部201が取得したビットマップデータを、マスター画像生成の為に検査装置4に送信する。
印刷処理部301は、エンジンコントローラ2から入力されるビットマップデータを取得し、印刷用紙に対して画像形成出力を実行し、印刷済みの用紙を出力する画像形成部である。本実施形態に係る印刷処理部301は、電子写真方式の一般的な画像形成機構によって実現されるが、インクジェット方式等の他の画像形成機構を用いることも可能である。
読取装置400は、印刷処理部301によって印刷が実行されて出力された印刷用紙の紙面上に形成された画像を読み取り、読取画像を出力する画像読取部である。読取装置400は、例えば印刷処理部301によって出力された印刷用紙の、検査装置4内部における搬送経路に設置されたラインスキャナであり、搬送される印刷用紙の紙面上を走査することによって紙面上に形成された画像を読み取る。
読取装置400によって生成された読取画像が検査装置4による検査の対象となる。読取画像は、画像形成出力によって出力された用紙の紙面を読み取って生成された画像であるため、出力結果を示す画像となる。読取画像取得部401は、印刷用紙の紙面が読取装置400によって読み取られて生成された読取画像の情報を取得する。読取画像取得部401が取得した読取画像の情報は、比較検査のために比較検査部404に入力される。尚、比較検査部404への読取画像の入力は検査制御部403の制御によって実行される。その際、検査制御部403が読取画像を取得してから比較検査部404に入力する。
マスター画像処理部402は、上述したようにエンジンコントローラ2から入力されたビットマップデータを取得し、上記検査対象の画像と比較するための検査用画像であるマスター画像を生成する。即ち、マスター画像処理部402が、読取画像の検査を行うための検査用画像であるマスター画像を画像形成出力対象の画像に基づいて生成する検査用画像生成部として機能する。マスター画像処理部402によるマスター画像の生成処理については後に詳述する。
検査制御部403は、検査装置4全体の動作を制御する制御部であり、検査装置4に含まれる各構成は検査制御部403の制御に従って動作する。比較検査部404は、読取画像取得部401から入力される読取画像とマスター画像処理部402が生成したマスター画像とを比較し、意図した通りの画像形成出力が実行されているか否かを判断する。比較検査部404は、膨大な計算量を迅速に処理するために上述したASICによって構成される。
比較検査部404においては、上述したようにRGB各色8bitで表現された200dpiの読取画像及びマスター画像を対応する画素毎に比較し、夫々の画素毎に上述したRGB各色8bitの画素値の差分値を算出する。そのようにして算出した差分値の絶対値(以降、単に「差分」とする)に基づき、検査制御部403は、読取画像の欠陥を判定する検査を行う。
尚、読取画像とマスター画像との比較に際して、比較検査部404は、図4に示すように、所定範囲毎に分割されたマスター画像を、分割された範囲に対応する読取画像に重ね合わせて各画素の画素値、即ち濃度の差分算出を行う。このような処理は、検査制御部403が、重ね合わせる範囲の画像をマスター画像及び読取画像夫々から取得し、比較検査部404に入力することによって実現される。
更に、検査制御部403は、読取画像から取得する画像の範囲を縦横にずらしながら、算出される差分値の合計値が最も小さくなる位置を正確な重ね合わせの位置として決定するとともに、その際に算出された各画素の差分値を比較結果として採用する。そのため、比較検査部404は、各画素の差分値と共に、重ね合わせの位置として決定した際の縦横のずれ量を出力することが可能である。
図4に示すように方眼上に区切られている夫々のマスが、上述した各画素の差分値を合計する所定範囲である。また、図4に示す夫々の分割範囲のサイズは、例えば、上述したようにASICによって構成される比較検査部404が一度に画素値の比較を行うことが可能な範囲に基づいて決定される。
このような処理により、読取画像とマスター画像とが位置合わせされた上で差分値が算出される。このように算出された差分値が所定の閾値と比較されることにより、画像の欠陥が判定される。また、例えば、読取画像全体とマスター画像全体とで縮尺に差異があったとしても、図4に示すように範囲毎に分割して位置合わせを行うことにより、縮尺の際による影響を低減することが可能となる。
また、図4に示すように分割された夫々の範囲において、隣接する範囲の位置ずれ量は比較的近いことが予測される。そこで、分割された夫々の範囲についての比較検査を行う際、隣接する領域の比較検査によって決定された位置ずれ量を中心として上述した縦横にずらしながらの計算を行う。これにより、縦横にずらしながら計算を行う回数を少なくしても、正確な重ね合わせ位置による計算が実行される可能性が高く、全体として計算量を減らすことができる。
また、本実施形態に係る検査制御部403は、読取画像及びマスター画像に基づいて、上述した比較検査部404の制御や欠陥を判定する検査を行うか否かを事前に判定する。この事前判定の処理が本実施形態の要旨である。事前判定の処理の詳細は後述する。
次に、プリントエンジン3、検査装置4及びスタッカ6の機械的な構成及び用紙の搬送経路について、図5を参照して説明する。図5に示すように、本実施形態に係るプリントエンジン3に含まれる印刷処理部301は、無端状移動手段である搬送ベルト11に沿って各色の感光体ドラム12Y、12M、12C、12Kが並べられた構成を備えるものであり、所謂タンデムタイプといわれるものである。すなわち、給紙トレイ13から給紙される用紙等に転写するための中間転写画像が形成される中間転写ベルトである搬送ベルト11に沿って、この搬送ベルト11の搬送方向の上流側から順に、感光体ドラム12Y、12M、12C、12Kが配列されている。なお、以降、各色の感光体ドラム12Y、12M、12C、12Kを総じて感光体ドラム12とする。
各色の感光体ドラム12の表面においてトナーにより現像された各色の画像が、搬送ベルト11に重ね合わせられて転写されることによりフルカラーの画像が形成される。そのようにして搬送ベルト11上に形成されたフルカラー画像は、図中に破線で示す用紙の搬送経路と最も接近する位置において、転写ローラ14の機能により、経路上を搬送されてきた用紙の紙面上に転写される。
紙面上に画像が形成された用紙は更に搬送され、定着ローラ15にて画像を定着された後、検査装置4に搬送される。また、両面印刷の場合、片面上に画像が形成されて定着された用紙は反転パス16に搬送され、反転された上で再度転写ローラ14の転写位置に搬送される。
読取装置400は、検査装置4内部における用紙の搬送経路において、印刷処理部301から搬送された用紙の夫々の面を読み取り、読取画像を生成して検査装置4内部の情報処理装置によって構成される読取画像取得部401に出力する。また、読取装置400によって紙面が読み取られた用紙は検査装置4内部を更に搬送され、スタッカ6に搬送され、排紙トレイ601に排出される。尚、図5においては、検査装置4における用紙の搬送経路において、用紙の片面側にのみ読取装置400が設けられている場合を例としているが、用紙の両面の検査を可能とするため、用紙の両面側に夫々読取装置400を配置しても良い。
次に、本実施形態に係るマスター画像処理部402の機能構成について説明する。図6は、マスター画像処理部402内部の構成を示すブロック図である。図6に示すように、マスター画像処理部402は、少値多値変換処理部421、解像度変換処理部422、色変換処理部423及び画像出力処理部424を含む。尚、本実施形態に係るマスター画像処理部402は、図2において説明した専用デバイス80、即ち、ASICとして構成されたハードウェアが、ソフトウェアの制御に従って動作することにより実現される。
少値多値変換処理部421は、有色/無色で表現された二値画像に対して少値/多値変換処理を実行して多値画像を生成する。本実施形態に係るビットマップデータは、プリントエンジン3に入力するための情報であり、プリントエンジンはCMYK(Cyan,Magenta,Yellow,blacK)各色二値の画像に基づいて画像形成出力を実行する。これに対して検査対象の画像である読取画像は、基本三原色であるRGB(Red,Green,Blue)各色多階調の多値画像であるため、少値多値変換処理部421により先ず二値画像が多値画像に変換される。多値画像としては、例えばCMYK各8bitで表現された画像を用いることができる。
少値多値変換処理部421は、少値/多値変換処理として、8bit拡張処理、平滑化処理を行う。8bit拡張処理は、0/1の1bitであるデータを8bit化し、「0」は「0」のまま、「1」は「255」に変換する処理である。平滑処理は、8bit化されたデータに対して平滑化フィルタを適用し、画像を平滑化する処理である。
尚、本実施形態においては、プリントエンジン3がCMYK各色二値の画像に基づいて画像形成出力を実行する場合を例とし、マスター画像処理部402に少値多値変換処理部421が含まれる場合を例とするが、これは一例である。即ち、プリントエンジン3が多値画像に基づいて画像形成出力を実行する場合は、少値多値変換処理部421は省略可能である。
また、プリントエンジン3が1bitではなく2bit等の少値の画像に基づいて画像形成出力を行う機能を有する場合もあり得る。その場合、8bit拡張処理の機能を変更することにより対応することができる。即ち、2bitの場合、階調値は0、1、2、3の4値である。従って、8bit拡張に際しては、「0」は「0」、「1」は「85」、「2」は「170」、「3」は「255」に変換する。
解像度変換処理部422は、少値多値変換処理部421によって生成された多値画像の解像度を、検査対象の画像である読取画像の解像度に合わせるように解像度変換を行う。本実施形態においては、読取装置400は200dpiの読取画像を生成するため、解像度変換処理部422は、少値多値変換処理部421によって生成された多値画像の解像度を200dpiに変換する。
色変換処理部423は、解像度変換処理部422によって解像度が変換された画像を取得して階調変換及び色表現形式の変換を行う。階調変換処理は、印刷処理部301によって紙面上に形成される画像の色調及び読取装置400によって読み取られて生成される画像の色調に、マスター画像の色調を合わせるための色調の変換処理である。
色表現形式の変換処理は、CMYK形式の画像をRGB形式の画像に変換する処理である。上述したように、本実施形態に係る読取画像はRGB形式の画像であるため、色変換処理部423は、階調変換処理のされたCMYK形式の画像をRGB形式に変換する。これにより、画素毎にRGB各色8bit(合計24bit)で表現された200dpiの多値画像が生成される。
画像出力処理部424は、色変換処理部423までの処理によって生成されたマスター画像を出力する。これにより、検査制御部403が、マスター画像処理部402からマスター画像を取得する。
次に、本実施形態に係る検査制御部403の機能構成について説明する。図7は、本実施形態に係る検査制御部403の機能構成を例示するブロック図である。また、図8は、本実施形態に係る検査制御部403による読取画像の欠陥検査の動作を例示するフローチャートである。図7に示すように、本実施形態に係る検査制御部403は、情報入力部431、事前判定部432、欠陥検査部433及びコントローラ通信部434を含む。以下、本実施形態に係る検査制御部403による欠陥検査の動作について、図8を参照して説明する。
本実施形態に係る検査制御部403においては、図8に示すように、まず情報入力部431が、マスター画像処理部402からマスター画像を取得し(S800)、読取画像取得部401から読取画像を取得する(S801)。なお、S800の処理とS801の処理とは前後関係に制約はないため、逆の順序で実行されても良いし並列して実行されてもよい。
マスター画像及び読取画像を取得した情報入力部431は、図4において説明したように、マスター画像及び読取画像から夫々所定範囲の画像を抽出したブロック画像を取得して、事前判定部432に対して出力する(S803)。なお、本実施形態においては、情報入力部431は、左上からラスター順にブロック画像を出力する場合を例として説明するが、これは一例であり、中央から渦巻状に外側に向かって順にブロック画像を出力してもよい。また、図8における以降の処理においては、マスター画像のブロック画像を単に「マスター画像」と記載し、読取画像のブロック画像を単に「読取画像」と記載する場合がある。
情報入力部431からマスター画像及び読取画像が入力された事前判定部432は、入力されたマスター画像及び読取画像に基づいて、読取画像の欠陥検査を行うか否かを事前に判定する。具体的には、事前判定部432は、まず、入力されたマスター画像及び読取画像に基づいて、SSIM(Structural SIMilarity)値を算出する(S804)。
SSIM値は、2つの画像の明るさの類似度、コントラストの類似度及び構造の類似度を用いて算出される2つの画像の類似度である。具体的には、画像x、yのSSIM値は、以下の式(1)により算出される。
μxは、画像xの画素の輝度平均値であり、μyは、画像yの画素の輝度平均値であり、σx 2は、画像xの画素の輝度分散であり、σy 2は、画像yの画素の輝度分散であり、σxyは、画像xと画像yとの共分散である。また、C1=(K1L)2であり、Lは、8ビットの画像の場合255であり、K1は1より十分小さい定数(例えば、0.01)である。また、C2=(K2L)2であり、Lは、8ビットの画像の場合255であり、K2は1より十分小さい定数(例えば、0.03)である。
SSIM値は、0より大きく1以下の値であり、SSIM値が1の場合、2つの画像は同一であり、値が大きいほど2つの画像の類似度は高くなる。本実施形態に係る事前判定部432は、例えば、画像xをマスター画像のブロック画像とし、画像yを読取画像のブロック画像として、SSIM値を算出する。
次に、事前判定部432は、算出したSSIM値が予め定められた閾値T以下であるか否かを判定する(S805)。SSIM値が閾値T以下である場合(S805/YES)、事前判定部432は、マスター画像と読取画像との類似度が比較的低いので、読取画像の欠陥検査を行うと判定し、情報入力部431に対して検査を行う旨を示す欠陥検査実行通知を出力する(S806)。事前判定部432から欠陥検査実行通知を受けた情報入力部431は、事前判定部432により事前判定された両ブロック画像を比較検査部404に入力することにより、比較検査部404に画像の比較検査を実行させる(S807)。
S807の処理により、読取画像を構成する各画素とマスター画像を構成する各画素との差分値を示す差分画像が生成される。欠陥検査部433は、生成された差分画像を取得し、取得した差分画像に基づいて欠陥検査を行う(S808)。具体的には、S808において、欠陥検査部433は、取得した差分画像の各画素の画素値の合計値(あるいは平均値)(以降、「差分合計値」とする)が閾値以上である場合、比較検査部404に入力された範囲の読取画像に欠陥ありと判定する。
さらに、欠陥検査部433は、読取画像に欠陥ありと判定した場合、欠陥の種類を特定する。具体的には、例えば、欠陥検査部433は、例えば、欠陥ありと判定された範囲のブロック画像に対してラベリング処理を行う。ラベリング処理とは、入力画像において同じ色や同じ領域等が連続する画素(連結成分)に同じ番号(ラベル)を割り振る処理である。
そして、欠陥検査部433は、ラベリング処理された連結面積や長さ等の特徴量から欠陥の種類(黒スジ、かすれ、汚れ等)を特定する。例えば、欠陥の種類ごとに特徴量が予め定められており、欠陥検査部433は、ラベリング処理された連結成分の特徴量と最も近い特徴量に対して定められている欠陥の種類を、その連結成分の欠陥の種類として特定する。
なお、本実施形態において、欠陥検査部433は、マスター画像と読取画像との差分に基づいて欠陥の有無を判定し、欠陥ありと判定した場合に、ラベリング処理により欠陥の種類を特定する場合を例として説明した。しかしながら、これは一例であり、欠陥検査はこのような処理に限らない。例えば、欠陥検査部433は、マスター画像のブロック画像の輝度の標準偏差を算出し、ブロック画像の領域種類(紙白領域、絵柄・肌領域、エッジ領域等)を判定する。そして、欠陥検査部433は、マスター画像と読取画像との差分が、判定された領域種類に応じて設定される閾値以上である場合に、欠陥種類を判定する。
また、コントローラ通信部434は、欠陥検査部433による判定結果に基づいて再印刷要求等のエンジン制御を実行する(S809)。
一方、SSIM値が閾値Tよりも大きい場合(S805/NO)、事前判定部432は、マスター画像と読取画像との類似度が比較的高いので、上述したS806〜S809の欠陥検査のための処理をスキップする。そして、情報入力部431は、取得した読取画像の全ブロック画像に対して検査が完了したか否かを判定する(S810)。
全ブロック画像に対して検査が完了していない場合(S810/NO)、情報入力部431は、検査が完了していないブロック画像を事前判定部432に対して出力する。そして、S803以降の処理が繰り返される。一方、全ブロック画像に対して検査が完了した場合(S810/YES)、本実施形態に係る欠陥検査動作が完了する。
このような処理により、マスター画像と読取画像との類似度が所定の閾値よりも高い場合は、読取画像に欠陥が発生していないと判定されて欠陥検査が行われないので、画像検査装置(検査装置4)における検査時間を短縮することができる。
また、以下の理由から、欠陥検査を行うか否かを事前に判定するためにSSIM値を算出する必要があるとしても、すべてのブロック画像に対して欠陥検査を行うよりも事前判定を行うほうが、処理時間が短くなり、検査時間を短縮することができる。
欠陥検査においては、ラベリング処理により欠陥の種類を特定する処理や、ブロックごとに平坦部、エッジ部等の領域種類を判定し、領域種類ごとにマスター画像と読取画像との差分に基づき欠陥の種類(汚れ、異常孤立点、スジ等)を特定する処理が行われる。一方、事前判定に用いられるSSIM値は、マスター画像及び読取画像それぞれの輝度平均値及び輝度分散、マスター画像と読取画像との共分散の5つのパラメータから算出できる。そのため、欠陥検査の計算量よりも事前判定の計算量のほうがはるかに少なく、欠陥検査の処理時間よりも事前判定の処理時間ほうがはるかに短い。
ここで、仮にすべてのブロック画像のうちのほとんどが事前判定だけでなく欠陥検査を必要とする場合、欠陥検査のみを行う場合よりも事前判定を行う分、処理時間が長くなる。しかしながら、実際には、すべてのブロック画像のうち、欠陥検査を必要とするブロック画像の割合は極めて小さい(例えば、5%未満)ことが多い。
例えば、すべてのブロックに対する事前判定の総処理時間をS1とし、すべてのブロックに対する欠陥検査の総処理時間をS2とすると、欠陥検査を必要とするブロック画像の割合が全体の5%である場合の総処理時間Sは、次のようになる。
S=0.05×(S1+S2)+0.95×S1=S1+0.05×S2
一方、事前判定を行うことなくすべてのブロックに対して欠陥検査を行う場合の総処理時間S´は、次のようになる。
S´=S2
上述したように、事前判定の処理時間は欠陥検査の処理時間よりもはるかに短いことから、次の関係が成立する。
S1+0.05×S2<<S2
すなわち、S<<S´
このことから、上述したように、欠陥検査を行うか否かを事前に判定するためにSSIM値を算出する必要があるとしても、すべてのブロック画像に対して欠陥検査を行うよりも事前判定を行うほうが、処理時間が短くなるので、検査時間を短縮することができる。
また、SSIM値は、ユーザが目で見て2つの画像を似ていると感じる度合い(以降、「主観の類似度」とする)と相関が高いことが知られている。そのため、SSIM値が所定の閾値よりも高い場合は、主観の類似度も高いので、ユーザが読取画像に欠陥があると認識する可能性が低く、欠陥検査をスキップしても問題のない場合が多い。このことから、本実施形態によれば、検査装置4における検査精度を担保しつつ、検査時間を短縮することができる。
なお、上記実施形態において、欠陥検査部433は、ラベリング処理により欠陥種類を特定する場合を例として説明したが、これは一例であり、ブロック画像の画素のアスペクト比や画素の集まり度合いに基づいて欠陥種類を特定してもよい。また、欠陥検査において欠陥の種類を特定することは必須ではなく、欠陥の有無を判定するだけであってもよい。
また、上記実施形態において、事前判定部432は、SSIM値を用いて欠陥検査を行うか否かを判定する場合を例として説明した。その他、事前判定部432は、UQI値(Universal Quality Index)を用いて欠陥検査を行うか否かを判定してもよい。UQI値は、SSIM値を算出する上記式(1)のC1及びC2に用いられる定数であるK1及びK2を0とした式(1)により算出される。UQI値の場合、C1及びC2が0になり、SSIM値よりもパラメータの数を減らすことができるが、主観の類似度との相関がSSIM値の場合よりも低くなる傾向にある。
その他、事前判定部432は、マスター画像及び読取画像の解像度を低くして、低解像度のマスター画像と読取画像との差分値の大きさを類似度とする等、欠陥検査を行う場合よりも少ないパラメータで類似度を事前に判定できる態様であればよい。その他、両画像の標準偏差等の統計値の差分を類似度としてもよい。
また、上記実施形態においては、欠陥検査の結果に関わらず、すべてのブロック画像の検査が完了するまで繰り返し処理を行う場合を例として説明した。その他、1つのブロック画像において欠陥ありと判定された時点で、検査処理を終了するようにしてもよい。1つでも欠陥ありと判定されると、その印刷物については再印刷要求がされるので、残りのブロック画像に対する検査をスキップすることで、検査時間を短縮することができる。
また、上記実施形態においては、SSIM値と比較する閾値が1つの場合を例として説明した。その他、事前判定部432による判定の対象範囲であるマスター画像のブロック画像の特徴に応じて異なる閾値が用いられてもよい。以下、マスター画像のブロック画像の特徴として、マスター画像の輝度の標準偏差、輝度の平均値及びブロック画像の位置に応じて異なる閾値が用いられる態様を順に説明する。なお、本実施形態においては、3つの閾値T1、T2及びT3が用いられる場合を例として説明するが、閾値の数は3つに限定されるものではない。また、3つの閾値の関係は、0<T1<T2<T3<1であるとする。
図9は、異なる閾値が用いられる場合における本実施形態に係る検査制御部403の機能構成を例示するブロック図である。図9に示すように、検査制御部403は、図7に示した検査制御部403の構成に、閾値設定部435、区分情報記憶部436及び閾値情報記憶部437が追加された構成である。また、図9に示した情報入力部431は、閾値設定部435に対してマスター画像のブロック画像を出力する。
閾値設定部435は、区分情報記憶部436に記憶されている後述する区分情報を参照して、ブロック画像ごとのSSIM値に対する閾値を設定し、閾値情報記憶部437に記憶させる。閾値設定部435による処理の詳細は後述する。
区分情報記憶部436は、輝度の標準偏差の区分情報を格納する記憶媒体である。区分情報は、複数の範囲に区分された標準偏差の区分ごとに閾値が対応付けられている定義情報である。図10は、区分情報で定められている標準偏差の区分と各区分に対応する閾値との関係を例示する図である。一般的に、ユーザが目で見て欠陥を見つける場合、輝度の標準偏差が小さいブロック画像ほど欠陥が目につきやすい傾向にある。そこで、本実施形態においては、輝度の標準偏差が小さいブロック画像ほど類似度の判定が厳しくなるように閾値が設定される。
具体的には、閾値が3つの場合、区分情報記憶部436には、図10に示すような区分情報が格納される。具体的には、標準偏差が、ST1以下(区分1とする)、ST1より大きくST2より小さい(区分2とする)、ST2以上(区分3とする)の3つの範囲に区分され、標準偏差が小さい区分順に閾値T3、T2、T1が対応付けられる。なお、ST1及びST2は予め定められた標準偏差であり、ST1<ST2の関係であるとする。
閾値情報記憶部437は、ブロック画像ごとに閾値設定部435により設定された閾値が対応付けられた閾値情報を格納する記憶媒体である。
図11は、閾値設定部435によるブロック画像ごとの閾値設定処理を例示するフローチャートである。図11に示すように、閾値設定部435は、情報入力部431から入力されたマスター画像のブロック画像の輝度の標準偏差を算出する(S1101)。標準偏差を算出した閾値設定部435は、区分情報記憶部436に記憶されている区分情報を参照して、算出した標準偏差がどの区分の範囲内であるかを判定する(S1102)。
算出した標準偏差の区分を判定した閾値設定部435は、区分情報を参照して、判定した区分に対応する閾値を、ブロック画像の範囲におけるマスター画像及び読取画像のSSIM値に対する閾値として閾値情報記憶部437に記憶させる(S1103)。例えば、算出した標準偏差がST1以下である場合、閾値設定部435は、閾値T3をSSIM値に対する閾値として設定して閾値情報記憶部437に記憶させる。
1つのブロック画像に対する閾値を設定した閾値設定部435は、全ブロック画像に対する閾値の設定が完了したか否かを判定する(S1104)。閾値設定部435は、全ブロックに対する閾値の設定が完了していない場合(S1104/NO)、設定が完了していないブロック画像に対してS1101以降の処理を繰り返す。一方、閾値設定部435は、全ブロック画像に対する閾値の設定が完了した場合(S1104/YES)、処理を終了する。
図12は、閾値情報記憶部437に格納された閾値情報としてブロック画像ごとに閾値が設定された態様を例示する図である。例えば、図12に示すように、ドットでハッチングされたブロック画像の標準偏差は区分1の範囲内であり、閾値T3が設定される。また、縦線でハッチングされたブロック画像の標準偏差は区分2の範囲内であり、閾値T2が設定される。また、斜線でハッチングされたブロック画像の標準偏差は区分3の範囲内であり、閾値T1が設定される。
また、事前判定部432は、図8に示したフローチャートのS805において、閾値情報記憶部437に格納されている閾値情報を参照して、3つの閾値T1〜T3のうちブロック画像の範囲に対応付けられた閾値を用いてSSIM値と大小関係を比較する。このように、ブロック画像の輝度の標準偏差の大きさに応じて閾値を変更することにより、検査装置4においてユーザが目で見て欠陥を見つける場合に近い精度で欠陥検査を行うことができる。
なお、上記実施形態においては、閾値の設定にブロック画像の輝度の標準偏差が用いられる場合を例として説明した。その他、ブロック画像に対してFFT(Fast Fourier Transform)、DCT(Discrete Cosine Transform)変換及びウェーブレット変換等を施し、主たる周波数帯域の周波数特性から算出された量に応じて閾値が設定されてもよい。
また、その他、ブロック画像の輝度の平均値が用いられてもよい。一般的に、ユーザが目で見て欠陥を見つける場合、輝度の平均値が大きいブロック画像ほど欠陥が目につきやすい傾向にある。そこで、本実施形態においては、輝度の平均値が大きいブロック画像ほど類似度の判定が厳しくなるように閾値が設定される。具体的には、輝度の平均値が用いられる場合、区分情報では、図10に示した場合と同様に、輝度の平均値が3つの範囲に区分され、平均値が大きい区分順に閾値T3、T2、T1が対応付けられる。
このように、ブロック画像の輝度の平均値の大きさに応じて変更することによっても、検査装置4においてユーザが目で見て欠陥を見つける場合に近い精度で欠陥検査を行うことができる。なお、同様に、ブロック画像ごとの画素の明度の平均値に応じて閾値が設定されてもよい。この場合、明度の平均値が大きい区分順に閾値T3、T2、T1が対応付けられる。また、高速化のためにG信号に応じて閾値が設定されてもよい。
その他、閾値の設定にブロック画像の位置が用いられてもよい。一般的に、ユーザが目で見て欠陥を見つける場合、画像の中心ほど欠陥が目につきやすい傾向にある。そこで、本実施形態においては、画像の中心ほど類似度の判定が厳しくなるように閾値が設定される。具体的には、区分情報では、マスター画像の中心のブロック画像から閾値設定対象のブロック画像までの距離(以降、「ブロック画像距離」とする)が3つの範囲に区分され、距離が短い区分順に閾値T3、T2、T1が対応付けられる。
図13は、所定範囲ごとに分割されたマスター画像を例示する図である。図13に示したマスター画像は、横w個、縦h個のブロック画像に分割されている。図13に示すように、マスター画像の中心の黒色のブロック画像の位置を(p、q)とし、閾値設定対象の斜線でハッチングされたブロック画像の位置を(i、j)とすると、ブロック画像距離D(i、j)は、以下の式(2)により算出される。
なお、分割数によっては中心となるブロック画像がマスター画像の中心に位置しない場合があるが、その場合、中心に近いいずれかのブロック画像が中心のブロック画像とされる。
図14は、閾値情報記憶部437に格納された閾値情報として、ブロック画像距離に応じてブロック画像ごとに閾値が設定された態様を例示する図である。例えば、図14に示すように、マスター画像である検査用画像全体における中心に近い位置のドットでハッチングされたブロック画像においては閾値T3が設定される。また、閾値T3が設定されたブロック画像の外側の位置の斜線でハッチングされたブロック画像においては閾値T2が設定される。また、T2が設定されたブロック画像の外側の位置の縦線でハッチングされたブロック画像においては閾値T1が設定される。
このように、画像の中心に位置するブロック画像ほど類似度の判定を厳しくするよう閾値を設定することにより、検査装置4においてユーザが目で見て欠陥を見つける場合に近い精度で欠陥検査を行うことができる。なお、ブロック画像距離とブロック画像の輝度の標準偏差等とを組み合わせて閾値が設定されるようにしてもよい。具体的には、例えば、図14に示した同じ閾値の範囲それぞれにおいて、ブロック画像の輝度の標準偏差等に応じてさらに異なる閾値が設定されるようにしてもよい。この場合、標準偏差等に応じて設定される閾値は、閾値T1の領域ほど小さくなるように設定される。
なお、複数の閾値を用いる上記実施形態においては、閾値設定部435がマスター画像のブロックごとの閾値を閾値情報記憶部437に記憶させ、事前判定部432が閾値情報記憶部437に記憶されている閾値情報を参照して処理を行う場合を例として説明した。しかしながら、これは一例であり、事前判定部432が各ブロック画像に基づいて判定処理を行うたびに閾値設定部435が処理対象のブロック画像に対する閾値を算出するようにしてもよい。
2.実施形態2
以下、第2の実施形態を説明する。第1の実施形態における事前判定部432は、ブロック画像の画素の輝度平均値等を用いて算出したSSIM値を用いて事前判定を行う。第2の実施形態における事前判定部432は、所定の周波数帯域のウェーブレット係数の平均値等を用いて算出したCW−SSIM値を用いて事前判定を行う。
図15は、第2の実施形態に係る検査制御部403の機能構成を例示するブロック図である。図15に示すように、第2の実施形態に係る検査制御部403は、図7に示した検査制御部403の構成に、ウェーブレット係数取得部438が追加された構成である。以下、画像検査システムの処理において、第1の実施形態とは異なる処理のみを説明する。ウェーブレット係数取得部438は、事前判定部432に含まれ、ブロック画像から変換されたウェーブレット係数を取得する。ウェーブレット係数取得部438により取得されるウェーブレット係数の詳細は後述する。
図16は、第2の実施形態に係る検査制御部403による読取画像の欠陥検査の動作を例示するフローチャートである。図16に示したS1601からS1603の処理は、図8に示したS801からS803の処理と同様である。S1603の処理において情報入力部431からマスター画像のブロック画像及び読取画像のブロック画像が入力された事前判定部432は、各ブロック画像から変換された所定の周波数帯域のウェーブレット係数を取得する(S1604)。
ウェーブレット係数は、ウェーブレット係数取得部438により各ブロック画像に対してサイズ縮小変換又はサイズ不変変換がおこなわれることにより取得される。サイズ縮小変換は、各周波数帯域で構成されるウェーブレット係数の各サブバンドのサイズがブロック画像のサイズよりも縮小される変換である。サイズ不変変換は、各周波数帯域で構成されるウェーブレット係数の各サブバンドのサイズがブロック画像のサイズと同一となる変換である。なお、図16に示した処理の説明においては、サイズ縮小変換を用いる場合を例として説明する。
図17は、8×8画素の画像からサイズ縮小変換により得られるウェーブレット係数を例示する図である。図17に示した点線で囲まれたブロックは1画素を示し、例えば、ウェーブレット係数は、8×8の画像に2階層のサイズ縮小変換を施すことにより得られる。
図17に示した「1HL」、「1LH」及び「1HH」は、画像の主走査方向及び副走査方向それぞれに対してハイパスフィルタ又はローパスフィルタを適用して2次元のウェーブレット変換により得られる1階層の複数の周波数帯域のウェーブレット係数である。図17に示した「2LL」、「2HL」、「2HL」及び「2HH」は、主走査方向及び副走査方向ともに低周波成分の1階層のウェーブレット係数である「1LL」を入力としウェーブレット変換により得られる2階層のウェーブレット係数である。
このように、サイズ縮小変換により得られる1階層の各周波数帯域のサブバンドのウェーブレット係数のサイズは、それぞれブロック画像のサイズの4分の1であり、2階層の各周波数帯域のサブバンドのウェーブレット係数のサイズは、ブロック画像のサイズの16分の1である。
本実施形態において、事前判定部432は、図17に示したウェーブレット係数のうち、斜線でハッチングされた「2LL」のウェーブレット係数を、所定の周波数帯域のウェーブレット係数である所定周波数ウェーブレット係数として取得する(S1604)。
「2LL」のウェーブレット係数を取得した事前判定部432は、取得した「2LL」のウェーブレット係数を用いたSSIM値であるCW−SSIM値を算出する(S1605)。すなわち、第2の実施形態において、第1の実施形態で説明した式(1)のμxは、画像xの「2LL」のウェーブレット係数の平均値であり、μyは、画像yの「2LL」のウェーブレット係数の平均値である。また、σx 2は、画像xの「2LL」のウェーブレット係数の分散であり、σy 2は、画像yの「2LL」のウェーブレット係数の分散であり、σxyは、画像xと画像yとの「2LL」のウェーブレット係数の共分散である。
第2の実施形態に係る事前判定部432は、例えば、画像xをマスター画像のブロック画像とし、画像yを読取画像のブロック画像としてCW−SSIM値を算出する。CW−SSIM値を算出した事前判定部432は、算出したCW−SSIM値が予め定められた閾値T以下であるか否かを判定する(S1606)。以降のS1607からS1611の処理は、図8に示したS806からS810の処理と同様である。
次に、サイズ不変変換により得られるウェーブレット係数を説明する。図18は、8×8画素のブロック画像を例示する図である。図18に示した点線で囲まれたブロックが1画素を示す。サイズ不変変換において、ウェーブレット係数取得部438は、ブロック画像の各1画素を順に注目画素とし、注目画素と隣接する3画素とから構成される4画素にウェーブレット基底関数としてハール関数を用いたウェーブレット変換をそれぞれ施す。
例えば、ウェーブレット係数取得部438は、図18に示した画素aを注目画素とし、画素a、b、c、dから構成される4画素にハール関数を用いたウェーブレット変換を施す。この場合、以下の式により、注目画素aから各周波数帯域のウェーブレット係数が算出される。
LL:(a+b+c+d)/4
HL:{(a+c)−(b+d)}/2
LH:{(a+b)−(c+d)}/2
HH:a−b−c+d
図19は、8×8画素の画像からサイズ不変変換により得られる1階層の複数の周波数帯域のウェーブレット係数を例示する図である。図19に示すように、サイズ不変変換により得られる1階層の各周波数帯域のウェーブレット係数のサイズは、ブロック画像のサイズと同じである。さらに、ウェーブレット係数取得部438は、図19において斜線でハッチングされた主走査方向及び副走査方向ともに低周波成分である「1LL」のウェーブレット係数に対して、同様にハール関数を用いたウェーブレット変換(サイズ不変変換)を施す。
図20は、8×8サイズの「1LL」のウェーブレット係数からサイズ不変変換により得られる2階層のウェーブレット係数を例示する図である。図20に示すように、サイズ不変変換により得られる2階層の各周波数帯域のウェーブレット係数のサイズは、「1LL」のウェーブレット係数のサイズと同じ、すなわちブロック画像のサイズと同じである。
第2の実施形態に係る事前判定部432は、サイズ縮小変換における場合と同様に、図20に斜線でハッチングされた「2LL」のウェーブレット係数を、所定の周波数帯域のウェーブレット係数として取得する(S1604)。そして、事前判定部432は、サイズ縮小変換における場合と同様に、取得した「2LL」のウェーブレット係数を用いたSSIM値であるCW−SSIM値を算出する(S1605)。
上述したように、SSIM値は、主観の類似度と相関が高いことが知られている。一方で、比較する複数の画像の間で大きさが少し違ったり、位置が少しずれたり、少し回転(アフィン変換)していたりすると、主観の類似度が高いにもかかわらず、SSIM値が示す類似度が低くなる場合がある。第2の実施形態におけるCW−SSIM値は、周波数特性を示すウェーブレット係数により算出されるので、画像の間で上述したような少しの位置ずれ等の差異が生じている場合であっても、主観の類似度が高いときは、CW−SSIM値が示す類似度も高くなる。
したがって、第2の実施形態によれば、検査装置4におけるより高い検査精度を担保しつつ、検査時間を短縮することができる。また、サイズ不変変換によるウェーブレット係数を用いた場合、サイズ縮小変換よりもウェーブレット係数取得部438により取得されるデータのサイズが大きくなる。しかしながら、この場合、ブロック画像と同じサイズのウェーブレット係数により事前判定処理が行われるので、サイズ縮小変換によるウェーブレット係数を用いた場合よりも事前判定の精度がより高くなる。
なお、第2の実施形態における事前判定部432は、ブロック画像に対して2階層のウェーブレット変換を施し、2階層のウェーブレット係数「2LL」を用いたCW−SSIM値に基づく事前判定を行う場合を例として説明した。「2LL」のウェーブレット係数を用いることにより、マスター画像と読取画像との位置ずれの影響をより軽減することが可能である。
しかしながら、「2LL」のウェーブレット係数を用いることは必須ではない。例えば、事前判定部432は、「2LL」、「2HL」、「2LH」及び「2HH」それぞれのウェーブレット係数を用いたCW−SSIM値をそれぞれ算出し、これらのCW−SSIM値のうちの最小のCW−SSIM値を事前判定用いてもよい。その他、事前判定部432は、より低周波なウェーブレット係数である「3LL」や「4LL」等を用いてCW−SSIM値を算出してもよい。
また、第2の実施形態においても、第1の実施形態と同様に、CW−SSIM値と比較する閾値として、事前判定部432による判定の対象範囲であるマスター画像のブロック画像の特徴に応じて異なる閾値が用いられてもよい。