车车 7 月之前
父节点
当前提交
b42c94dd60

+ 6 - 0
ktg-common/pom.xml

@@ -212,6 +212,12 @@
             <version>4.7.0-0</version>
         </dependency>
 
+        <dependency>
+            <groupId>com.arcsoft.face</groupId>
+            <artifactId>arcsoft-sdk-face</artifactId>
+            <version>3.0.0.0</version>
+        </dependency>
+
     </dependencies>
 
 </project>

+ 14 - 1
ktg-common/src/main/java/com/ktg/common/config/RuoYiConfig.java

@@ -5,7 +5,7 @@ import org.springframework.stereotype.Component;
 
 /**
  * 读取项目相关配置
- * 
+ *
  * @author ruoyi
  */
 @Component
@@ -33,6 +33,9 @@ public class RuoYiConfig
     /** 验证码类型 */
     private static String captchaType;
 
+    /** 请求占位符 */
+    private static String prod;
+
     public String getName()
     {
         return name;
@@ -101,6 +104,16 @@ public class RuoYiConfig
         RuoYiConfig.captchaType = captchaType;
     }
 
+    public static String getProd()
+    {
+        return prod;
+    }
+
+    public void setProd(String prod)
+    {
+        RuoYiConfig.prod = prod;
+    }
+
     /**
      * 获取导入上传路径
      */

+ 8 - 5
ktg-common/src/main/java/com/ktg/common/utils/face/ArcSoftMothodUtil.java

@@ -13,7 +13,6 @@ import com.ktg.common.utils.StringUtils;
 import com.ktg.common.vo.FaceCutVO;
 import com.ktg.common.vo.FaceMatchVO;
 import lombok.extern.slf4j.Slf4j;
-import org.springframework.beans.factory.annotation.Value;
 import org.springframework.web.multipart.MultipartFile;
 
 import java.io.File;
