搜索
bottom↓
回复: 115

指纹识别算法源代码给做算法的学习,应用继续...

  [复制链接]

出0入0汤圆

发表于 2018-11-23 18:21:16 | 显示全部楼层 |阅读模式
本帖最后由 hwtechnew 于 2018-11-24 14:22 编辑

对算法感兴趣的朋友可以学习下算法,但是注意算法比较早,来源于互联网,不可以用于实际产品,仅学习参考
源代码与已编译的可执行文件参见后面跟帖3楼
算法原理分解与简化代码等相关算法资源参见后面跟帖37楼

算法应用与VS工程调试源码预计在后面100楼
实际产品图解与分析预计在后面150楼






本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

阿莫论坛20周年了!感谢大家的支持与爱护!!

月入3000的是反美的。收入3万是亲美的。收入30万是移民美国的。收入300万是取得绿卡后回国,教唆那些3000来反美的!

出0入0汤圆

发表于 2018-11-23 18:28:27 来自手机 | 显示全部楼层

出0入0汤圆

 楼主| 发表于 2018-11-23 18:28:38 | 显示全部楼层
本帖最后由 hwtechnew 于 2018-11-23 18:40 编辑

全套学习用指纹算法,可以在WIN 32位直接评估
图像处理:均方,增强,二值化,细化,提取特征。。。仅供学习参考

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

出0入0汤圆

发表于 2018-11-23 19:08:49 来自手机 | 显示全部楼层
感谢楼主分享

出0入0汤圆

 楼主| 发表于 2018-11-23 19:30:39 | 显示全部楼层
本帖最后由 hwtechnew 于 2018-11-24 10:18 编辑

到37楼再普及下更多生物识别技术

出0入0汤圆

发表于 2018-11-23 19:37:22 | 显示全部楼层
谢谢楼主。

出0入17汤圆

发表于 2018-11-23 19:53:21 来自手机 | 显示全部楼层
顶都30楼                 

出0入0汤圆

发表于 2018-11-23 20:06:24 | 显示全部楼层
感谢分享,有空学习下。

出0入4汤圆

发表于 2018-11-23 20:09:20 来自手机 | 显示全部楼层
谢谢分享,有时间学习下

出0入42汤圆

发表于 2018-11-23 20:26:46 来自手机 | 显示全部楼层
谢谢分享,学习一下

出0入0汤圆

发表于 2018-11-23 20:48:49 | 显示全部楼层
顶到30楼 等楼主普及知识

出250入8汤圆

发表于 2018-11-23 20:57:02 | 显示全部楼层
顶到30楼,学习下

出0入0汤圆

发表于 2018-11-23 20:57:43 | 显示全部楼层
谢谢分享,有时间学习下

出5入85汤圆

发表于 2018-11-23 20:59:52 | 显示全部楼层
顶到30楼,.......

出0入0汤圆

发表于 2018-11-23 21:01:23 | 显示全部楼层
顶一下.

出0入0汤圆

发表于 2018-11-23 21:04:05 | 显示全部楼层
厉害了,感谢分享

出0入0汤圆

发表于 2018-11-23 21:07:43 | 显示全部楼层
谢谢分享。

出0入0汤圆

发表于 2018-11-23 21:08:26 | 显示全部楼层
顶顶更健康,顶到30楼

出0入0汤圆

发表于 2018-11-23 21:44:30 | 显示全部楼层
顶到30楼,谢谢分享

出0入8汤圆

发表于 2018-11-23 21:52:46 来自手机 | 显示全部楼层
虽然用不到,还是顶一下,多谢楼主分享

出0入0汤圆

发表于 2018-11-23 22:04:33 | 显示全部楼层
顶到30楼,谢谢分享

出0入168汤圆

发表于 2018-11-23 22:05:46 | 显示全部楼层

顶到30楼,谢谢分享

出0入0汤圆

发表于 2018-11-23 22:38:08 | 显示全部楼层
顶到30楼,谢谢分享

出0入0汤圆

发表于 2018-11-23 22:42:53 | 显示全部楼层

出0入0汤圆

发表于 2018-11-23 22:45:21 来自手机 | 显示全部楼层
顶到30楼,谢谢分享

出10入10汤圆

发表于 2018-11-23 22:56:15 | 显示全部楼层
更多生物识别技术?  那肯定包括虹膜识别了。这个高端一点吧。

出0入0汤圆

发表于 2018-11-23 23:00:10 | 显示全部楼层

顶到30楼,谢谢分享

出0入0汤圆

发表于 2018-11-23 23:16:07 | 显示全部楼层
顶到30楼,谢谢

