(57)【要約】【課題】多値の画像処理では、多機能の実現のための処理量の増大により、処理時間の増加が問題となっている。また処理時間が速い簡易な処理では、明るさの変化、障害物や汚れなどによって処理結果が影響されることが多かった。【解決手段】比較する画像間の差分のヒストグラムを作成し、それを解析することにより画像間における相関度、明るさの差及び差異のレベルを直接求めることができ、さらにコントラストの差にも対応することができる。そのため多値（カラーを含む）の画像処理において、明るさやコントラストの変化に強く高精度の画像認識が可能になる。また処理が簡単であるがゆえに処理速度が速く、ハードウエア化することも容易なため、特に速度が要求されるテンプレートマッチングにおいては、ハードウエア化により更なる速度アップが期待できる。【選択図】図２
2004127061.tif 000002
【特許請求の範囲】
【請求項１】
基準となるテキスト画像Ｔとそれと比較される対象画像Ｇがある場合、対応する位置のＴの画素の値をＴ（ｘ，ｙ）、Ｇの画素の値Ｇ（ｘ，ｙ）として、比較する画像範囲の一部あるいは全ての画素においてＧ（ｘ，ｙ）−Ｔ（ｘ，ｙ）に相当する演算を行い、演算結果の値のヒストグラム（出現頻度図）を解析することによって、画像Ｔと画像Ｇの相関や差異などを求めることを特徴とする画像認識装置。
【請求項２】
「請求項１」記載の差分演算において、基準となるテキスト画像Ｔと比較される対象画像Ｇの間の明るさの差やコントラストの差により、演算結果に非線形の状態が生じる場合、その状態にある画素をヒストグラムの処理対象から除外することを特徴とする、「請求項１」記載の画像認識装置。
【請求項３】
「請求項１」もしくは「請求項２」記載の画像認識装置を用いて、テンプレートマッチングを行うことを特徴としたテンプレートマッチング装置。
【請求項４】
「請求項１」もしくは「請求項２」記載の画像認識装置を用いて、画像の差異あるいは汚れ検出を行うことを特徴とした識別検査装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、多値の画像を認識する装置およびこれを用いた各種装置に関する。
【０００２】
【従来の技術】
近年、画像認識における処理は、２値（白黒）から多値（グレースケール及びカラー）に移行してきている。多値の処理を行うことで、認識率の向上、調整の容易さ、自然画への対応などが得られるようになった。
【０００３】
従来の多値の画像認識において対応する２つの画像の相関を求める場合、画素単位の演算（加算、減算、論理演算など）、あるいは指定した範囲の画素値の平均や、画像の縦横からの投影加算などを行い、その結果を比較する方法があった。
（例えば、特許文献１、特許文献２参照）。
更に、直接両画像の相関を求めるために、正規（化）相関係数を演算する方法及び、それを改良した方法があった。
（例えば、特許文献３、特許文献４参照）
また、特殊な用途として両画像の周波数解析を比較する方法もあった。
（例えば、特許文献５、特許文献６参照）
【０００４】
【特許文献１】
特開平９−５４８３１号「画像処理装置」（請求項１及び請求項２）
【特許文献２】
特開平１１−８５９０７号「画像処理装置」（請求項１、請求項８、請求項９、請求項１１）
【特許文献３】
特開平１１−８５９０７号「画像処理装置」（請求項１０）
【特許文献４】
特開２００１−２９７３２５号「画像処理装置」（請求項１）
【特許文献５】
特開平９−４４６７５号「画像処理装置及びその方法」（請求項１及び請求項７）
【特許文献６】
特開平１１−３１６８３７号「パターンマッチングのための画像処理方法および画像処理装置」（請求項１及び請求項２）
【０００５】
【発明が解決しようとする課題】
しかしながら、多値の画像処理では各種のメリットと引き換えに、処理量の増大による処理時間の増加が問題となっている。さらに、画素単位で演算を行う場合は、画像全体の明るさの違いも差異として認識されるため、明るさの違う画像同しを直接比較するのは困難であった。一方、指定した範囲の平均レベルをとる場合は、画像全体の明るさの違いを知ることはできるが画像間の詳細な比較は難しく、上記の画素単位の演算と組み合わせて必要な機能を実現していることが多かった。
【０００６】
「特許文献１」の方法では検査画面の画素データおよび基準画面の画素データのいずれか一方の画素データ値に所定値を加算および減算し、他方の画素データ値と前記加算および減算したデータ値と比較し、他方の画素データ値が前記加算および減算したデータ値の間にあるとき加算計数している。
しかしながらこの方法では、明るさが大幅に変わった場合、他方の画素データ値の多くが前記加算および減算したデータ値の間に入らない可能性が考えられ、このような場合は加算計数した結果で位置を特定することは難しいと思われる。よってこの場合に確実に位置を特定するには、画素データ値に加算および減算する所定値（負の値も含む）を複数回試行する必要があった。
【０００７】
「特許文献２」の方法では画像の類似度差分のみを被検査画像などに画像に重ね合わせて表示するもので、画像のマッチングの手段は別に備えるとなっているが、画像の類似度差分を検出する方法において処理対象画像領域の画像とパターン画像との間の類似度差分を演算する手段を備えている。
類似度差分の演算には、抜き出した処理対象画像領域の画像とパターン画像との間の濃度差を、処理ごとに加算或いは平均化した結果に対し類似度差分の閾値を設けたうえで、この閾値以上となった部分を被検査画像などの画像に重ね合わせて表示している。この場合複数の類似度差分データにおいて共有される部分を、より表示画面上で認識しやすい形態で強調することが可能となる。
しかしながらこの方法では、抜き出した処理対象画像領域の画像とパターン画像との間に全体的な明るさの差があった場合、加算、平均した結果も全て差分として認識されるという問題があり、明るさの差と画像の差異（汚れ）を独立して検出することができない。
【０００８】
以上の方法に対して正規（化）相関係数の演算は、「数１」の公式を実行することで、両画像に明るさの差があった場合でも演算のみで直接相関値を得ることができる。この場合相関結果は−１から＋１の値をとり、０のときは相関なし、＋１に近づくほど相関度が高くなり、逆に−１に近づくほど逆相関度が高くなる。しかしながら、この方法では演算量が多く、処理に時間がかかるという問題があった。さらに、相関結果は１に近いか否かで決定されるため、簡単である反面、それ以上の情報（明るさの差、差異のある部分の分布状況など）を得ることができなかった。なお「数１」、「数２」においてはテキスト画像の値はＧ、対象画像の値はＦと表されている。
【数１】
2004127061.tif 000003
「数１」において、Ｆ，Ｇは対象画像あるいはテンプレート画像における指定領域内の輝度の平均値、ｎは指定領域内にある画素の個数である。
【０００９】
「特許文献３」は「特許文献２」と同じ特許の別の請求項にあたる。この方法によると、正規化相関演算により類似度差分を求めているため、明るさの差やノイズの影響を受けにくくなる。
しかしながら正規化相関演算による処理時間の問題があるのと、正規化相関演算の結果はある範囲における相関度を−１から＋１の値で表されるため、差異のある部分を画素単位で正確に特定できないと思われる。
【００１０】
「特許文献４」は正規（化）相関係数の演算は処理量が多く、特にテンプレート（パターン）マッチングを行う際には大きな障害となることに対する、ひとつの対策である。正規相関係数演算の公式は「数１」の通りであるが、基準となるテキスト画像はあらかじめ決まっているため、テキスト画像の分散値（「数１」の分母右項）は一度計算するだけでよい。よって、抜き出した処理対象画像領域の画像の分散値だけで式の分母が決まるため、処理対象画像領域の画像の分散値「数２」だけを計算することで位置候補を選択し、その部分だけに正規の正規相関係数演算を行うことで処理量を減らすことができるというものである。
【数２】
2004127061.tif 000004
「数２」において、Ｆは対象画像における指定領域内の輝度の平均値、ｎは指定領域内にある画素の個数である。
しかしながら、位置候補を選択する場合の閾値は明るさによって調整が必要で、処理対象画像領域の画像の分散値演算も軽くなってはいるが、背景などの条件によって位置候補の絞込み状況が変化し、位置候補については最終的に正規相関係数演算を行うため、処理時間に大きな差が出る。
【００１１】
周波数解析による方法は、パターンをフーリエ変換、ＤＣＴ変換などにより周波数に変換しその分布を調べることで、連続した繰り返しパターンの中にある異物、あるいはパターンの違いなどを検出するのに有効な方法であった。また明るさの成分はＤＣ成分として分離されるので明るさの変化に強いという特徴もある。しかしながら、フーリエ変換やＤＣＴ変換などを行うと、演算量が多くなる上繰り返しパターンでない一般画像の相関を取る場合、周波数変換した画像に対してのデータ解析が困難であり、特に画像の一部に差異部分があると周波数分布全体に影響を受けるという問題があった。
【００１２】
「特許文献５」はディザパターンが含まれる画像に対して、周波数分析部において一次元高速フーリエ変換を施すことによりその周波数特性を分析しディザ処理が施されているか否かを判定する。ディザ処理が施された画像をパターンマッチングをした場合、ディザ処理による階調表現と実際のパターンの判別ができないため、不都合が起こるという問題がある。そこでディザ処理が施されている領域のパターンマッチング処理を行なわないように制御するというものである。しかしながら本発明では直接ディザパターン画像は扱わない。
【００１３】
「特許文献６」はＪＰＥＧ画像などすでにＤＣＴ変換されている対象画像に対して、逆ＤＣＴ処理を行うことなく直接相関度を求め、逆ＤＣＴ処理の時間を短縮するというものである。しかしながら本発明はビデオカメラなどからの生画像を主な対象とするため、ＪＰＥＧ画像などはビットマップパターンに展開してから処理を行う。
【００１４】
本発明は、上述した課題を解決するためになされたものであり、極めて簡単な処理で画像認識を行える装置を提供することを目的とする。
【００１５】
【課題を解決するための手段】
「請求項１」の発明では以上の課題を解決するために、検査範囲内の対象画像の画素値Ｇ（ｘ，ｙ）とテキスト画像の画素値Ｔ（ｘ，ｙ）の差によるヒストグラム（出現頻度図）を作成する。このヒストグラムはたとえ画像間に明るさの差があったとしても、元々同じ画像であれば明るさの差によって決定される位置に頻度が集中する。この位置と頻度の最大値（ピーク値）によって、両画像の明るさの差と相関度を独立に求めることができる。なおテキスト画像及び対象画像は、各種の画像入力機器、或いはコンピュータなどの記憶装置やネット上などから、直接或いは前処理後に入力されるものとする。
【００１６】
この結果、従来の画像処理で問題になっていた明るさに差がある画像の他、元の画像と違う部分（汚れや上書きなど）の多い画像でも、テキスト画像と同じ画像部分だけの明るさの差と相関度を求めることができ、さらに差異の状態をも把握することが可能となる。さらに大きな特徴として従来の方法に比べて処理が簡単であるという点があり、一画素分の処理に必要な演算は、基本的に減算１回とヒストグラム作成に必要な加算１回だけで、コンピュータのソフトウエア処理で実現することはもちろん、高速化のために、この部分の処理をハードウエアで実現することも容易である。
【００１７】
しかしながら、画像Ｔと画像Ｇの明るさに差がある場合、「請求項１」による演算結果に非線形の部分が発生すること（白潰れ、或いは黒潰れの部分）があり、この部分は特に明るさの差が大きいときに相関度に影響するため、ヒストグラム演算の対象から除外する措置が必要となる。
【００１８】
「請求項２」の発明は、マスクする部分を指定することで不要な値だけをヒストグラム処理から排除するものである。マスクの範囲は使用条件によって異なる。パターンマッチングに応用する場合は、画像間の差異情報は必要でないため、対象画像の画素値Ｇ（ｘ，ｙ）の最大値付近と最小値付近（閾値の設定が必要）の値を無条件でマスクするため以下のようになる。
マスクの範囲＝（Ｇ（ｘ，ｙ）＞上限）　ＯＲ　（Ｇ（ｘ，ｙ）＜下限）　上限及び下限は設定値である。
差異あるいは汚れ検出に応用する場合は、パターンマッチング用のマスクにて予備処理を行い、作成されたヒストグラムにより求めた明るさの差のレベルによって、以下のようなマスクのパターンを設定し、実際の差異あるいは汚れ検出の演算を行う。
明るさに差がない場合はマスクを使用しない（但しコントラストが強い場合は除く）。
テキスト画像に比べて対象画像が明るい場合は　（Ｇ（ｘ，ｙ）＞上限）　ＡＮＤ　（Ｓ（ｘ，ｙ）　＜　明るさの差のレベル　−　Ｗ／２）
つまり、対象画像の画素の値が最大値か最大値に近く、かつ差分値の頻度が集中している下限より下となる。　「図１７」
テキスト画像に比べて対象画像が明るい場合は　（Ｇ（ｘ，ｙ）＜下限）　ＡＮＤ　（Ｓ（ｘ，ｙ）　＞　明るさの差のレベル　＋　Ｗ／２）
つまり、対象画像の画素の値が最小値か最小値に近く、かつ差分値の頻度が集中している上限より上となる。　「図１８」
但し　差分値Ｓ（ｘ，ｙ）　＝　対象画像の画素値Ｇ（ｘ，ｙ）　−　テキスト画像の画素値Ｔ（ｘ，ｙ）　となる。
また　Ｗ　＝　基準レベルのバラツキの幅　とする。
【００１９】
差異あるいは汚れ検出に応用する場合に、マッチングの場合と比べてマスクが複雑になるのは、対象画像内の差異のある画素には白或いは黒の場合も存在するためである。
更にコントラストが強い時などは「図２２」のようにマスク部分が上下に必要になる場合がある。　これらのマスクは演算によって、或いはテーブルなどを使用して実現することができる。またマスクされなかった有効な画素数をカウントすることにより、明るさに大きな差がある画像でも、有効画素に対する集中（ピーク値）の割合が得られ、さらに間引きなどにより検査対象画素が少ない場合でも相関度がより正確になる。
【００２０】
【発明の実施の形態】
［実施形態１］
テンプレートマッチングに実施
テンプレートマッチングとは、パターンの検出や位置決めなどに使用される方法であるが、広い検索範囲に対して実行した場合膨大な回数の相関値検出の処理が必要になり、現実的な時間で実行するには、複雑な処理を行うことが難しかった。しかし、この実施形態によると、簡単な処理にもかかわらず明るさの変化や画像の一部の変更に影響を受けにくく、高精度の位置検出が期待できる。さらに処理時間を短縮するため、ヒストグラム作成までの処理をハードウエア化することも比較的容易となる。
【００２１】
「図１」にテンプレートマッチング装置の制御ブロック図を示す。スキャンアドレス生成処理回路５１は、テキスト画像のサイズ設定信号（１２）および対象画像内の検索範囲設定信号（１３）を受けてテキスト画像記憶部５２および対象画像記憶部５３に対して対応するスキャンアドレスを供給するとともに、ヒストグラム解析処理・相関度最大位置検出処理回路５５に対して現在の検索位置のデータ（１６）を供給する。またこの場合は「００４２」の手法を用いた間引き処理によって全体の処理量を大幅に削減する。
【００２２】
テキスト画像Ｔとは、基準パターン画像であり、対象画像Ｇとは処理対象画像である。これらの画像は、予め、テキスト画像記憶部５２および対象画像記憶部５３に格納しておき、スキャンアドレス生成処理回路５１によって読み出された両記憶部のデータが演算処理装置５４に供給される。
【００２３】
演算処理回路５４が本発明に関わる回路であり、その詳細ブロック図を「図２」に示している。「図２」において、係数変換処理回路６１は、前記テキスト画像Ｔの値信号（１）を受けて、後述する［実施形態３］のためにテキスト画像Ｔの値の係数変換を行い（但し画像間にコントラストの差がない場合は不要）、その処理結果Ｄｔを減算処理回路６３に供給する。前記対象画像Ｇの値信号（２）は、減算処理回路６３にＤｇとして供給されるとともに、ヒストグラム加算が有効であるかを判定する有効画素判定回路６２に供給される。
【００２４】
減算回路６３は、Ｄｇ−Ｄｔの減算処理を行う。さらに前記減算結果に対し、マスク処理及び有効画素カウンタ６４で有効画素判定回路６２からのマスク信号（１１）などを参照したマスク処理後、ヒストグラム生成処理回路６５にてヒストグラムを生成する。この差分値によるヒストグラムデータ（１５）は、「図１」のヒストグラム解析処理・相関度最大位置検出装置５５に供給され、またこのときマスクされなかった有効画素も、マスク処理及び有効画素カウンタ６４にてカウントされ有効画素数（３２）として同装置に供給される。
【００２５】
以上の処理は、他のテンプレートマッチング装置と同様に、対象画像内の位置を移動しながら繰り返して実行され、そのたびにヒストグラムが作成される。　ヒストグラム解析処理・相関度最大位置検出装置５５は、ヒストグラムが作成される度に、頻度のピーク値を求め、それまでの最大ピーク値との間で最大値検出処理を行う。さらに最大値検出処理では、最大ピーク値の記憶とともにそのときの明度差信号、対象画像内の位置データ及び有効画素カウンタの値も記憶される。対象画像内の最後の位置の処理が終了した時、全体のピーク値の最大値と、そのときの対象画像内の位置信号（１７）及び有効画素カウンタの値が求まり、そのデータを元にテキスト画像Ｔと対象画像Ｇとの相関度信号（１８）および明度差信号（１９）を出力する。
【００２６】
上記構成になるテンプレートマッチング装置の詳しい制御動作を「図３」のフローチャートに従って説明する。
ステップＳ１では、マッチング用のマスク（対象画像データの最大値、最小値付近）を設定する。
次のステップＳ２では、対象画像内のマッチング基準位置を移動する（最初のみ開始位置を設定）。
次のステップＳ３では、テキスト画像Ｔと対象画像Ｇの間引き処理によるスキャンアドレスを生成する。
次のステップＳ４では、前記のアドレスによりテキスト画像Ｔ及び対象画像Ｇのデータを読み出し演算処理部に送る。
次のステップＳ５では、本発明による演算処理を行う。
次のステップＳ６では、１画面分のスキャンが終了でなければ、Ｓ３より繰り返す。
次のステップＳ７では、本発明による演算回路により作成したヒストグラムのピーク最大値と、このときの位置情報などを更新する。
次のステップＳ８では、対象画像内のマッチング基準位置の移動が最終でなければ、Ｓ２より繰り返す。
次のステップＳ９では、相関値が最大の位置及びそのときの相関値と明るさの差レベルを出力する。
【００２７】
上記ステップＳ５において実施した、本発明による演算処理の動作原理を説明する。もしテキスト画像Ｔと対象画像Ｇが全く同じ場合、それぞれの対応する画素値をグラフに表すと、Ｔ（ｘ，ｙ）＝Ｇ（ｘ，ｙ）であるため「図８」のような直線上に集まる。　しかしテキスト画像Ｔに比べて対象画像Ｇが明るい場合は「図９」のように、また対象画像Ｇが暗い場合は「図１０」のようになる。ここで斜め方向の投影ヒストグラムをとることもできるが計算が難しいため、各画素についてＧ（ｘ，ｙ）−Ｔ（ｘ，ｙ）の演算を行う。その結果、「図８」は「図１１」に、「図９」は「図１２」に、「図１０」は「図１３」に変換され、さらに縦軸方向のヒストグラムをとることで、「図１１」は「図１４」に、「図１２」は「図１５」に、「図１３」は「図１６」に変換される。「図１４」から「図１６」のグラフを見ると、ピーク値の高さは相関値と考えられるが、ピーク値のある位置が明るい場合は右に、暗い場合は左に移動していることが分かる。これは明るさの差と相関値を独立して検出していることを意味しており、これが「請求項１」の内容となる。
【００２８】
明るい場合のヒストグラム「図１５」と、暗い場合のヒストグラム「図１６」には、明度差が０の方向に向かってある程度の値が存在することがある。この部分は、「図９」及び「図１０」の図中にある上限部、及び下限部の部分で、実際の画像では白潰れ或いは黒潰れとなった部分に相当する。この部分は明るさの差が少ない場合は影響が少ないが、明るさの差が大きくなると処理結果に悪影響を及ぼすことが考えられる。特に差異検出に応用する場合、実際の差異と白潰れ或いは黒潰れの判別が出来なくなる。このためヒストグラム加算処理において、この部分を無効にするマスク処理を行う。「図１２」の場合のマスク範囲は「図１７」、また「図１３」のマスク範囲は「図１８」となる。マスクの実施方法としては「００１８」に示すような演算による方法、或いは変換テーブルによ方法などがある。これが「請求項２」の内容となる。
【００２９】
［実施形態１の効果］
テンプレートマッチングに実施した場合は次の効果がある。
従来の方法に比べて簡単な処理で済むため、繰り返しの処理が多いテンプレートマッチングの場合でも処理時間の短縮が計れ、さらに高速化のためにハードウエアで実現することも容易である。また、簡単な処理でありながら明るさの変化や画像の部分変更にも影響されにくく、高精度の位置検出が期待できる。
【００３０】
［実施形態２］
差異あるいは汚れ検出に実施
基準となるテキスト画像Ｔと比較される対象画像Ｇの間の明るさの差が大きくても、人間は同じ画像であるかどうかを認識できる。一方画像データとしてみた場合は、両画像の対応する画素間に常に差が存在している状態となり、更に多くの白潰れや黒潰れの画素が発生しているため、従来は違う画像と判定されることが多かった。さらにこの状態で画像の小さな差異（汚れ）などを検出することは従来の技術では困難であった。しかし本発明を適用することにより、大きく明るさが変化した画像内の、小さな差異も簡単かつ高精度に検出することができる。
【００３１】
なぜ検出が可能になるかと言うと、「請求項１」における差分演算のヒストグラムはたとえ明るさが大きく変化していても、同じ画像であればしかるべき明るさの差にピーク値が現れ、変化部分はピーク値がある明度差レベルより離れて、或いは分散して現れるからある。この場合白潰れや黒潰れの画素は、「請求項２」によって生成されるマスクによってあらかじめヒストグラムより除外されている。さらにピーク値のある明度差レベルより離れるほど違いの目立つ部分であり、逆に同レベルに近いほど目立ちにくい差異、あるいは元の画素値のばらつきであると考えられる。
【００３２】
そこで頻度の集中している明度差レベルより両側に任意の距離離れたところに閾値をおき、それより外側にある画素を全て差異分として合計することにより、差異のある画素の数を得ることができる。差異のある場合のヒストグラムは「図１９」のようになり、差異部分だけを容易に分離することができる。またピーク値のある明度差レベルより離れるほど目立つ特性を利用して、画素値に重みを付け、絶対値の合算を行うことで人間の感覚に近い検出が可能になる。また差異があると判定された画素のｘ，ｙ座標を、そのときの重みなどとともに記録することで、画素単位で差異や汚れの３次元マッピング表示、あるいは元画像との合成表示などを行うことも可能である。
【００３３】
「図４」に識別検査装置の制御ブロック図を示す。この「図４」において、「図１」のものと異なる個所は、「（１６）現在の検索位置データ」と、ヒストグラム検出処理の出力に、「（１７）　テキスト画像を検出した対象画像内の位置」がなくなり、「（２０）、画像Ｔと画像Ｇの差異レベル」が追加されている。処理としてはテンプレートマッチングのように、対象画像内の位置を移動しながら繰り返して実行するマッチング位置を検出するための処理はない。但しあらかじめ明るさの差のデータを求めるために予備処理（通常は「００４２」の手法を用いた間引き処理による）を実行した後、「請求項２」の発明の項で説明したマスクデータを設定し、指定された範囲の全画素について演算処理を行い、生成されたヒストグラムを元に上記のデータを出力する。
【００３４】
「図４」の制御ブロック図の動作を「図５」のフローチャートに従って説明する。
ステップＳ１１では、明るさの差のレベルを調べるため、マッチング用のマスクを設定。
次のステップＳ１２では、テキスト画像Ｔと対象画像Ｇの（２回目以降は次の）間引きスキャンアドレスを生成する。
次のステップＳ１３では、前記のアドレスにより対象画像Ｇ及びテキスト画像Ｔのデータを読み出し演算処理部に送る。
次のステップＳ１４では、本発明による対応する画素の差分のヒストグラムを作成する。
次のステップＳ１５では、スキャンが終了していなければ、Ｓ１２より繰り返し。次のステップＳ１６では、生成されたヒストグラムより求められる明るさの差のデータにより、正規のマスクを設定する。
次のステップＳ１７では、テキスト画像Ｔと対象画像Ｇの（２回目以降は次の）全画素スキャンアドレスを生成する。
次のステップＳ１８では、前記のアドレスにより対象画像Ｇ及びテキスト画像Ｔのデータを読み出し演算処理部に送る。
次のステップＳ１９では、本発明による対応する画素の差分のヒストグラムを作成する。
次のステップＳ２０では、スキャンが終了していなければ、Ｓ１７より繰り返し。次のステップＳ２１では、完成したヒストグラムにより相関度と明るさレベル及び差異（汚れ）のレベルを出力する。
【００３５】
［実施形態２の効果］
差異あるいは汚れ検出に応用した場合は次の効果がある。大きく明るさが異なる画像間の小さな差異（汚れ）も、簡単かつ高精度に検出することができ、画像間の明るさの差も検出できる。さらに人間の感覚に対応した検査も可能である。
【００３６】
［実施形態３］
「実施形態１」及び「実施形態２」の場合、画像認識において明るさの変化による影響を受けにくい特徴があるが、さらに以下のような処理を行うことにより、コントラストの影響を少なくすることができ、画像間のコントラストの差も検出できるようになる。
本発明の処理においてコントラストの差がない場合は、両方の画像において対応する各画素のレベルの差はほぼ一定であるので、差分をとった場合は同じ値に集まる。ところがテキスト画像に対して対象画像のコントラストが強くなった場合、画像の画素を集計したグラフは「図２０」のようになる。この場合、高いレベルでは対象画像のレベルがより高く、逆に低いレベルではより低くなるため、対応する画素の差分値も「図２１」のようになり、ヒストグラムをとっても差分値が集中しないため高い相関値が出なくなる。
【００３７】
そこで、差分値が集中するようになる係数を、テキスト画像の各画素値に乗じた値によって差分をとるようにすれば、コントラストに対応させることができる。しかしながらこの時点では、コントラストの差は不明であるため、複数の係数を試すことによって、相関値が最大になる係数を求める。相関値が最大になった時の差分値のグラフは「図２２」、またヒストグラムは「図２３」のようになり、その時の係数値がそのままコントラストの差の値となる。「図２２」はマスク部分も同時に表示しているが、コントラストが強い場合上下に必要になることがある。逆にコントラストが弱い場合はマスクが必要でない場合が多い。「図２３」において点線で示しているのは、マスクがない場合のヒストグラムである。
【００３８】
この処理を実施する場合の問題点は、係数を求める処理をＮ回試すことで処理量もＮ倍に増加することである。最初に試行した時のヒストグラムのデータ或いは有効画素数などによりある程度係数の予測が可能で、試行回数（Ｎ）をある程度削減することはできるが、元々処理量が多いテンプレートマッチングに応用するには、検索範囲の制限、あるいはハードウエアによる処理速度の大幅な向上などにより対応する必要がある。
【００３９】
［実施形態３の効果］
明るさの差に加えコントラストの差にも対応することで、環境による多くの変化に対応できることになる。もちろん明るさとコントラストの任意の変化の組み合わせにも対応できるだけでなく、それぞれの差を独立に検出することもでき、その上で高精度の差異の検出が可能である。
【００４０】
［実施形態４］
「実施形態１」によるテンプレートマッチングの実施において、さらに以下の処理を追加することにより、大きさの違う画像、あるいは互いに回転移動している画像どうしの相関を求めることができる。この実施形態では、テキスト画像及び対象画像の対応する画素を選択する、スキャンアドレス生成処理の機能を拡張して使用する。テンプレートマッチングに実施した場合の全体のブロック図は「図１」と同じである。
【００４１】
テンプレートマッチングを行う場合、テキスト画像Ｔ及び対象画像Ｇのアドレスの指定は通常Ｘ−Ｙカウンタなどを使用して、それぞれの対応する画素のＸアドレス及びＹアドレスを順にスキャンする。しかしテンプレートマッチングの場合、特に処理量が多くなるため、全ての画素を比較するのではなく、比較する画素を間引くことにより処理時間を短縮していることが多かった。さらに処理上、テキスト画像は矩形となるが、実際に検出したい画像は矩形であるとは限らないため不要な部分が矩形内に存在することになり、背景と干渉するなど位置検出の精度に悪影響があった。そのため、この対策として別にマスク画像を設けることにより、これら不要部分の影響を少なくする方法が用いられていた。
【００４２】
「本実施形態４」では、カウンタのアドレスを直接使用するのではなく、一旦アドレス変換テーブルを中継することにより、スキャンアドレスを生成する。テーブル内には、あらかじめテキスト画像で比較する画素のアドレスを記憶しておき、テーブルのアドレスに入力されるカウンタ出力によって、比較する各画像のアドレスが順に読み出される。このアドレスはテキスト画像のアドレスとして、さらに検索基準位置のＸ及びＹ座標をそれぞれに加えたアドレスを、対象画像のアドレスとする。「図６」はこの処理のブロック図である。
【００４３】
以上のようにすることで、テーブルに書くアドレスは任意に設定できるため、以下のような利点がある。まず比較する画像の任意の間引きに加え、不要な画素のアドレスを設定しないことで、マスクの効果が実現できる。さらに「図７」のように対象画像用にテキスト画像とは独立したテーブルを追加し、記録するスキャンアドレスを互いにアフィン変換した位置に指定することで、画像の回転及び大小の変化にも対応することができる。「図２５」は９０度回転に対応する場合の例（説明のため画素が粗くなっている）であり、▲１▼〜▲６▼はそれぞれの画像において読み出す画素の順番を示している。なお回転はテーブルの設定によって任意の角度に対応することが可能である。但し対象画像の回転及び大小があらかじめ分かっていない場合は、このテーブルを選択あるいは書き換えながら複数回試行して、最大の相関値を求める必要がある。
【００４４】
［実施形態３の効果］
アドレススキャンをテーブルを介して行うことにより、対象物の形状、サイズ、傾きなどにもテーブルのみで対応することができるが、さらにスキャンの順番も任意であることから、テーブルの最初に特徴的な部分を設定してスキャンを実行することで、より少ない画素を調べるだけで対象物の有無を判定でき、無い場合は処理をスキップすることが可能となる。これは特にテンプレートマッチングの処理速度を上げるのに効果がある。またテーブル容量は少なくて済むことから、逆に多くのパターンをセットしておくことで、テーブルの書き換えの時間を省略することができる。
【００４５】
【発明の効果】
この発明によれば、簡単な処理によって、画像間の相関値と明るさの差或いは差異などを独立に検出することができ、さらに機能拡張によって画像間のコントラストの差や、回転、拡大／縮小にも対応することができる。
【図面の簡単な説明】
【図１】本発明の実施形態１に対する制御ブロック図
【図２】図１における演算処理回路の詳細を示した制御ブロック図
【図３】図１の制御ブロック図の制御動作を示したフローチャート
【図４】本発明の実施形態２に対する制御ブロック図
【図５】図４の制御ブロック図の制御動作を示したフローチャート
【図６】本発明の実施形態４に対する制御ブロック図（その１）
【図７】本発明の実施形態４に対する制御ブロック図（その２）
【図８】テキスト画像Ｔと対象画像Ｇが同じ場合の、対応する画素値のグラフ
【図９】図８において対象画像Ｇが明るい場合のグラフ
【図１０】図８において対象画像Ｇが暗い場合のグラフ
【図１１】図８に対して請求項１の演算を行った結果のグラフ
【図１２】図９に対して請求項１の演算を行った結果のグラフ
【図１３】図１０に対して請求項１の演算を行った結果のグラフ
【図１４】図１１の縦軸についてのヒストグラム
【図１５】図１２の縦軸についてのヒストグラム
【図１６】図１３の縦軸についてのヒストグラム
【図１７】図９の場合のマスク範囲である
【図１８】図１０の場合のマスク範囲である
【図１９】画像が明るくなり、さらに差異などがあった場合のヒストグラムの例
【図２０】テキスト画像Ｔと対象画像Ｇで、コントラストが強くなっている場合に、対応する画素値の関係を示すグラフ
【図２１】図２０に対して請求項１の演算を行った結果のグラフである
【図２２】図２０に対して最適の係数を使用して、請求項１の演算を行った場合のグラフである（マスク付）
【図２３】図２２の場合のヒストグラムである
【図２４】各テーブルに書き込むアドレスの順序（回転の場合）
【符号の説明】
（１）　テキスト画像Ｔの値
（２）　対象画像Ｇの値
（３）　画像Ｔと画像Ｇで、それぞれ対応する位置にある画素のマッピング
（４）　演算結果が正のレベル（ＧがＴに比べて明るい）
（５）　演算結果が負のレベル（ＧがＴに比べて暗い）
（６）　画像Ｔの値に対する、演算結果のグラフ
（７）　明るい
（８）　暗い
（９）　頻度
（１０）　頻度の中心値　（ヒストグラムの最大値）
（１１）　非線形になっているためマスクする部分　（線分に囲まれた部分）
（１２）　テキスト画像のサイズ設定
（１３）　対象画像内、検索範囲の設定
（１４）　対象画像のサイズ設定
（１５）　差分値によるヒストグラムデータ
（１６）　現在の検索位置データ
（１７）　テキスト画像を検出した、対象画像内の位置
（１８）　画像Ｔと画像Ｇの相関度
（１９）　画像Ｔと画像Ｇの明度差
（２０）　画像Ｔと画像Ｇの差異レベル（テキストと違う画像の質と量）
（２１）　検索位置のカウントアップ
（２２）　スキャンアドレステーブルのアドレス
（２３）　テキスト画像Ｘスキャンアドレス
（２４）　テキスト画像Ｙスキャンアドレス
（２５）　対象画像検索位置Ｘアドレス
（２６）　対象画像検索位置Ｙアドレス
（２７）　対象画像Ｘスキャンアドレス
（２８）　対象画像Ｙスキャンアドレス
（２９）　本発明による演算処理
（３０）　差異（汚れ）のある部分
（３１）　差異の閾値　（２本の点線の外側が差異のある部分）
（３２）　有効画素数
５１　スキャンアドレス生成処理回路
５２　テキスト画像記憶部
５３　対象画像記憶部
５４　演算処理回路
５５　ヒストグラム解析処理・相関度最大位置検出処理回路
６１　係数変換処理回路（テキスト画素データ×係数）
６２　有効画素判定回路
６３　減算処理回路
６４　マスク処理及び有効画素カウンタ
６５　ヒストグラム生成処理回路
７１　テキスト画像カウンタ
７２　対象画像検索位置アドレスカウンタ
７３　変換テーブル
７４　変換テーブル
７５　テキスト画像メモリ
７６　対象画像メモリ
【図１】
2004127061.tif 000005
【図２】
2004127061.tif 000006
【図３】
2004127061.tif 000007
【図４】
2004127061.tif 000008
【図５】
2004127061.tif 000009
【図６】
2004127061.tif 000010
【図７】
2004127061.tif 000011
【図８】
2004127061.tif 000012
【図９】
2004127061.tif 000013
【図１０】
2004127061.tif 000014
【図１１】
2004127061.tif 000015
【図１２】
2004127061.tif 000016
【図１３】
2004127061.tif 000017
【図１４】
2004127061.tif 000018
【図１５】
2004127061.tif 000019
【図１６】
2004127061.tif 000020
【図１７】
2004127061.tif 000021
【図１８】
2004127061.tif 000022
【図１９】
2004127061.tif 000023
【図２０】
2004127061.tif 000024
【図２１】
2004127061.tif 000025
【図２２】
2004127061.tif 000026
【図２３】
2004127061.tif 000027
【図２４】
2004127061.tif 000028