指纹识别经典图书、开源算法库、开源数据库

news2024/12/28 18:57:30

目录

1. 指纹识别书籍

1.1《精通Visual C++指纹模式识别系统算法及实现》

1.2《Handbook of Fingerprint Recognition》

2. 指纹识别开源算法库

2.1 Hands on Fingerprint Recognition with OpenCV and Python

2.2 NIST Biometric Image Software (NBIS)

3. 指纹识别开源数据库

3.1 CASIA-FingerprintV5

3.2 NIST Special Database

3.3 FVC Database


1. 指纹识别书籍

1.1《精通Visual C++指纹模式识别系统算法及实现》

        本书免费公开了Visual C++指纹模式识别系统源代码,带领读者一步一步亲手制作一个指纹识别系统,深度剖析真实的行业应用案例。 本书适合指纹识别技术的初学者、指纹识别电子产品工程师以及打算投身指纹识别领域的创业者阅读。

        本书分为5篇,主要内容如下:

        第一篇主要讲解指纹模式识别系统入门知识,包括第1~3章。学完本篇,可结合本书附带光盘代码,学习指纹模式识别开发环境的系统演示层,并自己制作Visual C++指纹模式识别演示系统。

        第二篇主要讲解指纹模式识别系统算法,包括第4~6章,是本书的基础。学完本篇,可结合本书附带光盘代码,学习指纹模式识别开发环境的系统算法层,并练习构建自己的Visual C++指纹模式识别算法系统。

        第三篇主要讲解如何亲手打造指纹模式识别系统,包括第7章和第8章。学完本篇,可结合本书附带光盘代码,学习指纹模式识别开发环境的系统构建层,并练习构建自己的Visual C++指纹模式识别系统。

        第四篇主要讲解指纹模式识别应用技术基础,包括第9章和第10章。学完本篇,可结合本书附带光盘代码,学习指纹模式识别开发环境的系统开发层,并练习构建自己的Visual C++指纹模式识别系统应用开发平台。

        第五篇主要讲解指纹电子产品技术与创业,包括第11~13章。学完本篇,可结合本书附带光盘代码,学习指纹模式识别开发环境的系统开发层,并练习构建自己的Visual C++指纹模式识别系统电子产品开发系统,掌握利用数字指纹技术的创业手段。

1.2《Handbook of Fingerprint Recognition》

        《Handbook of Fingerprint Recognition》(2003年第一版,2009年第二版,2022年第三版)是指纹领域的必读书。它的谷歌学术引用超过6000次,在指纹识别领域是绝无仅有的。

        本书共9章:

        第1章介绍了生物特征和指纹系统,并对指纹及其在法医和民用识别应用中的应用进行了历史评述。在接下来的章节中详细介绍的所有主题都将在这里简要介绍。这将为读者提供对本书各个章节的概述,并让她选择个性化的阅读路径。还讨论了其他非技术性但重要的主题,如“应用程序”和“隐私问题”。一些图像处理、模式识别和机器学习技术的背景知识对于充分理解本书的大部分章节是必要的。为了方便没有这种背景的读者,在第1章的末尾提供了关于各种主题的基本阅读资料。

        第2章综述了现有的指纹采集技术:从传统的“墨水技术”到基于光学、电容、热和超声技术的实时扫描传感。本章还讨论了决定指纹图像质量的因素,并介绍了在手机中实现指纹传感器显示集成的技术进步。

        第3-5章分别对指纹特征提取、匹配和分类/索引进行了深入研究。现有的技术被分为不同的类别,以引导读者通过文献中提出的大量方法。详细解释了主要方法,以帮助该领域的初学者和从业者理解构建指纹系统所使用的方法。

        第6-8章专门讨论了三个前沿主题:潜在指纹识别、合成指纹生成和指纹唯一性。深度学习方法使潜在指纹的自动处理成为现实,从而开发了新一代AFIS。在指纹识别算法的设计、训练和基准测试中,合成指纹已被公认为真实指纹的合理替代品;这种方法对于处理对使用个人身份信息(PII)的新限制(例如,欧盟通用数据保护条例(GDPR))特别有用,PII被定义为任何可能识别特定个人的数据。支持指纹唯一性的科学证据越来越多,特别是在法医应用中,这引起了人们对设计准确指纹唯一性模型的兴趣。

        最后,第9章讨论了在构建安全指纹识别系统中有用的安全问题和对策技术。

