虹软人脸识别SDK之Java版,支持SDK 1.1+,以及当前最新版本2.0,滴滴,抓紧上车!

JDK SDK Win release license status

前言

由于业务需求,最近跟人脸识别杠上了,本以为虹软提供的SDK是那种面向开发语言的,结果是一堆dll······像我这样的Java猿突然就感觉整个人都不好了;近期赶上了SDK2.0的升级,在官方论坛、Google、百度、QQ等等的帮助下,爬过了一个又一个坑,终于搞定了!噗!回过头来发现不少伙伴们都像我当初一样迷茫,So,我回来拯救世界了~

后更:刚写了没多久,虹软SDK的Java版Demo就出来了…

注意

本项目需要lombok的支持 虹软官方分为“人证SDK”、“活体检测”和“ArcFace”三种,本项目使用的是“ArcFace” Windows 32位、64位指的是JDK,并不是Windows操作系统的位数 master分支为最新的SDK 2.0版本,1.x的版本实现请查看1.x分支(1.x实现来自于官方论坛Demo) 本项目实现了对SDK的轻度封装,且为单线程模式,多线程情况下尚未测试,放过可怜的孩子吧…

功能特点 对SDK接口进行了二次封装,所有操作只需要一个简单的工具类就ojbk,用起来爽的一批~

激活引擎 初始化引擎 检测人脸 提取特征值 对比特征值 年龄/性别/角度检测预处理 获取年龄 获取性别 获取3D角度 获取引擎版本 销毁引擎 快速开始

安装项目

git clone https://github.com/jastar-wang/arcface.git 然后将项目导入到Eclipse或IDEA中并进行maven update

下载DLL

登录虹软官方网站,下载ArcFace 2.0的SDK,并将libarcsoft_face.dll和libarcsoft_face_engine.dll两个文件粘贴到src/test/resources目录下

配置KEY

将官网获取到的SDK激活码填入到com.arcsoft.face.util.ConfUtil类的对应常量中

测试

打开com.arcsoft.face.EngineTest类,运行单元测试即可

参考资料

虹软SDK的常见问题指南 虹软官方问答指导集锦 常见问题

(1)SDK有效期? 答:SDK激活码有效期为一年,到期之后需要重新申请激活码,并且重新下载SDK,SDK与激活码应当匹配。

(2)SDK 2.0首次使用? 答:2.0版本首次使用需要联网激活,激活后会在程序运行目录下生成几个“.dat”文件(asf_install.dat,freesdk_数字.dat),之后则可以离线使用;若更换了机器设备,需要删除这些“.dat”文件,并重新联网激活。

(3)SDK 2.0特征值? 答:1.x的版本特征值大小为20k左右,2.0版本算法做了大幅优化,缩小到了1k,且长度固定为1023 byte。

(4)SDK 2.0对于图片的要求? 答:图片的宽度必须是4的整数倍;当图片为BGR模式时,高度需要是2的整数倍。

(5)SDK 2.0的阈值? 答:由于2.0的算法做了优化,匹配度相对较高,推荐阈值设置为0.8(1.x版本为0.6),具体根据实际场景上下调整。

(6)SDK 2.0提取特征值? 答:2.0版本对内存做了优化,会反复使用同一个特征值对象的内存,所以提取特征值之后需要对特征值对象重新copy,否则SDK再进行提取时会覆盖了原特征值。

(7)关于多线程使用? 答:多线程使用场景下,每个线程都需要初始化一个引擎。

(8)如何加载图片? 答:可以使用“ImageIO.read()方式读取图片,但该方式读取某些类型的图片时,不会正确读取ICC的信息,因此会在写出图片时生成一层红色蒙版(如果不写出图片那就无所谓)。有两种解决方案:(1)参照EngineTest.testAll()方法中的加载方式,这种方式仅限于Windows下使用,因为需要用到图形环境的支持。(2)使用javacv(基于opencv)加载图片,pom依赖中已注释,本人放弃的原因是因为jar包太大且需求不会有Linux环境。”

(9)运行EngineTest单元测试提示“…找不到指定模块”? 答:这是因为你的系统缺少dll运行的必要组件,别担心,点击 这里 进行下载,根据自身情况选择32位或64位安装即可。 许可证

本项目遵循 MIT 开源协议,手动比心

