(57)【特許請求の範囲】
【請求項１】
横方向に延在し、縦方向に隣接配置された２ラインセンサを有し、該２ラインセンサ上をスイープする指の１画素以下の移動位置及び／又は移動量を推定する指移動位置推定装置であって、
隣接する所定の２行２列の画素により第１の時刻に得られた画素データに基づいて、前記２行２列の画素のうち、前記スイープ方向にある１画素の前記指の移動位置及び／又は移動量に対応する推定画素データを生成する推定画素データ生成手段と、
第２の時刻に前記１画素で採取された実画素データと、前記推定画素データ生成手段により生成された前記推定画素データとを比較し、前記指の移動位置及び／又は移動量を推定する指移動位置推定手段と、を有することを特徴とする指移動位置推定装置。
【請求項２】
前記推定画素データ生成手段は、前記指が前記２ラインセンサ上を前記縦方向に１ライン分移動した位置に対応する推定画素データを生成し、
前記第２の時刻は、前記指が前記２ラインセンサ上を前記縦方向に１ライン分移動した時刻であって、
前記指移動位置推定手段は、前記指の前記横方向の移動位置及び／又は移動量を推定することを特徴とする請求項１に記載の指移動位置推定装置。
【請求項３】
前記推定画素データ生成手段は、前記縦方向には前記１ライン分移動した位置であって、前記横方向には１画素分の移動位置を分割した所定の横移動位置における推定画素データを複数生成し、
前記指移動位置推定手段は、前記実画素データと、前記所定の横移動位置における推定画素データとを比較し、前記所定の横移動位置における推定画素データのうち、前記実画素データに最も近い画素データを有する前記所定の横移動位置を、前記指の横方向の移動位置として推定することを特徴とする請求項２に記載の指移動位置推定装置。
【請求項４】
前記指が前記２ラインセンサ上を前記縦方向に１ライン分移動する毎に該１ライン分のフレームデータを記録する合成メモリを更に有し、
前記指移動位置推定手段は、前記横方向の移動位置を表す横方向移動位置情報を、前記フレームデータともに前記合成メモリに記録することを特徴とする請求項３に記載の指移動位置推定装置。
【請求項５】
前記横方向の移動位置を表す横方向移動位置情報の度数を数えるカウント手段を更に有し、
前記指のスイープが完了した時点で、前記カウント手段により数えられた前記横方向移動位置情報の度数分布に基づいて、前記指のスイープ傾き量を算出するスイープ傾き量算出手段、を有することを特徴とする請求項３又は４に記載の指移動位置推定装置。
【請求項６】
請求項４に記載の指移動位置推定装置を有し、
前記指移動位置推定装置で得られた横方向移動位置情報を用いて、合成メモリに記録されたフレームデータの横ずれ補正を行う横ずれ補正手段を有することを特徴とする指紋画像処理装置。
【請求項７】
請求項５に記載の指移動位置推定装置を有し、
該指移動位置推定装置により前記指のスイープ傾き量を算出し、
該指のスイープ傾き量を用いて合成メモリに記録されたフレームデータの傾き補正を行う所定の傾き補正手段、を備えたことを特徴とする指紋画像処理装置。
【請求項８】
横方向に延在し、縦方向に隣接配置された２ラインセンサ上をスイープする指の１画素以下の移動位置及び／又は移動量を推定する指移動位置推定方法であって、
隣接する所定の２行２列の画素により第１の時刻に得られた画素データに基づいて、前記２行２列の画素のうち、前記スイープ方向にある１画素の前記指の移動位置及び／又は移動量に対応する推定画素データを生成する推定画素データ生成ステップと、
第２の時刻に前記１画素で採取された実画素データと、前記画素データ生成手段により生成された前記推定画素データとを比較し、前記指の移動位置及び／又は移動量を推定する指移動位置推定ステップと、を有することを特徴とする指移動位置推定方法。
【請求項９】
前記推定画素データ生成ステップは、前記指が前記２ラインセンサ上を前記縦方向に１ライン分移動した位置に対応する推定画素データを生成し、
前記第２の時刻は、前記指が前記２ラインセンサ上を前記縦方向に１ライン分移動した時刻であって、
前記指移動位置推定ステップは、前記指の前記横方向の移動位置及び／又は移動量を推定することを特徴とする請求項８に記載の指移動位置推定方法。
【請求項１０】
前記推定画素データ生成ステップは、前記縦方向には前記１ライン分移動した位置であって、前記横方向には１画素分の移動位置を分割した所定の横移動位置における推定画素データを生成し、
前記指移動位置推定ステップは、前記実画素データと、前記所定の横移動位置における推定画素データとを比較し、前記所定の横移動位置における推定画素データのうち、前記実画素データに最も近い画素データを有する前記所定の横移動位置を、前記指の横方向の移動位置として推定することを特徴とする請求項９に記載の指移動位置推定方法。
【請求項１１】
前記指が前記２ラインセンサ上を前記縦方向に１ライン分移動する毎に該１ライン分のフレームデータを記録する合成メモリを有し、
前記横方向の移動位置を表す横方向移動位置情報を、前記フレームデータとともに前記合成メモリに記録することを特徴とする請求項１０に記載の指移動位置推定方法。
【請求項１２】
前記横方向の移動位置を表す横方向移動位置情報の度数を数えるカウントステップを更に有し、
前記指のスイープが完了した時点で、前記カウントステップで数えられた前記横方向移動位置情報の度数分布により、前記指のスイープ傾き量を算出するスイープ傾き量算出ステップ、を有することを特徴とする請求項１０又は１１に記載の指移動位置推定方法。
【請求項１３】
請求項１１に記載の指移動位置推定方法を実行し、
該指移動位置推定方法で得られた横方向移動位置情報を用いて、合成メモリに記録されたフレームデータの横ずれ補正を行う横ずれ補正ステップ、を有することを特徴とする指紋画像処理方法。
【請求項１４】
請求項１２に記載の指移動位置推定方法を実行し、
該指移動位置推定方法により指のスイープ傾き量を算出し、
該指のスイープ傾き量を用いて合成メモリに記録されたフレームデータの傾き補正を行う所定の傾き補正ステップ、を有することを特徴とする指紋画像処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、指移動位置推定装置及びこれを用いた指紋画像処理装置、指移動推定方法及びこれを用いた指紋画像処理方法に関し、特に、２ラインセンサを用いて指移動位置の推定を行う指移動位置推定装置及びこれを用いた指紋画像処理装置、指移動推定方法及びこれを用いた指紋画像処理方法に関する。
【背景技術】
【０００２】
従来から、部分的な指紋画像から全体指紋画像を再構成する際に、部分画像間比較により、その相関関係から縦及び横移動量を推定する方法が知られている（例えば、特許文献１参照）。
【０００３】
また、距離をおいて配置された第一のラインセンサと第二のラインセンサの２ラインからなる１次元センサ上で、指を掃引させて得られる指紋画像から２次元の指紋画像を得る指紋画像の入力方法であって、指紋画像を第一のバッファと第二のバッファに入力し、これらのバッファを各々分割し、分割画像の相関から同一と判断される画像ブロックを検出して指の移動速度を求め、これから指紋画像の縮小又は拡大のゆがみを検出し、ゆがみを所定の方法で補正するようにした指紋画像の入力方法が知られている（特許文献２参照）。
【特許文献１】特表２００５−５３１９３５号公報
【特許文献２】特開２００２−２１６１１６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、上述の特許文献１に記載の構成では、比較単位となる画素データは実際にセンサから得られた実データであり、その比較は比較元データと１画素単位でずらした場合の比較とせざるを得ないため、１画素未満の移動は適切に検知できない。
【０００５】
特に、２ラインセンサの場合においては、比較元となる実データが２ライン分しか存在していないため、特許文献１に示したような１画素単位での比較では、横方向に関しては動いていないか、又は１画素分移動したかのいずれかの状態しか判別できないこととなり、精度の高い移動量検知を行うことができない。
【０００６】
また、上述の特許文献２に記載の構成では、横方向の成分を含むゆがみ、つまり横ずれや指が傾いて掃引した場合のゆがみについては、何ら考慮されていない。
【０００７】
一方、通常、ラインセンサを用いたスイープタイプのセンサの場合、縦移動に対して横移動、つまり横ずれは割合的に小さく、例えば２ラインセンサにおいては、縦１ライン移動完了時、横方向へは１画素未満の移動である場合が通常であり、これを適正に検知することが、画像組立精度、ひいては指紋画像認証精度に大きく影響するところとなる。
【０００８】
そこで、本発明は、１画素以内の指の移動量を適切に検出する指移動位置推定装置及びこれを用いた指紋画像処理装置、指移動位置推定方法及びこれを用いた指紋画像処理方法を提供することを目的とする。
【課題を解決するための手段】
【０００９】
上記目的を達成するため、第１の発明に係る指移動位置推定装置（１００）は、横方向に延在し、縦方向に隣接配置された２ラインセンサ(１０)を有し、該２ラインセンサ(１０)上をスイープする指(１５０)の１画素以下の移動位置及び／又は移動量を推定する指移動位置推定装置(１００)であって、
隣接する所定の２行２列の画素（Ａｎ−１、Ａｎ、Ｂｎ−１、Ｂｎ）により第１の時刻(ｔ０)に得られた画素データ（Ａｎ−１(ｔ０)、Ａｎ(ｔ０)、Ｂｎ−１(ｔ０)、Ｂｎ（ｔ０））に基づいて、前記２行２列の画素（Ａｎ−１、Ａｎ、Ｂｎ−１、Ｂｎ）のうち、前記スイープ方向にある１画素（Ｂｎ−１、Ｂｎ）の前記指(１５０)の移動位置及び／又は移動量に対応する推定画素データ（Ｂｎ−１（ｔ１）、Ｂｎ（ｔ１））を生成する推定画素データ生成手段（２０）と、
第２の時刻(ｔ１)に前記１画素（Ｂｎ−１、Ｂｎ）で採取された実画素データと、前記推定画素データ生成手段により生成された前記推定画素データ（Ｂｎ−１（ｔ１）、Ｂｎ（ｔ１））とを比較し、前記指の移動位置及び／又は移動量を推定する指移動位置推定手段(３０)と、を有することを特徴とする。
【００１０】
これにより、１画素以下の指の移動位置を適切に推定することができ、その後の画像処理に役立てることができる。
【００１１】
第２の発明は、第１の発明に係る指移動位置推定装置(１００)において、
前記推定画素データ生成手段(２０)は、前記指(１５０)が前記２ラインセンサ(１０)上を前記縦方向に１ライン分移動した位置に対応する推定画素データ（Ｂｎ−１（ｔ１）、Ｂｎ（ｔ１））を生成し、
前記第２の時刻（ｔ１）は、前記指（１５０）が前記２ラインセンサ（１０）上を前記縦方向に１ライン分移動した時刻であって、
前記指移動位置推定手段(３０)は、前記指(１５０)の前記横方向の移動位置及び／又は移動量を推定することを特徴とする。
【００１２】
これにより、ラインデータ更新を行った際の横方向の指の移動位置等を推定することができ、指の移動位置を適切に把握することができる。
【００１３】
第３の発明は、第２の発明に係る指移動位置推定装置(１００)において、
前記推定画素データ生成手段(２０)は、前記縦方向には前記１ライン分移動した位置であって、前記横方向には１画素分の移動位置を分割した所定の横移動位置における推定画素データ（Ｂｎ−１（ｔ１）、Ｂｎ（ｔ１））を生成し、
前記指移動位置推定手段(３０)は、前記実画素データと、前記所定の横移動位置における推定画素データ（Ｂｎ−１（ｔ１）、Ｂｎ（ｔ１））とを比較し、前記所定の横移動位置における推定画素データ（Ｂｎ−１（ｔ１）、Ｂｎ（ｔ１））のうち、前記実画素データに最も近い画素データ（Ｂｎ−１（ｔ１）、Ｂｎ（ｔ１））を有する前記所定の横移動位置を、前記指(１５０)の横方向の移動位置として推定することを特徴とする。
【００１４】
これにより、基準となる所望の１画素以下の横移動位置を複数選択して設定し、これらの横移動位置のいずれに最も指の横移動位置が近いのかを知ることができる。
【００１５】
第４の発明に係る指紋画像処理装置（２００）は、第３の発明に係る指移動推定装置（１００）において、
前記指（１５０）が前記２ラインセンサ(１０)上を前記縦方向に１ライン分移動する毎に該１ライン分のフレームデータを記録する合成メモリ(９０)を有し、
前記横方向の移動位置を表す横方向移動位置情報を、前記フレームデータともに前記合成メモリ(９０)に記録することを特徴とする。
【００１６】
これにより、フレームデータ毎に指の横方向移動位置の情報を記録することができ、その後の画像補正のための画像処理に役立てることができる。
【００１７】
第５の発明は、第３又は第４の発明に係る指移動位置推定装置(１００)において、
前記横方向の移動位置を表す前記横方向移動位置情報の度数を数えるカウント手段を更に有し、
前記指(１５０)のスイープが完了した時点で、前記カウント手段により数えられた前記横方向移動位置情報の度数分布に基づいて、前記指のスイープ傾き量を算出するスイープ傾き量算出手段(４０)、を有することを特徴とする。
【００１８】
これにより、指を、ラインセンサに対して斜めの状態で指の軸方向に真っ直ぐスイープさせる場合に起こり易い、指がラインセンサに対して傾いてスイープし、フレームデータ画像が斜めに傾いた状態で指紋画像を形成してしまった場合について、その傾き量を算出し、その後の画像処理に役立てることができる。
【００１９】
第６の発明に係る指紋画像処理装置(２００)は、第４の発明に係る指移動位置推定装置(１００)を有し、
前記指移動位置推定装置(１００)で得られた横方向移動位置情報を用いて、合成メモリ(９０)に記録されたフレームデータの横ずれ補正を行う横ずれ補正手段(５０)を有することを特徴とする。
【００２０】
これにより、指を２ラインセンサに垂直に正立させた状態で斜め方向にスイープした場合に起こり易い指紋画像の横ずれについて、合成メモリに記憶されたフレームデータ画像について補正を行うことができ、指紋の認証精度を高めることができる。
【００２１】
第７の発明に係る指紋画像処理装置(２００)は、第５の発明に係る指移動位置推定装置(１００)を有し、
該指移動位置推定装置(１００)により前記指(１５０)のスイープ傾き量を算出し、
該指のスイープ傾き量を用いて合成メモリ(９０)に記録されたフレームデータの傾き補正を行う所定の傾き補正手段（６０）、を備えたことを特徴とする。
【００２２】
これにより、指紋画像の傾きを補正することができ、指紋の認証精度を高めることができる。
【００２３】
第８の発明に係る指移動位置推定方法は、横方向に延在し、縦方向に隣接配置された２ラインセンサ(１０)上をスイープする指(１５０)の１画素以下の移動位置及び／又は移動量を推定する指移動位置推定方法であって、
隣接する所定の２行２列の画素（Ａｎ−１、Ａｎ、Ｂｎ−１、Ｂｎ）により第１の時刻(ｔ０)に得られた画素データ（Ａｎ−１(ｔ０)、Ａｎ(ｔ０)、Ｂｎ−１(ｔ０)、Ｂｎ（ｔ０））に基づいて、前記２行２列の画素（Ａｎ−１、Ａｎ、Ｂｎ−１、Ｂｎ）のうち、前記スイープ方向にある１画素（Ｂｎ−１、Ｂｎ）の前記指(１５０)の移動位置及び／又は移動量に対応する推定画素データを生成する推定画素データ生成ステップと、
第２の時刻(ｔ１)に前記１画素で採取された実画素データと、前記画素データ生成手段により生成された前記推定画素データ（Ｂｎ−１(ｔ１)、Ｂｎ(ｔ１)）とを比較し、前記指(１５０)の移動位置及び／又は移動量を推定する指移動位置推定ステップと、を有することを特徴とする。
【００２４】
これにより、１画素以下の指の移動位置等を推定することができ、これを利用して精度の高い画像処理等を行うことができる。
【００２５】
第９の発明は、第８の発明に係る指移動位置推定方法において、
前記推定画素データ生成ステップは、前記指が前記２ラインセンサ(１０)上を前記縦方向に１ライン分移動した位置に対応する推定画素データ（Ｂｎ−１(ｔ１)、Ｂｎ(ｔ１)）を生成し、
前記第２の時刻は、前記指（１５０）が前記２ラインセンサ（１０）上を前記縦方向に１ライン分移動した時刻であって、
前記指移動位置推定ステップは、前記指(１５０)の前記横方向の移動位置及び／又は移動量を推定することを特徴とする。
【００２６】
これにより、フレームデータの更新毎に指の横方向の移動位置等を推定することができ、後の画像補正に役立てることができる。
【００２７】
第１０の発明は、第９の発明に係る指移動位置推定方法において、
前記推定画素データ生成ステップは、前記縦方向には前記１ライン分移動した位置であって、前記横方向には１画素分の移動位置を分割した所定の横移動位置における推定画素データ（Ｂｎ−１(ｔ１)、Ｂｎ(ｔ１)）を生成し、
前記指移動位置推定ステップは、前記実画素データと、前記所定の横移動位置における推定画素データ（Ｂｎ−１(ｔ１)、Ｂｎ(ｔ１)）とを比較し、前記所定の横移動位置における推定画素データ（Ｂｎ−１(ｔ１)、Ｂｎ(ｔ１)）のうち、前記実画素データに最も近い画素データ（Ｂｎ−１(ｔ１)、Ｂｎ(ｔ１)）を有する前記所定の横移動位置を、前記指(１５０)の横方向の移動位置として推定することを特徴とする。
【００２８】
これにより、基準となる所望の１画素以下の横移動位置を複数選択して設定し、これらの横移動位置のいずれに最も指の横移動位置が近いのかを知ることができる。
【００２９】
第１１の発明は、第１０の発明に係る指移動位置推定方法において、
前記指（１５０）が前記２ラインセンサ(１０)上を前記縦方向に１ライン分移動する毎に該１ライン分のフレームデータを記録する合成メモリ(９０)を有し、
前記横方向の移動位置を表す横方向移動位置情報を、前記フレームデータともに前記合成メモリ(９０)に記録することを特徴とする。
【００３０】
これにより、フレームデータと指の横方向の移動位置の情報をセットとして記録することができ、後に画像補正等の画像処理を行う場合において、適切な横方向の移動位置情報に基づいて行うことができる。
【００３１】
第１２の発明は、第１０又は１１の発明に係る指移動位置推定方法において、
前記横方向の移動位置を表す前記横方向移動位置情報の度数を数えるカウントステップを更に有し、
前記指のスイープが完了した時点で、前記カウントステップで数えられた前記横方向移動位置情報の度数分布により、前記指のスイープ傾き量を算出するスイープ傾き量算出ステップ、を有することを特徴とする。
【００３２】
これにより、指を、ラインセンサに対して斜めで指の軸に平行に真っ直ぐスイープさせる場合に起こり易い、指がラインセンサに対して傾いてスイープし、フレームデータ画像が斜めに傾いた状態で指紋画像を形成してしまった場合について、その傾き量を算出し、その後の画像処理に役立てることができる。
【００３３】
第１３の発明に係る指紋画像処理方法は、第１１の発明に係る指移動位置推定方法を実行し、
前記指移動位置推定方法で得られた横方向移動位置情報を用いて、合成メモリ(９０)に記録されたフレームデータの横ずれ補正を行う横ずれ補正ステップ、を有することを特徴とする。
【００３４】
これにより、指を２ラインセンサに垂直に正立させた状態で斜め方向にスイープした場合に起こり易い指紋画像の横ずれについて、合成メモリに記憶されたフレームデータ画像について補正を行うことができ、指紋の認証精度を高めることができる。
【００３５】
第１４の発明に係る指紋画像処理方法は、第１２の発明に係る指移動位置推定方法を実行し、
該指移動位置推定方法により指(１５０)のスイープ傾き量を算出し、
該指のスイープ傾き量を用いて合成メモリ(９０)に記録されたフレームデータの傾き補正を行う所定の傾き補正ステップ、を有することを特徴とする。
【００３６】
これにより、指紋画像の傾きを適切に補正する画像処理を行うことができ、正立した指紋画像に是正し、指紋認証精度を高めることができる。
【００３７】
なお、上記括弧内の参照符号は、理解を容易にするために付したものであり、一例に過ぎず、図示の態様に限定されるものではない。
【発明の効果】
【００３８】
本発明によれば、１画素以内の指の移動位置及び／又は移動量を適切に推定把握することができる。また、推定した指の移動位置及び／又は移動量に基づいて、これを補正した指紋画像を得ることができ、指紋画像の認証精度を向上させることができる。
【発明を実施するための最良の形態】
【００３９】
以下、図面を参照して、本発明を実施するための最良の形態の説明を行う。
【００４０】
図１は、本発明を適用した実施例に係る指移動位置推定装置１００及び指紋画像処理装置２００の概略構成を示した機能ブロック図である。
【００４１】
図１において、本実施例に係る指移動位置推定装置１００は、２ラインセンサ１０と、推定画素データ生成手段２０と、指移動位置推定手段３０とを備える。また、指移動位置推定装置１００は、必要に応じて、合成メモリ９０と、スイープ傾き量算出手段４０と、カウント手段４５とを備えてよい。
【００４２】
また、指紋画像処理装置２００は、指移動位置推定装置１００に加えて、横ずれ補正手段５０と、傾き補正手段６０を更に備えてよい。
【００４３】
そして、指移動位置推定装置１００及び指紋画像処理装置２００は、２ラインセンサ１０を支持し、指１５０を載せてスイープさせる支持台８０を備えてよい。
【００４４】
２ラインセンサ１０は、Ａラインのラインセンサ１１とＢラインのラインセンサ１２との２本のラインセンサ１１、１２を有する指紋画像採取手段である。ラインセンサ１１、１２は、ライン状の指紋画像を撮像して採取するためのセンサである。ラインセンサ１１、１２は、ともに縦方向には画素を１個しか備えていないが、横方向には複数の画素列を備えており、例えば、１２６画素、２５２画素、５１２画素といった１００単位レベルの画素が配列される。
【００４５】
２ラインセンサ１０においては、２本のラインセンサ１１、１２が横方向に延在し、縦方向に隣接配置された構成となっている。指１５０は、２ラインセンサ１０上を縦方向にスイープして移動するが、その際に、２本のラインセンサ１１、１２が、各々指１５０の指紋の線状の部分画像を採取する。そして、部分画像を縦方向に積み重ねるように合成し、指紋の全体画像を形成する。そして、これを例えば指紋の認証等に用いる。
【００４６】
なお、本実施例においては、２本のラインセンサ１１、１２のみを備えた２ラインセンサ１０を例に挙げて説明するが、２本以上のラインセンサを有するセンサであれば、所望の２本のラインセンサを選択して本実施例を適用することができる。よって、３ライン、４ラインといった２ラインセンサ１０を含む複数本ラインセンサであれば、本実施例は好適に適用可能であり、かかる複数本ラインセンサの２本のラインセンサを用いる場合も、本実施例は含んでいるものとする。
【００４７】
なお、指１５０は、図１中のＡラインのラインセンサ１１からＢラインのラインセンサ１２にスイープする方向、つまり指１５０を手前側にスイープさせるのが一般的であるが、逆方向であってもよい。以後、本実施例においては、指１５０を手前側にスイープさせる場合を例に挙げて説明するが、ＡラインとＢラインの関係を逆にすれば、指１５０のスイープ方向に関係なく本実施例を適用することができる。
【００４８】
本実施例に係る指移動推定装置１００においては、ラインセンサ１１、１２は、指移動判定用の隣接した所定の２行２列の画素Ａｎ−１、Ａｎ、Ｂｎ−１、Ｂｎを備える。これらの画素は、予め指移動位置推定用として選択されているものを用いてよく、少なくとも隣接する２行２列の４画素を有する。本実施例に係る指移動位置推定装置１００及び指紋画像処理装置２００では、任意の時刻に得た指移動位置推定用の画素Ａｎ−１、Ａｎ、Ｂｎ−１、Ｂｎの画素データを用いて、これらの画素のうち、指１５０のスイープ方向にある１画素の画素データを推定表現する。例えば、指１５０が右手前側にスイープすれば、指移動位置推定用の画素Ａｎ−１、Ａｎ、Ｂｎ−１、Ｂｎの画素データでスイープ方向にある画素Ｂｎの画素データを表現し、指１５０が左手前側にスイープすれば、スイープ方向にある画素Ｂｎ−１の画素データを表現することになる。
【００４９】
なお、指移動位置推定用の画素Ａｎ−１、Ａｎ、Ｂｎ−１、Ｂｎは、４画素以上であればいくらあってもよく、４画素の組を、横方向の複数個所に設けてもよいし、２ラインセンサ１０の総ての画素で指移動位置推定を行えるように構成してもよい。
【００５０】
推定画素データ生成手段２０は、指１５０のスイープ方向にある１画素の画素データを推定して生成する演算処理手段である。その具体的な処理内容の詳細は後述するが、所定の演算式に従い、指移動位置推定用の画素Ａｎ−１、Ａｎ、Ｂｎ−１、Ｂｎの画素データを用いて、スイープ方向にある１画素の画素データを表現する。
【００５１】
なお、推定画素データ生成手段２０は、その内部にメモリ２１を含んでもよい。メモリ２１に、任意の時刻（以下、「第１の時刻」という。）に取得した指移動位置推定用の画素Ａｎ−１、Ａｎ、Ｂｎ−１、Ｂｎの画素データを用いて、別の時刻（以下、「第２の時刻」という。）における１画素の画素データを表現するため、第１の時刻に取得した画素Ａｎ−１、Ａｎ、Ｂｎ−１、Ｂｎの画素データは、メモリ２１に記憶しておくようにしてもよい。
【００５２】
指移動位置推定手段３０は、指１５０の移動位置を推定する演算処理手段であり、推定画素データ生成手段２０で生成したスイープ方向にある１画素の推定画素データと、第２の時刻で採取した実際の画素データとを比較し、指１５０の移動位置を推定する手段である。例えば、スイープ方向にある１画素の推定画素データが、複数の推定移動位置に対応して複数個存在するときに、指移動位置推定手段３０で、実画素データと複数の推定画素データとでパターンマッチングを行い、実画素データに最も近い推定画素データを特定できれば、指１５０の移動位置は、特定された推定画素データに対応する位置にあると推定することができる。指移動位置推定手段３０は、例えば、このようなパターンマッチングを用いて指移動位置を推定してもよい。
【００５３】
合成メモリ９０は、２ラインセンサ１０のラインセンサ１１、１２で採取したライン状の部分画像データを、１ライン移動完了毎にフレームデータとして書き込み記録を行うための記録手段である。従って、合成メモリ９０には、フレームデータが蓄積され、最終的には合成された指紋の全体画像が形成される。
【００５４】
合成メモリ９０は、フレームデータの線状画像データの他、フレームデータに関連する情報を記録することができる。詳細は後述するが、本実施例に係る指移動位置推定装置１００及び指紋画像処理装置２００においては、フレームデータを合成メモリ９０に書き込む際、１画素未満の指移動位置情報も併せて記録する。これにより、フレームデータの書き込み毎に指移動位置情報が記録されるため、これを蓄積することにより、指１５０のスイープが完了した時点における最終的な指移動位置を推定することができる。そして、最終的又はスイープ途中段階における指移動位置情報に基づいて、指紋全体の合成画像を形成する際に、必要な補正処理を行うことができる。これにより、指紋画像を実際の指紋に近付けることができ、指紋の認証精度を高めることができる。
【００５５】
カウント手段４５は、指移動位置推定手段３０での指移動位置推定が、複数の推定画素データとのパターンマッチングによりなされた場合に、推定された指移動位置情報について、どの指移動位置が何回推定されたかの度数を数える手段である。つまり、指１５０はスイープして移動するので、スイープに伴い、指移動位置情報のデータ個数は、増加して蓄積してゆく。カウント手段４５は、全体の指移動位置情報データの中で、各々の指移動位置が何回推定されたかをカウントし、度数分布を記録する。カウント手段は、例えば、各々の指移動位置毎に設定されたカウンタであってよく、指移動位置推定手段３０でフレームデータの記録を行う際に移動位置をカウントしてもよいし、合成メモリ９０に記録された指移動位置情報を読み取り、これから度数を数えてもよい。
【００５６】
スイープ傾き量算出手段４０は、合成メモリ９０に蓄積記録された指移動位置情報から、スイープの傾き量を算出するための演算処理手段である。蓄積された指１５０の移動位置情報から、指１５０の移動方向及び移動量を算出することができるため、スイープ全体としての傾き量を算出することができる。スイープ傾き量算出手段４０は、この算出を行い、指１５０のスイープ傾き量を適切に推定する。
【００５７】
横ずれ補正手段５０は、合成メモリ９０に記録された指移動位置情報の横方向の移動位置情報を監視し、横ずれがあったときには、フレームデータに横ずれ補正処理を行うための画像処理手段である。上述のように、合成メモリ９０には、フレームデータの記録の際、指移動位置情報も併せて記録されるが、フレームデータは、指１５０が縦方向に１ライン移動した時点のラインセンサ１１、１２の１本分のライン画像データを意味するため、指移動位置情報として実際に記録されるのは、横方向の指移動位置情報である。よって、合成メモリ９０に記録された横方向の指移動位置情報を監視することにより、フレームデータの横ずれを検出することができるので、横ずれ補正手段は、フレームデータの横ずれが検出されたときには、これを補正する画像処理を行う。
【００５８】
これらの補正は、総てのフレームデータの記録が終了してから行ってもよいし、例えば、横ずれが蓄積し、１画素分に達した段階で１画素移動補正するような随時処理としてもよい。
【００５９】
傾き補正手段６０は、スイープ傾き量算出手段４０によりスイープの傾き量が算出されたら、これを是正する画像処理を行うための手段である。例えば、傾きのある指紋全体の画像に対して、傾き量を補正するような回転補正をかけて、指紋画像を正立させるような補正処理を行ってもよい。傾き補正手段６０は、画像の傾き量を補正して画像を正立させる種々の画像処理が適用されてよい。
【００６０】
なお、推定画素データ生成手段２０、指移動位置推定手段３０、スイープ傾き量算出手段４０、横ずれ補正手段５０及び傾き量補正手段６０は、総て演算処理を行う演算処理手段７０として構成されてよく、例えば、所定のプログラムにより動作するコンピュータや、所定の電子回路、ＡＳＩＣ等により実現されてよい。
【００６１】
演算処理手段７０のうち、推定画素データ生成手段２０、指推定位置推定手段３０及びスイープ傾き量算出手段４０は、指１５０の移動位置推定を行うための演算処理手段であり、これらにカウント手段４５を加えて、指移動位置推定演算処理手段７１を構成する。また、横ずれ補正手段５０及び傾き量補正手段６０は、画像補正を行う画像処理手段であり、画像補正処理手段７２を構成する。指移動位置推定演算処理手段７１と画像補正処理手段７２は、一体的な演算処理手段として構成されてもよいし、独立した別個の手段として構成されてもよい。これらは、用途に応じて種々の態様をとり得る。
【００６２】
次に、図２を用いて、推定画素データ生成手段２０で実行される推定画素データ生成演算の内容について説明する。図２は、推定画素データ生成手段２０で行われる推定画素データ生成演算を説明するための図である。
【００６３】
図２（ａ）は、第１の時刻ｔ＝ｔ０における２ラインセンサ１０の隣接する所定の２行２列の指移動位置推定用の画素Ａｎ−１、Ａｎ、Ｂｎ−１、Ｂｎの画素データを示した図である。図２（ａ）において、指１５０の略中央部に位置するラインセンサ１１、１２が有する２行２列の４画素Ａｎ−１、Ａｎ、Ｂｎ−１、Ｂｎが、第１の時刻ｔ＝ｔ０において、それぞれ画素データを取得する。
【００６４】
図２（ｂ）は、第２の時刻ｔ＝ｔ１において、指１５０がスイープにより移動した状態の、２ラインセンサ１０の隣接する所定の２行２列の指移動位置推定用の画素Ａｎ−１、Ａｎ、Ｂｎ−１、Ｂｎの画素データを示した図である。図２（ｂ）において、指１５０は右手前側（右下側）にスイープし、２行２列の指移動位置推定用の画素Ａｎ−１、Ａｎ、Ｂｎ−１、Ｂｎは、相対的に指１５０のやや左上側に移動した状態を示している。
【００６５】
つまり、指１５０は、縦方向には、手前側（下側）に△ｙ移動し、横方向には右側に△ｘ移動しており、太い実線で第２の時刻ｔ＝ｔ１における２ラインセンサ１０の指１５０の下での位置が示されている。一方、薄い実線で、第１の時刻ｔ＝ｔ０における指１５０の下での２ラインセンサ１０の位置が示されている。第１の時刻ｔ＝ｔ０の時に２ラインセンサ１０上に位置していた指領域は、第２の時刻ｔ＝ｔ１においては右方向へ△ｘ、下方向へ△ｙ移動したことにより、指１５０との相対位置が移動していることが分かる。但し、△ｘ、△ｙはそれぞれ１画素単位換算での移動量であり、ともに△ｘ＝１、△ｙ＝１で１画素分移動を意味している。
【００６６】
ここで、第２の時刻ｔ＝ｔ１で観測される画素Ｂｎの画素データは、第１の時刻ｔ＝ｔ０で観測された各画素Ａｎ−１、Ａｎ、Ｂｎ−１、Ｂｎの画素データの合成となっていることが分かる。そして、第２の時刻ｔ＝ｔ１時のラインセンサ１２上のスイープ方向にある１画素Ｂｎでの、第１の時刻ｔ＝ｔ０で観測されるラインセンサ１１、１２上の各画素値の合成比は、その面積比から、指１５０の移動量△ｘ、△ｙを用いて表現すると、以下のようになる。
【００６７】
【数１】
0004470979.tif 000002
よって、これらから、第２の時刻ｔ＝ｔ１時の画素Ｂｎの画素値Ｂｎ（ｔ１）は、以下のように表せる。
【００６８】
【数２】
0004470979.tif 000003
式（１）に示したように、第１の時刻ｔ＝ｔ０において取得した指移動位置推定用の画素Ａｎ−１、Ａｎ、Ｂｎ−１、Ｂｎの画素データＡｎ−１(ｔ０)、Ａｎ(ｔ０)、Ｂｎ−１(ｔ０)、Ｂｎ(ｔ０)を用いて、第２の時刻ｔ＝ｔ１におけるスイープ方向にある画素Ｂｎの画素値を表現することができる。推定画素データ生成手段２０においては、（１）式に従った演算を行ない、スイープ方向にある１画素を、第１の時刻ｔ＝ｔ０における自己を含む周辺の画素の画素データを用いて表現する。その際、第１の時刻ｔ＝ｔ０で取得した周辺の指移動位置推定用の画素Ａｎ−１、Ａｎ、Ｂｎ−１、Ｂｎの画素データＡｎ−１(ｔ０)、Ａｎ(ｔ０)、Ｂｎ−１(ｔ０)、Ｂｎ(ｔ０)は、メモリ２１に記憶しておくようにしてもよい。
【００６９】
式（１）により、第２の時刻ｔ＝ｔ１における画素Ｂｎの画素データＢｎ(ｔ１)は、第１の時刻ｔ＝ｔ０における周辺の指移動位置推定用の画素Ａｎ−１、Ａｎ、Ｂｎ−１、Ｂｎの画素データＡｎ−１(ｔ０)、Ａｎ(ｔ０)、Ｂｎ−１(ｔ０)、Ｂｎ(ｔ０)で表現できるが、式（１）の△ｘ、△ｙを特定することにより、所望の位置における画素Ｂｎ（ｔ１）の画素値を生成することができる。
【００７０】
なお、図２においては、指１５０を右手前（右下）に移動させる例について説明したが、指１５０を左手前（左下）に移動させる場合には、画素Ｂｎ−１の画素データＢｎ−１（ｔ１）を生成することになり、指１５０を右上に移動させる場合には画素Ａｎの画素データＡｎ(ｔ１)、指１５０を左上に移動させる場合には、画素Ａｎ−１の画素データＡｎ−１(ｔ１)を生成することになる。
【００７１】
図３は、２ラインセンサ１０の指移動位置推定用画素を６画素とした場合の、推定画素データ生成手段２０の演算処理内容について説明するための図である。
【００７２】
図３において、指移動位置推定用画素が、Ａラインのラインセンサ１１上の画素はＡｎ−１、Ａｎ、Ａｎ＋１の３個であり、Ｂラインのラインセンサ１２上の画素はＢｎ−１、Ｂｎ、Ｂｎ＋１の３個であり、隣接する６個の画素で構成されている点で、図２とは異なっている。
【００７３】
この場合には、指１５０が右下に移動する場合も、左下に移動する場合も、画素Ｂｎを対象として推定画素データを生成することができる。つまり、指１５０が右下方向に移動する場合には、第１の時刻ｔ＝ｔ０における画素Ａｎ−１、Ａｎ、Ｂｎ−１、Ｂｎの画素データＡｎ−１(ｔ０)、Ａｎ(ｔ０)、Ｂｎ−１(ｔ０)、Ｂｎ(ｔ０)を用いて、第２の時刻ｔ＝ｔ１における画素Ｂｎの画素データＢｎ（ｔ１）を表現することになる。これは、結果として、式（１）を用いて、画素データＢｎ（ｔ１）を表現することができる。
【００７４】
一方、指１５０が左下に移動する場合には、式（２）に示すように、第１の時刻ｔ＝ｔ０における画素Ａｎ、Ａｎ＋１、Ｂｎ、Ｂｎ＋１の画素データＡｎ(ｔ０)、Ａｎ＋１(ｔ０)、Ｂｎ(ｔ０)、Ｂｎ＋１（ｔ０）を用いて、第２の時刻ｔ＝ｔ１における画素Ｂｎの画素データＢｎ（ｔ１）を表現することができる。
【００７５】
【数３】
0004470979.tif 000004
このように、推定画素データを生成する対象を画素Ｂｎに固定し、指１５０のスイープ方向に応じて、画素Ｂｎの画素データを表現する周辺の画素の組合せを変更するようにしてもよい。推定画素データ生成手段２０で用いる指移動位置推定用画素は、用途に応じて、２ラインセンサ１０上の任意の画素を利用することができる。
【００７６】
また、逆に、指１５０が右下にスイープする場合には、画素Ｂｎ＋１の第２の時刻ｔ＝ｔ１の推定画素データＢｎ＋１（ｔ１）を、第１の時刻ｔ＝ｔ０の周辺画素データＡｎ（ｔ０）、Ａｎ＋１（ｔ０）、Ｂｎ（ｔ０）、Ｂｎ＋１（ｔ０）で表現し、指１５０が左下にスイープする場合には、画素Ｂｎ−１の第２の時刻の推定画素データＢｎ−１（ｔ１）を第１の時刻ｔ＝ｔ０の周辺画素データＡｎ−１（ｔ０）、Ａｎ（ｔ０）、Ｂｎ−１（ｔ０）、Ｂｎ（ｔ０）で表現し、指１５０のスイープ方向により、隣接する６画素のうち、端に位置する画素Ｂｎ−１、Ｂｎ＋１の画素データＢｎ−１（ｔ０）、Ｂｎ＋１（ｔ０）を対象として推定画素データを生成するようにしてもよい。
【００７７】
このように、推定画素データを生成する対象画素及び元データとなる周辺画素の組合せは、種々の組合せを適用することができ、２ラインセンサ１０の態様により、種々変更及び設定することができる。
【００７８】
次に、図４及び図５を用いて、指移動位置推定手段３０で行う演算処理内容について説明する。
【００７９】
図４は、本実施例に係る指移動位置推定装置１００及び指紋画像処理装置２００の指移動位置推定手段３０で行う演算処理を説明するための比較対象となる図である。
【００８０】
図４（ａ）は、第１の時刻ｔ＝ｔ０における２ラインセンサ１０上の、６個の隣接する画素の画素データＡ１、Ａ２、Ａ３、Ｂ１、Ｂ２、Ｂ３を示した図である。
【００８１】
図４（ｂ）は、第２の時刻ｔ＝ｔ１において、指１５０が垂直に下に１ライン移動し、横方向の移動は全く無い状態の２ラインセンサ１０の画素データを示した図である。図４（ａ）において、Ａラインのラインセンサ１１の画素データＡ１、Ａ２、Ａ３がＢラインのラインセンサ１２に直下に移動している。今までの説明では、△ｘ＝０、△ｙ＝１の状態である。このような状態となれば、Ｂラインのラインセンサ１２の画素データに着目していれば、図４（ａ）の状態のＡラインのラインセンサ１１の画素データとパターンが一致したことが分かるので、縦方向には１ライン移動し、横方向には全く移動していないことを検出することができる。なお、Ａラインのラインセンサ１１の画素データは、新しい画素データが入ってくることになる。
【００８２】
図４（ｃ）は、第２の時刻ｔ＝ｔ１において、指１５０が右下に４５°の方向で、縦方向には１ライン分移動した状態の２ラインセンサ１０の画素データを示した図である。座標変数で表せば、△ｙ＝１、△ｘ＝１の場合である。図４（ａ）におけるＡラインのラインセンサ１１上の画素データＡ１、Ａ２、Ａ３が、図４（ｃ）においては、Ｂラインのラインセンサ１２上では画素１個分ずつ右側にずれて、横方向に移動していることが分かる。このように、傾き４５°で指１５０がスイープした場合には、ラインセンサ１１で第１の時刻ｔ＝ｔ０で取得した画素データと、縦方向に１ライン移動したときにラインセンサ１２で採取した画素データを比較することにより、指１５０が４５°で右に傾いて移動し、１画素分横ずれをしたことが分かる。
【００８３】
このように、２ラインセンサ１０において、実際に撮像取得した実画素データのみを用いた場合には、０°の傾きと、４５°の傾きについてのみ横方向の移動を検出することが可能であり、また、ラインセンサ１１で採取した画素データが、０°の傾き画素データと、４５°の傾き画素データのどちらに近いかを判定し、０°か４５°傾いたと推定することは可能である。
【００８４】
しかしながら、０°と４５°しか判定できないのでは、４５°も傾いてスイープすることが殆ど無い指紋画像入力装置においては、殆ど意味をなさない。
【００８５】
そこで、本実施例に係る指移動位置推定装置１００及び指紋画像処理装置２００においては、推定画素データ生成手段２０を用いて、横方向に１画素以下の所定量移動した場合の推定画素データを複数生成して用意し、実際に採取した画素データが、これらの推定画素データのどれに近いかをパターンマッチングで判定することにより、１画素以下の移動であっても、適切な横方向の移動量を推定することを可能にしている。
【００８６】
図５は、指１５０が、縦方向に１ライン移動したときに、１画素以下の横方向の移動をした場合の２ラインセンサ１０の画素データの例を示した図である。
【００８７】
図５（ａ）は、指１５０が２２．５°傾いた状態で縦１ライン移動した場合のラインセンサ１２の画素データを示した図である。移動量が△ｘ＝０．５、△ｙ＝１の場合であり、縦方向の１画素の移動に対して、半画素分、横方向へ移動している場合である。式（１）に、△ｘ＝０．５、△ｙ＝１を代入すれば、画素データＡ１、Ａ２を使って画素データＢ２を表現することができ、画素データＡ２、Ａ３を用いて、画素データＢ３を表現することができる。
【００８８】
図５（ｂ）は、指１５０が１１．２５°傾いた状態で縦１ライン移動した場合のラインセンサ１２の画素データを示した図である。図５（ａ）の２２．５°の場合を更に半分に分割した場合の画素データであり、△ｘ＝０．２５、△ｙ＝１の場合の画素データである。
【００８９】
図５（ｃ）は、指１５０が３３．７５°傾いた状態で縦１ライン移動した場合のラインセンサ１２の画素データを示した図である。図５（ａ）の２２．５°の場合を更に半分に分割し、横移動を増加させた場合の画素データであり、△ｘ＝０．７５、△ｙ＝１の場合の画素データである。
【００９０】
このように、第１の時刻ｔ＝ｔ０のときに、ラインセンサ１１で得た画素データＡ１、Ａ２、Ａ３を用いて、指１５０が１ライン分縦方向に移動した第２の時刻ｔ＝ｔ１における、ラインセンサ１２の横方向が１画素以下移動したときの推定画素データを生成し、これらと実際に採取された実画素データを比較し、最も類似した推定画素データを選択・特定することにより、適切な横方向の移動位置を推定することができる。つまり、実画素データが、傾き２２．５°の画素データに最も類似してれば、傾き２２．５°で指位置が移動していると推定することができ、傾き１１．２５°の画素データに最も類似してれば、傾き１１．２５°で指１５０が傾いて移動していると推定することができる。
【００９１】
指移動位置推定手段３０では、このようなパターンマッチングを利用した、指移動位置推定演算を行なう。複数の推定画素データと実画素データとの比較は、例えば、比較する画素同士の画素値の差分を算出し、この値が最も小さい推定画素データを、最も類似した画素データであると判断してもよい。
【００９２】
なお、ラインセンサ１２の推定画素データは、１画素分の横移動を分割した任意の横移動量について、生成することができる。図５（ａ）〜（ｃ）においては、計算の容易のため、１画素を均等に４分割した例について説明したが、もっと異なる角度について、推定画素データを生成するようにしてもよいし、推定画素データの生成数を多くして、推定精度を高めるようにしてもよい。
【００９３】
図５（ｄ）は、指１５０が９°傾いた状態で縦１ライン移動した場合のラインセンサ１２の画素データを示した図である。４５°を１／５に分割した場合の画素データであり、△ｘ＝０．２、△ｙ＝１の場合の画素データである。このように、推定画素データを生成する移動位置は、用途に応じて種々設定することができる。
【００９４】
また、図４及び図５においては、説明の容易のため、縦方向については、１ライン移動した段階での推定画素データを生成する例について説明しているが、縦方向の移動量△ｙが１以外の場合についても、推定画素データを生成することは可能である。しかしながら、指１５０が縦方向に１ライン移動したときに、フレームデータを採取してデータ更新を行うのが一般的であるので、１ライン移動時の△ｙ＝１の時点を基準として、横方向の移動位置を推定してゆく方法が簡便であり、好ましい。
【００９５】
なお、縦方向の１ライン移動、つまりフレームデータ更新の時点は、式（１）を用いて、△ｙ＝１となったときを基準として１ライン移動を検出するだけでなく、他の手法により、１ライン移動を検出してもよい。１ライン移動検出については、他の手法を組み合わせることにより、指移動位置推定手段３０の演算処理負担を軽減できるという利点がある。他の手法の具体例については、後述する。
【００９６】
フレームデータの更新は、指移動位置推定手段３０が、合成メモリ９０にラインセンサ１１、１２で取得した１ライン分の画素データを記録してゆくことにより行う。これにより、指紋画像が形成されてゆく。本実施例に係る指移動位置推定装置１００及び指紋画像処理装置２００においては、フレームデータの更新の際、フレームデータの記録と併せて、横方向移動位置に関する情報を記録してゆく。この蓄積データを用いて、後に画像補正を行うことが可能となる。
【００９７】
図６は、指移動位置推定手段３０が合成メモリ９０にフレームデータの書き込みを行う際に、併せて書き込みを行う横方向移動位置情報である。図６において、横方向移動位置情報が、テーブル形式で示されている。
【００９８】
図６のテーブルにおいて、Ｉｎｄｅｘ、△ｘ、△ｙ、角度及び度数がテーブルを構成する項目として挙げられている。Ｉｎｄｅｘは、横方向の移動量、つまり横ずれ量を示す指標であるが、本実施例においては、縦方向の移動量が総て△ｙ＝１に設定され、横方向の移動量△ｘが、正負の両方向に均等に４分割されているので、△ｘと同じ意味を有する。角度は、図５において説明した、指１５０のスイープの傾き量を意味し、これを正負の角度で表現している。これも、横方向の移動量△ｘと比例した関係にある。
【００９９】
図６のテーブルにおいて、度数は、例えばフレームデータの更新毎に記録される、パターンマッチングにより最大類似点と判断された横方向移動位置の該当回数である。つまり、指移動位置推定手段３０において、２ラインセンサ１０で採取された実画素データに対し、Ｉｎｄｅｘ値−４〜４の推定画素データについてパターンマッチングを行う。そして、これで最も類似していると判断されたＩｎｄｅｘが、横ずれ量を表す指標として、フレームデータとともに合成メモリ９０に記録されてゆくが、その回数は、度数として記録され、最終的に、カウント手段４５によりカウントされる。なお、符号の正負は、負の符号は、画像が右に横ずれを起こしていることを意味し、正の符号は、画像が左に横ずれを起こしていることを意味する。
【０１００】
なお、図６においては、度数もフレームデータの記録と同時に書き込む横方向移動位置情報の項目の１つとしているが、度数は、必ずしもフレームデータの記録と同時に記録又は更新する必要は無い。つまり、フレームデータと同時に、例えばＩｎｄｅｘのみを横方向移動位置情報として蓄積記録してゆき、スイープが完了した段階で、カウント手段４５により、度数を数えるようにしてもよい。度数は、推定された横方向移動位置の合計回数が分かれば良いので、必ずしもフレームデータの更新時に行う必要は無く、最後に横方向移動位置情報のデータを読み込んで度数をカウントすれば、全体の度数分布は算出できるからである。
【０１０１】
また、逆に、度数のみが必要な場合には、フレームデータの合成メモリ９０への書き込みとは無関係に、指移動位置推定手段３０で横方向移動位置が推定された段階で、順次カウント手段４５で選択された横方向移動位置をカウントアップするようにしても良い。詳しくは後述するが、例えば、指１５０のスイープの傾き角度を算出したい場合には、フレームデータとの対応関係は不要で、最終的な度数分布のみあれば良いので、その場合には、指移動位置推定手段３０から直接カウント手段４５の度数を更新してよい。
【０１０２】
指移動位置推定手段３０において、このような横方向移動位置に関するテーブルの書き込みをフレームデータの更新と併せて行うことにより、全体画像形成の際、これらの横方向移動位置情報を用いて、画像補正を行うことができる。
【０１０３】
次に、図６を引き続き用いて、横ずれ補正手段５０で実行される、横ずれ画像補正の画像処理の内容について説明する。
【０１０４】
図６において、フレームデータ更新書き込み毎に、Ｉｎｄｅｘが累積されて記録されてゆき、例えば、累積結果が−４以下となったときには、左に１画素分横にずらし、また４以上となったときには、右に１画素分横にずらしながら全体画像を形成することで、横ずれを補正することができる。つまり、横ずれ量検出の最小量を、１画素を４等分した量としているため、ずれ量累積値が４となった時点が画素換算での１画素ずれに相当する。画像補正においては、合成メモリ９０に配置されている画素単位での移動補正となるため、累積値が４の倍数を超えた時点で横ずれ補正を行うことになる。
【０１０５】
このように、指移動位置推定手段３０により書き込まれた合成メモリ９０内の横ずれを示すＩｎｄｅｘを蓄積してゆき、横ずれ量が画素単位に到達した段階で横ずれ補正を行うことにより、横ずれを防止し、指紋の全体画像の認証精度を高めることができる。
【０１０６】
次に、スイープ傾き量算出手段４０で実行される演算処理内容について、引き続き図６を用いて説明する。図６において、Ｉｎｄｅｘの度数を示した度数の項目があるが、これをカウント手段４５が数え、このＩｎｄｅｘによるヒストグラムから、スイープ傾き量算出手段４０が、その平均値を算出する。そして、事前に実測値として得られている傾き角度−ヒストグラム平均値対応表より、傾き角度を推定することができる。例えば、図６の例では、Ｉｎｄｅｘ１が度数１２、Ｉｎｄｅｘ２が度数３、Ｉｎｄｅｘ０が度数２、Ｉｎｄｅｘ３が度数１となっており、これから、ヒストグラムの平均値は、約１．１６となる。この値から、上述の傾き角度−ヒストグラム平均値対応表を用いて、傾き角度を算出することができる。
【０１０７】
なお、理解の容易のために、図６のテーブルに示された度数を用いて説明したが、上述のように、度数は、カウント手段４５により、指移動位置推定手段３０から順次カウントされてもよいし、合成メモリ９０に記録された度数の項目の無い横方向移動位置情報を読み込み、これから度数がカウントされてもよい。これらは、用途に応じて、種々の態様を適用することができる。
【０１０８】
このように、スイープ傾き量算出手段４０は、カウント手段４５で数えられた横方向移動位置情報の度数分布に基づいて、スイープ傾き量を算出することができる。
【０１０９】
また、傾き補正手段６０においては、スイープ傾き量算出手段４０で算出された傾き角度に基づいて、合成メモリ９０の全体画像の補正処理を行う。傾き補正手段６０は、所定の種々の手法により実行されてよいが、例えば、傾き角度を回転させるような回転行列や、傾きを補正する写像により傾き角度の補正を行ってよい。このような補正を行うことにより、指紋画像の認証精度を高めることができる。
【０１１０】
図７は、指１５０のスイープ態様の一例を示した図である。図７において、指１５０は、指の中心軸の傾き自体は、２ラインセンサ１０（図示せず）に対して垂直を保っているが、スイープが横ずれを起こしてしまっている。本実施例に係る指移動位置推定装置１００及び指紋画像処理装置２００の横ずれ補正手段５０は、このような横ずれに対して特に効果的に画像補正を行うことができる。
【０１１１】
図８は、図７とは異なる指１５０のスイープ態様の一例を示した図である。図８において、指１５０は、スイープの方向は一直線を保っているが、指１５０が２ラインセンサ１０（図示せず）に対して傾いて接触しているため、そのまま傾いた状態でスイープがなされている。本実施例に係る指移動位置推定装置１００及び指紋画像処理装置２００の傾き補正手段６０は、このような横ずれに対して特に効果的に画像補正を行うことができる。
【０１１２】
このように、横ずれ補正手段５０による横ずれ補正と、傾き補正手段６０による傾き補正は、スイープ態様により、適切な補正手段が異なるので、両方のスイープ態様に対応できるように横ずれ補正手段５０と傾き補正手段６０の双方を備えてもよいし、特に頻度の高い一方のみ備えるように構成してもよい。これらは、スイープ態様に応じて適宜適切な組合せとしてよい。
【０１１３】
次に、図９を用いて、本実施例に係る指移動位置推定装置１００及び指紋画像処理装置２００により実行される、指移動位置推定方法及び画像処理方法について説明する。図９は、本実施例に係る指移動位置推定方法及び画像処理方法の処理フローを示したフローチャートである。
【０１１４】
図９において、ステップ１００では、ラインセンサ１１、１２を有する２ラインセンサ１０により、第１の時刻ｔ＝ｔ０におけるフレームデータが取得される。取得されたフレームデータのうち、指移動位置推定用の画素データについては、推定画素データ生成手段２０のメモリ２１に記憶され、推定画素データ生成手段２０により、所定の複数の横ずれ位置（横移動位置）における推定画素データが生成される。
【０１１５】
ステップ１１０では、指１５０が１ライン移動したか否かが判定される。式（１）において、△ｙ＝１を代入し、ラインセンサ１２で採取される画素データが、第１の時刻にラインセンサ１１で取得した画素データと一致するか否かにより判定されてもよいし、後述する他の方法により判定されてもよい。１ライン移動していないときには、ステップ１００に戻り、フレームデータの取得を繰返す。１ライン移動していたときには、ステップ１２０に進む。
【０１１６】
ステップ１２０では、指移動位置推定手段３０により、ステップ１００で生成された複数の横ずれ位置において推定生成された推定画素データと、２ラインセンサ１０で採取された実画素データとを比較し、最大類似点を示す推定画素データを探索する。最大類似点を示した推定画素データに対応する横移動位置を、第２の時刻ｔ＝ｔ１におけるフレームデータの横ずれ量とする。例えば、図６で示した例で言えば、横ずれ量は−４〜４となる。そして、この横ずれ量は、合成メモリ９０に記録される。
【０１１７】
ステップ１３０では、横方向移動位置情報の度数が更新される。指移動位置推定手段３０から、カウント手段４５でカウントされている度数が更新されてもよいし、合成メモリ９０に記録されている度数データが更新されてもよい。また、スイープ終了後に合成メモリ９０から横移動位置情報を読み込んで、その時に度数を更新する場合には、ステップ１３０は、ステップ１５０とステップ１６０の間で実行する。
【０１１８】
ステップ１４０では、ライン更新を行い、フレームデータが合成メモリ９０に記録される。
【０１１９】
ステップ１５０では、スイープが終了したか否かが判定される。スイープが終了していないときは、ステップ１００に戻り、フレームデータの取得を繰返す。一方、スイープが終了しているときには、ステップ１６０に進む。
【０１２０】
ステップ１６０では、傾き量算出手段４０により、カウント手段４５で数えられた度数分布から、平均値を算出し、対応表を用いて、スイープ時の傾き角度を推定する。
【０１２１】
ステップ１７０では、横ずれ補正手段５０及び／又は傾き補正手段６０により、画像補正を実行し、その処理を終了する。ステップ１７０においては、指紋画像を実際の指紋に近付ける画像処理が行われ、これにより、指紋認証の精度を高めることができる。
【０１２２】
なお、ステップ１６０及びステップ１７０は、指移動位置推定方法においては必須ではなく、指紋画像処理方法においても、必要な処理のみ実行するようにしてよい。
【０１２３】
次に、図１０及び図１１を用いて、縦方向の１ラインの移動を検出する他の手法について説明する。
【０１２４】
図１０は、本実施例に係る指移動位置推定装置１００及び指紋画像処理装置２００に適用するライン移動判定手段３００の概略構成を示した図である。図１０において、ライン移動判定手段３００の主要構成要素は、２ラインセンサ１０と、演算制御手段１６０とから構成される。演算制御手段１６０は、基準画像記憶手段１２０と、画像差算出手段１３０と、部分画像データ更新判定位置設定手段１４０とを備える。演算制御手段１６０の構成要素は、コンピュータ等と同様に種々の演算手段により構成されてよい。２ラインセンサ１０は、指移動位置推定装置１００と同様に、支持台８０に設けられてよい。また、ライン移動判定手段３００は、指移動位置推定装置１００と同様に、画像を合成して指紋全体の画像を生成するための合成メモリ９０を備える。２ラインセンサ１０は、今までの説明と同様に、２本のラインセンサ１１、１２を有する。
【０１２５】
なお、以後、ラインセンサ１１、１２同士の区別の容易のため、ラインセンサ１１を第１のラインセンサ１１、ラインセンサ１２を第２のラインセンサ１２と呼ぶこととする。
【０１２６】
基準画像記憶手段１２０は、所定時刻の第２のラインセンサ１２で取得した指紋のライン画像を記憶するための手段である。書き換え可能なメモリ等の記憶手段であればよく、例えば揮発性メモリ等が利用されてよい。詳細は後述するが、基準画像記憶手段１２０で、所定時刻の第２のラインセンサ１２で取得したライン画像を基準ライン画像として記憶しておくことにより、これを比較参照のための基準画像とし、これとの対比により１ライン移動等の判断を行うことが可能となる。
【０１２７】
画像差算出手段１３０は、２つのライン画像同士を比較し、この画像差を算出するための演算手段である。画像差は、２つの画像の相違度、非類似度を示す、画像の異なり度合を示す指標を意味する。２つの画像の画像差が大きければ、その２つの画像の間には大きな差があり、その異なり度合が大きい状態を意味する。一方、２つの画像の画像差が小さければ、その２つの画像は類似していることを意味する。同一の画像の場合は、画像差はゼロとなる。
【０１２８】
なお、画像差の算出は、種々の手法が適用されてよいが、例えば、第１のラインセンサ１１で取得したライン画像と第２のラインセンサ１２で取得したライン画像を比較する場合には、互いに同座標にある画素同士の信号値を比較して差分を取り、差分の絶対値をラインセンサの総ての画素について合計した値で示してもよい。また、このような比較は、同一時刻に取得されたライン画像同士だけではなく、一旦基準画像記憶手段１２０に記憶されたライン画像と、指１５０が移動中に連続的に取得するライン画像との間で行うことも可能である。
【０１２９】
画像差算出手段１３０は、その内部に算出した画像差を記憶するメモリ１３１等を備えてよい。本実施例に係るライン移動判定手段３００においては、初期時刻等の所定時刻に取得した基準画像差を比較用の閾値とし、これに基づいて指１５０が１ライン以上移動したか否かを判定するので、閾値たる基準画像差を記憶しておく必要がある。メモリ１３１は、かかる基準画像差を記憶する役割を果たす。
【０１３０】
部分画像データ更新位置設定手段１４０は、指１５０が１ライン以上移動したと判定したときに、次のライン移動の判定を行う位置を設定するための手段である。その具体的な演算内容の詳細は、後述する。
【０１３１】
次に、図１１を用いて、本実施例に係るライン移動判定手段３００による正確な１ライン移動判定の演算制御内容について説明する。図１１は、第１のラインセンサ１１及び第２のラインセンサ１２により取得したライン画像データの、時間推移について説明するための図である。
【０１３２】
図１１（ａ）は、第１の時刻ｔ＝ｔ０における第１のラインセンサ１１及び第２のラインセンサ１２で取得したライン画像を示した図である。図１１（ａ）において、第１のラインセンサ１１と第２のラインセンサ１２が平行に隣接して配列され、指１５０がその上を手前側にスイープ移動している状態を示している。図１１（ａ）においては、第１の時刻ｔ＝ｔ０における指１５０と第１のラインセンサ１１及び第２のラインセンサ１２の位置関係が示されている。第１の時刻ｔ＝ｔ０における第１のラインセンサ１１で取得される指紋のライン画像をＬｉｎｅＡ（ｔ０）、第２のラインセンサ１２で取得される指紋のライン画像をＬｉｎｅＢ（ｔ０）とすると、第２のラインセンサ１２で取得されるライン画像ＬｉｎｅＢ（ｔ０）は、基準ライン画像として基準画像記憶手段１２０に記憶される。同時に、画像差算出手段１３０は、第１の時刻ｔ＝ｔ０における第１のラインセンサ１１で得られるライン画像と、第２のラインセンサ１２で得られるライン画像とを比較し、これらの画像差αを基準画像差として算出する。また、時刻ｔ０における基準画像差αは、メモリ１３１に記憶されてよい。
【０１３３】
この後、時間の経過につれて指１５０はスイープして移動するため、第１のラインセンサ１１で取得されるライン画像及び第２のラインセンサ１２で取得されるライン画像は、ＬｉｎｅＡ（ｔ０）及びＬｉｎｅＢ（ｔ０）のライン画像が徐々に下側（手前側）にずれた画像となり、変化してゆく。そして、指１５０がラインセンサ１１、１２の１本分の量を移動した時刻をｔ１とすると、時刻ｔ０におけるライン画像ＬｉｎｅＡ（ｔ０）が、時刻ｔ１における第２のラインセンサ１２で取得されることになる。
【０１３４】
図１１（ｂ）は、第２の時刻ｔ＝ｔ１における第１のラインセンサ１１及び第２のラインセンサ１２で取得したライン画像を示した図である。図１１（ｂ）において、第２の時刻ｔ＝ｔ１における第２のラインセンサ１２で取得されたライン画像をＬｉｎｅＢ（ｔ１）とすると、上述のように時刻ｔ１において、ＬｉｎｅＡ（ｔ０）とＬｉｎｅＢ（ｔ１）の両画像は同一画像であるので、式（３）のように表される。
【０１３５】
【数４】
0004470979.tif 000005
ここで便宜上、画像差を記号⇔で表現すると、式（３）より次式が導出される。
【０１３６】
【数５】
0004470979.tif 000006
これは第１の時刻ｔ＝ｔ０における第２のラインセンサ１２で取得及び記憶した基準ライン画像ＬｉｎｅＢ（ｔ０）と、第２のラインセンサ１２で撮像取得するライン画像とを比較して画像差算出手段１３０で両画像の画像差を算出し、これが基準画像差αに達した時刻ｔ１を１ライン移動と判定できることを意味している。つまり、第２のラインセンサ１２で取得されているライン画像と、基準ライン画像ＬｉｎｅＢ（ｔ０）との画像差を取得画像差βとすると、α＝βとなった時刻ｔ１が、指１５０が１ライン分移動したタイミングである。
【０１３７】
第１の時刻ｔ＝ｔ０から第２の時刻ｔ＝ｔ１に到達するまでの取得画像差βの変化について考えると、まず第１の時刻ｔ＝ｔ０のときの第２のラインセンサ１２で取得されるライン画像ＬｉｎｅＢ（ｔ０）は、基準ライン画像ＬｉｎｅＢ（ｔ０）との関係で言えば、当然に同一画像であるので、その取得画像差β（ｔ０）は、β（ｔ０）＝０である。つまり、以下の式（５）が成り立つ。
【０１３８】
【数６】
0004470979.tif 000007
さらに第１の時刻ｔ＝ｔ０から第２の時刻ｔ＝ｔ１への経過において、第１の時刻ｔ＝ｔ０での基準ライン画像ＬｉｎｅＢ（ｔ０）と、ｔ<ｔ１である任意の時刻ｔでの第２のラインセンサ１２で取得されるライン画像ＬｉｎｅＢ（ｔ）との画像差β（ｔ）は、式（６）から式（７）のようになる。
【０１３９】
【数７】
0004470979.tif 000008
【０１４０】
【数８】
0004470979.tif 000009
このような関係から、第１の時刻ｔ＝ｔ０における第１のラインセンサ１１のライン画像ＬｉｎｅＡ（ｔ０）と第２のラインセンサ１２のライン画像ＬｉｎｅＢ（ｔ０）同士の基準画像差αに対し、任意の時刻ｔにおける第２のラインセンサ１２で撮像されるライン画像ＬｉｎｅＢ（ｔ）を取得し、取得画像差βがβ≧αとなった時点で、指１５０が１ライン以上移動したと判断することができる。そして、ライン移動の判定を行った段階で、基準ライン画像ＬｉｎｅＢ（ｔ０）と基準画像差αを順次更新するようにすれば、常に更新地点から次の１ライン移動の正確な判定が実施できることを意味する。
【０１４１】
このようにして随時得られる部分イメージに対し、１ライン未満の移動時の部分イメージは都度除去し、１ライン以上の移動時の部分イメージのみを記録することで、部分イメージ毎の重なりをリアルタイムで除去できることになる。
【０１４２】
このような、ライン移動判定手段３００を、本実施例に係る指移動位置推定装置１００及び指紋画像処理装置２００に適用してもよい。縦方向のライン移動判定については、ライン移動判定手段３００により行い、ライン移動を判定したときの横方向移動位置については、本実施例に係る指移動位置推定装置１００及び指紋画像処理装置２００で実行することにより、ライン移動判定に要する演算処理を軽減し、横ずれ検出の演算を素早く行なうことができる。
【０１４３】
なお、ライン移動判定手段３００は、本実施例に係る指移動位置推定装置１００及び指紋画像処理装置２００の演算処理手段７０に一体的に組み込んでもよいし、別個独立の装置として適用してもよい。
【０１４４】
以上、本発明の好ましい実施例について詳説したが、本発明は、上述した実施例に制限されることはなく、本発明の範囲を逸脱することなく、上述した実施例に種々の変形及び置換を加えることができる。
【図面の簡単な説明】
【０１４５】
【図１】本実施例に係る指移動位置推定装置１００及び指紋画像処理装置２００の機能ブロック図である。
【図２】推定画素データ生成手段２０で行われる推定画素データ生成演算の説明図である。  図２（ａ）は、第１の時刻ｔ＝ｔ０における２ラインセンサ１０の画素データを示した図である。図２（ｂ）は、第２の時刻ｔ＝ｔ１における２ラインセンサ１０の画素データを示した図である。
【図３】指移動位置推定用画素が６画素の場合の推定画素データ生成手段２０の演算処理内容の説明図である。
【図４】指移動位置推定手段３０で行う演算処理を説明するための比較対象図である。図４（ａ）は、第１の時刻ｔ＝ｔ０における２ラインセンサ１０上の画素データを示した図である。図４（ｂ）は、第２の時刻ｔ＝ｔ１において、横方向の移動は無い状態の画素データを示した図である。図４（ｃ）は、指１５０が右下に４５°の方向で、縦方向に１ライン分移動した状態の画素データを示した図である。
【図５】指１５０が、１画素以下の横方向の移動をした場合の画素データの例を示した図である。図５（ａ）は、指１５０が横方向へ２２．５°移動した場合の画素データを示した図である。図５（ｂ）は、指１５０が横方向へ１１．２５°移動した場合の画素データを示した図である。図５（ｃ）は、指１５０が横方向へ３３．７５°移動した場合の画素データを示した図である。図５（ｄ）は、指１５０が横方向へ９°移動した場合の画素データを示した図である。
【図６】指移動位置推定手段３０が合成メモリ９０に書き込む横方向移動位置情報である。
【図７】指１５０のスイープ態様の一例を示した図である。
【図８】図７とは異なる指１５０のスイープ態様の一例を示した図である。
【図９】本実施例に係る指移動位置推定方法及び画像処理方法のフローチャートである。
【図１０】本実施例に係る指移動位置推定装置１００及び指紋画像処理装置２００に適用するライン移動判定手段３００の概略構成を示した図である。
【図１１】第１のラインセンサ１１及び第２のラインセンサ１２により取得したライン画像データの、時間推移の説明図である。図１１（ａ）は、時刻ｔ０における第１のラインセンサ１１及び第２のラインセンサ１２で取得したライン画像を示した図である。図１１（ｂ）は、時刻ｔ１における第１のラインセンサ１１及び第２のラインセンサ１２で取得したライン画像を示した図である。
【符号の説明】
【０１４６】
１０    ２ラインセンサ
１１、１２    ラインセンサ
２０    推定画素データ生成手段
２１、１３１    メモリ
３０    指移動位置推定手段
４０    スイープ傾き量算出手段
４５    カウント手段
５０    横ずれ補正手段
６０    傾き補正手段
７０    演算処理手段
７１    指移動位置推定演算処理手段
７２    画像補正処理手段
８０    支持台
９０    合成メモリ
１００    指移動位置推定装置
１２０    基準画像記憶手段
１３０    画像差算出手段
１４０    部分画像データ更新位置設定手段
１５０    指
１６０    演算制御手段
２００    指紋画像処理装置
【図１】
0004470979.tif 000010
【図２】
0004470979.tif 000011
【図３】
0004470979.tif 000012
【図４】
0004470979.tif 000013
【図５】
0004470979.tif 000014
【図６】
0004470979.tif 000015
【図７】
0004470979.tif 000016
【図８】
0004470979.tif 000017
【図９】
0004470979.tif 000018
【図１０】
0004470979.tif 000019
【図１１】
0004470979.tif 000020