2. 指纹识别开源算法库

2.1 Hands on Fingerprint Recognition with OpenCV and Python

        2021生物特征识别冬令营(IAPR/IEEE Winter School on Biometrics 2021),意大利博洛尼亚大学的Raffaele Cappelli教授深入浅出地展示了如何运用Python+OpenCV进行指纹识别的每一个步骤的原理及对应代码实现。

        文档及代码:《Hands on Fingerprint Recognition with OpenCV and Python》

        Raffaele Cappelli教授,因在指纹分类、识别、合成生成和性能评估方面的贡献而闻名,是FVC-onGoing大赛的组织者之一,是经典指纹识别领域图书《Handbook of Fingerprint Recognition》的作者之一。

2.2 NIST Biometric Image Software (NBIS)

        NIST生物识别图像软件(NBIS)由美国国家标准与技术研究所(NIST)为联邦调查局(FBI)和国土安全部(DHS)开发。最新NBIS发行版为NBIS : Release 5.0.0 ,包含用于指纹识别处理和分析的C源代码。

        官网:NIST Biometric Image Software (NBIS) | NIST

        NBIS提供了指纹识别处理和分析的8个方面C源代码:

        1. 《 ANSI/NIST-ITL 1-2007 (AN2K) "Data Format for the Interchange of Fingerprint, Facial, Scar Mark & Tattoo (SMT) Information"》标准的代码实现。

        2. 指纹图像质量NFIQ(NIST Fingerprint Image Quality)评价算法的代码实现,更高质量的指纹图像通过匹配算法能够产生更好的性能。

        3. 一种基于神经网络的指纹分类算法PCASYS的代码实现,该算法自动将指纹图像分类为拱形、左环或右环、疤痕、帐篷拱或螺纹。

        4. 一种指纹特征提取算法MINDTCT的代码实现,基于指纹端点和叉点的细节点特征提取算法。

        5. 图像处理辅助工具集IMGTOOLS的代码实现,包括有损和无损的JPEG编解码、WSQ编解码的代码实现。

        6. 一种指纹匹配算法BOZORTH3的代码实现,它是一种基于细节的指纹匹配算法,将执行一对一和一对多匹配操作,接受由MINDTCT算法生成的细节。

        7. 一种指纹分割算法NFSEG的代码实现,它将实现四指指纹分割成单独的指纹图像,或者可以用来从滚动的指纹图像中去除空白。

        8.一种指纹图像的光谱度量的代码实现,为指纹质量的粗略测量提供参考。

3. 指纹识别开源数据库

3.1 CASIA-FingerprintV5

        CASIA指纹图像数据库5.0版(或CASIA-FingerprintV5)包含500名受试者的20000张指纹图像。CASIA-FingerprintV5的指纹图像是使用URU4000指纹传感器在一个场景中捕获的。CASIA-FingerprintV5的志愿者包括研究生、工人、服务员等。每个志愿者贡献了自己八根手指(左手和右手拇指/第二根/第三根/第四根手指)的40张指纹图像,即每根手指5张。志愿者被要求在不同程度的压力下转动手指,以产生显著的类内变化。所有指纹图像均为8位灰度级BMP文件,图像分辨率为328*356。

        官网:BIT (idealtest.org)

impression type

Sensor Type

Image Size

Set

Resolution

Plain optical

URU4000

328x356

4000x5

512 dpi

