KR102747700B1 - Device and method for generating cancellable fingerprint template based on delauney triangulation using a feature that is robust against rotation - Google Patents
Device and method for generating cancellable fingerprint template based on delauney triangulation using a feature that is robust against rotation Download PDFInfo
- Publication number
- KR102747700B1 KR102747700B1 KR1020220008091A KR20220008091A KR102747700B1 KR 102747700 B1 KR102747700 B1 KR 102747700B1 KR 1020220008091 A KR1020220008091 A KR 1020220008091A KR 20220008091 A KR20220008091 A KR 20220008091A KR 102747700 B1 KR102747700 B1 KR 102747700B1
- Authority
- KR
- South Korea
- Prior art keywords
- dolone
- fingerprint template
- vector
- fingerprint
- generating
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/12—Fingerprints or palmprints
- G06V40/1335—Combining adjacent partial images (e.g. slices) to create a composite input or reference pattern; Tracking a sweeping finger movement
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/28—Determining representative reference patterns, e.g. by averaging or distorting; Generating dictionaries
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/31—User authentication
- G06F21/32—User authentication using biometric data, e.g. fingerprints, iris scans or voiceprints
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/46—Descriptors for shape, contour or point-related descriptors, e.g. scale invariant feature transform [SIFT] or bags of words [BoW]; Salient regional features
- G06V10/469—Contour-based spatial representations, e.g. vector-coding
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/74—Image or video pattern matching; Proximity measures in feature spaces
- G06V10/75—Organisation of the matching processes, e.g. simultaneous or sequential comparisons of image or video features; Coarse-fine approaches, e.g. multi-scale approaches; using context analysis; Selection of dictionaries
- G06V10/751—Comparing pixel values or logical combinations thereof, or feature values having positional relevance, e.g. template matching
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/772—Determining representative reference patterns, e.g. averaging or distorting patterns; Generating dictionaries
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/12—Fingerprints or palmprints
- G06V40/1347—Preprocessing; Feature extraction
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/12—Fingerprints or palmprints
- G06V40/1365—Matching; Classification
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Human Computer Interaction (AREA)
- Software Systems (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- General Health & Medical Sciences (AREA)
- Databases & Information Systems (AREA)
- Computing Systems (AREA)
- Medical Informatics (AREA)
- Health & Medical Sciences (AREA)
- Computer Security & Cryptography (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Collating Specific Patterns (AREA)
- Data Mining & Analysis (AREA)
- Life Sciences & Earth Sciences (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
Abstract
회전에 강한 특징을 이용한 돌로네 기반 대체 가능한 지문 템플릿 생성 장치 및 방법이 개시된다. 상기 대체 가능한 지문 템플릿 생성 장치는 지문 이미지로부터 복수의 미뉴셔들을 추출하는 미뉴셔 추출부, 추출된 미뉴셔들을 이용하여 돌로네 삼각화를 수행하여 복수의 돌로네 삼각형들을 생성하는 돌로네 삼각화부, 각각이 상기 복수의 돌로네 삼각형들 각각에 대응하는 복수의 특징 벡터들을 생성하는 특징 벡터 생성부, 및 적어도 하나의 더미 특징 벡터를 생성하고, 상기 적어도 하나의 더미 특징 벡터와 상기 복수의 특징 벡터들을 포함하는 지문 템플릿을 생성하는 지문 템플릿 생성부를 포함한다.A device and method for generating a Dollone-based replaceable fingerprint template using a rotation-resistant feature are disclosed. The replaceable fingerprint template generating device includes a minusia extraction unit for extracting a plurality of minusiae from a fingerprint image, a Dollone triangulation unit for generating a plurality of Dollone triangles by performing Dollone triangulation using the extracted minusiae, a feature vector generation unit for generating a plurality of feature vectors each corresponding to each of the plurality of Dollone triangles, and a fingerprint template generation unit for generating at least one dummy feature vector and generating a fingerprint template including the at least one dummy feature vector and the plurality of feature vectors.
Description
본 발명은 회전에 강한 특징을 이용한 돌로네 기반 대체 가능한 지문 템플릿 생성 장치 및 방법에 관한 것이다.The present invention relates to a device and method for generating a replaceable fingerprint template based on a dolomite using a rotation-resistant characteristic.
최근 우리 사회에서는 온·오프라인의 연계와 온라인 비대면 활동의 증가로 개인의 신분을 외장하고 도용하여 개인정보 및 온라인 활동을 위협하는 사례가 증가하고 있다. 이에 따라 안전한 개인정보 보호 및 인증의 필요성이 대두되고 있다.Recently, in our society, due to the increase in the connection between online and offline and the increase in non-face-to-face online activities, there has been an increase in cases where personal information and online activities are threatened by exposing and stealing personal information. Accordingly, the need for secure personal information protection and authentication is emerging.
현재 널리 사용 중인 인증 방식은 비밀번호, PIN(Personal Identification Number), 도장, 사인 등을 이용한 방식이 있지만, 이는 망각, 분실, 위조, 도난 등의 이유로 높은 보안성을 제공하지 못한다. 반면, 생체 인증은 사용자 고유의 생체 정보를 이용하는 것으로, 분실, 도난 등의 우려 없이 높은 보안 성능을 제공한다.Currently widely used authentication methods include passwords, PINs (Personal Identification Numbers), seals, and signatures, but these do not provide high security due to forgetting, loss, forgery, and theft. On the other hand, biometric authentication uses the user's unique biometric information, and provides high security performance without concerns about loss or theft.
생체 인증은 신체 특징을 이용한 것으로 지문, 홍채, 정맥 등을 이용하는 다양한 인증 방식이 있다. 이러한 기술들을 활용하여 통신, 금융, 의료, 공공 분야에서 더욱 안전하고 편리한 인증 서비스가 제공되고 있다.Biometric authentication uses body features, and there are various authentication methods using fingerprints, irises, veins, etc. By utilizing these technologies, safer and more convenient authentication services are being provided in the telecommunications, finance, medical, and public sectors.
생체 인증은 편리하고 높은 보안성을 갖고 있어 주목받는 기술이지만 취약점 또한 존재한다. 기존에 많이 사용되던 비밀번호, PIN, 사인 등은 위험에 노출되었을 경우 변경이 가능하다. 하지만, 생체 정보는 고유한 정보이며 불변하는 성격을 갖고 있다. 따라서 생체 정보가 탈취되거나 해킹되는 상황이 발생하면 재발급 또는 변경을 할 수 없다. 그러한 이유로 생체 정보에 대한 안전한 저장 및 관리가 더욱 중요하다.Biometric authentication is a technology that is gaining attention because it is convenient and has high security, but it also has vulnerabilities. Passwords, PINs, and signatures that were widely used in the past can be changed if they are exposed to danger. However, biometric information is unique information and has an immutable nature. Therefore, if biometric information is stolen or hacked, it cannot be reissued or changed. For this reason, safe storage and management of biometric information is even more important.
본 발명이 이루고자 하는 기술적인 과제는 회전에 강한 특징을 이용한 돌로네 기반의 대체 가능한 지문 템플릿 생성 장치 및 방법을 제공하는 것이다.The technical problem to be achieved by the present invention is to provide a device and method for generating a replaceable fingerprint template based on a dolomite using a rotation-resistant characteristic.
본 발명의 일 실시예에 따른 지문 템플릿 생성 장치는 지문 이미지로부터 복수의 미뉴셔들을 추출하는 미뉴셔 추출부, 추출된 미뉴셔들을 이용하여 돌로네 삼각화를 수행하여 복수의 돌로네 삼각형들을 생성하는 돌로네 삼각화부, 각각이 상기 복수의 돌로네 삼각형들 각각에 대응하는 복수의 특징 벡터들을 생성하는 특징 벡터 생성부, 및 적어도 하나의 더미 특징 벡터를 생성하고, 상기 적어도 하나의 더미 특징 벡터와 상기 복수의 특징 벡터들을 포함하는 지문 템플릿을 생성하는 지문 템플릿 생성부를 포함한다.A fingerprint template generating device according to one embodiment of the present invention includes a minusia extraction unit that extracts a plurality of minusiae from a fingerprint image, a Dolone triangulation unit that generates a plurality of Dolone triangles by performing Dolone triangulation using the extracted minusiae, a feature vector generation unit that generates a plurality of feature vectors each corresponding to each of the plurality of Dolone triangles, and a fingerprint template generation unit that generates at least one dummy feature vector and generates a fingerprint template including the at least one dummy feature vector and the plurality of feature vectors.
본 발명의 일 실시예에 따른 지문 템플릿 생성 방법은 적어도 프로세서를 포함하는 컴퓨팅 장치에 의해 수행되고, 지문 이미지로부터 복수의 미뉴셔들을 추출하는 단계, 추출된 미뉴셔들을 이용하여 돌로네 삼각화를 수행하여 복수의 돌로네 삼각형들을 생성하는 단계, 각각이 상기 복수의 돌로네 삼각형들 각각에 대응하는 복수의 특징 벡터들을 생성하는 단계, 및 적어도 하나의 더미 특징 벡터를 생성하고, 상기 적어도 하나의 더미 특징 벡터와 상기 복수의 특징 벡터들을 포함하는 지문 템플릿을 생성하는 단계를 포함한다.A fingerprint template generation method according to one embodiment of the present invention is performed by a computing device including at least a processor, and includes the steps of extracting a plurality of minutiae from a fingerprint image, performing Dollone triangulation using the extracted minutiae to generate a plurality of Dollone triangles, generating a plurality of feature vectors, each feature vector corresponding to a respective one of the plurality of Dollone triangles, and generating at least one dummy feature vector and generating a fingerprint template including the at least one dummy feature vector and the plurality of feature vectors.
본 발명의 실시예에 따른 지문 템플릿 생성 장치 및 방법에 의할 경우, 회전에 강한 특징을 이용하여 지문 템플릿을 생성할 수 있는 효과가 있다.In the case of a fingerprint template generation device and method according to an embodiment of the present invention, there is an effect of being able to generate a fingerprint template by utilizing a rotation-resistant feature.
또한, 지문 템플릿에 더미 특징 벡터를 포함시킴으로써 지문 템플릿의 유출로 인한 프라이버시 침해 문제를 예방할 수 있는 효과가 있다.In addition, by including dummy feature vectors in the fingerprint template, it is possible to prevent privacy invasion problems caused by fingerprint template leakage.
본 발명의 상세한 설명에서 인용되는 도면을 보다 충분히 이해하기 위하여 각 도면의 상세한 설명이 제공된다.
도 1은 본 발명에서 사용되는 특징 벡터를 설명하기 위한 도면이다.
도 2는 본 발명의 실험 결과를 설명하기 위한 그래프이다.
도 3은 본 발명의 일 실시예에 따른 지문 템플릿 생성 장치의 기능 블럭도이다.
도 4는 도 1에 도시된 지문 템플릿 생성 장치에 의해 수행되는 지문 템플릿 생성 방법을 설명하기 위한 흐름도이다.In order to more fully understand the drawings cited in the detailed description of the present invention, a detailed description of each drawing is provided.
Figure 1 is a drawing for explaining a feature vector used in the present invention.
Figure 2 is a graph for explaining the experimental results of the present invention.
FIG. 3 is a functional block diagram of a fingerprint template generation device according to one embodiment of the present invention.
FIG. 4 is a flowchart for explaining a fingerprint template generation method performed by the fingerprint template generation device illustrated in FIG. 1.
본 명세서에 개시되어 있는 본 발명의 개념에 따른 실시예들에 대해서 특정한 구조적 또는 기능적 설명들은 단지 본 발명의 개념에 따른 실시예들을 설명하기 위한 목적으로 예시된 것으로서, 본 발명의 개념에 따른 실시예들은 다양한 형태들로 실시될 수 있으며 본 명세서에 설명된 실시예들에 한정되지 않는다.Specific structural or functional descriptions of embodiments according to the concept of the present invention disclosed in this specification are merely exemplified for the purpose of explaining embodiments according to the concept of the present invention, and embodiments according to the concept of the present invention can be implemented in various forms and are not limited to the embodiments described in this specification.
본 발명의 개념에 따른 실시예들은 다양한 변경들을 가할 수 있고 여러 가지 형태들을 가질 수 있으므로 실시예들을 도면에 예시하고 본 명세서에서 상세하게 설명하고자 한다. 그러나, 이는 본 발명의 개념에 따른 실시예들을 특정한 개시 형태들에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물, 또는 대체물을 포함한다.Since embodiments according to the concept of the present invention can have various changes and can have various forms, the embodiments are illustrated in the drawings and described in detail in this specification. However, this is not intended to limit the embodiments according to the concept of the present invention to specific disclosed forms, but includes all modifications, equivalents, or substitutes included in the spirit and technical scope of the present invention.
제1 또는 제2 등의 용어는 다양한 구성 요소들을 설명하는데 사용될 수 있지만, 상기 구성 요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성 요소를 다른 구성 요소로부터 구별하는 목적으로만, 예컨대 본 발명의 개념에 따른 권리 범위로부터 벗어나지 않은 채, 제1 구성 요소는 제2 구성 요소로 명명될 수 있고 유사하게 제2 구성 요소는 제1 구성 요소로도 명명될 수 있다.The terms first or second, etc. may be used to describe various components, but the components should not be limited by the terms. The terms are only intended to distinguish one component from another, for example, without departing from the scope of the invention, a first component may be referred to as a second component, and similarly, a second component may also be referred to as a first component.
어떤 구성 요소가 다른 구성 요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성 요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성 요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성 요소가 다른 구성 요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는 중간에 다른 구성 요소가 존재하지 않는 것으로 이해되어야 할 것이다. 구성 요소들 간의 관계를 설명하는 다른 표현들, 즉 "~사이에"와 "바로 ~사이에" 또는 "~에 이웃하는"과 "~에 직접 이웃하는" 등도 마찬가지로 해석되어야 한다.When it is said that a component is "connected" or "connected" to another component, it should be understood that it may be directly connected or connected to that other component, but that there may be other components in between. On the other hand, when it is said that a component is "directly connected" or "directly connected" to another component, it should be understood that there are no other components in between. Other expressions that describe the relationship between components, such as "between" and "directly between" or "adjacent to" and "directly adjacent to", should be interpreted similarly.
본 명세서에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로서, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 본 명세서에 기재된 특징, 숫자, 단계, 동작, 구성 요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성 요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terminology used herein is only used to describe particular embodiments and is not intended to be limiting of the present invention. The singular expression includes the plural expression unless the context clearly indicates otherwise. It should be understood that, as used herein, the terms "comprises" or "has" and the like are intended to specify the presence of a feature, number, step, operation, component, part, or combination thereof described in the present specification, but do not exclude in advance the possibility of the presence or addition of one or more other features, numbers, steps, operations, components, parts, or combinations thereof.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 갖는 것으로 해석되어야 하며, 본 명세서에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Unless otherwise defined, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art to which this invention belongs. Terms defined in commonly used dictionaries, such as those defined in common usage, should be interpreted as having a meaning consistent with the meaning they have in the context of the relevant art, and will not be interpreted in an idealized or overly formal sense unless explicitly defined herein.
이하, 본 명세서에 첨부된 도면들을 참조하여 본 발명의 실시예들을 상세히 설명한다. 그러나, 특허출원의 범위가 이러한 실시예들에 의해 제한되거나 한정되는 것은 아니다. 각 도면에 제시된 동일한 참조 부호는 동일한 부재를 나타낸다.Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings attached to this specification. However, the scope of the patent application is not limited or restricted by these embodiments. The same reference numerals presented in each drawing represent the same components.
대체 가능한 생체 템플릿은 원본 생체 정보에 일방향 변환 함수를 적용하여 변환된 템플릿에서 원본 생체 정보를 알 수 없게 한다. 이 기술은 어떠한 공격자가 변환된 생체 데이터를 획득하여도 해당 정보에서 원본 데이터의 정보를 재구성할 수 없다. 대체 가능한 생체 템플릿 개념은 2001년 Ratha 등이 처음으로 제안하였다(Ratha, N.K. , Connell, J.H. , Bolle, R.M. , Enhancing security and privacy in biometrics-based authentication systems. IBM Syst. J. 40 (3), 614-634. 2001.) 이후 2006년에는 대체 가능한 생체 템플릿 변환으로 Cartesian, Radial, Functional 변환을 제안하였다(Ratha, N.K., Connell. J.H, Bolle, R.M., Chikkerur, S., Cancelable biometrics: A case study in fingerprints. International Conference on Pattern Recognition (ICPR), vol. 4, pp. 370-373, 2006.)A replaceable biometric template applies a one-way transformation function to the original biometric information so that the original biometric information cannot be known from the transformed template. This technology makes it impossible for any attacker to reconstruct the information of the original data from the transformed biometric data even if they obtain it. The concept of replaceable biometric templates was first proposed by Ratha et al. in 2001 (Ratha, N.K., Connell, J.H., Bolle, R.M., Enhancing security and privacy in biometrics-based authentication systems. IBM Syst. J. 40 (3), 614-634. 2001.). In 2006, Cartesian, Radial, and Functional transformations were proposed as replaceable biometric template transformations (Ratha, N.K., Connell. J.H, Bolle, R.M., Chikkerur, S., Cancelable biometrics: A case study in fingerprints. International Conference on Pattern Recognition (ICPR), vol. 4, pp. 370-373, 2006.).
이와 함께 지문 미뉴셔의 왜곡이나 회전에 크게 영향받지 않는 특징값으로 돌로네 삼각화가 많이 사용되었다. Bebis 등은 돌로네 삼각화가 노이즈나 미뉴셔의 추가 및 삭제에 크게 변화하지 않는 성질을 가짐을 보였다(Bebis, G. , Deaconu, T. , Georgiopoulos, M. Fingerprint identification using delaunay triangulation. In: International Conference on Information Intelligence and Systems. IEEE, pp. 452-459 .1999.). 일반적으로 동일한 지문으로 생성된 여러 이미지를 보면, 전체적으로 미뉴셔의 위치가 조금씩 다르게 추출됨을 알 수 있다. 미뉴셔에 돌로네 삼각화를 적용하면 이러한 변화를 쉽게 조절하여 사용할 수 있다.In addition, Dolone triangulation has been widely used as a feature value that is not greatly affected by the distortion or rotation of the fingerprint minusia. Bebis et al. showed that Dolone triangulation has a property that does not change greatly by the addition or deletion of noise or minusia (Bebis, G. , Deaconu, T. , Georgiopoulos, M. Fingerprint identification using delaunay triangulation. In: International Conference on Information Intelligence and Systems. IEEE, pp. 452-459 .1999.). In general, when looking at several images generated from the same fingerprint, it can be seen that the locations of the minusia are extracted slightly differently overall. If Dolone triangulation is applied to the minusia, these changes can be easily adjusted and used.
이와 관련하여 최근 Sandhya와 Prasad, Yang 등은 2015년과 2013년에 돌로네 기반의 대체 가능한 템플릿 기술을 제안하였다(Sandhya, M., Prasad, M.V.N.K., Chillarige, R.R. Generating cancellable finger-print templates based on delaunay triangle feature set construction. IET Biomet. 5 (2), 131-139. doi:10.1049/iet-bmt.2015.0034., 2016., Yang, W., Hu, J., Wang, S., Yang, J., Cancelable fingerprint templates with delaunay triangle-based local structures. Cyberspace Safety and Security. Springer, pp. 81-91, 2013.). 2020년에는 Trivedi 등이 돌로네 기반의 대체가능 템플릿 기술을 제안하였다(Amit Kumar Trivedi, Dalton Meitei Thounaojam a , Shyamosree Pal , Non-Invertible cancellable fingerprint template for fingerprint biometric , Elsevier Ltd , 2020.). 하지만 실험을 진행하기에 앞서 지문 템플릿의 회전 가능성을 제대로 고려하지 않았고, 삼각형으로부터 상대적인 값이 아닌 절대적인 값인 미뉴셔의 방향성을 사용하였기 때문에 지문 회전에 크게 영향을 받게 되었다. 또한, 싱귤러 포인트를 이용한 방법이기에 똑같은 사람의 지문을 비교하면 해당 이미지 파일의 선명도에 따라 싱귤러 포인트의 차이가 있다는 취약점도 존재한다.In this regard, Sandhya, Prasad, Yang et al. recently proposed a delaunay-based replaceable template technique in 2015 and 2013 (Sandhya, M., Prasad, M.V.N.K., Chillarige, R.R. Generating cancellable finger-print templates based on delaunay triangle feature set construction. IET Biomet. 5 (2), 131-139. doi:10.1049/iet-bmt.2015.0034., 2016., Yang, W., Hu, J., Wang, S., Yang, J., Cancelable fingerprint templates with delaunay triangle-based local structures. Cyberspace Safety and Security. Springer, pp. 81-91, 2013.). In 2020, Trivedi et al. proposed a Dolonne-based replaceable template technique (Amit Kumar Trivedi, Dalton Meitei Thounaojama, Shyamosree Pal, Non-Invertible cancellable fingerprint template for fingerprint biometric, Elsevier Ltd, 2020.). However, the possibility of rotation of the fingerprint template was not properly considered before conducting the experiment, and the directionality of the minusia, which is an absolute value rather than a relative value from the triangle, was used, which was greatly affected by the fingerprint rotation. In addition, since it is a method using singular points, there is a vulnerability that there is a difference in singular points depending on the clarity of the image file when comparing fingerprints of the same person.
이하에서는 본 발명의 일 실시예에 의한 지문 템플릿 생성 방법을 기술한다. 이에 의할 경우, 미뉴셔 포인트의 돌로네 삼각형에서 삼각형의 상대적인 특징을 사용하여 더욱 정확한 템플릿 생성 방법을 제공할 수 있다.Hereinafter, a fingerprint template generation method according to one embodiment of the present invention is described. In this case, a more accurate template generation method can be provided by using the relative features of triangles in the Dolone triangle of the Minusia point.
원본 지문 템플릿의 정보를 보호하기 위해 상대적인 매칭 특징값 n개(n은 임의의 자연수로, 예시적인 값은 16일 수 있음. 또한, 상기 매칭 특징값은 특징 벡터로 명명될 수도 있음)를 임의로 선택(또는 생성)하고, 이를 포함하는 지문 템플릿을 생성할 수 있다. 추가적인 매칭 특징값은 사용자의 비밀 키와 같은 역할을 수행할 수 있다.In order to protect the information of the original fingerprint template, n relative matching feature values (n is any natural number, an exemplary value may be 16. In addition, the matching feature values may be named a feature vector) may be arbitrarily selected (or generated) and a fingerprint template including the same may be generated. The additional matching feature values may serve as a user's secret key.
이를 위해, 먼저 지문(또는 지문 이미지)에서 미뉴셔 포인트(minutia point)를 추출한다. 이후, 지문에서 뽑은 미뉴셔 포인트를 사용하여 돌로네 삼각형을 만든다. 여기서, 같은 지문의 다른 템플릿이어도 Genuine 매칭을 정확하게 하기 위해서 상대적인 값을 사용한다.To do this, first, the minutia points are extracted from the fingerprint (or fingerprint image). Then, the minutia points extracted from the fingerprint are used to create a Dolone triangle. Here, relative values are used to accurately match genuine even for different templates of the same fingerprint.
지문 템플릿 매칭을 위한 벡터(매칭 벡터 또는 특징 벡터로 명명될 수 있음)는 아래 수학식 1과 같다. 또한, 특징 벡터의 구성에 관하여는 도 1이 참조될 수 있다.The vector for fingerprint template matching (which may be named a matching vector or a feature vector) is as shown in the mathematical expression 1 below. In addition, with respect to the configuration of the feature vector, reference may be made to FIG. 1.
[수학식 1][Mathematical formula 1]
수학식 1에서, 는 사용자의 지문에서 추출된 돌로네 삼각형들 중 i번째 삼각형의 특징 벡터를 의미하고, 는 돌로네 삼각형의 내각 중에 가장 큰 각을 의미하고, 은 돌로네 삼각형의 내각 중 가장 작은 각을 의미하고, 는 돌로네 삼각형의 변들 중 길이가 가장 긴 변의 길이를 의미하고, 은 돌로네 삼각형의 세 꼭짓점을 지나는 외접원의 반지름을 의미한다. 은 가장 큰 내각인 의 꼭짓점 에서 나머지 꼭짓점들 중 어느 하나의 꼭짓점 로 가는 벡터()와 에서 다른 하나의 꼭짓점 로 가는 벡터()의 외적 값()의 부호를 식별할 수 있는 값을 의미할 수 있다. 예시적으로, 은 외적값이 음수이면 0의 값을 갖고, 외적값이 양수이면 1의 값을 가질 수 있다. 는 돌로네 삼각형의 내각 중 가장 큰 각 의 꼭짓점 에 대응하는 미뉴셔의 방향 벡터와 에서 인접한 변들 중 어느 하나, 예컨대 중간 크기의 변을 잇는 벡터 사이의 사잇각을 의미할 수 있다.In mathematical expression 1, refers to the feature vector of the i-th triangle among the Dolone triangles extracted from the user's fingerprint, It means the largest angle among the interior angles of the Dolone triangle, It means the smallest angle among the interior angles of the Dolone triangle, It means the length of the longest side among the sides of the Dolone triangle, It refers to the radius of the circumcircle passing through the three vertices of the Dolone triangle. is the largest cabinet The vertex of Any one of the remaining vertices in Vector to ( )and Another vertex in Vector to ( ) of the outer value ( ) can mean a value that can identify the sign of the symbol. For example, It can have a value of 0 if the outer product is negative, and a value of 1 if the outer product is positive. is the largest interior angle of a Dolone triangle. The vertex of The direction vector of the corresponding minusia and It can mean the angle between vectors connecting adjacent edges, for example, edges of medium size.
상술한 특징 벡터는 6개의 특징을 포함하고 있다. 그러나, 본 발명이 특징 벡터에 포함되는 특징의 개수에 제한되는 것은 아니며, 특징 벡터는 적어도 하나의 특징을 포함하는 것으로 이해될 수 있다. 또한, 특징 벡터는 지문으로부터 추출된 돌로네 삼각형에 대응하기 때문에, 하나의 지문 템플릿에 대응하는 특징 벡터의 개수는 돌로네 삼각형의 개수와 동일할 수 있다.The above-described feature vector includes six features. However, the present invention is not limited to the number of features included in the feature vector, and it can be understood that the feature vector includes at least one feature. In addition, since the feature vector corresponds to the Dolone triangle extracted from the fingerprint, the number of feature vectors corresponding to one fingerprint template can be equal to the number of Dolone triangles.
이후에, 앞서 기술한 임의의 특징 벡터(임의의 값들을 이용하여 생성된 특징 벡터로 더미 특징 벡터로 명명될 수도 있음)와 지문으로부터 추출된 특징 벡터들을 포함하는 지문 템플릿이 생성될 수 있다.Afterwards, a fingerprint template can be generated that includes the previously described random feature vector (which may be named a dummy feature vector as a feature vector generated using random values) and the feature vectors extracted from the fingerprint.
상술한 바와 같이, 돌로네 삼각형의 상대적인 값 6개를 사용하여 매칭을 수행할 수 있다. 매칭 과정에서 해당 임계치를 통과하여 유사한 특징 벡터를 찾으면 Count를 증가시킨다. 최종 비교 값 매칭 스코어는 Count 값(또는 Count의 제곱값)을 두 지문의 특징 벡터의 개수(NT, NQ)를 곱한 것으로 나누어 계산할 수 있다. 이는 수학식 2로 나타낼 수 있다.As described above, matching can be performed using the six relative values of the Dolone triangle. In the matching process, if a similar feature vector is found by passing the threshold, the Count is increased. The final comparison value matching score can be calculated by dividing the Count value (or the square of the Count) by the product of the number of feature vectors of the two fingerprints (N T , N Q ). This can be expressed by mathematical formula 2.
[수학식 2][Mathematical formula 2]
매칭 스코어 값이 미리 정해진 임계치 보다 크면(또는 크거나 같으면) 비교 대상인 두 지문은 동일인의 지문으로 판단될 수 있고, 매칭 스코어 값이 미리 정해진 임계치 보다 작으면(또는 작거나 같으면) 비교 대상인 두 지문은 동일인의 지문이 아닌 것으로 판단될 수 있다.If the matching score value is greater than (or equal to or greater than) a predetermined threshold, the two fingerprints to be compared can be determined to be fingerprints of the same person, and if the matching score value is less than (or equal to or less than) the predetermined threshold, the two fingerprints to be compared can be determined not to be fingerprints of the same person.
다시 말해, 매칭 스코어는 매칭되는 특징 벡터의 개수에 기초하여 산출될 수 있다. 즉, 매칭 스코어는 매칭되는 특징 벡터의 개수를 비교 대상 지문 템플릿에 포함된 특징 벡터의 개수(또는 개수의 제곱)와 미리 저장되어 있는 지문 템플릿에 포함된 특징 벡터의 개수의 합으로 나눗 값이 된다.In other words, the matching score can be calculated based on the number of matching feature vectors. That is, the matching score is the number of matching feature vectors divided by the sum of the number of feature vectors (or the square of the number) included in the fingerprint template to be compared and the number of feature vectors included in the pre-stored fingerprint template.
이하에서는, 실험 결과를 설명한다.Below, the experimental results are described.
본 발명의 실험에서는 Trivedi 등의 논문에서 사용하였던 지문 데이터 FVC2002 DB1, DB2 외에 FVC2002 DB3, DB4를 더 사용하였다.In the experiment of the present invention, in addition to the fingerprint data FVC2002 DB1 and DB2 used in the paper by Trivedi et al., FVC2002 DB3 and DB4 were used.
돌로네 삼각형의 상대적인 값 6개를 사용한 매칭 과정에서는 각도에서의 임계치 값은 10, 길이에 대한 임계치 값을 15로 넣어 실험을 진행하였다. Genuine 매칭은 동일한 사람의 지문 이미지끼리 각각 비교 연산을 진행하였고 (28×100=2800번 비교), Impostor 매칭은 각 사람의 첫 번째 지문을 다른 사람의 첫 번째 지문과 비교 연산을 진행하였다(99+98+…+2+1=4950번 비교).The matching process using the six relative values of the Dolone triangle involves the angle The threshold value in is 10, length The experiment was conducted by setting the threshold value to 15. Genuine matching performed a comparison operation between fingerprint images of the same person (28×100=2800 comparisons), and Impostor matching performed a comparison operation between the first fingerprint of each person and the first fingerprint of another person (99+98+…+2+1=4950 comparisons).
도 2의 실험 결과는 본 명세서에서 제안한 기법에 따라 미뉴셔 포인트의 돌로네 삼각형에서 상대적인 특징값을 이용한 매칭 시의 FAR과 FRR을 그래프로 나타낸 것이다.The experimental results in Fig. 2 are graphs showing FAR and FRR when matching using relative feature values in the Dolone triangle of the Minusia point according to the technique proposed in this specification.
FRR(False Reject Rate)은 동일한 지문으로 매칭이 되어야 할 지문 템플릿이 매칭에 실패하는 확률을 나타내고, FAR(False Accept Rate)은 다른 사람의 지문 템플릿끼리 비교했을 때 매칭에 실패해야 하지만 성공하는 확률을 나타낸다. 그래프에서 나타나는 FRR과 FAR의 교점의 값은 ERR(Equal Error Rate)을 나타낸다. ERR은 FAR과 FRR의 에러 확률이 같아지는 위치이다. 따라서 해당 수치는 생체 인증 과정에서 효율성과 정확성의 척도로 볼 수 있다.FRR(False Reject Rate) is the probability that a fingerprint template that should be matched with the same fingerprint fails to match, and FAR(False Accept Rate) is the probability that a matching succeeds when comparing fingerprint templates from different people. The value of the intersection of FRR and FAR in the graph represents ERR(Equal Error Rate). ERR is the point where the error probabilities of FAR and FRR become the same. Therefore, this value can be seen as a measure of efficiency and accuracy in the biometric authentication process.
따라서 표 1에서 나타나듯이 본 실험의 ERR은 이전 연구인 Trivedi 등이 보였던 ERR의 값보다 작은 값으로 더 좋은 성능을 보인다는 결과를 얻을 수 있었다.Therefore, as shown in Table 1, the ERR of this experiment was found to be smaller than that of the previous study by Trivedi et al., showing better performance.
[표 1][Table 1]
도 3은 본 발명의 일 실시예에 따른 지문 템플릿 생성 장치의 기능 블럭도이다.FIG. 3 is a functional block diagram of a fingerprint template generation device according to one embodiment of the present invention.
도 3을 참조하면, 지문 템플릿 생성 장치(100)는 미뉴셔 추출부(110), 돌로네 삼각화부(120), 특징 벡터 생성부(130), 지문 템플릿 생성부(140), 매칭부(150), 및 저장부(160) 중 적어도 하나 이상을 포함할 수 있다. 예컨대, 지문 템플릿 생성부(100)는 매칭부(150)를 포함하도록 구성되어 비교 대상 지문 템플릿과 매칭 여부(또는 인증 여부)를 판단할 수도 있다. 이 경우, 지문 템플릿 생성 장치(100)는 지문 인증 장치, 지문 인식 장치, 지문 매칭 장치 등으로 명명될 수도 있다.Referring to FIG. 3, the fingerprint template generation device (100) may include at least one of a minusia extraction unit (110), a Dolone triangulation unit (120), a feature vector generation unit (130), a fingerprint template generation unit (140), a matching unit (150), and a storage unit (160). For example, the fingerprint template generation unit (100) may be configured to include a matching unit (150) to determine whether or not a fingerprint template to be compared matches (or is authenticated). In this case, the fingerprint template generation device (100) may also be named a fingerprint authentication device, a fingerprint recognition device, a fingerprint matching device, etc.
또한, 지문 템플릿 생성 장치(100)는 적어도 프로세서(processor) 및/또는 메모리를 포함하는 컴퓨팅 장치로 구현될 수 있다. 컴퓨팅 장치는 데스크톱 PC, 서버, 태블릿 PC, 핸드헬드 장치, 웨어러블 디바이스, 스마트 폰, HMD, 네비게이션 등을 포함할 수 있다.Additionally, the fingerprint template generation device (100) may be implemented as a computing device including at least a processor and/or a memory. The computing device may include a desktop PC, a server, a tablet PC, a handheld device, a wearable device, a smart phone, an HMD, a navigation device, etc.
미뉴셔 추출부(110) 지문(또는 지문 이미지)로부터 미뉴셔(또는 미뉴셔 포인트)를 추출할 수 있다. 지문으로부터 미뉴셔를 추출하는 방법은 널리 공지되어 있으므로, 이에 대한 상세한 설명은 생략하기로 한다.A minusia extraction unit (110) can extract a minusia (or minusia point) from a fingerprint (or fingerprint image). Since the method of extracting a minusia from a fingerprint is widely known, a detailed description thereof will be omitted.
지문은 소정의 입력 장치를 이용하여 사용자의 지문을 스캔하거나, 외부 장치에 의해 스캔 된 후 유무선 통신망을 통하여 수신된 것일 수도 있다. 지문은 상술한 바와 같이 미리 수신되어 저장부(160)에 저장되어 있을 수도 있다.The fingerprint may be scanned by a user's fingerprint using a predetermined input device, or may be scanned by an external device and then received via a wired or wireless communication network. The fingerprint may be received in advance as described above and stored in the storage unit (160).
돌로네 삼각화부(120)는 추출된 미뉴셔들을 이용하여 돌로네 삼각화를 진행하고, 복수의 돌로네 삼각형들을 생성할 수 있다. 돌로네 삼각화 동작에 대하여는 널리 알려져 있기 때문에 이에 대한 상세한 설명은 생략하기로 한다.The Dolone triangulation unit (120) performs Dolone triangulation using the extracted minusiae and can generate multiple Dolone triangles. Since the Dolone triangulation operation is widely known, a detailed description thereof will be omitted.
특징 벡터 생성부(130)는 생성된 돌로네 삼각형들 각각에 대응하는 복수의 특징 벡터들을 생성할 수 있다. 특징 벡터 생성부(130)에 의해 생성된 특징 벡터의 개수는 돌로네 삼각형의 개수와 동일할 수 있으나, 본 발명이 이에 제한되는 것은 아니다.The feature vector generation unit (130) can generate a plurality of feature vectors corresponding to each of the generated Dolone triangles. The number of feature vectors generated by the feature vector generation unit (130) may be equal to the number of Dolone triangles, but the present invention is not limited thereto.
지문 템플릿 생성부(140)는 임의의 값을 갖는 적어도 하나의 특징 벡터, 즉 적어도 하나의 더미 특징 벡터를 생성하고, 더미 특징 벡터와 특징 벡터 생성부(130)에 의해 생성된 특징 벡터들을 포함하는 지문 템플릿을 생성할 수 있다. 생성된 지문 템플릿은 지문에 대응하는 것으로, 동일인의 지문이라도 지문 이미지에 따라, 또는 추가되는 더미 특징 벡터에 따라 상이한 값을 가질 수 있다.The fingerprint template generation unit (140) can generate at least one feature vector having an arbitrary value, that is, at least one dummy feature vector, and generate a fingerprint template including the dummy feature vector and the feature vectors generated by the feature vector generation unit (130). The generated fingerprint template corresponds to a fingerprint, and even fingerprints of the same person can have different values depending on the fingerprint image or the dummy feature vector added.
매칭부(150)는 비교 대상 지문 템플릿을 미리 저장되어 있는 지문 템플릿들고 비교 하여 매칭 여부를 판단할 수 있다. 구체적으로, 매칭부(150)는 비교 대상 지문 템플릿(예컨대, 지문 템플릿 생성부(140)에 의해 생성된 지문 템플릿)과 미리 저장되어 있는 지문 템플릿들 중 적어도 하나 지문 템플릿와 매칭 여부를 판단할 수 있다.The matching unit (150) can determine whether a fingerprint template to be compared matches with fingerprint templates that are stored in advance. Specifically, the matching unit (150) can determine whether a fingerprint template to be compared (e.g., a fingerprint template generated by the fingerprint template generating unit (140)) matches with at least one of the fingerprint templates that are stored in advance.
매칭을 위해서 비교 대상 지문 템플릿에 포함된 각 특징 벡터가 상기 적어도 하나의 지문 템플릿에 포함된 특징 벡터 중 어느 하나와 매칭이 되는지 여부를 판단할 수 있다. 매칭 여부는 매칭 스코어를 기준으로 판단될 수 있다. 즉, 미리 정해진 기준 값에 따라 비교 대상 지문 템플릿과 미리 저장되어 있는 지문 템플릿 중 어느 하나가 매칭되는지 여부를 결정할 수 있다. 지문 템플릿이 매칭된다 함은 동일인의 지문으로부터 생성된 지문 템플릿임을 의미할 수 있다.In order to match, it can be determined whether each feature vector included in the fingerprint template to be compared matches any one of the feature vectors included in at least one fingerprint template. Whether or not it matches can be determined based on a matching score. That is, it can be determined whether or not the fingerprint template to be compared matches any one of the fingerprint templates stored in advance based on a predetermined reference value. Matching the fingerprint templates can mean that they are fingerprint templates generated from the fingerprint of the same person.
실시예에 따라, 비교 대상 지문 템플릿에는 더미 특징 벡터가 포함되지 않을 수도 있다. 즉, 인증 동작 등을 수행할 경우에 인증의 대상이 되는 지문 템플릿에는 더미 특징 벡터를 포함시키지 않음으로써 보다 높은 효과를 얻을 수도 있기 때문이다. Depending on the embodiment, the fingerprint template to be compared may not include a dummy feature vector. That is, when performing an authentication operation, etc., a higher effect may be obtained by not including a dummy feature vector in the fingerprint template to be authenticated.
저장부(160)에는 사용자의 지문을 포함하는 복수의 지문들, 사용자의 지문 템플릿을 포함하는 복수의 지문 템플릿들, 각각의 지문으로부터 추출된 미뉴셔 포인트들, 돌로네 삼각형들, 특징 벡터들 등이 일시적으로 또는 비일시적으로 저장될 수 있다.In the storage unit (160), a plurality of fingerprints including the user's fingerprint, a plurality of fingerprint templates including the user's fingerprint template, Minusia points, Dolone triangles, feature vectors, etc. extracted from each fingerprint can be temporarily or non-temporarily stored.
도 4는 도 3에 도시된 지문 템플릿 생성 장치에 의해 수행되는 지문 템플릿 생성 방법을 설명하기 위한 흐름도이다. 지문 템플릿 생성 방법 또는 지문 템플릿을 이용한 사용자 인증(인식, 매칭) 방법을 설명함에 있어 앞선 기재와 동일한 내용에 관하여는 그 기재를 생략하기로 한다. 또한, 아래의 방법들 중 적어도 일부의 동작은 지문 템플릿 생성 장치(100)를 구성하는 프로세서의 동작으로 이해될 수도 있다.FIG. 4 is a flow chart for explaining a fingerprint template generation method performed by the fingerprint template generation device illustrated in FIG. 3. When explaining a fingerprint template generation method or a user authentication (recognition, matching) method using a fingerprint template, description of the same content as described above will be omitted. In addition, at least some of the operations of the methods below may be understood as operations of a processor constituting the fingerprint template generation device (100).
도 3과 도 4를 참조하면, 지문(또는 지문 이미지)으로부터 미뉴셔가 추출될 수 있다(S110). 미뉴셔 추출 동작은 지문 템플릿 생성 장치(100)의 미뉴셔 추출부(110)에 의해 수행될 수 있다.Referring to FIGS. 3 and 4, a minusiae can be extracted from a fingerprint (or fingerprint image) (S110). The minusiae extraction operation can be performed by a minusiae extraction unit (110) of a fingerprint template generation device (100).
지문 템플릿 생성 장치(100)의 돌로네 삼각화부(120)는 추출된 미뉴셔를 이용하여 복수의 돌로네 삼각형들을 생성할 수 있다(S120).The Dolone triangulation unit (120) of the fingerprint template generation device (100) can generate a plurality of Dolone triangles using the extracted minusia (S120).
이후, 지문 템플릿 생성 장치(100)의 특징 벡터 생성부(130)는 생성된 돌로네 삼각형들 각각에 대한 특징 벡터를 생성할 수 있다(S130). 즉, 복수의 특징 벡터들 각각은 복수의 돌로네 삼각형들 중 어느 하나에 대응한다.Thereafter, the feature vector generation unit (130) of the fingerprint template generation device (100) can generate a feature vector for each of the generated Dolone triangles (S130). That is, each of the plurality of feature vectors corresponds to one of the plurality of Dolone triangles.
지문 템플릿 생성 장치(100)의 지문 템플릿 생성부(140)는 생성된 특징 벡터들과 더미 특징 벡터들을 포함하는 지문 템플릿을 생성할 수 있다(S140).The fingerprint template generation unit (140) of the fingerprint template generation device (100) can generate a fingerprint template including generated feature vectors and dummy feature vectors (S140).
또한, 지문 템플릿 생성 장치(100)의 매칭부(150)는 비교 대상 지문 템플릿과 미리 저장되어 있는 지문 템플릿들 중 적어도 하나의 지문 템플릿과 비교함으로써 매칭 여부를 결정할 수 있다(S150).In addition, the matching unit (150) of the fingerprint template generation device (100) can determine whether there is a match by comparing the fingerprint template to be compared with at least one fingerprint template among the fingerprint templates stored in advance (S150).
이상에서 설명된 장치는 하드웨어 구성 요소, 소프트웨어 구성 요소, 및/또는 하드웨어 구성 요소 및 소프트웨어 구성 요소의 집합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치 및 구성 요소는, 예를 들어, 프로세서, 콘트롤러, ALU(Arithmetic Logic Unit), 디지털 신호 프로세서(Digital Signal Processor), 마이크로컴퓨터, FPA(Field Programmable array), PLU(Programmable Logic Unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(Operation System, OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술 분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(Processing Element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(Parallel Processor)와 같은, 다른 처리 구성(Processing Configuration)도 가능하다.The devices described above may be implemented as hardware components, software components, and/or a collection of hardware components and software components. For example, the devices and components described in the embodiments may be implemented using one or more general-purpose computers or special-purpose computers, such as, for example, a processor, a controller, an arithmetic logic unit (ALU), a digital signal processor, a microcomputer, a field programmable array (FPA), a programmable logic unit (PLU), a microprocessor, or any other device capable of executing instructions and responding. The processing device may execute an operating system (OS) and one or more software applications running on the operating system. In addition, the processing device may access, store, manipulate, process, and generate data in response to the execution of the software. For ease of understanding, the processing device is sometimes described as being used alone, but those skilled in the art will appreciate that the processing device may include multiple processing elements and/or multiple types of processing elements. For example, the processing unit may include multiple processors, or a processor and a controller. Other processing configurations, such as a parallel processor, are also possible.
소프트웨어는 컴퓨터 프로그램(Computer Program), 코드(Code), 명령(Instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(Collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성 요소(Component), 물리적 장치, 가상 장치(Virtual Equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(Signal Wave)에 영구적으로, 또는 일시적으로 구체화(Embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.The software may include a computer program, code, instructions, or a combination of one or more of these, and may configure a processing device to perform a desired operation or may independently or collectively command the processing device. The software and/or data may be permanently or temporarily embodied in any type of machine, component, physical device, virtual equipment, computer storage medium or device, or transmitted signal wave to be interpreted by the processing device or to provide instructions or data to the processing device. The software may be distributed on network-connected computer systems and stored or executed in a distributed manner. The software and data may be stored in one or more computer-readable recording media.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(Magnetic Media), CD-ROM, DVD와 같은 광기록 매체(Optical Media), 플롭티컬 디스크(Floptical Disk)와 같은 자기-광 매체(Magneto-optical Media), 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.The method according to the embodiment may be implemented in the form of program commands that can be executed through various computer means and recorded on a computer-readable medium. The computer-readable medium may include program commands, data files, data structures, etc., alone or in combination. The program commands recorded on the medium may be those specially designed and configured for the embodiment or may be those known to and usable by those skilled in the art of computer software. Examples of the computer-readable recording medium include magnetic media such as hard disks, floppy disks, and magnetic tapes, optical media such as CD-ROMs and DVDs, magneto-optical media such as floptical disks, and hardware devices specially configured to store and execute program commands such as ROMs, RAMs, flash memories, etc. Examples of the program commands include not only machine language codes generated by a compiler but also high-level language codes that can be executed by a computer using an interpreter, etc. The hardware devices described above may be configured to operate as one or more software modules to perform the operations of the embodiment, and vice versa.
본 발명은 도면에 도시된 실시예를 참고로 설명되었으나 이는 예시적인 것에 불과하며, 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성 요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성 요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 등록청구범위의 기술적 사상에 의해 정해져야 할 것이다.Although the present invention has been described with reference to the embodiments illustrated in the drawings, this is merely exemplary, and those skilled in the art will understand that various modifications and equivalent other embodiments are possible therefrom. For example, appropriate results can be achieved even if the described techniques are performed in a different order than the described method, and/or components of the described systems, structures, devices, circuits, etc. are combined or combined in a different form than the described method, or are replaced or substituted by other components or equivalents. Accordingly, the true technical protection scope of the present invention should be defined by the technical spirit of the appended claims.
100 : 지문 템플릿 생성 장치
110 : 미뉴셔 추출부
120 : 돌로네 삼각화부
130 : 특징 벡터 생성부
140 : 지문 템플릿 생성부
150 : 매칭부
160 : 저장부100 : Fingerprint template generation device
110: Minusia Extraction Department
120: Dolone triangle
130: Feature vector generation section
140: Fingerprint template generation section
150 : Matching section
160 : Storage
Claims (10)
추출된 미뉴셔들을 이용하여 돌로네 삼각화를 수행하여 복수의 돌로네 삼각형들을 생성하는 돌로네 삼각화부;
각각이 상기 복수의 돌로네 삼각형들 각각에 대응하는 복수의 특징 벡터들을 생성하는 특징 벡터 생성부; 및
적어도 하나의 더미 특징 벡터를 생성하고, 상기 적어도 하나의 더미 특징 벡터와 상기 복수의 특징 벡터들을 포함하는 지문 템플릿을 생성하는 지문 템플릿 생성부를 포함하고,
상기 특징 벡터 생성부는 수학식 1로 표현되는 특징 벡터를 생성하고,
수학식 1은 이고,
상기 는 상기 지문에서 추출된 돌로네 삼각형들 중 i번째 돌로네 삼각형의 특징 벡터를 의미하고,
상기 는 상기 i번째 돌로네 삼각형의 내각 중에 가장 큰 각을 의미하고,
상기 은 상기 i번째 돌로네 삼각형의 내각 중 가장 작은 각을 의미하고,
상기 는 상기 i번째 돌로네 삼각형의 변들 중 길이가 가장 긴 변의 길이를 의미하고,
상기 은 상기 i번째 돌로네 삼각형의 세 꼭짓점을 지나는 외접원의 반지름을 의미하고,
상기 은 상기 의 꼭짓점()에서 나머지 꼭짓점들 중 어느 하나의 꼭짓점()으로 가는 벡터()와 상기 에서 다른 하나의 꼭짓점()으로 가는 벡터()의 외적 값()의 부호를 식별할 수 있는 값을 의미하고,
상기 는 상기 에 대응하는 미뉴셔의 방향 벡터와 상기 에서 인접한 변들 중 어느 하나의 변을 잇는 벡터 사이의 사잇각을 의미하는,
지문 템플릿 생성 장치.A minusia extraction unit for extracting multiple minusiae from a fingerprint image;
A Dolone triangulation unit that generates multiple Dolone triangles by performing Dolone triangulation using the extracted minuscules;
A feature vector generation unit for generating a plurality of feature vectors, each of which corresponds to each of the plurality of Dolone triangles; and
A fingerprint template generation unit comprising: a fingerprint template generation unit generating at least one dummy feature vector and generating a fingerprint template including the at least one dummy feature vector and the plurality of feature vectors;
The above feature vector generation unit generates a feature vector expressed by mathematical formula 1,
Mathematical expression 1 is And,
Above refers to the feature vector of the i-th Dolone triangle among the Dolone triangles extracted from the above fingerprint,
Above means the largest angle among the interior angles of the i-th Dolone triangle,
Above means the smallest angle among the interior angles of the i-th Dolone triangle,
Above means the length of the longest side among the sides of the i-th Dolone triangle,
Above denotes the radius of the circumscribed circle passing through the three vertices of the i-th Dolone triangle,
Above Silver is above The vertex of ( ) among the remaining vertices ( ) to the vector ( ) and the above Another vertex in ( ) to the vector ( ) of the outer value ( ) means a value that can identify the sign of
Above is above The direction vector of the corresponding minus and the above It means the angle between the vectors connecting one of the adjacent sides in .
Fingerprint template generator.
상기 의 꼭짓점()에서 나머지 꼭짓점들 중 어느 하나의 꼭짓점()으로 가는 벡터()와 상기 에서 다른 하나의 꼭짓점()으로 가는 벡터()의 외적 값()의 부호가 (-)인 경우 상기 의 값은 0 또는 1 중 어느 하나의 값이고,
상기 의 꼭짓점()에서 나머지 꼭짓점들 중 어느 하나의 꼭짓점()으로 가는 벡터()와 상기 에서 다른 하나의 꼭짓점()으로 가는 벡터()의 외적 값()의 부호가 (+)인 경우 상기 의 값은 0 또는 1 중 다른 하나의 값인,
지문 템플릿 생성 장치.In the first paragraph,
Above The vertex of ( ) among the remaining vertices ( ) to the vector ( ) and the above Another vertex in ( ) to the vector ( ) of the outer value ( ) if the sign is (-). The value of is either 0 or 1,
Above The vertex of ( ) among the remaining vertices ( ) to the vector ( ) and the above Another vertex in ( ) to the vector ( ) of the outer value ( ) if the sign is (+). The value of is either 0 or 1,
Fingerprint template generator.
상기 지문 템플릿 생성 장치는 상기 지문 템플릿과 미리 저장되어 있는 복수의 지문 템플릿의 매칭 여부를 판단하는 매칭부를 더 포함하는,
지문 템플릿 생성 장치.In the first paragraph,
The fingerprint template generation device further includes a matching unit that determines whether the fingerprint template matches a plurality of fingerprint templates stored in advance.
Fingerprint template generator.
지문 이미지로부터 복수의 미뉴셔들을 추출하는 단계;
추출된 미뉴셔들을 이용하여 돌로네 삼각화를 수행하여 복수의 돌로네 삼각형들을 생성하는 단계;
각각이 상기 복수의 돌로네 삼각형들 각각에 대응하는 복수의 특징 벡터들을 생성하는 단계; 및
적어도 하나의 더미 특징 벡터를 생성하고, 상기 적어도 하나의 더미 특징 벡터와 상기 복수의 특징 벡터들을 포함하는 지문 템플릿을 생성하는 단계를 포함하고,
상기 특징 벡터들을 생성하는 단계는 수학식 1로 표현되는 특징 벡터를 생성하고,
수학식 1은 이고,
상기 는 상기 지문에서 추출된 돌로네 삼각형들 중 i번째 돌로네 삼각형의 특징 벡터를 의미하고,
상기 는 상기 i번째 돌로네 삼각형의 내각 중에 가장 큰 각을 의미하고,
상기 은 상기 i번째 돌로네 삼각형의 내각 중 가장 작은 각을 의미하고,
상기 는 상기 i번째 돌로네 삼각형의 변들 중 길이가 가장 긴 변의 길이를 의미하고,
상기 은 상기 i번째 돌로네 삼각형의 세 꼭짓점을 지나는 외접원의 반지름을 의미하고,
상기 은 상기 의 꼭짓점()에서 나머지 꼭짓점들 중 어느 하나의 꼭짓점()으로 가는 벡터()와 상기 에서 다른 하나의 꼭짓점()으로 가는 벡터()의 외적 값()의 부호를 식별할 수 있는 값을 의미하고,
상기 는 상기 에 대응하는 미뉴셔의 방향 벡터와 상기 에서 인접한 변들 중 어느 하나의 변을 잇는 벡터 사이의 사잇각을 의미하는,
지문 템플릿 생성 방법.A method for generating a fingerprint template performed by a computing device including at least a processor,
A step of extracting multiple minuscules from a fingerprint image;
A step of generating multiple Dolone triangles by performing Dolone triangulation using the extracted minuscules;
a step of generating a plurality of feature vectors, each of which corresponds to each of the plurality of Dolone triangles; and
A step of generating at least one dummy feature vector, and generating a fingerprint template including the at least one dummy feature vector and the plurality of feature vectors,
The step of generating the above feature vectors generates a feature vector expressed by mathematical formula 1,
Mathematical expression 1 is And,
Above refers to the feature vector of the i-th Dolone triangle among the Dolone triangles extracted from the above fingerprint,
Above means the largest angle among the interior angles of the i-th Dolone triangle,
Above means the smallest angle among the interior angles of the i-th Dolone triangle,
Above means the length of the longest side among the sides of the i-th Dolone triangle,
Above denotes the radius of the circumscribed circle passing through the three vertices of the i-th Dolone triangle,
Above Silver is above The vertex of ( ) among the remaining vertices ( ) to the vector ( ) and the above Another vertex in ( ) to the vector ( ) of the outer value ( ) means a value that can identify the sign of
Above is above The direction vector of the corresponding minus and the above It means the angle between the vectors connecting one of the adjacent sides in .
How to create a fingerprint template.
상기 의 꼭짓점()에서 나머지 꼭짓점들 중 어느 하나의 꼭짓점()으로 가는 벡터()와 상기 에서 다른 하나의 꼭짓점()으로 가는 벡터()의 외적 값()의 부호가 (-)인 경우 상기 의 값은 0 또는 1 중 어느 하나의 값이고,
상기 의 꼭짓점()에서 나머지 꼭짓점들 중 어느 하나의 꼭짓점()으로 가는 벡터()와 상기 에서 다른 하나의 꼭짓점()으로 가는 벡터()의 외적 값()의 부호가 (+)인 경우 상기 의 값은 0 또는 1 중 다른 하나의 값인,
지문 템플릿 생성 방법.In Article 6,
Above The vertex of ( ) among the remaining vertices ( ) to the vector ( ) and the above Another vertex in ( ) to the vector ( ) of the outer value ( ) if the sign is (-). The value of is either 0 or 1,
Above The vertex of ( ) among the remaining vertices ( ) to the vector ( ) and the above Another vertex in ( ) to the vector ( ) of the outer value ( ) if the sign is (+). The value of is either 0 or 1,
How to create a fingerprint template.
상기 지문 템플릿 생성 방법은 상기 지문 템플릿과 미리 저장되어 있는 복수의 지문 템플릿의 매칭 여부를 판단하는 단계를 더 포함하는,
지문 템플릿 생성 방법.In Article 6,
The above fingerprint template generation method further includes a step of determining whether the fingerprint template matches a plurality of fingerprint templates stored in advance.
How to create a fingerprint template.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR20210010153 | 2021-01-25 | ||
KR1020210010153 | 2021-01-25 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20220107959A KR20220107959A (en) | 2022-08-02 |
KR102747700B1 true KR102747700B1 (en) | 2024-12-31 |
Family
ID=82845847
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020220008091A Active KR102747700B1 (en) | 2021-01-25 | 2022-01-19 | Device and method for generating cancellable fingerprint template based on delauney triangulation using a feature that is robust against rotation |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102747700B1 (en) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060083430A1 (en) * | 2004-10-14 | 2006-04-20 | The Secretary Of State For The Home Department | Identifier comparision |
JP2008521109A (en) * | 2004-11-16 | 2008-06-19 | インターナショナル・ビジネス・マシーンズ・コーポレーション | Apparatus, method, program storage device, and computer program (fingerprint biometric machine) for representing biometrics |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102011023B1 (en) * | 2017-02-02 | 2019-08-14 | 고려대학교 산학협력단 | Fingerprint Registration and Authentication Method using Triple-Polar Minutiae |
-
2022
- 2022-01-19 KR KR1020220008091A patent/KR102747700B1/en active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060083430A1 (en) * | 2004-10-14 | 2006-04-20 | The Secretary Of State For The Home Department | Identifier comparision |
JP2008521109A (en) * | 2004-11-16 | 2008-06-19 | インターナショナル・ビジネス・マシーンズ・コーポレーション | Apparatus, method, program storage device, and computer program (fingerprint biometric machine) for representing biometrics |
Also Published As
Publication number | Publication date |
---|---|
KR20220107959A (en) | 2022-08-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Kaur et al. | Random distance method for generating unimodal and multimodal cancelable biometric features | |
JP4886371B2 (en) | Biometric authentication method and system | |
US9036876B2 (en) | Method and system for authenticating biometric data | |
Li et al. | Attacks via record multiplicity on cancelable biometrics templates | |
Gomez-Barrero et al. | Efficient software attack to multimodal biometric systems and its application to face and iris fusion | |
Wang et al. | An analysis of random projection for changeable and privacy-preserving biometric verification | |
KR100927596B1 (en) | Data protected pattern recognition method and apparatus | |
Sheng et al. | A biometric key generation method based on semisupervised data clustering | |
Walia et al. | Design and analysis of adaptive graph-based cancelable multi-biometrics approach | |
Khan et al. | Chaos and NDFT-based spread spectrum concealing of fingerprint-biometric data into audio signals | |
Belkhede et al. | Biometric mechanism for enhanced security of online transaction on Android system: A design approach | |
Sheng et al. | Template-free biometric-key generation by means of fuzzy genetic clustering | |
Lone et al. | A novel OTP based tripartite authentication scheme | |
US20200028686A1 (en) | Systems and methods for extending the domain of biometric template protection algorithms from integer-valued feature vectors to real-valued feature vectors | |
Baghel et al. | An enhanced fuzzy vault to secure the fingerprint templates | |
Ali et al. | A novel technique for fingerprint template security in biometric authentication systems | |
Bedad et al. | Multi-biometric template protection: an overview | |
Singla et al. | Performance Analysis of Authentication System: A Systematic Literature Review | |
Sharma et al. | Recent advancement in cancelable biometric for user recognition: a brief survey | |
Lee et al. | Adversarial attack vulnerability for multi‐biometric authentication system | |
Khallaf et al. | Implementation of quaternion mathematics for biometric security | |
Sheng et al. | Reliable and secure encryption key generation from fingerprints | |
KR102747700B1 (en) | Device and method for generating cancellable fingerprint template based on delauney triangulation using a feature that is robust against rotation | |
US11762969B1 (en) | Systems and methods for facilitating biometric recognition | |
Singh et al. | Comprehensive survey on cancelable biometrics with novel case study on finger dorsal template protection |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PA0109 | Patent application |
Patent event code: PA01091R01D Comment text: Patent Application Patent event date: 20220119 |
|
PA0201 | Request for examination | ||
PG1501 | Laying open of application | ||
E902 | Notification of reason for refusal | ||
PE0902 | Notice of grounds for rejection |
Comment text: Notification of reason for refusal Patent event date: 20240730 Patent event code: PE09021S01D |
|
E701 | Decision to grant or registration of patent right | ||
PE0701 | Decision of registration |
Patent event code: PE07011S01D Comment text: Decision to Grant Registration Patent event date: 20241128 |
|
GRNT | Written decision to grant | ||
PR0701 | Registration of establishment |
Comment text: Registration of Establishment Patent event date: 20241223 Patent event code: PR07011E01D |
|
PR1002 | Payment of registration fee |
Payment date: 20241224 End annual number: 3 Start annual number: 1 |
|
PG1601 | Publication of registration |