상기 과제를 이루기 위해, 본 발명에 의한 생체신호와 인공신경회로망을 이용한 생체인식 장치는, 주어진 생체신호로부터 주기적으로 반복되는 하나 이상의 주기신호를 추출하는 주기신호 추출부 상기 추출된 주기신호를 이용하여 템플릿 값을 산출하는 템플릿 산출부 복수의 생체 각각마다 대응되는 템플릿 값을 저장하는 템플릿 저장부 및 상기 산출된 템플릿 값에 가장 근사한 템플릿 값을 상기 템플릿 저장부로부터 독출하는 독출부를 포함함을 특징으로 한다.
본 발명의 상기 주기신호 추출부는, 상기 추출된 주기신호를 퓨리에 전개하고 역 퓨리에 전개하여 시간정규화 신호를 생성하며, 상기 템플릿 산출부는, 상기 생성된 시간정규화 신호를 이용하여 상기 템플릿 값을 산출하고, 상기 생성된 시간정규화 신호들 각각의 시간폭은 동일함이 바람직하다.
본 발명은 상기 생성된 시간정규화 신호를 샘플링하여 디지털 신호로 변환하는 아날로그-디지털 변환부를 더 포함하며, 상기 탬플릿 산출부는, 상기 변환된 디지털 신호를 이용하여 상기 템플릿 값을 산출하고, 상기 변환된 디지털 신호들 각각의 샘플 개수는 동일함이 바람직하다.
본 발명은 상기 독출된 템플릿에 해당하는 생체를 상기 주어진 생체신호에 해당하는 생체로 인식하는 인식부를 더 포함함이 바람직하다. 본 발명은 상기 독출된 템플릿 값에 해당하는 생체와 인증요청 생체와의 일치 여부를 검사하는 검사부 및 상기 검사된 결과에 응답하여 상기 주어진 생체신호가 상기 인증요청 생체로부터 생성되었는지를 인증하는 인증부를 더 포함함이 바람직하다. 또한, 본 발명은 상기 검사된 결과에 응답하여 상기 저장된 템플릿 값을 갱신하는 갱신부를 더 포함함이 바람직하다.
본 발명의 상기 주기신호 추출부는 상기 추출된 주기신호의 크기를 정규화하여 크기정규화 신호를 생성하며, 상기 템플릿 산출부는 상기 생성된 크기정규화 신호를 이용하여 상기 템플릿 값을 산출함이 바람직하다.
상기 다른 과제를 이루기 위해, 본 발명에 의한 생체신호와 인공신경회로망을 이용한 생체인식 방법은, 주어진 생체신호로부터 주기적으로 반복되는 하나 이상의 주기신호를 추출하는 단계 상기 추출된 주기신호를 이용하여 템플릿 값을 산출하는 단계 및 복수의 생체 각각에 대응되어 저장된 템플릿 값 중 상기 산출된 템플릿 값에 가장 근사한 템플릿 값을 독출하고, 상기 독출된 템플릿에 해당하는 생체를 상기 주어진 생체신호에 해당하는 생체로 인식하는 단계를 포함함을 특징으로 한다.
상기 또 다른 과제를 이루기 위해, 본 발명에 의한 생체신호와 인공신경회로망을 이용한 생체인식 방법을 수행하기 위한 적어도 하나의 컴퓨터 프로그램을 저장하는 컴퓨터로 읽을 수 있는 기록매체는, 주어진 생체신호로부터 주기적으로 반복되는 하나 이상의 주기신호를 추출하는 단계 상기 추출된 주기신호를 이용하여 템플릿 값을 산출하는 단계 및 복수의 생체 각각에 대응되어 저장된 템플릿 값 중 상기 산출된 템플릿 값에 가장 근사한 템플릿 값을 독출하고, 상기 독출된 템플릿에 해당하는 생체를 상기 주어진 생체신호에 해당하는 생체로 인식하는 단계를 포함함을 특징으로 한다.
이하, 첨부된 도면들을 참조하여 본 발명에 따른 생체신호와 인공신경회로망을 이용한 생체인식 장치와 방법 및 컴퓨터 프로그램을 저장하는 컴퓨터로 읽을 수 있는 기록매체의 일 실시예에 대해 상세히 설명한다. 다만, 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례에 따라 달라질 수 있다. 그러므로 당해 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.
도 1은 인공신경회로망을 설명하기 위한 참고도이다. 컴퓨터와 뇌를 비교해 보면 기본적으로 정보 처리의 방식이 전혀 다르다. 즉, 컴퓨터는 주어진 프로그램에 따라서 한 번에 하나의 명령을 처리하는 직렬 처리를 하는 반면, 뇌는 수많은 뉴런들이 병렬적으로 명령을 처리한다. 또한 컴퓨터는 문제를 해결하기 위하여 문제의 해결 과정, 즉 알고리즘을 컴퓨터 언어로 표시하여야 하지만, 뇌는 학습에 의하여 문제를 해결하게 된다. 그 결과 뇌는 학습한 문제뿐만 아니라 학습하지 않은 문제도 유추를 통하여 해결할 수 있다. 이러한 뇌의 특성, 즉 신경망을 모방한 것이 인공신경회로망(Artificial Neural Network)이다. 이를 보다 구체적으로 설명하면 다음과 같다.
뉴런(neuron)은 생체 속에서 정보 처리를 위해 특별한 분화를 이룬 세포이다. 뉴런은 본체인 세포체 부분, 축색(axon) 부분 및 수상돌기(dendrite) 부분의 세 가지로 이루어진다.
축색은 세포체 본체로부터의 신호를 다른 뉴런에 전달하는 섬유(nerve fibers)이다. 한편, 수상돌기는 다른 뉴런으로부터의 신호를 받아들이는 섬유이다. 즉, 다른 뉴런의 축색의 말단이 수상돌기에 연결되어 있다. 이 연결 부분을 시냅스(synapse)라 부른다.
하나의 뉴런은 평균해서 수천 개, 많은 것은 수 만개의 축색으로부터 신호를 받고 있다고 한다. 따라서 하나의 뉴런이 다수의 축색과 결합하기 위해서는 그 뉴런의 수상돌기를 복잡하게 만들어 축색과 결합 가능한 장소를 넓힐 필요가 있다. 세포 본체는 많은 입력 신호에 대해 계산을 실행하며, 그 답은 축색을 통해 다른 뉴런에 전달된다. 이러한 신경회로망에서 어떠한 계산(혹은 정보 처리)을 할 것인가는 수상돌기의 연결 부분, 즉 시냅스에 분산되어 저장되어 있다고 여겨진다.
일반적으로 뉴런 내부의 전위(potential)는 외부에 비하여 낮다. 그러나외부로부터 입력 신호가 도달하면, 어떤 조건 하에서 뉴런이 흥분하고 내부 전위가 갑자기 높아진다. 이 때 뉴런은 발화했다고 하며, 이것은 전기 펄스신호로서 다른 뉴런에 전달된다.
뉴런의 발화를 보다 구체적으로 설명하면 다음과 같다. 수상돌기에 다른 뉴런으로부터의 전기 펄스가 오면 수상돌기 여러 곳의 전압이 약간씩 변동된다. 이 변동 값이 본체까지 도달하여 합산된다. 이 때, 그 합계가 어떤 임계치(threshold)를 넘으면 이것이 계기가 되어 뉴런이 발화하지만, 임계치를 넘지 못한다면 아무 반응도 일어나지 않는다.
한편, 전술한 전압의 변동에는 양의 변동과 음의 변동이 있다. 뉴런에는 흥분성 뉴런과 억제성 뉴런이 있으며, 흥분성 뉴런의 경우 양의 변동을 보이지만 억제성 뉴런의 경우 음의 변동을 보인다. 결국, 뉴런은 다른 뉴런으로부터 신호를 받아 들이고, 그 받아들인 신호마다 가중치를 곱하여 합산한 뒤 그 합산결과에 따라 발화 여부를 결정한다. 이 때, 가중치는 시냅스의 신호전달 효율을 의미하며, 양의 값을 가질 수도 있고 음의 값을 가질 수도 있다. 신경회로망의 이러한 원리를 수리적인 모델로 표시하여 구성한 회로망이 인공신경회로망이다.
인공신경회로망은 구조면에서 전방향 신경망(feedforward neural network)과 회귀 신경회로망(recurrent neural network)의 두 가지 유형으로 구분될 수 있다. 여기서, 전방향 신경회로망은 신호가 한 방향으로만 전달되는 신경회로망을 의미하고, 회귀 신경회로망은 신호가 양방향으로 전달 가능한 신경회로망을 의미한다.
특히, 전방향 신경회로망은 주로 입출력의 비선형사상(nonlinear mapping)에 적용된다. 도 1에 도시된 인공신경회로망(130)은 전방향 신경회로망의 일례로서, 복수의 층(layer)으로 이루어져 있으며 각 층은 바로 전 층(110)에서 신호를 받아 처리한 후 다음 층(120)에 전달하는 구조로 되어 있다. 여기서, X는 전 층(110)을 이루는 뉴런을 의미하며, Y는 다음 층(120)을 이루는 뉴런을 의미한다. Wij란 전 층(110)의 i번째 뉴런과 다음 층(120)의 j번째 뉴런의 결합 정도를 나타내는 가중치를 의미한다.
뇌는 과거의 경험에 의해서뿐만 아니라 학습(training)에 의하여도 자신의 동작을 보다 적절한 것으로 바꾸어 간다. 마찬가지로, 인공신경회로망의 가중치는 학습에 의해 변할 수 있다. 이 때, 심리학자 헵(Hebb)이 뇌의 해마(hippocampus)에서 관찰된 결과를 토대로 제안한 방식이 학습의 원리로서 적용된다. 식별 대상자로부터 검출된 생체신호가 인공신경회로망에 주어지는 경우, 그 인공신경회로망의 가중 치는 학습과정을 거쳐 그 생체신호에 대응되는 가중치로 설정된다. 또한, 일단 설정된 가중치도 추후 변경될 수 있다. 가중치는 이하 템플릿으로 명명될 수도 있다.
도 2는 본 발명에 의한 생체신호와 인공신경회로망을 이용한 생체인식 장치(이하 "본 장치"라 함)를 설명하기 위한 블록도로서, 아날로그-디지털 변환부(210), 주기신호 추출부(220), 템플릿 산출부(230), 템플릿 저장부(240), 독출부(250), 인식부(255), 검사부(260), 인증부(270) 및 갱신부(280)를 포함한다.
여기서, IN1은 주어진 생체신호를 의미하며, 시간의 함수이다. 한편, 생체는 식별 대상자의 신체임이 바람직하고, 생체신호는 심전도(ECG), 뇌파(EEG), 근전도(EMG) 및 피부전기활동(EDA) 중 하나임이 바람직하다. 본 발명의 경우, 설명의 편의상 생체는 신체이며 생체신호는 심전도인 경우에 대해 설명하도록 한다.
한편, 본 장치에 주어지는 생체신호는 생체에 부착되는 소정의 센서를 통해 감지되어 주어짐이 바람직하다. 보다 구체적으로, 신체의 심전도는 손목 부근에 부착된 센서를 통해 감지될 수도 있고, 센서에 안착된 손바닥으로부터 감지될 수도 있다.
생체신호 IN1은 생체 즉, 식별 대상자마다 상이하다. 또한, 동일한 생체에서 감지된 생체신호일지라도 시간의 경과 또는 그 생체의 상태에 따라 감지되는 생체신호가 변할 수 있다. 예컨대, 신체의 건강 상태나 감정 상태에 따라 심전도는 변할 수 있다.
본 발명의 일 실시예에 따르면, 아날로그-디지털 변환부(210)는 소정의 아날로그 신호를 샘플링(sampling)하여 디지털 신호로 변환한다. 이 때, 샘플링은 일정 시각마다 이루어질 수도 있고 랜덤(random)한 시각마다 이루어질 수도 있다. 또한, 소정의 아날로그 신호란 주어진 생체신호 IN1을 의미할 수도 있고, 후술할 주기신호를 의미할 수도 있다.
도시된 바에 따르면, 주기신호 추출부(220)는 디지털 신호로부터 주기신호를 추출한다. 그러나, 이는 설명의 편의를 위한 것으로 그에 제한되지 않으며, 주기신호 추출부(220)는 아날로그-디지털 변환부(210)에 의해 변환된 디지털 신호로부터 주기신호를 추출할 수도 있고, 주어진 생체신호 IN1으로부터 주기신호를 추출할 수도 있다.
주기신호 추출부(220)는 하나의 변환된 디지털 신호 또는 하나의 주어진 생체신호로부터 하나 이상의 주기신호를 추출함이 바람직하다. 설명의 편의상, 주기신호 추출부(220)는m개의 주기신호를 추출한다고 가정한다. 이 때, m은 1보다 큰 양의 정수이다. 즉, 변환된 디지털 신호 또는 감지되는 생체신호 IN1은 시간이 경과함에 따라 다양한 주기신호를 나타낼 수 있고, 주기신호 추출부(220)는 그 중 m개의 주기신호를 추출한다.
주기신호 추출부(220)가 주어진 생체신호 IN1으로부터 주기신호를 추출하는 경우, 그 과정은 다음과 같다. 도 3(a) 및 도 3(b) 는 심전도 신호의 예를 각각 도시한 것이다. 도시된 심전도 신호에서 P, Q, R, S, T라고 하는 변곡점들을 포함한 부분이 주기적으로 반복되는 경우 그 변곡점들을 포함한 부분이 하나의 주기신호가 된다. 여기서, 변곡점이란 신호 파형 모양이 급격히 변하는 부분을 말하며, 급격인지 여부는 사전에 결정된 기준치에 근거하여 결정됨이 바람직하다. P, Q, R, S, T 등은 이러한 변곡점을 설명하기 위해 편의상 제시된 기호들이다.
따라서, 주기신호 추출부(220)는 이 변곡점들을 이용하여 생체신호 IN1으로부터 주기신호를 추출할 수 있다. 한편, 주기신호 추출부(220)는 주어진 생체신호 IN1으로부터 추출된 주기신호를 퓨리에 급수(Fourier Series)로 전개하고 역 퓨리에 전개(Inverse Fourier Series)하여 시간정규화 신호를 생성함이 바람직하다. 추출된 주기신호의 N(단, N은 2이상의 정수)차 주파수까지의 퓨리에 급수 전개는 다음과 같은 수학식에 의해 이루어짐이 바람직하다.
where, i=1,2,...,p
where, j=1,2,...,m
여기서, Ci,N은 퓨리에 계수(Fourier Coefficient)를 의미하고, i는 식별 대상자를 의미하며, j는 각 생체신호로부터 추출되는 주기신호 각각을 의미한다. 또한, f는 주기신호를 의미하고, F는 퓨리에 전개를 의미한다. 예컨대,
는 2번째 식별 대상자로부터 감지된 생체신호에서 3번째로 추출된 주기신호, 즉, 2번째 주어진 생체신호에서 3번째로 추출된 주기신호를 의미한다.
한편, 퓨리에 전개된 주기신호의 역 퓨리에 전개는 다음과 같은 수학식에 의해 이루어진다.
여기서, IFS 는 역 퓨리에 전개를 의미하고, X는 시간정규화 신호를 의미한다.
전술한 바와 같이, 본 발명에 총 p개의 생체신호가 주어지고, 생체신호마다 총 m개의 주기신호가 추출된다면 p*m개의 주기신호 각각의 패턴 및 시간 폭은 상이함이 일반적이다. 이 경우, 주기신호 추출부(220)가 주기신호를 이용하여 시간정규화 신호를 생성한다면, 총 p*m개의 시간정규화 신호가 생성되며 그 시간정규화 신호 각각의 시간 폭은 동일하게 된다. 여기서, p는 1보다 큰 양의 정수이며, p개의 생체신호가 주어진다 함은 p명의 신체 각각으로부터 심전도를 감지함을 의미한다.
주기신호 추출부(220)가 주어진 생체신호 IN1으로부터 주기신호를 추출하고 시간정규화 신호를 생성한 경우, 아날로그-디지털 변환부(210)는 그 시간정규화 신호를 샘플링(sampling)하여 디지털 신호를 생성함이 바람직하다. 이 경우, 생성된 디지털 신호는 주기신호 추출부(220)에 전달되며, 그 전달된 신호는 후술할 템플릿 산출부(230)에 전달된다.
결국, p명의 식별 대상자로부터 감지된 p개의 생체신호에서, 주기신호 추출부(220)가 추출한 주기신호는, IN1으로부터 추출한 p*m개의 아날로그 신호 각각을 의미할 수도 있고, 그 추출된 p*m개의 아날로그 신호 각각의 시간정규화 신호를 의미할 수도 있으며, 그 p*m개의 시간정규화 신호를 샘플링한 디지털 신호를 의미할 수 도 있고, p개의 IN1을 샘플링하여 생성한 디지털 신호마다 추출한 m개의 주기성을 갖는 신호를 의미할 수도 있다.
다만, 설명의 편의상 이하 주기신호는 p*m개의 시간정규화 신호를 샘플링한 디지털 신호를 의미한다고 가정한다. 전술한 바와 같이, p*m개의 주기신호 각각의 패턴 및 시간 폭은 일반적으로 상이하지만, p*m개의 시간정규화 신호 각각의 시간 폭은 일치하므로 샘플링 패턴이 모든 시간정규화 신호에 대해 일치한다면 p*m개의 주기신호 각각이 갖는 샘플 개수는 모두 일치하게 된다. 결국, 주기신호 추출부(220)는 주어진 생체신호로부터 주기신호를 추출하고, 추출된 모든 주기신호에 대해 샘플 개수를 정규화함이 바람직하다.
템플릿 산출부(230)는 템플릿 값을 추출된 주기신호를 이용하여 산출할 수도 있고, 전술한 시간정규화 신호를 이용하여 산출할 수도 있고, 그 시간정규화 신호가 샘플링된 디지털 신호를 이용하여 산출할 수도 있다. 템플릿 산출부(230)는 다음의 수학식을 이용하여 템플릿 값을 산출함이 바람직하다.
여기서, k는 주어진 생체신호에 해당하는 생체를 의미할 수도 있고, 그 주어진 생체신호를 의미할 수도 있으며, 1 내지 p 중 하나의 값임이 바람직하다. 한편, j1 또는 j2는 j의 가능한 수치 중 하나로서 사전에 결정된다. 특히, j1은 1이고, j2는 2 내지 m 중 하나임이 바람직하다.
p*m개의 시간정규화 신호 각각이 갖는 샘플 개수가 N2개로 동일하고, 그 시간정규화 신호가 샘플링된 디지털 신호를 주기신호로 본다면, i번째 식별 대상자로부터 감지된 생체신호 중 j번째로 추출된 주기신호는 수학식 4에 의해 표현될 수 있다. 결국,
는 벡터열로 구성된 행렬이라 할 수 있다. 이하,
는 템플릿 벡터라 명명될 수 있다. 한편, T는 행렬의 트랜스포즈(transpose)를 의미한다.
템플릿 저장부(240)는 복수의 생체 각각마다 대응되는 템플릿 값을 저장한다. 한편, 템플릿 저장부(240)에 저장되는 템플릿 값은 다음의 수학식에 의해 산출된 결과임이 바람직하다.
여기서, W 는 저장된 템플릿 값을 의미한다.
독출부(250)는 템플릿 산출부(230)에서 산출된 템플릿 값에 가장 근사한 템플릿 값을 템플릿 저장부(240)로부터 독출한다. 독출부(250)는 다음의 수학식을 이용하여 산출된 벡터
의 크기를 최소로 하는 k에 대응되어 저장된 템플릿 값을 템플릿 저장부(240)로부터 독출한다.
또한, 인식부(255)는 그 독출된 템플릿 값에 해당하는 생체를 그 주어진 생체신호에 해당하는 생체로 인식한다. 본 발명에 의하면 인식부(255)는 마련되지 않을 수도 있다.
검사부(260)는 독출부(250)에서 독출한 템플릿 값에 해당하는 생체와 인증요청 생체와의 일치 여부를 검사한다. IN2는 인증요청 생체를 의미하며, 인증요청 생체란 인증이 요구되는 생체를 말한다. 예컨대, 주어진 생체신호가 '갑'으로부터 감지된 생체신호임에도 불구하고 '을'의 생체신호라고 주장되는 경우, 인증요청 생체는 '을'이다. 이 경우, 독출한 템플릿 값에 해당하는 생체는 '갑'이며, 인증요청 생체는 '을'이다.
인증부(270)는 검사부(260)에서 검사된 결과에 응답하여, 주어진 생체신호 IN1가 인증요청 생체로부터 생성되었는지를 인증한다. 보다 구체적으로, 검사부(260)가 독출된 템플릿 값에 해당하는 생체와 인증요청 생체가 일치한다고 검사한 경우에 인증부(270)가 인증하게 된다.
본 발명의 다른 실시예에 따르면, 본 발명에 갱신부(280)가 마련됨이 바람직하다. 갱신부(280)는 검사부(260)에서 검사된 결과에 응답하여, 템플릿 저장부(240)에 저장된 템플릿 값을 갱신한다. 보다 구체적으로, 저장된 템플릿 값은 다음 의 수학식들을 이용하여 산출된 값으로 갱신됨이 바람직하다.
여기서, new는 갱신 후를 의미하며, old는 갱신 전을 의미한다. 또한, a+b=1이고 c+d=1임이 바람직하다.
생체신호 IN1은 동일한 생체로부터 감지될지라도, 시간이 경과함에 따라 변할 수 있다. 따라서, 본 발명에 의해 보다 정확한 개인 식별을 하기 위해서는, 인증부(280)에 의한 개인 인증이 임계 횟수이상 반복적으로 이루어지는 경우에 그 개인 인증을 확정함이 바람직하다. 여기서, 임계 횟수는 사전에 결정됨이 바람직하다.
예컨대, 인증에 n 번 연속적으로 성공한 경우에 한해, 주어진 생체신호가 인증요청 생체로부터 감지되었음을 확정할 수 있다고 할 때, 인증부(270)가 인증에 최초로 성공한 경우 갱신부(280)는 템플릿 저장부(240)에 저장된 템플릿 값을 갱신하고 인증부(270)는 재차 인증을 시도한다. 즉, 주기신호 추출부(220)는 그 주어진 생체신호 IN1으로부터 주기신호를 새로이 추출하고, 템플릿 산출부(230)는 그 새로이 추출된 주기신호의 템플릿 값을 새로이 산출한다. 결국, 주기신호 추출부(220)가 주기신호를 새로이 추출하는 대상은, 인증부(270)가 종전에 인증에 성공할 당시 보다 소정 시간 경과한 후에 동일한 식별 대상자로부터 감지되는 생체신호를 말한다.
이 때, 독출부(250)는 템플릿 산출부(230)에서 새로이 산출된 템플릿 값에 가장 근사한 템플릿 값을 템플릿 저장부(240)로부터 독출한다. 여기서, 템플릿 저장부(240)에 저장된 템플릿 값은 갱신부(280)에 의해 갱신된 상태이다. 독출부(250)는 다음의 수학식을 이용하여 산출된 벡터
의 크기를 최소로 하는 k에 대응되어 저장된 템플릿 값을 템플릿 저장부(240)로부터 독출한다.
그 새로이 검사된 결과에 응답하여, 인증부(270)가 재차 인증에 성공하는 경우, 인증부(270)는 인증에 성공한 총 횟수가 n이라면 개인 인증에 성공했음을 확정한다. 그러나, 인증에 성공한 총 횟수가 n보다 작다면, 인증부(270)는 전술한 바와 같이 인증을 재차 시도함이 바람직하다.
본 발명의 또 다른 실시예에 따르면, 주기신호 추출부(220)는 추출한 주기신호의 크기를 정규화하여 크기정규화 신호를 생성함이 바람직하다. 즉, 주기신호 추출부(220)에서 추출되는 주기신호는, 전술한 바와 같이, IN1으로부터 추출한 p*m개의 아날로그 신호 각각을 의미할 수도 있고, 그 추출된 p*m개의 아날로그 신호 각각의 시간정규화 신호를 의미할 수도 있으며, 그 p*m개의 시간정규화 신호를 샘플 링한 디지털 신호를 의미할 수도 있고, p개의 IN1을 샘플링하여 생성한 디지털 신호마다 추출한 m개의 주기성을 갖는 신호를 의미할 수도 있다. 나아가, 본 발명의 또 다른 실시예에 따르면, 주기신호는 그 시간정규화 신호의 크기정규화 신호를 의미할 수도 있고, 그 시간정규화 신호의 크기정규화 신호를 샘플링한 디지털 신호를 의미할 수도 있다. 크기정규화 신호는 후술할 인자
를 이용하여 생성됨이 바람직하다. 그 생성 원리에 대하여는 후술하도록 한다.
한편, 템플릿 산출부(230)는 템플릿 값을 생성된 크기정규화 신호를 이용하여 산출할 수도 있고, 시간정규화 신호의 크기정규화 신호를 이용하여 산출할 수도 있으며, 시간정규화 신호의 크기정규화 신호를 샘플링한 디지털 신호를 이용하여 산출할 수도 있다.
이하 설명의 편의를 위해, 템플릿 산출부(230)는 시간정규화 신호의 크기정규화 신호를 샘플링한 디지털 신호를 이용하여 템플릿 값을 산출한다고 가정한다. 이 경우, 템플릿 산출부(230)는 주어진 생체신호로부터 추출된 주기신호의 템플릿 값을 다음의 수학식을 이용하여 산출함이 바람직하다.
여기서, k는 주어진 생체신호 IN1에 해당하는 생체를 의미하며, j1 또는 j2는 j의 가능한 수치 중 하나로서 사전에 결정되고, B는 주어진 생체신호 크기의 최대값을 의미한다.
한편, 템플릿 저장부(240)에 저장된 템플릿은 다음과 같은 수학식에 의해 산출됨이 바람직하다.
여기서, A는 사전에 설정된 상수이며,
는 벡터열
의 인자(element) 중 최대값을 의미한다.
이 경우, 독출부(250)는 다음의 수학식을 이용하여 산출된 벡터
의 크기를 최소로 하는 k에 대응되어 저장된 템플릿 값을 독출한다.
도 4는 본 발명에 의한 생체신호와 인공신경회로망을 이용한 생체인식 방법을 설명하기 위한 일 실시예의 플로우챠트로서, 추출하는 단계(제410 단계), 산출하는 단계(제420 단계), 독출하는 단계(제430 단계), 판단하는 단계(제440 단계) 및 인 증하는 단계(제450 단계)로 이루어진다.
주기신호 추출부(220)는 주어진 생체신호로부터 주기신호를 추출한다(제410 단계). 템플릿 산출부(230)는 그 추출된 주기신호를 이용하여 템플릿 값을 산출한다(제420 단계).
독출부(250)는 산출된 템플릿 값에 가장 근사한 템플릿 값을 템플릿 저장부(240)로부터 독출한다(제430 단계). 검사부(260)는 독출된 템플릿 값에 해당하는 생체와 인증요청 생체가 일치하는지를 판단한다(제440 단계).
그 판단 결과 일치한다면, 인증부(280)는 그 주어진 생체신호 IN1가 인증요청 생체로부터 생성되었음을 인증한다(제450 단계).
도 5는 본 발명에 의한 생체신호와 인공신경회로망을 이용한 생체인식 방법을 설명하기 위한 다른 실시예의 플로우챠트로서, 인증 시도 단계(제510 ~ 550 단계들), 저장된 템플릿 값의 갱신 단계(제560 단계) 및 인증 확정 단계(제570 ~ 580 단계들)로 이루어진다.
주기신호 추출부(220)는 주어진 생체신호로부터 주기신호를 추출한다(제510 단계). 템플릿 산출부(230)는 그 추출된 주기신호를 이용하여 템플릿 값을 산출한다(제520 단계).
독출부(250)는 산출된 템플릿 값에 가장 근사한 템플릿 값을 템플릿 저장부(240)로부터 독출한다(제530 단계). 검사부(260)는 독출된 템플릿 값에 해당하는 생체와 인증요청 생체가 일치하는지를 판단한다(제540 단계).
그 판단 결과 일치한다면, 인증부(280)는 그 주어진 생체신호 IN1가 인증요청 생체로부터 생성되었음을 인증한다(제550 단계). 제550 단계 후에, 갱신부(280)는 템플릿 저장부(240)에 저장된 템플릿 값을 갱신한다(제560 단계).
제560 단계 후에, 인증부(280)는, 그 주어진 생체신호 IN1에 대한 총 인증 성공 횟수가 사전에 결정된 임계치에 도달했는지 여부를 판단한다(제570 단계).
그 판단 결과 도달했다면(제570 단계), 인증부(280)는 그 주어진 생체신호 IN1에 대해 인증을 확정한다(제580 단계). 그에 반해, 도달하지 않았다고 판단된 경우(제570 단계), 제510 단계로 진행한다.
도 6은 본 발명에 의한 생체신호와 인공신경회로망을 이용한 생체인식 방법을 설명하기 위한 또 다른 실시예의 플로우챠트로서, 추출 단계(제610 단계), 생성 단계(제620 ~ 630 단계들), 산출 단계(제640 단계), 독출 단계(제650 단계), 판단 단계(제660 단계), 인증 단계(제670 단계) 및 갱신 단계(제680 단계)로 이루어진다.
주기신호 추출부(220)는 주어진 생체신호로부터 주기신호를 추출하고(제610 단계), 그 추출된 주기신호의 시간정규화 신호를 생성하고(제620 단계), 그 생성된 시간정규화 신호의 크기정규화 신호를 생성한다(제630 단계).
템플릿 산출부(230)는 그 생성된 크기정규화 신호를 샘플링한 디지털 신호를 이용하여 템플릿 값을 산출한다(제640 단계).
독출부(250)는 산출된 템플릿 값에 가장 근사한 템플릿 값을 템플릿 저장부(240)로부터 독출한다(제650 단계). 검사부(260)는 독출된 템플릿 값에 해당하는 생체와 인증요청 생체가 일치하는지를 판단한다(제660 단계).
그 판단 결과 일치한다면, 인증부(280)는 그 주어진 생체신호 IN1가 인증요청 생체로부터 생성되었음을 인증한다(제670 단계). 이 경우, 갱신부(280)는 템플릿 저장부(240)에 저장된 템플릿 값을 갱신한다(제680 단계).
본 발명은 또한 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의해 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광데이터 저장장치 등이 있으며, 또한 케리어 웨이브(예를 들어 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다. 또한, 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다. 그리고, 본 발명을 구현하기 위한 기능적인(functional) 프로그램, 코드 및 코드 세그먼트들은 본 발명이 속하는 기술분야의 프로그래머들에 의해 용이하게 추론될 수 있다.
이상에서 설명한 것은 본 발명에 따른 생체신호와 인공신경회로망을 이용한 생체인식 장치와 방법 및 컴퓨터 프로그램을 저장하는 컴퓨터로 읽을 수 있는 기록매체를 실시하기 위한 하나의 실시예에 불과한 것으로서, 본 발명은 상기한 실시예에 한정되지 않고 이하의 특허청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 분야에서 통상의 지식을 가진 자라면 누구든지 다양한 변경 실시가 가능할 것이다.