(57)【要約】【課題】本発明は、特徴点の照合処理の効率を改善する。【解決手段】本発明は、ｍ次元空間に投影された１以上の特徴点について、ｍ次元空間を規定する座標軸の何れかを基準軸とし、基準軸上の座標値順に近傍探索を行う照合方法であり、ｍ次元空間の各軸を基準軸とし、基準軸毎に、基準軸上の座標値順に整序された１以上の特徴点である特徴点群を取得し、特徴点群の特徴点を基準点とする基準点群と、特徴点群の特徴点を参照点とする参照点群とし、基準点群の各基準点につき、参照点群の整序順に基準点との基準軸上の距離が閾値未満となる参照点を探索し、探索時の基準点と参照点との比較回数をカウントし、閾値未満の参照点を検出後、閾値以上の参照点を検出した場合、当該基準点の比較回数を確定し、各基準点の比較回数を合計して基準軸毎の比較回数を取得し、比較回数が少ない基準軸を照合処理における基準軸とする。【選択図】図１
2018049569.tif 000002
【特許請求の範囲】
【請求項１】
ｍ次元空間（ｍは２以上の自然数）に投影された１以上の特徴点について、前記ｍ次元空間を規定する２以上の座標軸のうち何れかを基準軸として、前記基準軸上の座標値順に近傍探索を行う照合方法であって、
前記ｍ次元空間を規定する２以上の座標軸の各々を基準軸とし、前記基準軸毎に、前記基準軸上の座標値順に整序された前記ｍ次元空間の座標値を有する１以上の特徴点である特徴点群を取得するステップＡ１と、
前記基準軸毎の特徴点群について、前記特徴点群の前記１以上の特徴点を１以上の基準点とする基準点群と、前記特徴点群の前記１以上の特徴点を１以上の参照点とする参照点群とを取得するステップＡ２と、
前記基準軸毎に、前記基準点群の各基準点について、前記参照点群の整序方向順に、前記基準点との前記基準軸上での距離が近傍探索用の閾値未満となる参照点を探索するステップＡ３と、
前記基準軸毎に、前記探索において前記基準点と前記参照点との比較回数をカウントし、閾値未満となる参照点を検出した場合、前記近傍探索用の閾値以上となる参照点を検出したことに応じて、当該基準点についての比較回数を確定し、前記基準点群の各基準点について比較回数を合計することで、前記基準軸毎の比較回数を取得するステップＡ４と、
前記２以上の基準軸のうち、比較回数が少ない基準軸を、照合処理における近傍探索の基準軸として選択するステップＡ５と、
を含むことを特徴とする照合方法。
【請求項２】
請求項１に記載の照合方法であって、
センサから照合用の画像を取得し、前記照合用の画像から取得したｍ次元空間の座標値を有する１以上の特徴点を含む照合データに対して前記ステップＡ１乃至前記ステップＡ５を実行することで、前記照合データにとって最適な基準軸を選択するステップＢ１と、
ｍ次元空間を規定する何れかの座標軸上の座標値順に整序されたｍ次元空間の座標値を有する１以上の特徴点を含む登録データを記憶部から取得するステップＢ２と、
前記登録データが有する前記１以上の特徴点の整序方向と前記ステップＢ１で選択した基準軸とが一致しない場合、前記登録データの１以上の特徴点を前記ステップＢ１で選択した基準軸上の座標値順に整序するステップＢ３と、
前記ステップＢ１で選択した基準軸と同じ方向に整序された前記登録データの１以上の特徴点を１以上の基準点とした基準点群を取得するステップＢ４と、
前記ステップＢ１で選択した基準軸上の座標値順に整序された前記照合データの１以上の特徴点を１以上の参照点とした参照点群を取得するステップＢ５と、
前記基準点群から前記ステップＢ１で選択した基準軸上の座標値順に基準点をとりだして、前記参照点群の整序方向順に、前記基準点と前記参照点との近傍探索を行うステップＢ６と、
前記近傍探索で近傍点として検出された前記参照点を、前記基準点との照合スコアの算出対象とするステップＢ７と、
を含むことを特徴とする照合方法。
【請求項３】
請求項２に記載の照合方法であって、
前記センサから登録用の画像を取得し、前記登録用の画像から取得したｍ次元空間の座標値を有する１以上の特徴点に対して前記ステップＡ１乃至前記ステップＡ５を実行することで前記最適な基準軸を選択するステップＣ１と、
前記登録用の画像から取得した１以上の特徴点が前記ステップＣ１で選択した基準軸上の座標値順に整序された特徴点群と、前記ステップＣ１で選択した基準軸に関する情報と、を含む登録データを前記記憶部に格納するステップＣ２と、
を含むことを特徴とする照合方法。
【請求項４】
請求項３に記載の照合方法であって、
前記ステップＣ１を実行した際の前記ステップＡ１で取得した前記基準軸毎の特徴点群のうち、前記ステップＣ１で選択した基準軸とは異なる座標軸で整序された特徴点群の整序結果と、前記ステップＣ１で選択した基準軸と同じ座標軸で整序された特徴点群の整序結果と、を変換するインデックス変換対を生成するステップＤ１を含み、
前記ステップＣ２において、前記登録用の画像から取得した１以上の特徴点が前記ステップＣ１で選択した基準軸上の座標値順に整序された特徴点群と、前記ステップＣ１で選択した基準軸に関する情報と、前記ステップＤ１で生成したインデックス変換対と、を含む登録データを前記記憶部に格納し、
前記ステップＢ３において、前記登録データが有する前記１以上の特徴点の整序方向と前記ステップＢ１で選択した基準軸とが一致しない場合、前記登録データのインデックス変換対を用いて、前記ステップＢ１で選択した基準軸上の座標値順に前記登録データの１以上の特徴点にアクセス可能とする、
ことを特徴とする照合方法。
【請求項５】
請求項３に記載の照合方法であって、
前記記憶部に格納されている１以上の登録データの各々について、前記ステップＣ１で選択した基準軸に関する情報と、前記登録データの特徴点群が有する特徴点の個数とを収集するステップＥ１と、
前記ステップＥ１で収集した情報に示される基準軸毎に、前記特徴点の個数を集計するステップＥ２と、
前記ステップＥ２で集計した前記基準軸毎の特徴点の個数のうち、前記基準軸毎の特徴点の個数を合計した全数に対する割合が最大となる個数を有する基準軸であって、前記割合が所定値以上の基準軸を、システム基準軸として選択するステップＥ３と、
前記ステップＥ３で選択したシステム基準軸とは異なる座標軸で整序された登録データの特徴点群を、前記システム基準軸上の座標値順に整序し直すステップＥ４と、
を含むことを特徴とする照合方法。
【請求項６】
請求項３に記載の照合方法であって、
前記記憶部に格納されている１以上の登録データの各々について、前記ステップＣ１で選択した基準軸に関する情報と、前記登録データの特徴点群が有する特徴点の個数とを収集するステップＥ１と、
前記ステップＥ１で収集した情報に示される基準軸毎に、前記特徴点の個数を集計するステップＥ２と、
前記ステップＥ２で集計した前記基準軸毎の特徴点の個数のうち、前記基準軸毎の特徴点の個数を合計した全数に対する割合が最大となる個数を有する基準軸であって、前記割合が所定値以上の基準軸を、システム基準軸として選択するステップＥ３と、
を含み、
前記ステップＢ１において、前記ステップＡ１乃至前記ステップＡ５の実行に替えて、前記ステップＥ３で選択したシステム基準軸を、前記照合データにとって最適な基準軸として選択する、
ことを特徴とする照合方法。
【請求項７】
請求項１に記載の照合方法であって、
ｍ次元空間を規定する何れかの座標軸上の座標値順に整序されたｍ次元空間の座標値を有する１以上の特徴点である特徴点群と、前記特徴点群の整序方向である基準軸を示す情報と、を含む登録データを記憶部から取得するステップＦ１と、
前記センサから照合用の画像を取得し、前記照合用の画像から取得したｍ次元空間の座標値を有する１以上の特徴点を含む照合データを取得するステップＦ２と、
前記照合データが有する前記１以上の特徴点の整序方向と前記登録データの基準軸とが一致しない場合、前記照合データの１以上の特徴点を前記登録データの基準軸上の座標値順に整序するステップＦ３と、
前記ステップＦ１で取得した登録データが有する特徴点群の１以上の特徴点を１以上の参照点とした参照点群を取得するステップＦ４と、
前記登録データの基準軸と同じ座標軸上の座標値順に整序された前記照合データの１以上の特徴点を１以上の基準点とした基準点群を取得するステップＦ５と、
前記基準点群から前記登録データの基準軸上の座標値順に基準点をとりだして、前記参照点群の整序方向順に、前記基準点と前記参照点との近傍探索を行うステップＦ６と、
前記近傍探索で近傍点として検出された前記参照点を、前記基準点との照合スコアの算出対象とするステップＦ７と、
を含むことを特徴とする照合方法。
【請求項８】
ｍ次元空間（ｍは２以上の自然数）に投影された１以上の特徴点について、前記ｍ次元空間を規定する２以上の座標軸のうち何れかを基準軸として、前記基準軸上の座標値順に近傍探索を行う照合装置であって、
ｍ次元空間を規定する２以上の座標軸の各々を基準軸とし、前記基準軸毎に、前記基準軸上の座標値順に整序されたｍ次元空間の座標値を有する１以上の特徴点である特徴点群を取得するステップＡ１と、
前記基準軸毎の特徴点群について、前記特徴点群の前記１以上の特徴点を１以上の基準点とする基準点群と、前記特徴点群の前記１以上の特徴点を１以上の参照点とする参照点群とを取得するステップＡ２と、
前記基準軸毎に、前記基準点群の各基準点について、前記参照点群の整序方向順に、前記基準点との前記基準軸上での距離が近傍探索用の閾値未満となる参照点を探索するステップＡ３と、
前記基準軸毎に、前記探索において前記基準点と前記参照点との比較回数をカウントし、閾値未満となる参照点を検出した場合、前記近傍探索用の閾値以上となる参照点を検出したことに応じて、当該基準点についての比較回数を確定し、前記基準点群の各基準点について比較回数を合計することで、前記基準軸毎の比較回数を取得するステップＡ４と、
前記２以上の基準軸のうち、比較回数が少ない基準軸を、照合処理における近傍探索の最適な基準軸として選択するステップＡ５と、
をプロセッサにより実行することを特徴とする照合装置。
【請求項９】
請求項８に記載の照合装置であって、
センサから照合用の画像を取得し、前記照合用の画像から取得したｍ次元空間の座標値を有する１以上の特徴点を含む照合データに対して前記ステップＡ１乃至前記ステップＡ５を実行することで、前記照合データにとって最適な基準軸を選択するステップＢ１と、
ｍ次元空間を規定する何れかの座標軸上の座標値順に整序されたｍ次元空間の座標値を有する１以上の特徴点を含む登録データを記憶部から取得するステップＢ２と、
前記登録データが有する前記１以上の特徴点の整序方向と前記ステップＢ１で選択した基準軸とが一致しない場合、前記登録データの１以上の特徴点を前記ステップＢ１で選択した基準軸上の座標値順に整序するステップＢ３と、
前記ステップＢ１で選択した基準軸と同じ方向に整序された前記登録データの１以上の特徴点を１以上の基準点とした基準点群を取得するステップＢ４と、
前記ステップＢ１で選択した基準軸上の座標値順に整序された前記照合データの１以上の特徴点を１以上の参照点とした参照点群を取得するステップＢ５と、
前記基準点群から前記ステップＢ１で選択した基準軸上の座標値順に基準点をとりだして、前記参照点群の整序方向順に、前記基準点と前記参照点との近傍探索を行うステップＢ６と、
前記近傍探索で近傍点として検出された前記参照点を、前記基準点との照合スコアの算出対象とするステップＢ７と、
をプロセッサにより実行することを特徴とする照合装置。
【請求項１０】
請求項９に記載の照合装置であって、
前記センサから登録用の画像を取得し、前記登録用の画像から取得したｍ次元空間の座標値を有する１以上の特徴点に対して前記ステップＡ１乃至前記ステップＡ５を実行することで前記最適な基準軸を選択するステップＣ１と、
前記登録用の画像から取得した１以上の特徴点が前記ステップＣ１で選択した基準軸上の座標値順に整序された特徴点群と、前記ステップＣ１で選択した基準軸に関する情報と、を含む登録データを前記記憶部に格納するステップＣ２と、
をプロセッサにより実行することを特徴とする照合装置。
【請求項１１】
請求項１０に記載の照合装置であって、
前記ステップＣ１を実行した際の前記ステップＡ１で取得した前記基準軸毎の特徴点群のうち、前記ステップＣ１で選択した基準軸とは異なる座標軸で整序された特徴点群の整序結果と、前記ステップＣ１で選択した基準軸と同じ座標軸で整序された特徴点群の整序結果と、を変換するインデックス変換対を生成するステップＤ１、
をプロセッサにより実行し、
前記ステップＣ２において、前記登録用の画像から取得した１以上の特徴点が前記ステップＣ１で選択した基準軸上の座標値順に整序された特徴点群と、前記ステップＣ１で選択した基準軸に関する情報と、前記ステップＤ１で生成したインデックス変換対と、を含む登録データを前記記憶部に格納し、
前記ステップＢ３において、前記登録データが有する前記１以上の特徴点の整序方向と前記ステップＢ１で選択した基準軸とが一致しない場合、前記登録データのインデックス変換対を用いて、前記ステップＢ１で選択した基準軸上の座標値順に前記登録データの１以上の特徴点にアクセス可能とする、
ことを特徴とする照合装置。
【請求項１２】
請求項１０に記載の照合装置であって、
前記記憶部に格納されている１以上の登録データの各々について、前記ステップＣ１で選択した基準軸に関する情報と、前記登録データの特徴点群が有する特徴点の個数とを収集するステップＥ１と、
前記ステップＥ１で収集した情報に示される基準軸毎に、前記特徴点の個数を集計するステップＥ２と、
前記ステップＥ２で集計した前記基準軸毎の特徴点の個数のうち、前記基準軸毎の特徴点の個数を合計した全数に対する割合が最大となる個数を有する基準軸であって、前記割合が所定値以上の基準軸を、システム基準軸として選択するステップＥ３と、
前記ステップＥ３で選択したシステム基準軸とは異なる座標軸で整序された登録データの特徴点群を、前記システム基準軸上の座標値順に整序し直すステップＥ４と、
をプロセッサにより実行することを特徴とする照合装置。
【請求項１３】
請求項１０に記載の照合装置であって、
前記記憶部に格納されている１以上の登録データの各々について、前記ステップＣ１で選択した基準軸に関する情報と、前記登録データの特徴点群が有する特徴点の個数とを収集するステップＥ１と、
前記ステップＥ１で収集した情報に示される基準軸毎に、前記特徴点の個数を集計するステップＥ２と、
前記ステップＥ２で集計した前記基準軸毎の特徴点の個数のうち、前記基準軸毎の特徴点の個数を合計した全数に対する割合が最大となる個数を有する基準軸であって、前記割合が所定値以上の基準軸を、システム基準軸として選択するステップＥ３と、
をプロセッサにより実行し、
前記ステップＢ１において、前記ステップＡ１乃至前記ステップＡ５の実行に替えて、前記ステップＥ３で選択したシステム基準軸を、前記照合データにとって最適な基準軸として選択する、
ことを特徴とする照合装置。
【請求項１４】
ｍ次元空間（ｍは２以上の自然数）に投影された１以上の特徴点について、前記ｍ次元空間を規定する２以上の座標軸のうち何れかを基準軸として、前記基準軸上の座標値順に近傍探索をコンピュータに行わせる照合プログラムであって、
ｍ次元空間を規定する２以上の座標軸の各々を基準軸とし、前記基準軸毎に、前記基準軸上の座標値順に整序されたｍ次元空間の座標値を有する１以上の特徴点である特徴点群を取得するステップＡ１と、
前記基準軸毎の特徴点群について、前記特徴点群の前記１以上の特徴点を１以上の基準点とする基準点群と、前記特徴点群の前記１以上の特徴点を１以上の参照点とする参照点群とを取得するステップＡ２と、
前記基準軸毎に、前記基準点群の各基準点について、前記参照点群の整序方向順に、前記基準点との前記基準軸上での距離が近傍探索用の閾値未満となる参照点を探索するステップＡ３と、
前記基準軸毎に、前記探索において前記基準点と前記参照点との比較回数をカウントし、閾値未満となる参照点を検出した場合、前記近傍探索用の閾値以上となる参照点を検出したことに応じて、当該基準点についての比較回数を確定し、前記基準点群の各基準点について比較回数を合計することで、前記基準軸毎の比較回数を取得するステップＡ４と、
前記２以上の基準軸のうち、比較回数が少ない基準軸を、照合処理における近傍探索の最適な基準軸として選択するステップＡ５と、
をコンピュータに実行させることを特徴とする照合プログラム。
【請求項１５】
請求項１４に記載の照合プログラムであって、
センサから照合用の画像を取得し、前記照合用の画像から取得したｍ次元空間の座標値を有する１以上の特徴点を含む照合データに対して前記ステップＡ１乃至前記ステップＡ５を実行することで、前記照合データにとって最適な基準軸を選択するステップＢ１と、
ｍ次元空間を規定する何れかの座標軸上の座標値順に整序されたｍ次元空間の座標値を有する１以上の特徴点を含む登録データを記憶部から取得するステップＢ２と、
前記登録データが有する前記１以上の特徴点の整序方向と前記ステップＢ１で選択した基準軸とが一致しない場合、前記登録データの１以上の特徴点を前記ステップＢ１で選択した基準軸上の座標値順に整序するステップＢ３と、
前記ステップＢ１で選択した基準軸と同じ方向に整序された前記登録データの１以上の特徴点を１以上の基準点とした基準点群を取得するステップＢ４と、
前記ステップＢ１で選択した基準軸上の座標値順に整序された前記照合データの１以上の特徴点を１以上の参照点とした参照点群を取得するステップＢ５と、
前記基準点群から前記ステップＢ１で選択した基準軸上の座標値順に基準点をとりだして、前記参照点群の整序方向順に、前記基準点と前記参照点との近傍探索を行うステップＢ６と、
前記近傍探索で近傍点として検出された前記参照点を、前記基準点との照合スコアの算出対象とするステップＢ７と、
をコンピュータに実行させることを特徴とする照合プログラム。
【請求項１６】
請求項１５に記載の照合プログラムであって、
前記センサから登録用の画像を取得し、前記登録用の画像から取得したｍ次元空間の座標値を有する１以上の特徴点に対して前記ステップＡ１乃至前記ステップＡ５を実行することで前記最適な基準軸を選択するステップＣ１と、
前記登録用の画像から取得した１以上の特徴点が前記ステップＣ１で選択した基準軸上の座標値順に整序された特徴点群と、前記ステップＣ１で選択した基準軸に関する情報と、を含む登録データを前記記憶部に格納するステップＣ２と、
をコンピュータに実行させることを特徴とする照合プログラム。
【請求項１７】
請求項１６に記載の照合プログラムであって、
前記ステップＣ１を実行した際の前記ステップＡ１で取得した前記基準軸毎の特徴点群のうち、前記ステップＣ１で選択した基準軸とは異なる座標軸で整序された特徴点群の整序結果と、前記ステップＣ１で選択した基準軸と同じ座標軸で整序された特徴点群の整序結果と、を変換するインデックス変換対を生成するステップＤ１、
をコンピュータに実行させ、
前記ステップＣ２において、前記登録用の画像から取得した１以上の特徴点が前記ステップＣ１で選択した基準軸上の座標値順に整序された特徴点群と、前記ステップＣ１で選択した基準軸に関する情報と、前記ステップＤ１で生成したインデックス変換対と、を含む登録データを前記記憶部に格納し、
前記ステップＢ３において、前記登録データが有する前記１以上の特徴点の整序方向と前記ステップＢ１で選択した基準軸とが一致しない場合、前記登録データのインデックス変換対を用いて、前記ステップＢ１で選択した基準軸上の座標値順に前記登録データの１以上の特徴点にアクセス可能とする、
ことを特徴とする照合プログラム。
【請求項１８】
請求項１６に記載の照合プログラムであって、
前記記憶部に格納されている１以上の登録データの各々について、前記ステップＣ１で選択した基準軸に関する情報と、前記登録データの特徴点群が有する特徴点の個数とを収集するステップＥ１と、
前記ステップＥ１で収集した情報に示される基準軸毎に、前記特徴点の個数を集計するステップＥ２と、
前記ステップＥ２で集計した前記基準軸毎の特徴点の個数のうち、前記基準軸毎の特徴点の個数を合計した全数に対する割合が最大となる個数を有する基準軸であって、前記割合が所定値以上の基準軸を、システム基準軸として選択するステップＥ３と、
前記ステップＥ３で選択したシステム基準軸とは異なる座標軸で整序された登録データの特徴点群を、前記システム基準軸上の座標値順に整序し直すステップＥ４と、
をコンピュータに実行させることを特徴とする照合プログラム。
【請求項１９】
請求項１６に記載の照合プログラムであって、
前記記憶部に格納されている１以上の登録データの各々について、前記ステップＣ１で選択した基準軸に関する情報と、前記登録データの特徴点群が有する特徴点の個数とを収集するステップＥ１と、
前記ステップＥ１で収集した情報に示される基準軸毎に、前記特徴点の個数を集計するステップＥ２と、
前記ステップＥ２で集計した前記基準軸毎の特徴点の個数のうち、前記基準軸毎の特徴点の個数を合計した全数に対する割合が最大となる個数を有する基準軸であって、前記割合が所定値以上の基準軸を、システム基準軸として選択するステップＥ３と、
をコンピュータに実行させ、
前記ステップＢ１において、前記ステップＡ１乃至前記ステップＡ５の実行に替えて、前記ステップＥ３で選択したシステム基準軸を、前記照合データにとって最適な基準軸として選択する、
ことを特徴とする照合プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像における特徴点の照合に用いられる照合方法、照合装置、照合プログラムに関する。
【背景技術】
【０００２】
照合対象の画像から抽出された特徴を、予め登録されたパターンに定義された特徴と照合する照合処理により、目的のパターンを見つける画像処理技術が知られている。この様な画像処理技術の応用例として、文字認識、物体検知、生体認証などが挙げられる。例えば、生体認証においては、各種センサを用いて生体から得た生体情報を画像化し、生体情報を画像化した画像から抽出された特徴点を用いた照合処理が行われる。そのような生体認証として様々な種類の認証技術が考案されており、例えば、指紋を利用した指紋認証、瞳孔の薄膜組織模様を利用した虹彩認証、顔を利用した顔認証、網膜上の血管パターンを利用した網膜認証、手のひらや指の静脈パターンを利用した静脈認証などがある。
【０００３】
画像処理技術の一例である静脈認証では、手のひら、指などの生体部位に近赤外光を照射して撮影した静脈パターンの画像（生体画像）から、画像中の特徴的な点である特徴点を抽出し、抽出された特徴点を用いて照合処理が行われる。照合処理においては、特徴点近傍の画像から算出した特徴量などを用いて、予め登録されているパターンに規定される特徴点との照合スコアの算出が行われる。例えば、画像上の特徴点と登録パターン上の特徴点との特徴量の相関値や、各特徴量のビット系列間のハミング距離などが、照合スコアとして利用される。
【０００４】
照合対象である特徴点数の増加は、照合処理における演算対象が増加するため、照合結果を得るための時間の増加を招く。例えば、撮影した画像と複数の登録パターンとを照合する１：Ｎ（Ｎは２以上の自然数）の照合では、照合対象である登録パターンの数Ｎが増えるほど、照合時間の増加がより顕著となる。そこで、従来の技術では、複数の特徴点のうち照合対象を制限する試みが提案されている。例えば、二つの画像の類似性を評価する際に、ｍ（ｍは２以上の自然数）次元空間上の特徴点を一次元空間に写像して、一次元空間に写像された二つの画像の特徴点間の距離を用いて類似性を評価することで、類似性評価の演算コストを軽減することが提案されている（例えば、特許文献１）。また、基準点との点間距離が最も短い最近傍点の座標値を有するデータを特定する照合処理において、予め設定された基準座標軸上の座標値順にデータをソートし、当該基準点との基準座標軸方向の距離が予め設定された基準距離よりも短い座標値を有するデータを選択することで、照合対象を制限することが提案されている（例えば、特許文献２）。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００６−２６０３１１号公報
【特許文献２】特開２０１３−４５１４１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
上述の二つの従来技術では、照合処理の演算コストを軽減するために、一次元空間に写像された二つの画像の特徴点間の距離が用いられている。さらに、写像する基準座標軸を選択する基準として、特徴点が有する座標値の最大値から最小値を減じた値（分布幅）が最大となる座標軸を基準座標軸とすることが開示されている。
【０００７】
しかし、手のひら静脈認証、指紋認証、虹彩認証などの生体認証では、生体部位の撮像範囲や生体画像から特徴点を抽出する範囲のアスペクト比が略１：１であることなどに起因して、現実的には、生体画像から得られる特徴点の分布幅がｍ次元空間を規定する各座標軸（例えばＸ軸とＹ軸）において有意な差がみられることは稀である。例えば、手のひら静脈認証の場合、手首と指を除いた部分であって、手を握ったときに内側になる部分である手掌は、手を開いた状態では縦と横の比率が略１：１となる。そのため、手掌内部に存在する静脈のパターンから抽出される特徴点は、アスペクト比が略１：１の範囲で分布することが多い。他の生体認証についても同様である。しかも、生体画像から得た一以上の特徴点（特徴点群）は、ｍ次元空間上に一様に分布しているとは限らない。
【０００８】
従来の技術は、例えば２次元空間を規定する２本の軸（すなわち、Ｘ軸とＹ軸）において、特徴点の分布範囲に有意な差を見出すことが困難な場合、必ずしも最適な基準軸の選択ができるとは限らないという問題を有する。この様な問題は、生体認証に限定されず、ｍ次元空間を規定するｍ本の軸の全て又は一部の軸において、特徴点の分布範囲の比率が略同一の場合、物体検知や文字認識など他の画像認識システムにおいても生じ得る。別言すると、ｍ次元空間を規定するｍ本の軸のうち、特徴点の分布範囲が他のｍ−１本の軸よりも顕著に広い１本の軸を特定できない場合に、同様の問題が生じ得る。
【０００９】
そこで本発明は、ｍ次元空間における特徴点の照合処理における近傍探索の演算コストを削減できる最適な基準軸を選択することで、特徴点の照合精度を維持しつつ応答速度を改善することができる照合方法、照合装置、照合プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１０】
本発明の一つの実施形態によれば、ｍ次元空間（ｍは２以上の自然数）に投影された１以上の特徴点について、前記ｍ次元空間を規定する２以上の座標軸のうち何れかを基準軸として、前記基準軸上の座標値順に近傍探索を行う照合方法が提供される。この照合方法は、ｍ次元空間を規定する２以上の座標軸の各々を基準軸とし、前記基準軸毎に、前記基準軸上の座標値順に整序されたｍ次元空間の座標値を有する１以上の特徴点である特徴点群を取得するステップＡ１と、前記基準軸毎の特徴点群について、前記特徴点群の前記１以上の特徴点を１以上の基準点とする基準点群と、前記特徴点群の前記１以上の特徴点を１以上の参照点とする参照点群とを取得するステップＡ２と、前記基準軸毎に、前記基準点群の各基準点について、前記参照点群の整序方向順に、前記基準点との前記基準軸上での距離が近傍探索用の閾値未満となる参照点を探索するステップＡ３と、前記基準軸毎に、前記探索において前記基準点と前記参照点との比較回数をカウントし、閾値未満となる参照点を検出した場合、前記近傍探索用の閾値以上となる参照点を検出したことに応じて、当該基準点についての比較回数を確定し、前記基準点群の各基準点について比較回数を合計することで、前記基準軸毎の比較回数を取得するステップＡ４と、前記２以上の基準軸のうち、比較回数が少ない基準軸を、照合処理における近傍探索の基準軸として選択するステップＡ５とを含む。
【発明の効果】
【００１１】
本発明によれば、ｍ次元空間における特徴点の照合処理における近傍探索の演算コストを削減できる最適な基準軸を選択することで、照合精度を維持しつつ応答速度を改善することができる。
【図面の簡単な説明】
【００１２】
【図１】実施例１に係る照合方法を用いた認証システムの構成例を示す図である。
【図２】実施例１に係る登録処理部により実現される登録モードにおける処理の一例を示す図である。
【図３】特徴点の抽出に用いられる生体画像の一例を示す図（その１）である。
【図４】生体画像から抽出された特徴点の分布を示す図（その１）である。
【図５】特徴点の抽出に用いられる生体画像の一例を示す図（その２）である。
【図６】生体画像から抽出された特徴点の分布を示す図（その２）である。
【図７】近傍探索における比較回数のカウント処理の一例を示す図である。
【図８】基準軸をＹ軸とした場合の近傍探索の例を示す図である。
【図９】基準軸をＸ軸とした場合の近傍探索の例を示す図である。
【図１０】登録データの一例を示す図である。
【図１１】実施例１に係る認証処理部により実現される認証モードにおける処理の一例を示す図である。
【図１２】認証モードにおける照合処理の一例を示す図である。
【図１３】実施例２に係る登録処理部により実現される登録モードにおける処理の一例を示す図である。
【図１４】実施例２に係る登録データの例（ｍ＝２）を示す図である。
【図１５】実施例２に係る登録データの例（ｍ＝３）を示す図である。
【図１６】実施例２に係る認証処理部により実現される認証モードにおける特徴点の照合処理の一例を示す図である。
【図１７】実施例３に係る認証システム１００の構成例を示す図である。
【図１８】実施例３に係るシステム基準軸選択部により実現される処理の一例を示す図である。
【図１９】実施例３に係る登録データの例（ｍ＝２）を示す図である。
【図２０】実施例３に係る登録処理部により実現される登録処理の一例を示す図である。
【図２１】実施例３の変形例に係る認証処理部により実現される認証モードにおける特徴点の照合処理の一例を示す図である。
【図２２】実施例４に係る認証処理部により実現される認証モードにおける特徴点の照合処理の一例を示す図である。
【発明を実施するための形態】
【００１３】
以下、図面を参照して実施形態について説明する。実施形態の構成は例示であり、実施形態の構成に限定されない。
【００１４】
〔実施例１〕
図１は、実施例１に係る照合方法を用いた認証システム１００の構成例を示す図である。図１に示す認証システム１００は、プロセッサ１、記憶装置２、表示装置３、入力装置４、生体センサ５、施錠制御装置６などを備える。これらの各機器は、バスなどの有線あるいは無線によって通信可能に接続されており、一つの筐体に収容されていても良いし、全部あるいは一部の機器を独立した筐体に収容しても良い。
【００１５】
プロセッサ１は、記憶装置２に格納された認証プログラム２１を実行することで、実施例１に係る照合処理を含む認証機能を実現する演算装置である。このようなプロセッサ１として、例えば、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）、ＭＰＵ（Ｍｉｃｒｏ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）、ＤＳＰ（Ｄｉｇｉｔａｌ  Ｓｉｇｎａｌ  Ｐｒｏｃｅｓｓｏｒ）やＦＰＧＡ（Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）などが挙げられる。なお、プロセッサ１は、２以上のコアを含むマルチコアプロセッサであっても良い。
【００１６】
記憶装置２は、プロセッサ１で実行される認証プログラム２１、認証機能で用いられる登録データＤＢ２２、プロセッサ１が処理する際に参照され又は書込まれる一時的なデータなどを記憶保持する装置であり、不揮発性記憶装置と揮発性記憶装置の両方あるいは一方を少なくとも含んで構成される。たとえば、ＲＡＭ（Random Access Memory）、ＲＯＭ（Read Only Memory）、ＳＳＤ（Solid State Drive）、ＨＤＤ（Hard Disk Drive）などが挙げられる。
【００１７】
表示装置３は、プロセッサ１が実行する認証機能の処理結果などを表示するように構成される。たとえば、液晶ディスプレイ（ＬＣＤ：Liquid Crystal Display）、有機ＥＬ（ＯＥＬ：Organic Electro Luminescence）ディスプレイ、有機発光ダイオード（ＯＬＥＤ：Organic Light Emitting Diode）ディスプレイなどが挙げられる。
【００１８】
入力装置４は、利用者による入力操作に応じた入力信号を、プロセッサ１へ出力するように構成される。入力装置４の例として、平板上のセンサを指でなぞることで位置を入力できるタッチパッド、キーボード、マウス、接触方式又は非接触方式のカードリーダ、あるいはこれらの組み合わせなどが挙げられる。なお、入力装置４と表示装置３とを組み合わせたタッチパネルを用いても良い。入力装置４は、利用者の操作に応じて、例えば、認証システム１００の動作モードとして登録モード及び認証モードの何れか一方を選択する信号をプロセッサ１に出力してもよい。また、入力装置４は、利用者の操作に応じて、利用者のユーザＩＤなどの属性情報をプロセッサ１に出力してもよい。
【００１９】
生体センサ５は、生体画像を取得するセンサである。生体画像の例としては、瞳孔の薄膜組織模様の画像、網膜上の血管パターンの画像、指紋画像、手のひら静脈画像などが挙げられる。対象とする生体画像の種類に応じて各種の既知の原理を用いたセンサを利用すればよい。例えば、手のひらの静脈パターンを表す静脈画像を取得する生体センサは、手のひらに照射するための近赤外光を照射するＬＥＤ（Light Emitting Diode）と、近赤外光に感度を持つ撮像素子の２次元アレイにより形成されるエリアセンサとを有する。例えば、近赤外光を照射する照明が設けられたＣＭＯＳ（Ｃｏｍｐｌｅｍｅｎｔａｒｙ  Ｍｅｔａｌ  Ｏｘｉｄｅ  Ｓｅｍｉｃｏｎｄｕｃｔｏｒ）カメラが挙げられる。
【００２０】
施錠制御装置６は、プロセッサ１により実現される認証機能による認証結果を受けて、利用者による保護対象へのアクセスを許容するか否かを制御するように構成される。例えば、施錠制御装置６は、認証機能による認証結果が認証成功である場合、入室が制限された部屋の扉の施錠を解除し、認証結果が認証失敗である場合、扉の施錠を解除しないように構成されてもよい。あるいは、施錠制御装置６は、物理的な扉の施錠ではなく、例えば、銀行などの金融機関における口座を用いた取引などの電子的な取引の許否を、認証機能による認証結果に応じて制御するように構成されてもよい。例えば、施錠制御装置６は、認証結果が認証成功である場合、金融機関における口座へのアクセスを許容し、認証結果が認証失敗である場合、金融機関における口座へのアクセスを許容しないように構成される。例えば、施錠制御装置６は、記憶装置２においてアクセスが制限されている記憶領域へのアクセスの許否を、認証機能による認証結果に応じて制御するように構成されてもよい。なお、施錠制御装置６は、他の機器と独立した存在ではなく、例えば、施錠制御装置６の機能をプロセッサ１により実現してもよい。
【００２１】
記憶装置２に格納される認証プログラム２１は、記憶装置２を構成するＲＡＭなどのメモリに実行可能に展開されることで、プロセッサ１により実行される。プロセッサ１が認証プログラム２１を実行することにより、モード選択部２１１、登録処理部２１２、認証処理部２１３、基準軸選択部２１４などの各種機能部が実現される。別言すると、プロセッサ１は、認証プログラム２１を実行することにより、上述の諸機能を実現するハードウェア回路に変換される。
【００２２】
モード選択部２１１は、認証システム１００の動作モードを、新たな生体データを登録データＤＢ２２に登録する処理を行う登録モードとするか、生体センサ５から取得した生体画像を登録データＤＢ２２に既に登録されている登録データを用いて認証する処理を行う認証モードとするか、を選択するように構成される機能部である。例えば、モード選択部２１１は、利用者による動作モードの選択操作に応じた入力信号を入力装置４から受けて、当該入力信号に基づいて動作モードを選択し、選択した動作モードに応じた機能部に対して実行の開始を指示するように構成される。
【００２３】
登録処理部２１２は、登録モードにおける処理を実現する機能部である。例えば、登録処理部２１２は、生体センサ５から取得した生体画像からｍ次元空間に投影された特徴点を抽出し、生体画像から抽出した特徴点を用いて新たな登録データを生成し、生成した登録データを登録データＤＢ２２に格納するように構成される。なお、本実施例における登録処理部２１２は、生体画像から抽出した特徴点を用いて登録データを生成する処理において、本実施例に係る基準軸選択部２１４によりｍ次元空間上の最適な基準軸を選択し、選択された基準軸上の座標値順に特徴点の整序が行われる。
【００２４】
認証処理部２１３は、認証モードにおける処理を実現する機能部である。例えば、認証処理部２１３は、生体センサ５から取得した生体画像からｍ次元空間に投影された特徴点（照合データ）を抽出し、照合データと登録データＤＢ２２に登録されている登録データとの照合を行い、照合結果に応じて認証の成否を出力するように構成される。なお、本実施例における認証処理部２１３は、照合データと登録データとの照合処理において、本実施例に係る基準軸選択部２１４によりｍ次元空間上の最適な基準軸を選択し、選択された基準軸上の座標値順に特徴点の照合が行われる。認証処理部２１３における、照合データと登録データとの照合処理は、特徴点の照合処理の一例である。
【００２５】
基準軸選択部２１４は、生体画像から抽出された特徴点の分布に応じたｍ次元空間上の最適な基準軸を選択するように構成される。例えば、基準軸選択部２１４は、ｍ次元空間上の座標値を有する１以上の特徴点（特徴点群）を入力として受け、入力された特徴点群をｍ次元空間の各座標軸上で座標値順に整序することでｍ個の整序された特徴点群を生成し、ｍ個の特徴点群の各々について整序に用いた基準軸上での近傍探索を行うことで当該基準軸上での近傍探において比較対象とされる特徴点の個数（比較回数）をカウントし、比較回数が最も少ない特徴点群の基準軸を最適な基準軸として選択するように構成される。基準軸選択部２１４における近傍探索の処理は、特徴点の照合処理の一例である。
【００２６】
図２は、実施例１に係る登録処理部２１２により実現される登録モードにおける処理の一例を示す図である。なお、図２に示す処理の一部は、本実施例に係る基準軸選択部２１４により実現される。図２に示す処理は、例えば、モード選択部２１１が入力装置４からの入力信号に基づいて登録モードを選択したことを契機として実行を開始してもよい。
【００２７】
まず、プロセッサ１は、登録データＤＢ２２に登録したい被験者（利用者）の生体部位（例えば、手のひら、指など）を撮影して得た生体画像を、生体センサ５から取得する（Ｓ１０１）。
【００２８】
プロセッサ１は、認証処理において登録データとして用いられる１以上の特徴点を生体画像から取得する（Ｓ１０２）。特徴点は、ｍ次元（ｍ＝２以上の自然数）空間上の座標値と特徴量を有する。生体画像から認証に用いる１以上の特徴点を抽出する方法は、既知の方法を用いればよい。例えば、生体画像として手のひら静脈画像を用いる場合、プロセッサ１は、静脈画像上の画素の輝度値に基づいて、手が写っている被写体領域と、手が写っていない背景領域とを区別する。手のひらに照射した近赤外光の反射光を撮影することで手のひら静脈画像を生成した場合、被写体領域の画素の輝度値は背景領域の画素の輝度値よりも高い。そこで、所定の被写体判定用の閾値以上の輝度値を有する画素の集合を被写体領域として抽出することができる。被写体判定用の閾値は、例えば、予め設定された固定値、あるいは画像内の各画素の輝度値の平均値などを参考に設定してもよい。
【００２９】
さらに、プロセッサ１は、被写体領域または被写体領域に含まれる矩形領域を抽出領域とし、当該抽出領域の画素を静脈判定用の閾値で２値化することで、静脈が写っている可能性がある画素の集合と、それ以外の画素の集合とに２値化した２値化画像を生成する。例えば、静脈が写っている画素の輝度値は、その周囲の画素の輝度値よりも低い。これは、静脈中の還元ヘモグロビンに起因する。すなわち、動脈中の酸化ヘモグロビンに比べて、静脈中の還元ヘモグロビンは近赤外光を吸収するため、手のひらに近赤外光を照射して撮影すると、還元ヘモグロビンを含む静脈が近赤外光を吸収して、静脈の血管パターンが暗く映るためである。そこで、プロセッサ１は、静脈判定用の閾値未満の輝度値を有する画素を静脈が写っている可能性がある画素（静脈画素）とし、静脈判定用の閾値以上の輝度値を有する画素を静脈が写っていない画素とすることができる。静脈判定用の閾値は、例えば、被写体領域内の各画素の輝度値の平均値などを参考にして設定してもよい。あるいは、静脈判定用の閾値は、被写体領域内の各画素の輝度値の分布に対して「大津の２値化法」などの既知のアルゴリズムを適用することによって決定されてもよい。さらに、プロセッサ１は、２値化画像上の静脈画素の集合である静脈パターンを、既知のアルゴリズムを用いて、例えば１画素幅を有する線に細線化する処理を行い、細線化された静脈パターン上の分岐点や端点などの位置を特徴点として抽出する。その際、細線化前の２値化画像上の静脈画素の幅（すなわち静脈の血管の太さ）を参照して、抽出した特徴点における奥行きの値（例えば、生体センサからの距離）を含む座標値を取得してもよい。例えば、生体センサからの距離が遠く離れるほど、静脈の血管の太さは見かけ上は細く見え、近いほど太く見えるという特性を利用し、血管の見かけ上の太さと距離との対応関係を予め記憶装置２に格納しておき、当該対応関係に基づいて細線化前の２値化画像上の静脈画素の幅から特徴点における奥行きの値（距離）を示す座標値を取得してもよい。あるいは、２つの生体センサを用いてステレオ撮像した２つの生体画像を用いて、既知の三角測量の手法により各特徴点における奥行きの値（例えば、生体センサからの距離）を含む座標値を取得してもよい。
【００３０】
また、プロセッサ１は、抽出した特徴点の位置を中心とした所定画素数の局所矩形領域における画素（周辺画素）を参照し、ＬＰＱ（Local Phase Quantization）、ＬＢＰ（Local Binary Pattern）、ＳＩＦＴ（Scale-Invariant Feature Transform）／ＳＵＲＦ（Speeded Up Robust Features），ＯＲＢ（Oriented FAST and Rotated BRIEF），ＢＲＩＥＦ（Binary Robust Independent Elementary Features），ＢＲＩＳＫ（Binary Robust Invariant Scalable Keypoints），Ｄ−Ｎｅｔｓ，ＫＡＺＥなどの既知の手法もしくはそれらを組み合わせた手法を用いて、当該特徴点における特徴量を設定する。なお、上述の生体画像から認証処理に用いられる特徴点の抽出において、あるいは、特徴点の抽出に先立って、生体画像の正規化処理を行ってもよい。例えば、生体画像上の被写体領域の全部または一部の形状などを用いて、被写体領域内の画素に対する拡大、縮小、回転、平行移動などのアフィン変換を行うことで、被写体領域が画像上の所定範囲に位置するように位置合わせをしても良い。
【００３１】
図３は、特徴点の抽出に用いられる生体画像の一例を示す図（その１）である。図３では、横方向をＸ軸とし、縦方向をＹ軸とした２次元空間において、手が写っている被写体領域Ａ１１を破線で示し、被写体領域Ａ１１に含まれる矩形領域Ａ１２を実線の矩形で示している。矩形領域Ａ１２には、二値化及び細線化などにより得られた静脈パターンＡ１３が実線で示されており、静脈パターンＡ１３から抽出された１以上の特徴点Ａ１４が白点で示されている。なお、手首と指を除いた部分であって、手を握ったときに内側になる部分である手掌は、手を開いた状態では縦と横の比率が略１：１となる。そのため、図３に示す例では、生体情報を抽出する範囲である抽出領域は、手掌を写した領域を含む範囲あるいは手掌を写した領域に含まれる範囲で設定され、アスペクト比が略１：１である。本実施例において、生体センサ５から得られる生体画像は、手の全体を被写体としなくてもよい。例えば、矩形領域Ａ１２で示される範囲を、生体センサ５から得られる生体画像としてもよい。
【００３２】
図４は、図３に例示される生体画像から抽出された特徴点の分布を示す図である。図４の例では、特徴点の座標値の最大値と最小値で示される分布幅は、各座標軸において略同一である。すなわち、Ｘ軸上の分布幅Ｒ１１とＹ軸上の分布幅Ｒ１２との比（アスペクト比）は、略１：１である。一方、Ｙ軸上では特徴点が一様に分布しているのに対し、Ｘ軸上では局所的な範囲Ｒ１０において集中的に分布している。そのため、図４の例では、Ｘ軸上の座標値順に特徴点を整序した場合、範囲Ｒ１０においてＸ軸上の近傍探索の対象を適切な個数に制限することができず、Ｘ軸上での近傍探索において比較対象とされる特徴点の個数（比較回数）が増加し、演算コストが高くなる。一方、Ｙ軸上の座標値順に特徴点を整序した場合、分布幅Ｒ１２内の何れの範囲においても、Ｙ軸上の近傍探索の対象を適切な個数に制限することができるため、Ｙ軸上での近傍探索における比較回数を抑制でき、近傍探索の効率を向上させることができる。
【００３３】
図５は、特徴点の抽出に用いられる生体画像の一例を示す図（その２）である。図５では、図３と同様に、横方向をＸ軸とし、縦方向をＹ軸とした２次元空間において、手が写っている被写体領域Ａ２１を破線で示し、被写体領域Ａ２１に含まれる矩形領域Ａ２２を実線の矩形で示している。矩形領域Ａ２２には、図３と同様に、二値化及び細線化などにより得られた静脈パターンＡ２３が実線で示されており、静脈パターンＡ２３から抽出された１以上の特徴点Ａ２４が白点で示されている。なお、手首と指を除いた部分であって、手を握ったときに内側になる部分である手掌は、手を開いた状態では縦と横の比率が略１：１となる。そのため、図５に示す例では、生体情報を抽出する範囲である抽出領域は、手掌を写した領域を含む範囲あるいは手掌を写した領域に含まれる範囲で設定され、アスペクト比が略１：１である。本実施例において、生体センサ５から得られる生体画像は、手の全体を被写体としなくてもよい。例えば、矩形領域Ａ２２で示される範囲を、生体センサ５から得られる生体画像としてもよい。
【００３４】
図６は、図５に例示される生体画像から抽出された特徴点の分布を示す図である。図６の例では、特徴点の座標値の最大値と最小値で示される分布幅は、図４と同様に、各座標軸において略同一である。すなわち、Ｘ軸上の分布幅Ｒ２１とＹ軸上の分布幅Ｒ２２との比（アスペクト比）は、略１：１である。一方、Ｘ軸上では特徴点が一様に分布しているのに対し、Ｙ軸上では局所的な範囲Ｒ２０において集中的に分布している。そのため、図６の例では、図４の例とは反対に、Ｙ軸上の座標値順に特徴点を整序した場合、範囲Ｒ２０において近傍探索の対象を適切な個数に制限することができず、Ｙ軸上での近傍探索において比較対象とされる特徴点の個数（比較回数）が増加し、演算コストが高くなる。一方、Ｘ軸上の座標値順に特徴点を整序した場合、分布幅Ｒ２１内の何れの範囲においても、Ｘ軸上の近傍探索の対象を適切な個数に制限することができるため、Ｘ軸上での近傍探索における比較回数を抑制でき、近傍探索の効率を向上させることができる。
【００３５】
上述のように、図４の例では、Ｙ軸を基準軸として座標値順に整序された特徴点群を用いて、基準軸上での近傍探索を行った方が、Ｘ軸を基準軸とする場合よりも近傍探索の効率が向上する。一方、図６の例では、Ｘ軸を基準軸として座標値順に整序された特徴点群を用いて、基準軸上での近傍探索を行った方が、Ｘ軸を基準軸とする場合よりも近傍探索の効率が向上する。しかしながら、図４及び図６の何れの例でも、各座標軸における特徴点の分布幅は略同一であるため、近傍探索における最適な基準軸を分布幅に基づいて選択することは困難である。別言すると、特徴点の源となる生体パターン（例えば、手のひら静脈パターン）が展開される領域（例えば、抽出領域）の各座標軸上の寸法の比率（例えば、アスペクト比）が略同一（例えば、略１：１）である場合、各軸における特徴点の分布幅に有意な差がみられることは稀であり、しかも各座標軸において特徴点が一様に分布しているとは限らないため、各座標軸における特徴点の分布幅に基づいて基準軸を選択したとしても、近傍探索の効率が低下し得るという問題がある。そこで、本実施例では、基準軸選択部２１４において、ｍ次元空間の各軸を基準軸として座標値順に整序された特徴点群を用いて、各基準軸での近傍探索のシミュレーション（模擬演算）を行い、基準軸上での近傍探索において比較対象とされる特徴点の個数（比較回数）をカウントし、比較回数の少ない特徴点群の基準軸を近傍探索における最適な基準軸として選択する処理が行われる。図２に例示する登録処理の流れでは、処理Ｓ１０３から処理Ｓ１０５までの処理が、基準軸選択部２１４における処理の一例である。
【００３６】
図２に戻って、処理の説明を続ける。プロセッサ１は、Ｓ１０２で取得した１以上の特徴点から、ｍ次元空間を規定する各座標軸を基準軸として、基準軸上で座標値順に整序されたｍ個の特徴点群（第１特徴点群）を生成する（Ｓ１０３）。例えば、２次元空間に投影された特徴点の場合、Ｘ軸上の座標値順に整序された第１特徴点群と、Ｙ軸上の座標値順に整序された第１特徴点群とが生成される。なお、生体画像から特徴点を抽出する際の画素の走査方向として、Ｘ軸を主走査方向とし、Ｙ軸を副走査方向とした場合、生体画像から抽出された１以上の特徴点は、副走査方向であるＹ軸上の座標値順に整序された状態となる。そのため、プロセッサ１は、処理Ｓ１０２で生体画像から取得した１以上の特徴点をＹ軸上の座標値順に整序された第１特徴点群として扱ってもよい。この場合、副走査方向とは異なる軸であるＸ軸上の座標値順に整序する処理のみを行うことで、各基準軸上で座標値順に整序された２個の第１特徴点群を取得することができる。
【００３７】
プロセッサ１は、各基準軸上の座標値順に整序された第１特徴点群について、第１特徴点群に含まれる１以上の特徴点の各々を基準点と参照点とし、基準軸上での近傍探索において比較対象とされる特徴点の個数（比較回数）をカウントする（Ｓ１０４）。なお、基準軸上での近傍探索において検出される近傍点は、照合処理において照合スコアの演算対象となる近傍点とは異なり得る。
【００３８】
図７は、近傍探索における比較回数のカウント処理Ｓ１０４の一例を示す図である。図７では、処理Ｓ１０４において一つの基準軸に着目した処理の例が示されている。例えば、Ｘ軸を基準軸として整序された第１特徴点群と、Ｙ軸を基準軸として整序された第１特徴点群との２個の第１特徴点群がある場合、図７では、Ｘ軸又はＹ軸の何れか一方を基準軸として整序された１個の第１特徴点群についての処理が例示されている。また、プロセッサ１は、図７に例示する処理を実行する際に、第１特徴点群における特徴点を基準点として参照する場合のインデックス値（基準点インデックス値）と、参照点として参照する場合のインデックス値（参照点インデックス値）との２つのインデックス値を有するものとする。以下の説明において、「特徴点をとりだす」とは、基準軸上の座標値順に整序された１以上の特徴点の何れかを参照することを意味し、「特徴点をとりだす」処理を行った後であっても、第１特徴点群に含まれる特徴点の個数に影響は無いものとする。すなわち、以下の説明において、「特徴点をとりだす」ことは「特徴点を参照する」ことと同義である。
【００３９】
プロセッサ１は、ある基準軸上の座標値順に整序された第１特徴点群から、基準軸上の座標値順（例えば、昇順）に１つの特徴点（基準点）をとりだし（Ｓ１０４−１）、基準軸上の座標値順（例えば、昇順）に１つの特徴点（参照点）をとりだす（Ｓ１０４−２）。なお、ある基準点に対して、処理Ｓ１０４−２において初回の参照点をとりだす場合、参照点インデックス値を一番初めの番号に設定してもよいし、前回の基準点に対する基準軸上での近傍探索において最初に近傍点として検出された参照点のインデックス値を設定してもよい。後者の場合、前回の基準点に対する近傍探索の結果を用いて、今回の基準点に対する基準軸上での近傍探索の対象を制限することができるため、近傍探索の効率をより向上させることができる。これは、前回の基準点と今回の基準点とは、基準軸上の座標値順に整序された隣同士の特徴点であるため、前回の基準点に対する基準軸上での近傍探索において最初に近傍点として検出された参照点よりも前に出現する参照点（すなわち、前回の基準点との基準距離が閾値以上の参照点）は、今回の基準点との基準距離が必ず近傍探索用の閾値以上となり、近傍探索の比較対象にする必要がないためである。
【００４０】
プロセッサ１は、基準軸上での近傍探索における比較回数を１つカウントアップする（Ｓ１０４−３）。そして、プロセッサ１は、基準軸上での基準点と参照点との座標値の差分（基準距離）が近傍探索用の閾値未満か否かを判定し（Ｓ１０４−４）、基準距離が近傍探索用の閾値未満の場合（Ｓ１０４−４でＹＥＳ）、当該参照点を今回の基準点に対する近傍点とし、当該参照点が今回の基準点に対して最初に検出した近傍点か否かを判定する（Ｓ１０４−５）。当該参照点が今回の基準点に対して最初に検出した近傍点である場合（Ｓ１０４−５でＹＥＳ）、プロセッサ１は、今回の基準点に対する当該参照点のインデックス値（参照点インデックス値）を、次回の基準点に対する近傍探索で最初にとりだす参照点のインデックス値として記憶（保持）する（Ｓ１０４−６）。一方、今回の基準点に対して２回目以降に検出した近傍点の場合（Ｓ１０４−５でＮＯ）、プロセッサ１は、処理Ｓ１０４−６を実行せずにスキップすればよい。
【００４１】
プロセッサ１は、探索対象とする次の参照点が無いか否かを判定する（Ｓ１０４−７）。例えば、参照点インデックス値が第１特徴点群に含まれる特徴点の個数に達している場合、プロセッサ１は、探索対象とする次の参照点が無いと判定することができる。探索対象とする次の参照点が無い場合（Ｓ１０４−７でＹＥＳ）、プロセッサ１は、今回の基準点に対する基準軸上での近傍探索の処理を終了する。これにより、今回の基準点についての比較回数が確定する。そして、プロセッサ１は、次の基準点に対する近傍探索の処理を開始すべきか否かを判定する（Ｓ１０４−８）。すなわち、処理Ｓ１０４−８において、プロセッサ１は、探索対象とする次の基準点が無いか否かを判定する。例えば、基準点インデックス値が第１特徴点群に含まれる特徴点の個数に達している場合、プロセッサ１は、探索対象とする次の基準点が無いと判定することができる。探索対象とする次の基準点が無い場合（Ｓ１０４−８でＹＥＳ）、プロセッサ１は、ある一つの基準軸に対する第１特徴点群の近傍探索のシミュレーション結果として比較回数を得る（Ｓ１０４−９）。別言すると、探索対象とする次の基準点が無い場合（Ｓ１０４−８でＹＥＳ）、プロセッサ１は、ある一つの基準軸について、各基準点についてカウントした比較回数の合計値を取得する（Ｓ１０４−９）。
【００４２】
処理Ｓ１０４−４の判定において、基準距離が近傍探索用の閾値以上であると判定した場合（Ｓ１０４−４でＮＯ）、プロセッサ１は、今回の基準点に対する近傍探索の処理を終了する。これにより、今回の基準点についての比較回数が確定する。そして、プロセッサ１は、上述の処理Ｓ１０４−８以降の処理を実行する。処理Ｓ１０４−４の判定により、現在の参照点インデックス値が第１特徴点群に含まれる特徴点の個数未満の値であったとしても、今回の基準点に対する近傍探索の処理を終了させることができ、近傍探索の効率を向上させることができる。すなわち、今回の参照点と次の参照点とは基準軸上の座標値順に整序されているため、今回の参照点について基準距離が閾値以上である場合、次の参照点についても基準距離は必ず近傍探索用の閾値以上となり、近傍探索の対象にする必要がないためである。
【００４３】
処理Ｓ１０４−７の判定において、探索対象とする次の参照点があると判定された場合（Ｓ１０４−７でＮＯ）、プロセッサ１は、Ｓ１０４−２以降の処理を実行する。その際、参照点インデックス値は、例えば、１つカウントアップされることで、基準軸上の座標値順に次の参照点を第１特徴点群からとりだすことができる。
【００４４】
処理Ｓ１０４−８の判定において、探索対象とする次の基準点があると判定された場合（Ｓ１０４−８でＮＯ）、プロセッサ１は、Ｓ１０４−１以降の処理を実行する。その際、基準点インデックス値は、例えば、１つカウントアップされることで、基準軸上の座標値順に次の基準点を第１特徴点群からとりだすことができる。また、参照点インデックス値は、上述したように、一番初めの番号（例えば、１番）に設定してもよいし、処理Ｓ１０４−６で保持された参照点インデック値の値を用いて設定してもよい。
【００４５】
以上が、図７に示す近傍探索における比較回数のカウント処理Ｓ１０４の一例である。図８は、基準軸をＹ軸とした場合の基準点Ｐ０に対する近傍探索の例を示す図である。図８の例では、今回の基準点Ｐ０の基準軸上の座標値であるｙ０を含み近傍探索の上限値ｙ１と下限値ｙ２とで区画される範囲内に、Ｐ０、Ｐ１、Ｐ２、Ｐ３、Ｐ４、Ｐ５の６個の参照点が図示されている。上限値ｙ１は、例えば、前回の基準点での近傍探索で近傍点として最初に検出された参照点の基準軸上の座標値である。下限値ｙ２は、今回の基準点Ｐ０の基準軸上の座標値ｙ０に近傍探索用の閾値Ｒｔｈを加算した座標値である。なお、図８の点Ｐ０は、基準点Ｐ０でもあり、参照点Ｐ０でもあるものとする。
【００４６】
図９は、図８と同じ特徴点の分布において、基準軸をＸ軸とした場合の基準点に対する近傍探索の例を示す図である。図９の例では、今回の基準点Ｐ０の基準軸上の座標値であるｘ０を含み近傍探索の上限値ｘ１と下限値ｘ２とで区画される範囲内に、Ｐ０、Ｐ１、Ｐ２、Ｐ３、Ｐ４、Ｐ５、Ｐ６、Ｐ７、Ｐ８、Ｐ９、Ｐ１０、Ｐ１１、Ｐ１２の１３個の参照点が図示されている。上限値ｘ１は、例えば、前回の基準点での近傍探索で近傍点として最初に検出された参照点の基準軸上の座標値である。下限値ｘ２は、今回の基準点Ｐ０の基準軸上の座標値ｘ０に近傍探索用の閾値Ｒｔｈを加算した座標値である。なお、図９の点Ｐ０は、基準点Ｐ０でもあり、参照点Ｐ０でもあるものとする。図８の例と比較すると、図９の例では、Ｘ軸を基準軸とした近傍探索の比較対象が多く、最適な基準軸ではないことが理解される。
【００４７】
次に、図２に戻って、処理Ｓ１０５以降の処理について説明する。プロセッサ１は、処理Ｓ１０４において、すべての基準軸について近傍探索の比較回数を得た後、すなわちｍ次元空間におけるｍ個の比較回数を得た後、近傍探索の比較回数の少ない基準軸を、最適な基準軸として選択する（Ｓ１０５）。
【００４８】
プロセッサ１は、選択した基準軸で整序された第１特徴点群を、選択した基準軸に関する情報と関連付けて、登録データとして登録ＤＢ２２に格納する（Ｓ１０６）。図１０は、登録データの一例を示す図である。図１０の例において、登録データは、生体画像を提供した被験者（利用者）のユーザＩＤなどを示す属性情報Ｔ１１と、最適なものとして選択された基準軸に関する情報を有する基準軸情報Ｔ１２と、第１特徴点群に含まれる特徴点の個数を示す特徴点数Ｔ１３と、選択された基準軸上の座標値順に整序された１以上の特徴点を有する第１特徴点群Ｔ１４とを含む。すなわち、処理Ｓ１０６において、プロセッサ１は、生体画像を提供した被験者（利用者）のユーザＩＤなどを示す属性情報Ｔ１１と、選択した基準軸に関する情報を有する基準軸情報Ｔ１２と、第１特徴点群に含まれる特徴点の個数を示す特徴点数Ｔ１３と、選択した基準軸上の座標値順に整序された１以上の特徴点を有する第１特徴点群Ｔ１４とを有する登録データを生成し、登録データを登録データＤＢ２２に格納する。１以上の特徴点の各々は、ｍ次元空間における座標値（ｍ次元座標値）と、当該座標値周辺の画素の特性を示す特徴量とを含むものとする。なお、特徴量は、上述したように、当該座標値周辺の画素から既知のアルゴリズムを用いて取得された値である。なお、プロセッサ１は、入力装置４などから生体画像を提供した被験者（利用者）のユーザＩＤなどを示す属性情報Ｔ１１を取得してもよい。
【００４９】
以上が、実施例１に係る登録処理の一例である。次に、実施例１に係る認証処理の一例を説明する。図１１は、実施例１に係る認証処理部２１３により実現される認証モードにおける処理の一例を示す図である。なお、図１１に示す処理の一部は、本実施例に係る基準軸選択部２１４により実現される。図１１に示す処理は、例えば、モード選択部２１１が入力装置４からの入力信号に基づいて認証モードを選択したことを契機として実行を開始してもよい。
【００５０】
プロセッサ１は、認証させたい被験者（利用者）の生体部位（例えば、手のひら、指など）を撮影して得た生体画像を、生体センサ５から取得する（Ｓ２０１）。
【００５１】
プロセッサ１は、認証処理において照合データとして用いられる１以上の特徴点（第２特徴点群）を生体画像から取得する（Ｓ２０２）。第２特徴点群の特徴点は、第１特徴点群と同様に、ｍ次元（ｍ＝２以上の自然数）空間上の座標値と特徴量を有する。生体画像から認証に用いる１以上の特徴点を抽出する方法は、図２に示す処理Ｓ１０２と同様の既知の方法を用いればよい。なお、処理Ｓ２０２において、あるいは、処理Ｓ２０２に先立って、生体画像の正規化処理を行ってもよい。例えば、生体画像上の被写体領域の全部または一部の形状などを用いて、被写体領域内の画素に対する拡大、縮小、回転、平行移動などのアフィン変換を行うことで、被写体領域が画像上の所定範囲に位置するように位置合わせをしても良い。
【００５２】
プロセッサ１は、認証処理で用いる登録データを、登録データＤＢ２２から取得する（Ｓ２０３）。処理Ｓ２０３において、プロセッサ１は、認証させたい被験者（利用者）のユーザＩＤなどの属性情報を入力装置４などから受け、当該入力された属性情報と一致する属性情報Ｔ１１を有する登録データを、登録データＤＢ２２から取得してもよい。
【００５３】
プロセッサ１は、照合データと登録データとの照合処理を行い、照合データと登録データとの一致度合を示す照合スコアを算出する（Ｓ２０４）。上述の登録処理において説明したように、近傍探索の基準軸としてどの軸を選択するかによって、基準軸上での近傍探索の効率が低下し得るという問題がある。そこで、本実施例に係る照合処理Ｓ２０４では、基準軸選択部２１４において、ｍ次元空間を規定する各座標軸を基準軸とし、基準軸上で座標値順に整序された特徴点群を用いて、各基準軸での近傍探索のシミュレーションを行い、基準軸上での近傍探索において比較対象とされる特徴点の個数（比較回数）をカウントし、比較回数の少ない特徴点群の基準軸を近傍探索における最適な基準軸として選択する処理が行われる。
【００５４】
図１２は、認証モードにおける照合処理Ｓ２０４の一例を示す図である。図１２に例示する照合処理Ｓ２０４の流れでは、例えば、処理Ｓ２０４−１から処理Ｓ２０４−３までの処理が、基準軸選択部２１４における処理の一例である。
【００５５】
プロセッサ１は、処理Ｓ２０２で取得した照合データから、ｍ次元空間を規定する各座標軸を基準軸とし、基準軸上で座標値順に整序されたｍ個の特徴点群（第２特徴点群）を生成する（Ｓ２０４−１）。例えば、２次元空間に投影された特徴点の場合、Ｘ軸上の座標値順に整序された第２特徴点群と、Ｙ軸上の座標値順に整序された第２特徴点群とが生成される。なお、処理Ｓ２０２において生体画像から特徴点を抽出する際の画素の走査方向として、Ｘ軸を主走査方向とし、Ｙ軸を副走査方向とした場合、生体画像から抽出された１以上の特徴点は、副走査方向であるＹ軸上の座標値順に整序された状態となる。そのため、プロセッサ１は、生体画像から抽出した１以上の特徴点をＹ軸上の座標値順に整序された第２特徴点群として扱ってもよい。この場合、副走査方向とは異なる軸であるＸ軸上の座標値順に特徴点を整序する処理のみを行うことで、ｍ次元空間を規定する各座標軸を基準軸として基準軸上で座標値順に整序された２個の第２特徴点群を取得することができる。
【００５６】
プロセッサ１は、各基準軸上の座標値順に整序された第２特徴点群について、第２特徴点群に含まれる１以上の特徴点を基準点と参照点とし、基準軸上での近傍探索において比較対象とされる特徴点の個数（比較回数）をカウントする（Ｓ２０４−２）。なお、処理Ｓ２０４−２の具体例は、図７に示す処理例と同様であるため、詳細な説明は省略する。
【００５７】
プロセッサ１は、処理Ｓ２０４−２において、すべての基準軸について近傍探索の比較回数を得た後、すなわちｍ次元空間におけるｍ個の比較回数を得た後、近傍探索の比較回数の少ない基準軸を、照合データ（第２特徴点群）に対する最適な基準軸として選択する（Ｓ２０４−３）。
【００５８】
プロセッサ１は、照合データの基準軸と登録データの基準軸情報で示される基準軸とを比較し、照合データの基準軸と登録データの基準軸とが不一致であるか否かを判定する（Ｓ２０４−４）。プロセッサ１は、照合データの基準軸と登録データの基準軸とが不一致である場合（Ｓ２０４−４でＹＥＳ）、照合データの基準軸上の座標値順に、登録データの第１特徴点群を整序する（Ｓ２０４−５）。一方、照合データの基準軸と登録データの基準軸とが一致する場合（Ｓ２０４−４でＮＯ）、プロセッサ１は、処理Ｓ２０４−５を実行せずにスキップすればよい。なお、登録データの生成に用いた生体画像の被験者（利用者）が照合データの生成に用いた生体画像の被験者（利用者）と同一人物である場合、登録データの第１特徴点群はｍ次元空間において照合データの第２特徴点群と略同一に分布し得る。そのため、登録データの被験者（利用者）と照合データの被験者（利用者）とが同一人物である場合、処理Ｓ２０４−１乃至処理Ｓ２０４−３により選択した照合データの基準軸は、登録データの基準軸情報で示される基準軸と一致し、処理Ｓ２０４−５を実行せずに済む可能性が高い。したがって、登録データの被験者（利用者）と照合データの被験者（利用者）とが同一人物である場合、処理Ｓ２０４−５を実行せずに済む分、認証処理の応答速度を向上させることができる。別言すると、登録データの登録処理の実行時に、基準軸選択部２１４が登録データ（第１特徴点群）を用いて近傍探索のシミュレーションを行い、最適な基準軸上での座標値順に整序された第１特徴点群が得られるため、認証処理における処理Ｓ２０４−５の実行を省略することができる。
【００５９】
プロセッサ１は、照合データの基準軸で整序された第１特徴点群を基準点群とし、照合データの基準軸で整序された第２特徴点群を参照点群として、図１２に示す処理を続行する（Ｓ２０４−６）。なお、図１２の処理に関する以下の説明において、「照合データの基準軸」を基準軸と呼ぶ。「特徴点をとりだす」とは、基準軸上の座標値順に整序された１以上の特徴点の何れかを参照することを意味し、「特徴点をとりだす」処理を行った後であっても、参照された特徴点群に含まれる特徴点の個数に影響は無いものとする。すなわち、以下の説明において、「特徴点をとりだす」ことは「特徴点を参照する」ことと同義である。また、プロセッサ１は、図１２に例示する処理を実行する際に、基準点群を参照する用のインデックス値（基準点インデックス値）と、参照点群の参照点を参照する用のインデックス値（参照点インデックス値）との２つのインデックス値を有するものとする。
【００６０】
プロセッサ１は、基準軸上の座標値順（例えば、昇順）に基準点群から基準点をとりだし（Ｓ２０４−７）、基準軸上の座標値順（例えば、昇順）に参照点群から参照点をとりだす（Ｓ２０４−８）。なお、ある基準点に対して、処理Ｓ２０４−８において初回の参照点をとりだす場合、参照点インデックス値を一番初めの番号（例えば、１）に設定してもよいし、前回の基準点に対する基準軸上での近傍探索において最初に近傍点として検出された参照点のインデックス値を設定してもよい。後者の場合、前回の基準点に対する近傍探索の結果を用いて、今回の基準点に対する基準軸上での近傍探索の対象を制限することができるため、近傍探索の効率をより向上させることができる。これは、前回の基準点と今回の基準点とは、基準軸上の座標値順に整序された隣同士の特徴点であるため、前回の基準点に対する基準軸上での近傍探索において最初に近傍点として検出された参照点よりも前に出現する参照点（すなわち、前回の基準点との基準距離が閾値以上の参照点）は、今回の基準点との基準距離が必ず近傍探索用の閾値以上となり、近傍探索の比較対象にする必要がないためである。これにより、近傍探索の効率をより向上させることができる。
【００６１】
プロセッサ１は、基準軸上での基準点と参照点との座標値の差分（基準距離）が近傍探索用の閾値未満か否かを判定し（Ｓ２０４−９）、基準距離が近傍探索用の閾値未満の場合（Ｓ２０４−９でＹＥＳ）、当該参照点を今回の基準点に対する近傍点として検出し、近傍点と基準点との点間距離を算出する（Ｓ２０４−１０）。なお、点間距離には、ユークリッド距離やマンハッタン距離などの種々の距離概念を用いることができる。
【００６２】
プロセッサ１は、近傍点と基準点との点間距離が近傍探索用の閾値未満であるか否かを判定する（Ｓ２０４−１１）。近傍点と基準点との点間距離が近傍探索用の閾値未満である場合（Ｓ２０４−１１でＹＥＳ）、プロセッサ１は、近傍点として検出された参照点の特徴量と基準点の特徴量とを用いて照合スコアを算出する（Ｓ２０４−１２）。なお、照合スコアには、特徴量を用いて相関演算を行った結果である特徴量の相関値や、ビット系列で表現された各特徴量のハミング距離などを用いることができる。一方、近傍点と基準点との点間距離が近傍探索用の閾値以上の場合（Ｓ２０４−１１でＮＯ）、プロセッサ１は、処理Ｓ２０４−１２を実行せずにスキップする。すなわち、本実施例では、点間距離が近傍探索用の閾値以上となる参照点は、基準距離が閾値未満であったとしても、照合スコアの算出対象とはされない。しかし、本発明はこの例に限定されず、変形例として、処理Ｓ２０４−１０及び処理Ｓ２０４−１１を省略し、基準距離が近傍探索用の閾値未満となるすべての参照点を、照合スコアの算出対象に含めてもよい。この変形例によれば、点間距離に関する処理（Ｓ２０４−１０、Ｓ２０４−１１）が省略される分、認証処理の応答速度をより向上させることができる。
【００６３】
プロセッサ１は、処理Ｓ２０４−９における判定処理で基準距離が閾値未満とされた参照点が、今回の基準点に対して最初に検出された近傍点であるか否かを判定する（Ｓ２０４−１３）。最初に検出された近傍点である場合（Ｓ２０４−１３でＹＥＳ）、プロセッサ１は、今回の基準点に対する当該近傍点（参照点）のインデックス値（参照点インデックス値）を、次回の基準点に対する近傍探索で最初にとりだす参照点のインデックス値として記憶（保持）する（Ｓ２０４−１４）。一方、今回の基準点に対して２回目以降に検出した近傍点の場合（Ｓ２０４−１３でＮＯ）、プロセッサ１は、処理Ｓ２０４−１４を実行せずにスキップすればよい。
【００６４】
プロセッサ１は、探索対象とする次の参照点が無いか否かを判定する（Ｓ２０４−１５）。例えば、参照点インデックス値が参照点群に含まれる特徴点（参照点）の個数に達している場合、プロセッサ１は、探索対象とする次の参照点が無いと判定することができる。探索対象とする次の参照点が無い場合（Ｓ２０４−１５でＹＥＳ）、プロセッサ１は、今回の基準点に対する基準軸上での近傍探索の処理を終了し、最大値の照合スコアの参照点を今回の基準点に対する最近傍点（基準点に対する対応点と呼ばれることもある）とし、当該照合スコアを今回の基準点に対する照合スコアとする（Ｓ２０４−１６）。一方、処理Ｓ２０４−１５において、探索対象とする次の参照点があると判定された場合（Ｓ２０４−１５でＮＯ）、プロセッサ１は、Ｓ２０４−８以降の処理を実行する。その際、参照点インデックス値は、例えば、１つカウントアップされることで、基準軸上の座標値順に次の参照点を参照点群からとりだすことができる。
【００６５】
プロセッサ１は、次の基準点に対する近傍探索の処理を続行すべきか否かを判定する（Ｓ２０４−１７）。すなわち、処理Ｓ２０４−１７において、プロセッサ１は、探索対象とする次の基準点が無いか否かを判定する。例えば、基準点インデックス値が基準点群に含まれる特徴点（基準点）の個数に達している場合、プロセッサ１は、探索対象とする次の基準点が無いと判定することができる。探索対象とする次の基準点が無い場合（Ｓ２０４−１７でＹＥＳ）、プロセッサ１は、１以上の基準点の各々について処理Ｓ２０４−１６を実行して取得した１以上の照合スコアを用いて総合スコアを算出する（Ｓ２０４−１８）。プロセッサ１は、例えば、１以上の照合スコアをスコア値の降順に整序し、先頭から所定個数の照合スコア（例えば、上位１０個の照合スコア）を選択し、選択された所定個数の照合スコアを用いて種々の統計処理を行って得た値を総合スコアとしてもよい。例えば、選択された所定個数の照合スコアの平均値、あるいは中央値を総合スコアとしてもよい。
【００６６】
処理Ｓ２０４−１７において、探索対象とする次の基準点があると判定された場合（Ｓ２０４−１７でＮＯ）、プロセッサ１は、Ｓ２０４−７以降の処理を実行する。その際、基準点インデックス値は、例えば、１つカウントアップされることで、基準軸上の座標値順に次の基準点を基準点群からとりだすことができる。また、参照点インデックス値は、上述したように、一番初めの番号（例えば、１番）に設定してもよいし、処理Ｓ２０４−１４で保持された参照点インデック値の値を用いて設定してもよい。
【００６７】
処理Ｓ２０４−９において、基準距離が近傍探索用の閾値以上であると判定した場合（Ｓ２０４−９でＮＯ）、プロセッサ１は、今回の基準点に対する近傍探索の処理を終了し、上述の処理Ｓ２０４−１６以降の処理を実行する。これにより、現在の参照点インデックス値が参照点群に含まれる特徴点（参照点）の個数未満の値であったとしても、今回の基準点に対する近傍探索の処理を終了させることができ、近傍探索の効率をより向上させることができる。すなわち、今回の参照点と次の参照点とは基準軸上の座標値順に整序されているため、今回の参照点について基準距離が閾値以上である場合、次の参照点についても基準距離は必ず近傍探索用の閾値以上となり、近傍探索の対象にする必要がないためである。
【００６８】
以上が、図１２に示す照合処理Ｓ２０４の一例である。次に、図１１に戻って、処理Ｓ２０５の説明を続ける。プロセッサ１は、処理Ｓ２０４により取得した総合スコアを認証用の閾値と比較して、照合データと登録データとの一致度合を判定する（Ｓ２０５）。総合スコアが認証用の閾値以上である場合（Ｓ２０５でＹＥＳ）、プロセッサ１は、照合データと登録データとは一致すると判定し、認証成功を示す認証結果を出力する（Ｓ２０６）。例えば、プロセッサ１は、認証成功を示す認証結果を表示装置３に出力してもよい。例えば、プロセッサ１は、認証成功を示す認証結果を施錠制御装置６に出力してもよい。
【００６９】
一方、処理Ｓ２０５において、総合スコアが認証用の閾値未満である場合（Ｓ２０５でＮＯ）、プロセッサ１は、照合データと登録データとは一致しないと判定し、認証失敗を示す認証結果を出力する（Ｓ２０７）。例えば、プロセッサ１は、認証失敗を示す認証結果を表示装置３に出力してもよい。例えば、プロセッサ１は、認証失敗を示す認証結果を施錠制御装置６に出力してもよい。
【００７０】
以上が、実施例１に係る認証処理部２１３により実現される認証モードにおける処理の一例である。上述の説明では、図１１及び図１２に示す処理の説明として、１つの照合データと１つの登録データとの認証処理（照合処理）に着目した説明を行った。しかし、実施例１は、これに限定されるものと解釈されるべきではなく、例えば、１つの照合データと複数の登録データとの認証処理（照合処理）を行う「１：Ｎ認証」にも適用することができる。１：Ｎ認証を行う場合、図１１に示す処理Ｓ２０３において、プロセッサ１は、例えば、登録データＤＢ２２から合計でＮ個の登録データを取得してもよい。これは、処理Ｓ２０３の１回の実行でＮ個の登録データを取得してもよい。あるいは、プロセッサ１は、１個の登録データにつき処理Ｓ２０３以降の処理をＮ回ループすることで合計Ｎ個の登録データを取得してもよい。また、登録データＤＢ２２から登録データを取得する処理Ｓ２０３は、図１１に示す処理Ｓ２０２と処理Ｓ２０４との間では実行せずに、図１２に示す処理Ｓ２０４−３と処理Ｓ２０４−４との間で実行するようにしてもよい。この場合、処理Ｓ２０３で登録データＤＢ２２から１つの登録データを取得する度に、処理Ｓ２０４−４乃至Ｓ２０４−１８と処理Ｓ２０５乃至処理Ｓ２０７の一連の処理を実行することで、１：Ｎ認証を実現してもよい。その際、Ｎ個の登録データの全てについて照合データとの認証処理（照合処理）を行ってもよいし、あるいは、認証成功の認証結果が得られた時点で後の登録データについては登録データＤＢ２２から取得せずに、Ｎ回ループの認証処理（照合処理）を終了し、施錠制御装置６に認証成功の認証結果を通知してもよい。また、１：Ｎ認証時には、１つの登録データについて照合データとの認証処理（照合処理）の結果が得られる都度、施錠制御装置６に認証結果を通知しなくてもよい。例えば、Ｎ個の登録データを用いたＮ回の認証処理で得られたＮ個の認証結果がすべて認証失敗であった場合に、施錠制御装置６に認証失敗を示す認証結果を１つ通知すればよい。あるいは、Ｎ個の登録データを用いたＮ回の認証処理で得られたＮ個の認証結果が、Ｎ−１個の認証失敗と１個の認証成功であった場合、プロセッサ１は、施錠制御装置６に認証成功を示す認証結果を１つ通知すればよい。
【００７１】
以上に説明した実施例１によれば、近傍探索のシミュレーションを行うことで、近傍探索の比較回数が少ない軸を最適な基本軸として選択することができるため、特徴点の照合精度を維持しつつ、特徴点照合の応答速度を高速化することができる。そのような特徴点の照合処理を適用した認証システム１００は、認証精度の劣化を抑制しつつ、認証処理の応答速度を改善することができる。なお、上述の認証システム１００は、実施例１に係る照合処理を適用したシステムの一例である。実施例１に係る照合処理を適用したシステムの他の例として、文字認識システムや物体検知システムなども挙げられる。これらの応用システムに対して実施例１に係る照合処理を適用することで、例えば、認識精度を維持しつつ文字認識の応答速度を高速化したり、検知精度を維持しつつ物体検知の応答速度を高速化することができる。
【００７２】
［実施例２］
次に、実施例２について説明する。実施例２に係る認証システム１００では、登録データと照合データとで最適な基準軸が異なる場合の認証処理の応答速度を改善する手法が導入される。例えば、実施例２に係る認証システム１００の一側面では、登録データＤＢ２２に格納する登録データに、ｍ次元空間を規定する各座標軸を基準軸として座標値順に整序した結果が保持される点で、実施例１と相違する。これにより、実施例２では、照合データの被験者（利用者）と登録データの被験者（利用者）とが異なる場合の認証処理の応答速度が改善される。別言すると、実施例２では、認証処理において照合データの基準軸と登録データの基準軸とが不一致の場合でも、登録データの第１特徴点群を照合データの基準軸上の座標値順に整序し直す必要がない。そのため、図１２に示す実施例１に係る照合処理において、照合データの基準軸と登録データの基準軸とが不一致であった場合に実行される処理Ｓ２０４−５を省略することができ、特徴点の照合精度を維持しつつ、特徴点照合の応答速度を高速化することができる。そのような特徴点の照合処理を適用した認証システム１００は、認証精度の劣化を抑制しつつ、認証処理の応答速度を改善することができる。
【００７３】
図１３は、実施例２に係る登録処理部２１２により実現される登録モードにおける処理の一例を示す図である。図１３に示す処理の一部は、実施例１と同様に、基準軸選択部２１４により実現される。例えば、処理Ｓ１０３乃至処理Ｓ１０５が、基準軸選択部２１４による処理に相当する。図１３に示す処理は、例えば、モード選択部２１１が入力装置４からの入力信号に基づいて登録モードを選択したことを契機として実行を開始してもよい。なお、図１３に示す処理のうち、処理Ｓ１０１乃至処理Ｓ１０５については、実施例１と同様の処理内容としてもよいため、説明を省略する。
【００７４】
プロセッサ１は、基準軸選択部２１４により登録データにとって最適な基準軸（登録データ用の基準軸）が選択された後、選択された基準軸で整序された第１特徴点群と、選択された基準軸とは異なる軸で整序された第１特徴点群とを比較し、対応する特徴点のインデックス値を対にしたインデックス変換対を有するインデックス変換対テーブルを生成する（Ｓ１０７Ａ）。別言すると、プロセッサ１は、処理Ｓ１０７Ａにおいて、登録データ用の基準軸とは異なる座標軸で整序された第１特徴点群の整序結果と、登録データ用の基準軸で整序された第１特徴点群の整序結果と、を変換するインデックス変換対を生成する。処理Ｓ１０７Ａにおいて、プロセッサ１は、座標値が同一の特徴点を対応する特徴点としてもよい。座標値が同一の特徴点が複数存在する場合は、座標値が同一という条件に加え、特徴量が同一という条件を用いて、対応する特徴点を限定してもよい。
【００７５】
プロセッサ１は、登録データ用の生体画像を提供した被験者（利用者）のユーザＩＤなどを示す属性情報と、登録データ用の基準軸で整序された第１特徴点群と、第１特徴点群に含まれる特徴点の個数を示す特徴点数と、登録データ用の基準軸に関する情報（基準軸情報）と、インデックス変換対テーブルとを含む登録データを生成し、生成した登録データを登録データＤＢ２２に格納する（Ｓ１０６Ａ）。図１４は、実施例２に係る登録データの例（ｍ＝２）を示す図である。図１４に例示する登録データは、図１０に示す実施例１に係る登録データの例と比較して、インデックス変換対テーブルＴ１５Ａが追加されている点で相違し、他の点では同じである。インデックス変換対テーブルＴ１５Ａは、特徴点数Ｔ１３で示される個数分のインデックス変換対（インデックス変換対＃１〜インデックス変換対＃Ｋ）を有する。図１４に示す例では、各インデックス変換対は、登録データ用の基準軸とは異なる軸で整序された第１特徴点群のインデックス値順にインデックス変換対テーブル内で整序されている。別言すると、図１４に示す例では、インデックス変換対テーブルにおけるインデックス変換対の順序により、登録データ用の基準軸とは異なる軸で整序された第１特徴点群のインデックス値が表現（保持）されている。すなわち、１番目に格納されているインデックス変換対＃１は、登録データ用の基準軸とは異なる軸で整序された第１特徴点群において、１番目に格納されている特徴点（インデックス値＝１の特徴点）に関する変換対である。図１４に示す例では、各インデックス変換対は、登録データ用の基準軸で整序された第１特徴点群において、対応する特徴点が位置するインデックス値（変換後インデックス）を有する。したがって、プロセッサ１は、登録データ用の基準軸とは異なる軸で整序された第１特徴点群において１番目に格納されている特徴点のインデックス値と、登録データ用の基準軸で整序された第１特徴点群における対応する特徴点のインデックス値との変換対を生成する場合、インデックス変換対テーブルにおける１番目の位置に、登録データ用の基準軸で整序された第１特徴点群における対応する特徴点のインデックス値（変換後インデックス）を、インデックス変換対として格納すればよい。
【００７６】
図１５は、実施例２に係る登録データの例（ｍ＝３）を示す図である。すなわち、図１５の例では、特徴点が３次元空間における座標値を有するため、３次元空間を規定する各座標軸を基準軸とした整序結果は３個ある。整序結果の１つは、選択した基準軸で整序された第１特徴点群Ｔ１４として登録データに保持される。残りの整序結果の２つは、インデックス変換対テーブルＴ１５Ａ及びＴ１６Ａとして登録データに保持される。すなわち、実施例２に係る登録データは、ｍ次元空間に投影された特徴点に対して、１個の第１特徴点群と、ｍ−１個のインデックス変換対テーブルを保持すればよい。なお、複数のインデックス変換対テーブルを登録テーブルに格納する場合、予めｍ次元空間の各座標軸に順序を定めておき、その順序に従って登録テーブルに格納する順序を決定すればよい。例えば、３次元空間の場合、Ｘ軸を１番、Ｙ軸を２番、Ｚ軸を３番として順序を定め、Ｙ軸とＺ軸についてインデックス変換対テーブルを格納する場合、Ｙ軸のインデックス変換対テーブルを１番目に格納し、Ｚ軸のインデックス変換対テーブルを２番目に格納するようにすればよい。上述の例において、Ｘ軸とＺ軸についてインデックス変換対テーブルを格納する場合、Ｘ軸のインデックス変換対テーブルを１番目に格納し、Ｚ軸のインデックス変換対テーブルを２番目に格納するようにすればよい。また上述の例において、Ｘ軸とＹ軸についてインデックス変換対テーブルを格納する場合、Ｘ軸のインデックス変換対テーブルを１番目に格納し、Ｙ軸のインデックス変換対テーブルを２番目に格納するようにすればよい。認証モードにおける特徴点の照合処理においても、これと同じ法則に従うことで、対応するインデックス変換対テーブルを選択することができる。
【００７７】
以上が、実施例２に係る登録処理の一例である。次に、実施例２に係る認証処理について説明する。図１６は、実施例２に係る認証処理部２１３により実現される認証モードにおける特徴点の照合処理の一例を示す図である。図１６に示す照合処理は、図１２に示す実施例１に係る照合処理と比較して、例えば、処理Ｓ２０４−５が処理Ｓ２０４−１９Ａに置き換えられ、処理Ｓ２０４−６が処理Ｓ２０４−２０Ａに置き換えられている点で相違する。図１６に示す処理Ｓ２０４−１乃至処理Ｓ２０４−３は、図１２に示す実施例１の処理例と同様の処理としてもよいため、説明を省略する。また、１：Ｎ認証時には、登録データＤＢ２２から登録データを取得する処理Ｓ２０３を、処理Ｓ２０４−３と処理２０４−４との間で実行してもよい。すなわち、処理Ｓ２０３で登録データＤＢ２２から１つの登録データを取得する度に、処理Ｓ２０４−４乃至Ｓ２０４−１８と処理Ｓ２０４−１９Ａ及び処理Ｓ２０４−２０Ａと処理Ｓ２０５乃至処理Ｓ２０７の一連の処理を実行することで、１：Ｎ認証を実現してもよい。
【００７８】
プロセッサ１は、処理Ｓ２０４−４において、選択された基準軸と登録データの基準軸とが不一致であると判定した場合（Ｓ２０４−４でＹＥＳ）、登録データに格納されているインデックス変換対テーブルのうち、選択された基準軸に対応するインデックス変換対テーブルを選択する（Ｓ２０４−１９Ａ）。対応するインデックス変換対テーブルの選択方法については、実施例２に係る登録処理に関する説明で述べたとおりである。一方、選択された基準軸と登録データの基準軸とが一致すると判定した場合（Ｓ２０４−４でＮＯ）、処理Ｓ２０４−１９Ａの実行を省略してスキップすればよい。
【００７９】
プロセッサ１は、照合データの基準軸と同一の軸で整序された第１特徴点群を基準点群とし、照合データの基準軸で整序された第２特徴点群を参照点群として以降の処理を続行する（Ｓ２０４−２０Ａ）。例えば、プロセッサ１は、選択された基準軸と登録データの基準軸とが不一致である場合、照合データの基準軸と同一の軸で整序された第１特徴点群として、照合データの基準軸で整序された変換対（インデックス変換対テーブル）を介した第１特徴点群を用いればよい。一方、プロセッサ１は、選択された基準軸と登録データの基準軸とが一致する場合、照合データの基準軸と同一の軸で整序された第１特徴点群として、登録データに設定されている第１特徴点群Ｔ１４を用いればよい。プロセッサ１は、照合データの基準軸で整序された変換対として、処理Ｓ２０４−１９Ａで選択したインデックス変換対テーブルを用いればよい。プロセッサ１は、処理Ｓ２０４−７以降の処理において、インデックス変換対テーブルを介した第１特徴群を基準点群として用いる場合、処理Ｓ２０４−３で選択した基準軸上で座標値順に基準点群から基準点をとりだす際、選択したインデックス変換対テーブルを用いて、基準点インデックス値から変換後インデックスに変換したうえで、変換後インデックスを用いて特徴点（基準点）をとりだせばよい。これにより、照合データの基準軸と登録データの基準軸とが異なる場合であっても、登録データの第１特徴点群を照合データの基準軸上で整序し直さなくて済む。別言すると、照合データの基準軸と登録データの基準軸とが異なる場合に、登録データの第１特徴群を照合データの基準軸上で整序し直さなくても、特徴点の照合処理における演算コストの増加を抑制でき、特徴点の照合精度を維持しつつ、特徴点照合の応答速度を高速化することができる。そのような照合処理を適用した認証システム１００は、認証精度の劣化を抑制しつつ、認証処理の応答速度を改善することができる。
【００８０】
以上が、実施例２に係る処理の説明である。なお、実施例２に係る認証システム１００の構成例は、図１に示される構成例と同様の構成としてもよいため、説明を省略する。上述した実施例２によれば、一つの照合データに対して複数の登録データとの照合を行う「１：Ｎ認証」において、登録データの基準軸と照合データとの基準軸とが一致しない組み合わせが生じたとしても、特徴点の照合精度を維持しつつ、特徴点照合の応答速度を高速化することができる。そのような照合処理を適用した認証システム１００は、認証精度の劣化を抑制しつつ、認証処理における演算コストの増加を抑制でき、１：Ｎ認証における認証処理の応答速度を大幅に改善することができる。なお、上述の認証システム１００は、実施例２に係る照合処理を適用したシステムの一例である。実施例２に係る照合処理を適用したシステムの他の例として、文字認識システムや物体検知システムなども挙げられる。これらの応用システムに対して実施例２に係る照合処理を適用することで、例えば、認識精度を維持しつつ文字認識の応答速度を高速化したり、検知精度を維持しつつ物体検知の応答速度を高速化することができる。
【００８１】
［実施例３］
次に、実施例３について説明する。実施例３に係る認証システム１００では、登録データと照合データとで最適な基準軸が異なる場合の認証処理の応答速度を改善する手法の代替案が導入される。例えば、実施例３に係る認証システム１００の一側面では、認証システム１００の登録データＤＢ２２に格納されている登録データのすべてに共通に適用されるシステム基準軸という概念が新たに追加される点で、実施例１及び実施例２と相違する。実施例３によれば、登録データＤＢ２２に格納されている１以上の登録データから、基準軸に関する情報と特徴点数とが収集され、収集した情報に示される基準軸毎に特徴点数が集計され、集計した特徴点数の全数に対して十分に大きな割合を有する基準軸がシステム基準軸として選択され得る。別言すると、実施例３のプロセッサ１は、基準軸毎の特徴点数のうち、基準軸毎の特徴点数を合計した全数に対する割合が最大となる特徴点数を有する基準軸であって、当該基準軸が有する特徴点数の割合が所定値以上となる基準軸を、システム基準軸として選択するように構成される。そして、選択されたシステム基準軸とは異なる基準軸で整序された登録データの第１特徴点群をシステム基準軸上の座標値順に整序し直す処理が、例えば、認証処理が実行されるタイミングとは異なるタイミングで実行され得る。これらにより、実施例３では、照合データと登録データとの基準軸が一致する確率を高めることができ、特徴点の照合精度を維持しつつ、特徴点照合の応答速度を高速化することができる。そのような照合処理を適用した認証システム１００は、認証精度の劣化を抑制しつつ、認証処理の応答速度を改善することができる。
【００８２】
図１７は、実施例３に係る認証システム１００の構成例を示す図である。図１７に示す実施例３に係る認証システム１００の一側面では、記憶装置２に格納された認証プログラム２１にシステム基準軸選択部２１５Ｂが追加されている点で、図１に示す実施例１の構成例と相違する。また、図１７に示す実施例３に係る認証システム１００の一側面では、記憶装置２がシステム基準軸情報２３Ｂを記憶する点で、図１に示す実施例１の構成例と相違する。そのほかの点については、実施例１又は実施例２と同様の構成としてもよいため、説明を省略する。以下、システム基準軸選択部２１５Ｂにより実現される処理について説明する。
【００８３】
図１８は、実施例３に係るシステム基準軸選択部２１５Ｂにより実現される処理の一例を示す図である。図１８に示す処理は、認証処理が実行されるタイミングとは異なる任意のタイミングにおいて実行を開始される。例えば、プロセッサ１は、登録処理により登録データＤＢ２２に新たな登録データが格納されたことを契機として、図１８に示す処理の実行を開始してもよい。例えば、プロセッサ１は、時間の経過を契機として、図１８に示す処理の実行を開始してもよい。例えば、プロセッサ１は、１日あるいは１カ月などの所定の時間間隔毎に、図１８に示す処理の実行を開始してもよい。例えば、プロセッサ１は、毎月第３日曜日などの暦上の任意のスケジュールが到来したことを契機として、図１８に示す処理の実行を開始してもよい。例えば、プロセッサ１は、認証システム１００が利用者により操作されていない時間帯の任意のタイミングにおいて、図１８に示す処理の実行を開始してもよい。
【００８４】
プロセッサ１は、登録データＤＢ２２に格納されている登録データをとりだす（Ｓ３０１）。図１９は、実施例３に係る登録データの例（ｍ＝２）を示す図である。図１９に示す例では、最適基準軸情報１７Ｂが追加されている点で、図１０に示す実施例１に係る登録データの例と相違する。すなわち、実施例３に係る登録処理部２１２により実現される登録処理（Ｓ１０６）において、プロセッサ１は、図１９に示すように最適基準軸情報Ｔ１７Ｂを追加した登録データを、登録データＤＢ２２に格納すればよい。最適基準軸情報Ｔ１７Ｂには、基準軸選択部２１４の処理（例えばＳ１０５）により選択された最適な基準軸に関する情報が設定される。基準軸情報Ｔ１２には、第１特徴点群Ｔ１４の特徴点の整序に用いた基準軸に関する情報が設定される。例えば、第１特徴点群Ｔ１４がＸ軸上の座標値順に整序されている場合には、Ｘ軸が基準軸であることを示す情報が基準軸情報Ｔ１４に設定される。なお、実施例３に係る登録処理の具体例については、後述する。
【００８５】
つぎに、プロセッサ１は、登録データＤＢ２２から取得した１以上の登録データの各々の特徴点数Ｔ１３を、最適基準軸情報Ｔ１７Ｂに示される基準軸に応じて集計する（Ｓ３０２）。例えば、登録データＤＢ２２から取得した１以上の登録データの各々がＸ軸とＹ軸とで規定された２次元空間に投影された特徴点を有する場合、プロセッサ１は、最適基準軸情報Ｔ１７ＢがＸ軸を示す登録データの特徴点数Ｔ１３を集計し、最適基準軸情報Ｔ１７ＢがＹ軸を示す登録データの特徴点数Ｔ１３を集計する。
【００８６】
プロセッサ１は、各基準軸の集計値の合計を全数とし、全数に対する各基準軸の集計値の割合を算出し（Ｓ３０３）、算出した割合がシステム基準軸選択用の閾値以上となる基準軸をシステム基準軸として選択する（Ｓ３０４）。システム基準軸選択用の閾値は、認証システム１００の運用状況に応じて適宜調整し得る値であり、十分に大きな割合として、例えば、０．８〜１．０の範囲における何れかの値（実数）を用いても良い。変形例として、例えばＸ軸とＹ軸とで規定された２次元空間に投影された特徴点を扱う場合、プロセッサ１は、いずれか一つの基準軸について割合を算出し、一つの基準軸について算出した割合が上述のシステム基準軸選択用の閾値以上となるか否かを判定してもよい。そして、上述のシステム基準軸判定用の閾値未満であると判定した場合、プロセッサ１は、十分に小さな割合を示すシステム基準軸選択用の第２閾値（例えば、０．０〜０．２の範囲における何れかの値（実数））と算出した割合とを比較し、算出した割合が第２閾値以下である場合は、割合を算出していない他方の基準軸をシステム基準軸として選択してもよい。他の変形例として、プロセッサ１は、記憶装置２に記憶されているシステム基準軸情報２３Ｂの示されるシステム基準軸とは異なる基準軸における特徴点数の割合を算出してもよい。そして、プロセッサ１は、算出した割合と上述のシステム基準軸選択用の閾値とを比較し、算出した割合がシステム基準軸選択用の閾値以上である基準軸をシステム基準軸として選択する。この変形例によれば、システム基準軸情報２３Ｂに示されるシステム基準軸は、他の基準軸における特徴点数の割合が十分に大きな割合となるまで維持され得る。
【００８７】
次に、プロセッサ１は、記憶装置２からシステム基準軸情報２３Ｂを参照し、システム基準軸情報２３Ｂに示されるシステム基準軸と、処理Ｓ３０４で選択されたシステム基準軸とが一致しないか否かを判定する（Ｓ３０５）。システム基準軸情報２３Ｂに示されるシステム基準軸と選択されたシステム基準軸とが一致しないと判定された場合（Ｓ３０５でＹＥＳ）、記憶装置２におけるシステム基準軸情報２３Ｂを、処理Ｓ３０４で選択されたシステム基準軸に関する情報を用いて更新する（Ｓ３０６）。一方、システム基準軸情報２３Ｂに示されるシステム基準軸と選択されたシステム基準軸とが一致する場合（Ｓ３０５でＮＯ）、プロセッサ１は、処理Ｓ３０６乃至処理Ｓ３１０を実行せずにスキップし、図１８に示す処理を終了してもよい。
【００８８】
プロセッサ１は、登録データＤＢ２２に格納されている登録データのうち、基準軸情報Ｔ１２に示される基準軸が処理Ｓ３０４で選択されたシステム基準軸と一致しない登録データを抽出する（Ｓ３０７）。そして、プロセッサ１は、抽出した登録データの第１特徴点群Ｔ１４を、システム基準軸上の座標値順に整序し直す（Ｓ３０８）。これにより、登録データの第１特徴点群Ｔ１４は、システム基準軸上の座標値順に整序された１以上の特徴点を有する特徴点群となる。
【００８９】
プロセッサ１は、抽出した登録データの基準軸情報を、処理Ｓ３０４で選択されたシステム基準軸に関する情報を用いて更新する（Ｓ３０９）。そして、プロセッサ１は、更新後の値を有する登録データを用いて、登録データＤＢ２２上の登録データを更新する（Ｓ３１０）。以上の処理により、登録データＤＢ２２に格納された登録データの第１特徴点群Ｔ１４は、処理Ｓ３０４で選択されたシステム基準軸上の座標値順に整序された状態となる。これにより、実施例３に係る認証システム１００の一側面では、認証処理において、登録データの基準軸が照合データの基準軸と一致する確率を高めることができる。別言すると、認証システム１００に投入される照合データが認証システム１００に登録されている１以上の登録データの何れかと一致するものであるとした場合、投入される照合データの基準軸の割合は、認証システム１００に登録されている登録データの基準軸の割合と略同一であるとみなし得る。そのため、登録されている登録データを集計して得られる割合に応じて選択したシステム基準軸を用いて登録データの特徴点を整序しておくことで、認証時に投入される照合データの基準軸と登録データの基準軸とが一致する確率を高めることができ、特徴点の照合精度を維持しつつ、特徴点照合の応答速度を高速化することができる。そのような照合処理を適用した認証システム１００は、認証精度の劣化を抑制しつつ、認証処理の応答速度を改善することができる。
【００９０】
次に、実施例３に係る登録処理部２１２により実現される登録処理について説明する。図２０は、実施例３に係る登録処理部２１２により実現される登録処理の一例を示す図である。図２０に示す処理の一部は、実施例１と同様に、基準軸選択部２１４により実現される。例えば、処理Ｓ１０３乃至処理Ｓ１０５が、基準軸選択部２１４による処理に相当する。図２０に示す処理は、例えば、モード選択部２１１が入力装置４からの入力信号に基づいて登録モードを選択したことを契機として実行を開始してもよい。なお、図２０に示す処理のうち、処理Ｓ１０２乃至処理Ｓ１０５は、図２に示す実施例１と同様の処理内容としてもよいため、説明を省略する。
【００９１】
プロセッサ１は、基準軸選択部２１４により登録データにとって最適な基準軸（登録データ用の基準軸）が選択された後、記憶装置２に記憶されているシステム基準軸情報２３Ｂを参照し、システム基準軸情報２３Ｂに無効な値が設定されているか否かを判定する（Ｓ１０８Ｂ）。例えば、プロセッサ１は、システム基準軸情報２３Ｂにｎｕｌｌ値が設定されている場合は無効な値が設定されていると判定し得る。別言すると、プロセッサ１は、システム基準軸情報２３Ｂにｎｕｌｌ値が設定されていない場合、システム基準軸情報２３Ｂに無効な値が設定されていないと判定し得る。また、例えば、プロセッサ１は、システム基準軸情報２３Ｂの値がｍ次元空間を規定するｍ個の基準軸の何れにも該当しない値に設定されている場合、システム基準軸情報２３Ｂに無効な値が設定されていると判定し得る。別言すれば、プロセッサ１は、システム基準軸情報２３Ｂの値がｍ次元空間を規定するｍ個の基準軸の何れかを示す値に設定されている場合、システム基準軸情報２３Ｂに無効な値が設定されていないと判定し得る。
【００９２】
処理Ｓ１０８Ｂにおいて、システム基準軸情報２３Ｂに無効な値が設定されていると判定された場合（Ｓ１０８ＢでＹＥＳ）、プロセッサ１は、登録データ用の生体画像を提供した被験者（利用者）のユーザＩＤなどを示す属性情報Ｔ１１と、登録データ用の基準軸で整序された第１特徴点群Ｔ１４と、登録データ用の基準軸に関する情報を用いて設定された基準軸情報Ｔ１２と、登録データ用の基準軸に関する情報を用いて設定された最適基準軸情報Ｔ１７Ｂと、第１徴点群に含まれる１以上の特徴点の個数を示す特徴点数Ｔ１３とを含む登録データを生成し、生成した登録データを登録データＤＢ２２に格納し（Ｓ１０６Ｂ）、図２０に示す処理を終了する。すなわち、システム基準軸情報２３Ｂに無効な値が設定されている場合は、登録データＤＢ２２に格納されている登録データの基準軸に関する情報を集計しても、ｍ次元空間を規定するｍ個の基準軸の何れの割合も十分に高くはなく、システム基準軸が未だ設定されていないことが考えられる。そのため、システム基準軸情報２３Ｂに無効な値が設定されている場合には、登録データ用の基準軸を用いて整序された第１特徴点群を登録データに設定することで、同一被験者（利用者）の照合データと登録データとの特徴点の照合処理における演算コストの増加を抑制させる。
【００９３】
一方、処理Ｓ１０８Ｂにおいて、システム基準軸情報２３Ｂに無効な値が設定されていないと判定された場合（Ｓ１０８ＢでＮＯ）、プロセッサ１は、登録データ用の生体画像を提供した被験者（利用者）のユーザＩＤなどを示す属性情報Ｔ１１と、システム基準軸情報２３Ｂと同一の基準軸で整序された第１特徴点群Ｔ１４と、第１徴点群に含まれる１以上の特徴点の個数を示す特徴点数Ｔ１３と、第１特徴点群Ｔ１４の整序方向（システム基準軸情報２３Ｂと同一の基準軸）を示す情報を用いて設定された基準軸情報Ｔ１２と、登録データ用の基準軸（処理Ｓ１０５で選択された基準軸）に関する情報を用いて設定された最適基準軸情報Ｔ１７Ｂと、を含む登録データを生成し、生成した登録データを登録データＤＢ２２に格納し（Ｓ１０９Ｂ）、図２０に示す処理を終了する。
【００９４】
以上が、実施例３に係る処理の説明である。なお、実施例３に係る認証システム１００において、例えば、認証処理部２１３（基準軸選択部２１４）による処理は、図１１及び図１２に示す実施例１の処理例と同様の処理としてもよいため、説明を省略する。上述した実施例３によれば、一つの照合データに対して複数の登録データとの照合を行う「１：Ｎ認証」において、照合データと登録データとの基準軸が一致する確率を高めることができ、特徴点の照合精度を維持しつつ、特徴点照合の応答速度を高速化することができる。そのような照合処理を適用した認証システム１００は、認証精度の劣化を抑制しつつ、認証処理の応答速度を改善することができる。
【００９５】
［実施例３の変形例］
実施例３の変形例として、システム基準軸選択部２１５Ｂで選択したシステム基準軸を照合データの最適な基準軸として用いてもよい。図２１は、実施例３の変形例に係る認証処理部２１３により実現される認証モードにおける特徴点の照合処理の一例を示す図である。図２１に示す処理例は、システム基準軸情報２３Ｂに有効な値が設定されている場合に実行され得る。
【００９６】
図２１に示す処理例では、プロセッサ１は、照合データの第２特徴点群について最適な基準軸を選択する処理Ｓ２０４−１乃至処理Ｓ２０４−３を実行せず、システム基準軸情報２３Ｂに示されるシステム基準軸を照合データの基準軸として選択する（Ｓ２０４−３Ｂ）。そして、プロセッサ１は、システム基準軸上の座標値順に照合データの第２特徴点群を整序する（Ｓ２０４−２１Ｂ）。なお、生体画像から特徴点を抽出する際の画素の走査方向として、Ｘ軸を主走査方向とし、Ｙ軸を副走査方向とした場合、生体画像から抽出された１以上の特徴点は、副走査方向であるＹ軸上の座標値順に整序された状態となる。そのため、プロセッサ１は、処理Ｓ２０２で生体画像から取得した１以上の特徴点（照合データ）をＹ軸上の座標値順に整序された第２特徴点群として扱ってもよい。この場合、システム基準軸が副走査方向と一致する場合に、処理Ｓ２０４−２１Ｂを実行せずにスキップしてもよい。
【００９７】
プロセッサ１は、照合データの基準軸（すなわち、システム基準軸）と登録データの基準軸情報で示される基準軸（登録データの基準軸）とを比較し、照合データの基準軸と登録データの基準軸とが不一致であるか否かを判定する（Ｓ２０４−４）。プロセッサ１は、照合データの基準軸と登録データの基準軸とが不一致である場合（Ｓ２０４−４でＹＥＳ）、照合データの基準軸上の座標値順に、登録データの第１特徴点群を整序する（Ｓ２０４−５）。そして、プロセッサ１は、照合データの基準軸（すなわち、システム基準軸）上の座標値順に整序された登録データを用いて登録データＤＢ２２を更新する（Ｓ２０４−２２Ｂ）。その際、整序後の登録データの基準軸情報は、システム基準軸を示す値に設定されているものとする。処理Ｓ２０４−２２Ｂにより、次回以降に当該登録データが参照される場合、システム基準軸と登録データの基準軸とが一致し、処理Ｓ２０４−５を実行せずに済む。
【００９８】
処理Ｓ２０４−６以降は、図１２に示す実施例１の処理例と同様の処理内容とすることができるため、説明を省略する。なお、１：Ｎ認証時には、登録データＤＢ２２から登録データを取得する処理（図１１のＳ２０３）は、図１１に示す処理Ｓ２０２と処理Ｓ２０４との間では実行せずに、図２１に示す処理Ｓ２０４−３Ｂと処理Ｓ２０４−４との間、あるいは、処理Ｓ２０４−２１Ｂと処理Ｓ２０４−４との間で実行するようにしてもよい。この場合、処理Ｓ２０３で登録データＤＢ２２から１つの登録データを取得する度に、処理Ｓ２０４−４乃至Ｓ２０４−１８と処理Ｓ２０５乃至処理Ｓ２０７の一連の処理を実行することで、１：Ｎ認証を実現してもよい。
【００９９】
また、本変形例においては、システム基準軸選択部２１５Ｂの処理のうち処理Ｓ３０５乃至処理Ｓ３１０を省略してもよい。なぜなら、図２１に示す認証モードにおける照合処理において、登録データの基準軸とシステム基準軸とが一致しない場合に、システム基準軸上の座標値順に登録データが整序され（Ｓ２０４−５）、整序後の登録データを用いて登録データＤＢ２２が更新されるためである（Ｓ２０４−２２Ｂ）。これにより、システム基準軸を用いて登録データを整序し直さなくて済む分、システム基準軸選択部の処理による演算負荷を軽減することができる。投入される照合データの基準軸の割合は、認証システム１００に登録されている登録データの基準軸の割合と略同一であるとみなし得るため、システム基準軸と一致する軸で照合データを整序することで、登録データＤＢに格納された登録データと照合データとの整序方向が一致する確率を高めることができ、特徴点の照合精度を維持しつつ、特徴点照合の応答速度をより高速化することができる。そのような照合処理を適用した認証システム１００は、認証精度の劣化を抑制しつつ、認証処理の応答速度をより改善することができる。なお、上述の認証システム１００は、実施例３の変形例に係る照合処理を適用したシステムの一例である。実施例３の変形例に係る照合処理を適用したシステムの他の例として、文字認識システムや物体検知システムなども挙げられる。これらの応用システムに対して実施例３の変形例に係る照合処理を適用することで、例えば、認識精度を維持しつつ文字認識の応答速度を高速化したり、検知精度を維持しつつ物体検知の応答速度を高速化することができる。
【０１００】
［実施例４］
次に、実施例４について説明する。実施例４に係る認証システム１００の一側面では、登録データの第１特徴点群を参照点群とし、照合データの第２特徴点群を基準点群として認証処理が行われる点で、実施例１と相違する。これにより、実施例４では、照合データの第２特徴点群について最適な基準軸を選択する処理を実行しなくてもよい。実施例４では、登録データの第１特徴点群（すなわち、参照点群）の基準軸上の座標値順に、照合データの第２特徴点群（すなわち、基準点群）が整序されていればよいためである。そのため、実施例４では、図１２に示す実施例１に係る照合処理における処理Ｓ２０４−１乃至Ｓ２０４−３の実行を省略することができ、特徴点の照合精度を維持しつつ、特徴点照合の応答速度を高速化することができる。そのような照合処理を適用した認証システム１００は、認証精度の劣化を抑制しつつ、認証処理の応答速度を改善することができる。
【０１０１】
図２２は、実施例４に係る認証処理部２１３により実現される認証モードにおける特徴点の照合処理の一例を示す図である。図２２に示す照合処理は、図１２に示す実施例１の処理例と比較して、Ｓ２０４−１乃至Ｓ２０４−３が省略されている。これは、実施例４に係る認証処理（照合処理）では、照合データの第２特徴点群について最適な基準軸を選択する処理を実行しなくてもよいためである。
【０１０２】
まず、プロセッサ１は、照合データの整序方向が登録データの基準軸と不一致か否かを判定する（Ｓ２０４−４Ｃ）。例えば、照合用の生体画像から特徴点を抽出する際の画素の走査方向として、Ｘ軸を主走査方向とし、Ｙ軸を副走査方向とした場合、生体画像から抽出された１以上の特徴点は、副走査方向であるＹ軸上の座標値順に整序された状態となる。したがって、プロセッサ１は、照合用の生体画像から特徴点を抽出する際の画素の走査における副走査方向と登録データの基準軸情報Ｔ１２とを比較し、登録データの基準軸情報Ｔ１２に示される基準軸が副走査方向と一致しない場合に、照合データの整序方向が登録データの基準軸と不一致であると判定してもよい。
【０１０３】
処理Ｓ２０４−４Ｃにおいて、照合データの整序方向が登録データの基準軸と不一致であると判定した場合（Ｓ２０４−４ＣでＹＥＳ）、プロセッサ１は、登録データの基準軸情報Ｔ１２に示される基準軸を用いて、照合データの第２特徴点群を整序する（Ｓ２０４−５Ｃ）。一方、処理Ｓ２０４−４Ｃにおいて、照合データの整序方向が登録データの基準軸と一致すると判定した場合（Ｓ２０４−４ＣでＮＯ）、プロセッサ１は、処理Ｓ２０４−５Ｃの実行を省略してスキップしてもよい。
【０１０４】
プロセッサ１は、登録データの第１特徴点群を参照点群とし、照合データの第２特徴点群を基準点群として、図２２に示す処理を続行する（Ｓ２０４−６Ｃ）。なお、図２２に示す処理例において、処理Ｓ２０４−７以降における「基準軸」は登録データ（第１特徴点群）の基準軸と同一の軸を意味する。実施例４において、処理Ｓ２０４−７以降の処理は、図１２に示す実施例１の処理例と同様であるため、説明を省略する。また、実施例４において、認証処理の全体の流れは、図１１に示す実施例１の処理例と同じ処理としてもよいため、説明を省略する。
【０１０５】
以上が、実施例４に係る処理の説明である。実施例４に係る認証システム１００において、例えば、登録処理部２１２による処理は、図２及び図７に示す実施例１の処理例と同様の処理としてもよいため、説明を省略する。なお、図２２に示す処理例の説明として、１つの照合データと１つの登録データとの認証処理（照合処理）に着目した説明を行った。しかし、実施例４は、これに限定されるものと解釈されるべきではなく、例えば、１つの照合データと複数の登録データとの認証処理（照合処理）を行う「１：Ｎ認証」にも適用することができる。１：Ｎ認証を行う場合、図１１に示す処理Ｓ２０３において、プロセッサ１は、例えば、登録データＤＢ２２から合計でＮ個の登録データを取得してもよい。これは、処理Ｓ２０３の１回の実行でＮ個の登録データを取得してもよい。あるいは、プロセッサ１は、１個の登録データにつき処理Ｓ２０３以降の処理をＮ回ループすることで合計Ｎ個の登録データを取得してもよい。また、登録データＤＢ２２から登録データを取得する処理Ｓ２０３は、図１１に示す処理Ｓ２０２と処理Ｓ２０４との間で実行するのではなく、図２２に示す処理Ｓ２０４−４Ｃの直前で実行するようにしてもよい。この場合、処理Ｓ２０３で登録データＤＢ２２から１つの登録データを取得する度に、処理Ｓ２０４−４Ｃ乃至Ｓ２０４−１８と処理Ｓ２０５乃至処理Ｓ２０７の一連の処理を実行することで、１：Ｎ認証を実現してもよい。その際、Ｎ個の登録データの全てについて照合データとの認証処理（照合処理）を行ってもよいし、あるいは、認証成功の認証結果が得られた時点で後の登録データについては登録データＤＢ２２から取得せずに、Ｎ回ループの認証処理（照合処理）を終了し、施錠制御装置６に認証成功の認証結果を通知してもよい。また、１：Ｎ認証時には、１つの登録データについて照合データとの認証処理（照合処理）の結果が得られる都度、施錠制御装置６に認証結果を通知しなくてもよい。例えば、Ｎ個の登録データを用いたＮ回の認証処理で得られたＮ個の認証結果がすべて認証失敗であった場合に、施錠制御装置６に認証失敗を示す認証結果を１つ通知すればよい。あるいは、Ｎ個の登録データを用いたＮ回の認証処理で得られたＮ個の認証結果が、Ｎ−１個の認証失敗と１個の認証成功であった場合、プロセッサ１は、施錠制御装置６に認証成功を示す認証結果を１つ通知すればよい。
【０１０６】
上述した実施例４によれば、登録データの第１特徴点群を参照点群とし、照合データの第２特徴点群を基準データとすることで、近傍探索における参照点群の最適な基準軸を登録データの登録処理時に選択しておくことができるため、照合データの第２特徴点群に対する基準軸選択処理を実行せずに済む分だけ、特徴点照合の応答速度を高速化することができ、特徴点の照合精度も維持される。そのような照合処理を適用した認証システム１００は、認証精度の劣化を抑制しつつ、認証処理の応答速度を改善することができる。なお、上述の認証システム１００は、実施例４に係る照合処理を適用したシステムの一例である。実施例４に係る照合処理を適用したシステムの他の例として、文字認識システムや物体検知システムなども挙げられる。これらの応用システムに対して実施例４に係る照合処理を適用することで、例えば、認識精度を維持しつつ文字認識の応答速度を高速化したり、検知精度を維持しつつ物体検知の応答速度を高速化することができる。
【０１０７】
［実施例４の変形例１］
実施例４の変形例として、照合処理において、登録データの基準軸上の座標値順に照合データの第２特徴点群を整序する処理を省略してもよい。すなわち、図２２に示す処理例において、処理Ｓ２０４−５Ｃを省略してもよい。この変形例における認証処理部２１３は、図２２に示す処理例において、今回の基準点に対して最初に検出した近傍点（参照点）のインデックス値を保持する処理（Ｓ２０４−１４）は、照合データの整序方向と登録データの基準軸とが一致する場合に実行し、照合データの整序方向と登録データの基準軸とが一致しない場合には実行しないように構成すればよい。別言すれば、照合データの整序方向と登録データの基準軸とが一致しない場合、基準点に対する参照点の近傍探索は、前回の基準点の近傍探索結果を反映せずに、例えば、参照点群の１番目に位置する参照点から近傍探索を開始すればよい。この変形例によれば、特徴点の照合処理における近傍探索において、基準点との基準距離が閾値以上の参照点を検出した後は、基準軸上の座標値順で後の参照点については近傍探索の対象としなくてもよいため、基準点と参照点との総当たりで近傍探索を行う場合と比較して、近傍探索の比較対象を削減することができる。そのため、特徴点の照合精度を維持しつつ、特徴点照合の応答速度を高速化することができる。そのような照合処理を適用した認証システム１００は、認証精度の劣化を抑制しつつ、認証処理における演算コストの増加を抑制でき、１：Ｎ認証における認証処理の応答速度を大幅に改善することができる。なお、上述の認証システム１００は、実施例４の変形例１に係る照合処理を適用したシステムの一例である。実施例４の変形例１に係る照合処理を適用したシステムの他の例として、文字認識システムや物体検知システムなども挙げられる。これらの応用システムに対して実施例４の変形例１に係る照合処理を適用することで、例えば、認識精度を維持しつつ文字認識の応答速度を高速化したり、検知精度を維持しつつ物体検知の応答速度を高速化することができる。
【０１０８】
［実施例４の変形例２］
実施例４の変形例として、照合処理において、登録データの基準軸上の座標値順に照合データの第２特徴点群を整序する処理の実行結果を、当該照合データに対する認証処理がすべて完了するまで、記憶装置２において保持（記憶）するようにしてもよい。例えば、一つの照合データに対して複数の登録データとの照合を行う１：Ｎ認証では、処理Ｓ２０４−５Ｃの実行結果を保持しておくことで、２度目の処理Ｓ２０４−５Ｃの実行時には記憶蔵置２に保持されている実行結果（整序結果）を利用することで、第２特徴点群を整序する演算コストを削減することができ、特徴点の照合精度を維持しつつ、特徴点照合の応答速度を高速化することができる。そのような照合処理を適用した認証システム１００は、認証精度の劣化を抑制しつつ、認証処理における演算コストの増加を抑制でき、１：Ｎ認証における認証処理の応答速度を大幅に改善することができる。なお、上述の認証システム１００は、実施例４の変形例２に係る照合処理を適用したシステムの一例である。実施例４の変形例２に係る照合処理を適用したシステムの他の例として、文字認識システムや物体検知システムなども挙げられる。これらの応用システムに対して実施例４の変形例２に係る照合処理を適用することで、例えば、認識精度を維持しつつ文字認識の応答速度を高速化したり、検知精度を維持しつつ物体検知の応答速度を高速化することができる。
【符号の説明】
【０１０９】
１  プロセッサ
２  記憶装置
２１  認証プログラム
２２  登録データＤＢ
２１１  モード選択部
２１２  登録処理部
２１３  認証処理部
２１４  基準軸選択部
２１５Ｂ  システム基準軸選択部
２３Ｂ  システム基準軸情報
３  表示装置
４  入力装置
５  生体センサ
６  施錠制御装置
１００  認証システム
【図１】
2018049569.tif 000003
【図２】
2018049569.tif 000004
【図３】
2018049569.tif 000005
【図４】
2018049569.tif 000006
【図５】
2018049569.tif 000007
【図６】
2018049569.tif 000008
【図７】
2018049569.tif 000009
【図８】
2018049569.tif 000010
【図９】
2018049569.tif 000011
【図１０】
2018049569.tif 000012
【図１１】
2018049569.tif 000013
【図１２】
2018049569.tif 000014
【図１３】
2018049569.tif 000015
【図１４】
2018049569.tif 000016
【図１５】
2018049569.tif 000017
【図１６】
2018049569.tif 000018
【図１７】
2018049569.tif 000019
【図１８】
2018049569.tif 000020
【図１９】
2018049569.tif 000021
【図２０】
2018049569.tif 000022
【図２１】
2018049569.tif 000023
【図２２】
2018049569.tif 000024