@@ -37,8 +36,6 @@ import static com.arcsoft.face.toolkit.ImageFactory.getRGBData;
 @Slf4j
 public class ArcSoftMothodUtil {
 
-    @Value("${ktg-mes.prod}")
-    private static String prodApi;
 
     static FaceEngine faceEngine;
 
@@ -47,18 +44,22 @@ public class ArcSoftMothodUtil {
         String appId;
         String sdkKey;
         String libarcsoftFaceDllPath;
+        String prodApi = RuoYiConfig.getProd();
+        System.out.println("prodApi---" + prodApi);
         if (StringUtils.isNotBlank(prodApi)) {
             // 在linux
             appId = "J6z2Yp9rxSWXQbYo5bRPDP1ffgUEWEGJq6KZp2YWKH5t";
             sdkKey = "HcMT5xRseGbnGpazhXbCmTK9uvu2JwU8VuAJPG7n2teE";
-            libarcsoftFaceDllPath = "/guoruan/app/ArcSoft_ArcFace_Java_Linux_x64_V3.0/libs/LINUX64";
+            libarcsoftFaceDllPath = "/usr/lib/ArcSoft_ArcFace_Java_Linux_x64_V3.0/libs/LINUX64";
         } else {
             // 在win
             appId = "5j9Uw8b5t9svFzVyVjBrCXtizjojgnjXJrNAg64UUYU4";
             sdkKey = "7yGfT9CQVmTrXfBmmPYeJTK3YTREQSTbM4XNVjPWzRbj";
             libarcsoftFaceDllPath = "C:\\work\\app\\install\\ArcSoft_ArcFace_Java_Windows_x64_V3.0\\libs\\WIN64";
         }
-
+        System.out.println("appId-------" + appId);
+        System.out.println("sdkKey-------" + sdkKey);
+        System.out.println("libarcsoftFaceDllPath-------" + libarcsoftFaceDllPath);
         faceEngine = new FaceEngine(libarcsoftFaceDllPath);
         //激活引擎
         int errorCode = faceEngine.activeOnline(appId, sdkKey);
@@ -105,6 +106,7 @@ public class ArcSoftMothodUtil {
      */
     public static FaceCutVO saveArcData(MultipartFile file, Long userId, String url) throws IOException {
         int errorCode;
+        String prodApi = RuoYiConfig.getProd();
         // 1.判断这个文件是否有效
         Assert.isFalse(file.isEmpty(), "请上传人脸文件!");
         // 2.-----------------开始存储上传的照片--------------------
@@ -168,6 +170,7 @@ public class ArcSoftMothodUtil {
 
     public static FaceMatchVO completableFutureComparison(final MultipartFile file, final Set<String> matcher) throws IOException {
         int errorCode;
+        String prodApi = RuoYiConfig.getProd();
         // 提取当前人脸的特征值,比对文件零时存储,人脸存储基础路径
         String profile = RuoYiConfig.getProfile();
         String basePath = profile + "/face/" + 0 + "/";

+ 1 - 3
ktg-common/src/main/java/com/ktg/common/utils/face/FaceCutUtil.java

@@ -8,7 +8,6 @@ import org.opencv.core.*;
 import org.opencv.imgcodecs.Imgcodecs;
 import org.opencv.imgproc.Imgproc;
 import org.opencv.objdetect.CascadeClassifier;
-import org.springframework.beans.factory.annotation.Value;
 import org.springframework.web.multipart.MultipartFile;
 
 import java.io.IOException;
@@ -24,8 +23,6 @@ import java.nio.file.Paths;
 public class FaceCutUtil
 {
 
-    @Value("${ktg-mes.prod}")
-    private static String prodApi;
 
 
     // 初始化人脸探测器
@@ -34,6 +31,7 @@ public class FaceCutUtil
      * 图片人脸检测
      */
     public static FaceCutVO imageFaceDetection(MultipartFile file, Long userId, String url) throws IOException {
+        String prodApi = RuoYiConfig.getProd();
         // ------------------------加载OpenCV本地库--------------------------------------------
         // System.loadLibrary(Core.NATIVE_LIBRARY_NAME);
         String loadPath = "/guoruan/app/opencv/build/java/x64/opencv_java470.dll";

+ 1 - 4
ktg-common/src/main/java/com/ktg/common/utils/face/FaceCutUtil1.java

@@ -8,7 +8,6 @@ import org.opencv.core.*;
 import org.opencv.imgcodecs.Imgcodecs;
 import org.opencv.imgproc.Imgproc;
 import org.opencv.objdetect.CascadeClassifier;
-import org.springframework.beans.factory.annotation.Value;
 import org.springframework.web.multipart.MultipartFile;
 
 import java.io.IOException;
@@ -25,9 +24,6 @@ import java.util.Collections;
 public class FaceCutUtil1
 {
 
-    @Value("${ktg-mes.prod}")
-    private static String prodApi;
-
 
     // 初始化人脸探测器
     static CascadeClassifier faceDetector;
@@ -35,6 +31,7 @@ public class FaceCutUtil1
      * 图片人脸检测
      */
     public static FaceCutVO imageFaceDetection(MultipartFile file, Long userId, String url) throws IOException {
+        String prodApi = RuoYiConfig.getProd();
         // ------------------------加载OpenCV本地库--------------------------------------------
         // System.loadLibrary(Core.NATIVE_LIBRARY_NAME);
         String loadPath = "/guoruan/app/opencv/build/java/x64/opencv_java470.dll";

+ 3 - 3
ktg-common/src/main/java/com/ktg/common/utils/face/FaceImgMatchUtil.java

@@ -1,13 +1,13 @@
 package com.ktg.common.utils.face;
 
 
+import com.ktg.common.config.RuoYiConfig;
 import com.ktg.common.utils.StringUtils;
 import com.ktg.common.vo.FaceMatchVO;
 import org.opencv.core.*;
 import org.opencv.imgcodecs.Imgcodecs;
 import org.opencv.imgproc.Imgproc;
 import org.opencv.objdetect.CascadeClassifier;
-import org.springframework.beans.factory.annotation.Value;
 
 import java.util.Arrays;
 
@@ -18,11 +18,10 @@ import java.util.Arrays;
  */
 public class FaceImgMatchUtil {
 
-    @Value("${ktg-mes.prod}")
-    private static String prodApi;
 
     // 加载OpenCV本地库
     static {
+        String prodApi = RuoYiConfig.getProd();
         String loadPath = "/guoruan/app/opencv/build/java/x64/opencv_java470.dll";
         if (StringUtils.isBlank(prodApi)) {
             loadPath = "C:/work/app/install/opencv/build/java/x64/opencv_java470.dll";
@@ -34,6 +33,7 @@ public class FaceImgMatchUtil {
     private static CascadeClassifier faceDetector;
 
     static {
+        String prodApi = RuoYiConfig.getProd();
         String faceDetectorPath = "/guoruan/app/opencv/sources/data/haarcascades/haarcascade_frontalface_alt.xml";
         if (StringUtils.isBlank(prodApi)) {
             faceDetectorPath = "C:/work/app/install/opencv/sources/data/haarcascades/haarcascade_frontalface_alt.xml";

+ 6 - 4
ktg-common/src/main/java/com/ktg/common/utils/face/FaceMatchUtil.java

@@ -1,17 +1,19 @@
 package com.ktg.common.utils.face;
 
 
+import com.ktg.common.config.RuoYiConfig;
 import com.ktg.common.utils.StringUtils;
 import com.ktg.common.vo.FaceMatchVO;
 import org.opencv.core.*;
 import org.opencv.imgcodecs.Imgcodecs;
 import org.opencv.imgproc.Imgproc;
 import org.opencv.objdetect.CascadeClassifier;
-import org.springframework.beans.factory.annotation.Value;
 import org.springframework.web.multipart.MultipartFile;
 
 import java.io.IOException;
-import java.util.*;
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.List;
 import java.util.concurrent.ExecutionException;
 import java.util.concurrent.ExecutorService;
 import java.util.concurrent.Executors;
@@ -25,11 +27,10 @@ import java.util.concurrent.Future;
 public class FaceMatchUtil
 {
 
-    @Value("${ktg-mes.prod}")
-    private static String prodApi;
 
     // 加载OpenCV本地库
     static {
+        String prodApi = RuoYiConfig.getProd();
         String loadPath = "/guoruan/app/opencv/build/java/x64/opencv_java470.dll";
         if (StringUtils.isBlank(prodApi)) {
             loadPath = "C:/work/app/install/opencv/build/java/x64/opencv_java470.dll";
@@ -41,6 +42,7 @@ public class FaceMatchUtil
     private static CascadeClassifier faceDetector;
 
     static {
+        String prodApi = RuoYiConfig.getProd();
         String faceDetectorPath = "/guoruan/app/opencv/sources/data/haarcascades/haarcascade_frontalface_alt.xml";
         if (StringUtils.isBlank(prodApi)) {
             faceDetectorPath = "C:/work/app/install/opencv/sources/data/haarcascades/haarcascade_frontalface_alt.xml";

+ 3 - 3
ktg-common/src/main/java/com/ktg/common/utils/face/FaceMatchUtil1.java

@@ -1,6 +1,7 @@
 package com.ktg.common.utils.face;
 
 
+import com.ktg.common.config.RuoYiConfig;
 import com.ktg.common.utils.StringUtils;
 import com.ktg.common.vo.FaceCutVO;
 import com.ktg.common.vo.FaceMatchVO;
@@ -8,7 +9,6 @@ import org.opencv.core.*;
 import org.opencv.imgcodecs.Imgcodecs;
 import org.opencv.imgproc.Imgproc;
 import org.opencv.objdetect.CascadeClassifier;
-import org.springframework.beans.factory.annotation.Value;
 import org.springframework.web.multipart.MultipartFile;
 
 import java.io.IOException;
@@ -23,11 +23,10 @@ import java.util.List;
 public class FaceMatchUtil1
 {
 
-    @Value("${ktg-mes.prod}")
-    private static String prodApi;
 
     // 加载OpenCV本地库
     static {
+        String prodApi = RuoYiConfig.getProd();
         String loadPath = "/guoruan/app/opencv/build/java/x64/opencv_java470.dll";
         if (StringUtils.isBlank(prodApi)) {
             loadPath = "C:/work/app/install/opencv/build/java/x64/opencv_java470.dll";
@@ -39,6 +38,7 @@ public class FaceMatchUtil1
     private static CascadeClassifier faceDetector;
 
     static {
+        String prodApi = RuoYiConfig.getProd();
         String faceDetectorPath = "/guoruan/app/opencv/sources/data/haarcascades/haarcascade_frontalface_alt.xml";
         if (StringUtils.isBlank(prodApi)) {
             faceDetectorPath = "C:/work/app/install/opencv/sources/data/haarcascades/haarcascade_frontalface_alt.xml";

+ 2 - 4
ktg-common/src/main/java/com/ktg/common/utils/face/MatChangeUtil.java

@@ -1,10 +1,10 @@
 package com.ktg.common.utils.face;
 
+import com.ktg.common.config.RuoYiConfig;
 import com.ktg.common.utils.StringUtils;
 import org.opencv.core.Mat;
 import org.opencv.core.MatOfByte;
 import org.opencv.imgcodecs.Imgcodecs;
-import org.springframework.beans.factory.annotation.Value;
 
 import java.util.Base64;
 
@@ -16,11 +16,9 @@ import java.util.Base64;
 public class MatChangeUtil
 {
 
-    @Value("${ktg-mes.prod}")
-    private static String prodApi;
-
     // 加载OpenCV本地库
     static {
+        String prodApi = RuoYiConfig.getProd();
         String loadPath = "/guoruan/app/opencv/build/java/x64/opencv_java470.dll";
         if (StringUtils.isBlank(prodApi)) {
             loadPath = "C:/work/app/install/opencv/build/java/x64/opencv_java470.dll";