3.2 NIST Special Database

        官网:Biometric Special Databases and Software | NIST

NIST Special Database 4(sd04)

impression type

Sensor Type

Image Size

Set

Resolution

roll

/

512x512

2000x2

500dpi

NIST Special Database 9(sd09)

impression type

Sensor Type

Image Size

Set

Resolution

roll

/

832x512

13500x2

/

 NIST Special Database 300(sd300a)

impression type

Sensor Type

Image Size

Set

Resolution

Rolled scanning

inked fingerprint arrest cards

/

8871x1

500 dpi

Plain scanning

inked fingerprint arrest cards

/

8787x1

500 dpi

NIST Special Database 301(SD301a)

impression type

Sensor Type

Image Size

Set

Resolution

A

10 rolled optical

Crossmatch Guardian 300

800x750

240x1

500 dpi

B

10 rolled optical

Crossmatch Guardian 300

800x750

240x1

500 dpi

C

4411 plain optical

Crossmatch Guardian 300

/

240x1

500 dpi

D

10 plain solid-state

Crossmatch EikonTouch 710

257x354

230x1

500 dpi

E

10 plain optical

Futronic FS88

320x480

240x1

500 dpi

F

4411plain solid-state

Jenetric LIVETOUCH QUATTRO

/

93x1

500 dpi

G

442 plain solid-state

Jenetric LIVETOUCH QUATTRO

/

215x1

500 dpi

H

442 plain optical

Crossmatch LSCAN 1000P

/

216x1

500 dpi

J

10 plain optical

HID Lumidigm V302

352x544

240x1

500 dpi

K

442 plain touch-free

IDEMIA MorphoWave Desktop

/

240x1

500 dpi

L

Right slap touch-free

Advanced Optical Systems ANDI OTG3.0

308x425

88x1

500 dpi

M

10 plain optical

Crossmatch Guardian 200

800x748

240x1

500 dpi

N

10 plain optical

HID Lumidigm V302

272x400

240x1

500 dpi

P

44 plain touch-free

Samsung Galaxy S6

/

360x1

unknown

NIST Special Database 302(sd302a)

impression type

Sensor Type

Image Size

Set

Resolution

R

442 slap optical

Crossmatch L SCAN 1000PX

/

2000x1

500dpi

S

442 slap optical

Crossmatch Guardian USB

/

500dpi

U

Roll optical

Crossmatch L SCAN 1000PX

800x750

2000x1

500dpi

V

Roll optical

Crossmatch L SCAN 1000PX

800x750

2000x1

500dpi

NIST Special Database 302(sd302d)

impression type

Sensor Type

Image Size

Set

Resolution

K

plain optical

Michigan State University RaspiReader

248x319

930x1

500dpi

L

plain touch-free

Advanced Optical Systems (AOS)

/

1953x1

500dpi

M

plain solid-state

Crossmatch EikonTouch 710

256x360

1979x1

500dpi

P

plain optical

Futronic FS88

320x480

279x1

500dpi

3.3 FVC Database

        官网:Biometric Special Databases and Software | NIST (unibo.it)

FVC2000

Sensor Type

Image Size

Set A

Set B

Resolution

DB1

Low-cost Optical Sensor

300x300

100x8

10x8

500 dpi

DB2

Low-cost Capacitive Sensor

256x364

100x8

10x8

500 dpi

DB3

Optical Sensor

448x478

100x8

10x8

500 dpi

DB4

Synthetic Generator

240x320

100x8

10x8

about 500 dpi

FVC2002

Sensor Type

Image Size

Set A

Set B

Resolution

DB1

Optical Sensor

388x374

100x8

10x8

500 dpi

DB2

Optical Sensor

296x560

100x8

10x8

569 dpi

DB3

Capacitive Sensor

300x300

100x8

10x8

500 dpi

DB4

SFinGe v2.51

288x384

100x8

10x8

about 500 dpi

FVC2004

Sensor Type

Image Size

Set A

Set B

Resolution

DB1

Optical Sensor

640x480

100x8

10x8

500 dpi

DB2

Optical Sensor

328x364

100x8

10x8

500 dpi

DB3

Thermal sweeping Sensor

300x480

100x8

10x8

512 dpi

DB4

SFinGe v3.0

288x384

100x8

10x8

about 500 dpi

FVC2006

Sensor Type

Image Size

Set A

Set B

Resolution

DB1

Electric Field sensor

96x96

140x12

10x12

250 dpi

DB2

Optical Sensor

400x560

140x12

10x12

569 dpi

DB3

Thermal sweeping Sensor

400x500

140x12

10x12

500 dpi

DB4

SFinGe v3.0

288x384

140x12

10x12

about 500 dpi

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1704666.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

QQ名片满级会员装x助手HTML源码

源码介绍 QQ名片满级会员展示生成HTML源码,源码由HTMLCSSJS组成,双击html文件可以本地运行效果,也可以上传到服务器里面,保存素材去选择QQ个性名片-选择大图模板-把图上传照片墙即可 源码效果 源码下载 蓝奏云:http…

Golang | Leetcode Golang题解之第116题填充每个节点的下一个右侧节点指针

题目: 题解: func connect(root *Node) *Node {if root nil {return root}// 每次循环从该层的最左侧节点开始for leftmost : root; leftmost.Left ! nil; leftmost leftmost.Left {// 通过 Next 遍历这一层节点,为下一层的节点更新 Next …

VS Code开发Python配置和使用教程

在Visual Studio Code (VSCode) 中配置和使用Python进行开发是一个相对直接的过程,下面是一份简明的指南,帮助你从零开始设置环境: 1. 安装Visual Studio Code 首先,确保你已经安装了Visual Studio Code。如果还没有安装&#x…

入门编程,一定要从C语言开始吗?

入门编程并不一定非得从C语言开始。我这里有一套编程入门教程,不仅包含了详细的视频讲解,项目实战。如果你渴望学习编程,不妨点个关注,给个评论222,私信22,我在后台发给你。 C语言在过去是一种常见的入门语…

《python编程从入门到实践》day40

# 昨日知识点回顾 编辑条目及创建用户账户 暂没能解决bug: The view learning_logs.views.edit_entry didnt return an HttpResponse object. It returned None instead.# 今日知识点学习 19.2.5 注销 提供让用户注销的途径 1.在base.html中添加注销链接 …

基于OrangePi AIpro的后端服务器构建

一. OrangePi AIpro简介 1.1 OrangePi AIpro外观 1.2 OrangePi AIpro配置 OrangePi AIpro(8T)采用昇腾AI技术路线,具体为4核64位处理器AI处理器,集成图形处理器,支持8TOPS AI算力,拥有8GB/16GB LPDDR4X,可以外接32GB…

边境牧羊犬优化算法,原理详解,MATLAB代码免费获取

边境牧羊犬优化算法(Border Collie Optimization,BCO)是一种受自然启发的群智能优化算法。该算法是通过模仿边境牧羊犬的放牧风格来开发的。本文成功地采用了边境牧羊犬从正面和侧面的独特放牧风格。在这个算法中,整个种群被分成两…

实现 Vue 标签页切换效果的组件开发

在本次开发中,我们将实现一个 Vue 组件,用于展示和切换标签页。 背景有移动动画效果 该组件将具有以下功能: 标签页左右滚动点击标签页切换内容关闭指定标签页支持多种标签页风格 以下是实现该组件的具体步骤: 创建 Vue 组件…

esp8266的rtos和nonos区别

https://bbs.espressif.com/viewtopic.php?t75242#p100294 https://blog.csdn.net/ydogg/article/details/72598752

Function Calling学习

Function Calling第一篇 Agent:AI 主动提要求Function Calling:AI 要求执行某个函数场景举例:明天上班是否要带伞?AI反过来问你,明天天气怎么样? Function Calling 的基本流程 Function Calling 完整的官…

【传知代码】私人订制词云图-论文复现

文章目录 概述原理介绍核心逻辑1、选取需要解析的txt文档2、选取背景图明确形状3、配置停用词4、创建分词词典,主要解决新的网络热词、专有名词等不识别问题 技巧1、中文乱码问题,使用的时候指定使用的文字字体2、更换背景图3、词库下载以及格式转换方式…

数组单调栈-901. 股票价格跨度、leetcode

单调栈作为一种数据结构在求解类递增、递减方面的题目中有较为广泛的应用,在以往的leetcode中所见到的相关单调栈的题目均为单一元素,今天刷到901题目时,想到了将数组元素作为单调栈中元素的方法进行求解。 题目链接及描述 901. 股票价格跨…

C++ | Leetcode C++题解之第108题将有序数组转换为二叉搜索树

题目&#xff1a; 题解&#xff1a; class Solution { public:TreeNode* sortedArrayToBST(vector<int>& nums) {return helper(nums, 0, nums.size() - 1);}TreeNode* helper(vector<int>& nums, int left, int right) {if (left > right) {return nu…

Python 全栈体系【四阶】(五十四)

第五章 深度学习 十二、光学字符识别&#xff08;OCR&#xff09; 3. 文字识别技术 3.1 CRNNCTC(2015) CRNN&#xff08;Convolutional Recurrent Neural Network&#xff09;即卷积递归神经网络&#xff0c;是DCNN和RNN的组合&#xff0c;专门用于识别图像中的序列式对象。…

计算机组成原理易混淆知识点总结(持续更新)

目录 1.机器字长&#xff0c;存储字长与指令字长 2.指令周期,机器周期,时钟周期 3.CPI,IPS,MIPS 4.翻译程序和汇编程序 5.计算机体系结构和计算机组成的区别和联系 6.基准程序执行得越快说明机器的性能越好吗? 1.机器字长&#xff0c;存储字长与指令字长 不同的机器三者…

VMware ESXi 兼容性查询

官网兼容性查询地址&#xff1a;https://www.vmware.com/resources/compatibility/search.php

Android Studio自带Profiler工具进行CPU资源及线程问题分析步骤

1、运行需要检测CPU资源问题与线程问题的程序 这里以“com.example.opengltest”程序为例。 2、点击Profiler按钮 3、点击SESIONS ""号按钮选择设备&#xff0c;选择对应设备下的应用或进程 4、双击CPU区块 5、选择Trace config选项&#xff0c;选择“Java/Kotli…

Reader类的使用方法和技巧,你掌握了吗?

哈喽&#xff0c;各位小伙伴们&#xff0c;你们好呀&#xff0c;我是喵手。运营社区&#xff1a;C站/掘金/腾讯云&#xff1b;欢迎大家常来逛逛 今天我要给大家分享一些自己日常学习到的一些知识点&#xff0c;并以文字的形式跟大家一起交流&#xff0c;互相学习&#xff0c;一…

raft 协议和etcd实战

文章目录 leader选举日志复制安全性preVote 阶段preVote 投票阶段preVote阶段的作用 集群成员变更etcd raft实践etcd raft写流程时序图问题如何保障消息的幂等性&#xff0c;不能重复提交如何保障消息的原子性&#xff0c;不能提交一半raft wal日志的作用是MVCC方式的作用etcd …

瑞吉外卖项目学习笔记(一)

项目展示&#xff1a; 一、软件开发整体介绍 1.1 软件开发流程 作为软件开发人员&#xff0c;我们的主要工作是在 编码阶段 1.2 角色分工 1.3 软件环境 二、瑞吉外面项目介绍 2.1 项目介绍 系统管理后台页面&#xff1a; 移动端页面&#xff1a; 2.2 产品原型展示 产品原型是…