出200入0汤圆

发表于 2018-11-23 23:27:47 来自手机 | 显示全部楼层
顶顶还差2楼

出0入0汤圆

发表于 2018-11-23 23:29:46 来自手机 | 显示全部楼层
顶到30楼

出0入0汤圆

发表于 2018-11-24 00:04:01 | 显示全部楼层
坐等楼主开讲

出0入0汤圆

发表于 2018-11-24 02:27:36 来自手机 | 显示全部楼层
顶到30楼,谢谢

出0入0汤圆

发表于 2018-11-24 07:46:04 来自手机 | 显示全部楼层
谢谢分享,有时间学习下。

出0入0汤圆

发表于 2018-11-24 08:04:36 | 显示全部楼层
看了一下,不错,多谢楼主

出0入0汤圆

发表于 2018-11-24 08:10:51 | 显示全部楼层
不错,多谢楼主

出0入0汤圆

 楼主| 发表于 2018-11-24 08:43:14 | 显示全部楼层

早上起来一看,夜猫子真多,都30多楼了,



出0入0汤圆

 楼主| 发表于 2018-11-24 08:58:02 | 显示全部楼层
本帖最后由 hwtechnew 于 2018-11-24 18:49 编辑
yangyi 发表于 2018-11-23 22:56
更多生物识别技术?  那肯定包括虹膜识别了。这个高端一点吧。

生物识别技术有很多方式,但是万变不离其宗,把一套算法消化就不错了,其它都是扩展

随着计算机技术的发展,现在各种识别方式都出现了,几年前还看到一套耳朵识别(估计只能用于识别大象)

目前市场还流行人脸识别,这是必然的,因为这个所有人都容易理解
所有识别的核心还是图像处理,图像处理的核心还是算法,算法的核心还是数学模型,再顶尖我也不懂啦,可以一同交流

生物识别都是这么几个步骤:
1,采集样本
      A: 指纹: 光学折射采集(大部分考勤机),半导体电容采集(IPHONE)

      B:指静脉: 使用近红外光成像采集
      C:虹膜: 采用摄像头采集
      D:人脸: 采用摄像头采集

2,分析样本特征
        从采集的图像里提取特征,从采集到提取特征就是算法

      

这个就是前面提供的算法产生的
   算法基本原理示意图如下

白色标记就是指纹特征点,每个人的位置都不同的,分为分叉,交合,断点



下面是个简化的库,有兴趣同学可以把这个源码库套入自己工程编译

/* 图像对象 */
#include "image.h"

/* 浮点域对象 */
#include "floatfield.h"

/* 文件对象 */
#include "file.h"

/* 处理细节 */
#include "minutia.h"

/* 直方图对象 */
#include "histogram.h"

/* 图像处理操作 */
#include "imagemanip.h"

/* 匹配算法 */
#include "matching.h"
调用示例
        //memcpy(gImgData,ImgData,IMAGE_SIZE);
    FvsImage_t image;
    FvsImage_t mask;
    FvsFloatField_t direction;
    FvsFloatField_t frequency;
    FvsByte_t*    buffer;
    FvsMinutiaSet_t minutia;

  
    mask      = ImageCreate();
    image     = ImageCreate();
    direction = FloatFieldCreate();
    frequency = FloatFieldCreate();
     minutia   = MinutiaSetCreate(5000);//节点集合
    if (mask!=NULL && image!=NULL && direction!=NULL && frequency!=NULL)
    {
      
        FvsError_t ret = FvsOK;
        ret = ImageSetSize(image, my_bmp_high , my_bmp_row);
        if (ret==FvsOK)
        {
            buffer=ImageGetBuffer(image);
            memcpy(buffer,gImgData,my_bmp_high*my_bmp_row);

        }
        (void)ImageNormalize(image, 50,5000);//归一化
    //    memcpy(bmp_buf1,buffer,my_bmp_high*my_bmp_row);
        (void)ImageSoftenMean(image, 3);//软化
//    PSImgData2BMP(buffer,IMG_FILE2);
//        ShowImage(IMG_FILE2,2);
        (void)FingerprintGetDirection(image, direction, 7, 8);//计算指纹图像脊线的方向。
//PSImgData2BMP(buffer,IMG_FILE2);
//        ShowImage(IMG_FILE2,2);

        (void)FingerprintGetFrequency(image, direction, frequency);//指纹频率域
//PSImgData2BMP(buffer,IMG_FILE2);
//        ShowImage(IMG_FILE2,2);

    //    (void)FingerprintGetDirection(image, direction, 7, 8);//计算指纹图像脊线的方向。
        
      
        (void)FingerprintGetMask(image, direction, frequency, mask);//获取指纹图像的有效区域
//    PSImgData2BMP(buffer,IMG_FILE2);
//        ShowImage(IMG_FILE2,2);   
      
        (void)ImageEnhanceGabor(image, direction, frequency, mask, 4.0);//增强
        PSImgData2BMP(buffer,IMG_FILE2);
        ShowImage(IMG_FILE2,2);
      
        (void)ImageBinarize(image, (FvsByte_t)0x80);////二值化
        
    //    PSImgData2BMP(buffer,IMG_FILE2);
    //    ShowImage(IMG_FILE2,2);


        (void)ImageThinHitMiss(image);//细化
        PSImgData2BMP(buffer,IMG_FILE3);
        ShowImage(IMG_FILE3,3);
    }
////////////////////////////细化的////////////////////////////

3,比对。。。
      那我就不说,大家都明白


时间有限,未完待续...

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

出0入0汤圆

发表于 2018-11-24 09:01:54 | 显示全部楼层

感谢楼主分享

出0入0汤圆

发表于 2018-11-24 09:06:17 | 显示全部楼层
  指纹也是夕阳行业了,,,多被人脸识别替代了

出0入0汤圆

发表于 2018-11-24 09:49:54 | 显示全部楼层
虽然用不到,还是顶一下,多谢楼主分享

出0入0汤圆

发表于 2018-11-24 10:16:34 | 显示全部楼层
顶楼主一下~~~

出0入0汤圆

 楼主| 发表于 2018-11-24 11:26:41 | 显示全部楼层
本帖最后由 hwtechnew 于 2018-11-24 11:42 编辑
wkman 发表于 2018-11-24 09:06
指纹也是夕阳行业了,,,多被人脸识别替代了

人脸目前很流行,还是离不开傅里叶,高斯这些的,做这些我建议先消化基本理论知识

闲扯下

当前流行啥 : 物联网 AI VR 等等,说白了都是以前技术的积累发展到应用,物联网就是通信技术的应用,AI VR也就是自动控制的一些应用(仿生学)

出0入0汤圆

发表于 2018-11-24 11:32:34 | 显示全部楼层
学习一下,谢谢楼主

出0入0汤圆

发表于 2018-11-24 11:37:50 | 显示全部楼层
谢谢分享,有时间学习下

出0入0汤圆

发表于 2018-11-24 11:38:55 | 显示全部楼层
算法好,工资高啊,就是不是一般人弄的

出0入0汤圆

发表于 2018-11-24 11:48:07 | 显示全部楼层
做了多年的指纹的芯片测试,目前还没有接触到指纹识别算法,借此机会学习一下。
多谢楼主。

出0入0汤圆

 楼主| 发表于 2018-11-24 13:36:48 | 显示全部楼层
yixin1851 发表于 2018-11-24 11:48
做了多年的指纹的芯片测试,目前还没有接触到指纹识别算法,借此机会学习一下。
多谢楼主。 ...

仅用于学习,不能用于实际产品,实际产品的算法已经升级几代了

出0入0汤圆

发表于 2018-11-24 14:37:43 | 显示全部楼层
人脸识别算法厉害,应用场景很多

出0入0汤圆

发表于 2018-11-24 14:41:03 来自手机 | 显示全部楼层
谢谢分享

出0入0汤圆

 楼主| 发表于 2018-11-24 15:43:05 | 显示全部楼层
kap 发表于 2018-11-24 14:37
人脸识别算法厉害,应用场景很多

github上很多,PC用建议用那个OPENGV,资源多点

出0入4汤圆

发表于 2018-11-24 16:46:43 | 显示全部楼层
hwtechnew 发表于 2018-11-24 08:58
生物识别技术有很多方式,但是万变不离其宗,把一套算法消化就不错了,其它都是扩展

随着计算机技术的发 ...

这个还是特征点法,如果有的手指特征点比较少,比如大拇指头部,匹配数量肯定要少。算法里还得or 图像吧

出0入0汤圆

 楼主| 发表于 2018-11-24 18:09:55 | 显示全部楼层
clesun 发表于 2018-11-24 16:46
这个还是特征点法,如果有的手指特征点比较少,比如大拇指头部,匹配数量肯定要少。算法里还得or 图像吧 ...

这个学习用的是特征点方法,目前大部分指纹还是特征点法,手机指纹图像法多

出250入8汤圆

发表于 2018-11-24 20:53:49 | 显示全部楼层
前沿技术,顶顶

出0入0汤圆

发表于 2018-11-24 23:34:11 | 显示全部楼层
指纹是接触式认证方式,刷脸是非接触比较流行!

出100入101汤圆

发表于 2018-11-24 23:46:43 | 显示全部楼层
顶下大牛

出0入0汤圆

发表于 2018-11-25 06:55:38 来自手机 | 显示全部楼层
生物识别,牛

出0入0汤圆

发表于 2018-11-25 07:35:17 | 显示全部楼层
顶,加盖一楼,感谢分享!

出0入0汤圆

发表于 2018-11-25 11:30:00 来自手机 | 显示全部楼层
楼主是做指纹识别行业吗?现在有没有用上深度学习

出0入0汤圆

发表于 2018-11-25 13:46:15 | 显示全部楼层
顶顶顶顶顶顶顶顶

出0入0汤圆

发表于 2018-11-25 14:58:26 | 显示全部楼层
顶顶顶顶顶顶顶顶

出100入0汤圆

发表于 2018-11-25 20:53:24 | 显示全部楼层
这个必须顶

出0入0汤圆

发表于 2018-11-25 20:58:31 | 显示全部楼层
现在指静脉还是很多厂家在使用的,值得学习下

出0入0汤圆

发表于 2018-11-25 21:37:24 | 显示全部楼层

谢谢分享。

出0入0汤圆

发表于 2018-11-25 21:41:04 | 显示全部楼层
这个厉害,收藏!

出5入4汤圆

发表于 2018-11-26 08:42:26 | 显示全部楼层
mark,收藏了,谢谢楼主

出0入17汤圆

发表于 2018-11-26 10:32:06 | 显示全部楼层
楼主无私,顶一个~~~~~~~~~~~

出0入0汤圆

 楼主| 发表于 2018-11-26 11:33:22 | 显示全部楼层
pengchhui 发表于 2018-11-25 20:58
现在指静脉还是很多厂家在使用的,值得学习下

指静脉我接触到的都是用近红外成像采集的

出0入0汤圆

 楼主| 发表于 2018-11-26 11:35:15 | 显示全部楼层
本帖最后由 hwtechnew 于 2018-11-26 11:43 编辑
love_zjb 发表于 2018-11-25 11:30
楼主是做指纹识别行业吗?现在有没有用上深度学习


深度学习一般采用算法结合应用层,单纯算法很难实现,算法配合上层每次比对优化模板就是深度学习

出0入0汤圆

发表于 2018-11-26 11:40:00 | 显示全部楼层
能否防假体,识别成功率有多高

出0入0汤圆

发表于 2018-11-26 11:53:19 | 显示全部楼层
顶,持续关注帖子

出0入0汤圆

 楼主| 发表于 2018-11-26 12:46:23 | 显示全部楼层
本帖最后由 hwtechnew 于 2018-11-26 12:52 编辑
fengyuxiaoxiao 发表于 2018-11-26 11:40
能否防假体,识别成功率有多高

我这么认为:理论上成像系统很难防假体,
人脸,指纹,指静脉,手掌 都应该属于成像系统,对于授权复制假体,估计所有生物识别方法都可能攻破,

我也曾看到不少人说啥活体,什么半导体是活体,还有采集血氧的,行业热闹,但我不这么认为,半导体采集用个导电胶复制不就可以了,血氧,谁不都有血氧
有人说指静脉是采集红细胞成像,是活体,通过原理分析,近红外反射,什么能反射近红外就可以成像,就可以造假
人脸那就更不用说活体了

出0入0汤圆

发表于 2018-11-26 14:22:12 | 显示全部楼层
感谢开源

出0入0汤圆

发表于 2018-11-26 15:23:45 | 显示全部楼层
hwtechnew 发表于 2018-11-26 12:46
我这么认为:理论上成像系统很难防假体,
人脸,指纹,指静脉,手掌 都应该属于成像系统,对于授权复制假 ...

对于这种识别技术要想完全安全是不可能的,一般的实际应用来说就主要从体验角度去作对比,
在保证一定的安全的前提下,识别错误率太高也不行,输入很多次才能识别到

出0入0汤圆

发表于 2018-11-26 15:49:22 | 显示全部楼层
fengyuxiaoxiao 发表于 2018-11-26 15:23
对于这种识别技术要想完全安全是不可能的,一般的实际应用来说就主要从体验角度去作对比,
在保证一定的 ...

其实现在很多产品为了体验好点,都适当的降低识别率,提高通过率。

出0入0汤圆

发表于 2018-11-26 17:58:32 | 显示全部楼层
跟着热点走,有希望。
抽时间学习学习。

出0入0汤圆

发表于 2018-11-26 19:02:12 来自手机 | 显示全部楼层
厉害,人工智能下一个热点!

