QiaoJiaSystem/StructureApp/AppPipeController.cpp | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
QiaoJiaSystem/StructureApp/AppPipeController.h | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
QiaoJiaSystem/StructureApp/FaceExtractElement.cpp | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
QiaoJiaSystem/StructureApp/FaceExtractElement.h | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
QiaoJiaSystem/StructureApp/JudgmentRetrogradeTool.cpp | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
QiaoJiaSystem/StructureApp/JudgmentRetrogradeTool.h | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
QiaoJiaSystem/StructureApp/PerimeterElement.cpp | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
QiaoJiaSystem/StructureApp/PerimeterElement.h | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
QiaoJiaSystem/StructureApp/SaveVideoRpc.h | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
QiaoJiaSystem/StructureApp/AppPipeController.cpp
@@ -19,6 +19,7 @@ //} AppPipeController::AppPipeController(std::string folderPath, const SdkRuleMap &ruleMap) : m_rpcClient("RtspAnalysServer", "127.0.0.1",10009,"tcp"), videoCaptureElement("filePath", 25, -1, appPref.getLongData("gpu.index")), // videoCaptureElement(40), m_index(0), @@ -27,11 +28,11 @@ fdfsClient(nullptr), yoloRpcElement(folderPath + "yoloRpc"), faceRpcElement(folderPath + "faceRpc", ruleMap[FaceSdk]), faceExtractElement(folderPath + "faceExtract", ruleMap[FaceSdk]), faceExtractElement(folderPath + "faceExtract", ruleMap[FaceSdk],m_rpcClient), triggerElement(25, 10), recordVideoElement(-1, ""), bRecordVideoEnable(false), rpcClient("RtspAnalysServer", "127.0.0.1",10009,"tcp"), m_bSetWH(false) { @@ -69,6 +70,7 @@ // intKeepRight(); //} AppPipeController::AppPipeController(std::string camId, const SdkRuleMap &ruleMap, bool RecordVideoEnable) : m_rpcClient("RtspAnalysServer", "127.0.0.1",10009,"tcp"), videoCaptureElement(appPref.getStringData(camId + "rtsp"), 25, 3000, appPref.getLongData("gpu.index")), // videoCaptureElement(40), m_index(0), @@ -76,19 +78,18 @@ fdfsClient(nullptr), yoloRpcElement(camId + "yoloRpc"), faceRpcElement(camId + "faceRpc", ruleMap[FaceSdk]), faceExtractElement(camId + "faceExtract", ruleMap[FaceSdk]), faceExtractElement(camId + "faceExtract", ruleMap[FaceSdk],m_rpcClient), triggerElement(25, 4), recordVideoElement(camId, appPref.getStringData(camId + "rtsp")), newRecordVideoElement(camId), perimeterElement(ruleMap[PerimeterSdk]), crowdElement(ruleMap[CrowdSdk]), perimeterElement(ruleMap[PerimeterSdk],m_rpcClient), crowdElement(ruleMap[CrowdSdk],m_rpcClient), perStaticElement(ruleMap[PerStaticSdk]), perHubElement(ruleMap[PerHubSdk]), leftJudgment(ruleMap[KeepRightSdk]), rightJudgment(ruleMap[KeepRightSdk]), perHubElement(ruleMap[PerHubSdk],m_rpcClient), leftJudgment(ruleMap[KeepRightSdk],m_rpcClient), rightJudgment(ruleMap[KeepRightSdk],m_rpcClient), bRecordVideoEnable(RecordVideoEnable), m_sdkRuleMap(ruleMap), rpcClient("RtspAnalysServer", "127.0.0.1",10009,"tcp"), m_bSetWH(false) { @@ -179,7 +180,7 @@ void AppPipeController::RecordVideo() { std::string imgKeyYolo = yoloRpcElement.getProperty("imgKey"); /*std::string imgKeyYolo = yoloRpcElement.getProperty("imgKey"); std::string imgKeyFace = faceRpcElement.getProperty("imgKey"); if(faceRpcElement.getTriggerState() || @@ -226,7 +227,7 @@ "crowdElement: "<<crowdElement.getTriggerState()<<" "<< "perHubElement: "<<perHubElement.getTriggerState()<<" "<< "perStaticElement: "<<perStaticElement.getTriggerState()); } }*/ } void AppPipeController::init() { @@ -309,7 +310,7 @@ imageDrawElement.submit(); } //this->RecordVideo(); if(faceRpcElement.getTriggerState() || /*if(faceRpcElement.getTriggerState() || personElement.getTriggerState() || leftJudgment.getTriggerState() || rightJudgment.getTriggerState() || @@ -343,7 +344,7 @@ "crowdElement: "<<crowdElement.getTriggerState()<<" "<< "perHubElement: "<<perHubElement.getTriggerState()<<" "<< "perStaticElement: "<<perStaticElement.getTriggerState()); } }*/ } }); QiaoJiaSystem/StructureApp/AppPipeController.h
@@ -19,7 +19,7 @@ #include "PerStaticElement.h" #include <jsoncpp/json/json.h> #include "DBStruct.h" #include <RtspAnalysServer.h> #include "SaveVideoRpc.h" class AppPipeController : public PipeController { public: /*** @@ -79,6 +79,7 @@ void initPerHub(); private: SaveVideoRpcClient_t m_rpcClient; ffmpeg::VideoCaptureElement videoCaptureElement; YoloRpcElement yoloRpcElement; FaceRpcElement faceRpcElement; @@ -112,7 +113,7 @@ std::mutex mutex; bool m_bSetWH; HiredisTool m_hiredisTool; IceRpcClient<RtspAnalys::RtspAnalysServerPrx> rpcClient; }; #endif // APPPIPECONTROLLER_H QiaoJiaSystem/StructureApp/FaceExtractElement.cpp
@@ -45,6 +45,11 @@ } } FaceExtractElement::FaceExtractElement(std::string shareMemoryName, const SdkRule &rule, SaveVideoRpcClient_t &rpcClient):FaceExtractElement(shareMemoryName,rule) { m_rpcClient=rpcClient; } FaceExtractElement::~FaceExtractElement() { if (sharedMemory) { delete sharedMemory; @@ -216,6 +221,21 @@ INFO("SaveImageKey To ES: "<<strImageKey); t_json["imgKey"] = strImageKey; try { auto server = m_rpcClient.getServer(); if (!server) { ERR("server is null"); return; } INFO("Record Video "<<strImageKey); server->recordVideo(strImageKey); } catch (std::exception &e) { ERR("Record Video Err: "<<strImageKey <<" Message: "<<e.what()); return; } auto faceSearchServer = faceSearchRpcClient.getServer(); if (!faceSearchServer) { ERR("faceSearchServer is null"); QiaoJiaSystem/StructureApp/FaceExtractElement.h
@@ -1,6 +1,7 @@ #ifndef FACEEXTRACTELEMENT_H #define FACEEXTRACTELEMENT_H #include "SaveVideoRpc.h" #include <FaceServer.h> #include <FaceSearchServer.h> #include <basic/pipe/TimerElement.h> @@ -28,7 +29,8 @@ class FaceExtractElement : public TimerElement { public: FaceExtractElement(std::string shareMemoryName,const SdkRule& rule); FaceExtractElement(std::string shareMemoryName,const SdkRule& rule,SaveVideoRpcClient_t& rpcClient); ~FaceExtractElement(); @@ -42,6 +44,7 @@ std::vector<::FaceDetect::Data> getFeatures() const; private: FaceExtractElement(std::string shareMemoryName,const SdkRule& rule); virtual void timerFunc() override; IceRpcClient<FaceDetect::FaceExtractServerPrx> faceExtractRpcClient; @@ -56,6 +59,7 @@ Base64 base64; SdkRule m_sdkRule; SaveVideoRpcClient_t& m_rpcClient; }; QiaoJiaSystem/StructureApp/JudgmentRetrogradeTool.cpp
@@ -20,6 +20,11 @@ pManagerEsDB = new EsDBTool(appPref.getStringData("ipAdd"), appPref.getIntData("ipPort")); } JudgmentRetrogradeTool::JudgmentRetrogradeTool(const SdkRule &rule, SaveVideoRpcClient_t &rpcClient):JudgmentRetrogradeTool(rule) { m_rpcClient = rpcClient; } JudgmentRetrogradeTool::~JudgmentRetrogradeTool() { if (pManagerEsDB) { delete pManagerEsDB; @@ -304,8 +309,25 @@ t_json["videoIp"] = getProperty("local_ip");//当前服务器IP地址 t_json["ack_alarm"] = m_triggerElement.getTriggerState() ? "0" : ""; // que ren shi fou bao jing t_json["cluster_id"] = appPref.getStringData("clusterID");; // ji qun id t_json["imgKey"]=obj.properties["imgKey"]; std::string imgKey = obj.properties["imgKey"]; t_json["imgKey"]=imgKey; INFO("SaveImageKey ToES: "<<obj.properties["imgKey"]); try { auto server = m_rpcClient.getServer(); if (!server) { ERR("server is null"); return false; } INFO("Record Video "<<imgKey); server->recordVideo(imgKey); } catch (std::exception &e) { ERR("Record Video Err: "<<imgKey <<" Message: "<<e.what()); return false; } bool retface = false; if (pManagerEsDB) retface = pManagerEsDB->insertData("personaction", "perVideoAction", t_json.toStyledString(), str_uuid); QiaoJiaSystem/StructureApp/JudgmentRetrogradeTool.h
@@ -5,6 +5,7 @@ #ifndef JUDGINGRETROGRADE_JUDGMENTRETROGRADETOOL_H #define JUDGINGRETROGRADE_JUDGMENTRETROGRADETOOL_H #include "SaveVideoRpc.h" #include <iostream> #include <map> #include <list> @@ -55,7 +56,8 @@ public: JudgmentRetrogradeTool() {} JudgmentRetrogradeTool(const SdkRule &rule); JudgmentRetrogradeTool(const SdkRule &rule,SaveVideoRpcClient_t& rpcClient); virtual ~JudgmentRetrogradeTool(); @@ -74,6 +76,7 @@ void setImage(const cv::Mat &value); private: JudgmentRetrogradeTool(const SdkRule &rule); bool setMask(QString area, QString line); void setPerPoint(const long &, cv::Point2f); @@ -146,6 +149,7 @@ QString m_area; QString m_line; bool m_bSetWH; SaveVideoRpcClient_t& m_rpcClient; }; QiaoJiaSystem/StructureApp/PerimeterElement.cpp
@@ -30,6 +30,9 @@ pManagerEsDB = new EsDBTool(appPref.getStringData("ipAdd"), appPref.getIntData("ipPort")); } PerimeterElement::PerimeterElement(const SdkRule &rule,SaveVideoRpcClient_t &rpcClient):PerimeterElement(rule){ m_rpcClient=rpcClient; } PerimeterElement::~PerimeterElement() { if (pManagerEsDB) { delete pManagerEsDB; @@ -382,6 +385,21 @@ t_json["ack_alarm"] = m_triggerElement.getTriggerState() ? "0" : ""; // que ren shi fou bao jing t_json["cluster_id"] = appPref.getStringData("clusterID");; // ji qun id t_json["imgKey"] = imgKey; try { auto server = m_rpcClient.getServer(); if (!server) { ERR("server is null"); return false; } INFO("Record Video "<<imgKey); server->recordVideo(imgKey); } catch (std::exception &e) { ERR("Record Video Err: "<<imgKey <<" Message: "<<e.what()); return false; } INFO("SaveImgKeyToES: "<<imgKey); bool retface = false; if (pManagerEsDB) QiaoJiaSystem/StructureApp/PerimeterElement.h
@@ -12,11 +12,12 @@ #include "DBStruct.h" #include <basic/db/Elasticsearch/EsDBTool.h> #include "IntAreaCalcUtil.h" #include "SaveVideoRpc.h" class PerimeterElement : public basic::PipeElement { public: PerimeterElement(){} PerimeterElement(const SdkRule& rule); PerimeterElement(const SdkRule& rule,SaveVideoRpcClient_t& rpcClient); public: ~PerimeterElement(); @@ -52,7 +53,7 @@ void setImage(const cv::Mat &value) const; private: PerimeterElement(const SdkRule& rule); virtual void threadInitial()override; @@ -89,6 +90,7 @@ std::vector<Point> poly1; bool m_bSetWH; cv::Point2i* pointArray; SaveVideoRpcClient_t& m_rpcClient; }; QiaoJiaSystem/StructureApp/SaveVideoRpc.h
New file @@ -0,0 +1,11 @@ // // Created by basic on 19-2-15. // #ifndef QIAOJIASYSTEM_SAVEVIDEORPC_H #define QIAOJIASYSTEM_SAVEVIDEORPC_H #include "../../../BasicPlatForm/basic/rpc/IceRpc.hpp" #include "../VideoToImage/rpc/RtspAnalysServer.h" using SaveVideoRpcClient_t = IceRpcClient<RtspAnalys::RtspAnalysServerPrx>; #endif //QIAOJIASYSTEM_SAVEVIDEORPC_H