seetaface6,windows和linux环境自适应,支持GPU

seetaface6SDK

项目地址

seetaface6SDK地址

介绍
  1. 本项目是基于seetaface6源码编译后,再编译seetaface6JNI源码得到的一个sdk项目
  2. windows和linux环境自适应。
  3. 支持GPU
  4. 使用方便:(1)导入jar包;(2)配置模型文件路径即可使用;无需自己配置dll,so这些东西
演示真假人脸识别
  1. spoof为攻击人脸,real为真人脸
    在这里插入图片描述
测试代码
  1. 攻击人脸检测,返回FaceAntiSpoofing.Status,spoof为攻击人脸,real为真人脸
public class AntiSpoofingTest {

    public static String CSTA_PATH = "D:\\face\\models";
    public static String TEST_PICT = "D:\\face\\image\\me\\00.jpg";

    /**
     * 初始化加载dll
     */
    static {
        LoadNativeCore.LOAD_NATIVE(SeetaDevice.SEETA_DEVICE_AUTO);
    }

    public static void main(String[] args) {
        //三个模型文件
        String[] detector_cstas = {CSTA_PATH + "/face_detector.csta"};
        // 这里传两个模型才能准确得出结果 (fas_first和fas_second)
        String[] fas_first = {CSTA_PATH + "/fas_first.csta"};
        String[] landmarker_cstas = {CSTA_PATH + "/face_landmarker_pts5.csta"};
        try {
            //人脸检测器
            FaceDetector detector = new FaceDetector(
                    new SeetaModelSetting(0, detector_cstas, SeetaDevice.SEETA_DEVICE_AUTO));
            //关键点定位器face_landmarker_pts5 就是五个关键点,face_landmarker_pts68就是68个关键点,根据模型文件来的
            FaceLandmarker faceLandmarker = new FaceLandmarker(
                    new SeetaModelSetting(0, landmarker_cstas, SeetaDevice.SEETA_DEVICE_AUTO));
            //攻击人脸检测器
            FaceAntiSpoofing faceAntiSpoofing = new FaceAntiSpoofing(
                    new SeetaModelSetting(0, fas_first, SeetaDevice.SEETA_DEVICE_AUTO));

            SeetaImageData image = SeetafaceUtil.toSeetaImageData(TEST_PICT);
            SeetaRect[] detects = detector.Detect(image);
            for (SeetaRect seetaRect : detects) {
                //face_landmarker_pts5 根据这个来的
                SeetaPointF[] pointFS = new SeetaPointF[5];
                int[] ints = new int[5];
                faceLandmarker.mark(image, seetaRect, pointFS,ints);
                FaceAntiSpoofing.Status predict = faceAntiSpoofing.Predict(image, seetaRect, pointFS);
                System.out.println(predict);
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}
功能
  1. 人脸检测和关键点定位
  2. 人脸特征提取和对比
  3. 人脸特征提取
  4. 人脸特征对比
  5. 活体检测
  6. 人脸跟踪
  7. 质量评估
  8. 年龄识别
  9. 性别识别
  10. 口罩检测
  11. 口罩人脸识别
  12. 眼睛状态检测
软件架构
  1. 基于seetaface6 c++源码编译,基于JNI技术,通过编译c++ 得到dll和so。
  2. 使用起来超级简单,打成jar包,导入项目就可以用了,不需要配置jni路径之类的。
安装教程
  1. (必做)window10 环境需要安装 visual_studio(安装时注意选择c++环境,不知道就百度),jdk8-jdk14任选。
  2. (必做)linux 环境需要安装 cmake-3.12.4.tar.gz,jdk8-jdk14任选。
  3. 可以跟着test代码包里面的代码走一遍,了解使用方法,再自己引入自己项目中。
  4. 本项目可以直接打包成jar,导入本地maven仓库或是私服,其他项目直接引用jar就可以了。
  5. 只有windows10和centos7(8没试过)这两种so,乌班图和mac是运行不了的,so只编译了这两种。
  6. GPU环境有点复杂,建议先试试CPU的,GPU环境的配置后面再提交说明。
  7. 模型文件自己去下载了,这里不提供,下载地址请到官网去看,本项目也是官网源码编译而来。
  8. 建了个Q企鹅Q群:290690355
  9. 觉得好的是不是可以点个star?
使用说明

模型介绍:模型自己去官网下载

模型模型说明备注
face_recognizer.csta高精度人脸识别人脸向量特征提取模型,建议阈值:0.62返回1024长度向量特征
face_recognizer_mask.csta戴口罩人脸向量特征提取模型,建议阈值:0.48返回512长度向量特征
face_recognizer_light.csta轻量级人脸向量特征提取模型,建议阈值:0.55返回512长度向量特征
age_predictor.csta年龄预测模型返回int[0]
face_landmarker_pts5.csta5点人脸标识模型, 确定 两眼、两嘴角和鼻尖SeetaPointF[] 即 x,y坐标数组
face_landmarker_pts68.csta68点人脸标识模型, 人脸68个特征点SeetaPointF[] 即 x,y坐标数组
pose_estimation.csta人脸姿态评估
eye_state.csta眼睛状态评估打开 关闭状态
face_detector.csta人脸检测器,检测到的每个人脸位置,用矩形表示
face_landmarker_mask_pts5.csta遮挡评估,判断的遮挡物为五个关键点,分别是左右眼中心、鼻尖和左右嘴角1:遮挡, 0:没遮挡
mask_detector.csta口罩检测器false:0.0089 或 true:0.985
gender_predictor.csta性别识别
quality_lbn.csta清晰度评估模型
fas_first.csta活体检测识别器 局部检测模型
fas_second.csta活体检测识别器 全局检测模型

压力测试:
测试类FaceRecognizerProxyTest ,可以尝试自己加多线程测试,本项目通过代码通过对象池调用,本地测试不存在内存泄露问题。

特技
  1. 可以做人脸跟踪
  2. 真假人脸判断
  3. 年龄,性别判断
  4. 质量检测
  5. 后续会开放docker
  6. 后续做1:N 用opensearch,能够达到10亿搜索量

在这里插入图片描述

  • 4
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值