Java离线人脸识别SDK 支持arcface 2.0 最新版的更多相关文章

  1. C# 离线人脸识别Demo 使用ArcFace 2.0开发完成

    环境:     win7以上  VS2013以上    sdk版本:ArcFace v2.0    x86 x64平台Debug.Release配置都已通过编译 下载地址:https://github ...

  2. 百度离线人脸识别sdk的使用

    1.1下载sdk运行 百度离线人脸识别sdk的使用 1.2配置环境 添加至项目,可以拖动复制或者以类库形式添加face-resource此文件夹 放到根目录上一层 激活文件与所有dll引用放到根目录嫌 ...

  3. Java版 人脸识别SDK demo

    虹软人脸识别SDK之Java版,支持SDK 1.1+,以及当前最新版本2.0,滴滴,抓紧上车! 前言 由于业务需求,最近跟人脸识别杠上了,本以为虹软提供的SDK是那种面向开发语言的,结果是一堆dll· ...

  4. Java版 人脸识别SDK dem

    虹软人脸识别SDK之Java版,支持SDK 1.1+,以及2.0版本,滴滴,抓紧上车! 前言由于业务需求,最近跟人脸识别杠上了,本以为虹软提供的SDK是那种面向开发语言的,结果是一堆dll······ ...

  5. 虹软人脸识别SDK接入Milvus实现海量人脸快速检索

    一.背景 人脸识别是近年来最热门的计算机视觉领域的应用之一,而且现在已经出现了非常多的人脸识别算法,如:DeepID.FaceNet.DeepFace等等.人脸识别被广泛应用于景区.客运.酒店.办公室 ...

  6. 人脸识别SDK小结

    Face++人脸识别 进入官网 Face++ 致力于研发世界最好的人脸技术,提供免费的API和SDK供企业和开发者调用,更有灵活的定制化服务满足不同需求.已有多家公司使用Face++技术服务,完成包括 ...

  7. windows下百度离线人脸识别本地部署与使用(nodejs做客户端,c++做服务端,socket做通信)

    1.离线人脸识别本地部署 详情请阅读百度人脸识别官网 2.nodejs做socket通信的客户端 为什么不直接通过调用c++编译的exe获得人脸识别结果? 原因:exe运行时会加载很多模型而消耗很多时 ...

  8. 虹软人脸识别SDK在网络摄像头中的实际应用

    目前在人脸识别领域中,网络摄像头的使用很普遍,但接入网络摄像头和人脸识别SDK有一定门槛,在此篇中介绍过虹软人脸识别SDK的接入流程,本文着重介绍网络摄像头获取视频流并处理的流程(红色框内),以下内容 ...

  9. AI人脸识别SDK接入 — 参数优化篇(虹软)

    引言 使用了虹软公司免费的人脸识别算法,感觉还是很不错的,当然,如果是初次接触的话会对一些接口的参数有些疑问的.这里分享一下我对一些参数的验证结果(这里以windows版本为例,linux.andro ...

随机推荐

  1. Leetcode480-Sliding Window Median

    Median is the middle value in an ordered integer list. If the size of the list is even, there is no ...

  2. javadoc中{@link}与@see的简单使用以及区别

    因为公司的测试直接对着java api进行外部服务的测试,故最近对javadoc的要求从0变成了严重依赖,有些时候在javadoc不得不引用其他class,以便更加清晰的说明上下文以及含义,发现指向别 ...

  3. oracle安全应用角色例子

    今天在做看OCP的时候有道题是关于应用安全角色的,不是很明白,在网上找了个例子按照步骤验证了下.QUESTION 48You want to create a role to meet these r ...

  4. 20145325张梓靖 《网络对抗技术》 Web基础

    20145325张梓靖 <网络对抗技术> Web基础 实验内容 开启apahce,设计web前端HTML 设计web前端javascipt 设计web后端mysql 设计web后端php ...

  5. ubuntu----VMware 鼠标自由切换问题及主机虚拟机共享剪切板问题

    VMware 安装了Ubuntu之后,在正常安装了VMware tools后,仍然不能正常的在Ubuntu与物理机之间自由的切换,每次都要按下ctrl+Alt,而且鼠标指针会经常性的离奇的失灵 解决方 ...

  6. hog cython

    pip安装cython之后,将下面代码写入hogtest2.pyx文件(我通过改文件后缀新建) import numpy as np from PIL import Image cimport num ...

  7. shell脚本之 给PNG图片添加后缀@3x

    1,给png图片加上后缀@3x #!/bin/sh #root_src=$(dirname $(PWD)) #echo ${root_src} image_path=${root_src}/image ...

  8. linux基础之网络基础配置

    基础命令:ifconfig/route/netstat,ip/ss,nmcli 一.ifconfig/route/netstat相关命令 1.  ifconfig - configure a netw ...

  9. FJUT seventh的tired树上路径(01字典树)题解

    思路(来自题解): 众所周知树上两个点xy的距离是deep[x]+deep[y]-deep[lca(x,y)]*2 然后我们把这个加减法换成异或,我们就会发现,deep[lca(x,y)]被消掉了 所 ...

  10. spring配置freemarker

    <?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.spr ...