(57)【要約】【課題】少ない探索量で、高い照合精度を得る。【解決手段】画像照合装置１００は、入力部１００と、記憶部１０３と、制御部１０３５と、判定部１０３４とを含む。入力部１００は、画像を表わすデータを受付ける。記憶部１０３は、画像を表わすデータを記憶する。制御部１０３５は、除外領域を検出する。判定部１０３４は、対象領域が、テンプレート画像のいずれかの部分に一致するか否かを判断し、第１の部分のいずれかの部分領域とテンプレート画像のいずれかの部分とが一致する場合に、センシング画像のうち除外領域以外の部分領域がテンプレート画像のいずれかの部分に一致するか否かを判断する。【選択図】図１
2007094689.tif 000002
【特許請求の範囲】
【請求項１】
画像を表わすデータを受付けるための受付手段と、
センシング画像を表わすデータおよびテンプレート画像を表わすデータを記憶するための記憶手段と、
前記センシング画像の部分である部分領域のうち、前記テンプレート画像のいずれかの部分に一致する可能性があるか否かの判断の対象外となる領域である除外領域を検出するための検出手段と、
隣接する前記部分領域の集合体である第１の部分のうち前記除外領域以外の領域である対象領域が、前記テンプレート画像のいずれかの部分に一致する可能性があるか否かを判断するための第１の判断手段と、
前記第１の部分のいずれかの部分領域と前記テンプレート画像のいずれかの部分とが一致する可能性がある場合に、前記センシング画像のうち前記除外領域以外の部分領域が前記テンプレート画像のいずれかの部分に一致するか否かを判断するための第２の判断手段とを含む、画像照合装置。
【請求項２】
前記検出手段は、
前記部分領域での同色の画素の配列に対応する情報である特徴情報を特定するための特定手段と、
予め定めた情報を前記特徴情報とする領域のいずれかを前記除外領域として検出するための手段とを含む、請求項１に記載の画像照合装置。
【請求項３】
前記特徴情報が予め定めた情報である領域のいずれかを前記除外領域として検出するための手段は、前記予め定めた情報を特徴情報とする領域であって隣接する部分領域も前記特徴情報が予め定めた情報である領域を前記除外領域として検出するための手段を含む、請求項２に記載の画像照合装置。
【請求項４】
前記第１の判断手段は、前記第１の部分の部分領域がいずれも前記対象領域である場合、前記第１の部分と前記テンプレート画像のいずれかの部分とが一致する可能性があるか否かを判断するための手段を含み、
前記第２の判断手段は、前記第１の部分と前記テンプレート画像のいずれかの部分とが一致する可能性がある場合に、前記センシング画像のうち前記除外領域以外の部分領域が前記テンプレート画像のいずれかの部分に一致するか否かを判断するための手段を含み、
前記画像照合装置は、前記第１の部分の部分領域が前記除外領域を含む場合、前記センシング画像が前記テンプレート画像に一致するか否かを判断するための第３の判断手段をさらに含む、請求項１に記載の画像照合装置。
【請求項５】
前記第２の判断手段は、前記対象領域と前記テンプレート画像のいずれかの部分とが一致する可能性がある場合に、前記センシング画像のうち前記除外領域以外の部分領域が前記テンプレート画像のいずれかの部分に一致するか否かを判断するための手段を含む、請求項１に記載の画像照合装置。
【請求項６】
前記第１の判断手段は、
前記テンプレート画像のうち最も類似する部分を前記対象領域それぞれについて探索するための探索手段と、
前記対象領域それぞれと前記探索手段が探索した部分それぞれとの位置の関係に基づいて、前記センシング画像の少なくとも一部と前記テンプレート画像の少なくとも一部との類似度を算出するための手段と、
前記類似度に基づいて、前記対象領域が前記テンプレート画像のいずれかの部分に一致するか否かを判断するための手段とを含む、請求項１に記載の画像照合装置。
【請求項７】
前記テンプレート画像のいずれかの部分に一致するか否かを判断するための手段は、
前記類似度が第１の閾値以上ならば、前記対象領域が前記テンプレート画像のいずれかの部分に一致すると判断するための手段と、
前記類似度が第２の閾値未満ならば、前記対象領域が前記テンプレート画像のいずれの部分とも異なると判断するための手段とを含む、請求項６に記載の画像照合装置。
【請求項８】
前記類似度を算出するための手段は、前記複数の部分領域と前記探索手段が探索した部分との位置の関係が所定の要件を満たす部分領域の数を算出するための手段を含む、請求項６に記載の画像照合装置。
【請求項９】
前記第１の部分は、前記センシング画像の中心にある部分領域を含む、請求項１に記載の画像照合装置。
【請求項１０】
前記画像照合装置は、
前記第１の部分を含む前記センシング画像の部分である包含部分が、前記テンプレート画像のいずれかの部分に一致する可能性を表わす値である判定値を決定するための手段と、
前記包含部分の大きさに対応する閾値を前記判定値が上回るか否かを判断するための手段をさらに含む、請求項１に記載の画像照合装置。
【請求項１１】
前記受付手段は、前記センシング画像を表わすデータを受付けるための手段を含み、
前記記憶手段は、前記テンプレート画像を表わすデータを予め記憶するための手段を含む、請求項１に記載の画像照合装置。
【請求項１２】
前記受付手段は、指紋の画像のデータを前記センシング画像を表わすデータとして受付けるための手段を含む、請求項１に記載の画像照合装置。
【請求項１３】
画像を表わすデータを受付ける受付ステップと、
センシング画像を表わすデータおよびテンプレート画像を表わすデータを記憶する記憶ステップと、
前記センシング画像の部分である部分領域のうち、前記テンプレート画像のいずれかの部分に一致する可能性があるか否かの判断の対象外となる領域である除外領域を検出する検出ステップと、
隣接する前記部分領域の集合体である第１の部分のうち前記除外領域以外の領域である対象領域が、前記テンプレート画像のいずれかの部分に一致する可能性があるか否かを判断する第１の判断ステップと、
前記第１の部分のいずれかの部分領域と前記テンプレート画像のいずれかの部分とが一致する可能性がある場合に、前記センシング画像のうち前記除外領域以外の部分領域が前記テンプレート画像のいずれかの部分に一致するか否かを判断する第２の判断ステップとを含む、画像照合方法。
【請求項１４】
画像を表わすデータを受付ける受付ステップと、
センシング画像を表わすデータおよびテンプレート画像を表わすデータを記憶する記憶ステップと、
前記センシング画像の部分である部分領域のうち、前記テンプレート画像のいずれかの部分に一致する可能性があるか否かの判断の対象外となる領域である除外領域を検出する検出ステップと、
隣接する前記部分領域の集合体である第１の部分のうち前記除外領域以外の領域である対象領域が、前記テンプレート画像のいずれかの部分に一致する可能性があるか否かを判断する第１の判断ステップと、
前記第１の部分のいずれかの部分領域と前記テンプレート画像のいずれかの部分とが一致する可能性がある場合に、前記センシング画像のうち前記除外領域以外の部分領域が前記テンプレート画像のいずれかの部分に一致するか否かを判断する第２の判断ステップとを含む各ステップをコンピュータに実行させるための画像照合プログラム。
【請求項１５】
画像を表わすデータを受付ける受付ステップと、
センシング画像を表わすデータおよびテンプレート画像を表わすデータを記憶する記憶ステップと、
前記センシング画像の部分である部分領域のうち、前記テンプレート画像のいずれかの部分に一致する可能性があるか否かの判断の対象外となる領域である除外領域を検出する検出ステップと、
隣接する前記部分領域の集合体である第１の部分のうち前記除外領域以外の領域である対象領域が、前記テンプレート画像のいずれかの部分に一致する可能性があるか否かを判断する第１の判断ステップと、
前記第１の部分のいずれかの部分領域と前記テンプレート画像のいずれかの部分とが一致する可能性がある場合に、前記センシング画像のうち前記除外領域以外の部分領域が前記テンプレート画像のいずれかの部分に一致するか否かを判断する第２の判断ステップとを含む各ステップをコンピュータに実行させるための画像照合プログラムを記録したコンピュータ読取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像照合装置、画像照合方法、画像照合プログラムおよび画像照合プログラムを記録したコンピュータ読取り可能な記録媒体に関し、特に、複数の画像を照合する画像照合装置、画像照合方法、画像照合プログラムおよび画像照合プログラムを記録したコンピュータ読取り可能な記録媒体に関する。
【背景技術】
【０００２】
特許文献１は、センシング画像を部分領域に分割するステップと、各々の部分領域がテンプレート画像内のどの位置のイメージと最も一致するかの探索をすべてのセンシング部分領域につき行うステップと、探索時に最も一致したセンシング画像とテンプレート画像との間の移動ベクトルの分布に基づいて同一の指紋かどうかを判定するステップとを含む方法を開示する。
【０００３】
特許文献１に開示された方法によると、高い照合精度を得ることができる。
【特許文献１】特開２００３−３２３６１８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかし、特許文献１に開示された発明には、処理時間や消費電力が多すぎるという問題点がある。このような問題点が生じる原因は、情報の処理量が多いという点にある。情報の処理量が多くなる原因は、まず一方の画像全体を複数の部分領域に分割し、そのすべての部分領域について、部分領域同士の位置の関係を明らかにする探索を実施する点にある。
【０００５】
本発明は上述の問題点を解決するためになされたものであって、その目的は、少ない探索量で、高い照合精度を得ることができる画像照合装置、画像照合方法、画像照合プログラムおよび画像照合プログラムを記録したコンピュータ読取り可能な記録媒体を提供することにある。
【課題を解決するための手段】
【０００６】
上記目的を達成するために、本発明のある局面にしたがうと、画像照合装置は、受付手段と、記憶手段と、検出手段と、第１の判断手段と、第２の判断手段とを含む。受付手段は、画像を表わすデータを受付ける。記憶手段は、センシング画像を表わすデータおよびテンプレート画像を表わすデータを記憶する。検出手段は、センシング画像の部分である部分領域のうち、テンプレート画像のいずれかの部分に一致する可能性があるか否かの判断の対象外となる領域である除外領域を検出する。第１の判断手段は、隣接する部分領域の集合体である第１の部分のうち除外領域以外の領域である対象領域が、テンプレート画像のいずれかの部分に一致する可能性があるか否かを判断する。第２の判断手段は、第１の部分のいずれかの部分領域とテンプレート画像のいずれかの部分とが一致する可能性がある場合に、センシング画像のうち除外領域以外の部分領域がテンプレート画像のいずれかの部分に一致するか否かを判断する。
【０００７】
また、上述の検出手段は、部分領域での同色の画素の配列に対応する情報である特徴情報を特定するための特定手段と、予め定めた情報を特徴情報とする領域のいずれかを除外領域として検出するための手段とを含むことが望ましい。
【０００８】
もしくは、特徴情報が予め定めた情報である領域のいずれかを除外領域として検出するための手段は、予め定めた情報を特徴情報とする領域であって隣接する部分領域も特徴情報が予め定めた情報である領域を除外領域として検出するための手段を含むことが望ましい。
【０００９】
また、上述の第１の判断手段は、第１の部分の部分領域がいずれも対象領域である場合、第１の部分とテンプレート画像のいずれかの部分とが一致する可能性があるか否かを判断するための手段を含むことが望ましい。併せて、第２の判断手段は、第１の部分とテンプレート画像のいずれかの部分とが一致する可能性がある場合に、センシング画像のうち除外領域以外の部分領域がテンプレート画像のいずれかの部分に一致するか否かを判断するための手段を含むことが望ましい。画像照合装置は、第１の部分の部分領域が除外領域を含む場合、センシング画像がテンプレート画像に一致するか否かを判断するための第３の判断手段をさらに含むことが望ましい。
【００１０】
また、上述の第２の判断手段は、対象領域とテンプレート画像のいずれかの部分とが一致する可能性がある場合に、センシング画像のうち除外領域以外の部分領域がテンプレート画像のいずれかの部分に一致するか否かを判断するための手段を含むことが望ましい。
【００１１】
また、上述の第１の判断手段は、テンプレート画像のうち最も類似する部分を対象領域それぞれについて探索するための探索手段と、対象領域それぞれと探索手段が探索した部分それぞれとの位置の関係に基づいて、センシング画像の少なくとも一部とテンプレート画像の少なくとも一部との類似度を算出するための手段と、類似度に基づいて、対象領域がテンプレート画像のいずれかの部分に一致するか否かを判断するための手段とを含むことが望ましい。
【００１２】
もしくは、上述のテンプレート画像のいずれかの部分に一致するか否かを判断するための手段は、類似度が第１の閾値以上ならば、対象領域がテンプレート画像のいずれかの部分に一致すると判断するための手段と、類似度が第２の閾値未満ならば、対象領域がテンプレート画像のいずれの部分とも異なると判断するための手段とをことが望ましい。
【００１３】
もしくは、上述の類似度を算出するための手段は、複数の部分領域と探索手段が探索した部分との位置の関係が所定の要件を満たす部分領域の数を算出するための手段を含むことが望ましい。
【００１４】
また、上述の第１の部分は、センシング画像の中心にある部分領域を含むことが望ましい。
【００１５】
また、上述の画像照合装置は、第１の部分を含むセンシング画像の部分である包含部分が、テンプレート画像のいずれかの部分に一致する可能性を表わす値である判定値を決定するための手段と、包含部分の大きさに対応する閾値を判定値が上回るか否かを判断するための手段をさらに含むことが望ましい。
【００１６】
また、上述の受付手段は、センシング画像を表わすデータを受付けるための手段を含むことが望ましい。併せて、記憶手段は、テンプレート画像を表わすデータを予め記憶するための手段を含むことが望ましい。
【００１７】
また、上述の受付手段は、指紋の画像のデータをセンシング画像を表わすデータとして受付けるための手段を含むことが望ましい。
【００１８】
本発明の他の局面に従うと、画像照合方法は、受付ステップと、記憶ステップと、検出ステップと、第１の判断ステップと、第２の判断ステップとを含む。受付ステップは、画像を表わすデータを受付ける。記憶ステップは、センシング画像を表わすデータおよびテンプレート画像を表わすデータを記憶する。検出ステップは、センシング画像の部分である部分領域のうち、テンプレート画像のいずれかの部分に一致する可能性があるか否かの判断の対象外となる領域である除外領域を検出する。第１の判断ステップは、隣接する部分領域の集合体である第１の部分のうち除外領域以外の領域である対象領域が、テンプレート画像のいずれかの部分に一致する可能性があるか否かを判断する。第２の判断ステップは、第１の部分のいずれかの部分領域とテンプレート画像のいずれかの部分とが一致する可能性がある場合に、センシング画像のうち除外領域以外の部分領域がテンプレート画像のいずれかの部分に一致するか否かを判断する。
【００１９】
本発明の他の局面に従うと、画像照合プログラムは、受付ステップと、記憶ステップと、検出ステップと、第１の判断ステップと、第２の判断ステップとを含む各ステップをコンピュータに実行させる。受付ステップは、画像を表わすデータを受付ける。記憶ステップは、センシング画像を表わすデータおよびテンプレート画像を表わすデータを記憶する。検出ステップは、センシング画像の部分である部分領域のうち、テンプレート画像のいずれかの部分に一致する可能性があるか否かの判断の対象外となる領域である除外領域を検出する。第１の判断ステップは、隣接する部分領域の集合体である第１の部分のうち除外領域以外の領域である対象領域が、テンプレート画像のいずれかの部分に一致する可能性があるか否かを判断する。第２の判断ステップは、第１の部分のいずれかの部分領域とテンプレート画像のいずれかの部分とが一致する可能性がある場合に、センシング画像のうち除外領域以外の部分領域がテンプレート画像のいずれかの部分に一致するか否かを判断する。
【００２０】
本発明の他の局面に従うと、記録媒体は、画像照合プログラムを記録したコンピュータ読取り可能な記録媒体である。画像照合プログラムは、受付ステップと、記憶ステップと、検出ステップと、第１の判断ステップと、第２の判断ステップとを含む各ステップをコンピュータに実行させる。受付ステップは、画像を表わすデータを受付ける。記憶ステップは、センシング画像を表わすデータおよびテンプレート画像を表わすデータを記憶する。検出ステップは、センシング画像の部分である部分領域のうち、テンプレート画像のいずれかの部分に一致する可能性があるか否かの判断の対象外となる領域である除外領域を検出する。第１の判断ステップは、隣接する部分領域の集合体である第１の部分のうち除外領域以外の領域である対象領域が、テンプレート画像のいずれかの部分に一致する可能性があるか否かを判断する。第２の判断ステップは、第１の部分のいずれかの部分領域とテンプレート画像のいずれかの部分とが一致する可能性がある場合に、センシング画像のうち除外領域以外の部分領域がテンプレート画像のいずれかの部分に一致するか否かを判断する。
【発明の効果】
【００２１】
本発明に係る画像照合装置、画像照合方法、画像照合プログラムおよび画像照合プログラムを記録したコンピュータ読取り可能な記録媒体は、少ない探索量で、高い照合精度を得ることができる。
【発明を実施するための最良の形態】
【００２２】
以下、図面を参照しつつ、本発明の実施の形態について説明する。以下の説明では、同一の部品には同一の符号を付してある。それらの名称および機能も同じである。したがって、それらについての詳細な説明は繰返さない。
【００２３】
＜第１の実施の形態＞
以下、本発明の第１の実施の形態に係る画像照合装置について説明する。
【００２４】
図１を参照して、本実施の形態に係る画像照合装置１００は、入力部１０１と、記憶部１０２と、処理部１０３と、出力部１０４（後述するディスプレイ６１０やプリンタ６９０に対応する）と、バス１０５とを含む。入力部１０１は指紋センサを含む。入力部１０１は、その指紋センサにより、センシング画像（画像Ａ）を表わすデータおよびテンプレート画像（画像Ｂ）を表わすデータを受付ける装置である。なお、センシング画像およびテンプレート画像は、いずれも指紋の画像である。入力部１０１は、読込んだ指紋の画像データを、記憶部１０２や処理部１０３に出力する装置でもある。指紋センサは、光学式、圧力式および静電容量方式のいずれかであって、ユーザが指定したタイプのものである。本実施の形態の場合、光学式の指紋センサが含まれていることとする。記憶部１０２は、センシング画像を表わすデータおよびテンプレート画像を表わすデータや各種の計算結果などを記憶する装置である。処理部１０３は、入力部１０１および記憶部１０２を制御する。また処理部１０３は、指紋を照合するために必要な情報の処理（演算を含む）を実施する回路でもある。出力部１０４は、記憶部１０２が記憶した情報や処理部１０３が作成した情報を出力する装置である。バス１０５は、入力部１０１、記憶部１０２、および処理部１０３の間で制御信号やデータ信号を転送する。
【００２５】
記憶部１０２は、後述するメモリ６２４または固定ディスク６２６に相当する。記憶部１０２は、参照ブロック１０２１と、計算ブロック１０２２と、画像ブロック１０２３と、第１領域１０２４と、第２領域１０２５とを含む。参照ブロック１０２１は、参照のために、データを一時的に記憶するブロックである。計算ブロック１０２２は、演算の際データを一時的に記憶するブロックである。画像ブロック１０２３は、センシング画像およびテンプレート画像の画像データを記憶するブロックである。第１領域１０２４および第２領域１０２５は、いずれも位置情報（本実施の形態においては、部分領域の頂点のうち左上にある頂点の座標を表わす情報を「位置情報」という）や、後述する移動ベクトルなどを記憶する領域である。
【００２６】
図２および図３を参照して、第１領域１０２４および第２領域１０２５が位置情報を記憶する、部分領域の配置を説明する。
【００２７】
本実施の形態において、センシング画像の全領域は、２５箇所の部分領域に区分される。指紋の画像全体が、これらの部分領域に覆われている。これらの部分領域には、それぞれＲ（１）〜Ｒ（２５）といった識別番号が付されている。図２は、これらの部分領域のセンシング画像における配置を表わす図である。第１領域１０２４は、部分領域Ｒ（１）〜Ｒ（９）の位置情報を記憶する。部分領域Ｒ（１）〜Ｒ（９）は、センシング画像の中心にある部分領域である。部分領域Ｒ（１）〜Ｒ（９）は、隣接する部分領域の集合体である第１の部分を構成する。第２領域１０２５は、部分領域Ｒ（１０）〜Ｒ（２５）からなる周辺部の部分領域の位置情報を記憶する。部分領域Ｒ（１０）〜Ｒ（２５）は、隣接する部分領域の集合体であって第１の部分とは異なる部分である第２の部分を構成する。ちなみに、第１の部分を含むセンシング画像の部分を「包含部分」と称する。
【００２８】
本実施の形態において、テンプレート画像の全領域は、６４箇所の部分領域に区分される。指紋の画像全体が、これらの部分領域に覆われている。各部分領域の大きさは、センシング画像における各部分領域の大きさと同じである。これらの部分領域には、それぞれＧ（１）〜Ｇ（６４）といった識別番号が付されている。図３は、これらの部分領域の画像Ｂにおける配置を表わす図である。第１領域１０２４は、部分領域Ｇ（１）〜Ｇ（６４）の位置情報を記憶する。
【００２９】
処理部１０３は、補正部１０３１と、探索部１０３２と、計算部１０３３と、判定部１０３４と、制御部１０３５とを含む。補正部１０３１は、入力部１０１から入力された画像データの濃淡などを補正する。探索部１０３２は、センシング画像の複数の部分領域につき、テンプレート画像のうちで最も一致度の高い位置を探索する。計算部１０３３は、探索部１０３２による探索の結果を表わす情報を用いて、後述の移動ベクトルに基づく類似度を計算する。「探索の結果を表わす情報」は、参照ブロック１０２１が記憶する情報である。計算部１０３３は、後述の特徴情報を判定するための値などを算出する回路でもある。判定部１０３４は、計算部１０３３が算出した類似度により、指紋を照合した結果が「一致」、「不一致」、および「何れとも言えない」のいずれに該当するかなどを判定する。制御部１０３５は、処理部１０３の各部の処理を制御する。
【００３０】
この画像照合装置１００は、図４に示すコンピュータハードウェアとＣＰＵ（Central Processing Unit）６２２により実行されるソフトウェアとにより実現される。図４を参照して、上述のコンピュータハードウェアは、入力部１０１と、液晶からなるディスプレイ６１０と（ディスプレイ６１０は、ＣＲＴ（Cathode-Ray Tube）からなるディスプレイであってもよい。しかし本実施の形態では、ディスプレイ６１０は液晶からなることとする）、コンピュータハードウェア自体を集中的に管理し、かつ制御するＣＰＵ６２２と、ＲＯＭ（Read Only Memory）またはＲＡＭ（Random Access Memory）を含んで構成されるメモリ６２４と、固定ディスク６２６と、ＦＤ（Flexible Disk）６３２が着脱自在に装着されて、装着されたＦＤ６３２にアクセスするＦＤ駆動装置６３０と、ＣＤ−ＲＯＭ（Compact Disk Read Only Memory）６４２が着脱自在に装着されて、装着されたＣＤ−ＲＯＭ６４２にアクセスするＣＤ−ＲＯＭ駆動装置６４０と、通信ネットワークとコンピュータハードウェアとを接続し、かつ通信するための通信インターフェイス６８０と、キーによる入力を受付けるキーボード６５０と、いわゆるクリックアンドドラッグにより入力を受付けるマウス６６０とを含む。これらの各部はバスを介して通信・接続される。コンピュータハードウェアには、カセット形式の磁気テープを着脱自在に装着してアクセスする磁気テープ装置が設けられてもよい。ただし本実施の形態では、そのような装置は設けられていないこととする。一般的にこうしたソフトウェアは、ＦＤ６３２やＣＤ−ＲＯＭ６４２などの記録媒体に格納されて流通し、ＦＤ駆動装置６３０やＣＤ−ＲＯＭ駆動装置６４０などにより記録媒体から読取られて固定ディスク６２６に一旦格納される。さらにメモリ６２４に読出されて、上述したＣＰＵ６２２により実行される。上述したコンピュータのハードウェア自体は一般的なものである。したがって、本発明の最も本質的な部分は、ＦＤ６３２やＣＤ−ＲＯＭ６４２などの記録媒体に記録されたソフトウェアである。
【００３１】
図５を参照して、画像照合装置１００で実行されるプログラムは、指紋の照合に関して、以下のような制御を実行する。
【００３２】
ステップ２００（以下、ステップをＳと略す）にて、制御部１０３５は、入力部１０１へ画像の入力を開始する旨の信号を送る。その後、制御部１０３５は、画像の入力が終了した旨の信号を受信するまで待機する。入力部１０１は、センシング画像の入力を受付け、バス１０５を通して記憶部１０２の画像ブロック１０２３へ出力する。参照ブロック１０２１は、センシング画像の画像データを格納する。入力部１０１は、センシング画像の入力が完了した後、制御部１０３５に画像の入力が完了した旨の信号を送る。画像の入力が完了した旨の信号が送信されると、制御部１０３５は、再度、入力部１０１へ画像の入力を開始する旨の信号を送る。その後、制御部１０３５は、再度、画像の入力が完了した旨の信号を受信するまで待機する。入力部１０１は、テンプレート画像の入力を受付け、バス１０５を通して記憶部１０２の画像ブロック１０２３へ出力する。画像ブロック１０２３は、テンプレート画像の画像データを格納する。入力部１０１は、テンプレート画像の入力が完了した後、制御部１０３５に画像の入力が完了した旨の信号を送る。
【００３３】
Ｓ２０２にて、制御部１０３５は、補正部１０３１に画像の補正を開始する旨の信号を送る。その後、制御部１０３５は、画像の補正が終了した旨の信号を受信するまで待機する。多くの場合、入力部１０１が受付けた画像は、各画素の濃淡値や全体の濃度分布に、入力部１０１の特性や、指紋自体の乾燥度合いや、指を押し付ける圧力の影響を受けている。これにより、入力部１０１が受付けた画像の画質は一様ではない。画質が一様ではないので、受付けた画像データをそのまま照合に用いることは適当でない。補正部１０３１は、画像が入力された時の条件の変動を抑制するように、入力された画像の画質を補正する。具体的には、入力された画像の、全体もしくは部分領域に、ヒストグラムの平坦化処理や画像の二値化処理などを施す。補正部１０３１は、センシング画像およびテンプレート画像の双方に、これらの処理を施す。センシング画像およびテンプレート画像に対するこれらの処理の終了後、補正部１０３１は、制御部１０３５に画像の補正が終了した旨の信号を送る。なお、ヒストグラムの平坦化とは、次のステップにより実現される処理である。その第１のステップは、画像の各画素を、濃度を表わす値（濃度値）別に分類するステップである。第２のステップは、同じ濃度値である画素数を数えるステップである。第３のステップは、濃度値が同じ画素の数が等しくなるように、各画素の濃度値を変更するステップである。どの座標にある画素の濃度値を変更するかを決定する方法には、任意の画素を抽出する方法と、隣接する画素の濃度値を参照する方法とがある。本実施の形態では、任意の画素を抽出する方法でどの座標にある画素の濃度値を変更するかを決定する。その理由は、アルゴリズムの作成が容易であるという点にある。また、画像の二値化処理とは、画素の濃度値が後述する方法で定められた閾値以上か否かに応じて、濃度値を最大値または最小値に変更する処理をいう。閾値の定め方には、いわゆるｐ−タイル法、モード法、微分ヒストグラム法、判別分析法、および可変閾値法などがある。本実施の形態では、モード法により閾値を定める。モード法とは、次のステップにより閾値を定める方法である。その第１のステップは、濃度値別の画素数をヒストグラム化するステップである。第２のステップは、濃度値別の画素数の推移が減少から増加に転じる濃度値、すなわちヒストグラムの谷を検出し、閾値とするステップである。
【００３４】
Ｓ２０３にて、制御部１０３５は、特徴情報を特定する。「特徴情報」とは、部分領域での同色の画素の配列に対応する情報である。特徴情報を特定する処理は、図７に示すＳ２１０〜Ｓ２２６の処理を部分領域Ｒ（１）からＲ（２５）まで繰返す処理である。図６を参照して、特徴情報について説明する。図６は、ある部分領域における各画素の状態を表わす図である。本実施の形態に係る部分領域は、１６×１６の画素で構成されている。「１６×１６」は、水平方向の画素数と垂直方向の画素数とがいずれも「１６」であることを意味する。本実施の形態の場合、特徴情報は次の手順を経て特定される。第１の手順は、黒く塗潰された画素が水平方向に連続する数の最大値ＭＡＸＨＬＥＮを算出する手順である。最大値ＭＡＸＨＬＥＮは、水平方向に従う模様（たとえば横縞）である程度を示す値である。第２の手順は、黒く塗潰された画素が垂直方向に連続する数の最大値ＭＡＸＶＬＥＮを算出する手順である。最大値ＭＡＸＶＬＥＮは、垂直方向に従う模様（たとえば縦縞）である程度を示す値である。第３の手順は、最大値ＭＡＸＨＬＥＮと最大値ＭＡＸＶＬＥＮとのうち、どちらが大きいかを判定する手順である。最大値ＭＡＸＨＬＥＮが大きければ、特徴情報は水平（横縞）を意味する値“Ｈ”と判定される。最大値ＭＡＸＶＬＥＮが大きければ、特徴情報は垂直（縦縞）を意味する値“Ｖ”と判定される。本実施の形態の場合、実際には、最大値ＭＡＸＶＬＥＮが大きければ、後述する処理に基づき、特徴情報は右上がりの縦縞を意味する値”Ｒ”あるいは左上がりの縦縞を意味する値”Ｌ”のいずれかと判定される。その他の場合には特徴情報は“Ｘ”と判定される。ただし、最大値ＭＡＸＨＬＥＮと最大値ＭＡＸＶＬＥＮとがいずれも下限値以上でなければ、特徴情報は“Ｘ”と判定される。本実施の形態の場合、水平方向の下限値は”ＨＬＥＮ（０）”で表わされる。垂直方向の下限値は”ＶＬＥＮ（０）”で表わされる。下限値は予め設定されている。数式を用いてこれらを表現すると、次の通りとなる。
【００３５】
ＭＡＸＨＬＥＮ＞ＭＡＸＶＬＥＮかつＭＡＸＨＬＥＮ≧ＨＬＥＮ（０）ならば、判定は“Ｈ”
ＭＡＸＶＬＥＮ＞ＭＡＸＨＬＥＮかつＭＡＸＶＬＥＮ≧ＶＬＥＮ（０）ならば、判定は“Ｖ”
その他ならば、判定は“Ｘ”
Ｓ２０４にて、制御部１０３５は、特徴情報を書換える。この処理は、図１０に示すＳ３００〜Ｓ３０４の処理に該当する。
【００３６】
Ｓ２０５にて、処理部１０３は、センシング画像およびテンプレート画像に対し、類似度の計算および照合の判定とを実施する。この処理は、図１１に示すＳ３１０〜Ｓ３３４の処理に該当する。
【００３７】
Ｓ２０６にて、制御部１０３５は、照合の結果を表わす情報を、出力部１０４に出力する。照合の結果を表わす情報は、参照ブロック１０２１に記憶されている。出力部１０４は、制御部１０３５が出力した情報を出力する。
【００３８】
図７を参照して、画像照合装置１００で実行されるプログラムは、特徴情報の特定に関して、以下のような制御を実行する。
【００３９】
Ｓ２１０にて、制御部１０３５は、計算部１０３３に判定の開始を命じる信号を送信する。信号が送信されると、制御部１０３５は、判定が終了したことを表わす信号を受信するまで待機する。計算部１０３３は、判定の対象となった部分領域Ｒ（Ｉ）を画像ブロック１０２３から読出し、計算ブロック１０２２に一旦格納する。部分領域Ｒ（Ｉ）の格納は、変数ＰＩＸＥＬ（Ｘ，Ｙ）に色を表わす値を代入することにより実現される。変数ＰＩＸＥＬ（Ｘ，Ｙ）に代入される「色を表わす値」とは、部分領域Ｒ（Ｉ）を構成する各画素の色を表わす値のことである。本実施の形態の場合、画素の色が白であれば、変数ＰＩＸＥＬ（Ｘ，Ｙ）には「０」が代入される。画素の色が黒であれば、変数ＰＩＸＥＬ（Ｘ，Ｙ）には「１」が代入される。変数ＰＩＸＥＬ（Ｘ，Ｙ）への値の代入は、計算ブロック１０２２の所定の領域に値を格納することで実現される。
【００４０】
Ｓ２１２にて、計算部１０３３は、計算ブロック１０２２に格納された部分領域Ｒ（Ｉ）を読出す。部分領域Ｒ（Ｉ）が読出されると、計算部１０３３は、上述した最大値ＭＡＸＨＬＥＮを算出する。この処理は、図８に示すＳ２３０〜Ｓ２６０の処理に該当する。
【００４１】
Ｓ２１４にて、計算部１０３３は、計算ブロック１０２２に格納された部分領域Ｒ（Ｉ）を読出す。部分領域Ｒ（Ｉ）が読出されると、計算部１０３３は、上述した最大値ＭＡＸＶＬＥＮを算出する。この処理は、図９に示すＳ２７０〜Ｓ２８８の処理に該当する。
【００４２】
Ｓ２１６にて、計算部１０３３は、ＭＡＸＨＬＥＮ＞ＭＡＸＶＬＥＮかつＭＡＸＨＬＥＮ≧ＨＬＥＮ（０）か否かを判断する。ＭＡＸＨＬＥＮ＞ＭＡＸＶＬＥＮかつＭＡＸＨＬＥＮ≧ＨＬＥＮ（０）と判断した場合には（Ｓ２１６にてＹＥＳ）、処理はＳ２１８へと移される。もしそうでないと（Ｓ２１６にてＮＯ）、処理はＳ２２０へと移される。
【００４３】
Ｓ２１８にて、計算部１０３３は、第１領域１０２４あるいは第２領域１０２５に含まれた、部分領域Ｒ（Ｉ）の特徴情報を格納する領域に“Ｈ”を格納する。特徴情報が格納されると、計算部１０３３は、制御部１０３５に判定が終了したことを表わす信号を送信する。
【００４４】
Ｓ２２０にて、計算部１０３３は、ＭＡＸＶＬＥＮ＞ＭＡＸＨＬＥＮかつＭＡＸＶＬＥＮ≧ＶＬＥＮ（０）か否かを判断する。ＭＡＸＶＬＥＮ＞ＭＡＸＨＬＥＮかつＭＡＸＶＬＥＮ≧ＶＬＥＮ（０）と判断した場合には（Ｓ２２０にてＹＥＳ）、処理はＳ２２１へと移される。もしそうでないと（Ｓ２２０にてＮＯ）、処理はＳ２２６へと移される。
【００４５】
Ｓ２２１にて、計算部１０３３は、論理積の総和ＡＳを算出する。論理積の総和ＡＳは、Ｋ＝０の場合からＫ＝ＬＩＭの場合までのＰＩＸＥＬ（Ｋ，Ｋ）とＰＩＸＥＬ（ＬＩＭ−Ｋ，ＬＩＭ−Ｋ）との論理積をすべて加算した値である。ただし、ＬＩＭは変数Ｋの最大値である。本実施の形態の場合ＬＩＭ＝１５となる。
【００４６】
Ｓ２２２にて、判定部１０３４は、論理積の総和ＡＳが閾値ＴＦ以上か否かを判断する。論理積の総和ＡＳが閾値ＴＦ以上と判断した場合には（Ｓ２２２にてＹＥＳ）、処理はＳ２２３へと移される。もしそうでないと（Ｓ２２２にてＮＯ）、処理はＳ２２４へと移される。
【００４７】
Ｓ２２３にて、計算部１０３３は、第１領域１０２４あるいは第２領域１０２５に含まれた、部分領域Ｒ（Ｉ）の特徴情報を格納する領域に“Ｌ”を格納する。特徴情報が格納されると、計算部１０３３は、制御部１０３５に判定が終了したことを表わす信号を送信する。
【００４８】
Ｓ２２４にて、計算部１０３３は、第１領域１０２４あるいは第２領域１０２５に含まれた、部分領域Ｒ（Ｉ）の特徴情報を格納する領域に“Ｒ”を格納する。特徴情報が格納されると、計算部１０３３は、制御部１０３５に判定が終了したことを表わす信号を送信する。
【００４９】
Ｓ２２６にて、計算部１０３３は、第１領域１０２４あるいは第２領域１０２５に含まれた、部分領域Ｒ（Ｉ）の特徴情報を格納する領域に“Ｘ”を格納する。特徴情報が格納されると、計算部１０３３は、制御部１０３５に判定が終了したことを表わす信号を送信する。
【００５０】
図８を参照して、画像照合装置１００で実行されるプログラムは、最大値ＭＡＸＨＬＥＮの算出に関して、以下のような制御を実行する。
【００５１】
Ｓ２３０にて、計算部１０３３は、最大値ＭＡＸＨＬＥＮとカウンタ変数Ｊとを初期化する。これにより、ＭＡＸＨＬＥＮ＝０、Ｊ＝０となる。
【００５２】
Ｓ２３２にて、計算部１０３３は、Ｊ＞Ｍか否かを判断する。定数Ｍは、部分領域を構成する画素それぞれの、水平方向の配置を表わす数の最大値あるいは垂直方向の配置を表わす数の最大値である。本実施の形態の場合、水平方向の配置を表わす数の最大値と垂直方向の配置を表わす数の最大値とが一致しているため、水平方向の配置を表わす数の最大値と垂直方向の配置を表わす数の最大値とが同じ変数により表わされている。Ｊ＞Ｍと判断した場合には（Ｓ２３２にてＹＥＳ）、処理はＳ２３４へと移される。もしそうでないと（Ｓ２３２にてＮＯ）、処理はＳ２３６へと移される。
【００５３】
Ｓ２３４にて、計算部１０３３は、計算ブロック１０２２に、最大値ＭＡＸＨＬＥＮが表わす値を出力する。
【００５４】
Ｓ２３６にて、計算部１０３３は、カウンタ変数Ｉと、画素の色を表わす変数Ｃと、互いに隣合いかつ同じ色である画素の数ＬＥＮと、ある行またはある列において隣り合いかつ同じ色である画素の数の最大値ＭＡＸとを初期化する。これにより、Ｉ＝０、Ｃ＝０、ＬＥＮ＝０、ＭＡＸ＝０となる。
【００５５】
Ｓ２３８にて、計算部１０３３は、Ｉ＞Ｍか否かを判断する。Ｉ＞Ｍと判断した場合には（Ｓ２３８にてＹＥＳ）、処理はＳ２４０へと移される。もしそうでないと（Ｓ２３８にてＮＯ）、処理はＳ２５０へと移される。
【００５６】
Ｓ２４０にて、計算部１０３３は、ＭＡＸ＜ＬＥＮか否かを判断する。ＭＡＸ＜ＬＥＮと判断した場合には（Ｓ２４０にてＹＥＳ）、処理はＳ２４２へと移される。もしそうでないと（Ｓ２４０にてＮＯ）、処理はＳ２４４へと移される。Ｓ２４２にて、計算部１０３３は、最大値ＭＡＸに画素の数ＬＥＮの値を代入する。
【００５７】
Ｓ２４４にて、計算部１０３３は、ＭＡＸＨＬＥＮ＜ＭＡＸか否かを判断する。ＭＡＸＨＬＥＮ＜ＭＡＸと判断した場合には（Ｓ２４４にてＹＥＳ）、処理はＳ２４６へと移される。もしそうでないと（Ｓ２４４にてＮＯ）、処理はＳ２４８へと移される。Ｓ２４６にて、計算部１０３３は、最大値ＭＡＸＨＬＥＮに最大値ＭＡＸの値を代入する。Ｓ２４８にて、計算部１０３３は、カウンタ変数Ｊの値を「１」増加させる。
【００５８】
Ｓ２５０にて、計算部１０３３は、Ｃ＝１かつＣ＝ＰＩＸＥＬ（Ｉ，Ｊ)か否かを判断する。変数Ｃは画素の色を表わす。変数ＰＩＸＥＬ（Ｉ，Ｊ）は座標（Ｉ，Ｊ)の画素の色を表わす。Ｃ＝１かつＣ＝ＰＩＸＥＬ（Ｉ，Ｊ)と判断した場合には（Ｓ２５０にてＹＥＳ）、処理はＳ２５２へと移される。もしそうでないと（Ｓ２５０にてＮＯ）、処理はＳ２５４へと移される。Ｓ２５２にて、計算部１０３３は、画素の数ＬＥＮの値を「１」増加させる。
【００５９】
Ｓ２５４にて、計算部１０３３は、Ｃ＝１かつＭＡＸ＜ＬＥＮか否かを判断する。Ｃ＝１かつＭＡＸ＜ＬＥＮと判断した場合には（Ｓ２５４にてＹＥＳ）、処理はＳ２５６へと移される。もしそうでないと（Ｓ２５４にてＮＯ）、処理はＳ２５８へと移される。Ｓ２５６にて、計算部１０３３は、最大値ＭＡＸに画素の数ＬＥＮの値を代入する。Ｓ２５８にて、計算部１０３３は、画素の数ＬＥＮに変数ＰＩＸＥＬ（Ｉ，Ｊ）の値を代入する。併せて、計算部１０３３は、変数Ｃに変数ＰＩＸＥＬ（Ｉ，Ｊ)の値を代入する。Ｓ２６０にて、計算部１０３３は、カウンタ変数Ｉの値を「１」増加させる。
【００６０】
図９を参照して、画像照合装置１００で実行されるプログラムは、最大値ＭＡＸＶＬＥＮの算出に関して、以下のような制御を実行する。なお、図９に示すフローチャートの中で、前述の図８に示した処理は同じステップ番号を付してある。それらの処理も同じである。したがって、それらについての詳細な説明はここでは繰返さない。
【００６１】
Ｓ２７０にて、計算部１０３３は、最大値ＭＡＸＶＬＥＮとカウンタ変数Ｉとを初期化する。これにより、ＭＡＸＶＬＥＮ＝０、Ｉ＝０となる。
【００６２】
Ｓ２７２にて、計算部１０３３は、Ｉ＞Ｍか否かを判断する。Ｉ＞Ｍと判断した場合には（Ｓ２７２にてＹＥＳ）、処理はＳ２７４へと移される。もしそうでないと（Ｓ２７２にてＮＯ）、処理はＳ２７６へと移される。Ｓ２７４にて、計算部１０３３は、計算ブロック１０２２に、最大値ＭＡＸＶＬＥＮが表わす値を出力する。
【００６３】
Ｓ２７６にて、計算部１０３３は、カウンタ変数Ｊと、画素の色を表わす変数Ｃと、隣合いかつ同じ色である画素の数ＬＥＮと、ある行またはある列において隣り合いかつ同じ色である画素の数の最大値ＭＡＸとを初期化する。これにより、Ｊ＝０、Ｃ＝０、ＬＥＮ＝０、ＭＡＸ＝０となる。
【００６４】
Ｓ２７８にて、計算部１０３３は、Ｊ＞Ｍか否かを判断する。Ｊ＞Ｍと判断した場合には（Ｓ２７８にてＹＥＳ）、処理はＳ２８０へと移される。もしそうでないと（Ｓ２７８にてＮＯ）、処理はＳ２５０へと移される。
【００６５】
Ｓ２８０にて、計算部１０３３は、ＭＡＸ＜ＬＥＮか否かを判断する。ＭＡＸ＜ＬＥＮと判断した場合には（Ｓ２８０にてＹＥＳ）、処理はＳ２４２へと移される。もしそうでないと（Ｓ２８０にてＮＯ）、処理はＳ２８２へと移される。
【００６６】
Ｓ２８２にて、計算部１０３３は、ＭＡＸＶＬＥＮ＜ＭＡＸか否かを判断する。ＭＡＸＶＬＥＮ＜ＭＡＸと判断した場合には（Ｓ２８２にてＹＥＳ）、処理はＳ２８４へと移される。もしそうでないと（Ｓ２８２にてＮＯ）、処理はＳ２８６へと移される。Ｓ２８４にて、計算部１０３３は、最大値ＭＡＸＶＬＥＮに最大値ＭＡＸの値を代入する。Ｓ２８６にて、計算部１０３３は、カウンタ変数Ｉの値を「１」増加させる。Ｓ２８８にて、計算部１０３３は、カウンタ変数Ｊの値を「１」増加させる。
【００６７】
図１０を参照して、画像照合装置１００で実行されるプログラムは、特徴情報の書換えに関して、以下のような制御を実行する。
【００６８】
Ｓ３００にて、制御部１０３５は、部分領域Ｒ（Ｉ）の特徴情報を格納する領域から、部分領域Ｒ（Ｉ）の特徴情報を読出す。部分領域Ｒ（Ｉ）の特徴情報を格納する領域は、第１領域１０２４の一部あるいは第２領域１０２５の一部である。
【００６９】
Ｓ３０２にて、制御部１０３５は、部分領域Ｒ（Ｉ）を照合の対象外とするか否かを判定する。本実施の形態において、「照合」とは部分領域がテンプレート画像のいずれかの部分に一致する可能性があるか否かの判断のことである。本実施の形態の場合、制御部１０３５は、特徴情報が“Ｘ”あるいは“Ｅ”(“Ｅ”の意味については後述する）である部分領域であって隣接する部分領域も特徴情報が“Ｘ”あるいは“Ｅ”である領域Ｒ（Ｉ）を照合の対象外と判定する。これにより、制御部１０３５は、予め定めた情報を特徴情報とする領域のいずれかを除外領域として検出することとなる。本実施の形態において、センシング画像の部分である部分領域のうち、照合の対象外となる領域を「除外領域」と称する。照合の対象外とするか否かの判定のため、制御部１０３５は、部分領域Ｒ（Ｉ）の特徴情報を、Ｒ（１）から順にＲ（２）、Ｒ（３）、…と参照していく。特徴情報が“Ｘ”あるいは“Ｅ”であるならば（特徴情報が“Ｘ”あるいは“Ｅ”である部分領域を、Ｓ３００〜Ｓ３０４においては「判定の対象となる部分領域」と称する）、制御部１０３５は、判定の対象となる部分領域の上、下、左、右、右上、右下、左上、および左下に配置される部分領域（そのような部分領域を、Ｓ３００〜Ｓ３０４においては「隣接する部分領域」と称する）の特徴情報を参照する。隣接する部分領域の特徴情報が“Ｘ”あるいは“Ｅ”ならば、制御部１０３５は、判定の対象となる部分領域を、除外領域と判定する。
【００７０】
Ｓ３０４にて、制御部１０３５は、判定の対象となる部分領域Ｒ（Ｉ）の特徴情報“Ｘ”を“Ｅ”に書換える。特徴情報を書換えるため、制御部１０３５は、部分領域Ｒ（Ｉ）の特徴情報を格納する領域に“Ｅ”を上書き保存する。Ｓ３０４の処理から明らかなように、特徴情報が“Ｅ”である部分領域とは、Ｓ２２６の処理により特徴情報が“Ｘ”と判定された部分領域およびそのような部分領域に隣接する部分領域のことである。
【００７１】
図１１を参照して、画像照合装置１００で実行されるプログラムは、類似度の計算および照合の判定に関して、以下の制御を実行する。
【００７２】
Ｓ３１０にて、制御部１０３５は、判定部１０３４に照合の判定を開始する旨の信号を送る。信号が送信されると、制御部１０３５は、照合の判定が終了した旨の信号を受信するまで待機する。判定部１０３４は、マッチング（類似度の計算および照合の判定）を行なう部分領域を、図２の中心領域すなわち部分領域Ｒ（１）〜Ｒ（９）に設定する。より具体的に説明すると、判定部１０３４は、部分領域のインデックスの最小値ＩＭＩＮを「１」に設定する。なお、本実施の形態において、「インデックス」とは部分領域Ｒ（Ｉ）の添字Ｉのことである。最小値ＩＭＩＮが設定されると、判定部１０３４は、部分領域のインデックスの最大値ＩＭＡＸを「９」に設定する。このステップでマッチングを行なう部分領域を設定する場合、その領域は、指の先端よりも指の第１関節に近い部分を含む必要がある。特に、指紋が描く弧の中心を含むように設定することが重要である。その理由は、これらの部分を部分領域として設定すると、指紋が不一致か否かを容易に判断できる点にある。容易に判断できる理由は、経験則として、これらの部分に個人差が大きいと言える点にある。ちなみに、本実施の形態において、部分領域Ｒ（１）〜Ｒ（９）全体の面積は、センシング画像における指の投影面積の約３０パーセントである。このように定められている理由は、経験則上、部分領域Ｒ（１）〜Ｒ（９）全体の面積が、センシング画像における指の投影面積の２５パーセントから４０パーセントまでの面積であることが望ましい点にある。
【００７３】
Ｓ３１２にて、判定部１０３４は、部分領域Ｒ（Ｉ）の特徴情報を格納する領域から特徴情報を読出す。特徴情報が読出される部分領域は、部分領域Ｒ（１）から部分領域Ｒ（９）までの部分領域である。
【００７４】
Ｓ３１４にて、判定部１０３４は、Ｓ３１２にて読出した特徴情報の中に“Ｅ”が存在するか否かを判断する。本実施の形態の場合、特徴情報が”Ｅ”である部分領域は、除外領域である。“Ｅ”が存在すると判断した場合には（Ｓ３１４にてＹＥＳ）、処理はＳ３１６へと移される。もしそうでないと（Ｓ３１４にてＮＯ）、処理はＳ３２４へと移される。
【００７５】
Ｓ３１６にて、探索部１０３２などは、判定部１０３４が設定した部分領域について、マッチングと類似度の計算とを実施する。この処理は、図１２に示すＳ３４０〜Ｓ３８０の処理に該当する。
【００７６】
Ｓ３１８にて、判定部１０３４は、記憶部１０２の所定のアドレスに格納された類似度の最大値Ｐ（Ａ，Ｂ）が、予め定められた閾値Ｔ（０）以上か否かを判断する。閾値Ｔ（０）以上と判断した場合（Ｓ３１８にてＹＥＳ）、処理はＳ３２０へと移される。もしそうでないと（Ｓ３１８にてＮＯ）、処理はＳ３２２へと移される。これにより、第１の部分の部分領域が除外領域を含む場合、判定部１０３４は、類似度に基づいて、除外領域以外の部分領域がテンプレート画像に一致する可能性があるか否かを判断することとなる。
【００７７】
Ｓ３２０にて、判定部１０３４は、参照ブロック１０２１に「一致」である旨の情報（たとえば「１」という値）を出力する。Ｓ３２２にて、判定部１０３４は、参照ブロック１０２１に「不一致」である旨の情報（たとえば「０」という値）を出力する。
【００７８】
Ｓ３２４にて、探索部１０３２などは、判定部１０３４が設定した部分領域について、マッチングと類似度の計算とを実施する。この処理は、図１３に示すＳ３４２〜Ｓ３８０の処理とＳ４００〜Ｓ４１０の処理とに該当する。
【００７９】
Ｓ３２６にて、計算部１０３３は類似度の最大値Ｐ（Ａ、Ｂ）の値をメモリ１０２の所定アドレスに格納する。値が格納されると、計算部１０３３は、類似度の計算が終了した旨の信号を制御部１０３５へ送信する。判定部１０３４は、類似度の最大値Ｐ（Ａ，Ｂ）が閾値Ｔ（２）未満か否かを判断する。閾値Ｔ（２）未満と判断した場合（Ｓ３２６にてＹＥＳ）、処理はＳ３２２へと移される。もしそうでないと（Ｓ３２６にてＮＯ）、処理はＳ３２８へと移される。この処理により、判定部１０３４は、第１の部分の部分領域がいずれも対象領域である場合、第１の部分とテンプレート画像のいずれかの部分とが一致する可能性があるか否かを判断することとなる。
【００８０】
Ｓ３２８にて、判定部１０３４は、類似度の最大値Ｐ（Ａ，Ｂ）が、閾値Ｔ（２）を上回る、閾値Ｔ（１）以上か否かを判断する。閾値Ｔ（１）以上と判断した場合（Ｓ３２８にてＹＥＳ）、処理はＳ３２０へと移される。もしそうでないと（Ｓ３２８にてＮＯ）、処理はＳ３３０へと移される。これにより、判定部１０３４は、類似度に基づいて、対象領域がテンプレート画像のいずれかの部分に一致する可能性があるか否かを判断することとなる。
【００８１】
Ｓ３３０にて、判定部１０３４は、マッチングを行なう部分領域を、図２の周辺の領域すなわち部分領域Ｒ（１０）〜Ｒ（２５）に設定する。より具体的に説明すると、判定部１０３４は、部分領域のインデックスの最小値ＩＭＩＮを「１０」に設定する。さらに、判定部１０３４は、部分領域のインデックスの最大値ＩＭＡＸを「２５」に設定する。
【００８２】
Ｓ３３２にて、探索部１０３２などは、判定部１０３４が設定した部分領域について、マッチングと類似度の計算とを実施する。この処理は、図１３に示すＳ３４２〜Ｓ３８０の処理とＳ４００〜Ｓ４１０の処理とに該当する。
【００８３】
Ｓ３３４にて、判定部１０３４は、類似度の最大値Ｐ（Ａ，Ｂ）が閾値Ｔ（１）以上か否かを判断する。閾値Ｔ（１）以上と判断した場合（Ｓ３３４にてＹＥＳ）、処理はＳ３２０へと移される。もしそうでないと（Ｓ３３４にてＮＯ）、処理はＳ３２２へと移される。これにより、判定部１０３４は、第１の部分とテンプレート画像のいずれかの部分とが一致する可能性がある場合に、センシング画像のうち除外領域以外の部分領域がテンプレート画像のいずれかの部分に一致するか否かを判断することとなる。第１の部分がテンプレート画像のいずれかの部分と一致するか否かについてはＳ３２４〜Ｓ３２８の処理により判断されているためである。
【００８４】
図１２を参照して、画像照合装置１００で実行されるプログラムは、マッチングと類似度の計算とに関して、以下の制御を実行する。
【００８５】
Ｓ３４０にて、制御部１０３５は、探索部１０３２へ、マッチングを開始する旨の信号を送る。その後制御部１０３５は、マッチングが終了した旨の信号を受信するまで待機する。探索部１０３２は、カウンタ変数Ｉの値を「１」とする。
【００８６】
Ｓ３４２にて、探索部１０３２は、センシング画像における部分領域Ｒ（Ｉ）の画像を参照ブロック１０２１に複写する。部分領域Ｒ（Ｉ）の形状は特に特定されない。ただし、本実施の形態の場合、部分領域Ｒ（Ｉ）は、矩形状とする。簡単に計算できることがその理由である。しかも、本実施の形態における部分領域Ｒ（Ｉ）は、部分領域Ｒ（Ｉ）を横切りかつ隆線（指紋を描いている線）に直交する線の長さが、隆線の幅と隆線溝（隆線同士の間にある溝）の幅との和の２倍以上３倍以下の長さであるような領域である。その理由は、このように部分領域の形状を設定すると、精度よく指紋を照合できることが経験則上明らかな点にある。このように部分領域の形状を設定する場合、部分領域の大きさの根拠となる値は、予め測定した隆線の幅や隆線溝の幅の平均値である。
【００８７】
Ｓ３４４にて、探索部１０３２は、部分領域Ｒ（Ｉ）の特徴情報ＣＲ（Ｉ）を記憶部１０２から読出す。変数Ｉの値が「１」〜「９」である場合、特徴情報ＣＲ（Ｉ）は、第１領域１０２４から読出される。変数Ｉの値がそれ以外の値である場合、特徴情報ＣＲ（Ｉ）は、第２領域１０２５から読出される。
【００８８】
Ｓ３４６にて、探索部１０３２は、Ｓ３４２で複写した画像に対し、画像内で最も一致度の高い場所を探索する。画像内で最も一致度の高い場所は画像内のデータが最も一致する場所でもあるからである。探索は、部分領域のうち特徴情報ＣＲ（Ｉ）が“Ｅ”でない部分について実施される。探索部１０３２は、一致度Ｃ（Ｉ，Ｓ，Ｔ）を計算する。「一致度」とは、センシング画像のうち除外領域以外の部分領域とテンプレート画像のいずれかの部分とが一致する可能性を表わす値のことである。一致度Ｃ（Ｉ，Ｓ，Ｔ）が計算されると、探索部１０３２は、一致度Ｃ（Ｉ，Ｓ，Ｔ）の値を、カウンタ変数Ｉ、およびテンプレート画像の座標（Ｓ，Ｔ）に対応付けた上で、参照ブロック１０２１に格納する。一致度Ｃ（Ｉ，Ｓ，Ｔ）の計算には、次の式が用いられる。
【００８９】
【数１】
2007094689.tif 000003
【００９０】
ただし、Ｒ（Ｉ，Ｘ，Ｙ）は、部分領域Ｒ（Ｉ）上の座標（Ｘ，Ｙ）における画素の濃度の値を表わす。Ｂ（Ｓ＋Ｘ,Ｔ＋Ｙ）は、テンプレート画像の座標（Ｓ＋Ｘ,Ｔ＋Ｙ）における画素の濃度の値を表わす。座標（Ｓ＋Ｘ,Ｔ＋Ｙ）がテンプレート画像の座標の最大値を超えた場合、Ｂ（Ｓ＋Ｘ,Ｔ＋Ｙ）の値は「０」となる。Ｗは部分領域Ｒ（Ｉ）の幅を表わす。Ｈは部分領域Ｒ（Ｉ）の高さを表わす。Ｖ（０）は、センシング画像およびテンプレート画像の、各画素が取りうる最大の濃度値を表わす。上述したように、一致度Ｃ（Ｉ，Ｓ，Ｔ）は、テンプレート画像のうち、座標（Ｓ，Ｔ）を基準とし、かつ幅がＷで高さがＨの領域と、部分領域Ｒ（Ｉ）とが、一致する可能性を表わす。部分領域Ｒ（Ｉ）のうち、一致度Ｃ（Ｉ，Ｓ，Ｔ）の値が最も大きくなる領域が部分領域Ｍ（Ｉ）である。なお、本実施の形態において、部分領域Ｒ（Ｉ）の座標およびテンプレート画像の座標は、いずれも左上の頂点を基準とする。
【００９１】
Ｓ３４８にて、探索部１０３２は、Ｓ３４６にて算出された一致度Ｃ（Ｉ，Ｓ，Ｔ）の最大値ＣＩＭＡＸを記憶部１０２に記憶させる。Ｓ３４６では、同一の部分領域Ｒ（Ｉ）に対し画像Ｂの座標（Ｓ，Ｔ）ごとに一致度Ｃ（Ｉ，Ｓ，Ｔ）が算出される。画像Ｂの座標（Ｓ，Ｔ）ごとに一致度Ｃ（Ｉ，Ｓ，Ｔ）が算出されるので、探索部１０３２は、算出されたすべての一致度Ｃ（Ｉ，Ｓ，Ｔ）の中から最大値ＣＩＭＡＸを特定できる。変数Ｉの値が「１」〜「９」である場合、最大値ＣＩＭＡＸは、第１領域１０２４に記憶される。変数Ｉの値がそれ以外の値である場合、最大値ＣＩＭＡＸは、第２領域１０２５に記憶される。
【００９２】
Ｓ３５０にて、探索部１０３２は、移動ベクトルＶ（Ｉ）を算出する。移動ベクトルＶ（Ｉ）が算出されると、探索部１０３２は、移動ベクトルＶ（Ｉ）を、記憶部１０２に記憶させる。「Ｉ」の値が「１」〜「９」である場合、移動ベクトルＶ（Ｉ）は、第１領域１０２４に記憶される。「Ｉ」の値が「１」〜「９」以外の値である場合、移動ベクトルＶ（Ｉ）は、第２領域１０２５に記憶される。式（２）から明らかなように、「移動ベクトル」とは、センシング画像の左上の頂点とテンプレート画像の左上の頂点とを重ね合わせた場合の、部分領域Ｒ（Ｉ）の左上の頂点から、テンプレート画像内で最も一致する領域（部分領域Ｍ（Ｉ））の左上の頂点への、方向ベクトルを言う。一般に、移動ベクトルＶ（Ｉ）の大きさは「０」ではない。その理由は、センシング画像とテンプレート画像とを対比すると、画像における指紋の位置が異なる点にある。そのように指紋の位置が異なる理由は、入力部１０１における指の置かれ方が一様でない点にある。移動ベクトルＶ（Ｉ）の算出には、次の式が用いられる。
【００９３】
【数２】
2007094689.tif 000004
【００９４】
変数ＲＩＸとＲＩＹとは、部分領域Ｒ（Ｉ）の基準位置のＸ座標とＹ座標とである。本実施の形態の場合、（ＲＩＸ、ＲＩＹ）は、センシング画像における部分領域Ｒ（Ｉ）の左上角の座標である。変数ＭＩＸとＭＩＹとは、部分領域Ｍ（Ｉ）のＸ座標とＹ座標とである。本実施の形態の場合、（ＭＩＸ、ＭＩＹ）は、部分領域Ｍ（Ｉ）の左上角の座標である。
【００９５】
Ｓ３５２にて、探索部１０３２は、カウンタ変数Ｉの値が、部分領域の総数Ｎ以下か否かを判断する。総数Ｎ以下と判断した場合（Ｓ３５２にてＹＥＳ）、処理はＳ３５４へと移される。もしそうでないと（Ｓ３５２にてＮＯ）、処理はＳ３５６へと移される。Ｓ３５４にて、探索部１０３２は、カウンタ変数Ｉの値を「１」増加させる。
【００９６】
Ｓ３５６にて、探索部１０３２は、マッチングが終了した旨の信号を制御部１０３５に送信する。制御部１０８は計算部１０３３に類似度の計算の開始を命じる信号を送信する。信号が送信されると、制御部１０３５は、類似度の計算が終了した旨の信号を受信するまで待機する。計算部１０３３は、類似度の計算の開始を命じる信号を受信すると、類似度の最大値Ｐ（Ａ，Ｂ）を「０」に初期化する。本実施の形態において、類似度の最大値Ｐ（Ａ，Ｂ）は、センシング画像とテンプレート画像との類似度の最大値を格納する変数である。
【００９７】
Ｓ３５８にて、計算部１０３３は、カウンタ変数Ｉの値を「１」に初期化する。Ｓ３６０にて、計算部１０３３は、基準となる移動ベクトルＶ（Ｉ）に関する類似度Ｐ（Ｉ）を「０」に初期化する。Ｓ３６２にて、計算部１０３３は、カウンタ変数Ｊの値を「１」に初期化する。
【００９８】
Ｓ３６４にて、計算部１０３３は、基準となる移動ベクトルＶ（Ｉ）と比較しようとする移動ベクトルＶ（Ｊ）とのベクトル差ｄＶＩＪを、以下の式に従い計算する。
【００９９】
【数３】
2007094689.tif 000005
【０１００】
変数ＶＩＸは、移動ベクトルＶ（Ｉ）のＸ方向の成分を表わす。変数ＶＩＹは、移動ベクトルＶ（Ｉ）のＹ方向の成分を表わす。変数ＶＪＸは、移動ベクトルＶ（Ｊ）のＸ方向の成分を表わす。変数ＶＪＹは、移動ベクトルＶ（Ｊ）のＹ方向の成分を表わす。関数ＳＱＲＴ（Ｆ）は、値Ｆの平方根を表わす。
【０１０１】
Ｓ３６６にて、計算部１０３３は、移動ベクトルＶ（Ｉ）と移動ベクトルＶ（Ｊ）とが実質的に同一か否かを判断する。具体的には、計算部１０３３は、ベクトル差ｄＶＩＪが、定数εより小さいか否かを判断する。実質的に同一と判断した場合（Ｓ３６６にてＹＥＳ）、処理はＳ３６８へと移される。もしそうでないと（Ｓ３６６にてＮＯ）、処理はＳ３７０へと移される。
【０１０２】
Ｓ３６８にて、計算部１０３３は、類似度Ｐ（Ｉ）の値を、以下の式にしたがって増加させる。これにより、計算部１０３３は、対象領域それぞれと探索部１０３２が探索した部分それぞれとの位置の関係に基づいて、センシング画像の少なくとも一部とテンプレート画像の少なくとも一部との類似度を算出することとなる。
【０１０３】
【数４】
2007094689.tif 000006
【０１０４】
変数αは、類似度Ｐ（Ｉ）を増加させる値である。本実施の形態において、変数αの値は、ベクトル差ｄＶＩＪの大きさに対応するように、設計時に任意に設定できる。たとえばα＝１とした場合、類似度Ｐ（Ｉ）の値は、基準とした移動ベクトルＶ（Ｉ）と同一の移動ベクトルを持つ部分領域の個数を表わすこととなる。基準とした移動ベクトルＶ（Ｉ）と同一の移動ベクトルを持つ部分領域の個数が表わされるので、α＝１とした場合、計算部１０３３は、複数の部分領域と探索部１０３２が探索した部分との位置の関係が所定の要件を満たす部分領域の数を類似度として算出することとなる。α＝ＣＩＭＡＸとした場合、類似度Ｐ（Ｉ）は、最大一致度ＣＩＭＡＸの総和を表わすこととなる。
【０１０５】
Ｓ３７０にて、計算部１０３３は、カウンタ変数Ｊが部分領域の総数Ｎ未満か否かを判断する。カウンタ変数Ｊが部分領域の総数Ｎ未満と判断した場合には（Ｓ３７０にてＹＥＳ）、処理はＳ３７２へと移される。もしそうでないと（Ｓ３７０にてＮＯ）、処理はＳ３７４へと移される。
【０１０６】
Ｓ３７２にて、計算部１０３３は、カウンタ変数Ｊの値を「１」増加させる。
Ｓ３７４にて、計算部１０３３は、移動ベクトルＶ（Ｉ）についての類似度Ｐ（Ｉ）が類似度の最大値Ｐ（Ａ，Ｂ）より大きいか否かを判断する。類似度Ｐ（Ｉ）が、類似度の最大値Ｐ（Ａ，Ｂ）より大きいと判断した場合（Ｓ３７４にてＹＥＳ）、処理はＳ３７６へと移される。もしそうでないと（Ｓ３７４にてＮＯ）、処理はＳ３７８へと移される。
【０１０７】
Ｓ３７６にて、計算部１０３３は、類似度の最大値Ｐ（Ａ，Ｂ）に移動ベクトルＶ（Ｉ）についての類似度Ｐ（Ｉ）の値を代入する。
【０１０８】
Ｓ３７８にて、計算部１０３３は、カウンタ変数Ｉの値が、部分領域の総数Ｎより小さいか否かを判断する。カウンタ変数Ｉの値が、部分領域の総数Ｎより小さいと判断した場合には（Ｓ３７８にてＹＥＳ）、処理はＳ３８０へと移される。もしそうでないと（Ｓ３７８にてＮＯ）、処理は終了する。Ｓ３８０にて、計算部１０３３は、カウンタ変数Ｉの値を「１」増加させる。
【０１０９】
図１３を参照して、画像照合装置１００で実行されるプログラムは、類似度の計算に関して、以下の制御を実行する。なお、図１３に示すフローチャートの中で、前述の図１２に示した処理は同じステップ番号を付してある。それらの処理も同じである。したがって、それらについての詳細な説明はここでは繰返さない。
【０１１０】
Ｓ４００にて、制御部１０３５は、探索部１０３２へ、マッチングを開始する旨の信号を送る。その後制御部１０３５は、マッチングが終了した旨の信号を受信するまで待機する。探索部１０３２は、カウンタ変数Ｉに上述したインデックスの最小値ＩＭＩＮを代入する。
【０１１１】
Ｓ４０２にて、探索部１０３２は、Ｓ３４２で画像を複写した部分領域Ｒ（Ｉ）について、テンプレート画像内で最も一致度の高い、つまり画像内のデータが最も一致する領域を探索する。これにより、Ｓ３４２で複写した部分領域Ｒ（Ｉ）についての最大一致度ＣＩＭＡＸが算出される。この処理は、図１４に示すＳ４２０〜Ｓ４２６の処理に該当する。
【０１１２】
Ｓ４０４にて、探索部１０３２は、カウンタ変数Ｉの値が、対象となる部分領域のインデックスの最大値ＩＭＡＸ未満か否かを判断する。最大値ＩＭＡＸ未満と判断した場合（Ｓ４０４にてＹＥＳ）、処理はＳ３５４へと移される。もしそうでないと（Ｓ４０４にてＮＯ）、処理はＳ３５６へと移される。
【０１１３】
Ｓ４０６にて、計算部１０３３は、カウンタ変数Ｊが部分領域のインデックスの最大値ＩＭＡＸ未満か否かを判断する。最大値ＩＭＡＸ未満と判断した場合（Ｓ４０６にてＹＥＳ）、処理はＳ３７２へと移される。もしそうでないと（Ｓ４０６にてＮＯ）、処理はＳ４０８へと移される。
【０１１４】
Ｓ４０８にて、計算部１０３３は、移動ベクトルＶ（Ｉ）についての類似度Ｐ（Ｉ）が、類似度の最大値Ｐ（Ａ，Ｂ）より大きいか否かを判断する。類似度Ｐ（Ｉ）が、類似度の最大値Ｐ（Ａ，Ｂ）より大きいと判断した場合（Ｓ４０８にてＹＥＳ）、処理はＳ３７６へと移される。もしそうでないと（Ｓ４０８にてＮＯ）、処理はＳ４１０へと移される。
【０１１５】
Ｓ４１０にて、計算部１０３３は、カウンタ変数Ｉの値が、部分領域のインデックスの最大値ＩＭＡＸより小さいか否かを判断する。カウンタ変数Ｉの値が、インデックスの最大値ＩＭＡＸより小さいと判断した場合（Ｓ４１０にてＹＥＳ）、処理はＳ３８０へと移される。もしそうでないと（Ｓ４１０にてＮＯ）、処理は終了する。
【０１１６】
図１４を参照して、画像照合装置１００で実行されるプログラムは、領域Ｍ（Ｉ）の探索すなわち一致度の算出に関して、以下の制御を実行する。
【０１１７】
Ｓ４２０にて、探索部１０３２は、Ｓ３４６と同じ式を用いて一致度Ｃ（Ｉ，Ｓ，Ｔ）を計算する。一致度Ｃ（Ｉ，Ｓ，Ｔ）が計算されると、探索部１０３２は、一致度Ｃ（Ｉ，Ｓ，Ｔ）の値を、カウンタ変数Ｉおよび画像Ｂの座標（Ｓ，Ｔ）に対応付けた上で、参照ブロック１０２１に格納する。
【０１１８】
Ｓ４２２にて、探索部１０３２は、テンプレート画像の座標に、一致度Ｃ（Ｉ，Ｓ，Ｔ）が未だ算出されていない座標があるか否かを判断する。一致度Ｃ（Ｉ，Ｓ，Ｔ）が未だ算出されていない座標があると判断した場合（Ｓ４２２にてＹＥＳ）、処理はＳ４２４へと移される。もしそうでないと（Ｓ４２２にてＮＯ）、処理はＳ４２６へと移される。
【０１１９】
Ｓ４２４にて、探索部１０３２は、テンプレート画像の座標（Ｓ，Ｔ）を、Ｓ４２２にて一致度Ｃ（Ｉ，Ｓ，Ｔ）が算出された座標の隣の座標に更新する。本実施の形態の場合、隣の座標が無ければ、探索部１０３２は、テンプレート画像の座標（Ｓ，Ｔ）を、Ｓ４２２にて一致度Ｃ（Ｉ，Ｓ，Ｔ）が算出された座標の真下の座標に更新する。なお、本実施の形態の場合、座標（Ｓ，Ｔ）の初期値は（０，０）である。座標（０，０）は、テンプレート画像の左上の座標である。
【０１２０】
Ｓ４２６にて、探索部１０３２は、参照ブロック１０２１に格納された一致度Ｃ（Ｉ，Ｓ，Ｔ）の中から最大値を探出す。一致度Ｃ（Ｉ，Ｓ，Ｔ）の最大変数ＣＩＭＡＸが探出されると、探索部１０３２は、次の領域を部分領域Ｒ（Ｉ）と最も一致度が高い領域とみなす。その領域とは、テンプレート画像の座標（Ｓ，Ｔ）のうち、最大変数ＣＩＭＡＸが算出された座標を基準とし、かつ幅がＷで高さがＨの領域である。なお、このようにして部分領域Ｒ（Ｉ）と最も一致度が高いとみなされた領域を部分領域Ｍ（Ｉ）と称する。
【０１２１】
以上のような構造およびフローチャートに基づく、画像照合装置１００の動作について説明する。
【０１２２】
［特徴情報が”Ｅ”となる部分領域が存在し、かつＨＬＥＮ（０）の値を「２」と設定した場合］
ＨＬＥＮ（０）の値を「２」と設定した場合の画像照合装置１００の動作について説明する。
【０１２３】
制御部１０３５は、入力部１０１へ画像の入力を開始する旨の信号を送る。入力部１０１は、センシング画像の入力を受付け、バス１０５を通して記憶部１０２の画像ブロック１０２３へ出力する。参照ブロック１０２１は、センシング画像の画像データを格納する。図１５は、この時入力されたセンシング画像の一例を表わす図である。画像の右下の部分に汚れが表れている。入力部１０１は、テンプレート画像の入力を受付け、バス１０５を通して記憶部１０２の画像ブロック１０２３へ出力する。画像ブロック１０２３は、テンプレート画像の画像データを格納する。図１６は、この時入力されたテンプレート画像の一例を表わす図である。入力部１０１は、テンプレート画像の受付が完了した後、制御部１０３５に画像の受付が終了した旨の信号を送る（Ｓ２００）。
【０１２４】
信号が送られると、制御部１０３５は、補正部１０３１に画像の補正を開始する旨の信号を送る。補正部１０３１は、画像が入力された時の条件の変動を抑制するように、入力された画像の画質を補正する。補正の終了後、補正部１０３１は、制御部１０３５に画像の補正が終了した旨の信号を送る（Ｓ２０２）。
【０１２５】
信号が送られると、制御部１０３５は、計算部１０３３に判定の開始を命じる信号を送る。計算部１０３３は、判定の対象となった部分領域Ｒ（１）を画像ブロック１０２３から読出し、計算ブロック１０２２に一旦格納する（Ｓ２１０）。
【０１２６】
部分領域Ｒ（Ｉ）が格納されると、計算部１０３３は、最大値ＭＡＸＨＬＥＮとカウンタ変数Ｊとを初期化する（Ｓ２３０）。
【０１２７】
最大値ＭＡＸＨＬＥＮとカウンタ変数Ｊとが初期化されると、計算部１０３３は、Ｊ＞Ｍか否かを判断する（Ｓ２３２）。この場合、定数Ｍの値は「１５」でカウンタ変数Ｊの値は「０」なので（Ｓ２３２にてＮＯ）、計算部１０３３は、カウンタ変数Ｉと、変数Ｃと、画素の数ＬＥＮと、最大値ＭＡＸとを初期化する（Ｓ２３６）。これにより、Ｉ＝０、Ｃ＝０、ＬＥＮ＝０、ＭＡＸ＝０となる。
【０１２８】
カウンタ変数Ｉなどが初期化されると、計算部１０３３は、Ｉ＞Ｍか否かを判断する（Ｓ２３８）。この場合、定数Ｍの値は「１５」でカウンタ変数Ｉの値は「０」なので（Ｓ２３８にてＮＯ）、計算部１０３３は、Ｃ＝１かつＣ＝ＰＩＸＥＬ（Ｉ，Ｊ)か否かを判断する（Ｓ２５０）。この場合、Ｓ２３６よりＣ＝０なので（Ｓ２５０にてＮＯ）、計算部１０３３は、Ｃ＝１かつＭＡＸ＜ＬＥＮか否かを判断する（Ｓ２５４）。この場合、Ｃ＝０、ＬＥＮ＝０、かつＭＡＸ＝０なので（Ｓ２５４にてＮＯ）、計算部１０３３は、画素の数ＬＥＮに変数ＰＩＸＥＬ（Ｉ，Ｊ）の値を代入する。併せて、計算部１０３３は、変数Ｃに変数ＰＩＸＥＬ（Ｉ，Ｊ)の値を代入する（Ｓ２５８）。この場合、ＰＩＸＥＬ（０，０）＝０とすると、画素の数ＬＥＮの値も変数Ｃの値も「０」のままである。
【０１２９】
変数Ｃに変数ＰＩＸＥＬ（Ｉ，Ｊ)の値が代入されると、計算部１０３３は、カウンタ変数Ｉの値を「１」増加させる（Ｓ２６０）。これにより、カウンタ変数Ｉの値は「１」となる。１行目の画素の色がすべて白（すなわちＰＩＸＥＬ（Ｉ，０）の値はすべて「０」）となっているとすると、カウンタ変数Ｉの値が「１６」となるまで、Ｓ２３８〜Ｓ２６０の処理が繰返される。なお、予めＰＩＸＥＬ（１６，Ｊ）およびＰＩＸＥＬ（Ｉ，１６）の値は「０」と定義されていることとする。カウンタ変数Ｉの値が「１６」となった時点でのカウンタ変数Ｉなどの値は、Ｉ＝１５、Ｃ＝０、ＬＥＮ＝０となっている。
【０１３０】
Ｓ２３８〜Ｓ２６０の処理が繰返された後、計算部１０３３は、Ｉ＞Ｍか否かを判断する（Ｓ２３８）。この場合、定数Ｍの値は「１５」でカウンタ変数Ｉの値は「１６」なので（Ｓ２３８にてＹＥＳ）、計算部１０３３は、ＭＡＸ＜ＬＥＮか否かを判断する（Ｓ２４０）。この場合、Ｃ＝０、ＬＥＮ＝０、ＭＡＸ＝０なので（Ｓ２４０にてＮＯ）、計算部１０３３は、ＭＡＸＨＬＥＮ＜ＭＡＸか否かを判断する（Ｓ２４４）。この場合、ＭＡＸＨＬＥＮ＝０でＭＡＸ＝０なので（Ｓ２４４にてＮＯ）、計算部１０３３は、カウンタ変数Ｊの値を「１」増加させる（Ｓ２４８）。これにより、カウンタ変数Ｊの値は「１」となる。以降、カウンタ変数Ｊの値が「１」から「１５」である間、Ｓ２３２〜Ｓ２４８の処理が繰返される。
【０１３１】
その後、カウンタ変数Ｊの値が「１６」となった時点で、計算部１０３３は、Ｊ＞Ｍか否かを判断する（Ｓ２３２）。この時点では、カウンタ変数Ｊの値が「１６」で、定数Ｍの値が「１５」なので（Ｓ２３２にてＹＥＳ）、計算部１０３３は、計算ブロック１０２２に、最大値ＭＡＸＨＬＥＮが表わす値を出力する（Ｓ２３４）。この場合、最大値ＭＡＸＨＬＥＮの値として「１５」が出力されたこととする。
【０１３２】
最大値ＭＡＸＨＬＥＮが表わす値が出力されると、計算部１０３３は、最大値ＭＡＸＶＬＥＮとカウンタ変数Ｉとを初期化する（Ｓ２７０）。これにより、ＭＡＸＶＬＥＮ＝０、Ｉ＝０となる。
【０１３３】
最大値ＭＡＸＶＬＥＮとカウンタ変数Ｉとが初期化されると、計算部１０３３は、Ｉ＞Ｍか否かを判断する（Ｓ２７２）。この場合、カウンタ変数Ｉの値は「０」で定数Ｍの値が「１５」なので（Ｓ２７２にてＮＯ）、計算部１０３３は、カウンタ変数Ｊと、画素の色を表わす変数Ｃと、隣り合いかつ同じ色である画素の数ＬＥＮと、ある行またはある列において隣り合いかつ同じ色である画素の数の最大値ＭＡＸとを初期化する（Ｓ２７６）。これにより、Ｊ＝０、Ｃ＝０、ＬＥＮ＝０、ＭＡＸ＝０となる。
【０１３４】
カウンタ変数Ｊなどが初期化されると、計算部１０３３は、Ｊ＞Ｍか否かを判断する（Ｓ２７８）。この場合、カウンタ変数Ｊの値が「０」で定数Ｍの値が「１５」なので（Ｓ２７８にてＮＯ）、計算部１０３３は、Ｃ＝１かつＣ＝ＰＩＸＥＬ（Ｉ，Ｊ)か否かを判断する（Ｓ２５０）。この場合、Ｃ＝０なので（Ｓ２５０にてＮＯ）、計算部１０３３は、Ｃ＝１かつＭＡＸ＜ＬＥＮか否かを判断する（Ｓ２５４）。この場合、Ｃ＝０、ＬＥＮ＝０、ＭＡＸ＝０なので（Ｓ２５４にてＮＯ）、計算部１０３３は、画素の数ＬＥＮに変数ＰＩＸＥＬ（Ｉ，Ｊ）の値を代入する。併せて、計算部１０３３は、変数Ｃに変数ＰＩＸＥＬ（Ｉ，Ｊ)の値を代入する（Ｓ２５８）。
【０１３５】
画素の数ＬＥＮの値が「１」増加すると、計算部１０３３は、カウンタ変数Ｊの値を「１」増加させる（Ｓ２８８）。これにより、カウンタ変数Ｊの値は「１」となる。カウンタ変数Ｊの値が「１」増加すると、カウンタ変数Ｊの値が「３」となるまで、Ｓ２７８〜Ｓ２８８の処理が繰返される。カウンタ変数Ｊの値が「３」となった時点でのカウンタ変数Ｊなどの値は、Ｊ＝３、Ｃ＝０、ＬＥＮ＝０となっていることとする。
【０１３６】
その後、計算部１０３３は、Ｊ＞Ｍか否かを判断する（Ｓ２７８）。この場合、定数Ｍの値は「１５」でカウンタ変数Ｊの値は「３」なので（Ｓ２７８にてＮＯ）、計算部１０３３は、Ｃ＝１かつＣ＝ＰＩＸＥＬ（Ｉ，Ｊ)か否かを判断する（Ｓ２５０）。この場合、Ｃ＝０なので（Ｓ２５０にてＮＯ）、計算部１０３３は、Ｃ＝１かつＭＡＸ＜ＬＥＮか否かを判断する（Ｓ２５４）。この場合、Ｃ＝０、ＬＥＮ＝０なので（Ｓ２５４にてＮＯ）、計算部１０３３は、画素の数ＬＥＮに変数ＰＩＸＥＬ（Ｉ，Ｊ）の値を代入する。併せて、計算部１０３３は、変数Ｃに変数ＰＩＸＥＬ（Ｉ，Ｊ)の値を代入する（Ｓ２５８）。これにより、ＬＥＮ＝１かつＣ＝１となることとする。
【０１３７】
画素の数ＬＥＮなどに値が代入されると、カウンタ変数Ｊの値が「１６」となるまで、Ｓ２７８〜Ｓ２８８の処理が繰返される。カウンタ変数Ｊの値が「１６」となった時点でのカウンタ変数Ｊなどの値は、Ｊ＝１６、Ｃ＝１、ＬＥＮ＝１となっていることとする。
【０１３８】
その後、計算部１０３３は、Ｊ＞Ｍか否かを判断する（Ｓ２７８）。この場合、定数Ｍの値は「１５」でカウンタ変数Ｊの値は「１６」なので（Ｓ２７８にてＹＥＳ）、計算部１０３３は、ＭＡＸ＜ＬＥＮか否かを判断する（Ｓ２８０）。この場合、Ｃ＝１、ＬＥＮ＝１、ＭＡＸ＝３とすると（Ｓ２８０にてＮＯ）、計算部１０３３は、ＭＡＸＶＬＥＮ＜ＭＡＸか否かを判断する（Ｓ２８２）。この場合、ＭＡＸＶＬＥＮ＝０、ＭＡＸ＝３とすると（Ｓ２８２にてＹＥＳ）、計算部１０３３は、最大値ＭＡＸＶＬＥＮに最大値ＭＡＸの値を代入する（Ｓ２８４）。値が代入されると、計算部１０３３は、カウンタ変数Ｉの値を「１」増加させる（Ｓ２８６）。カウンタ変数Ｉの値は「１」になる。以降、カウンタ変数Ｉの値が「１」から「１５」である間、Ｓ２７２〜Ｓ２８８の処理が繰返される。
【０１３９】
その後、カウンタ変数Ｉの値が「１６」となった時点で、計算部１０３３は、Ｉ＞Ｍか否かを判断する（Ｓ２７２）。現時点では、カウンタ変数Ｉの値が「１６」で、定数Ｍの値が「１５」なので（Ｓ２７２にてＹＥＳ）、計算部１０３３は、計算ブロック１０２２に、最大値ＭＡＸＶＬＥＮが表わす値を出力する（Ｓ２７４）。この場合、最大値ＭＡＸＶＬＥＮの値として「４」が出力されることとする。
【０１４０】
最大値ＭＡＸＶＬＥＮが表わす値が出力されると、計算部１０３３は、ＭＡＸＨＬＥＮ＞ＭＡＸＶＬＥＮかつＭＡＸＨＬＥＮ≧ＨＬＥＮ（０）か否かを判断する（Ｓ２１６）。この場合、ＭＡＸＨＬＥＮ＝１５、ＭＡＸＶＬＥＮ＝４、かつＨＬＥＮ（０）＝２なので（Ｓ２１６にてＹＥＳ）、計算部１０３３は、第１領域１０２４あるいは第２領域１０２５に含まれた、部分領域Ｒ（Ｉ）の特徴情報を格納する領域に“Ｈ”を格納する。特徴情報が格納されると、計算部１０３３は、制御部１０３５に判定が終了したことを表わす信号を送信する（Ｓ２１８）。
【０１４１】
Ｓ２１０〜Ｓ２２６の処理は、各部分領域についてそれぞれ繰返される。図１７は、記憶部１０２の第１領域１０２４あるいは第２領域１０２５から読出された特徴情報の例を、各部分領域の配置に対応付けて表わす図である。これにより、計算部１０３３は、各部分領域について、水平方向および垂直方向の各画素列を抽出（特定）して、抽出された画素列それぞれにおける黒画素の個数に基づき、傾向を判別することとなる。この場合の「傾向」とは、部分領域の模様が水平方向に従う模様である傾向（たとえば横縞である傾向）、垂直方向に従う模様である傾向（たとえば縦縞である傾向）、あるいはそれらのどちらでもない傾向のいずれかである。計算部１０３３は、傾向の判別結果に応じた情報（“Ｒ”、“Ｌ”、“Ｖ”および“Ｘ”のいずれか）を出力する。この値が部分領域の特徴情報である。
【０１４２】
各部分領域の特徴情報が格納されると、制御部１０３５は、部分領域Ｒ（Ｉ）の特徴情報を格納する領域から、部分領域Ｒ（Ｉ）の特徴情報を読出す（Ｓ３００）。
【０１４３】
特徴情報が読出されると、制御部１０３５は、部分領域を照合の対象外とするか否かを判定する（Ｓ３０２）。図１７の場合、Ｒ（９）の特徴情報が“Ｘ”である。制御部１０３５は、Ｒ（９）に隣接する部分領域の特徴情報を参照する。特徴情報が“Ｘ”あるいは“Ｅ”である部分領域は、Ｒ（２０）、Ｒ（２４）、およびＲ（２５）である。部分領域を照合の対象外とするか否かの判定が終了すると、制御部１０３５は、判定の対象となる部分領域の特徴情報“Ｘ”を“Ｅ”に書き換える（Ｓ３０４）。これにより、部分領域Ｒ（２０）、Ｒ（２４）、およびＲ（２５）の特徴情報が“Ｅ”に書換えられる。図１８は、部分領域Ｒ（２０）、Ｒ（２４）、およびＲ（２５）の特徴情報が“Ｅ”に書換えられた後の特徴情報の例を、各部分領域の配置に対応付けて表わす図である。
【０１４４】
本実施の形態において、取扱う画像が指紋である場合、各部分領域の特徴情報は、“Ｈ”、”Ｒ”，”Ｌ”あるいは“Ｘ”のいずれかである。従って、入力部１０１のセンサ上に汚れや入力されていない領域がある場合、その部分領域の特徴情報は“Ｘ”である。この特性を利用することにより、制御部１０３５は、汚れを表わす画像や指紋の画像が入力されていない領域などの、除外領域を検出することとなる。
【０１４５】
特徴情報“Ｘ”が“Ｅ”に書き換えられると、制御部１０３５は、判定部１０３４に照合の判定を開始する旨の信号を送る。判定部１０３４は、マッチング（類似度の計算および照合の判定）を行なう部分領域を、図２の中心領域すなわち部分領域Ｒ（１）〜Ｒ（９）に設定する（Ｓ３１０）。
【０１４６】
部分領域が設定されると、判定部１０３４は、部分領域Ｒ（１）〜部分領域Ｒ（９）の特徴情報を格納する領域から特徴情報を読出す（Ｓ３１２）。特徴情報が読出されると、判定部１０３４は、読出した特徴情報の中に、照合の対象外の部分領域であることを表わす“Ｅ”が存在するか否かを判断する（Ｓ３１４）。この場合、“Ｅ”が存在するので（Ｓ３１４にてＹＥＳ）、制御部１０３５は、探索部１０３２へ、マッチングを開始する旨の信号を送る。探索部１０３２は、カウンタ変数Ｉの値を「１」とする（Ｓ３４０）。
【０１４７】
カウンタ変数Ｉの値が「１」とされると、探索部１０３２は、部分領域Ｒ（Ｉ）の画像を参照ブロック１０２１に複写する（Ｓ３４２）。画像が複写されると、探索部１０３２は、部分領域Ｒ（１）に対応する特徴情報ＣＲ（１）を記憶部１０２から読出す（Ｓ３４４）。特徴情報ＣＲ（Ｉ）が読出されると、探索部１０３２は、Ｓ３４２で複写した画像に対し、画像内で最も一致度の高い場所を探索する（Ｓ３４６）。探索は、部分領域のうち特徴情報ＣＲ（Ｉ）が“Ｅ”でない部分について実施される。図１９は、探索が、入力画像のうち、照合の対象外と判定された部分領域が除かれること表わす概念図である。最も一致する場所が探索されると、探索部１０３２は、Ｓ３４６にて算出された一致度Ｃ（Ｉ，Ｓ，Ｔ）の最大値ＣＩＭＡＸを記憶部１０２に記憶させる（Ｓ３４８）。
【０１４８】
最大一致度ＣＩＭＡＸが記憶されると、探索部１０３２は、移動ベクトルＶ（Ｉ）を算出する。移動ベクトルＶ（Ｉ）が算出されると、探索部１０３２は、移動ベクトルＶ（Ｉ）を、記憶部１０２に記憶させる（Ｓ３５０）。
【０１４９】
移動ベクトルＶ（Ｉ）が記憶されると、探索部１０３２は、カウンタ変数Ｉの値が、部分領域の総数Ｎ以下か否かを判断する（Ｓ３５２）。この場合、総数Ｎ以下なので（Ｓ３５２にてＹＥＳ）、探索部１０３２は、カウンタ変数Ｉの値を「１」増加させる（Ｓ３５４）。以降、変数Ｉの値が部分領域の総数Ｎ以下の間はＳ３４２〜Ｓ３５４の処理が繰返えされる。これにより、それぞれの部分領域Ｒ（Ｉ）の最大一致度ＣＩＭＡＸと、移動ベクトルＶ（Ｉ）とが計算される。最大一致度ＣＩＭＡＸの計算により、探索部１０３２は、テンプレート画像のうち最も類似する部分を対象領域となる部分領域Ｒ（Ｉ）それぞれについて探索することとなる。
【０１５０】
その後、カウンタ変数Ｉの値が、部分領域の総数Ｎを超えるので（Ｓ３５２にてＮＯ）、探索部１０３２は、マッチングが終了した旨の信号を制御部１０３５に送信する。制御部１０３５は計算部１０３３に類似度の計算の開始を命じる信号を送信する。計算部１０３３は、記憶部１０２に格納されているマッチングで得られた各部分領域Ｒ（Ｉ）の移動ベクトルＶ（Ｉ）や最大一致度ＣＩＭＡＸなどの情報を用いて、類似度計算を行なう。そのために、計算部１０３３は、類似度の計算の開始を命じる信号を受信すると、類似度の最大値Ｐ（Ａ，Ｂ）を「０」に初期化する（Ｓ３５６）。類似度の最大値Ｐ（Ａ，Ｂ）が初期化されると、計算部１０３３は、カウンタ変数Ｉの値を「１」に初期化する（Ｓ３５８）。カウンタ変数Ｉの値が初期化されると、計算部１０３３は、基準となる移動ベクトルＶ（Ｉ）に関する類似度Ｐ（Ｉ）を「０」に初期化する（Ｓ３６０）。類似度Ｐ（Ｉ）が初期化されると、計算部１０３３は、カウンタ変数Ｊの値を「１」に初期化する（Ｓ３６２）。カウンタ変数Ｊの値が初期化されると、計算部１０３３は、基準となる移動ベクトルＶ（Ｉ）と比較しようとする移動ベクトルＶ（Ｊ）とのベクトル差ｄＶＩＪを計算する（Ｓ３６４）。
【０１５１】
ベクトル差ｄＶＩＪが計算されると、計算部１０３３は、移動ベクトルＶ（Ｉ）と移動ベクトルＶ（Ｊ）とが実質的に同一か否かを判断する（Ｓ３６６）。実質的に同一と判断した場合（Ｓ３６６にてＹＥＳ）、計算部１０３３は、類似度Ｐ（Ｉ）の値を増加させる（Ｓ３６８）。
【０１５２】
類似度Ｐ（Ｉ）の値が増加されると、計算部１０３３は、カウンタ変数Ｊが部分領域の総数Ｎ未満か否かを判断する（Ｓ３７０）。カウンタ変数Ｊが部分領域の総数Ｎ未満とすると（Ｓ３７０にてＹＥＳ）、計算部１０３３は、カウンタ変数Ｊの値を「１」増加させる（Ｓ３７２）。Ｓ３６０〜Ｓ３７２の処理により、基準とした移動ベクトルＶ（Ｉ）に関して、同じ移動ベクトルを持つと判定される部分領域の情報を用いた類似度Ｐ（Ｉ）が計算される。
【０１５３】
その後、カウンタ変数Ｊが部分領域の総数Ｎ以上になると（Ｓ３７０にてＮＯ）、計算部１０３３は、移動ベクトルＶ（Ｉ）についての類似度Ｐ（Ｉ）が類似度の最大値Ｐ（Ａ，Ｂ）より大きいか否かを判断する（Ｓ３７４）。この場合、類似度Ｐ（Ｉ）が、類似度の最大値Ｐ（Ａ，Ｂ）より大きいとすると（Ｓ３７４にてＹＥＳ）、計算部１０３３は、類似度の最大値Ｐ（Ａ，Ｂ）に移動ベクトルＶ（Ｉ）についての類似度Ｐ（Ｉ）の値を代入する（Ｓ３７６）。Ｓ３７４あるいはＳ３７６では、計算部１０３３は、移動ベクトルＶ（Ｉ）を基準とした場合の類似度Ｐ（Ｉ）が、最も基準として正当であるとみなす。
【０１５４】
類似度の最大値Ｐ（Ａ，Ｂ）に値が代入されると、計算部１０３３は、基準とする移動ベクトルＶ（Ｉ）のカウンタ変数Ｉの値が、部分領域の総数Ｎより小さいか否かを判断する（Ｓ３７８）。当初、カウンタ変数Ｉの値が、部分領域の総数Ｎより小さいので（Ｓ３７８にてＹＥＳ）、計算部１０３３は、カウンタ変数Ｉの値を「１」増加させる（Ｓ３８０）。カウンタ変数Ｉの値が「１」増加すると、Ｓ３６０〜Ｓ３８０の処理が繰返される。Ｓ３５６〜Ｓ３８０の処理により、センシング画像とテンプレート画像とにおける類似度が変数Ｐ（Ａ、Ｂ）の値として計算される。計算部１０３３は、計算した変数Ｐ（Ａ、Ｂ）の値を記憶部１０２の所定アドレスに格納し、制御部１０３５へ類似度の計算が終了したことを表わす信号を送信する。
【０１５５】
その後、カウンタ変数Ｉの値が、部分領域の総数Ｎ以上になると（Ｓ３７８にてＮＯ）、判定部１０３４は、記憶部１０２の所定のアドレスに格納された類似度Ｐ（Ａ，Ｂ）が、予め定められた閾値Ｔ（０）以上か否かを判断する（Ｓ３１８）。これにより、判定部１０３４は、第１の部分のうち除外領域以外の領域である対象領域が、テンプレート画像のいずれかの部分に一致する可能性があるか否かを判断することとなる。また、判定部１０３４は、第１の部分のいずれかの部分領域とテンプレート画像のいずれかの部分とが一致する可能性がある場合に、センシング画像のうち除外領域以外の部分領域がテンプレート画像のいずれかの部分に一致するか否かを判断することとなる。閾値Ｔ（０）以上と判断した場合（Ｓ３１８にてＹＥＳ）、判定部１０３４は、参照ブロック１０２１に「一致」である旨の情報を出力する（Ｓ３２０）。
【０１５６】
値が出力されると、制御部１０３５は、参照ブロック１０２１に記憶された照合の結果を表わす情報を、出力部１０４に出力する。出力部１０４は、制御部１０３５が出力した情報を出力する（Ｓ２０６）。
【０１５７】
［特徴情報が”Ｅ”となる部分領域が存在し、ＨＬＥＮ（０）の値を「２」と設定し、かつＶＬＥＮ（０）の値を「５」と設定した場合］
特徴情報が”Ｅ”となる部分領域が存在し、かつＨＬＥＮ（０）の値を「５」と設定した場合の画像照合装置１００の動作について説明する。
【０１５８】
Ｓ２７４までの処理を経た結果、仮に、ＭＡＸＨＬＥＮ＝３、ＭＡＸＶＬＥＮ＝４、ＨＬＥＮ（０）＝２、かつＶＬＥＮ（０）＝５であったとする。計算部１０３３は、ＭＡＸＨＬＥＮ＞ＭＡＸＶＬＥＮかつＭＡＸＨＬＥＮ≧ＨＬＥＮ（０）か否かを判断する（Ｓ２１６）。この場合、ＭＡＸＨＬＥＮ＝３、ＭＡＸＶＬＥＮ＝４、かつＨＬＥＮ（０）＝２なので（Ｓ２１６にてＮＯ）、計算部１０３３は、ＭＡＸＶＬＥＮ＞ＭＡＸＨＬＥＮかつＭＡＸＶＬＥＮ≧ＶＬＥＮ（０）か否かを判断する（Ｓ２２０）。この場合、ＭＡＸＨＬＥＮ＝３、ＭＡＸＶＬＥＮ＝４、かつＶＬＥＮ（０）＝５なので（Ｓ２２０にてＮＯ）、計算部１０３３は、第１領域１０２４あるいは第２領域１０２５に含まれた、部分領域Ｒ（Ｉ）の特徴情報を格納する領域に“Ｘ”を格納する。特徴情報が格納されると、計算部１０３３は、制御部１０３５に判定が終了したことを表わす信号を送信する（Ｓ２２６）。
【０１５９】
［特徴情報が”Ｅ”となる部分領域が存在し、ＭＡＸＨＬＥＮ＝４かつＭＡＸＶＬＥＮ＝１５であって、ＶＬＥＮ（０）の値を「２」と設定した場合］
ＭＡＸＨＬＥＮ＝４かつＭＡＸＶＬＥＮ＝１５であって、ＶＬＥＮ（０）の値を「２」と設定した場合の画像照合装置１００の動作について説明する。
【０１６０】
Ｓ２７４までの処理を経た結果、仮に、ＭＡＸＨＬＥＮ＝４、ＭＡＸＶＬＥＮ＝１５、ＶＬＥＮ（０）＝２であったとする。最大値ＭＡＸＶＬＥＮが表わす値が出力されると、計算部１０３３は、ＭＡＸＨＬＥＮ＞ＭＡＸＶＬＥＮかつＭＡＸＨＬＥＮ≧ＨＬＥＮ（０）か否かを判断する（Ｓ２１６）。この場合、ＭＡＸＨＬＥＮ＝４、ＭＡＸＶＬＥＮ＝１５、ＶＬＥＮ（０）＝２なので（Ｓ２１６にてＮＯ）、計算部１０３３は、ＭＡＸＶＬＥＮ＞ＭＡＸＨＬＥＮかつＭＡＸＶＬＥＮ≧ＶＬＥＮ（０）か否かを判断する（Ｓ２２０）。この場合、ＭＡＸＨＬＥＮ＝４、ＭＡＸＶＬＥＮ＝１５、かつＶＬＥＮ（０）＝２なので（Ｓ２２０にてＹＥＳ）、計算部１０３３は、論理積の総和ＡＳを算出する（Ｓ２２１）。論理積の総和ＡＳが算出されると、判定部１０３４は、論理積の総和ＡＳが閾値ＴＦ以上か否かを判断する（Ｓ２２２）。この場合、論理積の総和ＡＳ＝３で閾値ＴＦ＝５とすると（Ｓ２２２にてＮＯ）、計算部１０３３は、第１領域１０２４あるいは第２領域１０２５に含まれた、部分領域Ｒ（Ｉ）の特徴情報を格納する領域に“Ｒ”を格納する。特徴情報が格納されると、計算部１０３３は、制御部１０３５に判定が終了したことを表わす信号を送信する（Ｓ２２３）。
【０１６１】
［特徴情報が”Ｅ”となる部分領域が存在しない場合］
Ｓ３１２までの処理により、特徴情報が読出されると、判定部１０３４は、読出した特徴情報の中に、照合の対象外の部分領域であることを表わす“Ｅ”が存在するか否かを判断する（Ｓ３１４）。この場合、特徴情報に“Ｅ”が存在しないので（Ｓ３１４にてＮＯ）、制御部１０３５は、探索部１０３２へ、マッチングを開始する旨の信号を送る。探索部１０３２は、カウンタ変数Ｉの値を上述したインデックスの最小値ＩＭＩＮとする（Ｓ４００）。
【０１６２】
インデックスの最小値ＩＭＩＮが設定されると、Ｓ３４２の処理を経て、探索部１０３２は、一致度Ｃ（Ｉ，Ｓ，Ｔ）を計算する。一致度Ｃ（Ｉ，Ｓ，Ｔ）が計算されると、探索部１０３２は、一致度Ｃ（Ｉ，Ｓ，Ｔ）の値を、カウンタ変数Ｉ、およびテンプレート画像の座標（Ｓ，Ｔ）に対応付けた上で、参照ブロック１０２１に格納する（Ｓ４２０）。
【０１６３】
一致度Ｃ（Ｉ，Ｓ，Ｔ）の値が格納されると、探索部１０３２は、テンプレート画像の座標に、一致度Ｃ（Ｉ，Ｓ，Ｔ）が未だ算出されていない座標があるか否かを判断する（Ｓ４２２）。当初、一致度Ｃ（Ｉ，Ｓ，Ｔ）が未だ算出されていない座標があるので（Ｓ４２２にてＹＥＳ）、探索部１０３２は、テンプレート画像の座標（Ｓ，Ｔ）を、Ｓ４２２にて一致度Ｃ（Ｉ，Ｓ，Ｔ）が算出された座標の隣の座標に更新する（Ｓ４２４）。座標が更新されると、Ｓ４２２〜Ｓ４２４の処理が繰返される。
【０１６４】
その後、一致度Ｃ（Ｉ，Ｓ，Ｔ）が未だ算出されていない座標がなくなると（Ｓ４２２にてＮＯ）、探索部１０３２は、参照ブロック１０２１に格納された一致度Ｃ（Ｉ，Ｓ，Ｔ）の中から最大値を探出す。一致度Ｃ（Ｉ，Ｓ，Ｔ）の最大変数ＣＩＭＡＸが探出されると、探索部１０３２は、テンプレート画像の座標（Ｓ，Ｔ）のうち、最大変数ＣＩＭＡＸが算出された座標を基準とし、かつ幅がＷで高さがＨの領域が、部分領域Ｒ（Ｉ）と最も一致度が高い領域とみなす（Ｓ４２６）。
【０１６５】
最大変数ＣＩＭＡＸが探出されると、Ｓ３４８〜Ｓ３５０の処理を経て、探索部１０３２は、カウンタ変数Ｉの値が、対象となる部分領域のインデックスの最大値ＩＭＡＸ未満か否かを判断する（Ｓ４０４）。最大値ＩＭＡＸ未満と判断されたとすると（Ｓ４０４にてＹＥＳ）、Ｓ３５４の処理を経た後、Ｓ３４２〜Ｓ３５４の処理が繰返される。
【０１６６】
その後、最大値ＩＭＡＸ以上と判断されたとすると（Ｓ４０４にてＮＯ）、Ｓ３５６〜Ｓ３６８の処理を経て、計算部１０３３は、カウンタ変数Ｊが部分領域のインデックスの最大値ＩＭＡＸ未満か否かを判断する（Ｓ４０６）。当初、カウンタ変数Ｊが最大値ＩＭＡＸ未満と判断されたとすると（Ｓ４０６にてＹＥＳ）、Ｓ３７２の処理を経て、Ｓ３６４〜Ｓ３７２の処理が繰返される。
【０１６７】
その後、カウンタ変数Ｊが最大値ＩＭＡＸ以上と判断されると（Ｓ４０６にてＮＯ）、計算部１０３３は、移動ベクトルＶ（Ｉ）についての類似度Ｐ（Ｉ）が、類似度の最大値Ｐ（Ａ，Ｂ）より大きいか否かを判断する（Ｓ４０８）。この場合、類似度Ｐ（Ｉ）が類似度の最大値Ｐ（Ａ，Ｂ）より大きいと判断したとすると（Ｓ４０８にてＹＥＳ）、Ｓ３７６の処理を経て、計算部１０３３は、カウンタ変数Ｉの値が、部分領域のインデックスの最大値ＩＭＡＸより小さいか否かを判断する（Ｓ４１０）。この場合、カウンタ変数Ｉの値が、インデックスの最大値ＩＭＡＸより小さいとすると（Ｓ４１０にてＹＥＳ）、Ｓ３８０の処理を経て、Ｓ３６０〜Ｓ３８０の処理が繰返される。図１３に示すＳ３５６〜Ｓ３８０の処理により、センシング画像とテンプレート画像とにおける類似度が変数Ｐ（Ａ、Ｂ）の値として計算される。
【０１６８】
その後、カウンタ変数Ｉの値が、インデックスの最大値ＩＭＡＸ以上になると（Ｓ４１０にてＹＥＳ）、計算部１０３３は変数Ｐ（Ａ、Ｂ）の値をメモリ１０２の所定アドレスに格納する。値が格納されると、計算部１０３３は、類似度の計算が終了した旨の信号を制御部１０３５へ送信する。判定部１０３４は、類似度の最大値Ｐ（Ａ，Ｂ）が閾値Ｔ（２）未満か否かを判断する（Ｓ３２６）。この場合、閾値Ｔ（２）以上と判断されたとすると（Ｓ３２６にてＮＯ）、判定部１０３４は、類似度の最大値Ｐ（Ａ，Ｂ）が、閾値Ｔ（２）を上回る、閾値Ｔ（１）以上か否かを判断する（Ｓ３２８）。この場合、類似度の最大値Ｐ（Ａ，Ｂ）が、閾値Ｔ（１）以上と判断されると（Ｓ３２８にてＹＥＳ）、判定部１０３４は、参照ブロック１０２１に「一致」である旨の情報（たとえば「１」という値）を出力する（Ｓ３２０）。これにより、センシング画像とテンプレート画像とは同一指紋から採取されたものと判定されることとなる。
【０１６９】
以上のようにして、本案施の形態に係る画像照合装置は、中心領域に照合の対象外となる画像が検出された時点で、中心領域と周辺領域とをすべて照合の対象にする処理をすることができる。
【０１７０】
たとえば、図２に示すＲ（６）、Ｒ（８）、およびＲ（９）が照合の対象が対象外であり(特徴情報が“Ｅ”であり)、閾値（Ｔ（０），Ｔ（１））が「０．７」の場合について説明する。この場合、画像の中心部だけを用いて照合する方法であれば、中心領域のうちＲ（６）、Ｒ（８）、およびＲ（９）以外の部分領域はすべて照合に成功する領域であるとすると、類似度は、以下の式で表わされる。この値は閾値以上の値でないので、結局照合に失敗してしまう。
【０１７１】
照合が成功する部分領域の数／すべての領域の数＝６／９＝０．６６７
仮に周辺領域がすべて照合に成功する領域であるとすると、類似度は、以下の式で表わされる。この値であれば、照合は成功する。
【０１７２】
照合が成功した部分領域の数／すべての領域の数＝２２／２５＝０．８８
その結果、一方の画像の一部分のみで他方の画像と同一か否かの判断ができる場合はそこで照合を終了し、かつ残りの部分の画像の照合を省略するような画像照合装置、画像照合方法、画像照合プログラムであって、一方の画像の一部分が汚れなどによって照合の対象外となっても、本来照合できる画像で限り照合を実施できる、画像照合装置、画像照合方法、画像照合プログラムを提供できる。
【０１７３】
なお、変形例として、上述した画像照合装置１００を実現するためのプログラムは、表計算ソフトに用いられるデータファイルのような形態を有してもよい。
【０１７４】
また、変形例として、参照用画像が複数ある場合、ほとんどの参照用画像は、照合する画像と不一致になる可能性が高い。照合する画像と不一致になる可能性が高いため、Ｓ３２８が省略されてもよい。これにより、高速化の効果を得ることができる。
【０１７５】
また、変形例として、照合の対象となる画像データは、指紋以外であって個体（個人）毎に似ているが一致することはないような、生体の特徴による画像データであってもよい。
【０１７６】
また、変形例として、照合の対象となる画像データは、線状模様の画像データであっても、あるいはその他の画像データであってもよい。
【０１７７】
また、変形例として、Ｓ２１０〜Ｓ２２６の処理において、連続する黒画素の個数に基づき特徴情報を求めることに代え、連続する白画素の個数に基づいても特徴情報を求めてもよい。
【０１７８】
また、変形例として、Ｓ３０２にて、部分領域を照合の対象外とする基準は、上述の説明に係る基準（特徴情報が“Ｘ”である部分領域が縦方向、横方向、および斜め方向の少なくともいずれか１方向に２つ以上連続すること）に限定されない。たとえば、特徴情報が“Ｘ”である部分領域すべてを照合の対象外と判定しても良い。これにより、制御部１０３５は、予め定めた情報を特徴情報とする領域のいずれかを除外領域として検出することとなる。
【０１７９】
また、変形例として、Ｓ３２８とＳ３３０との間にて、探索部１０３２などは、第１の部分を含むセンシング画像の部分がテンプレート画像のいずれかの部分に一致する可能性を表わす値である判定値を決定してもよい。この場合、判定部１０３４は、閾値を判定値が上回るか否かを判断してもよい。判定に用いる閾値は、第１の部分を含むセンシング画像の部分の大きさに対応する値であることが望ましい。
【０１８０】
また、変形例として、テンプレート画像のデータは、予め記憶されたデータであっても良い。
【０１８１】
また、変形例として、Ｓ３２８の処理は実施されなくともよい。Ｓ３２８の処理が実施されない場合、Ｓ３３４の処理により、判定部１０３４は、第１の部分とテンプレート画像のいずれかの部分とが一致する場合に、センシング画像のうち除外領域以外の部分領域がテンプレート画像のいずれかの部分に一致するか否かを判断することとなる。
【０１８２】
＜第２の実施の形態＞
以下、本発明の第２の実施の形態に係る画像照合装置について説明する。
【０１８３】
本実施の形態に係る画像照合装置のハードウェア構成については前述の第１の実施の形態と同じである。それらについての機能も同じである。したがって、それらについての詳細な説明はここでは繰返さない。
【０１８４】
図２０を参照して、画像照合装置１００で実行されるプログラムは、類似度の計算および照合の判定に関して、以下の制御を実行する。なお、図２０に示すフローチャートの中で、前述の図１１に示した処理は同じステップ番号を付してある。それらの処理も同じである。したがって、それらについての詳細な説明はここでは繰返さない。
【０１８５】
Ｓ４３０にて、探索部１０３２などは、判定部１０３４が設定した、マッチングを行なう部分領域について、マッチングと類似度の計算とを実施する。この処理は、図２１に示すＳ３４２〜Ｓ３８０の処理とＳ４４０〜Ｓ４５０の処理とに該当する。
【０１８６】
Ｓ４３２にて、探索部１０３２などは、判定部１０３４が設定した、マッチングを行なう部分領域について、マッチングと類似度の計算とを実施する。この処理は、図２１に示すＳ３４２〜Ｓ３８０の処理とＳ４４０〜Ｓ４５０の処理とに該当する。
【０１８７】
図２１を参照して、画像照合装置１００で実行されるプログラムは、マッチングおよび類似度の計算に関して、以下の制御を実行する。なお、図２１に示すフローチャートの中で、前述の図１２に示した処理は同じステップ番号を付してある。それらの処理も同じである。したがって、それらについての詳細な説明はここでは繰返さない。
【０１８８】
Ｓ４４０にて、制御部１０３５は、探索部１０３２へ、マッチングを開始する旨の信号を送る。その後制御部１０３５は、マッチングが終了した旨の信号を受信するまで待機する。探索部１０３２は、カウンタ変数ＩにＩＭＩＮの値を代入する。
【０１８９】
Ｓ４４２にて、探索部１０３２は、カウンタ変数Ｉの値がＩＭＡＸ以下か否かを判断する。ＩＭＡＸ以下と判断した場合（Ｓ４４２にてＹＥＳ）、処理はＳ３５４へと移される。もしそうでないと（Ｓ３５２にてＮＯ）、処理はＳ３５６へと移される。
【０１９０】
Ｓ４４４にて、計算部１０３３は、カウンタ変数ＩにＩＭＩＮの値を代入する。Ｓ４４６にて、計算部１０３３は、カウンタ変数ＪにＩＭＩＮの値を代入する。
【０１９１】
Ｓ４４８にて、計算部１０３３は、カウンタ変数ＪがＩＭＡＸ未満か否かを判断する。カウンタ変数ＪがＩＭＡＸ未満と判断した場合には（Ｓ４４８にてＹＥＳ）、処理はＳ３７２へと移される。もしそうでないと（Ｓ４４８にてＮＯ）、処理はＳ３７４へと移される。
【０１９２】
Ｓ４５０にて、計算部１０３３は、カウンタ変数Ｉの値がＩＭＡＸより小さいか否かを判断する。カウンタ変数Ｉの値がＩＭＡＸより小さいと判断した場合には（Ｓ４５０にてＹＥＳ）、処理はＳ３８０へと移される。もしそうでないと（Ｓ３７８にてＮＯ）、処理は終了する。
【０１９３】
なお、その他の処理フローについては前述の第１の実施の形態と同じである。それらについての機能も同じである。したがって、それらについての詳細な説明はここでは繰返さない。
【０１９４】
以上のような構造およびフローチャートに基づく、画像照合装置１００の動作について説明する。
【０１９５】
Ｓ３１０までの処理を経て、制御部１０３５は、探索部１０３２へ、マッチングを開始する旨の信号を送る。その後制御部１０３５は、マッチングが終了した旨の信号を受信するまで待機する。探索部１０３２は、カウンタ変数ＩにＩＭＩＮの値を代入する（Ｓ４４０）。カウンタ変数ＩにＩＭＩＮの値が代入されると、Ｓ３４２〜Ｓ３５０の処理を経て、探索部１０３２は、カウンタ変数Ｉの値がＩＭＡＸ以下か否かを判断する（Ｓ４４２）。当初、ＩＭＡＸ以下と判断されるので（Ｓ４４２にてＹＥＳ）、Ｓ３４２〜Ｓ３５４の処理が繰返される。
【０１９６】
その後、カウンタ変数Ｉの値がＩＭＡＸを上回ると判断されると（Ｓ４４２にてＮＯ）、Ｓ３５６の処理を経て、計算部１０３３は、カウンタ変数ＩにＩＭＩＮの値を代入する（Ｓ４４４）。ＩＭＩＮの値が代入されると、Ｓ３６０の処理を経て、計算部１０３３は、カウンタ変数ＪにＩＭＩＮの値を代入する（Ｓ４４６）。ＩＭＩＮの値が代入されると、Ｓ３６４〜Ｓ３６８の処理を経て、計算部１０３３は、カウンタ変数ＪがＩＭＡＸ未満か否かを判断する（Ｓ４４８）。当初、カウンタ変数ＪはＩＭＡＸ未満と判断されるので（Ｓ４４８にてＹＥＳ）、Ｓ３６０〜Ｓ３７２の処理が繰返される。
【０１９７】
その後、カウンタ変数Ｊの値がＩＭＡＸ以上と判断されると（Ｓ４４８にてＮＯ）、Ｓ３７４〜Ｓ３７６の処理を経て、計算部１０３３は、カウンタ変数Ｉの値がＩＭＡＸより小さいか否かを判断する（Ｓ４５０）。カウンタ変数Ｉの値がＩＭＡＸより小さい間（Ｓ４５０にてＹＥＳ）、Ｓ３６０〜Ｓ３８０の処理が繰返される。
【０１９８】
その後、カウンタ変数Ｉの値がＩＭＡＸ以上と判断されると（Ｓ４５０にてＮＯ）、Ｓ３２６〜Ｓ３３０の処理を経て、探索部１０３２などは、判定部１０３４が設定した、マッチングを行なう部分領域について、マッチングと類似度の計算とを実施する（Ｓ４３２）。マッチングと類似度の計算とが実施されると、判定部１０３４は、類似度の最大値Ｐ（Ａ，Ｂ）が閾値Ｔ（１）以上か否かを判断する（Ｓ３３４）。これにより、判定部１０３４は、第１の部分とテンプレート画像のいずれかの部分とが一致する可能性がある場合に、センシング画像のうち除外領域以外の部分領域がテンプレート画像のいずれかの部分に一致するか否かを判断することとなる。
【０１９９】
以上のようにして、本案施の形態に係る画像照合装置は、中心領域に照合の対象外となる画像が検出されると、その領域を照合の対象外となる領域として扱うため、周辺領域の照合が可能となる。
【０２００】
その結果、一方の画像の一部分のみで他方の画像と同一か否かの判断ができる場合はそこで照合を終了し、かつ残りの部分の画像の照合を省略するような画像照合装置、画像照合方法、画像照合プログラムであって、一方の画像の一部分が汚れなどによって照合の対象外となっても、本来照合できる画像で限り照合を実施できる、画像照合装置、画像照合方法、画像照合プログラムを提供できる。
【０２０１】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【図面の簡単な説明】
【０２０２】
【図１】本発明の第１の実施の形態に係る画像照合装置の機能的構成を表わすブロック図である。
【図２】本発明の第１の実施の形態に係る画像の、部分領域の配置を表わす図である。
【図３】本発明の第１の実施の形態に係る部分領域の配置と名称との関係を表わす図である。
【図４】本発明の第１の実施の形態に係る画像照合装置を実現するコンピュータハードウェアの構成を表わすブロック図である。
【図５】本発明の第１の実施の形態に係る指紋の照合処理の制御の手順を示すフローチャートである。
【図６】本発明の第１の実施の形態に係る部分領域における各画素の状態を表わす図である。
【図７】本発明の第１の実施の形態に係る特徴情報の特定処理の制御の手順を示すフローチャートである。
【図８】本発明の第１の実施の形態に係る最大値ＭＡＸＨＬＥＮの算出処理の制御の手順を示すフローチャートである。
【図９】本発明の第１の実施の形態に係る最大値ＭＡＸＶＬＥＮの算出処理の制御の手順を示すフローチャートである。
【図１０】本発明の第１の実施の形態に係る特徴情報の書換え処理の制御の手順を示すフローチャートである。
【図１１】本発明の第１の実施の形態に係る類似度の計算処理および照合の判定処理の制御の手順を示すフローチャートである。
【図１２】本発明の第１の実施の形態に係るマッチングおよび類似度の計算処理の制御の手順を示すフローチャートである。
【図１３】本発明の第１の実施の形態に係る照合の対象外と判定された部分領域が存在する場合の類似度の計算処理の制御の手順を示すフローチャートである。
【図１４】本発明の第１の実施の形態に係る一致度の算出処理の制御の手順を示すフローチャートである。
【図１５】本発明の第１の実施の形態に係るセンシング画像を表わす図である。
【図１６】本発明の第１の実施の形態に係るテンプレート画像の例を表わす図である。
【図１７】本発明の第１の実施の形態に係る特徴情報の例を、部分領域の配置に対応付けて表わす図である。
【図１８】本発明の第１の実施の形態に係る値が書換えられた後の特徴情報の例を、部分領域の配置に対応付けて表わす図である。
【図１９】本発明の第１の実施の形態に係る入力画像のうち、照合の対象外と判定された部分領域を除いたものを表わす概念図である。
【図２０】本発明の第２の実施の形態に係る類似度の計算処理および照合の判定処理の制御の手順を示すフローチャートである。
【図２１】本発明の第２の実施の形態に係るマッチングおよび類似度の計算処理の制御の手順を示すフローチャートである。
【符号の説明】
【０２０３】
１００  画像照合装置、１０１  入力部、１０２  記憶部、１０３  処理部、１０４  出力部、１０５  バス、６１０  ディスプレイ、６２２  ＣＰＵ、６２４  メモリ、６２６  固定ディスク、６３０  ＦＤ駆動装置、６３２  ＦＤ、６４０  ＣＤ−ＲＯＭ駆動装置、６４２  ＣＤ−ＲＯＭ、６５０  キーボード、６６０  マウス、６８０  通信インターフェイス、６９０  プリンタ、１０２１  参照ブロック、１０２２  計算ブロック、１０２３  画像ブロック、１０２４  第１領域、１０２５  第２領域、１０３１  補正部、１０３２  探索部、１０３３  計算部、１０３４  判定部、１０３５  制御部。
【図１】
2007094689.tif 000007
【図２】
2007094689.tif 000008
【図３】
2007094689.tif 000009
【図４】
2007094689.tif 000010
【図５】
2007094689.tif 000011
【図６】
2007094689.tif 000012
【図７】
2007094689.tif 000013
【図８】
2007094689.tif 000014
【図９】
2007094689.tif 000015
【図１０】
2007094689.tif 000016
【図１１】
2007094689.tif 000017
【図１２】
2007094689.tif 000018
【図１３】
2007094689.tif 000019
【図１４】
2007094689.tif 000020
【図１５】
2007094689.tif 000021
【図１６】
2007094689.tif 000022
【図１７】
2007094689.tif 000023
【図１８】
2007094689.tif 000024
【図１９】
2007094689.tif 000025
【図２０】
2007094689.tif 000026
【図２１】
2007094689.tif 000027