(57)【特許請求の範囲】
【請求項１】
指紋の画像を取得する第１取得ステップと、
前記第１取得ステップによって取得された前記指紋の画像の任意の複数の点のそれぞれを中心とする所定半径の円周上に対応する複数の画素のそれぞれの濃度を、前記複数の点毎に取得する第２取得ステップと、
前記第２取得ステップによって前記複数の点毎に取得された複数の前記濃度の前記円周上の並び順に基づいて、前記複数の点毎の位相スペクトルに対応する位相情報を、前記複数の点毎に算出する位相算出ステップと、
前記位相算出ステップによって前記複数の点毎に算出された複数の前記位相情報に関連するデータを、前記複数の点毎に記憶部に記憶する関連データ記憶ステップと、
前記第２取得ステップによって前記複数の点毎に取得された前記複数の濃度の前記円周上の並び順に基づいて、前記複数の点毎に振幅スペクトルを算出する振幅算出ステップと、
前記振幅算出ステップによって前記複数の点毎に算出された複数の前記振幅スペクトルのそれぞれに対応する複数のピーク周波数を、前記複数の点毎に前記記憶部に記憶する振幅記憶ステップと
を、データ作成装置のプログラムに実行させるためのデータ作成プログラム。
【請求項２】
前記位相算出ステップは、前記第２取得ステップによって前記複数の点毎に取得された前記複数の濃度に基づき、ＤＦＴ処理によって前記位相スペクトルを算出し、対応する前記位相情報を算出することを特徴とする請求項１に記載のデータ作成プログラム。
【請求項３】
前記位相算出ステップは、前記ＤＦＴ処理によって算出した複数の実部の累計値をΣＲｅ（ｎ）、複数の虚部の累計値をΣＩｍ（ｎ）と表記した場合、ａｒｃｔａｎ（ΣＩｍ（ｎ）／ΣＲｅ（ｎ））によって算出される値を前記位相情報として算出することを特徴とする請求項２に記載のデータ作成プログラム。
【請求項４】
指紋の画像を取得する第１取得ステップと、
前記第１取得ステップによって取得された前記指紋の画像の任意の複数の点のそれぞれを中心とする所定半径の円周上に対応する複数の画素のそれぞれの濃度を、前記複数の点毎に取得する第２取得ステップと、
前記第２取得ステップによって前記複数の点毎に取得された複数の前記濃度の前記円周上の並び順に基づいて、前記複数の点毎の位相スペクトルに対応する位相情報を、前記複数の点毎に算出する位相算出ステップと、
前記位相算出ステップによって前記複数の点毎に算出された複数の前記位相情報に関連するデータを、前記複数の点毎に記憶部に記憶する関連データ記憶ステップと、
前記第２取得ステップによって前記複数の点毎に取得された前記複数の濃度の前記円周上の並び順に基づいて、前記複数の点毎に振幅スペクトルを算出する振幅算出ステップと、
前記振幅算出ステップによって前記複数の点毎に算出された複数の前記振幅スペクトルのそれぞれに対応する複数のピーク周波数を、前記複数の点毎に前記記憶部に記憶する振幅記憶ステップと
を備えたことを特徴とするデータ作成方法。
【請求項５】
指紋の画像を取得する第１取得手段と、
前記第１取得手段によって取得された前記指紋の画像の任意の複数の点のそれぞれを中心とする所定半径の円周上に対応する複数の画素のそれぞれの濃度を、前記複数の点毎に取得する第２取得手段と、
前記第２取得手段によって前記複数の点毎に取得された複数の前記濃度の前記円周上の並び順に基づいて、前記複数の点毎の位相スペクトルに対応する位相情報を、前記複数の点毎に算出する位相算出手段と、
前記位相算出手段によって前記複数の点毎に算出された複数の前記位相情報に関連するデータを、前記複数の点毎に記憶部に記憶する関連データ記憶手段と、
前記第２取得手段によって前記複数の点毎に取得された前記複数の濃度の前記円周上の並び順に基づいて、前記複数の点毎に振幅スペクトルを算出する振幅算出手段と、
前記振幅算出手段によって前記複数の点毎に算出された複数の前記振幅スペクトルのそれぞれに対応する複数のピーク周波数を、前記複数の点毎に前記記憶部に記憶する振幅記憶手段と
を備えたことを特徴とするデータ作成装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、指紋認証に使用されるデータを作成するデータ作成プログラム、データ作成方法、及び、データ作成装置に関する。
【背景技術】
【０００２】
近年、スマートフォンやノートパソコンのようなモバイル機器の性能は向上し、扱われる情報は高度化している。このため、指紋の認証機能を有するモバイル機器が広く普及している。モバイル機器に指紋センサーが搭載される場合、デザインやスペースの制約上、指紋センサーは、小さく且つユニークな形状となる場合が多い。例えば、従来からボタンとして使用されていた部品に指紋センサーの機能を持たせた携帯電話が知られている（特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００９−４８４１８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
指紋センサーの小型化に伴い、取得される指紋の画像も小さくなる。又、ユーザーは、モバイル機器を所持した側の手の指を、モバイル機器に搭載された指紋センサーに接触させることによって、指紋の入力操作を行う場合が多い。この場合、指を不自然な向きに移動させなければならないので、指紋の入力操作は不安定になり易く、指紋画像の位置ずれや回転が起こりやすい。従って、より小さく且つ不安定な入力操作に基づいて取得される指紋の画像（例えば、５〜１０ｍｍ四方の指紋の画像）の認証を高精度に行うための技術が要求されている。
【０００５】
本発明の目的は、小さく、且つ、不安定な入力操作に基づいて取得された指紋の画像を、十分な精度で認証できるデータを作成するためのデータ作成プログラム、データ作成方法、及び、データ作成装置を提供することである。
【課題を解決するための手段】
【０００６】
本発明の第１態様に係るデータ作成プログラムは、指紋の画像を取得する第１取得ステップと、前記第１取得ステップによって取得された前記指紋の画像の任意の複数の点のそれぞれを中心とする所定半径の円周上に対応する複数の画素のそれぞれの濃度を、前記複数の点毎に取得する第２取得ステップと、前記第２取得ステップによって前記複数の点毎に取得された複数の前記濃度の前記円周上の並び順に基づいて、前記複数の点毎の位相スペクトルに対応する位相情報を、前記複数の点毎に算出する位相算出ステップと、前記位相算出ステップによって前記複数の点毎に算出された複数の前記位相情報に関連するデータを、前記複数の点毎に記憶部に記憶する関連データ記憶ステップと、前記第２取得ステップによって前記複数の点毎に取得された前記複数の濃度の前記円周上の並び順に基づいて、前記複数の点毎に振幅スペクトルを算出する振幅算出ステップと、前記振幅算出ステップによって前記複数の点毎に算出された複数の前記振幅スペクトルのそれぞれに対応する複数のピーク周波数を、前記複数の点毎に前記記憶部に記憶する振幅記憶ステップとを、データ作成装置のプログラムに実行させる。
【０００７】
第１態様によれば、データ作成プログラムを実行することによって動作するデータ作成装置は、指紋の画像の任意の複数の点のそれぞれを中心とする円周上の複数の位置に対応する画素の濃度に基づいて、複数の点毎に、位相情報に関連するデータを特定する。データ作成装置は、特定したデータを、指紋の認証を行うために使用可能なデータとして、複数の点毎に記憶部に記憶する。
【０００８】
なお、指紋の画像に含まれる隆線の延びる方向と、位相情報に関連するデータによって特定される方向とは、良好に近似する。このため、記憶部に記憶されたデータを用いて指紋の認証を行う認証装置は、位相情報に関連するデータのそれぞれの位置の類似度を判断することによって、指紋を照合できる。又、位相情報は複数の点毎に特定されるので、指紋の画像が小さい場合でも、位相情報を多く特定できる。従って、認証装置は、指紋の画像が小さく、且つ、指紋の画像が不安定な入力操作に基づいて取得された場合でも、十分な精度で指紋の認証を行うことができる。このように、データ作成装置は、認証装置が十分な精度で指紋の認証を行うことが可能なデータを作成できる。
又、認証装置は、記憶部に記憶された位相情報に関連するデータとピーク周波数とに基づいて指紋の認証を行うことができる。従って、認証装置は、位相情報に関連するデータのみに基づいて指紋の認証を行う場合と比べて、認証の精度を更に向上させることができる。
【０００９】
第１態様において、前記位相算出ステップは、前記第２取得ステップによって前記複数の点毎に取得された前記複数の濃度に基づき、ＤＦＴ処理によって前記位相スペクトルを算出し、対応する前記位相情報を算出してもよい。この場合、データ作成装置は、複数の画素のそれぞれの濃度に基づいて任意の点の振幅スペクトルを算出できる。
【００１０】
【００１１】
第１態様において、前記位相算出ステップは、前記ＤＦＴ処理によって算出した複数の実部の累計値をΣＲｅ（ｎ）、複数の虚部の累計値をΣＩｍ（ｎ）と表記した場合、ａｒｃｔａｎ（ΣＩｍ（ｎ）／ΣＲｅ（ｎ））によって算出される値を前記位相情報として算出してもよい。この場合、データ作成装置は、位相情報を容易に算出できる。
【００１２】
本発明の第２態様に係るデータ作成方法は、指紋の画像を取得する第１取得ステップと、前記第１取得ステップによって取得された前記指紋の画像の任意の複数の点のそれぞれを中心とする所定半径の円周上に対応する複数の画素のそれぞれの濃度を、前記複数の点毎に取得する第２取得ステップと、前記第２取得ステップによって前記複数の点毎に取得された複数の前記濃度の前記円周上の並び順に基づいて、前記複数の点毎の位相スペクトルに対応する位相情報を、前記複数の点毎に算出する位相算出ステップと、前記位相算出ステップによって前記複数の点毎に算出された複数の前記位相情報に関連するデータを、前記複数の点毎に記憶部に記憶する関連データ記憶ステップと前記第２取得ステップによって前記複数の点毎に取得された前記複数の濃度の前記円周上の並び順に基づいて、前記複数の点毎に振幅スペクトルを算出する振幅算出ステップと、前記振幅算出ステップによって前記複数の点毎に算出された複数の前記振幅スペクトルのそれぞれに対応する複数のピーク周波数を、前記複数の点毎に前記記憶部に記憶する振幅記憶ステップとを備えたことを特徴とする。第２態様によれば、第１態様と同様の効果を奏することができる。
【００１３】
本発明の第３態様に係るデータ作成装置は、指紋の画像を取得する第１取得手段と、前記第１取得手段によって取得された前記指紋の画像の任意の複数の点のそれぞれを中心とする所定半径の円周上に対応する複数の画素のそれぞれの濃度を、前記複数の点毎に取得する第２取得手段と、前記第２取得手段によって前記複数の点毎に取得された複数の前記濃度の前記円周上の並び順に基づいて、前記複数の点毎の位相スペクトルに対応する位相情報を、前記複数の点毎に算出する位相算出手段と、前記位相算出手段によって前記複数の点毎に算出された複数の前記位相情報に関連するデータを、前記複数の点毎に記憶部に記憶する関連データ記憶手段と、前記第２取得手段によって前記複数の点毎に取得された前記複数の濃度の前記円周上の並び順に基づいて、前記複数の点毎に振幅スペクトルを算出する振幅算出手段と、前記振幅算出手段によって前記複数の点毎に算出された複数の前記振幅スペクトルのそれぞれに対応する複数のピーク周波数を、前記複数の点毎に前記記憶部に記憶する振幅記憶手段とを備えたことを特徴とする。第３態様によれば、第１態様と同様の効果を奏することができる。
【図面の簡単な説明】
【００１４】
【図１】認証システム１の機能ブロック図である。
【図２】指紋画像６を示す図である。
【図３】円７上の複数の点に対応する濃度を取得する機能を説明するための図である。
【図４】円７の周上の位置における濃度の一例を示すグラフである。
【図５】フィルタリング処理後の指紋画像６１を示す図である。
【図６】移動平均により平滑化された濃度一例を示すグラフである。
【図７】振幅スペクトルの一例を示すグラフである。
【図８】方向データの特定方法を説明するための図である。
【図９】方向データの特定方法を説明するための図である。
【図１０】指紋画像６と方向データに対応する画像６５との関係を示す図である。
【図１１】データ作成装置３、及び、認証装置５の電気的構成を示すブロック図である。
【図１２】第１メイン処理のフローチャートである。
【図１３】特徴データを示す図である。
【図１４】指紋データを示す図である。
【図１５】第２メイン処理のフローチャートである。
【発明を実施するための形態】
【００１５】
本発明の一実施形態について、図面を参照して説明する。なお、以下の実施形態において例示した具体的な複数の数値は一例であり、本発明はこれらの複数の数値に限定されない。
【００１６】
＜認証システム１の概要＞
図１を参照し、認証システム１の概要について説明する。認証システム１は、指紋によってユーザーを認証するためのシステムである。認証システム１は、データ作成装置３、及び、認証装置５を備えている。認証装置５は、指紋による認証機能を備えた電子機器である。本実施形態において、認証装置５は周知のスマートフォンである。データ作成装置３は、認証装置５が指紋による認証を行なうために必要な指紋データ（図１４参照）を生成し、認証装置５のフラッシュメモリ５０４（図１１参照）に記憶された指紋データベース（ＤＢ）６０に登録する。本実施形態において、データ作成装置３は周知のＰＣである。
【００１７】
なお、認証システム１は上記構成に限定されない。例えば認証システム１は、データ作成装置３及び認証装置５の機能を備えた単一の装置のみを有していてもよい。具体的には、認証システム１は、指紋データの生成機能、及び、指紋の認証機能を有する認証装置５であってもよい。認証装置５はスマートフォンに限定されず、ノートＰＣ、タブレットＰＣ、携帯電話、ＡＴＭ、及び、入退室管理装置の何れかであってもよい。データ作成装置３はＰＣに限定されず、サーバー、又は、指紋データを生成するための専用機器であってもよい。
【００１８】
指紋ＤＢ６０は、データ作成装置３のＨＤＤ３０４（図１１参照）に記憶されてもよい。認証装置５は、データ作成装置３のＨＤＤ３０４に記憶された指紋ＤＢ６０を参照することによって、指紋の認証を実行してもよい。又、指紋ＤＢ６０は、ネットワークに接続する図示外のサーバーに記憶されてもよい。この場合、データ作成装置３は、サーバーに記憶された指紋ＤＢ６０に生成した指紋データを登録してもよい。又、認証装置５は、サーバーに記憶された指紋ＤＢ６０を参照することによって、指紋の認証を実行してもよい。
【００１９】
＜データ作成装置３の機能＞
データ作成装置３は、指紋画像取得部３２、極座標取得部３３、ＤＦＴ演算部３４、振幅スペクトル算出部３５、ピーク周波数抽出部３６、位相情報算出部３７、方向データ特定部３８、及び、登録部３９のそれぞれの機能ブロックに対応する処理を、ＣＰＵ３０１（図１１参照）によって実行する。データ作成装置３には、指紋センサー３１が接続される。
【００２０】
指紋センサー３１は、マトリクス状の表面電極の電荷量から指紋の凹凸を判定する、静電容量方式の面型センサーである。指紋センサー３１の大きさは、後述する指紋センサー５１と同一の大きさ、又は、指紋センサー５１よりも大きいことが好ましい。指紋センサー３１の大きさは特に限定されないが、例えば、５×５ｍｍの指紋センサー３１を適用できる。指紋センサー３１の解像度は、後述する指紋センサー５１と同一か、又は、指紋センサー５１よりも大きいことが好ましい。指紋センサー３１の解像度は特に限定されないが、例えば、５０８ｄｐｉ、又は、３６３ｄｐｉの指紋センサー３１を適用できる。以下では、指紋センサー３１の解像度が５０８ｄｐｉである場合を例に挙げて、具体的に説明する。
【００２１】
なお指紋センサー３１の検出方式は静電容量方式に限定されず、他の方式（例えば、電界式、圧力式、光学式）であってもよい。又、指紋センサー３１は面型に限定されず、線型であってもよい。指紋センサー３１の大きさ及び解像度は、上記の具体例に限定されない。
【００２２】
指紋画像取得部３２では、指紋センサー３１に指が接触した状態で指紋センサー３１から出力される信号に基づいて、指紋センサー３１に接触した指の指紋の凹凸がグレースケールで示された画像が取得される。以下、指紋センサー３１から出力される信号に基づいて取得される画像を、「指紋画像」という。指紋センサー３１の１ドットは、指紋画像の１画素に対応する。図２は、指紋画像取得部３２によって取得された指紋画像の一例である、指紋画像６を示している。指紋画像６の画素数、２００画素（横方向）×４００画素（縦方向）である。指紋画像６には、指紋の凸部の連なりである隆線の行き止まりの端点６Ａ、二つに分かれる分岐点６Ｂ等が含まれる。以下、指紋の端点、分岐点等を総称し、「複数の特徴点」という。
【００２３】
図２の横方向を、指紋画像６のＸ方向といい、図２の縦方向を、指紋画像６のＹ方向という。図２の右方向を、Ｘ方向の正方向といい、図２の左方向を、Ｘ方向の負方向という。図２の下方向を、Ｙ方向の正方向といい、図２の上方向を、Ｙ方向の負方向という。指紋画像６の左上の画素の位置を、直交座標の原点（０，０）とする。直交座標の原点からＸ方向にｘ画素分離隔し、原点からＹ方向にｙ画素分離隔した画素の位置を、直交座標（ｘ，ｙ）と表記する。以下では、指紋画像６が指紋画像取得部３２によって取得された場合を例に挙げて、具体的に説明する。なお、指紋画像６の画素数は、上記の具体例に限定されない。
【００２４】
図１に示すように、極座標取得部３３では、以下の方法で指紋画像６から複数の位置が特定され、特定された複数の位置のそれぞれに対応する濃度が取得される。はじめに、図３（Ａ）に示すように、指紋画像取得部３２によって取得された指紋画像６の枠６Ｄ（図２参照）に含まれる複数の画素の何れか１つが、半径ｒの円７（図３（Ｂ）参照）の中心点７Ａとして決定される。半径ｒの値は特に限定されないが、例えば、指紋画像６の解像度が５０８ｄｐｉの場合に１５画素とされ、指紋画像６の解像度が３６３ｄｐｉの場合に１１画素とされる。本実施形態の場合、指紋センサー３１の解像度を５０８ｄｐｉとしているので、以下では、半径ｒが１５画素である場合を例に挙げて、具体的に説明する。なお、半径ｒの値については、上記の具体例に限定されない。
【００２５】
次に、図３（Ｂ）に示すように、中心点７Ａを中心とする半径ｒの円７の周上の所定数の位置が順番に決定される。以下、所定数を「Ｋ１」と表記する。具体的には、中心点７Ａを極座標の原点とした場合に、半径ｒ及び偏角θによって示される極座標（ｒ，θ）の位置（円７の周上の位置）が、偏角θを、０（中心点７Ａから右方水平方向に延びる向き）から（２π／Ｋ１）度ずつ２πまで時計回りに変化させながら、順番にＫ１個決定される。以下、決定されたＫ１個の位置のそれぞれを、「サンプル」という。Ｋ１の値は特に限定されない。以下では、Ｋ１が「１２８」である場合を例に挙げて、具体的に説明する。
【００２６】
次に、図３（Ｃ）に示すように、決定された１２８個のサンプルのそれぞれに対応する濃度が取得される。具体的には、周知のバイリニア法に基づき、円７の周上の１２８個のサンプルの位置のそれぞれの上下左右に隣接する画素のそれぞれの濃度の重み付け演算によって、それぞれのサンプルに対応する濃度として算出される。なお、重み付け演算を行う場合の重み付け係数は、ＨＤＤ３０４に予め記憶されていてもよい。
【００２７】
図４は、偏角θを０から２πまで変化させたときの１２８個のサンプルのそれぞれに対応する濃度をプロットし、直線で接続したグラフの一例を示す。このように、サンプルの取得順、即ち、偏角θ順に濃度を並べた場合の結果は、周期的に配置された複数のピークを有する折れ線になる。
【００２８】
図３（Ａ）〜（Ｃ）の処理は、指紋画像６に含まれる２００×４００の複数の画素のうち、上端、下端、左端、及び、右端のそれぞれから半径ｒ（１５画素）分内側に配置された、図２における枠６Ｃ内の複数の画素のそれぞれについて実行される。なお、枠６Ｃ内には、（１７０（＝（２００−２×１５））×３７０（＝（４００−２×１５））の複数の画素が配置されている。
【００２９】
なお、極座標取得部３３において、指紋画像６に基づいて濃度が取得される前に、指紋画像６に対してフィルタリング処理が実行されてもよい。具体的には次の通りである。例えば図５に示すように、指紋画像６（図５（Ａ））に対して、高周波成分をノイズとして除去するためのフィルタリング処理が実行され、指紋画像６１（図５（Ｂ））が生成されてもよい。そして、高周波成分が除去された指紋画像６１に対して、図３（Ａ）〜（Ｃ）の処理が実行され、濃度が取得されてもよい。なお、フィルタリング処理が実行されることによって、元の指紋画像６のエッジ部分の濃淡変化は緩やかになる。フィルタリング処理に用いられるフィルタとして、周知のローパスフィルタ、ガウシアンフィルタ、移動平均フィルタ、メディアンフィルタ、平均化フィルタの何れかが用いられてもよい。又、例えば、特定の周波数帯成分のみを抽出するためのフィルタリング処理が指紋画像６に対して実行されてもよい。特定の周波数帯域として、指紋の凹凸の周期を含む帯域が選択されてもよい。フィルタリング処理に用いられるフィルタとして、周知のバンドパスフィルタが用いられてもよい。
【００３０】
又、極座標取得部３３において、指紋画像６に基づいて濃度が取得された後、図４で示される折れ線波形を移動平均によって平滑化してもよい。図６は、図４で示されるグラフを移動平均によって平滑化した結果を示す。図６に示すように、平滑化が実行されることによって、濃度の折れ線波形の変化は平滑化される。
【００３１】
なお、以上のフィルタリング処理又は平滑化を行う理由は、次の通りである。検出方式や型式の異なる指紋センサー３１から取得される指紋画像では、解像度、階調等の特性に差異が生じる場合がある。又、指紋センサー３１の検出方式や型式によっては、取得される指紋画像にノイズが多く含まれたり、指紋画像の白黒が反転して取得されたりする場合がある。このような場合、フィルタリング処理又は平滑化によって、差分を吸収し、後段の処理に適した状態にすることができる場合がある。
【００３２】
図１に示すように、ＤＦＴ演算部３４では、極座標取得部３３によって取得された１７０×３７０の複数の画素のそれぞれに対応する１２８個の濃度に基づいて、周知の離散フーリエ変換（Discrete Fourier Transform ＤＦＴ）演算が行われる。ＤＦＴ演算によって、１２８の周波数成分毎に実部と虚部とが算出される。以下、算出される実部を「Ｒｅ」と表記し、虚部を「Ｉｍ」と表記する。ＤＦＴ演算によって算出された、１２８の周波数成分のそれぞれに対応するＲｅおよびＩｍを、それぞれ、「Ｒｅ（ｎ）」「Ｉｍ（ｎ）」と表記する。ｎ＝０，１，２，３，・・・１２７である。Ｒｅ（ｎ）及びＩｍ（ｎ）は、１７０×３７０の複数の画素毎に算出される。
【００３３】
振幅スペクトル算出部３５では、ＤＦＴ演算部３４によって１７０×３７０の複数の画素毎に算出されたＲｅ（ｎ）、及び、Ｉｍ（ｎ）のそれぞれに基づいて、以下の（１）式によって振幅スペクトルが算出される。以下、算出される振幅スペクトルを「Ａ（ｎ）」と表記する。Ａ（ｎ）は、１７０×３７０の複数の画素毎に算出される。
Ａ（ｎ）＝√（Ｒｅ（ｎ）２＋Ｉｍ（ｎ）２）（ｎ＝０，１，２，・・・１２７）・・・（１）
【００３４】
図７は、１７０×３７０の複数の画素のうち１つの画素に対応する振幅スペクトルの一例であって、ｎ＝０〜６３に対応する振幅スペクトル（Ａ（０）〜Ａ（６３））をプロットし、直線で接続したグラフを示す。なお、標本化定理により、ｎ＝６４〜１２７に対応する振幅スペクトル（Ａ（６４）〜Ａ（１２７））は、Ａ（０）〜Ａ（６３）を左右反転した形状を有する。このため図７においては、振幅スペクトル（Ａ（６４）〜Ａ（１２７））は省略されている。
【００３５】
図１に示すように、ピーク周波数抽出部３６では、振幅スペクトル算出部３５によって算出された振幅スペクトルのうち、振幅の大きい順に所定数分のピークに対応するｎが、ピーク周波数として所定数分抽出される。以下、所定数を「Ｋ２」と表記する。この場合、Ｋ２を調整することによって、抽出されるピーク周波数の数を調整できる。又、Ｋ２を調整することによって、全てのピークに対応するｎをピーク周波数として抽出する場合と比較して、１つの画素に対応するピーク周波数のデータ量を抑制できる場合がある。以下では、Ｋ２が「４」である場合を例に挙げて説明する。なお、Ｋ２の値については、上記の具体例に限定されず、２以上の任意の値であればよい。
【００３６】
なお、指紋画像６にフィルタリング処理が実行された指紋画像６（例えば、指紋画像６１（図５参照））に基づき、振幅スペクトル算出部３５によって振幅スペクトルが算出された場合、ノイズ成分である高周波成分に対応するピークが低くなる。この場合、適切なピーク周波数が抽出され易くなる。
【００３７】
登録部３９では、ピーク周波数抽出部３６によって抽出されたピーク周波数を示すデータが、後述する認証装置５のフラッシュメモリ５０４（図１１参照）に記憶された指紋ＤＢ６０に登録される。なお登録部３９では、後述する方向データ特定部３８によって特定される方向データも指紋ＤＢ６０に登録される。詳細は後述する。
【００３８】
位相情報算出部３７では、ＤＦＴ演算部３４によって１７０×３７０の複数の画素毎に算出されたＲｅ（ｎ）及びＩｍ（ｎ）に基づき、以下の方法によって位相情報が算出される。はじめに、ｎが所定の第１数から所定の第２数までのそれぞれのＲｅ（ｎ）を累計した値が算出される。以下、Ｒｅ（ｎ）を累計した値を、「ΣＲｅ（ｎ）」と表記する。次に、ｎが第１数から第２数までのそれぞれのＩｍ（ｎ）を累計した値が算出される。以下、Ｉｍ（ｎ）を累計した値を、「ΣＩｍ（ｎ）」と表記する。所定の第１数を「Ｋ３」と表記し、所定の第２数を「Ｋ４」と表記する。以下では、Ｋ３が「１」であり、Ｋ４が「１５」である場合を例に挙げて具体的に説明する。なお、Ｋ３、Ｋ４の値については、上記の具体例に限定されない。Ｋ３は、１以上の任意の数であってもよい。Ｋ４は、「Ｋ３＋１」以上１２７以下の任意の値であればよい。例えば、Ｋ３を「２」とし、Ｋ４を「１７」としてもよい。
【００３９】
上記において、ｎの値を、１から１５までとしたり、２から１７までとしたりすることの理由は、累計演算の処理量が増加することを抑制するためである。なお、約３０よりも大きいｎは、指紋の凹凸の周波数よりも大きい周波数に対応する。このため、約３０よりも大きいｎに対応するＲｅ（ｎ）及びＩｍ（ｎ）の値は非常に小さくなる可能性が高い。従って、ｎを０から１２７とした場合と、ｎを１から１５まで又は２から１７までに限定した場合とで、算出される位相情報の相違は小さくなる場合が多い。
【００４０】
次に、以下の（２）式に基づいて演算が行われる。算出される値を、「位相情報」といい、「Ｂ（ｉ）」と表記する。ｉは、１７０×３７０の複数の画素のそれぞれが極座標取得部３３において取得された順番を示し、ｉ＝１，２，・・・６２９００（＝１７０×３７０））である。
Ｂ（ｉ）＝ａｒｃｔａｎ（ΣＩｍ（ｎ）／ΣＲｅ（ｎ））（ｉ＝１，２，・・・６２９００）・・・（２）
なお、Ｂ（ｉ）は、−π／２からπ／２までの間の何れかの値となる。
【００４１】
なお、上記の方法によって算出される位相情報は、ｎが１から１５までのそれぞれのＲｅ（ｎ）及びＩｍ（ｎ）に基づいて周波数成分毎に算出される位相スペクトルによって示されるベクトルを、画素毎に合成した合成ベクトルの角度と相関がある。即ち、上記の算出方法は、ｎが１から１５までのそれぞれのＲｅ（ｎ）及びＩｍ（ｎ）に基づいて算出される位相スペクトルに基づいた合成ベクトルの角度を、演算の処理量を抑制しつつ簡易に算出するための方法であるといえる。
【００４２】
方向データ特定部３８は、位相情報算出部３７によって１７０×３７０の複数の画素毎に算出されたＢ（ｉ）に基づき、以下の方法によって、１７０×３７０の複数の画素毎に方向を算出し、方向データを生成する。はじめに、位相情報算出部３７によって算出されたＢ（ｉ）は、以下の（３）式によって、それぞれの位相情報に応じた濃度に変換される。以下、算出される濃度を「Ｄ（ｉ）」と表記する。
Ｄ（ｉ）＝（（Ｂ（ｉ）＋π／２）×２５５）／π（ｉ＝１，２，・・・６２９００）・・・（３）
【００４３】
図８を参照して具体的に説明する。図８（Ａ）は、指紋画像取得部３２によって取得された指紋画像６を示す。図８（Ｂ）は、指紋画像６に対して平滑化処理（図６参照）が実行された後の指紋画像６２を示す。図８（Ｃ）は、指紋画像６２に基づき、上記の方法によって算出されたＤ（ｉ）のグレースケール画像を、対応する画素の位置に配置させた位相情報マップ６３を示す。図８（Ｄ）は、図８（Ｃ）の位相情報マップ６３の一部を抽出して拡大した図である。次に、図８（Ｅ）に示すように、位相情報マップ６３のうち任意の５×５の複数の画素を含む位相情報マップ６４が抽出される。図８（Ｅ）の位相情報マップ６４において、５×５のマトリクスのそれぞれの中の数字は、対応する位置の画素のＤ（ｉ）の値を示している。
【００４４】
以下、５×５の複数の画素のそれぞれの位置を、（Ｘｉ，Ｙｉ）と表記し、対応する濃度を、「Ｄ（Ｘｉ／Ｙｉ）」と表記する。Ｘｉは、横方向の画素の位置を、左端の画素を基準とした場合の右方向の画素数（１〜５）によって示す。Ｙｉは、縦方向の画素の位置を、上端の画素を基準とした場合の下方向の画素数（１〜５）によって示す。
【００４５】
次に、５×５の複数の画素のうち（３，３）の位置に対応する方向が、以下のようにして特定される。下記の算出結果のそれぞれを、「Ｒ（ｊ）」と表記する。具体的には、
「Ｄ（３／３）−Ｄ（２／１）」を「Ｒ（２／１）」と表記する。「Ｄ（３／３）−Ｄ（３／１）」を「Ｒ（３／１）」と表記する。「Ｄ（３／３）−Ｄ（４／１）」を「Ｒ（４／１）」と表記する。「Ｄ（３／３）−Ｄ（１／２）」を「Ｒ（１／２）」と表記する。「Ｄ（３／３）−Ｄ（２／２）」を「Ｒ（２／２）」と表記する。「Ｄ（３／３）−Ｄ（４／２）」を「Ｒ（４／２）」と表記する。「Ｄ（３／３）−Ｄ（５／２）」を「Ｒ（５／２）」と表記する。「Ｄ（３／３）−Ｄ（１／３）」を「Ｒ（１／３）」と表記する。「Ｄ（３／３）−Ｄ（５／３）」を「Ｒ（５／３）」と表記する。「Ｄ（３／３）−Ｄ（１／４）」を「Ｒ（１／４）」と表記する。「Ｄ（３／３）−Ｄ（２／４）」を「Ｒ（２／４）」と表記する。「Ｄ（３／３）−Ｄ（４／４）」を「Ｒ（４／４）」と表記する。「Ｄ（３／３）−Ｄ（５／４）」を「Ｒ（５／４）」と表記する。「Ｄ（３／３）−Ｄ（２／５）」を「Ｒ（２／５）」と表記する。「Ｄ（３／３）−Ｄ（３／５）」を「Ｒ（３／５）」と表記する。「Ｄ（３／３）−Ｄ（４／５）」を「Ｒ（４／５）」と表記する。はじめに、Ｒ（ｊ）と「−１２８」とが比較される。Ｒ（ｊ）が「−１２８」よりも小さい場合、Ｒ（ｊ）に２５６が加算される。Ｒ（ｊ）が「１２７」よりも大きい場合、Ｒ（ｊ）から２５６が減算される。
【００４６】
次に、上記のようにして算出されたＲ（ｊ）が以下の（４）〜（１１）式に適用され、Ｐ１〜Ｐ８が算出される。
Ｐ１＝Ｒ（５／３）２＋Ｒ（１／３）２  ・・・（４）
Ｐ２＝Ｒ（５／４）２＋Ｒ（１／２）２  ・・・（５）
Ｐ３＝Ｒ（４／４）２＋Ｒ（２／２）２  ・・・（６）
Ｐ４＝Ｒ（４／５）２＋Ｒ（２／１）２  ・・・（７）
Ｐ５＝Ｒ（３／５）２＋Ｒ（３／１）２  ・・・（８）
Ｐ６＝Ｒ（２／５）２＋Ｒ（４／１）２  ・・・（９）
Ｐ７＝Ｒ（２／４）２＋Ｒ（４／２）２  ・・・（１０）
Ｐ８＝Ｒ（１／４）２＋Ｒ（５／２）２  ・・・（１１）
算出されるＰ１〜Ｐ８は、それぞれを算出するための２つの画素のそれぞれの濃度と、（３，３）の位置の画素の濃度との差分の大きさを示す。
【００４７】
図９（Ａ）のマトリックス８は、Ｐ１〜Ｐ８のそれぞれが算出される場合に用いられる２つのＤ（Ｘｉ／Ｙｉ）に対応する２つの画素のそれぞれの、５×５の複数の画素中の位置を示している。Ｐ１は、５×５の複数の画素のうち、（３，３）からみて右方向及び左方向のそれぞれに配置された画素に対応する２つのＤ（Ｘｉ／Ｙｉ）に基づいて算出される。Ｐ２、Ｐ３，Ｐ４は、それぞれ、５×５の複数の画素のうち、（３，３）からみて右斜め下方向及び左斜め上方向のそれぞれに配置された画素に対応する２つのＤ（Ｘｉ／Ｙｉ）に基づいて算出される。Ｐ２、Ｐ３，Ｐ４のそれぞれを算出するための２つの画素を結んだ直線の水平方向に対する角度は、Ｐ２、Ｐ３、Ｐ４の順に大きくなる。Ｐ５は、５×５の複数の画素のうち、（３，３）からみて上方向及び下方向のそれぞれに配置された画素に対応する２つのＤ（Ｘｉ／Ｙｉ）に基づいて算出される。Ｐ６、Ｐ７，Ｐ８は、それぞれ、５×５の複数の画素のうち、（３，３）からみて右斜め上方向及び左斜め下方向のそれぞれに配置された画素に対応する２つのＤ（Ｘｉ／Ｙｉ）に基づいて算出される。Ｐ６、Ｐ７，Ｐ８のそれぞれを算出するための２つの画素を結んだ直線の水平方向に対する角度は、Ｐ６、Ｐ７、Ｐ８の順に小さくなる。
【００４８】
次に、算出されたＰ１〜Ｐ８のうち最小値が抽出される。なお（４）〜（１１）式から明らかなように、Ｐ１〜Ｐ８は、それぞれを算出するための２つの画素のそれぞれの濃度と、（３，３）の位置の画素の濃度との差分の大きさを示す。従って、Ｐ１〜Ｐ８のうち最小値を抽出することによって、対応する２つの画素のそれぞれの濃度と、（３，３）の位置の画素の濃度との差分が最も小さい、言い換えれば、濃度の変化の小さい組み合わせを抽出できる。
【００４９】
例えば、図８（Ｅ）及び図９（Ｂ）で示される位相情報マップ６４の５×５の複数の画素のそれぞれのＤ（Ｘｉ／Ｙｉ）が適用された場合、（４）〜（１１）式が適用されることによって、Ｐ１：２００、Ｐ２：２５、Ｐ３：１６４、Ｐ４：１３８１、Ｐ５：１８１０、Ｐ６：１５１７、Ｐ７：１０９６、Ｐ８：１８８９が算出される。又、Ｐ２が最小値（２５）として抽出される。
【００５０】
次に、抽出されたＰ１〜Ｐ８の何れかに対応する２つの画素のそれぞれの中心を結ぶ直線の方向が、５×５の複数の画素のうち（３，３）の位置に対応する方向として特定される。例えば、位相情報マップ６４（図９（Ｂ））の５×５の複数の画素のそれぞれのＤ（Ｘｉ／Ｙｉ）が適用されてＰ１〜Ｐ８が算出され、最小のＰ２が抽出された場合、図９（Ｃ）に示すように、水平方向に対して時計回りに０．１５π回転した方向６４Ａが、（３，３）の位置に対応する方向として特定される。
【００５１】
なおＰ１が最小値として抽出された場合、（３，３）の位置に対応する方向として水平方向が特定される。Ｐ３〜Ｐ８のそれぞれが最小値として抽出された場合、それぞれ、水平方向に対して時計回りに０．２５π、０．３５π、０．５π、０．６５π、０．７５π、０．８５π回転した方向が、（３，３）の位置に対応する方向として特定される。
【００５２】
上記の処理は、１７０×３７０の複数の画素のそれぞれが（３，３）の位置に配置された全ての５×５の複数の画素に対して実行される。この場合、１７０×３７０の複数の画素のうち、上下左右端部から２画素分ずつ内側に配置した、１６６（＝１７０−（２×２））×３６６（＝３７０−（２×２））の複数の画素毎に、方向が特定される。又、特定された方向のそれぞれを、水平方向に対する時計回りの回転角度（０〜π）で示したデータが、「方向データ」として特定される。図９（Ｄ）は、特定された複数の方向のそれぞれを示す線分を、対応する画素の位置に配置させた図である。なお、それぞれの線分を見易くするために、Ｘ方向、及びＹ方向には、８画素間隔で線分を配置させている。
【００５３】
図１に示すように、登録部３９では、方向データ特定部３８によって特定された方向データが、後述する認証装置５のフラッシュメモリ５０４（図１１参照）に記憶された指紋ＤＢ６０に登録される。即ち、登録部３９では、ピーク周波数を示すデータ及び方向データが、指紋ＤＢ６０に登録される。
【００５４】
＜認証装置５の機能＞
認証装置５は、指紋画像取得部５２、極座標取得部５３、ＤＦＴ演算部５４、振幅スペクトル算出部５５、ピーク周波数抽出部５６、位相情報算出部５７、方向データ特定部５８、及び、照合部５９のそれぞれの機能ブロックに対応する処理を、ＣＰＵ５０１（図１１参照）によって実行する。認証装置５には、指紋センサー５１が設けられる。
【００５５】
指紋センサー５１は、指紋センサー３１と同一の原理で動作するセンサーである。指紋センサー５１の大きさは特に限定されないが、例えば、４×１０ｍｍ、８×８ｍｍ、１０×１０ｍｍの指紋センサー５１を適用できる。指紋センサー５１の解像度は特に限定されないが、例えば、５０８ｄｐｉ、３６３ｄｐｉの解像度の指紋センサー５１を適用できる。なお指紋センサー５１の検出方式は静電容量方式に限定されず、他の方式（例えば、電界式、圧力式、光学式）であってもよい。又、指紋センサー５１は面型に限定されず、線型であってもよい。
【００５６】
指紋画像取得部５２、極座標取得部５３、ＤＦＴ演算部５４、振幅スペクトル算出部５５、ピーク周波数抽出部５６、位相情報算出部５７、及び、方向データ特定部５８は、それぞれ、データ作成装置３の指紋画像取得部３２、極座標取得部３３、ＤＦＴ演算部３４、振幅スペクトル算出部３５、ピーク周波数抽出部３６、位相情報算出部３７、及び、方向データ特定部３８と同一の機能を実行できる。これらの詳細な説明は省略する。
【００５７】
照合部５９では、フラッシュメモリ５０４（図１１参照）に記憶された指紋ＤＢ６０に登録されたピーク周波数及び方向データの少なくとも一方が参照され、指紋センサー５１に接触された指の指紋と、データ作成装置３の指紋センサー３１に接触された指の指紋との照合が行われる。具体的には、ピーク周波数が用いられる場合、ピーク周波数抽出部５６によって抽出されたピーク周波数と、指紋ＤＢ６０に登録されたピーク周波数との照合が行われる。方向データが用いられる場合、方向データ特定部５８によって特定された方向データと、指紋ＤＢ６０に登録された方向データとの照合が行われる。照合に成功した場合、データ作成装置３を介して予め登録された指紋を有するユーザーと、認証装置５の指紋センサー５１に接触された指紋を有するユーザーとが同一人物であると判断される。照合に失敗した場合、データ作成装置３を介して予め登録された指紋を有するユーザーと、認証装置５の指紋センサー５１に接触された指紋を有するユーザーとは、異なる人物であると判断される。
【００５８】
ピーク周波数を用いた照合の概要は、次の通りである。以下、ピーク周波数抽出部５６によって複数の画素毎に抽出された４つのピーク周波数を、「４つの取得周波数」という。指紋ＤＢ６０に複数の画素毎に登録されたピーク周波数を、「４つの登録周波数」という。
【００５９】
４つの取得周波数と４つの登録周波数とが全て一致する画素の組み合わせが抽出される。なお、４つが全て一致する画素の組み合わせが１つも存在しない場合、４つの取得周波数と４つの登録周波数とで２つ又は３つが一致する画素の組み合わせが抽出される。画素の組合せが複数抽出された場合、抽出された複数の画素の組み合わせのそれぞれの位置関係が比較され、位置関係の相関が求められる。４つの取得周波数と４つの登録周波数とが一致する数、及び、位置関係の相関に基づいて、類似度が算出される。算出された類似度が所定値よりも大きい場合、照合に成功したと判断され、類似度が所定値よりも小さい場合、照合に失敗したと判断される。即ち、上記の照合方法は、従来のマニューシャ法における複数の特徴点のそれぞれの種別（端点、分岐点、コア、三角州等）の代わりに、ピーク周波数を用いていることになる。
【００６０】
上記の場合、周知のマニューシャ法に基づいた照合方法のように、端点、分岐点、コア、及び、三角州等の特徴点が指紋画像６に含まれていなくても、照合を行うことができる。又、照合の際に比較対象となる取得周波数及び登録周波数を、小さい指紋画像６から多数抽出できる。従って、指紋画像６の大きさが小さい場合でも、より多くのピーク周波数を比較できるので、照合の精度を高めることができる。
【００６１】
方向データを用いた場合の照合の概要は、次の通りである。以下、方向データ特定部５８によって複数の画素毎に特定された方向データによって示される方向を、「取得方向」という。指紋ＤＢ６０に複数の画素毎に登録された方向データによって示される方向を、「登録方向」という。
【００６２】
取得方向と登録方向とが一致する画素の組み合わせが抽出される。画素の組合せが複数抽出された場合、抽出された複数の画素の組み合わせの位置関係が比較され、位置関係の相関が類似度として求められる。類似度が所定値よりも大きい場合、照合に成功したと判断され、類似度が所定値よりも小さい場合、照合に失敗したと判断される。即ち、上記の照合方法は、従来のマニューシャ法における複数の特徴点のそれぞれの方向の代わりに、方向データを用いていることになる。
【００６３】
なお、図１０に示すように、指紋画像６（図１０（Ａ））に、取得方向又は登録方向を線分で示した画像６５（図１０（Ｂ））を重ね合わせた場合を例に挙げる。この場合、図１０（Ｃ）で示されるように、取得方向又は登録方向を示す線分は、指紋画像６で示される指紋の隆線の方向と良好に一致する。又、上記のように、登録方向と取得方向とを比較することによって、周知のマニューシャ法に基づいた照合方法のように、端点、分岐点、及び、三角州等の特徴点が指紋画像６に含まれていなくても、照合を行うことができる。又、照合の際に比較対象となる取得方向及び登録方向を、小さい指紋画像６から多数抽出できる。従って、指紋画像６の大きさが小さい場合でも、より多くの方向を比較できるので、照合の精度を高めることができる。
【００６４】
更に、ピーク周波数に基づいて算出された類似度と、方向に基づいて算出された類似度との加算値を所定値と比較することによって、照合の成否が判断されてもよい。これによって、ピーク周波数と方向とに基づいて照合を行うことができるので、照合の精度を更に高めることができる。
【００６５】
なお、上記の照合方法は一例である。従って、照合部５９は、異なる方法で、取得周波数及び登録周波数の照合を行ってもよい。又、照合部５９は、異なる方法で、取得方向及び登録方向の照合を行ってもよい。
【００６６】
＜電気的構成＞
図１１を参照し、データ作成装置３の電気的構成について説明する。データ作成装置３は、ＣＰＵ３０１、ＲＯＭ３０２、ＲＡＭ３０３、ＨＤＤ３０４、表示部３０５、入力部３０６、通信インターフェース（Ｉ／Ｆ）３０７、及び、ドライブ装置３０８を備えている。ＣＰＵ３０１は、データ作成装置３の制御を行う。ＲＯＭ３０２、ＲＡＭ３０３、ＨＤＤ３０４、表示部３０５、入力部３０６、通信インターフェース（Ｉ／Ｆ）３０７、及び、ドライブ装置３０８は、ＣＰＵ３０１と電気的に接続している。又、ＣＰＵ３０１は、図示外のコネクタを介して指紋センサー３１と電気的に接続する。ＲＯＭ３０２は、ＢＩＯＳ、ブートプログラム、初期設定値を記憶する。ＲＡＭ３０３は、種々の一時データを記憶する。ＨＤＤ３０４は、ＣＰＵ３０１がデータ作成装置３を制御するために実行するプログラム、及びＯＳを記憶する。表示部３０５はＬＣＤである。入力部３０６はキーボード及びマウスである。通信Ｉ／Ｆ３０７は、ケーブル４０７を介して外部の機器（例えば、認証装置５）と通信を実行するためのコントローラである。ドライブ装置３０８は、記憶媒体３０８Ａに記憶された情報を読み出すことができる。ＣＰＵ３０１は、記憶媒体３０８Ａに記憶されたプログラムをドライブ装置３０８によって読み出し、ＨＤＤ３０４に記憶できる。
【００６７】
なお、データ作成装置３は、インターネットに接続可能な図示外の通信Ｉ／Ｆを有していてもよい。ＣＰＵ３０１は、インターネットに接続するサーバーに記憶されたプログラムを、図示外の通信Ｉ／Ｆを介して受信してもよい。ＣＰＵ３０１は、通信Ｉ／Ｆを介して受信したプログラムを、ＨＤＤ３０４に記憶してもよい。
【００６８】
図１１を参照し、認証装置５の電気的構成について説明する。認証装置５は、ＣＰＵ５０１，ＲＯＭ５０２，ＲＡＭ５０３，フラッシュメモリ５０４，表示部５０５、タッチパネル５０６，通信Ｉ／Ｆ５０７，及び、指紋センサー５１を備える。ＣＰＵ５０１は、認証装置５の制御を行う。ＣＰＵ５０１は、ＲＯＭ５０２、ＲＡＭ５０３、フラッシュメモリ５０４、表示部５０５、タッチパネル５０６、通信Ｉ／Ｆ５０７、及び、指紋センサー５１と電気的に接続する。ＲＯＭ５０２は、ＢＩＯＳ、ブートプログラム、初期設定値を記憶する。ＲＡＭ５０３は、種々の一時データを記憶する。フラッシュメモリ５０４は、ＣＰＵ５０１が認証装置５を制御するために実行するプログラム、及びＯＳを記憶する。また、フラッシュメモリ５０４は、指紋ＤＢ６０（図１参照）を記憶する。表示部５０５はＬＣＤである。タッチパネル５０６は、表示部５０５の表面に設けられる。通信Ｉ／Ｆ５０７は、ケーブル４０７を介して外部の機器（例えば、データ作成装置３）と通信を実行するためのコントローラである。
【００６９】
＜データ作成装置３によって実行される処理の詳細＞
図１２を参照し、データ作成装置３のＣＰＵ３０１によって実行される第１メイン処理について説明する。第１メイン処理は、指紋の登録を行なうためのアプリケーションの起動が促された場合に、ＨＤＤ３０４に記憶されたプログラムをＣＰＵ３０１が実行することによって開始される。指紋センサー３１は、指の接触を検出することが可能な待ち受け状態となる。
【００７０】
指紋センサー３１は、指の接触を検出した場合、指紋の画像を特定可能な信号を、ＣＰＵ３０１に出力する。ＣＰＵ３０１は、指紋センサー３１から出力される信号を受信する。ＣＰＵ３０１は、受信した信号に基づいて、指紋画像６（図２参照）を取得する（Ｓ１１）。なお、Ｓ１１の処理は、図１における指紋画像取得部３２の機能に対応する。指紋画像６には、指紋全体の画像（例えば２００×４００の複数の画素）が含まれる。ＣＰＵ３０１は、取得した指紋画像６に含まれる複数の画素のうち、枠６Ｃ（図２参照）内の１７０×３７０の複数の画素の何れかを、以下の順番で選択する（Ｓ１３）。
【００７１】
ＣＰＵ３０１は、はじめにＳ１３の処理を実行する場合、（１５，１５）の位置の画素を選択する。ＣＰＵ３０１は、次にＳ１３の処理を実行する場合、Ｙ座標を「１５」で固定し、Ｘ座標を「１５」から「１」ずつ加算して選択する画素の位置を（Ｘｃ，１５）（Ｘｃ＝１５，１６，・・・）に決定し、画素を選択する。処理が繰り返され、Ｘｃが１８５よりも大きくなった場合、ＣＰＵ３０１は、Ｙ座標「１５」に「１」を加算し、Ｘ座標を「１５」に戻す。ＣＰＵ３０１は、選択する画素の位置を（Ｘｃ，１６）（Ｘｃ＝１５，１６，・・・）に決定し、画素を選択する。以上の処理は、Ｓ１３の処理によって、１７０×３７０の複数の画素の全てが選択されるまで繰り返される。
【００７２】
なお、枠６Ｃ内の複数の画素の何れか１つを順番に選択する場合の選択方法は、上記の方法に限定されず、他の方法であってもよい。例えばＣＰＵ３０１は、１７０×３７０の複数の画素からランダムに１つずつ画素を選択してもよい。選択される画素の位置を示す座標の値は、周知の乱数発生アルゴリズムによって決定されてもよい。又、複数の画素のうち、複数の特徴点の近傍に配置される画素を優先的に選択してもよい。
【００７３】
ＣＰＵ３０１は、Ｓ１３の処理によって選択した画素を中心とする半径ｒ（＝１５）の円７（図３参照）の周上の１２８個のサンプルの位置を順番に決定する。１２８個のサンプルのそれぞれの位置は、選択された画素を原点とする極座標（ｒ，θ）によって示される位置であって、偏角θを０から（２π／１２８）度ずつ２πまで変化させたときに順番に特定される位置である。
【００７４】
なお、円７の周上の１２８個のサンプルの位置を決定するときの順番は変更できる。例えばＣＰＵ３０１は、偏角θを０以外の任意の角度から２π回転させたときの極座標（ｒ，θ）によって示される位置を、１２８個のサンプルの位置として順番に決定してもよい。
【００７５】
なお、１２８個のサンプルの位置を決定するときの順番が変化した場合でも、後述するＳ１９の処理によって算出される振幅スペクトルは変化しない。理由は、ＤＦＴ演算によって算出されるＲｅ（ｎ）とＩｍ（ｎ）とから振幅スペクトル（Ａ（ｎ））が算出される過程で、位相成分が排除されるためである。同様に、１２８個のサンプルの位置を決定するときの順番が変化した場合でも、後述するＳ２５の処理によって算出される方向データは変化しない。
【００７６】
ＣＰＵ３０１は、決定された１２８個のサンプルのそれぞれに対応する濃度を、バイリニア法に基づいて取得する（Ｓ１５、図４参照）。なお、Ｓ１５の処理は、図１における極座標取得部３３の機能に対応する。なお、濃度を算出する方法はバイリニア法に限定されず、他の方法でもよい。例えば、周知のニアレストネイバー法、又は、バイキュービック法に基づいて濃度が算出されてもよい。又、ＣＰＵ３０１は、決定された１２８個のサンプルの位置に配置された画素の濃度をそのまま取得してもよい。又、濃度の代わりに輝度が算出されてもよい。
【００７７】
ＣＰＵ３０１は、Ｓ１５の処理によって取得された円７の周上の１２８個の濃度に基づいて、ＤＦＴ演算を行い、実部（Ｒｅ（ｎ））及び虚部（Ｉｍ（ｎ））を算出する（Ｓ１７）。なお、Ｓ１７の処理は、図１におけるＤＦＴ演算部３４の機能に対応する。ＣＰＵ３０１は、算出したＲｅ（ｎ）及びＩｍ（ｎ）に基づき、上記（１）式を適用することによって、振幅スペクトルを算出する（Ｓ１９、図７参照）。ＣＰＵ３０１は、算出した振幅スペクトルのうち、振幅の大きい順に４つ分のピークに対応するｎを、ピーク周波数として抽出する（Ｓ１９）。なお、Ｓ１９の処理は、図１における振幅スペクトル算出部３５、及び、ピーク周波数抽出部３６の機能に対応する。
【００７８】
ＣＰＵ３０１は、Ｓ１７の処理によって算出したＲｅ（ｎ）及びＩｍ（ｎ）に基づき、上記（２）式を適用することによって、位相情報を算出する（Ｓ２１）。なお、Ｓ２１の処理は、図１における位相情報算出部３７の機能に対応する。
【００７９】
なお上記の（２）式において、位相情報を算出するためのΣＲｅ（ｎ）及びΣＩｍ（ｎ）のｎの値を、０から１２７までとしてもよい。即ち、ｎが０から１２７までのそれぞれのＲｅ（ｎ）を累計したΣＲｅ（ｎ）と、ｎが０から１２７までのそれぞれのＩｍ（ｎ）を累計したΣＩｍ（ｎ）とに基づいて、位相情報（Ｂ（ｉ））が算出されてもよい。
【００８０】
ＣＰＵ３０１は、Ｓ１３の処理によって、指紋画像６の枠６Ｃ（図２参照）内の１７０×３７０の複数の画素の全てを選択したか判断する（Ｓ２３）。ＣＰＵ３０１は、１７０×３７０の複数の画素のうち選択していない画素がある場合（Ｓ２３：ＮＯ）、処理をＳ１３に戻す。ＣＰＵ３０１は、選択していない複数の画素のうち何れかを次に選択し、Ｓ１５〜Ｓ２１の処理を繰り返す。ＣＰＵ３０１は、１７０×３７０の複数の画素の全てを選択したと判断した場合（Ｓ２３：ＹＥＳ）、処理をＳ２５に進める。
【００８１】
ＣＰＵ３０１は、Ｓ２１の処理が繰り返されることによって１７０×３７０の複数の画素毎に算出された位相情報のそれぞれに対し、上記（３）式を適用することによって、濃度（Ｄ（ｉ））を算出する。ＣＰＵ３０１は、算出した１７０×３７０のＤ（ｉ）のそれぞれに対し、上記（４）〜（１１）式を適用することによって、Ｐ１〜Ｐ８（図８参照）を算出する。ＣＰＵ３０１は、算出したＰ１〜Ｐ８に基づいて１６６×３６６の複数の画素のそれぞれに対応する方向を特定し、方向データを特定する（Ｓ２５）。なお、Ｓ２５の処理は、図１における方向データ特定部３８の機能に対応する。
【００８２】
なお、上記の方向データを特定する方法は変更できる。例えばＣＰＵ３０１は、ＤＦＴ演算（Ｓ１７）の結果得られる、１７０×３７０の複数の画素毎のＲｅ（ｎ）及びＩｍ（ｎ）に基づいて、周波数成分毎に位相スペクトルを算出してもよい。次いで、ＣＰＵ３０１は、算出した位相スペクトルによって示されるベクトルのうち、特定の周波数成分（例えば、ｎ＝１〜１５）に対応するベクトルを合成し、位相情報としてもよい。
【００８３】
ＣＰＵ３０１は、Ｓ１９の処理によって抽出されたピーク周波数を示すデータ、及び、Ｓ２５の処理によって特定された方向データを、対応する画素の位置を示す座標に対応付け、特徴データを生成する（Ｓ２７）。図１３は、生成された特徴データの一例を示す。図１３に示すように、特徴データでは、ピーク周波数を示すデータが、１７０×３７０の複数の座標のそれぞれに対応付けられ、方向データが、１６６×３６６の複数の座標のそれぞれに対応付けられている。図１３のうちＦ（Ｘ，Ｙ）は、（Ｘ，Ｙ）の位置の画素に対応する４つのピーク周波数を示している。Ｇ（Ｘ，Ｙ）は、（Ｘ，Ｙ）の位置の画素に対応する方向データを示している。なお、Ｘ座標が１５、１６、１６９、１７０の何れか、及び、Ｙ座標が１５、１６、３６９、３７０の何れかの座標に対応する方向データは、Ｓ２５の処理によって特定されない。この場合、方向データが特定されなかったことを示すフラグデータ「−１」がＧ（Ｘ，Ｙ）として記憶される。
【００８４】
図１２に示すように、ＣＰＵ３０１は、Ｓ２７の処理によって生成した特徴データにエラー検出コードを付加し、暗号化する。ＣＰＵ３０１は、暗号化した特徴データに、センサー種別、指紋画像６のサイズ、及び、改ざん／エラー検出方式を対応付け、指紋データを生成する（Ｓ２９）。センサー種別は、指紋センサー３１の型式、大きさ、解像度等を示す。指紋画像６のサイズは、指紋センサー３１から出力された信号に基づいて取得された指紋画像６の画素数を示す。改ざん／エラー検出方式は、特徴データの暗号化方式、及び、エラー検出方式を示す。ＣＰＵ３０１は、生成した指紋データを、認証装置５のフラッシュメモリ５０４に記憶された指紋ＤＢ６０（図１参照）に登録する（Ｓ３１）。なお、Ｓ３１の処理は、図１における登録部３９の機能に対応する。ＣＰＵ３０１は第１メイン処理を終了させる。
【００８５】
＜認証装置５によって実行される処理の詳細＞
図１５を参照し、認証装置５のＣＰＵ５０１によって実行される第２メイン処理について説明する。第２メイン処理は、指紋の認証を行なうためのアプリケーションの起動が促された場合に、フラッシュメモリ５０４に記憶されたプログラムをＣＰＵ５０１が実行することによって開始される。なお、Ｓ１１〜Ｓ２５の処理は、第１メイン処理のＳ１１〜Ｓ２５の処理と同一であるので、説明を省略する。
【００８６】
ＣＰＵ５０１は、フラッシュメモリ５０４に記憶された指紋ＤＢ６０（図１参照）を参照する（Ｓ４１）。ＣＰＵ５０１は、指紋ＤＢ６０に登録された指紋データの特徴データを、改ざん／エラー検出方式に基づいて復号し、エラーがないかどうかチェックする。
【００８７】
ＣＰＵ５０１は、ピーク周波数のみによる照合を行う場合、Ｓ１９の処理によって抽出されたピーク周波数（取得周波数）と、指紋ＤＢ６０に登録された指紋データの特徴データのうちピーク周波数（登録周波数）とに基づいて、照合の成否を判断する（Ｓ４３）。ＣＰＵ５０１は、方向データのみによる照合を行う場合、Ｓ２５の処理によって特定された方向データによって示される方向（取得方向）と、指紋ＤＢ６０に登録された指紋データの特徴データのうち方向データによって示される方向（登録方向）とに基づいて、照合の成否を判断する（Ｓ４３）。ＣＰＵ５０１は、ピーク周波数及び方向データによる照合を行う場合、取得周波数及び登録周波数との照合結果と、取得方向及び登録方向の照合結果とに基づいて、照合の成否を判断する（Ｓ４３）。ＣＰＵ５０１は、照合の成否を示す画像を、表示部５０５に表示させる（Ｓ４５）。ＣＰＵ５０１は第２メイン処理を終了させる。
【００８８】
なお上記において、データ作成装置３のＣＰＵ３０１は、ケーブル４０７（図１１参照）を介して認証装置５から送信された要求データを受信した場合に、生成した指紋データを指紋ＤＢ６０に登録してもよい。認証装置５のＣＰＵ５０１は、第２メイン処理のＳ２５の処理の終了後、ケーブル４０７を介してデータ作成装置３に対して、要求データを送信してもよい。ＣＰＵ５０１は、要求データに応じて指紋データが指紋ＤＢに登録された後、Ｓ４１、Ｓ４３、Ｓ４５の処理を実行してもよい。
【００８９】
＜効果＞
データ作成装置３のＣＰＵ３０１は、指紋画像６のうち、任意の複数の中心点７Ａのそれぞれを中心とする円７の周上の複数の位置に対応する画素の濃度に基づいて、ＤＦＴ演算を行う（Ｓ１７）。ＣＰＵ３０１は、Ｒｅ（ｎ）及びＩｍ（ｎ）に基づいて、位相情報を算出する（Ｓ２１）。ＣＰＵ３０１は、１７０×３７０の複数の画素毎に算出された位相情報のそれぞれに基づいて濃度（Ｄ（ｉ））を算出し、更に、Ｐ１〜Ｐ８（図８参照）を算出する。ＣＰＵ３０１は、算出したＰ１〜Ｐ８に基づいて、１６６×３６６の複数の画素のそれぞれに対応する方向の方向データを特定する（Ｓ２５）。ＣＰＵ３０１は、複数の画素毎に特定した方向の方向データを、指紋ＤＢ６０に登録する（Ｓ３１）。これによって、指紋ＤＢ６０に登録された方向データは、認証装置５のＣＰＵ５０１が指紋の認証を行うためのデータとして使用可能となる。
【００９０】
上記のように特定された方向は、指紋画像６で示される指紋の隆線の方向と良好に一致する。従って、ＣＰＵ５０１は、指紋ＤＢ６０に記憶された方向データと、指紋センサー５１を介して取得された指紋画像６に対応する方向データとを比較することによって、指紋の照合を行うことができる。この場合、従来のマニューシャ法のように、指紋の特徴点が指紋画像６に含まれていなくてもよい。又、複数の画素毎に方向データが特定されるので、多数の方向どうしを比較できる。従って、ＣＰＵ５０１は、指紋画像６が小さい場合でも、十分な精度で指紋の認証を行うことができる。又、認証装置５を所持した側の手の指を指紋センサー５１に接触させる不安定な入力操作に基づいて、指紋画像６の位置ずれや回転が起こった場合でも、十分な精度で指紋の認証を行うことができる。このように、データ作成装置３のＣＰＵ３０１は、認証装置５が指紋の認証を高精度に行うための指紋データを、方向データに基づいて生成できる。
【００９１】
データ作成装置３のＣＰＵ３０１は、ＤＦＴ演算を行う（Ｓ１７）ことによって算出したＲｅ（ｎ）及びＩｍ（ｎ）に基づいて、位相情報を算出し（Ｓ２１）、方向を特定する（Ｓ２５）。従ってＣＰＵ３０１は、Ｓ１５の処理によって取得した濃度に基づいて、指紋画像６中の複数の画素のうち、１６６×３６６の画素に対応する方向を適切に特定できる。
【００９２】
ＣＰＵ３０１は、（２）式を適用して位相情報を算出する。この場合、ＣＰＵ３０１は、算出したＲｅ（ｎ）及びＩｍ（ｎ）に基づいて合成ベクトルを算出し、その方向を位相情報として算出する場合と比較して、位相情報を容易に算出できる。
【００９３】
ＣＰＵ３０１は、指紋画像６のうち、任意の複数の中心点７Ａのそれぞれを中心とする円７の周上の複数の位置に対応する画素の濃度に基づいて、ＤＦＴ演算を行う（Ｓ１７）。ＣＰＵ３０１は、Ｒｅ（ｎ）及びＩｍ（ｎ）に基づいて、振幅スペクトルを算出する（Ｓ１９）。ＣＰＵ３０１は、算出した振幅スペクトルのそれぞれに対応する４つのピーク周波数を抽出する（Ｓ１９）。ＣＰＵ３０１は、抽出した４つのピーク周波数を示すデータを含む指紋データを、指紋ＤＢ６０に登録する（Ｓ３１）。認証装置５のＣＰＵ５０１は、ピーク周波数と方向データとに基づいて指紋の照合を行うことによって、照合の精度を高めることができる。このように、データ作成装置３のＣＰＵ３０１は、認証装置５が指紋の認証を更に高精度に行うための指紋データを、ピーク周波数に基づいて生成できる。
【００９４】
＜その他＞
本発明は上記実施形態に限定されず、種々の変更が可能である。上記実施形態において、ＣＰＵ３０１は、方向データのみを特定し、ピーク周波数を特定しなくてもよい。ＣＰＵ３０１は、方向データのみを含む指紋データを作成し、指紋ＤＢ６０に登録してもよい。
【００９５】
上記実施形態において、ＣＰＵ３０１は、ＤＦＴ演算を行うことによって、実部（Ｒｅ）及び虚部（Ｉｍ）を算出した。ＣＰＵ３０１は、ＤＦＴの代わりにFast Fourier Transform（ＦＦＴ）演算を行うことによって、実部（Ｒｅ）及び虚部（Ｉｍ）を算出してもよい。この場合、サンプル数Ｋ１として、例えば、「１２８」、「２５６」、「５１２」、「１０２４」、「２０４８」・・・の何れかとすることができる。
【００９６】
上記実施形態において、ＣＰＵ３０１は、指紋画像６に含まれる複数の画素を１つずつ選択し、円７の中心点７Ａとした。これに対して、ＣＰＵ３０１は、指紋画像６の任意の複数の位置の何れかを、円７の中心点７Ａとして選択してもよい。
【００９７】
なお、Ｓ１１の処理は本発明の「第１取得ステップ」の一例である。Ｓ１５の処理は本発明の「第２取得ステップ」の一例である。Ｓ１９の処理は本発明の「振幅算出ステップ」の一例である。Ｓ３１の処理は本発明の「振幅記憶ステップ」「関連データ記憶ステップ」の一例である。Ｓ２１、Ｓ２５の処理は本発明の「位相算出ステップ」の一例である。Ｓ１１の処理を行うＣＰＵ３０１は本発明の「第１取得手段」の一例である。Ｓ１５の処理を行うＣＰＵ３０１は本発明の「第２取得手段」の一例である。Ｓ２１、２５の処理を行うＣＰＵ３０１は本発明の「位相算出手段」の一例である。Ｓ３１の処理を行うＣＰＵ３０１は本発明の「関連データ記憶手段」の一例である。
【符号の説明】
【００９８】
１        ：認証システム
３        ：データ作成装置
５        ：認証装置
６        ：指紋画像
７        ：円
７Ａ      ：中心点
３１      ：指紋センサー
５１      ：指紋センサー
６０      ：指紋画像
３０１    ：ＣＰＵ
５０１    ：ＣＰＵ
５０４    ：フラッシュメモリ
【図１】
0006448253.tif 000002
【図２】
0006448253.tif 000003
【図３】
0006448253.tif 000004
【図４】
0006448253.tif 000005
【図５】
0006448253.tif 000006
【図６】
0006448253.tif 000007
【図７】
0006448253.tif 000008
【図８】
0006448253.tif 000009
【図９】
0006448253.tif 000010
【図１０】
0006448253.tif 000011
【図１１】
0006448253.tif 000012
【図１２】
0006448253.tif 000013
【図１３】
0006448253.tif 000014
【図１４】
0006448253.tif 000015
【図１５】
0006448253.tif 000016