JP3733668B2 - Method and apparatus for creating signature verification template and signature verification apparatus - Google Patents

Method and apparatus for creating signature verification template and signature verification apparatus Download PDF

Info

Publication number
JP3733668B2
JP3733668B2 JP32191296A JP32191296A JP3733668B2 JP 3733668 B2 JP3733668 B2 JP 3733668B2 JP 32191296 A JP32191296 A JP 32191296A JP 32191296 A JP32191296 A JP 32191296A JP 3733668 B2 JP3733668 B2 JP 3733668B2
Authority
JP
Japan
Prior art keywords
signature
template
partial curve
chromosome
sign
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP32191296A
Other languages
Japanese (ja)
Other versions
JPH10162135A (en
Inventor
賢三 小幡
旭華 楊
嘉樹 内川
武 古橋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Denso Corp
Original Assignee
Denso Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Denso Corp filed Critical Denso Corp
Priority to JP32191296A priority Critical patent/JP3733668B2/en
Publication of JPH10162135A publication Critical patent/JPH10162135A/en
Application granted granted Critical
Publication of JP3733668B2 publication Critical patent/JP3733668B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/30Writer recognition; Reading and verifying signatures

Landscapes

  • Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Collating Specific Patterns (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、手書きサインと予め登録された登録サインとの一致度をファジー推論するのに好適なテンプレートの作成方法及び装置、並びに、その作成されたテンプレートを用いてサイン照合を行うサイン照合装置に関する。
【0002】
【従来の技術】
従来より、手書きサインと登録サインとを照合して、手書きサインを記述した照合対象者が予め登録されている本人であることを認証するサイン照合装置では、登録サインからサイン照合用のテンプレートを作成し、手書きサインがこのテンプレートに一致又は略一致しているか否かを判断することによりサイン照合を行なっている。
【0003】
つまり、サイン照合では、登録サインと手書きサインとの相関値(つまり一値度)を求め、この相関値が高い場合に、サインを手書き入力した者は本人であると認証すればよいため、例えば、特開平7−129770号公報に開示されているような画像処理技術を利用して、登録サインの画像から特徴点を抽出し、その特徴点に対してテンプレートを作成して、手書き入力されたサインの特徴点とテンプレートとを比較することにより、登録サインと手書きサインとの一値度を求めるとか、或は、特開平4−352080号公報に記載のように、サインが連続する各ストロークの端部(はいり,とめ,はらい)を特徴点とし、手書きサインと登録サインとの一致度をその特徴点でファジー推論するためのメンバシップ関数をテンプレートとして作成することにより、サイン照合をファジー推論にて行なう、といったことが行なわれている。
【0004】
そして、このような従来装置では、サインの特徴点を抽出し、その特徴点に対応したテンプレートを作成しているので、、サイン全体からサイン照合用のテンプレートを作成する場合に比べて、テンプレートのデータ量を少なくすることができる。
【0005】
【発明が解決しようとする課題】
しかし、従来、登録サインから特徴点を抽出する際には、サインの個人性特徴はサインが連続する各ストロークの端部であるというように、予め特徴点として抽出すべき位置を設定していたことから、その特徴点から生成されるテンプレートが、必ずしもサイン登録者の個人性特徴を反映したテンプレートとならず、サイン照合の精度に誤差が生じることがあった。
【0006】
特に、特開平4−352080号公報に開示された装置では、サイン照合用のテンプレートとして、特徴点の一値度をファジー推論するためのメンバシップ関数を設定しており、このメンバシップ関数の設定対象となる特徴点が、サイン登録者の個人性特徴を正確に反映したものであれば、登録サインと手書きサインとの一値度を極めて高精度に求めることができるのであるが、メンバシップ関数を設定する特徴点を、サインの各ストロークの端部に固定していたことから、その特徴点の一値度をファジー推論によって求めても、その一値度の推論結果に誤差が生じ易いといった問題がある。
【0007】
本発明は、こうした問題に鑑みなされたものであり、サイン照合のためのテンプレートを登録サインの特徴点から作成するに当って、その特徴点として、サイン登録者の個人性特徴を最も反映した部分を設定することができるサイン照合用テンプレートの作成方法及び装置、並びにその作成されたテンプレートを用いて各サインを照合するサイン照合装置、を提供することを目的とする。
【0008】
【課題を解決するための手段】
かかる目的を達成するためになされた請求項1に記載のサイン照合用テンプレートの作成方法によれば、サイン照合用のテンプレートを作成するに当たって、まず、サイン筆記時の位置や筆圧等からなる時系列データを取り込み、この時系列データをサインの大きさ及び位置で正規化し、その正規化した時系列データからサインの個人性特徴を表わす複数の部分曲線を設定する。そして、各部分曲線毎に、照合対象となるサインデータとの一致度をファジー推論するためのメンバシップ関数を生成し、その生成した各部分曲線毎のメンバシップ関数をサイン照合用のテンプレートとして設定する。
【0009】
また、テンプレートを構成するメンバシップ関数の生成対象となる部分曲線を設定する際には、まず、正規化した時系列データをサインが連続する領域毎に区分した複数のストロークの中から任意のストロークを選択し、その選択したストローク上の任意の区間を部分曲線として選択することにより、複数の部分曲線を初期設定すると共に、その複数の部分曲線を、夫々、部分曲線が属するストロークの番号,ストローク上での部分曲線の始点,及びストローク上での部分曲線の終点を表す3種の情報からなる遺伝子座として設定する。
【0010】
そして、次に、各部分曲線を表す複数の遺伝子座からなる遺伝子座群をサインの染色体として、予め設定された遺伝的アルゴリズムに従い遺伝子座を操作することにより、サインの個人性特徴を最適に表わすエリート染色体を生成し、その生成したエリート染色体を構成する各遺伝子座にて特定される部分曲線を、テンプレート作成用の部分曲線として設定する。
【0011】
即ち、まず本発明方法は、サイン照合をファジー推論にて行なうためのテンプレートを作成するためのものであり、そのテンプレートを構成するメンバシップ関数の生成対象となるサインの部分曲線を、遺伝的アルゴリズムに従って設定する。
【0012】
また、このように遺伝的アルゴリズムを用いて、サイン照合に用いるサインの部分曲線を設定する方法は、本願発明者らにより既に提案されている(「局所改善遺伝的アルゴリズムを用いたサインの個人性特徴発見」,電気学会論文誌C,116巻5号(平成8年)p548〜p555参照)が、遺伝的アルゴリズムを用いてサインの個人性特徴を表わす部分曲線を設定するには、染色体という構造に対して「どこにサインの個人性特徴があるか」を表現させるコーディング方法が重要であり、上記論文に記載のように、部分曲線の長さ,傾き,角度,曲り等、考えられる特徴を全て遺伝子座に含めると、部分曲線の設定に時間がかかり、またその設定した部分曲線の情報量も多くなるので、ファジー推論のためのメンバシップ関数も多くなり、テンプレートのデータ量が多くなる。
【0013】
そこで、本発明では、遺伝子的アルゴリズムを用いてサインの部分曲線を設定するに当って、部分曲線が属するストロークの番号,そのストローク上での部分曲線の始点,及びそのストローク上での部分曲線の終点(換言すれば始点からの長さ)を用い、これら各情報を遺伝子座とするようにしている。
【0014】
この結果、個人性特徴を最も反映した部分曲線の設定に必要な部分曲線の情報量を少なくして、その設定に要する時間を短くすることができる。また、設定した部分曲線からメンバシップ関数を作成する際にも、その部分曲線の始点から終点までの長さに対応したデータ変化量に基づきメンバシップ関数を作成すればよいので、メンバシップ関数の数,延いてはテンプレートのデータ量を少なくすることができる。
【0015】
ここで、上記のようにサインの時系列データからサイン筆記者の個人性特徴を最も反映した部分曲線を設定するための遺伝的アルゴリズムとしては、請求項2に記載のように、染色体を構成する任意の遺伝子座を増殖・突然変異させて遺伝子座の異なる複数の染色体を生成し、その複数の染色体の中からサインの個人性特徴を最適に表わす染色体を選択することにより、サインの個人性特徴を表わすのに最も適した遺伝子座を抽出する動作を、染色体を構成する各遺伝子座毎に行なうことにより、エリート染色体を生成する、局所改善型遺伝的アルゴリズムを用いるようにすればよい。
【0016】
即ち、従来より知られている一般的な遺伝的アルゴリズムでは、染色体を構成する遺伝子座を各々所定手順で除々に変化させることによりエリート染色体を生成するようにしているので、エリート染色体を生成するのに時間がかかるが、局所改善型遺伝的アルゴリズムでは、上記のように、任意の遺伝子座を増殖・突然変異させることによりエリート染色体を生成するので、エリート染色体を短時間(一般的な遺伝的アルゴリズムに比べ約10倍以上の早さ)で生成することができる。また、局所改善型遺伝的アルゴリズムでは、遺伝子座を突然変異させるので、遺伝子座を除々に変化させる一般的な遺伝的アルゴリズムに比べて、より最適解に近いエリート染色体を生成することもできる。
【0017】
また、上記のように設定した部分曲線毎に登録サインと手書きサインとの一致度をファジー推論するためのメンバシップ関数を作成する際には、請求項3に記載のように、サイン筆記時の時系列データを複数回取り込み、その複数の時系列データにおける各部分曲線の始点から終点までのデータ変化量の最小値と最大値とを求めることにより、その最小値から最大値までを幅とする台形型メンバシップ関数を生成するようにすればよい。
【0018】
つまり、サイン照合用のテンプレートを構成するメンバシップ関数を、複数の時系列データにおける各部分曲線の始点から終点までのデータ変化量の最小値から最大値までの幅を有する台形型メンバシップ関数として構成すれば、複数回取り込んだ時系列データ(つまりサイン)の各部分曲線におけるばらつきをメンバシップ関数に反映させることができ、サイン照合時に各部分曲線毎の一致度をサイン筆記時のばらつきに影響されることなく高精度に求めることができるテンプレートを作成することが可能になる。
【0019】
次に、請求項4に記載のサイン照合用テンプレートの作成装置においては、サイン入力手段からサイン筆記時の時系列データが入力されると、正規化手段が、その時系列データを、サインの大きさ及び位置で正規化し、部分曲線設定手段が、その正規化された時系列データからサインの個人性特徴を表わす複数の部分曲線を設定し、テンプレート生成手段が、その設定された各部分曲線毎に、照合対象となるサインデータとの一致度をファジー推論するためのメンバシップ関数を生成し、その生成した各部分曲線毎のメンバシップ関数をサイン照合用のテンプレートとして所定のテンプレート記憶媒体に格納する。
【0020】
また部分曲線設定手段が部分曲線を設定する際には、まず、部分曲線初期設定手段が、正規化した時系列データをサインが連続する領域毎に区分した複数のストロークの中から任意のストロークを選択し、その選択したストローク上の任意の区間を前記部分曲線として選択することにより、複数の部分曲線を初期設定すると共に、その複数の部分曲線を、夫々、部分曲線が属するストロークの番号,そのストローク上での部分曲線の始点,及びそのストローク上での部分曲線の終点を表す3種の情報からなる遺伝子座として設定する。
【0021】
そして、エリート染色体生成手段が、部分曲線初期設定手段にて設定された複数の遺伝子座からなる遺伝子座群を手書き入力されたサインの染色体として、予め設定された遺伝的アルゴリズムに従い遺伝子座を操作することにより、サインの個人性特徴を最適に表わすエリート染色体を生成し、その生成したエリート染色体を構成する各遺伝子座にて特定される部分曲線を、テンプレート作成用の部分曲線として設定する。
【0022】
即ち、本発明(請求項4)のサイン照合用テンプレートの作成装置においては、請求項1に記載の作成方法に従ってサイン照合用テンプレートを作成する。このため、本発明の装置によれば、エリート染色体生成手段において、遺伝的アルゴリズムに従ってサインの個人的特徴を最も反映した部分曲線を設定するのに必要な情報量を少なくして、その設定に要する時間を短くすることができると共に、テンプレート生成手段が各部分曲線毎にメンバシップ関数を作成する際にも、その部分曲線の始点から終点までの長さに対応したデータ変化量に基づきメンバシップ関数を作成すればよいので、メンバシップ関数の数,延いてはテンプレートのデータ量を少なくすることができる。
【0023】
次に、請求項5に記載のサイン照合用テンプレートの作成装置においては、エリート染色体生成手段が、前述の請求項2に記載の局所改善型遺伝的アルゴリズムに従ってエリート染色体を生成する。このため、本発明(請求項5)のサイン照合用テンプレートの作成装置は、請求項2に記載の発明方法に従ってサイン照合用テンプレートを作成することができ、請求項2に記載の発明方法と同様の効果を得ることができる。
【0024】
また、請求項6に記載のサイン照合用テンプレートの作成装置においては、テンプレート生成手段が、サイン入力手段を介してサイン筆記時の時系列データを複数回取り込み、その取り込んだ複数の時系列データにおける各部分曲線の始点から終点までのデータ変化量の最小値と最大値とを求めることにより、その最小値から最大値までを幅とする台形型メンバシップ関数を生成する。このため、本発明(請求項6)のサイン照合用テンプレートの作成装置は、請求項3に記載の発明方法に従ってサイン照合用テンプレートを作成することができ、請求項3に記載の発明方法と同様、サイン照合時に各部分曲線毎の一致度をサイン筆記時のばらつきに影響されることなく高精度に求めることのできるテンプレートを作成することが可能になる。
【0025】
一方、請求項7に記載のサイン照合装置は、上記請求項4〜請求項6いずれか記載の作成装置にて作成されたテンプレートが予め記憶されたテンプレート記憶媒体を備え、このテンプレート記憶媒体に記憶されたテンプレートを用いて、登録サインと新たに手書き入力された手書きサインとの照合を行なうための装置である。
【0026】
そして、本発明(請求項7)のサイン照合装置においては、正規化手段が、サイン入力手段から入力されたサイン筆記時の時系列データをサインの大きさ及び位置で正規化し、推論手段が、その正規化された時系列データの中から、テンプレート記憶媒体にテンプレートとして記憶された複数のメンバシップ関数に対応する部分曲線のデータを夫々抽出し、そのデータと対応するメンバシップ関数とから、登録サインと手書きサインとの各部分曲線毎の一致度をファジー推論し、照合率出力手段が、そのファジー推論された各部分曲線毎の一致度から、登録サインと手書きサインとの全体の一致度を算出し、その算出結果を照合率として出力する。
【0027】
従って、本発明のサイン照合装置によれば、請求項4〜請求項6いずれか記載の装置を用いて作成されたテンプレートを利用して登録サインと手書きサインとの一致度を表す照合率を求めることができ、例えば、この照合率(0〜1.0の値)が0.7以上であればサインを手書き入力した者は登録者本人であると判断し、照合率が0.3以下であれば偽者であると判断し、照合率が0.3から0.7までの値であれば再度サインを入力させるといった手順で、個人認証を行うことが可能になる。
【0028】
そして、本発明によれば、サイン照合時に、テンプレート記憶媒体に登録されたテンプレートを構成するメンバシップ関数に対応した部分曲線毎の時系列データを抽出して、これに対応するメンバシップ関数を用いて登録サインとの一致度をファジー推論すればよく、サイン照合時に、サイン全体の形状等を分析する必要がないため、短時間で簡単にサイン照合を行うことができる。また、テンプレートは、サインの個人性特徴を最も反映した部分曲線に対して作成されているため、サイン照合も極めて高精度に行うことができる。
【0029】
【発明の実施の形態】
以下に本発明の実施例を図面と共に説明する。
まず図1は本発明が適用された実施例のサイン照合装置全体の構成を表すブロック図である。なお、本実施例のサイン照合装置は、予め登録されたサイン照合用のテンプレートを用いて登録サインと手書きサインとを照合するサイン照合装置としての機能に加えて、サイン登録者が手書き入力したサインの時系列データからサイン照合用のテンプレートを作成するサイン照合用テンプレート作成装置としての機能も有する。
【0030】
図1に示す如く、本実施例のサイン照合装置は、サインを手書き入力するための入力面を備え、入力面へのサイン筆記時にそのサインの入力位置や筆圧等を逐次検出してその検出結果を入力するサイン入力手段としてのタブレット2と、外部操作によってサイン照合装置に対してデータや各種指令を入力するためのキーボード4と、タブレット2に記述されたサインや装置側からの各種メッセージを表示するための表示装置6と、タブレット2及びキーボード4からの入力信号に基づき、サイン登録及びサイン照合のための各種演算処理を実行する、CPU,RAM,ROM等を中心に構成されたマイクロコンピュータ10とから構成されている。
【0031】
なお、表示装置6は、タブレット2に記述されたサインをリアルタイムで表示することにより、サイン筆記者が表示画面上で確認しながらサインを記述できるようにするためのものであり、この表示装置6には、タブレット2の入力面に装着した薄肉の液晶表示装置(LCD)が用いられる。
【0032】
またマイクロコンピュータ10は、ROM又は外部記憶装置(ハードディスク,光ディスク等)に予め記憶されたプログラムに従い、サイン登録及びサイン照合のための後述の演算処理を実行するが、その演算処理を機能ブロックで表すと図1に示す如くなる。
【0033】
即ち、マイクロコンピュータ10においては、まず、タブレット2から入力されるサインの時系列データを正規化手段としての信号処理部12で正規化する。そして、サイン登録時には、部分曲線設定手段としての遺伝子操作部14において、信号処理部12で正規化された時系列データからサインの個人性特徴を表す複数の部分曲線を設定し、更にテンプレート生成手段としてのテンプレート生成部16にて、その設定された各部分曲線毎に登録サインと手書きサインとの一致度をファジー推論するためのメンバシップ関数を生成し、これをサイン照合用のテンプレートとして、サイン登録者のID番号と共にテンプレート記憶媒体20に格納する。
【0034】
また、サイン照合時には、サイン照合部22において、テンプレート記憶媒体20から照合対象者のID番号に対応したテンプレートを読み出し、このテンプレートと信号処理部12で正規化されたサインの時系列データとから照合対象者が今回手書き入力したサインと登録サインとを照合し、判定出力部24にて、その照合結果(照合率)から照合対象者がサイン登録した本人であるかどうかを判定して、その判定結果を外部装置に出力する。
【0035】
そして、遺伝子操作部14,テンプレート生成部16,テンプレート記憶媒体20,サイン照合部22,及び、判定出力部24は、キーボード4からの信号を受ける制御部28により制御される。また、制御部28は、表示装置6にサインや各種メッセージを表示する表示制御も行い、制御部28には、表示装置6にサインを表示するために、タブレット2からのサインの時系列データも入力される。
【0036】
なお、テンプレート記憶媒体20には、マイクロコンピュータ10を構成するRAMのバックアップ領域を利用することもできるが、例えば、ハードディディスクや光磁気ディスク,或いは、ICカード,メモリカード,磁気カード等のデータ記憶機能を有するカード等,外部の記憶媒体を用いるようにしてもよい。
【0037】
次に、マイクロコンピュータ10において上記各機能を実現するために実行される演算処理を、図2及び図3に示すフローチャートに沿って説明する。
本実施例のサイン照合装置は、サイン登録時には、キーボード4を操作してサインの登録指令を入力するようにされている。そこでマイクロコンピュータ10は、まずS110(Sはステップを表す)にて、キーボード4からサインの登録指令が入力されたか否かによって、サイン登録か否かを判断し、サイン登録時には、続くS120以降のサイン登録処理を実行し、サイン登録時ではない場合(つまりサイン照合時には)、S210以降のサイン照合処理を実行する。
【0038】
サイン登録時に実行されるS120では、表示装置6に、タブレット2にサイン登録者が筆記したサイン(以下、正例サインという)をa回(例えば5〜30回),サイン登録者以外の者がサイン登録者のサインを真似て筆記したサイン(以下、負例サインという)をb回(例えば10〜85回)取り込むためのメッセージを表示し、タブレット2に正例サイン或いは負例サインが記述されることによりタブレット2から入力されるサインの時系列データを取り込むサイン入力処理を実行する。
【0039】
そして、S120にて、正例サイン又は負例サインの時系列データを取り込むと、続くS130にて、その時系列データをサインの大きさ及び位置にて正規化し、サイン登録用の一つのサインデータ(正例サインデータ又は負例サインデータ)として記憶する。
【0040】
また、続くS140では、上記S120,S130の一連の処理をn回(n=a+b)実行することにより、正例サインデータa個分と負例サインデータb個分との合計n個のサインデータを入力できたか否かを判断する。
そして、n個のサインデータを入力できていなければ、上記S120,130の処理を再度実行し、n個のサインデータを入力できていれば、S150に移行して、その入力したn個のサインデータを用いて、正例サインにおいてサイン登録者の個人性特徴を最も反映した複数の部分曲線を設定する遺伝子演算を行う。
【0041】
なお、本実施例のタブレット2は、サイン筆記時に、そのペン位置に応じたX,Y方向の座標データを順次入力するようにされており、上記S120では、これら各データを取り込むことにより、図4(b)に例示するようなサインのX方向及びy方向への位置変化を夫々表す2種類の時系列データ(以下、これら2種類の時系列データを区別して説明する際には、X方向の時系列データをXサインデータ,Y方向の時系列データをYサインデータという)を得る。但し、図4(b)に示す時系列データは、図4(a)に示すサイン(図では「木」を例示している)がタブレット2に記述されたときに得られるXサインデータを表す。そして、図4から明らかなように、S120にて得られる各方向の時系列データは、サインの記述が連続する各ストローク▲1▼,▲2▼,…毎に生成され、筆記者がペンを上げることにより生じる各ストローク間はデータがない領域となる。
【0042】
またこのように本実施例では、タブレット2からはサインのX方向及びY方向の位置変化を表す時系列データが得られるものとして説明するが、筆圧を検出可能なタブレットを用いれば、筆圧変化を表す時系列データも得られることになる。そして、こうした筆圧の時系列データが得られる場合には、後述のテンプレート生成時に、この筆圧データに対するメンバシップ関数も生成するようにすればよい。
【0043】
一方、S130にて実行される正規化処理は、こうしたサインの時系列データから、タブレット2の大きさや、筆記時のサインの大きさ、或いは傾きの違い等を吸収するために実行されるものであり、具体的には、タブレット2の各方向画素数からの正規化、或いは記述されたサイン時系列データの座標データからベクトルデータへの変換等を行い、様々な異なる条件で記述されたサインデータを同一の条件で記述されたのと同じように補正する。
【0044】
次に、S150にて実行される遺伝子演算は、予め設定された局所改善型遺伝的アルゴリズムに従い正例サインにおける複数の部分曲線を設定するための処理であり、図3に示す如く実行される。
即ち、まずS310にて、上記のように取り込み記憶した正例及び負例のサインデータ(n個)の中から、任意の正例サインデータを読み込む。そして、続くS320では、この読み込んだ正例サインデータにおいてデータが連続する任意の区間(つまり任意のストローク)を選定し、更に、続くS330にて、その選定したストローク上の任意の区間を表す遺伝子座を生成する。
【0045】
そして、続くS340では、上記S320及びS330の処理により遺伝子座をi個生成したか否かを判断し、遺伝子座をi個生成できていなければ、再度S320に移行する。この結果、一つの正例サインデータから、i個の遺伝子座にて特定されるi個の部分曲線が設定されることになる。
【0046】
なお、この遺伝子座の個数iには、乱数等を用いて任意の値を設定すればよいが、本実施例では、後の演算や照合率等を考慮して、遺伝子座が5個以上50個未満となるように個数iの値が制限される。
また、上記S320〜S340は、本発明(請求項4)の部分曲線初期設定手段に相当する処理であり、S330では、図5(a)に例示するように、S320にて選定したサインの各ストローク▲1▼,▲2▼,…毎に、そのストロークの番号STと、そのストローク上での任意の部分曲線の始点p及び終点iを表す情報(例えば、ストロークの始点から終点までを100%としたときに、ストロークの始点から始点p及び終点eが何%の位置にあるかを表す情報)とからなる遺伝子座を設定する。
【0047】
但し、図5(a)では、サインが「木」であり、これを構成する各ストローク▲1▼〜▲4▼に対して、夫々、ストローク上での部分曲線を表す遺伝子座が生成されるように記載されているが、実際には、ストロークの選定及びストローク上での部分曲線の設定にも乱数等が使用され、任意のストロークの任意の区間を表す遺伝子座が生成される。従って、複数の遺伝子座により、同一ストロークに対して複数の部分曲線が設定されることもあり得るし、また部分曲線が設定されないストロークも存在することになる。
【0048】
次に、S320〜S340の処理によって、i個の遺伝子座が生成されると、今度はS350に移行して、その生成したi個の遺伝子座からなる遺伝子座群を、正例サインの染色体として記憶する(図5(b)参照)。そして、このようにi個の遺伝子座からなる遺伝子座群を染色体として記憶すると、続くS360にて、染色体はk個(例えば50個)生成できたか否かを判断し、S350にて記憶した全染色体の数がk個に達していなければ、再度S320に移行し、S310にて読み込んだ正例サインデータの中から任意のストロークを選定して、i個の遺伝子座を生成する処理を再度実行する。この結果、本実施例においては、一つの正例サインデータから、i個の遺伝子座からなるk個の染色体が生成されることになる。
【0049】
こうして、k個の染色体が生成され、S360にてその旨が判定されると、k個の染色体に対して夫々遺伝子操作を行い、各染色体を遺伝子座レベルで世代交代させるための処理を実行する。
つまり、まず、上記のように生成・記憶されたk個の染色体の中から遺伝子操作の対象となる任意の染色体を選定する(S370)。そして、染色体が選定されると、今度は、その染色体を構成するi個の遺伝子座の中から、任意の遺伝子座を選定し(S380)、その選定した遺伝子座をm個に増殖し、増殖した「m−1」個の遺伝子座を突然変異させる(S390)。この結果、突然変異させた「m−1」個の遺伝子座と元の遺伝子座とにより、i個の遺伝子座の内の一つの遺伝子座のみが異なるm個の染色体を得ることができる。
【0050】
なお、遺伝子座の増殖とは、特定の遺伝子座の情報をそのまま複写することである。また、突然変異とは、元の遺伝子座にて特定される部分曲線を任意のストロークの任意の区間に変更することであり、例えば、乱数を発生させ、その値を突然変異させる遺伝子座の各情報に乗じることで、遺伝子座に対応する部分曲線をランダムに変化させればよい。
【0051】
このように遺伝子座の増殖/突然変異がなされると、今度は、元の遺伝子座と増殖/突然変異させた遺伝子座との合計m個の遺伝子座に対応したテンプレートを作成し(S400)、各テンプレートを評価する(S410)ことにより、m個の遺伝子座の中からサインの個人性特徴を最も反映したエリート遺伝子座を選別する(S420)。
【0052】
ここで、テンプレートの生成には、S120〜S140の処理によってサンプリングしたn個のサインデータの内、S310にて読み込んだ正例サインデータと、残りの正例サインデータの内の4個との、合計5個の正例サインデータが使用される。そして、テンプレートを実際に生成する際には、5個の正例サインデータ(具体的には各正例サインデータを構成するXサインデータとYサインデータ)の中から、染色体を構成するi個の遺伝子座にて特定される各部分曲線に対応したデータを夫々読み込み、その読み込んだデータから、各部分曲線におけるX方向の変化量の最小値と最大値及びY方向の変化量の最小値と最大値とを夫々求め、これら各方向の変化量の最小値と最大値とから、各部分曲線毎にXサインデータ及びYサインデータに対するメンバシップ関数を生成し、これら各メンバシップ関数をテンプレートとして設定する。
【0053】
なお、本実施例において、テンプレートを構成するメンバシップ関数には、台形型メンバシップ関数が使用される。例えば、5個のXサインデータから得られる特定の部分曲線でのX方向の変化量の最大値が「max 」,最小値が「min 」であった場合には、最小値「min 」を補正値Wx(補正値Wxは1より大きい値;例えば1.2)で除算し、最大値「max 」に補正値Wxを乗じて、最小値「min 」及び最大値「max 」を夫々補正することにより、その部分曲線のXサインデータに対するメンバシップ関数として、補正後の最小値「min /Wx」から最大値「max ×Wx」までを幅wとし、台を、この幅wに補正値Wyを加えた値(w+Wy)とする、図6に示す如き台形型メンバシップ関数が生成される。但し、補正値Wx及びWyは、正例サインのバラツキを吸収するための調整パラメータである。
【0054】
また、このように生成されたテンプレートの評価には、S120〜S140の処理によってサンプリングしたn個のサインデータの内、テンプレートの作成に使用した5個の正例サインデータを除く、正例サインデータ及び負例サインデータが使用される。そして、テンプレートを実際に評価する際には、これら正例サインデータと負例サインデータとを、夫々、上記生成したテンプレートからなる図7に示す如き照合ネットワークに入力して、これら各サインデータとテンプレートの生成に用いた正例サインデータとの照合率を求め、照合ネットワークにて得られる正しい照合率tiとして、正例サインデータには値1を、負例サインデータには値0を夫々設定することにより、次式を用いて適応度Fを算出する。
【0055】
【数1】

Figure 0003733668
【0056】
なお、上式において、m1,m2は、夫々、テンプレート評価に用いる正例サインデータ及び負例サインデータの数を表す。そして、上式では、正例サイン及び負例サイン夫々に対する照合誤差の平均が、適応度Fとして算出され、この適応度Fが1に近いほど、生成したテンプレート(換言すればテンプレートの元となった遺伝子座)は正例サインの個人性特徴を反映していることになるので、S420では、適応度Fが最も1に近い染色体内の遺伝子座をエリート遺伝子座として選別する。
【0057】
また、図7に示す照合ネットワークは、前述のサイン照合部22の機能を表しており、染色体を構成する複数の遺伝子座から生成したXサインデータ及びYサインデータに対する複数のメンバシップ関数からなるテンプレートと、このテンプレートを構成する各メンバシップ関数と照合対象となるサインデータにおける各メンバシップ関数に対応した部分曲線毎のXサインデータ及びYサインデータとから得られる各部分曲線毎の一致度をかけ算して、照合対象となるサインデータとテンプレートの作成に用いた正例サインデータとの照合率を求めるかけ算部とから構成される。つまり、テンプレートの評価にはサイン照合時と同様の照合ネットワークが使用され、評価すべきテンプレートを用いて、正例及び負例サインデータとテンプレートの作成に用いた正例サインデータとを実際に照合させるのである。そして、上記生成したメンバシップ関数を用いれば、部分曲線同士の一致度が高い程、その値が1に近づき、得られる照合率も1に近づくことになる。
また上記S380〜S420の一連の処理は、S370にて選定した染色体の中の一つの遺伝子を増殖/突然変異させて得られるm個の遺伝子座を夫々有するm個の染色体に対するm個のテンプレートを生成して、各テンプレートの評価を行うことにより、m個の遺伝子座の中からエリート遺伝子座を選別するための処理であるが、これら一連の処理は、m個の遺伝子座を夫々有するm個の染色体に対するm個のテンプレートを同時に生成して、各テンプレートの評価を同時に行うようにしてもよく、或いは、S370にて選定した染色体からテンプレートを生成してこれを評価し、次にS380にて選定した任意の遺伝子座を突然変異させて、その遺伝子座を有する染色体からテンプレートを生成してこれを評価し、更に先に突然変異させた遺伝子座を再度突然変異させて、その遺伝子座を有する染色体からテンプレートを生成してこれを評価する、といった手順で、選定した一つの遺伝子座を順に突然変異させて、その遺伝子座に対応したテンプレートを順に評価することにより、エリート遺伝子座を選別するようにしてもよい。
【0058】
そして、上記のようにエリート遺伝子座が選別されると、S370にて選定した染色体を構成する全ての遺伝子座に対する世代更新(つまりエリート染色体の選定)は完了したか否かを判断し(S430)、全ての遺伝子座に対する世代更新が完了していなければ、S380に移行する。するとS380では、現在遺伝子操作の対象となっている染色体を構成するi個の遺伝子座の内、上記遺伝子操作によってエリート遺伝子座が選別されていない任意の遺伝子座が選定され、続くS390以降の処理で、この選定された遺伝子座に対する遺伝子操作がなされて、エリート遺伝子座が選別される。この結果、S370にて選定した染色体を構成する全ての遺伝子座に対する遺伝子操作が行われ、その全ての遺伝子座に対してエリート遺伝子座が設定されることになる。そして、S430にて、遺伝子座の世代更新が完了したと判断されると、S440に移行し、S370にて選定された染色体を、上記選別したエリート遺伝子座からなる染色体に更新する。
【0059】
また次にS440にて染色体を更新すると、上記S370〜S440の処理により、k個の染色体全てを更新したか否かを判断する(S450)。そして、全ての染色体に対する更新が完了していなければ、再度S370に移行する。するとS370では、k個の染色体の内、更新が完了していない任意の染色体が選定され、続くS380以降の処理で、この選定された染色体を構成する各遺伝子座に対する遺伝子操作及びエリート遺伝子座の選定がなされ、この染色体が更新されることになる。この結果、S310〜S360の処理により生成されたk個の染色体全てに対して世代交代がなされることになる。
【0060】
次に、S450にて、k個の染色体全てを更新したと判断されると、今度は、S460に移行して、上記のように更新したk個の染色体の中から、テンプレートの評価の低い順に所定割合(例えば、20%)だけ削除する、所謂染色体淘汰のための処理を実行する。なお、削除する染色体の選定には、例えば、S370〜S440の処理によってk個の染色体を各々世代交代させた際に得られた評価結果(つまり適応度F)を使用することができる。
【0061】
そして、このようにk個の染色体の中から、評価の低い染色体を所定割合だけ削除すると、S470にて、残った染色体の中から任意の2つの染色体を選択して、一方の染色体を構成する所定ストローク番号以上の遺伝子座と、他方の染色体を構成する所定ストローク番号未満の遺伝子座とを組み合わせることにより、新たな染色体を生成する、所謂染色体の交叉処理を行うことにより、S460で削除した染色体の数だけ新たな染色体を補充する。
【0062】
またこのように染色体を補充すると、今度は、S480に移行して、その補充した染色体毎にテンプレートを生成し、続くS490にて、その生成したテンプレートの評価を行う。なお、テンプレートの生成及びその評価は、S400及びS410と同様の手順で実行される。
【0063】
そして、続くS500では、S490の処理により得られた新たな染色体の評価結果と、S370〜S440の処理により得られた残りの染色体の評価結果とに基づき、k個の染色体の中から、最も評価の高い(つまり適応度Fが最も1に近い)染色体をエリート染色体として選別する。そして、続くS510では、この選別したエリート染色体の適応度Fは、予め設定された判定基準(例えば、95%)以上であるか否かを判断し、エリート染色体の適応度Fが判定基準以上であれば、エリート染色体はサイン登録者の個人性特徴を最適に反映しており、これに基づき生成したテンプレートを用いればサイン照合を問題なく実行できるものと判断して、当該遺伝子演算処理を終了する。
【0064】
一方、S510にてエリート染色体の適応度Fは判定基準に達していないと判断された場合には、再度遺伝子操作を行って適応度が判定基準以上となるエリート染色体を生成すべく、S370に移行する。この結果、S370以降の処理では、遺伝子操作により更新された染色体と、淘汰,交叉により新たに生成された染色体とからなる、合計k個の第2世代の染色体に対する遺伝子操作が再度実行されることになり、最終的には、適応度Fが判定基準以上となる最適なエリート染色体が選別されて、当該遺伝子演算処理が終了することになる。
【0065】
なお、図3に示した遺伝子演算は、前述の論文に記載されたものと略同様であり、この論文に開示された技術と本実施例とは、染色体を構成する遺伝子座の構成,及びこの遺伝子座から生成されるテンプレートの構成が異なる。そして、遺伝子演算の手順は、図3に示したフローチャートの手順に限定されるものではなく、適宜変更することができる。
【0066】
次に、図2に戻り、S150の遺伝子演算処理によって適応度Fが判定基準以上となるエリート染色体が選別されると、S160にて、このエリート染色体からサイン照合用テンプレートを生成する。
なお、S160では、エリート染色体からサイン照合用のテンプレートを生成するようにしても良いが、エリート染色体に対応したテンプレートは、S150の遺伝子演算処理実行時に既に生成されているので、そのテンプレートを読み込むようにしてもよい。また、S160にて生成されるテンプレートには、各部分曲線毎のメンバシップ関数に加えて、そのメンバシップ関数に対応した部分曲線を特定するために、複数の遺伝子座からなる染色体の情報も含まれる。
【0067】
そして、このようにエリート染色体に対応したサイン照合用テンプレートが生成されると、今度は、S170に移行して、表示装置6に、サイン登録者にID番号を入力させるためのメッセージを表示し、サイン登録者がキーボード4を操作してID番号を入力するのを受け付ける、IDコード入力処理を実行する。
【0068】
そして続くS180では、S160にて生成又は読み込んだサイン照合用のテンプレートに、S170のIDコード入力処理により取り込んだサイン登録者のID番号を付与して、テンプレート記憶媒体20に格納し、処理を一旦終了する。
【0069】
以上のサイン登録時の演算処理は、一律ではないが、数十分から数分以下で完了する。そして、上記のように生成されたテンプレートのデータサイズは、一つのメンバシップ関数が16バイトで構成されるものとすれば、通常は、約500バイト程度の容量に収まる。
【0070】
次に、サイン照合時にマイクロコンピュータ10にて実行される演算処理を説明する。
既述したように、マイクロコンピュータ10は、S110にてサイン登録か否かを判断し、サイン登録時でなければ(つまりサイン照合時には)、S210に移行する。そして、S210では、表示装置6に、照合対象者に自己のID番号を入力させるためのメッセージを表示し、照合対象者がキーボード4を操作してID番号を入力するのを受け付ける、IDコード入力処理を実行する。
【0071】
また、S210にて照合対象者のID番号を取り込むと、S220にて、このID番号に対応したテンプレートを、テンプレート記憶媒体20から呼び出し、続くS230にて、表示装置6に、照合対象者にサインを記入させるためのメッセージを表示し、照合対象者がタブレット2にサインを筆記することによりタブレット2から入力されるサインデータを読み込む、サイン入力処理を実行する。
【0072】
そして、このサイン入力処理により、照合対象者のサインデータが得られると、今度はS240に移行して、そのサインデータを正規化し、S250にて、その正規化後のサインデータとテンプレートとから、今回手書き入力されたサインとテンプレートの生成に用いた正例サインとを照合するためのマッチング演算を行う。なお、このマッチング演算は、先に図7を用いて説明したように、S240にて正規化したサインデータの中から、テンプレートを構成するメンバシップ関数に対応した部分曲線のデータを取り込み、そのデータとテンプレート作成時のデータとの一致度を、対応するメンバシップ関数を用いてファジー推論し、更にこのファジー推論により得られた各部分曲線毎のデータの一致度をかけ算することにより手書きサインと登録サインとの照合率を求める、といった手順で実行される。
【0073】
そして、このようにS250のマッチング演算によって照合率が求められると、続くS260にて、照合率が、照合対象者をサイン登録者本人であると認証しうる判定値(例えば0.7)以上であるか否かを判断し、照合率が判定値以上であれば、照合対象者はサイン登録者本人であると認証し、逆に照合率が所定値に達していなければ、照合対象者にサインを再度入力させるか或いは照合対象者は偽者であるかを判断する、照合判断処理を実行する。そして、S270では、この照合判断処理による判断結果を、外部装置に出力し、当該処理を一旦終了する。
【0074】
以上説明したように、本実施例のサイン照合装置によれば、遺伝的アルゴリズムに従い、登録者が記述した正例サインの中から、登録者の個人性特徴を最も反映した部分曲線を抽出し、この部分曲線毎に一致度をファジー推論するためのメンバシップ関数を生成することにより、サイン照合用のテンプレートを生成するようにしている。また、部分曲線を特定する遺伝子座は、部分曲線が属するストロークの番号と、そのストローク上での部分曲線の始点及び終点を表す3つの情報から構成されており、各メンバシップ関数は、この遺伝子座に対応して、部分曲線の長さに対応したX方向及びY方向のサインの位置変化量から構成されている。
【0075】
このため、本実施例のサイン照合装置によれば、サイン照合時に、登録サインの個人性特徴を最も反映した部分曲線を利用して、登録サインと手書きサインとの一致度をファジー推論することができ、サイン照合の精度を確保することができると共に、サイン照合に用いるテンプレートの容量(換言すればメンバシップ関数の数)を少なくして、これを記憶するテンプレート記憶媒体20の容量を小さくすることができる。
【0076】
以上、本発明の一実施例について説明したが、本発明は上記実施例に限定されるものではなく、種々の態様をとることができる。
例えば、上記実施例では、サイン登録及びサイン照合を一つのサイン照合装置で実現するようにしたが、サイン登録時には、遺伝的アルゴリズムに従った演算処理を高速に行うために、専用のコンピュータを用い、サイン照合時には、サイン照合用の端末装置等にサイン登録された記憶媒体を組み込んでサイン照合を行うようにしても良い。
【0077】
また、上記実施例では、染色体を構成する遺伝子座の数は、5〜50個の範囲内で乱数等を用いて適宜設定されるものとして説明したが、この場合、最終的に得られるエリート染色体の遺伝子座の数も適宜設定されることになり、このエリート染色体から生成されるテンプレートのデータサイズもその都度変化することになる。このため、例えば、テンプレートのデータサイズを一定にしたい場合は、エリート染色体を選定する際の評価項目の一つに、遺伝子座の数を追加し、エリート染色体として、遺伝子座の数が所定値の染色体を選別するように構成するとか、或いは、染色体を構成する遺伝子座の数を所定値に固定するようにすればよい。そして、このようにすれば、テンプレートのデータサイズを常に一定にすることができる。
【0078】
また上記実施例では、生成したテンプレートの評価のために、サイン登録者以外の者が記述した負例サインデータをサンプリングするものとして説明したが、例えば、乱数を発生させて、振幅を制限するフィルターを通過させたものに、正例サインデータを掛け合わせることにより、負例サインデータを生成する、といった手順で、正例サインデータから負例サインデータを生成するようにしてもよい。
【図面の簡単な説明】
【図1】 実施例のサイン照合装置全体の構成及び機能を表すブロック図である。
【図2】 実施例のサイン照合装置を構成するマイクロコンピュータにてサイン登録時及びサイン照合時に実行される演算処理を表すフローチャートである。
【図3】 図2のS150において実行される遺伝子演算処理の詳細を表すフローチャートである。
【図4】 タブレットから入力される時系列データの一例を表す説明図である。
【図5】 サイン登録時にタブレットから入力された時系列データに基づき生成される遺伝子座及び染色体を説明する説明図である。
【図6】 遺伝子座にて特定される部分曲線の一致度をファジー推論するためのメンバシップ関数の生成手順を説明する説明図である。
【図7】 サイン登録時に生成されるテンプレートの構成及びこれを用いてサイン照合を行う照合ネットワークの機能を説明する説明図である。
【符号の説明】
2…タブレット 4…キーボード 6…表示装置(LCD)
10…マイクロコンピュータ 12…信号処理部 14…遺伝子操作部
16…テンプレート生成部 20…テンプレート記憶媒体
22…サイン照合部 24…判定出力部 28…制御部[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a template creation method and apparatus suitable for fuzzy inference of the degree of coincidence between a handwritten signature and a registered signature registered in advance, and a signature verification apparatus that performs signature verification using the created template. .
[0002]
[Prior art]
Conventionally, in a signature verification device that verifies a handwritten signature against a registered signature and authenticates that the person to whom verification is described is a registered person, a template for signature verification is created from the registered signature. The signature verification is performed by determining whether or not the handwritten signature matches or substantially matches the template.
[0003]
In other words, in signature verification, a correlation value (that is, a degree of single value) between a registered signature and a handwritten signature is obtained, and if this correlation value is high, the person who entered the signature by handwriting may be authenticated as the person himself. Using the image processing technique disclosed in Japanese Patent Application Laid-Open No. Hei 7-129770, feature points are extracted from an image of a registered sign, a template is created for the feature points, and handwritten input By comparing the signature feature point with the template, the degree of unification between the registered signature and the handwritten signature is obtained, or as described in JP-A-4-352080, The end part (Yes, Stop, Hari) is used as a feature point, and a membership function for fuzzy inference of the degree of coincidence between a handwritten signature and a registered signature is used as a template. By creating, performs signature verification by fuzzy inference, it has been made possible such.
[0004]
In such a conventional apparatus, the signature feature point is extracted and a template corresponding to the feature point is created. Therefore, compared to the case of creating a signature matching template from the entire signature, the template The amount of data can be reduced.
[0005]
[Problems to be solved by the invention]
However, conventionally, when extracting feature points from a registered signature, the personality feature of the signature is set in advance as a feature point such that the signature is the end of each successive stroke. For this reason, the template generated from the feature points does not necessarily reflect the personality characteristics of the sign registrant, and an error may occur in the accuracy of signature verification.
[0006]
In particular, in the apparatus disclosed in Japanese Patent Application Laid-Open No. 4-352080, a membership function for fuzzy inference of a single point of feature points is set as a template for signature verification. If the target feature point accurately reflects the personality characteristics of the sign registrant, the degree of singularity between the registered signature and the handwritten signature can be obtained with extremely high accuracy. Because the feature point that sets the value is fixed at the end of each stroke of the sine, even if the single value of the feature point is obtained by fuzzy inference, an error is likely to occur in the inference result of the single value There's a problem.
[0007]
The present invention has been made in view of such problems, and in creating a template for signature verification from the feature points of a registered signature, a portion that most reflects the personality characteristics of the signature registrant as the feature point. It is an object of the present invention to provide a signature collating template creation method and apparatus that can set a signature, and a signature collation apparatus that collates each signature using the created template.
[0008]
[Means for Solving the Problems]
According to the method for creating a signature verification template according to claim 1, which is made to achieve the above object, when creating a signature verification template, first, when the signature verification position, writing pressure, etc. The series data is taken in, the time series data is normalized by the size and position of the signature, and a plurality of partial curves representing the individuality characteristics of the signature are set from the normalized time series data. Then, for each partial curve, a membership function for fuzzy inference of the degree of coincidence with the signature data to be verified is generated, and the generated membership function for each partial curve is set as a template for sign verification. To do.
[0009]
Also, when setting the partial curve that is the target for generating the membership function that constitutes the template, first, the arbitrary time-series data is divided into a plurality of strokes divided into regions where the signs are continuous. By selecting, and selecting an arbitrary section on the selected stroke as a partial curve, a plurality of partial curves are initialized, and the plurality of partial curves are respectively assigned the stroke number and stroke to which the partial curve belongs. It is set as a gene locus composed of three types of information representing the start point of the partial curve above and the end point of the partial curve on the stroke.
[0010]
Next, using the locus group consisting of a plurality of loci representing each partial curve as the chromosome of the signature, the locus is manipulated according to a preset genetic algorithm to optimally express the personality characteristics of the signature. An elite chromosome is generated, and a partial curve specified at each gene locus constituting the generated elite chromosome is set as a partial curve for creating a template.
[0011]
That is, first, the method of the present invention is for creating a template for performing signature collation by fuzzy inference. A partial curve of a sine, which is a generation target of a membership function constituting the template, is represented by a genetic algorithm. Set according to.
[0012]
In addition, a method for setting a partial curve of a signature used for signature verification using a genetic algorithm as described above has already been proposed by the present inventors ("signature personality using a local improved genetic algorithm"). In order to set a partial curve representing the individual characteristics of a sign using a genetic algorithm, the “discovery of features”, IEEJ Transaction C, Vol. 116, No. 5 (1996) p548 to p555) is used. It is important to have a coding method that expresses “where is the personality characteristic of a sign”. As described in the above paper, all possible characteristics such as the length, inclination, angle, and curvature of the partial curve are displayed. When included in a gene locus, it takes time to set up a partial curve, and the amount of information on the set partial curve increases, so there are many membership functions for fuzzy inference. , It becomes large amount of data template.
[0013]
Therefore, in the present invention, when setting a partial curve of a sign using a genetic algorithm, the number of the stroke to which the partial curve belongs, the starting point of the partial curve on the stroke, and the partial curve on the stroke The end point (in other words, the length from the start point) is used, and each piece of information is used as a locus.
[0014]
As a result, it is possible to reduce the information amount of the partial curve necessary for setting the partial curve that most reflects the personality characteristics, and to shorten the time required for the setting. In addition, when creating a membership function from a set partial curve, it is only necessary to create a membership function based on the amount of data change corresponding to the length from the start point to the end point of the partial curve. The number of template data can be reduced.
[0015]
Here, as a genetic algorithm for setting a partial curve that most reflects the personality characteristics of the sign writer from the time series data of the signature as described above, a chromosome is constructed as described in claim 2. Individual loci of signatures are generated by multiplying and mutating arbitrary loci to generate multiple chromosomes with different loci and selecting the chromosome that best represents the individuality of the signature among the multiple chromosomes. It is only necessary to use a locally improved genetic algorithm that generates an elite chromosome by performing an operation for extracting a locus most suitable for representing each of the loci constituting the chromosome.
[0016]
In other words, in the conventional genetic algorithm known so far, elite chromosomes are generated by gradually changing the loci constituting the chromosomes in accordance with a predetermined procedure. However, in the locally improved genetic algorithm, as described above, an elite chromosome is generated by growing and mutating an arbitrary locus. Can be generated at a speed of about 10 times or more). Further, in the locally improved genetic algorithm, the locus is mutated, so that an elite chromosome closer to the optimal solution can be generated as compared with a general genetic algorithm in which the locus is gradually changed.
[0017]
In addition, when creating a membership function for fuzzy inference of the degree of coincidence between the registered signature and the handwritten signature for each partial curve set as described above, as described in claim 3, By taking time series data multiple times and obtaining the minimum and maximum values of the data change amount from the start point to the end point of each partial curve in the multiple time series data, the range from the minimum value to the maximum value is set. A trapezoidal membership function may be generated.
[0018]
In other words, the membership function that constitutes the template for sign verification is a trapezoidal membership function having a width from the minimum value to the maximum value of the data change amount from the start point to the end point of each partial curve in a plurality of time series data. If configured, the variation in each partial curve of time-series data (ie, sine) captured multiple times can be reflected in the membership function, and the degree of coincidence of each partial curve will affect the variation in sign writing during signature verification. It is possible to create a template that can be obtained with high accuracy without being performed.
[0019]
Next, in the signature verification template creation device according to claim 4, when the time series data at the time of writing the signature is input from the sign input means, the normalization means converts the time series data into the size of the signature. And the partial curve setting means sets a plurality of partial curves representing the personality characteristics of the signature from the normalized time series data, and the template generation means sets the partial curve for each of the set partial curves. Then, a membership function for fuzzy inference of the degree of coincidence with the signature data to be verified is generated, and the generated membership function for each partial curve is stored in a predetermined template storage medium as a template for signature verification. .
[0020]
When the partial curve setting means sets the partial curve, the partial curve initial setting means first selects an arbitrary stroke from a plurality of strokes obtained by dividing the normalized time-series data for each region where signs are continuous. By selecting and selecting an arbitrary section on the selected stroke as the partial curve, a plurality of partial curves are initialized, and the plurality of partial curves are respectively assigned to the stroke numbers to which the partial curves belong, It is set as a locus consisting of three types of information representing the start point of the partial curve on the stroke and the end point of the partial curve on the stroke.
[0021]
Then, the elite chromosome generating means operates the locus according to a preset genetic algorithm using the locus group consisting of a plurality of loci set by the partial curve initial setting means as a chromosome of a handwritten input signature. As a result, an elite chromosome that optimally represents the personality characteristics of the signature is generated, and the partial curve specified by each gene locus constituting the generated elite chromosome is set as a partial curve for template creation.
[0022]
That is, in the signature verification template creation apparatus of the present invention (Claim 4), the signature verification template is created according to the creation method described in Claim 1. Therefore, according to the apparatus of the present invention, in the elite chromosome generating means, the amount of information necessary for setting the partial curve most reflecting the personal characteristics of the signature is reduced according to the genetic algorithm, and it is necessary for the setting. The time can be shortened, and when the template generation means creates a membership function for each partial curve, the membership function is based on the data change amount corresponding to the length from the start point to the end point of the partial curve. Therefore, it is possible to reduce the number of membership functions and hence the amount of template data.
[0023]
Next, in the signature verification template creation device according to the fifth aspect, the elite chromosome generating means generates an elite chromosome according to the local improved genetic algorithm according to the second aspect. For this reason, the signature verification template creation device of the present invention (Claim 5) can create a signature verification template according to the invention method of Claim 2, and is similar to the invention method of Claim 2. The effect of can be obtained.
[0024]
Further, in the signature verification template creation device according to claim 6, the template generation means fetches the time-series data at the time of writing the signature a plurality of times via the sign input means, and the plurality of time-series data in the fetched time-series data By obtaining the minimum value and the maximum value of the data change amount from the start point to the end point of each partial curve, a trapezoidal membership function having a width from the minimum value to the maximum value is generated. For this reason, the signature verification template creation apparatus of the present invention (Claim 6) can create a signature verification template according to the invention method of Claim 3, and is similar to the invention method of Claim 3. Thus, it is possible to create a template that can obtain the degree of coincidence of each partial curve with high accuracy without being affected by variations in sign writing during signature verification.
[0025]
On the other hand, a signature verification apparatus according to a seventh aspect includes a template storage medium in which a template created by the creation apparatus according to any one of the fourth to sixth aspects is stored in advance, and is stored in the template storage medium. This is a device for collating a registered signature with a newly-written handwritten signature using the template that has been created.
[0026]
And in the signature collation apparatus of the present invention (Claim 7), the normalizing means normalizes the time series data at the time of sign writing input from the sign input means by the size and position of the signature, and the inference means From the normalized time series data, partial curve data corresponding to a plurality of membership functions stored as templates in the template storage medium are extracted, and registered from the membership functions corresponding to the data. The degree of coincidence of each partial curve between the signature and the handwritten signature is fuzzy-inferred, and the collation rate output means calculates the overall degree of coincidence between the registered signature and the handwritten signature from the degree of coincidence of each partial curve. The calculation result is output as a verification rate.
[0027]
Therefore, according to the signature collation apparatus of the present invention, the collation rate representing the degree of coincidence between the registered signature and the handwritten signature is obtained using the template created using the device according to any one of claims 4 to 6. For example, if this collation rate (value of 0 to 1.0) is 0.7 or more, it is determined that the person who entered the signature by handwriting is the registrant himself, and the collation rate is 0.3 or less. If it is present, it is determined that the person is a fake person, and if the collation rate is a value from 0.3 to 0.7, personal authentication can be performed by a procedure of inputting the signature again.
[0028]
According to the present invention, at the time of signature verification, time series data for each partial curve corresponding to the membership function constituting the template registered in the template storage medium is extracted, and the corresponding membership function is used. Thus, it is only necessary to fuzzy infer the degree of coincidence with the registered signature, and it is not necessary to analyze the shape of the entire signature at the time of signature verification, so that signature verification can be performed easily in a short time. Further, since the template is created for a partial curve that most reflects the personality characteristics of the signature, signature verification can be performed with extremely high accuracy.
[0029]
DETAILED DESCRIPTION OF THE INVENTION
Embodiments of the present invention will be described below with reference to the drawings.
FIG. 1 is a block diagram showing the configuration of the entire signature verification apparatus according to an embodiment to which the present invention is applied. In addition to the function as a signature verification device for verifying a registered signature and a handwritten signature using a previously registered signature verification template, the signature verification device of the present embodiment is a signature input by a signature registrant by handwriting. It also has a function as a signature verification template creation device that creates a signature verification template from the time-series data.
[0030]
As shown in FIG. 1, the sign collating apparatus of the present embodiment has an input surface for handwriting input of a signature, and sequentially detects the input position and writing pressure of the signature when writing the signature on the input surface. The tablet 2 as a sign input means for inputting the result, the keyboard 4 for inputting data and various commands to the signature verification device by external operation, the signature described in the tablet 2 and various messages from the device side A microcomputer composed mainly of a CPU, RAM, ROM, etc. that executes various arithmetic processes for sign registration and signature verification based on display devices 6 for display and input signals from the tablet 2 and keyboard 4 10.
[0031]
The display device 6 is for displaying the signature described on the tablet 2 in real time so that the sign writer can describe the signature while confirming on the display screen. For this, a thin liquid crystal display (LCD) mounted on the input surface of the tablet 2 is used.
[0032]
The microcomputer 10 executes arithmetic processing described later for sign registration and signature verification in accordance with a program stored in advance in a ROM or an external storage device (hard disk, optical disk, etc.). The arithmetic processing is represented by functional blocks. And as shown in FIG.
[0033]
That is, in the microcomputer 10, first, the time series data of the signature input from the tablet 2 is normalized by the signal processing unit 12 as normalization means. At the time of sign registration, the gene operation unit 14 serving as a partial curve setting unit sets a plurality of partial curves representing individual characteristics of the signature from the time-series data normalized by the signal processing unit 12, and further includes a template generation unit The template generation unit 16 generates a membership function for fuzzy inference of the degree of coincidence between the registered signature and the handwritten signature for each set partial curve, and uses this as a signature verification template. It is stored in the template storage medium 20 together with the registrant's ID number.
[0034]
At the time of signature verification, the signature verification unit 22 reads a template corresponding to the ID number of the person to be verified from the template storage medium 20, and compares the template with the time-series data of the signature normalized by the signal processing unit 12. The target person collates the handwritten input signature and the registered signature, and the determination output unit 24 determines whether the verification target person is the person who registered the signature from the verification result (collation rate). The result is output to an external device.
[0035]
The gene operation unit 14, template generation unit 16, template storage medium 20, signature verification unit 22, and determination output unit 24 are controlled by a control unit 28 that receives signals from the keyboard 4. The control unit 28 also performs display control for displaying a signature and various messages on the display device 6, and the control unit 28 also displays time-series data of the signature from the tablet 2 in order to display the signature on the display device 6. Entered.
[0036]
The template storage medium 20 can use a backup area of a RAM constituting the microcomputer 10, but for example, data storage such as a hard disk, a magneto-optical disk, an IC card, a memory card, a magnetic card, etc. An external storage medium such as a card having a function may be used.
[0037]
Next, arithmetic processing executed in the microcomputer 10 to realize the above functions will be described with reference to the flowcharts shown in FIGS.
The sign collating apparatus according to the present embodiment is configured to input a sign registration command by operating the keyboard 4 during sign registration. Therefore, the microcomputer 10 first determines in S110 (S represents a step) whether or not the signature is registered based on whether or not a signature registration command is input from the keyboard 4. The sign registration process is executed, and if it is not at the time of sign registration (that is, at the time of signature verification), the signature verification process after S210 is executed.
[0038]
In S120 executed at the time of sign registration, a sign written by the sign registrant on the tablet 2 (hereinafter referred to as a positive sign) is displayed a times (for example, 5 to 30 times) on the display device 6, and a person other than the sign registrant Displays a message to capture the signature written by imitating the signature registrant's signature (hereinafter referred to as negative signature) b times (for example, 10 to 85 times), and the positive signature or negative signature is described on the tablet 2 Thus, a signature input process for capturing the time series data of the signature input from the tablet 2 is executed.
[0039]
In S120, when the time-series data of the positive sign or the negative sign is captured, the time-series data is normalized by the size and position of the sign in S130, and one sign data for sign registration ( Positive sign data or negative sign data).
[0040]
In subsequent S140, a series of processes of S120 and S130 are executed n times (n = a + b), so that a total of n pieces of sine data including a positive example sine data and b negative example sine data. Is determined whether or not.
If n pieces of signature data have not been input, the processing of S120 and S130 is executed again. If n pieces of signature data have been inputted, the process proceeds to S150, and the inputted n signatures. Using the data, gene calculation is performed to set a plurality of partial curves that most reflect the personality characteristics of the sign registrant in the positive example signature.
[0041]
Note that the tablet 2 of this embodiment is configured to sequentially input coordinate data in the X and Y directions corresponding to the pen position at the time of writing a sign. 4 (b), two types of time-series data each representing a change in the position of the sign in the X-direction and y-direction (hereinafter, when these two types of time-series data are described separately, the X-direction Is obtained as X-sine data, and Y-direction time-series data is referred to as Y-sine data). However, the time series data shown in FIG. 4B represents X signature data obtained when the sign shown in FIG. 4A (illustrated as “tree” in the figure) is described in the tablet 2. . As is clear from FIG. 4, the time-series data in each direction obtained in S120 is generated for each stroke (1), (2),. There is no data between each stroke generated by raising.
[0042]
In this embodiment, the tablet 2 is described as being able to obtain time-series data representing changes in the X-direction and Y-direction of the sign. However, if a tablet capable of detecting writing pressure is used, the writing pressure can be determined. Time series data representing changes will also be obtained. When time series data of such writing pressure is obtained, a membership function for the writing pressure data may be generated at the time of generating a template to be described later.
[0043]
On the other hand, the normalization process executed in S130 is executed in order to absorb differences in the size of the tablet 2, the size of the signature at the time of writing, the inclination, etc. from the time series data of such a signature. Yes, specifically, normalization from the number of pixels in each direction of the tablet 2, or conversion of the described sign time-series data from coordinate data to vector data, etc., and sign data described under various different conditions Is corrected in the same way as described under the same conditions.
[0044]
Next, the gene calculation executed in S150 is a process for setting a plurality of partial curves in the positive signature according to a preset local improvement genetic algorithm, and is executed as shown in FIG.
That is, first, in S310, arbitrary positive example sign data is read from the positive example and negative example sign data (n pieces) captured and stored as described above. In the subsequent S320, an arbitrary section (that is, an arbitrary stroke) in which data is continuous in the read positive sign data is selected, and in S330, a gene representing an arbitrary section on the selected stroke is selected. Generate a locus.
[0045]
In subsequent S340, it is determined whether or not i loci have been generated by the processes of S320 and S330. If i loci have not been generated, the process proceeds to S320 again. As a result, i partial curves specified by i loci are set from one positive sign data.
[0046]
Note that an arbitrary value may be set for the number of loci i using random numbers or the like, but in this embodiment, the number of loci is 50 or more in consideration of later calculations, matching rates, and the like. The value of the number i is limited to be less than the number.
Further, S320 to S340 are processes corresponding to the partial curve initial setting means of the present invention (Claim 4). In S330, as illustrated in FIG. 5A, each sign selected in S320 is displayed. For each stroke (1), (2),..., Information indicating the stroke number ST and the start point p and end point i of any partial curve on the stroke (for example, 100% from the start point to the end point of the stroke) , A gene locus consisting of the starting point p and the end point e of the stroke) is set.
[0047]
However, in FIG. 5A, the sign is “tree”, and for each stroke {circle around (1)} to {circle around (4)} constituting this, a gene locus representing a partial curve on the stroke is generated. In practice, however, random numbers or the like are also used for selecting a stroke and setting a partial curve on the stroke, and a gene locus representing an arbitrary section of an arbitrary stroke is generated. Therefore, a plurality of partial curves may be set for the same stroke by a plurality of gene loci, and there are also strokes for which no partial curve is set.
[0048]
Next, when i loci are generated by the processes of S320 to S340, the process proceeds to S350, and the generated locus group consisting of the i loci is used as a chromosome of the positive signature. Store (see FIG. 5B). When the locus group consisting of i loci is stored as chromosomes in this way, in subsequent S360, it is determined whether or not k (for example, 50) chromosomes have been generated, and all the stored in S350 are determined. If the number of chromosomes has not reached k, the process proceeds to S320 again, and an arbitrary stroke is selected from the positive sign data read in S310, and the process of generating i loci is executed again. To do. As a result, in this embodiment, k chromosomes composed of i loci are generated from one positive example signature data.
[0049]
In this way, k chromosomes are generated, and when it is determined in S360, genetic manipulation is performed on each of the k chromosomes, and processing for changing generations of each chromosome at the locus level is executed. .
That is, first, an arbitrary chromosome to be genetically manipulated is selected from the k chromosomes generated and stored as described above (S370). When a chromosome is selected, an arbitrary gene locus is selected from i gene loci constituting the chromosome (S380), and the selected gene locus is expanded to m cells. The “m−1” loci thus made are mutated (S390). As a result, it is possible to obtain m chromosomes in which only one of the i loci differs from the mutated “m−1” loci and the original locus.
[0050]
In addition, the proliferation of a gene locus means copying information on a specific gene locus as it is. In addition, the mutation is to change the partial curve specified by the original locus into an arbitrary section of an arbitrary stroke, for example, to generate a random number and to mutate its value By multiplying the information, the partial curve corresponding to the gene locus may be randomly changed.
[0051]
When the growth / mutation of the gene locus is performed in this way, a template corresponding to a total of m gene loci of the original gene locus and the gene locus that has been propagated / mutated is created (S400). By evaluating each template (S410), an elite locus that most reflects the individual characteristics of the signature is selected from the m loci (S420).
[0052]
Here, for the generation of the template, among the n pieces of sign data sampled by the processing of S120 to S140, the positive sign data read in S310 and four of the remaining positive sign data are: A total of 5 positive sign data is used. When the template is actually generated, i pieces of chromosomes are formed from five pieces of positive sign data (specifically, X sign data and Y sign data constituting each positive sign data). The data corresponding to each partial curve specified at the gene locus is respectively read, and from the read data, the minimum value and the maximum value of the change amount in the X direction and the minimum value of the change amount in the Y direction in each partial curve A maximum value is obtained, and a membership function for X sine data and Y sine data is generated for each partial curve from the minimum value and maximum value of the change amount in each direction, and each membership function is used as a template. Set.
[0053]
In this embodiment, a trapezoidal membership function is used as the membership function constituting the template. For example, if the maximum amount of change in the X direction on a specific partial curve obtained from 5 pieces of X-sine data is “max” and the minimum value is “min”, the minimum value “min” is corrected. Divide by the value Wx (the correction value Wx is a value larger than 1; for example, 1.2) and multiply the maximum value “max” by the correction value Wx to correct the minimum value “min” and the maximum value “max”, respectively. As a membership function for the X-sine data of the partial curve, the width from the minimum value “min / Wx” after correction to the maximum value “max × Wx” is set as the width w, and the correction value Wy is set to the width w. A trapezoidal membership function as shown in FIG. 6 is generated with the added value (w + Wy). However, the correction values Wx and Wy are adjustment parameters for absorbing variations in positive sign.
[0054]
In addition, for the evaluation of the template generated in this way, the positive sign data excluding the five positive sign data used for creating the template out of the n sign data sampled by the processing of S120 to S140. And negative sign data is used. When the template is actually evaluated, the positive sign data and the negative sign data are input to the verification network as shown in FIG. The collation rate with the positive example sign data used to generate the template is obtained, and the correct collation rate ti obtained in the collation network is set to a value of 1 for positive example sign data and a value of 0 for negative example sign data. Thus, the fitness F is calculated using the following equation.
[0055]
[Expression 1]
Figure 0003733668
[0056]
In the above equation, m1 and m2 represent the numbers of positive example sign data and negative example sign data used for template evaluation, respectively. In the above formula, the average of the matching errors for the positive sign and the negative sign is calculated as the fitness F, and the closer the fitness F is to 1, the more the generated template (in other words, the origin of the template). Therefore, in S420, the locus in the chromosome whose fitness F is closest to 1 is selected as an elite locus.
[0057]
The verification network shown in FIG. 7 represents the function of the signature verification unit 22 described above, and is a template composed of a plurality of membership functions for X signature data and Y signature data generated from a plurality of loci constituting a chromosome. And the degree of coincidence of each partial curve obtained from the X sine data and Y sine data for each partial curve corresponding to each membership function in the sine data to be collated with each membership function constituting this template And a multiplication unit for obtaining a matching rate between the signature data to be verified and the positive signature data used for creating the template. In other words, the same verification network is used for template evaluation as when sign verification is performed, and the positive and negative signature data and the positive signature data used to create the template are actually verified using the template to be evaluated. To make it happen. Then, using the generated membership function, the higher the degree of coincidence between the partial curves, the closer the value is to 1, and the matching rate obtained also approaches 1.
The series of processes from S380 to S420 includes m templates for m chromosomes each having m loci obtained by proliferating / mutating one gene in the chromosome selected in S370. It is a process for selecting elite loci from m loci by generating and evaluating each template, and these series of processes are m m each having m loci. It is possible to generate m templates for each chromosome at the same time and evaluate each template at the same time, or generate a template from the chromosome selected in S370 and evaluate this, and then in S380 Mutate any selected locus, generate a template from a chromosome with that locus, evaluate it, and mutate further Mutate the locus again, generate a template from the chromosome that has the locus, and evaluate this, then mutate one selected locus in sequence, and the template corresponding to that locus The elite loci may be selected by sequentially evaluating.
[0058]
When elite loci are selected as described above, it is determined whether generation update (ie selection of elite chromosomes) for all loci constituting the chromosome selected in S370 is completed (S430). If generation updates for all loci have not been completed, the process proceeds to S380. In S380, among the i loci constituting the chromosome currently targeted for genetic manipulation, an arbitrary genetic locus for which the elite locus has not been selected by the genetic manipulation is selected, and the subsequent processing after S390 is performed. Then, genetic manipulation is performed on the selected locus to select the elite locus. As a result, genetic manipulation is performed on all loci constituting the chromosome selected in S370, and elite loci are set for all the loci. If it is determined in S430 that the generation update of the locus has been completed, the process proceeds to S440, and the chromosome selected in S370 is updated to a chromosome composed of the selected elite locus.
[0059]
Next, when the chromosome is updated in S440, it is determined whether or not all k chromosomes have been updated by the processing of S370 to S440 (S450). And if the update with respect to all the chromosomes is not completed, it will transfer to S370 again. Then, in S370, an arbitrary chromosome that has not been updated is selected from the k chromosomes, and in the subsequent processes after S380, the genetic manipulation and the elite locus of each locus constituting the selected chromosome are performed. Selection is made and this chromosome is updated. As a result, generational changes are made for all k chromosomes generated by the processing of S310 to S360.
[0060]
Next, when it is determined in S450 that all k chromosomes have been updated, the process proceeds to S460, and the k chromosomes updated as described above are ordered in ascending order of template evaluation. A process for so-called chromosomal selection that deletes a predetermined percentage (for example, 20%) is executed. In addition, for selection of the chromosome to be deleted, for example, the evaluation result (that is, fitness F) obtained when the k chromosomes are changed generations by the processes of S370 to S440 can be used.
[0061]
Then, when a predetermined percentage of the low-evaluated chromosomes are deleted from the k chromosomes as described above, any two chromosomes are selected from the remaining chromosomes in S470, and one chromosome is constructed. Chromosomes deleted in S460 by performing a so-called chromosome crossover process in which a new chromosome is generated by combining loci with a predetermined stroke number or higher and loci with a lower stroke number constituting the other chromosome. Replenish new chromosomes as many as
[0062]
When chromosomes are supplemented in this way, the process proceeds to S480, a template is generated for each supplemented chromosome, and the generated template is evaluated in subsequent S490. Note that the template generation and its evaluation are executed in the same procedure as in S400 and S410.
[0063]
In the subsequent S500, based on the evaluation result of the new chromosome obtained by the process of S490 and the evaluation result of the remaining chromosomes obtained by the process of S370 to S440, the most evaluated out of the k chromosomes. Are selected as elite chromosomes (that is, fitness F is closest to 1). In subsequent S510, it is determined whether or not the fitness F of the selected elite chromosome is equal to or higher than a predetermined criterion (for example, 95%), and the fitness F of the elite chromosome is equal to or higher than the criterion. If there is, the elite chromosome optimally reflects the personality characteristics of the sign registrant, and if the template generated based on this is used, it is determined that signature verification can be performed without any problem, and the gene calculation process is terminated. .
[0064]
On the other hand, if it is determined in S510 that the fitness F of the elite chromosome has not reached the criterion, the process proceeds to S370 to generate an elite chromosome having a fitness equal to or higher than the criterion by performing genetic manipulation again. To do. As a result, in the processes after S370, the genetic manipulation is again performed on the k second-generation chromosomes consisting of the chromosome updated by the genetic manipulation and the newly generated chromosome by the selection and crossover. Eventually, an optimal elite chromosome having a fitness F equal to or higher than the criterion is selected, and the gene calculation process is completed.
[0065]
The gene operation shown in FIG. 3 is substantially the same as that described in the above-mentioned paper, and the technology disclosed in this paper and this example are the structure of the gene locus constituting the chromosome, and this The structure of the template generated from the gene locus is different. And the procedure of gene calculation is not limited to the procedure of the flowchart shown in FIG. 3, It can change suitably.
[0066]
Next, returning to FIG. 2, when an elite chromosome having a fitness F equal to or higher than the criterion is selected by the gene calculation process in S150, a signature verification template is generated from the elite chromosome in S160.
In S160, a template for signature verification may be generated from the elite chromosome. However, since the template corresponding to the elite chromosome has already been generated at the time of executing the genetic operation processing in S150, the template is read. It may be. In addition to the membership function for each partial curve, the template generated in S160 also includes chromosome information consisting of a plurality of loci in order to identify the partial curve corresponding to the membership function. It is.
[0067]
Then, when the signature verification template corresponding to the elite chromosome is generated in this manner, the process proceeds to S170, and a message for causing the sign registrant to input the ID number is displayed on the display device 6, An ID code input process is executed to accept that the sign registrant operates the keyboard 4 to input an ID number.
[0068]
In the subsequent S180, the ID number of the sign registrant captured in the ID code input process in S170 is assigned to the signature verification template generated or read in S160 and stored in the template storage medium 20, and the process is temporarily performed. finish.
[0069]
The above calculation processing at the time of sign registration is not uniform, but is completed in tens of minutes to a few minutes or less. The data size of the template generated as described above usually falls within a capacity of about 500 bytes if one membership function is composed of 16 bytes.
[0070]
Next, calculation processing executed by the microcomputer 10 at the time of signature verification will be described.
As described above, the microcomputer 10 determines whether or not the signature is registered in S110. If not, the microcomputer 10 proceeds to S210. In S210, a message for causing the person to be collated to input his / her ID number is displayed on the display device 6, and accepting that the person to be collated operates the keyboard 4 to input the ID number is input. Execute the process.
[0071]
In S210, when the ID number of the person to be verified is taken in, a template corresponding to the ID number is called from the template storage medium 20 in S220, and in S230, the person to be verified is signed on the display device 6. A signature input process for reading signature data input from the tablet 2 when the person to be verified writes a signature on the tablet 2 is executed.
[0072]
Then, when the signature data of the person to be collated is obtained by this signature input process, the process proceeds to S240, and the signature data is normalized. In S250, the normalized signature data and template are used. A matching operation is performed to match the signature input by handwriting with the positive signature used to generate the template. Note that, as described above with reference to FIG. 7, this matching operation takes in partial curve data corresponding to the membership function constituting the template from the sign data normalized in S240, and the data Fuzzy inference using the corresponding membership function and the degree of coincidence between the template and the data at the time of template creation, and then by multiplying the degree of coincidence of the data for each partial curve obtained by this fuzzy inference, registration with handwritten signature It is executed by a procedure such as obtaining the verification rate with the signature.
[0073]
When the matching rate is obtained by the matching operation in S250 in this way, in the subsequent S260, the matching rate is equal to or higher than a determination value (for example, 0.7) that can authenticate the person to be verified as the signature registrant. If the verification rate is equal to or higher than the determination value, the verification target person is authenticated as the signature registrant, and conversely, if the verification rate does not reach the predetermined value, the verification target person is signed. Is entered again, or a collation determination process is executed to determine whether the person to be collated is a fake person. In S270, the result of the collation determination process is output to the external device, and the process is temporarily terminated.
[0074]
As described above, according to the signature verification apparatus of the present embodiment, in accordance with the genetic algorithm, the partial curve that most reflects the personality characteristics of the registrant is extracted from the positive sign described by the registrant, A template for signature verification is generated by generating a membership function for fuzzy inference of the degree of coincidence for each partial curve. The gene locus for specifying the partial curve is composed of the number of the stroke to which the partial curve belongs and three pieces of information indicating the start point and end point of the partial curve on the stroke. Corresponding to the seat, the position change amount of the sign in the X direction and the Y direction corresponding to the length of the partial curve.
[0075]
Therefore, according to the signature verification apparatus of the present embodiment, at the time of signature verification, it is possible to fuzzy infer the degree of coincidence between the registered signature and the handwritten signature using a partial curve that most reflects the personality characteristics of the registered signature. The accuracy of signature verification can be ensured, and the capacity of the template used for signature verification (in other words, the number of membership functions) can be reduced to reduce the capacity of the template storage medium 20 for storing it. Can do.
[0076]
As mentioned above, although one Example of this invention was described, this invention is not limited to the said Example, It can take a various aspect.
For example, in the above embodiment, signature registration and signature verification are realized by a single signature verification device. However, at the time of signature registration, a dedicated computer is used to perform high-speed arithmetic processing according to a genetic algorithm. At the time of signature verification, the signature verification may be performed by incorporating a storage medium registered in the signature verification terminal device or the like.
[0077]
Moreover, in the said Example, although the number of the gene loci which comprises a chromosome was demonstrated as what is suitably set using a random number etc. within the range of 5-50, in this case, the elite chromosome finally obtained The number of gene loci is also set as appropriate, and the data size of the template generated from this elite chromosome changes each time. For this reason, for example, when it is desired to keep the template data size constant, the number of loci is added to one of the evaluation items when selecting an elite chromosome, and the number of loci is a predetermined value as an elite chromosome. What is necessary is just to make it comprise so that a chromosome may be selected or to fix the number of gene loci which comprise a chromosome to a predetermined value. In this way, the data size of the template can always be made constant.
[0078]
In the above-described embodiment, the negative example signature data described by a person other than the signature registrant is sampled for the evaluation of the generated template. However, for example, a filter that generates random numbers and limits the amplitude. The negative example signature data may be generated from the positive example signature data by a procedure such as generating negative example signature data by multiplying the positive example signature data by multiplying the first example signature data.
[Brief description of the drawings]
FIG. 1 is a block diagram illustrating a configuration and functions of an entire signature verification apparatus according to an embodiment.
FIG. 2 is a flowchart showing a calculation process executed at the time of signature registration and signature verification by the microcomputer constituting the signature verification apparatus of the embodiment.
FIG. 3 is a flowchart showing details of gene operation processing executed in S150 of FIG.
FIG. 4 is an explanatory diagram illustrating an example of time-series data input from a tablet.
FIG. 5 is an explanatory diagram for explaining gene loci and chromosomes generated based on time-series data input from a tablet during signature registration.
FIG. 6 is a diagram illustrating a procedure for generating a membership function for fuzzy inference of the degree of coincidence of partial curves specified by a gene locus.
FIG. 7 is an explanatory diagram illustrating the configuration of a template generated at the time of sign registration and the function of a verification network that performs signature verification using the template.
[Explanation of symbols]
2 ... Tablet 4 ... Keyboard 6 ... Display (LCD)
DESCRIPTION OF SYMBOLS 10 ... Microcomputer 12 ... Signal processing part 14 ... Gene operation part
16 ... Template generation unit 20 ... Template storage medium
22 ... Signal verification unit 24 ... Determination output unit 28 ... Control unit

