From 291dbcd9331cd0df41addef74defa4654ee034fb Mon Sep 17 00:00:00 2001
From: chenshijun <csj_sky@126.com>
Date: 星期一, 22 四月 2019 15:59:20 +0800
Subject: [PATCH] 增加人员异常的参数处理

---
 QiaoJiaSystem/StructureApp/AppPipeController.cpp |  119 +++++++++++++++++++++++++++++++++++++++++++++++++++++++----
 1 files changed, 110 insertions(+), 9 deletions(-)

diff --git a/QiaoJiaSystem/StructureApp/AppPipeController.cpp b/QiaoJiaSystem/StructureApp/AppPipeController.cpp
index 4738830..14bfad1 100644
--- a/QiaoJiaSystem/StructureApp/AppPipeController.cpp
+++ b/QiaoJiaSystem/StructureApp/AppPipeController.cpp
@@ -26,7 +26,11 @@
     m_folderPath(folderPath),
     m_sdkRuleMap(ruleMap),
     fdfsClient(nullptr),
+#ifdef YOLOSERVER
     yoloRpcElement(folderPath + "yoloRpc"),
+#else
+    vptRpcElement(folderPath + "yoloRpc"),
+#endif
     faceRpcElement(folderPath + "faceRpc", ruleMap[FaceSdk]),
     faceExtractElement(folderPath + "faceExtract", ruleMap[FaceSdk]),
     triggerElement(25, 10),
@@ -75,7 +79,11 @@
     m_index(0),
     m_camId(camId),
     fdfsClient(nullptr),
+#ifdef YOLOSERVER
     yoloRpcElement(camId + "yoloRpc"),
+#else
+    vptRpcElement(camId + "yoloRpc"),
+#endif
     faceRpcElement(camId + "faceRpc", ruleMap[FaceSdk]),
     faceExtractElement(camId + "faceExtract", ruleMap[FaceSdk]),
     triggerElement(25, 4),
@@ -87,7 +95,7 @@
     perHubElement(ruleMap[PerHubSdk]),
     leftJudgment(ruleMap[KeepRightSdk]),
     rightJudgment(ruleMap[KeepRightSdk]),
-    bRecordVideoEnable(RecordVideoEnable),
+//    bRecordVideoEnable(RecordVideoEnable),
     m_sdkRuleMap(ruleMap),
     m_bSetWH(false) {
     DBG("camId" << camId);
@@ -174,7 +182,6 @@
 }
 
 string test_str;