出0入0汤圆

 楼主| 发表于 2018-11-27 08:30:44 | 显示全部楼层
tangmintm8013TM 发表于 2018-11-26 19:02
厉害,人工智能下一个热点!

只有这条道路,只不过是以前大家不这么叫

出5入10汤圆

发表于 2018-11-27 08:35:15 | 显示全部楼层
顶顶

出90入0汤圆

发表于 2018-11-27 09:12:59 | 显示全部楼层
这意思是大家要磊楼吗?那我就添一块砖

出0入0汤圆

发表于 2018-11-27 09:17:25 | 显示全部楼层
这个一定要顶

出0入0汤圆

发表于 2018-11-27 15:07:30 来自手机 | 显示全部楼层
加一楼,顶起来看调试

出0入0汤圆

发表于 2018-11-27 15:13:00 | 显示全部楼层
顶一下,溱一下热闹

出0入0汤圆

 楼主| 发表于 2018-11-27 20:46:04 | 显示全部楼层
本帖最后由 hwtechnew 于 2018-11-27 20:50 编辑
hkjabcd 发表于 2018-11-27 15:07
加一楼,顶起来看调试


VS调试哟,采用VC打开BMP格式采集图片,来逐步调试,不是在单片机上调试,单片机上调试目前都是不开放的,我也没这种全套的,只有库的没价值

出0入0汤圆

发表于 2018-11-27 22:33:16 | 显示全部楼层
hwtechnew 发表于 2018-11-27 20:46
VS调试哟,采用VC打开BMP格式采集图片,来逐步调试,不是在单片机上调试,单片机上调试目前都是不 ...

噢,单片机采集指纹,VC图像处理?

出0入0汤圆

发表于 2018-11-28 14:26:56 | 显示全部楼层
顶一顶,太高深

出0入0汤圆

发表于 2018-11-29 18:00:10 | 显示全部楼层
等楼主更多经验分享,算法一直是电工的弱项。

出0入0汤圆

发表于 2018-12-9 12:36:24 | 显示全部楼层
等待更多分享

出0入0汤圆

 楼主| 发表于 2018-12-18 09:06:12 | 显示全部楼层
本帖最后由 hwtechnew 于 2018-12-18 20:25 编辑

抢到88楼啦,那就在此楼开始放毒

该代码可以用VC编译
PC可编译运行全源码学习用,输入文件格式为BMP文件

第三方算法评估版本,需要硬件支持,算法在硬件

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

出0入0汤圆

发表于 2018-12-18 11:45:59 | 显示全部楼层
mark  有空研究下

出0入0汤圆

发表于 2018-12-18 20:09:01 | 显示全部楼层
路过凑个热闹。

出0入0汤圆

发表于 2018-12-18 20:10:15 | 显示全部楼层
期待科普

出0入0汤圆

发表于 2018-12-18 20:16:42 | 显示全部楼层
顶一顶,太高深

出0入0汤圆

发表于 2018-12-18 21:22:49 | 显示全部楼层

等待更多分享

出0入0汤圆

 楼主| 发表于 2018-12-18 21:45:49 来自手机 | 显示全部楼层
本帖最后由 hwtechnew 于 2018-12-19 20:12 编辑

算法源码仅供学习,消化的可以继续改下开源给大家学习

对算法无兴趣,对指纹应用感兴趣的资料在下面这个链接的51楼
https://www.amobbs.com/thread-5704108-1-1.html

出0入0汤圆

发表于 2018-12-25 18:12:35 | 显示全部楼层
学习了,标记一下。指纹识别算法学习

出0入4汤圆

发表于 2018-12-26 10:31:49 | 显示全部楼层
源代码缺少文件?  fatal error C1083: Cannot open include file: 'matching.h': No such file or directory

出0入0汤圆

发表于 2018-12-26 10:35:20 | 显示全部楼层
谢谢楼主分享

出0入0汤圆

 楼主| 发表于 2018-12-26 11:19:38 | 显示全部楼层
本帖最后由 hwtechnew 于 2018-12-26 11:24 编辑
qinxg 发表于 2018-12-26 10:31
源代码缺少文件?  fatal error C1083: Cannot open include file: 'matching.h': No such file or directo ...


看下工程目录,应该是目录没对吧 ,您用VS哪个版本?

出0入0汤圆

发表于 2018-12-26 23:05:25 | 显示全部楼层
可以学到很多图像算法的知识,谢谢了

出0入0汤圆

发表于 2018-12-27 08:41:14 | 显示全部楼层
101??高层了...召唤楼主!
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-4-26 15:42

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表