Claims (7)

サイン筆記時の位置や筆圧等からなる時系列データを取り込み、該時系列データをサインの大きさ及び位置で正規化し、該正規化した時系列データからサインの個人性特徴を表わす複数の部分曲線を設定して、各部分曲線毎に、照合対象となるサインデータとの一致度をファジー推論するためのメンバシップ関数を生成し、該生成した各部分曲線毎のメンバシップ関数をサイン照合用のテンプレートとして設定するサイン照合用テンプレートの作成方法であって、
前記部分曲線を設定する際には、
まず、前記正規化した時系列データをサインが連続する領域毎に区分した複数のストロークの中から任意のストロークを選択し、該選択したストローク上の任意の区間を前記部分曲線として選択することにより、前記複数の部分曲線を初期設定すると共に、該複数の部分曲線を、夫々、部分曲線が属するストロークの番号,該ストローク上での部分曲線の始点,及び該ストローク上での部分曲線の終点を表す3種の情報からなる遺伝子座として設定し、
次に、前記各部分曲線を表す複数の遺伝子座からなる遺伝子座群を前記サインの染色体として、予め設定された遺伝的アルゴリズムに従い遺伝子座を操作することにより、前記サインの個人性特徴を最適に表わすエリート染色体を生成し、該生成したエリート染色体を構成する各遺伝子座にて特定される部分曲線を、前記テンプレート作成用の部分曲線として設定すること、
を特徴とするサイン照合用テンプレートの作成方法。
Time series data consisting of the position and writing pressure at the time of writing the signature is taken, the time series data is normalized by the size and position of the signature, and a plurality of parts representing the personality characteristics of the signature from the normalized time series data Set a curve, generate a membership function for fuzzy inference of the degree of coincidence with the signature data to be verified for each partial curve, and use the generated membership function for each partial curve for sign verification A method for creating a signature verification template to be set as a template for
When setting the partial curve,
First, by selecting an arbitrary stroke from a plurality of strokes obtained by dividing the normalized time series data into regions where signs are continuous, and selecting an arbitrary section on the selected stroke as the partial curve. The plurality of partial curves are initialized, and the plurality of partial curves are respectively set to a stroke number to which the partial curve belongs, a start point of the partial curve on the stroke, and an end point of the partial curve on the stroke. Set as a genetic locus consisting of three types of information
Next, using the locus group consisting of a plurality of loci representing each partial curve as the chromosome of the signature, by operating the locus according to a preset genetic algorithm, the personality characteristics of the signature are optimized. Generating an elite chromosome to be represented, and setting a partial curve specified at each gene locus constituting the generated elite chromosome as the partial curve for creating the template,
A method for creating a template for signature verification characterized by
前記遺伝的アルゴリズムは、前記染色体を構成する任意の遺伝子座を増殖・突然変異させて遺伝子座の異なる複数の染色体を生成し、該複数の染色体の中から前記サインの個人性特徴を最適に表わす染色体を選択することにより、前記サインの個人性特徴を表わすのに最も適した遺伝子座を抽出する動作を、前記染色体を構成する各遺伝子座毎に行なうことにより、前記エリート染色体を生成する、局所改善型遺伝的アルゴリズムであることを特徴とする請求項1に記載のサイン照合用テンプレートの作成方法。The genetic algorithm propagates and mutates arbitrary loci constituting the chromosome to generate a plurality of chromosomes having different loci, and optimally represents the personality characteristics of the signature among the plurality of chromosomes. By selecting the chromosome, the operation of extracting the most suitable locus for expressing the individuality characteristics of the signature is performed for each locus constituting the chromosome, thereby generating the elite chromosome. 2. The method for creating a signature verification template according to claim 1, wherein the signature verification template is an improved genetic algorithm. 前記各部分曲線毎のメンバシップ関数として、前記サイン筆記時の時系列データを複数回取り込み、該複数の時系列データにおける前記各部分曲線の始点から終点までのデータ変化量の最小値と最大値とを求めることにより、該最小値から最大値までを幅とする台形型メンバシップ関数を生成することを特徴とする請求項1又は請求項2に記載のサイン照合用テンプレートの作成方法。As a membership function for each partial curve, the time series data at the time of sign writing is captured multiple times, and the minimum and maximum values of the data change amount from the start point to the end point of each partial curve in the plurality of time series data The method for generating a signature verification template according to claim 1 or 2, wherein a trapezoidal membership function having a width from the minimum value to the maximum value is generated. サイン筆記時の位置や筆圧等を逐次検出することにより手書きサインに対応した時系列データを入力するサイン入力手段と、
該サイン入力手段から入力されたサイン筆記時の時系列データを、サインの大きさ及び位置で正規化する正規化手段と、
該正規化手段にて正規化された時系列データからサインの個人性特徴を表わす複数の部分曲線を設定する部分曲線設定手段と、
該部分曲線設定手段にて設定された各部分曲線毎に、照合対象となるサインデータとの一致度をファジー推論するためのメンバシップ関数を生成し、該生成した各部分曲線毎のメンバシップ関数をサイン照合用のテンプレートとして所定のテンプレート記憶媒体に格納するテンプレート生成手段と、
を備えたサイン照合用テンプレートの作成装置であって、
前記部分曲線設定手段は、
前記正規化した時系列データをサインが連続する領域毎に区分した複数のストロークの中から任意のストロークを選択し、該選択したストローク上の任意の区間を前記部分曲線として選択することにより、前記複数の部分曲線を初期設定すると共に、該複数の部分曲線を、夫々、部分曲線が属するストロークの番号,該ストローク上での部分曲線の始点,及び該ストローク上での部分曲線の終点を表す3種の情報からなる遺伝子座として設定する部分曲線初期設定手段と、
該部分曲線初期設定手段にて設定された複数の遺伝子座からなる遺伝子座群を前記手書き入力されたサインの染色体として、予め設定された遺伝的アルゴリズムに従い遺伝子座を操作することにより、前記サインの個人性特徴を最適に表わすエリート染色体を生成し、該生成したエリート染色体を構成する各遺伝子座にて特定される部分曲線を、前記テンプレート作成用の部分曲線として設定するエリート染色体生成手段と、
を備えたことを特徴とするサイン照合用テンプレートの作成装置。
A sign input means for inputting time-series data corresponding to a handwritten signature by sequentially detecting the position and writing pressure at the time of writing the signature;
Normalization means for normalizing the time-series data at the time of sign writing input from the sign input means by the size and position of the sign;
A partial curve setting means for setting a plurality of partial curves representing individual characteristics of the signature from the time series data normalized by the normalization means;
For each partial curve set by the partial curve setting means, a membership function for fuzzy inference of the degree of coincidence with the signature data to be verified is generated, and the membership function for each generated partial curve A template generation means for storing a template for sign verification in a predetermined template storage medium;
A signature verification template creation device comprising:
The partial curve setting means includes
By selecting an arbitrary stroke from a plurality of strokes obtained by dividing the normalized time series data for each region where signs are continuous, and selecting an arbitrary section on the selected stroke as the partial curve, Initializing a plurality of partial curves, each of the plurality of partial curves represents a stroke number to which the partial curve belongs, a start point of the partial curve on the stroke, and an end point of the partial curve on the stroke 3 A partial curve initial setting means for setting as a gene locus comprising species information;
A locus group consisting of a plurality of loci set by the partial curve initial setting means is used as a chromosome of the signature input by handwriting, and the locus of the signature is manipulated according to a preset genetic algorithm. An elite chromosome generating means for generating elite chromosomes that optimally represent individuality characteristics, and setting a partial curve specified at each locus constituting the generated elite chromosome as a partial curve for creating the template;
An apparatus for creating a template for signature verification, comprising:
前記エリート染色体生成手段は、
前記染色体を構成する任意の遺伝子座を増殖・突然変異させて遺伝子座の異なる複数の染色体を生成し、該複数の染色体の中から前記サインの個人性特徴を最適に表わす染色体を選択することにより、前記サインの個人性特徴を表わすのに最も適した遺伝子座を抽出する動作を、前記染色体を構成する各遺伝子座毎に行なう、局所改善型遺伝的アルゴリズムに従って前記エリート染色体を生成することを特徴とする請求項4に記載のサイン照合用テンプレートの作成装置。
The elite chromosome generating means includes
By multiplying and mutating arbitrary loci constituting the chromosome to generate a plurality of chromosomes having different loci, and selecting a chromosome that optimally represents the personality characteristics of the signature from the plurality of chromosomes Generating the elite chromosome according to a locally improved genetic algorithm, wherein an operation for extracting the locus most suitable for representing the individuality characteristic of the signature is performed for each locus constituting the chromosome. The signature verification template creation apparatus according to claim 4.
前記テンプレート生成手段は、前記サイン入力手段を介してサイン筆記時の時系列データを複数回取り込み、該複数の時系列データにおける前記各部分曲線の始点から終点までのデータ変化量の最小値と最大値とを求めることにより、該最小値から最大値までを幅とする台形型メンバシップ関数を生成することを特徴とする請求項4又は請求項5に記載のサイン照合用テンプレートの作成装置。The template generation means fetches the time series data at the time of sign writing a plurality of times via the sign input means, and the minimum value and the maximum data change amount from the start point to the end point of each partial curve in the plurality of time series data. 6. The signature verification template creation apparatus according to claim 4, wherein a trapezoidal membership function having a width from the minimum value to the maximum value is generated by obtaining a value. 請求項4〜請求項6いずれか記載の作成装置にて作成されたテンプレートが予め記憶されたテンプレート記憶媒体と、
サイン筆記時の位置や筆圧等を逐次検出することにより手書きサインに対応した時系列データを入力するサイン入力手段と、
該サイン入力手段から入力されたサイン筆記時の時系列データを、サインの大きさ及び位置で正規化する正規化手段と、
該データ正規化手段にて正規化された時系列データの中から、前記テンプレート記憶媒体にテンプレートとして記憶された複数のメンバシップ関数に対応する部分曲線のデータを夫々抽出し、該データと対応するメンバシップ関数とから、前記登録サインと前記手書きサインとの各部分曲線毎の一致度をファジー推論する推論手段と、
該推論手段にてファジー推論された各部分曲線毎の一致度から前記登録サインと前記手書きサインとの全体の一致度を算出し、該算出結果を照合率として出力する照合率出力手段と、
を備えたことを特徴とするサイン照合装置。
A template storage medium in which a template created by the creation device according to claim 4 is stored in advance;
A sign input means for inputting time-series data corresponding to a handwritten signature by sequentially detecting the position and writing pressure at the time of writing the signature;
Normalization means for normalizing the time-series data at the time of sign writing input from the sign input means by the size and position of the sign;
Partial curve data corresponding to a plurality of membership functions stored as templates in the template storage medium is extracted from the time-series data normalized by the data normalization means, and the data corresponds to the data. An inference means for fuzzy inferring a degree of coincidence for each partial curve between the registered signature and the handwritten signature from a membership function;
A collation rate output means for calculating the total coincidence between the registered signature and the handwritten signature from the coincidence for each partial curve fuzzy inferred by the inference means, and outputting the calculation result as a collation rate;
A signature verification apparatus comprising:
JP32191296A 1996-12-02 1996-12-02 Method and apparatus for creating signature verification template and signature verification apparatus Expired - Fee Related JP3733668B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP32191296A JP3733668B2 (en) 1996-12-02 1996-12-02 Method and apparatus for creating signature verification template and signature verification apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP32191296A JP3733668B2 (en) 1996-12-02 1996-12-02 Method and apparatus for creating signature verification template and signature verification apparatus