-
 
 void AppPipeController::RecordVideo() {
     /*std::string imgKeyYolo = yoloRpcElement.getProperty("imgKey");
@@ -285,19 +292,30 @@
                 //#todo
                 faceRpcElement.setProperty("time", strNewTime);
                 faceRpcElement.setProperty("imgKey", imgKey);
-                INFO("Write To FaceRPC  ES time:" << strNewTime << "    ImgKey: " << imgKey);
+//                INFO("Write To FaceRPC  ES time:" << strNewTime << "    ImgKey: " << imgKey);
                 faceRpcElement.setImage(imageTemp);
                 faceRpcElement.submit();
             }
 
+#ifdef YOLOSERVER
             if (!yoloRpcElement.isBusy()) {
                 //#todo
                 yoloRpcElement.setProperty("time", strNewTime);
                 yoloRpcElement.setProperty("imgKey", imgKey);
-                INFO("Write To YoloES time:" << strNewTime << "    ImgKey: " << imgKey);
+//                INFO("Write To YoloES time:" << strNewTime << "    ImgKey: " << imgKey);
                 yoloRpcElement.setImage(imageTemp);
                 yoloRpcElement.submit();
             }
+#else
+            if (!vptRpcElement.isBusy()) {
+                //#todo
+                vptRpcElement.setProperty("time", strNewTime);
+                vptRpcElement.setProperty("imgKey", imgKey);
+                INFO("Write To vptRpcElement time:" << strNewTime << "    ImgKey: " << imgKey);
+                vptRpcElement.setImage(imageTemp);
+                vptRpcElement.submit();
+            }
+#endif
 
 
             if (appPref.getIntData("show.image") == 1 && !imageDrawElement.isBusy()) {
@@ -344,6 +362,7 @@
     });
 
 
+#ifdef YOLOSERVER
     yoloRpcElement.registerConnector([&] {
         imageDrawElement.setYoloObjects(personElement.getLastScoreRects());
         if (!personElement.isBusy()) {
@@ -353,6 +372,19 @@
         //INFO("Record Video By Yolo");
         //this->RecordVideo();
     });
+#else
+    vptRpcElement.registerConnector([&] {
+        imageDrawElement.setYoloObjects(personElement.getLastScoreRects());
+        if (!personElement.isBusy()) {
+            personElement.setObjsResults(vptRpcElement.getLastHpRects());
+            personElement.submit();
+        }
+//#todo HCP
+//#todo Car
+        //INFO("Record Video By Yolo");
+        //this->RecordVideo();
+    });
+#endif
 
     faceRpcElement.registerConnector([&] {
         imageDrawElement.setFaces(faceRpcElement.getLastScoreRects());
@@ -360,11 +392,20 @@
         //this->RecordVideo();
     });
 
+
+#ifdef YOLOSERVER
     yoloRpcElement.registerConnector("YoloTrigger", [&] {
 //        auto images = yoloRpcElement.getTriggerMats();
         //INFO("Record Video By Yolo");
         //this->RecordVideo();
     });
+#else
+    vptRpcElement.registerConnector("YoloTrigger", [&] {
+//        auto images = yoloRpcElement.getTriggerMats();
+        //INFO("Record Video By Yolo");
+        //this->RecordVideo();
+    });
+#endif
 
     faceRpcElement.registerConnector("FaceTrigger", [&] {
 //        auto images = faceRpcElement.getTriggerMats();
@@ -406,7 +447,11 @@
     // registerElement(newRecordVideoElement);
     //videoCaptureElement.setOutPutInterval(3);
     faceExtractElement.setProperty("index", to_string(m_index));
+#ifdef YOLOSERVER
     registerElement(yoloRpcElement);
+#else
+    registerElement(vptRpcElement);
+#endif
     //#todo setProperty
 //    faceExtractElement.setProperty("index", to_string(m_index));
 //    faceExtractElement.setProperty("index", to_string(m_index));
@@ -474,18 +519,25 @@
     if (rule.nIsRun != 1) {
         return;
     }
-
-
+#ifdef YOLOSERVER
     yoloRpcElement.registerConnector([&] {
         if (!perimeterElement.isBusy()) {
             perimeterElement.setYoloObjects(yoloRpcElement.getLastScoreRects());
             perimeterElement.setImage(yoloRpcElement.getImage());
-
+            perimeterElement.submit();
+        }
+    });
+#else
+    vptRpcElement.registerConnector([&] {
+        if (!perimeterElement.isBusy()) {
+            perimeterElement.setYoloObjects(vptRpcElement.getLastScoreRects());
+            perimeterElement.setImage(vptRpcElement.getImage());
             perimeterElement.submit();
         }
 //        car
 //        prc
     });
+#endif
 //    perimeterElement.registerConnector([&] {
 
 //        peTriggerElement.setState(perimeterElement.getRealNum() > 0);
@@ -517,6 +569,7 @@
 
     crowdElement.setProperty("local_ip", m_localIp);
 
+#ifdef YOLOSERVER
     yoloRpcElement.registerConnector([&] {
         if (!crowdElement.isBusy()) {
             crowdElement.setYoloObjects(yoloRpcElement.getLastScoreRects());
@@ -524,7 +577,17 @@
             crowdElement.submit();
         }
     });
-
+#else
+    vptRpcElement.registerConnector([&] {
+        if (!perimeterElement.isBusy()) {
+            perimeterElement.setYoloObjects(vptRpcElement.getLastHpRects());
+            perimeterElement.setImage(vptRpcElement.getImage());
+            perimeterElement.submit();
+        }
+//        car
+//        prc
+    });
+#endif
     registerElement(crowdElement);
 //    registerElement(crowdTriggerElement);
 }
@@ -538,6 +601,7 @@
     rightJudgment.setProperty("local_ip", m_localIp);
     leftJudgment.init(rule.strAreas, rule.strLine);
     rightJudgment.init(rule.strExAreas, rule.strExLine);
+#ifdef YOLOSERVER
     yoloRpcElement.registerConnector([&] {
         if (!leftJudgment.isBusy()) {
             leftJudgment.setYoloObjects(yoloRpcElement.getLastScoreRects());
@@ -552,6 +616,22 @@
         }
 
     });
+#else
+    vptRpcElement.registerConnector([&] {
+        if (!leftJudgment.isBusy()) {
+            leftJudgment.setYoloObjects(vptRpcElement.getLastHpRects());
+            leftJudgment.setImage(vptRpcElement.getImage());
+            leftJudgment.submit();
+        }
+        if (!rightJudgment.isBusy()) {
+            rightJudgment.setYoloObjects(vptRpcElement.getLastHpRects());
+
+            rightJudgment.setImage(vptRpcElement.getImage());
+            rightJudgment.submit();
+        }
+    });
+#endif
+
     registerElement(leftJudgment);
     registerElement(rightJudgment);
 
@@ -566,6 +646,8 @@
     //area="[{\"x\":100,\"y\":6},{\"x\":100,\"y\":1200},{\"x\":1800,\"y\":1200},{\"x\":1800,\"y\":6}]";
 
     perStaticElement.setProperty("local_ip", m_localIp);
+
+#ifdef YOLOSERVER
     yoloRpcElement.registerConnector([&] {
         if (!perStaticElement.isBusy()) {
             perStaticElement.setYoloObjects(yoloRpcElement.getLastScoreRects());
@@ -573,7 +655,15 @@
             perStaticElement.submit();
         }
     });
-
+#else
+    vptRpcElement.registerConnector([&] {
+        if (!perStaticElement.isBusy()) {
+            perStaticElement.setYoloObjects(vptRpcElement.getLastHpRects());
+            perStaticElement.setImage(vptRpcElement.getImage());
+            perStaticElement.submit();
+        }
+    });
+#endif
     registerElement(perStaticElement);
 }
 
@@ -586,6 +676,8 @@
     //area="[{\"x\":100,\"y\":6},{\"x\":100,\"y\":1200},{\"x\":1800,\"y\":1200},{\"x\":1800,\"y\":6}]";
 
     perHubElement.setProperty("local_ip", m_localIp);
+
+#ifdef YOLOSERVER
     yoloRpcElement.registerConnector([&] {
         if (!perHubElement.isBusy()) {
             perHubElement.setYoloObjects(yoloRpcElement.getLastScoreRects());
@@ -593,6 +685,15 @@
             perHubElement.submit();
         }
     });
+#else
+    vptRpcElement.registerConnector([&] {
+        if (!perHubElement.isBusy()) {
+            perHubElement.setYoloObjects(vptRpcElement.getLastHpRects());
+            perHubElement.setImage(vptRpcElement.getImage());
+            perHubElement.submit();
+        }
+    });
+#endif
 
     registerElement(perHubElement);
 }

--
Gitblit v1.8.0