|
@@ -89,13 +89,16 @@ public class FaceIdenService {
|
|
|
imgPersonFiles = imgPersonFileList.toArray(imgPersonFiles);
|
|
|
logger.info("FaceIdenService.handleCameraImage 2...");
|
|
|
FaceMonitor faceMonitorPerson = null;
|
|
|
+ if(imgPersonFiles.length > 0){
|
|
|
+ faceMonitorPerson = FaceIdenTool.initFaceMonitor(idenRoot,imgPersonFiles);
|
|
|
+ }
|
|
|
|
|
|
try {
|
|
|
for (File cameraCodedir : cameraCodeDirs) {
|
|
|
if (cameraCodedir.isDirectory()) {
|
|
|
File[] imgFiles = FileUtil.sortByName(cameraCodedir.listFiles());
|
|
|
if (imgFiles != null && imgFiles.length > 0) {
|
|
|
- faceMonitorPerson = FaceIdenTool.initFaceMonitor(idenRoot,imgPersonFiles);
|
|
|
+
|
|
|
String cameraCode = cameraCodedir.getName();
|
|
|
QueryWrapper<IdenCamera> queryWrapper = new QueryWrapper<>();
|
|
|
queryWrapper.lambda().eq(IdenCamera::getCode, cameraCode);
|
|
@@ -103,6 +106,7 @@ public class FaceIdenService {
|
|
|
if (idenCamera == null) {
|
|
|
continue;
|
|
|
}
|
|
|
+
|
|
|
logger.info("FaceIdenService.handleCameraImage 3...");
|
|
|
//获取特征码
|
|
|
FaceModel[] faceModels = FaceIdenTool.extractFeature(idenRoot, imgFiles);
|
|
@@ -165,7 +169,7 @@ public class FaceIdenService {
|
|
|
idenFaceImage.setImage(fileUrl + "camera/image/" + cameraCode + "/" + finalImgFile.getName());
|
|
|
|
|
|
//和人员图像库比对特征码,关联personId
|
|
|
- if (faceModels[i] != null) {
|
|
|
+ if (faceModels[i] != null && faceMonitorPerson != null) {
|
|
|
|
|
|
FaceRetrieveResultVO faceRetrieveResultVO = FaceIdenTool.getHitResult(faceMonitorPerson, faceModels[i]);
|
|
|
if (faceRetrieveResultVO != null) {
|