Publications (2)

Publication Number Publication Date
JPH10162135A JPH10162135A (en) 1998-06-19
JP3733668B2 true JP3733668B2 (en) 2006-01-11

Family

ID=18137798

Family Applications (1)

Application Number Title Priority Date Filing Date
JP32191296A Expired - Fee Related JP3733668B2 (en) 1996-12-02 1996-12-02 Method and apparatus for creating signature verification template and signature verification apparatus

Country Status (1)

Country Link
JP (1) JP3733668B2 (en)

Also Published As

Publication number Publication date
JPH10162135A (en) 1998-06-19

Similar Documents

Publication Publication Date Title
Maurer et al. Fusing multimodal biometrics with quality estimates via a Bayesian belief network
US5825906A (en) Signature recognition system
JPH06251130A (en) Method for access control and its system
JP2006318341A (en) Detection object image determination device, method, and program
KR20120114564A (en) Apparatus and method for selecting representative fingerprint template
CN110084314B (en) False positive gene mutation filtering method aiming at targeted capture gene sequencing data
CN109934114A (en) A kind of finger vena template generation and more new algorithm and system
JP7254311B2 (en) Apparatus and method for user authentication based on face recognition and handwritten signature verification
JPH10143668A (en) Method and device for collating handwritten character string
JP2003051014A (en) Device and method for processing information
JP3733668B2 (en) Method and apparatus for creating signature verification template and signature verification apparatus
Kaur et al. Offline signature verification in Punjabi based on SURF features and critical point matching using HMM
Okawa Online signature verification using single-template matching through locally and globally weighted dynamic time warping
JP3808639B2 (en) Signature verification method and apparatus
JP2005284792A (en) Image collating device, image collating method, image collating program and computer readable recording medium recording image collating program
CN115393876A (en) Online signature identification method based on neural network
JP6926279B1 (en) Learning device, recognition device, learning method, recognition method, program, and recurrent neural network
Impedovo et al. An evolutionary approach to address interoperability issues in multi-device signature verification
JP2021177312A (en) Information processing device and information processing method
KR20220088166A (en) Method and apparatus for recognizing handwriting inputs in a multiple user environment
JP4710014B2 (en) Time-series data recognition method, time-series data recognition apparatus and program
JP2021086255A (en) Pen input personal authentication method
JP4735372B2 (en) Fingerprint verification device and fingerprint verification method
WO2022190301A1 (en) Learning device, learning method, and computer-readable medium
JP7367857B2 (en) Model generation device, model generation method, image processing device, image processing method, and program

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20050916

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20050927

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20051010

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees