Keywords

1 Introduction

A signature is very interesting and very important biometric attribute because identity verification based on it is commonly socially acceptable. The dynamic signature, as opposed to the static one (see e.g. [13]), contains information about dynamics of the signing process in the form of time sequences describing e.g. pen position, pressure and velocity. Described information may be acquired due to use of a digital graphics tablet.

In the literature one can find few groups of approaches to the dynamic signature verification (see e.g. [46]). One of them is regional based approach, which assumes use of some regional information of the signature during verification process. In this paper we present a new regional method for the dynamic signature verification. The method divides signature into horizontal and vertical sections which create partition. Each partition is evaluated in the context of the individual and the most characteristic partitions are used during training of the classifier and verification process. In our previous papers (see [711]) methods based on signature partitioning have also been presented, but a novelty of the proposed one is selection of the most characteristic partitions. Reduction of the partitions number is used to increase legibility of the verification phase and eliminate partitions which do not increase effectiveness of the verification. In the classification process we use flexible neuro-fuzzy one-class classifier. Simulations of the proposed method have been performed using BioSecure (BMDB) dynamic signatures database distributed by the BioSecure Association [12]. General idea of the algorithm is presented in Fig. 1.

Fig. 1
figure 1

General idea of the proposed algorithm

This paper is organized into 4 sections. Section 2 contains detailed description of the algorithm. Simulation results are presented in Sect. 3. Conclusions are drawn in Sect. 4.

2 Detailed Description of the Algorithm

The proposed algorithm for the dynamic signature verification works in two phases: training phase (Sect. 2.1) and test phase (Sect. 2.2). In both of them a pre-processing of the signatures using some standard methods should be realized (see e.g. [9, 3]).

2.1 Training Phase

During the training phase the algorithm performs hybrid partitioning and selects the most characteristic partitions for the considered signer. Next, parameters of the classifier are determined using the reference signatures trajectories from selected partitions. A detailed description of each step of the training phase is described below.

Creation of the partitions

Each reference signature j (\(j = 1,2, \ldots ,J\), where J is a number of the reference signatures) of the user i (\(i = 1,2, \ldots ,I\), where I is a number of the users) is represented by the following signals: (a) \({\mathbf{x}}_{i,j} = \left[ {x_{i,j,k = 1} ,x_{i,j,k = 2} , \ldots ,x_{{i,j,k = K_{i} }} } \right]\) which describes the movement of the pen in the two-dimensional space along the x axis, where K i is the number of signal samples. Thanks to the normalization of the signatures, all trajectories describing the signatures of the user i have the same number of samples K i . (b) \({\mathbf{y}}_{i,j} = \left[ {y_{i,j,k = 1} ,y_{i,j,k = 2} , \ldots ,y_{{i,j,k = K_{i} }} } \right]\) which describes movement of the pen along the y axis, (c) \({\mathbf{v}}_{i,j} = \left[ {v_{i,j,k = 1} ,v_{i,j,k = 2} , \ldots ,v_{{i,j,k = K_{i} }} } \right]\) which describes velocity of the pen and (d) \({\mathbf{z}}_{i,j} = \left[ {z_{i,j,k = 1} ,z_{i,j,k = 2} , \ldots ,z_{{i,j,k = K_{i} }} } \right]\) which describes the pen pressure on the surface of the graphic tablet. In order to simplify the description of the algorithm we used the same symbol \({\mathbf{a}}_{i,j} = \left[ {a_{i,j,k = 1} ,a_{i,j,k = 2} , \ldots ,a_{{i,j,k = K_{i} }} } \right]\) to describe both shape signals (\(a \in \{ x,y\}\)). We also used the same symbol \({\mathbf{s}}_{i,j} = \left[ {s_{i,j,k = 1} ,s_{i,j,k = 2} , \ldots ,s_{{i,j,k = K_{i} }} } \right]\) to describe both dynamics signals (\(s \in \{ v,z\}\)).

The purpose of the partitioning is to assign each point of the signal \({\mathbf{v}}_{i,jBase}\) and the signal \({\mathbf{z}}_{i,jBase}\) of the reference base signature to the single hybrid partition, resulting from a combination of the vertical and the horizontal section, where \(jBase \in \{ 1, \ldots ,J\}\) is an index of the base signature, selected during pre-processing (see [9, 3]).

At the beginning of the partitioning, the vertical sections of the signals \({\mathbf{v}}_{i,jBase}\) and \({\mathbf{z}}_{i,jBase}\) are created. Each of them represents different time moment of signing: (a) initial or final for the case \(P^{\{ s\} } = 2\), (b) initial, middle or final for the case \(P^{{\{ s \}}} = 3\), (c) initial, first middle, second middle or final for the case \(P^{{\{ s \}}} = 4\). The vertical sections are indicated by the elements of the vector \({\mathbf{pv}}_{i}^{{\{ s\} }} = \left[ {pv_{i,k = 1}^{{\{ s\} }} ,pv_{i,k = 2}^{{\{ s\} }} , \ldots ,pv_{{i,k = K_{i} }}^{{\{ s\} }} } \right]\) determined as follows:

$$pv_{i,k}^{{\{ s\} }} = \left\{ {\begin{array}{*{20}l} 1 & {{\text{for}}\;0 < k \le K_{i} /P^{{\{ s\} }} } \\ 2 & {{\text{for}}\;K_{i} /P^{{\{ s\} }} < k \le 2 \cdot K_{i} /P^{{\{ s\} }} } \\ {P^{{\{ s\} }} } & {{\text{for}}\;\left( {P^{{\{ s\} }} - 1} \right) \cdot K_{i} /P^{{\{ s\} }} < k \le K_{i} ,} \\ \end{array} } \right.$$
(1)

where \(s \in \{ v,z\}\) is the signal type used for determination of the partition (velocity \(v\) or pressure \(z\)), \(i\) is the user index (\(i = 1,2, \ldots ,I\)), \(j\) is the reference signature index (\(j = 1,2, \ldots ,J\)), \(K_{i}\) is a number of samples of normalized signals of the user \(i\) (divisible by \(P^{{\left\{ s \right\}}}\)), \(k\) is an index of the signal sample (\(k = 1,2, \ldots ,K_{i}\)) and \(P^{{\left\{ s \right\}}}\) is a number of the vertical sections (\(P^{{\{ s\} }} \ll K_{i}\) and \(P^{{\{ s \}}} = P^{{\{ v \}}} = P^{{\{ z \}}}\) ). A number of the vertical sections can be arbitrary, but its increasing does not increase the interpretability and the accuracy of the method.

After creation of the vertical sections of the signals \({\mathbf{v}}_{i,jBase}\) and \({\mathbf{z}}_{i,jBase}\), horizontal sections are created. Each of them represents high and low velocity and high and low pressure in individual moments of signing. Horizontal sections indicated by the elements of the vector \({\mathbf{ph}}_{i}^{{\{ s\} }} = \left[ {ph_{i,k = 1}^{{\{ s\} }} ,ph_{i,k = 2}^{{\{ s\} }} , \ldots ,ph_{{i,k = K_{i} }}^{{\{ s\} }} } \right]\) are determined as follows:

$$ph_{i,k}^{{\{ s\} }} = \left\{ {\begin{array}{*{20}c} 1 & {{\text{for}}\;s_{i,j = jBase,k} > avgv_{{i,p = pv_{i,k}^{{\{ s\} }} }}^{{\{ s\} }} } \\ 2 & {{\text{for}}\;s_{i,j = jBase,k} \le avgv_{{i,p = pv_{i,k}^{{\{ s\} }} }}^{{\{ s\} }} } \\ \end{array} } \right.$$
(2)

where \(jBase\) is the base signature index, \(avgv_{i,p}^{{\left\{ s \right\}}}\) is an average velocity (when \(s = v\)) or an average pressure (when \(s = z\)) in the section indicated by the index \(p\) of the base signature \(jBase\):

$$avgv_{i,p}^{{\{ s \}}} = \frac{1}{{Kv_{i,p} }}\sum\limits_{{k = \left( {\frac{{( {p - 1} ) \cdot K_{i} }}{{P^{{\{ s \}}} }} + 1} \right)}}^{{k = \left( {\frac{{p \cdot K_{i} }}{{P^{{\{ s \}}} }}} \right)}} {s_{i,j = jBase,k} ,}$$
(3)

where \(Kv_{i,p}\) is a number of samples in the vertical section \(p\), \(s_{i,j = jBase,k}\) is the sample \(k\) of the signal \(s \in \left\{ {v,z} \right\}\) describing dynamics of the signature.

As a result of partitioning, each sample \(v_{i,jBase,k}\) of the signal \({\mathbf{v}}_{i,jBase}\) of the base signature \(jBase\) and each sample \(z_{i,jBase,k}\) of the signal \({\mathbf{z}}_{i,jBase}\) of the base signature \(jBase\) is assigned to the vertical section (assignment information is stored in the vector \({\mathbf{pv}}_{i}^{{\left\{ s \right\}}}\)) and horizontal section (assignment information is stored in the vector \({\mathbf{ph}}_{i}^{{\left\{ s \right\}}}\)). The intersection of the sections is the partition. Fragments of the shape trajectories \({\mathbf{x}}_{i,j}\) and \({\mathbf{y}}_{i,j}\), created taking into account \({\mathbf{pv}}_{i}^{{\left\{ s \right\}}}\) and \({\mathbf{ph}}_{i}^{{\left\{ s \right\}}}\), will be denoted as \({\mathbf{a}}_{i,j,p,r}^{{\{ s\} }} = \left[ {a_{i,j,p,r,k = 1}^{{\{ s\} }} ,a_{i,j,p,r,k = 2}^{{\{ s\} }} , \ldots ,a_{{i,j,p,r,k = Kc_{i,p,r}^{{\left\{ {s,a} \right\}}} }}^{{\{ s\} }} } \right]\). The number of samples belonging to the partition \((p,r)\) (created as an intersection of the vertical section \(p\) and the horizontal section \(r\), included in the trajectory \({\mathbf{a}}_{i,j,p,r}^{{\{ s\} }}\)) of the user \(i\) associated with the signal \(a\) (\(x\) or \(y\)) and created on the basis of the signal \(s\) (velocity or pressure) will be denoted as \(Kc_{i,p,r}^{{\left\{ {s,a} \right\}}}\).

Generation of the templates

The templates of the signatures are averaged fragments of the reference signatures represented by the shape trajectories \({\mathbf{x}}_{i,j}\) or \({\mathbf{y}}_{i,j}\). The partition contains two templates, so a number of the templates created for the user \(i\) is equal to \(4 \cdot P^{{\left\{ s \right\}}}\). Each template \({\mathbf{tc}}_{i,p,r}^{{\left\{ {s,a} \right\}}} = \left[ {tc_{i,p,r,k = 1}^{{\left\{ {s,a} \right\}}} ,tc_{i,p,r,k = 2}^{{\left\{ {s,a} \right\}}} , \ldots ,tc_{{i,p,r,k = Kc_{i,p,r}^{{\left\{ {s,a} \right\}}} }}^{{\left\{ {s,a} \right\}}} } \right]\) describes fragments of the reference signatures in the partition \(\left( {p,r} \right)\) of the user \(i\), associated with the signal \(a\) (\(x\) or \(y\)), created on the basis of the signal \(s\) (velocity or pressure),

where:

$$tc_{i,j,p,r,k}^{{\left\{ {s,a} \right\}}} = \frac{1}{J}\mathop \sum \limits_{j = 1}^{J} a_{i,j,p,r,k}^{{\{ s \}}} .$$
(4)

After determination of the templates \({\mathbf{tc}}_{i,p,r}^{{\left\{ {s,a} \right\}}}\), weights of importance of the partitions are determined.

Determination of the weights of importance

Determination of the weights \(w_{i,p,r}^{{\left\{ {s,a} \right\}}}\) of the templates starts from determination of a dispersion of the reference signatures signals. The dispersion is represented by a standard deviation. Average standard deviation for all samples in the partition is determined as follows:

$$\overline{\sigma }_{i,p,r}^{{\left\{ {s,a} \right\}}} = \frac{1}{{Kc_{i,p,r}^{{\left\{ {s,a} \right\}}} }}\mathop \sum \limits_{k = 1}^{{Kc_{i,p,r}^{{\left\{ {s,a} \right\}}} }} \sqrt {\frac{1}{J}\mathop \sum \limits_{j = 1}^{J} \left( {a_{i,j,p,r,k}^{{\{ s \}}} - tc_{i,p,r,k}^{{\left\{ {s,a} \right\}}} } \right)^{2} } .$$
(5)

Having average standard deviation \(\overline{\sigma }_{i,p,r}^{{\left\{ {s,a} \right\}}}\), normalized values of the templates weights are determined:

$$w_{i,p,r}^{{\left\{ {s,a} \right\}}} = 1 - \overline{\sigma }_{i,p,r}^{{\left\{ {s,a} \right\}}} \left( {\mathop {\hbox{max} }\limits_{{\begin{array}{*{20}c} {p = 1,2, \ldots ,P^{{\{ s \}}} } \\ {r = 1,2} \\ \end{array} }} \left\{ {\bar{\sigma }_{i,p,r}^{{\left\{ {s,a} \right\}}} } \right\}} \right)^{ - 1} .$$
(6)

Normalization of the weights adapt them for use in the one-class flexible fuzzy system used for evaluation of the similarity of the test signatures to the reference signatures. This evaluation is the basis for recognition of the signature authenticity.

Selection of the best partitions

Having weights of importance of the templates, the most characteristic partitions associated with the highest values of the weights are selected for the considered user (see Fig. 2). The proposed method makes it easy to select value \(N\) of the most characteristic partitions for which effectiveness of the verification is the highest. Please note that the parameter \(N\) can be selected experimentally to find a compromise between effectiveness and complexity of the method.

Fig. 2
figure 2

Idea of the most characteristic partitions selection

The algorithm selects \(N\) the most characteristic partitions for the signal \(v\) and the same number of partitions for the signal \(z\). Partition is considered as more characteristic from the other one if its sum of weights value \(w_{i,p,r}^{{{\prime }\{ s \}}}\) is higher. The sum is computed as follows:

$$w_{i,p,r}^{{{\prime }\{ s \}}} = w_{i,p,r}^{{\left\{ {s,x} \right\}}} + w_{i,p,r}^{{\left\{ {s,y} \right\}}} .$$
(7)

After this process the algorithm works using \(2 \cdot N\) characteristic partitions (\(N\) for \(v\) signal and \(N\) for \(z\) signal). In the following description we assume that the most characteristic partitions \(\left( {p,r} \right)\) selected in this step are denoted as \(q\) (\(q = 1,2, \ldots ,N\)). Please note that reduction of the partitions number and selection of the most characteristic ones is used to: (a) simplification of the verification phase, (b) increase of interpretability of the system used to signature verification, (c) elimination of partitions which are not useful in the verification process from the effectiveness point of view.

Determination of the parameters of the fuzzy system

The test signatures verification is based on the answers of the fuzzy system (see e.g. [7, 13]) for evaluating the similarity of the test signatures to the reference signatures. Parameters of the system must be selected individually for each user from the database. In this paper we use a structure of the flexible neuro-fuzzy one-class classifier, whose parameters depend on the reference signatures descriptors. They are determined analytically (not in the process of supervised learning) and individually for the user (her/his reference signatures).

The first group of parameters of the proposed system are the parameters describing differences between the reference signatures and the templates in the partitions. They are used in the construction of fuzzy rules described later [see (10)] and determined as follows:

$$d\max_{i,q}^{{\left\{ {s,a} \right\}}} = \sigma_{i} \cdot \mathop {\hbox{max} }\limits_{j = 1, \ldots ,J} \left\{ {\frac{1}{{Kc_{i,q}^{{\left\{ {s,a} \right\}}} }}\mathop \sum \limits_{k = 1}^{{Kc_{i,q}^{{\left\{ {s,a} \right\}}} }} \left| {a_{i,j,q,k}^{{\{ s \}}} - tc_{i,q,k}^{{\left\{ {s,a} \right\}}} } \right|} \right\},$$
(8)

where \(\sigma_{i}\) is a parameter which ensures matching of tolerance of the system for evaluating the similarity in the test phase.

The second group of parameters of the proposed system are weights of the templates determined in the previous step. A consequence of the large value of the weight is less tolerance of the system for similarity evaluation in the test phase.

2.2 Test Phase (Signature Verification)

During the test phase the signer creates one test signature and claims her/his identity. This identity will be verified. Next, parameters of the considered user created during training phase are downloaded from the system database and the signature verification is performed. A detailed description of each step of the test phase is described below.

Acquisition of the test signature

The first step of the verification phase is acquisition of the test signature, which should be pre-processed. Normalized test signature is represented by two shape trajectories: \({\mathbf{xtst}}_{i} = \left[ {xtst_{i,k = 1} ,xtst_{i,k = 2} , \ldots ,xtst_{{i,k = K_{i} }} } \right]\) and \({\mathbf{ytst}}_{i} = \left[ {ytst_{i,k = 1} ,ytst_{i,k = 2} , \ldots ,ytst_{{i,k = K_{i} }} } \right]\). Next, partitioning of the test signature is performed. As a result of partitioning of the shape trajectories \({\mathbf{xtst}}_{i}\) and \({\mathbf{xtst}}_{i}\) their fragments denoted as \({\mathbf{atst}}_{i,q}^{{\{ s\} }} = \left[ {a_{i,q,k = 1}^{{\{ s\} }} ,a_{i,q,k = 2}^{{\{ s\} }} , \ldots ,a_{{i,q,k = Kc_{i,q}^{{\left\{ {s,a} \right\}}} }}^{{\{ s\} }} } \right]\) are obtained. During the partitioning the vectors \({\mathbf{pv}}_{i}^{{\{ s\} }}\) and \({\mathbf{ph}}_{i}^{{\{ s\} }}\) are used.

Next step of the test phase is determination of the similarity of fragments of the test signature shape trajectories \({\mathbf{atst}}_{i,q}^{{\{ s\} }}\) to the templates of the reference signatures \({\mathbf{tc}}_{i,q}^{{\left\{ {s,a} \right\}}}\) in the partition \(q\) of the user \(i\) associated with the signal \(a\) (\(x\) or \(y\)) created on the basis of the signal \(s\) (velocity or pressure). It is determined as follows:

$$dtst_{i,q}^{{\left\{ {s,a} \right\}}} = \frac{1}{{Kc_{i,q}^{{\left\{ {s,a} \right\}}} }}\mathop \sum \limits_{k = 1}^{{Kc_{i,q}^{{\left\{ {s,a} \right\}}} }} \left| {atst_{i,q,k}^{{\left\{ s \right\}}} - tc_{i,q,k}^{{\left\{ {s,a} \right\}}} } \right|.$$
(9)

After determination of the similarities \(dtst_{i,q}^{{\left\{ {s,a} \right\}}}\), total similarity of the test signature to the reference signatures of the user \(i\) is determined. Decision on the authenticity of the test signature is taken on the basis of this similarity.

Evaluation of the overall similarity of the test signature to the reference signatures

The system evaluating similarity of the test signature to the reference signatures works on the basis of the signals \(dtst_{i,q}^{{\left\{ {s,a} \right\}}}\) and takes into account the weights \(w_{i,q}^{{\left\{ {s,a} \right\}}}\). Its response is the basis for the evaluation of the signature reliability. The proposed system works on the basis of two fuzzy rules presented as follows:

$$\left\{ {\begin{array}{*{20}c} {R^{\left( 1 \right)}{:}\;\left[ {\begin{array}{*{20}c} {\left. {{\text{IF}}\left( {dtst_{i,q}^{{\left\{ {v,x} \right\}}} \;{\text{is}}\;A_{i,q}^{{1\left\{ {v,x} \right\}}} } \right)} \right|w_{i,q}^{{\left\{ {v,x} \right\}}} \;{\text{AND}} \ldots \left. {\left( {dtst_{i,q}^{{\left\{ {z,y} \right\}}} \;{\text{is}}\;A_{i,q}^{{1\left\{ {z,y} \right\}}} } \right)} \right|w_{i,q}^{{\left\{ {z,y} \right\}}} } \\ {{\text{THEN}}\;y_{i} \;{\text{is}}\;B^{1} } \\ \end{array} } \right]} \\ {R^{\left( 2 \right)} {:}\;\left[ {\begin{array}{*{20}c} {\left. {{\text{IF}}\left( {dtst_{i,q}^{{\left\{ {v,x} \right\}}} \;{\text{is}}\;A_{i,q}^{{2\left\{ {v,x} \right\}}} } \right)} \right|w_{i,q}^{{\left\{ {v,x} \right\}}} \;AND \ldots \left. {\left( {dtst_{i,q}^{{\left\{ {z,y} \right\}}} \;{\text{is}}\;A_{i,q}^{{2\left\{ {z,y} \right\}}} } \right)} \right|w_{i,q}^{{\left\{ {z,y} \right\}}} } \\ {THEN\;y_{i} \;is\;B^{2} } \\ \end{array} } \right]} \\ \end{array} } \right.,$$
(10)

where:

  • \(dtst_{i,q}^{{\left\{ {s,a} \right\}}}\) (\(i = 1,2, \ldots ,I\), \(s \in \left\{ {v,z} \right\}\), \(a \in \left\{ {x,y} \right\}\)) are input linguistic variables. Values “high” and “low” taken by these variables are Gaussian fuzzy sets \(A_{i,q}^{{1\left\{ {s,a} \right\}}}\) and \(A_{i,q}^{{2\left\{ {s,a} \right\}}}\) (see Fig. 3).

    Fig. 3
    figure 3

    Input and output fuzzy sets used in the rules (10) of the flexible neuro-fuzzy system for evaluation of similarity of the test signature to the reference signatures

  • \(y_{i}\) (\(i = 1,2, \ldots ,I\)) is output linguistic variable meaning “similarity of the test signature to the reference signatures of the user \(i\)”. Value “high” of this variable is the fuzzy set \(B^{1}\) of \(\gamma\) type and value “low” is the fuzzy set \(B^{2}\) of L type (see Fig. 3).

  • \(w_{i,q}^{{\left\{ {s,a} \right\}}}\) are weights of the templates. Introducing of the weights of importance distinguishes the proposed flexible neuro-fuzzy system from typical fuzzy systems.

Verification of the test signature

In the proposed method the test signature is recognized as belonging to the user \(i\) (genuine) if the assumption \(\bar{y}_{i} > cth_{i}\) is satisfied, where \(\bar{y}_{i}\) is the value of the output signal of neuro-fuzzy system described by the (10):

$$\overline{y}_{i} \approx \frac{{T^{*} \left\{ {\mu_{{A_{i,q}^{{1\left\{ {v,x} \right\}}} }} \left( {dtst_{i,q}^{{\left\{ {v,x} \right\}}} } \right), \ldots ,\mu_{{A_{i,q}^{{1\left\{ {z,y} \right\}}} }} \left( {dtst_{i,q}^{{\left\{ {z,y} \right\}}} } \right);w_{i,q}^{{\left\{ {v,x} \right\}}} , \ldots ,w_{i,q}^{{\left\{ {z,y} \right\}}} } \right\}}}{{\left( \begin{aligned} & T^{*} \left\{ {\mu_{{A_{i,q}^{{1\left\{ {v,x} \right\}}} }} \left( {dtst_{i,q}^{{\left\{ {v,x} \right\}}} } \right), \ldots ,\mu_{{A_{i,q}^{{1\left\{ {z,y} \right\}}} }} \left( {dtst_{i,q}^{{\left\{ {z,y} \right\}}} } \right);w_{i,q}^{{\left\{ {v,x} \right\}}} , \ldots ,w_{i,q}^{{\left\{ {z,y} \right\}}} } \right\} \\ & \quad + T^{*} \left\{ {\mu_{{A_{i,q}^{{2\left\{ {v,x} \right\}}} }} \left( {dtst_{i,q}^{{\left\{ {v,x} \right\}}} } \right), \ldots ,\mu_{{A_{i,q}^{{2\left\{ {z,y} \right\}}} }} \left( {dtst_{i,q}^{{\left\{ {z,y} \right\}}} } \right);w_{i,q}^{{\left\{ {v,x} \right\}}} , \ldots ,w_{i,q}^{{\left\{ {z,y} \right\}}} } \right\} \\ \end{aligned} \right)}},$$
(11)

where \(T^{*} \{ \cdot \}\) is the weighted t-norm (see e.g. [13]) and \(cth_{i} \in \left[ {0,1} \right]\) is a coefficient determined experimentally for each user to eliminate disproportion between FAR and FRR error (see e.g. [14]). The values of this coefficient are usually close to 0.5. Formula (11) was established by taking into account the following simplification, resulting from the spacing of the fuzzy sets shown in Fig. 3: \(\mu_{{B^{1} }} \left( 0 \right) = 0\), \(\mu_{{B^{1} }} \left( 1 \right) \approx 1\), \(\mu_{{B^{2} }} \left( 0 \right) \approx 1\) and \(\mu_{{B^{2} }} \left( 1 \right) = 0\).

3 Simulation Results

Simulations were performed in authorial test environment written in C# using commercial BioSecure DS2 Signature database which contains signatures of 210 users. The signatures were acquired in two sessions using the digitizing tablet. Each session contains 15 genuine signatures and 10 skilled forgeries per person. In the simulations we assumed that \(P^{{\left\{ s \right\}}} = 3\).

We repeated 5 times the verification procedure and the results obtained for all users have been averaged. In each of the five performed repetitions we used a different set of 5 training signatures. In the test phase we used 10 remaining genuine signatures and all 10 forged signatures. The described method is commonly used in evaluating the effectiveness of the methods for the dynamic signature verification, which corresponds to the standard crossvalidation procedure.

The results of the simulations are presented in Table 1. It contains information about values of the errors FAR (False Acceptance Rate) and FRR (False Rejection Rate) achieved by the considered method tested for different \(N\) value (different number of characteristic partitions). Moreover, in Table 2 we present comparison of this method to the regional methods proposed by us earlier and the methods of other authors.

Table 1 The accuracy of the presented method for on-line signature verification for \(P^{\{ s\} } = 3\)
Table 2 Comparison of the accuracy of different methods for the signature verification for the BioSecure database

Moreover, we have also compared obtained results to the results achieved by other researchers during BSEC’2009 Signature Evaluation Campaign (see Table 2). It may be seen that an accuracy of our method is relatively high.

4 Conclusions

In this paper we propose a new algorithm for on-line signature verification using characteristic hybrid partitions. The algorithm divides signature into horizontal and vertical sections which create partitions. Next, it selects the most characteristic partitions which are used in training and classification phase. This selection is performed individually for each signer.

During simulations we selected partitions for each considered signal describing dynamics of the signature—\(v\) and \(z\). We assumed that number of vertical section \(P^{{\left\{ s \right\}}}\) is equal to 3, so the number of characteristic partitions \(N\) selected for each signal takes values from the range \(\left[ {1, \ldots ,6} \right]\). The algorithm achieves the best results for \(N = 4\) (see Table 1). It means that some partitions may contain less usable information in the context of dynamic signature verification. On the other hand, verification with use of small amount of partitions may be not reliable.