asp.net 虹软 人脸识别 实现刷脸住宿、刷脸签到、刷脸进入等
先看看效果图,我把demo改成自动运行了,暂时借用别人的图片:
最左侧的大图为选择上传的,
中间的小图是大图的脸,
右侧的大图是人脸文件夹中已经存在的,并且相似度较高的一张脸,也就是比对的结果。
先记录下思路,代码整理好再贴出来。
阿里云和腾讯都有人脸识别的接口,但是图片需要上传到他们的服务器,
并且,接口返回的不是我想要的东西,经过千辛万苦,终于找到了虹软,
http://www.arcsoft.com.cn/ai/arcface.html
开源就必须赞一个,并且支持自己搭建服务器,正是我需要的。
翻阅了太多的资料,把C++的基础都看了一点,demo老是各种错误,我都想改虹软的算法了
怎么可能的,他们的算法根本看不懂。
让demo正常跑起来的步骤:
1、去官网注册账号;
2、选择1:N的sdk包下载,建议选择x86的;
3、在vs里打开demo项目,把你下载的sdk保重的dll文件替换过去,用自己的key替换demo里的;
4、指定本地一个文件夹,demo需要保存人脸的图片和二进制数据的,设置user可写权限;
5、到这一步基本就能运行了,有问题再百度;
本来的想法是app上传图片到服务器,通过软件进行实时比对的,比对后,结果不好返回app了,换思路,
于是在demo 的基础上,改成了B/S直接比对,返回结果,一切顺利。
上传图片时出问题了,初始化引擎时引用的dll总是无法正确加载,
到处都贴3个解决方法,
DllImport会按照顺序自动去寻找的地方:
1、exe所在目录
2、System32目录
3、环境变量目录
反复尝试,无效!后来没办法,3种方法都设置,顺便在bin下也放了,再生成项目,可以了。
然后再把2和3的设置拿掉,一直能用,应该是只需要放在bin下就行了;
有的还说引用dll使用绝对路径,反正我也试了,不行!
最后还有个问题就是网站的程序池,务必开启32位应用程序。
以上是针对32位SDK的,如果你是64位SDK,请继续:
后来换成64位sdk,本地还好弄,把类库对应的改为64位即可,
服务器又是崩溃,最难的错误是:
System.BadImageFormatException: 试图加载格式不正确的程序。 (Exception from HRESULT: 0x8007000B)
at ArcFaceTest.AFD.AFDFunction.AFD_FSDK_InitialFaceEngine(String appId, String sdkKey, IntPtr pMem, Int32 lMemSize, IntPtr& pEngine, Int32 iOrientPriority, Int32 nScale, Int32 nMaxFaceNum)
后来试试安装了vcredist2013x64,点击这里下载,重启IIS,终于可以了。真心不容易。
怎么知道缺少文件的呢?
也是借助工具检测dll时发现的,工具下载地址
借鉴这位仁兄的帖子,才下载了上述环境文件的。
写在最后:
应该感谢这位大牛,把C++的转为C#的,我只是把C/S的转为B/S了,这个过程比较简单。
http://blog.csdn.net/feishixin/article/details/77097308
asp.net 虹软 人脸识别 实现刷脸住宿、刷脸签到、刷脸进入等的更多相关文章
- asp.net 虹软人脸识别sdk 释放内存
初始化时申请内存,用完记得释放,不然就会报“内存已满”的. 使用时: pMem = Marshal.AllocHGlobal(detectSize); 释放内存: Marshal.FreeHGloba ...
- 记C# 调用虹软人脸识别 那些坑
上一个东家是从事安防行业的,致力于人工智能领域,有自主人脸识别.步态识别的算法.C++同事比较称职有什么问题都可以第一时间反馈,并得到合理的处理,封装的DLL 是基于更高性能的GPU算法,可支持更多线 ...
- 虹软人脸识别SDK在网络摄像头中的实际应用
目前在人脸识别领域中,网络摄像头的使用很普遍,但接入网络摄像头和人脸识别SDK有一定门槛,在此篇中介绍过虹软人脸识别SDK的接入流程,本文着重介绍网络摄像头获取视频流并处理的流程(红色框内),以下内容 ...
- 虹软人脸识别 - Android Camera实时人脸追踪画框适配
在使用虹软人脸识别Android SDK的过程中 ,预览时一般都需要绘制人脸框,但是和PC平台相机应用不同,在Android平台相机进行应用开发还需要考虑前后置相机切换.设备横竖屏切换等情况,因此在人 ...
- 虹软人脸识别 - faceId及IR活体检测的更新介绍
虹软人脸识别 - faceId及IR活体检测的介绍 前几天虹软推出了 Android ArcFace 2.2版本的SDK,相比于2.1版本,2.2版本中的变化如下: VIDEO模式新增faceId(类 ...
- 虹软人脸识别 - faceId及IR活体检测的介绍
虹软人脸识别 - faceId及IR活体检测的介绍 前几天虹软推出了 Android ArcFace 2.2版本的SDK,相比于2.1版本,2.2版本中的变化如下: VIDEO模式新增faceId(类 ...
- 基于虹软人脸识别,实现RTMP直播推流追踪视频中所有人脸信息(C#)
前言 大家应该都知道几个很常见的例子,比如在张学友的演唱会,在安检通道检票时,通过人像识别系统成功识别捉了好多在逃人员,被称为逃犯克星:人行横道不遵守交通规则闯红灯的路人被人脸识别系统抓拍放在大屏上以 ...
- 虹软人脸识别SDK接入Milvus实现海量人脸快速检索
一.背景 人脸识别是近年来最热门的计算机视觉领域的应用之一,而且现在已经出现了非常多的人脸识别算法,如:DeepID.FaceNet.DeepFace等等.人脸识别被广泛应用于景区.客运.酒店.办公室 ...
- 关于虹软人脸识别SDK的接入
背景: 虹软的人脸识别还是不错的,在官方注册一个账号,成为开发者,下载SDK的jar包,在开发者中心,找一个demo就可以开始做了,安装里边的逻辑,先看理解代码,然后就可以控制代码,完成自己想要的功能 ...
随机推荐
- mac 添加环境变量(jmeter添加至环境变量中)
Mac系统的环境变量,加载顺序为:a. /etc/profileb. /etc/pathsc. ~/.bash_profiled. ~/.bash_logine. ~/.profilef. ~/.ba ...
- android模拟器访问PC本地接口
一般来讲PC本地接口是localhost:8080 而在安卓模拟器上用的话,他会映射模拟器本身的,也就是说,可以把模拟器也当成一个PC端来看待,这样会好理解点吧 而在模拟器上想要访问PC本地的loca ...
- 自定义Win10右键“发送到”菜单
打开Win10文件资源管理器窗口(打开“这台电脑”或任一文件夹即可),然后在资源管理器窗口的地址栏中输入 shell:sendto ,回车或点击地址栏右侧的“转到”箭头即可打开“SendTo(发送到) ...
- Debian setup the time
sudo gedit /etc/default/hwclock将 井HWCLOCKACCESS=yes 和 井HCTOSYS_DEVICE=rtc0 前的 井 符号去掉,再改 rtc0 为 rtc1 ...
- linux配制DNS服务器基本能功能
1.环境 Centos 6.5 bind 关闭防火墙和SELINUX 2.安装bind服务软件 yum -y install bind 3.配制主配制文件/etc/name.conf options ...
- 福州大学软件工程1916 | W班 作业成绩排名汇总
评分链接: 第一次作业-准备篇 https://www.cnblogs.com/deerCode/p/10527237.html 第二次作业-结对第一次-文献摘要热词统计原型设计 https://ww ...
- 目标URL存在跨站漏洞和目标URL存在http host头攻击漏洞处理方案
若需要学习技术文档共享(请关注群公告的内容)/讨论问题 请入QQ群:668345923 :若无法入群,请在您浏览文章下方留言,至于答复,这个看情况了 目录 HTTP协议详解 引言 一.HTTP协议详解 ...
- 文件下载的ie11兼容性优化
在 http://www.cnblogs.com/sunshine6/p/8296945.html 中有说关于前后端分离时如何实现文件下载的功能,但是过完年回来,同事告诉我这个方式在ie11上存在不兼 ...
- GHSpro文件上传
GHSpro文件上传 文章 GHSpro 文件上传 基本设计图 上传 上传方式的选择 采用iframe 的表单上传 ajaxfileupload <div id="step-2&quo ...
- jmeter java requst请求
https://wangym.iteye.com/blog/731729 http://www.cnblogs.com/yangxia-test/p/4019541.html https://blog ...