本程序用于指静脉图像的识别,需与MySQL结合使用。
一、设置MySQL
- MySQL用户名设为“root”,密码设为“123456”。
- 建立名为“FVRT”的数据库。
- 在“FVRT”数据库下通过下列语句建立名为“image”的数据表:
CREATE TABLE if NOT EXISTS image ( id int unsigned primary key auto_increment,imname text NOT NULL,imdata mediumblob NOT NULL, imcount INT NOT NULL,KEY(imname(15)))character set = utf8;
二、运行程序(1、2任意一种方法)
- 编译脚本
在您的IDE(建议Pycharm)中建立文件夹,将路径为“./源码”的源码拷入。因本程序用wxPython编写GUI以方便使用,故从路径为“./源码/FVRT_FrameStart.py”中的代码开始启动本程序界面,结合路径为“./指静脉样本”中附带的指静脉样本运行。 - 运行可执行文件
路径为“./exe.win-amd64-3.5.7z”的文件为可执行文件,结合路径为“./指静脉样本”中附带的指静脉样本运行。
- 名为“指静脉样本”的文件中包含采集的指静脉样本图像,文件名格式为“FXXYY.bmp”,其中文件名内的“XX”表示被采集指静脉图像的志愿者的身份编号,文件名内的“YY”表示对编号为“XX”的志愿者所采集到的指静脉图像的编号。图像资源大小为64(个志愿者)×15(张图/志愿者)。
- 核心算法在路径为“./源码/FVRT.py”的FVRT.py文件中。
该项目因是本人大学时所设计,尚不成熟,还有很多改进的余地:
- 图像搜索速度:没有利用搜索算法对指静脉样本的特征值进行整合,降低了程序运行的效率。
- 数据库设计:对MySQL一定要设置特定的用户名和密码才能执行,这给使用的人带来一些麻烦。
- UI架构选取:写界面时为了贪快只考虑wxPython的灵活性,没有注意到PyQt的文档更全面,给后续开发带来不便。
一、程序界面
二、指静脉图像匹配结果示例
Finger_Vein_Recognition为本人(bmxbmx3)参与2017年南京邮电大学大学生创新训练计划独自设计的作品,主要用于指静脉识别的实现,仅供学习研究之用,请勿用于非法用途,如有疑问欢迎提issue留言。