java调用mtcnn_Faceverification

Faceverification

介绍

First Commit!

算法SDK(android版,以下简称VYSDK,64位),是基于腾讯ncnn架构+MTCNN人脸检测算法+vyface人脸特征提取构建的用于android设备的算法包。

可以完成MTCNN人脸检测与特征点定位,人脸剪切与扭正,128字节人脸特征码提取,支持android 7.0及以上平台。

VYSDK依赖第三方ncnn、opencv3.4.3(android)支持。

参考阅读:

ncnn+mtcnn+opencv

软件架构

VYSDK开发软件环境:

Windows 7 professional 64位平台

Android Studio 3.2

NDK使用android-ndk-r16b-windows-x86_64(可能需要必要的在线升级,但速度很快)

CMAKE3.10.2(android studio一般会自动下载)

安装教程

Android Studio 3.2

NDK使用android-ndk-r16b-windows-x86_64

3297ab48edd75bdf27b389c12e7c494e.png

使用说明

VYSDK 设计的目的是在 Android 平台上实现离线的人脸识别功能,可以广泛用于移动智能设备中。

VYSDK 底层使用了C++编程,封装为so文件。Android在应用时,需采用JNI的方式调用。

VYSDK 使用中主要包含了模型初始化、MTCNN检测人脸、基于特征点人脸扭正(仿射变换后为128*128大小)、特征码提取、特征码比对等主要功能

VYSDK 特征码长度为128个浮点数,512字节。

5、VYSDK 集成了MTCNN、VYREG两个类及其实现。为用户JNI调用提供 mtcnn.h, vyreg.h两个头文件、libvyalgo.so(动态库)、libncnn.a(ncnn Android 版+spp层 静态库)、libopencv_java3.so(opencv动态库)。其中头文件放在main/src/cpp/include下,库文件放在jniLibs目录下。

6、本项目是使用VYSDK的一个演示工程,主要目的是验证VYSDK,界面不是重点。重要的东西都在native-lib.cpp中。

使用第三方工具

腾讯ncnn(开源,修改了spp层的实现),完成了debug/release(win64,Android)版本的编译

vyface 提供了商业级人脸识别模型(鉴于商业保密,本项目并没公开模型,很遗憾)

由于人脸扭正需要,为了节省时间,使用了OPENCV3.4.3,这也是一个遗憾

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值