环境:
win7 以上 VS2013 以上
sdk 版本: ArcFace v2.0
x86 x64 平台 Debug,Release 配置都已通过编译
下载地址:
配置过程:
1. 到虹软官网下载 SDK2.0 版本, 点击访问下载
2. 解压下载的 x86 或 x64 的 zip 包, 本 Demo 以 x64 为例
3. 选择平台, 如:, 将 libarcsoft_face.dll 和 libarcsoft_face_engine.dll 放到 bin\x64\Debug 下
4. 修改工程下 App.config 配置文件中的 APP_ID 和对应的 SDKKEY64 的值
5. 点击启动或者 F5 启动;
6. 其他详细信息请阅读项目中 doc 目录下的说明文档;
常见问题:
1. 后引擎初始化失败
(1) 请选择对应的平台, 如 x64,x86
(2) 删除 bin 下面对应的 asf_install.dat,freesdk_132512.dat;
(3) 请确保 App.config 下的 appid, 和 appkey 与当前 sdk 一一对应.
2.SDK 支持那些格式的图片人脸检测?
目前 SDK 支持的图片格式有 jpg,jpeg,PNG,bmp 等.
3. 使用人脸检测功能对图片大小有要求吗?
推荐的图片大小最大不要超过 2M, 因为图片过大会使人脸检测的效率不理想, 当然图片也不宜过小, 否则会导致无法检测到人脸.
4. 使用人脸识别引擎提取到的人脸特征信息是什么?
人脸特征信息是从图片中的人脸上提取的人脸特征点, 是 byte[] 数组格式.
5.SDK 人脸比对的阈值设为多少合适?
推荐值为 0.8, 用户可根据不同场景适当调整阈值.
6. 可不可以将人脸特征信息保存起来, 等需要进行人脸比对的时候直接拿保存好的人脸特征进行比对?
可以, 当人脸个数比较多时推荐先存储起来, 在使用时直接进行比对, 这样可以大大提高比对效率. 存入数据库时, 请以 Blob 的格式进行存储, 不能以 string 或其他格式存储.
7. 在. Net 项目中出现堆栈溢出问题, 如何解决?
.Net 平台设置的默认堆栈大小为 256KB,SDK 中需要的大小为 512KB 以上, 推荐调整堆栈的方法为:
- new Thread(new ThreadStart(delegate {
- ASF_MultiFaceInfo multiFaceInfo = FaceUtil.DetectFace(pEngine, imageInfo);
- }), 1024 * 512).Start();
8.X86 模式下批量注册人脸有内存溢出或图片空指针
请增加虚拟内存或每次批量注册人脸控制在 20 张图片范围内
9. 图片中有人脸, 但是检测时未检测到人脸
(1) 请调整 detectFaceScaleVal 的值;
(2) 请确认图片的宽度是否为 4 的倍数;
(3) 请确认图片是否通过 ImageUtil.ReadBMP 方法进行数据调整.
来源: https://www.cnblogs.com/bodaren/p/10334767.html