|
@ -107,9 +107,9 @@ public class FaceEnginUtil { |
|
|
* 录入人脸接口存入byte数组特征值 |
|
|
* 录入人脸接口存入byte数组特征值 |
|
|
* @return |
|
|
* @return |
|
|
*/ |
|
|
*/ |
|
|
public static byte[] uploadInput(File file) { |
|
|
public static byte[] uploadInput(InputStream inputStream) { |
|
|
FaceEngine faceEngine = FaceEnginUtil.init(); |
|
|
FaceEngine faceEngine = FaceEnginUtil.init(); |
|
|
ImageInfo imageInfo = getRGBData(file); |
|
|
ImageInfo imageInfo = getRGBData(inputStream); |
|
|
List<FaceInfo> faceInfoList = new ArrayList<FaceInfo>(); |
|
|
List<FaceInfo> faceInfoList = new ArrayList<FaceInfo>(); |
|
|
faceEngine.detectFaces(imageInfo.getImageData(), imageInfo.getWidth(), imageInfo.getHeight(), imageInfo.getImageFormat(), faceInfoList); |
|
|
faceEngine.detectFaces(imageInfo.getImageData(), imageInfo.getWidth(), imageInfo.getHeight(), imageInfo.getImageFormat(), faceInfoList); |
|
|
//特征提取
|
|
|
//特征提取
|
|
@ -120,6 +120,32 @@ public class FaceEnginUtil { |
|
|
return featureData; |
|
|
return featureData; |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
|
* 人脸匹配 |
|
|
|
|
|
* @param |
|
|
|
|
|
* @param file 数据库人脸存根 |
|
|
|
|
|
* @return float 数据判断大于0.7以上 |
|
|
|
|
|
*/ |
|
|
|
|
|
public static float uploadContrast(MultipartFile file,byte[] faceFeature2) throws IOException { |
|
|
|
|
|
|
|
|
|
|
|
byte[] faceFeature1=uploadInput(file); |
|
|
|
|
|
|
|
|
|
|
|
FaceFeature targetFaceFeature = new FaceFeature(); |
|
|
|
|
|
targetFaceFeature.setFeatureData(faceFeature1); |
|
|
|
|
|
|
|
|
|
|
|
FaceEngine faceEngine = FaceEnginUtil.init(); |
|
|
|
|
|
|
|
|
|
|
|
FaceFeature sourceFaceFeature = new FaceFeature(); |
|
|
|
|
|
sourceFaceFeature.setFeatureData(faceFeature2); |
|
|
|
|
|
FaceSimilar faceSimilar = new FaceSimilar(); |
|
|
|
|
|
//特征比对
|
|
|
|
|
|
faceEngine.compareFaceFeature(targetFaceFeature, sourceFaceFeature, faceSimilar); |
|
|
|
|
|
FaceEnginUtil.close(faceEngine); |
|
|
|
|
|
return faceSimilar.getScore(); |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/** |
|
|
/** |
|
|
* 人脸匹配 |
|
|
* 人脸匹配 |
|
|
* @param |
|
|
* @param |
|
@ -142,6 +168,8 @@ public class FaceEnginUtil { |
|
|
return faceSimilar.getScore(); |
|
|
return faceSimilar.getScore(); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
public static void close(FaceEngine faceEngine) { |
|
|
public static void close(FaceEngine faceEngine) { |
|
|
faceEngine.unInit(); |
|
|
faceEngine.unInit(); |
|
|
} |
|
|
} |
|
|