Android 面部识别之二(调用开源面部识别算法seetaface检测)
https://github.com/seetaface/SeetaFaceEngine(Seetaface官方地址)
如果有需要可以自己研究一下这个算法。
我这里是从网上得到的通过把开源的c++通过NDK封装成so文件,通过JNI调用。
https://www.zhihu.com/question/50631245
检测速度每个图片在1700毫秒左右(小米note作为测试机)
需要注意的几个点
- 这里只有armeabi-v7a 下的so所以只适用于部分的手机,如果有高手可以编译出其他的一定告诉小弟一声。
- 每次检测的时候需要使用几个bin文件,这是开源作者自己训练好的model。
- domo地址我放在下面了,应用很多和摄像头做面部识别等等。这就看需要怎么用了,细节我就不贴了,需要的看一下源码(代码试用android studio写的)。欢迎讨论。
简单的看看jni接口把。
/**
* 采用中科院山世光开源的SeetaFaceEngine实现android上的人脸检测与对齐、识别
*
*/
package seetaface;
import android.graphics.Bitmap;
public class SeetaFace {
static {
System.loadLibrary("SeetafaceSo");
}
public native boolean init(String vModelDir);
/**
* 检测人脸
* @param vImgData:图像数据
* @param vColNum:图像宽度
* @param vRowNum:图像高度
* @param vCh:通道数
* @param vFaceBmp:人脸抠图(有多个人脸也只抠1一个图返回)
* @return
*/
/**
* 检测人脸
* @param vBmp:待检测人脸的大图
* @param vFaceBmp:其中一个人脸抠图
* @return
*/
public native CMSeetaFace[] DetectFaces(Bitmap vBmp, Bitmap vFaceBmp);
/**
* 测试
* @param vVal
* @return
*/
public native int Test(int vVal);
/**
* 图像的gamma校正
* @param vColorBmp:原图
* @param vGammaBmp:处理后的图
* @param vGamma:gamma值
*/
public native void imGamma(Bitmap vColorBmp, Bitmap vGammaBmp, float vGamma);
/**
* 彩色转灰度图
* @param vColorBmp
* @param vGrayBmp
*/
public native void im2gray(Bitmap vColorBmp, Bitmap vGrayBmp);
/**
* 检测人脸,返回各人脸位置,每个人的以;分隔,坐标以分号分隔
* @param vImgData:图像的char*数据
* @param vColNum:图像列数
* @param vRowNum:图像行数
* @param vCh:图像通道数,3或4
* @param vDetectModelPath:正面人脸检测模型的绝对路径
* @param vFaceNo:人脸编号,用于保存特征数据生成文件名用
* @param vFaceBmp:人脸抠图
* @return
*/
public native String DetectFace(byte[] vImgData, int vColNum, int vRowNum, int vCh, String vDetectModelPath, int vFaceNo, Bitmap vFaceBmp);
/**
* 比对2个人脸特征值的相似度
* @param vFeat1
* @param vFeat2
* @param vNum
* @return
*/
public native float CalcSimilarity(float[] vFeat1, float[] vFeat2);
}
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
- 51
- 52
- 53
- 54
- 55
- 56
- 57
- 58
- 59
- 60
- 61
- 62
- 63
- 64
- 65
- 66
- 67
- 68
- 69
- 70
- 71
- 72
- 73
- 74
- 75
- 76
- 77
- 78
- 79
- 80
- 81
- 82
链接:http://pan.baidu.com/s/1hsn4bKK 密码:4n4y
原文:http://blog.csdn.net/u012222078/article/details/58602951