From 439a23896bda9c4e954092816354914e645579b6 Mon Sep 17 00:00:00 2001 From: zhangmeng <775834166@qq.com> Date: 星期一, 10 六月 2019 09:37:13 +0800 Subject: [PATCH] 替换这个文件 --- QiaoJiaSystem/StructureApp/PerimeterElement.cpp | 43 ++++++++++++++++++++++++++++--------------- 1 files changed, 28 insertions(+), 15 deletions(-) diff --git a/QiaoJiaSystem/StructureApp/PerimeterElement.cpp b/QiaoJiaSystem/StructureApp/PerimeterElement.cpp index 957297f..8c3c9ab 100644 --- a/QiaoJiaSystem/StructureApp/PerimeterElement.cpp +++ b/QiaoJiaSystem/StructureApp/PerimeterElement.cpp @@ -25,8 +25,7 @@ m_bIsMask(true), m_bSetWH(false), pointArray(nullptr), - m_rpcClient("RtspAnalysServer", "127.0.0.1",appPref.getIntData("RpcVTIMPort"),"tcp") -{ + m_rpcClient("RtspAnalysServer", "127.0.0.1", appPref.getIntData("RpcVTIMPort"), "tcp") { pManagerEsDB = new EsDBTool(appPref.getStringData("ipAdd"), appPref.getIntData("ipPort")); } @@ -36,8 +35,7 @@ delete pManagerEsDB; pManagerEsDB = nullptr; } - if(pointArray) - { + if (pointArray) { // delete[] pointArray[0]; delete[] pointArray; } @@ -62,7 +60,7 @@ m_recVec.clear(); // DBG("Objs="<<mObjs.size()<<" fSensitivity="<<m_sdkRule.fSensitivity<<" nThreshold"<<m_sdkRule.nThreshold); - for (auto obj:mObjs) { + for (auto &obj:mObjs) { if (obj.score < m_sdkRule.fSensitivity)continue; @@ -74,9 +72,8 @@ // DBG("picDate="<<picDate); } - if(imgKey.empty()) - { - imgKey =obj.properties["imgKey"]; + if (imgKey.empty()) { + imgKey = obj.properties["imgKey"]; } if (m_sdkRule.nSdkType == PerimeterSdk) { @@ -121,19 +118,32 @@ switch (m_sdkRule.nSdkType) { case PerimeterSdk: - //state = num > 0 ; - state =( num !=mRealNum); + state = num > 0 ; +// state =( num !=mRealNum); // DBG("num="<<num<< "time="<< picDate); // INFO("SDK Type: PerimeterSdk"); break; case CrowdSdk: - state = num > m_sdkRule.nAlarmNumLowerLimit && num !=mRealNum; + state = num > m_sdkRule.nAlarmNumLowerLimit /*&& num !=mRealNum*/; // INFO("SDK Type: CrowdSdk"); break; case PerHubSdk: - state = num > m_sdkRule.nAlarmNumLowerLimit && num < m_sdkRule.nAlarmNumUpperLimit && num !=mRealNum; + DBG("nAlarmNumLowerLimit:" << m_sdkRule.nAlarmNumLowerLimit + << " nAlarmNumUpperLimit:" << m_sdkRule.nAlarmNumUpperLimit + << " mRealNum:" << num); + if(m_sdkRule.nAlarmNumUpperLimit == -1){ + state = num >= m_sdkRule.nAlarmNumLowerLimit /*&& num !=mRealNum*/; + }else if(m_sdkRule.nAlarmNumLowerLimit == -1){ + state = num <= m_sdkRule.nAlarmNumUpperLimit /*&& num !=mRealNum*/; + } else { + state = num >= m_sdkRule.nAlarmNumLowerLimit && num <= m_sdkRule.nAlarmNumUpperLimit /*&& num != mRealNum*/; + } + + if((m_sdkRule.nAlarmNumUpperLimit == 0) && (m_sdkRule.nAlarmNumLowerLimit == -1)){//绂诲矖 + state = num <= m_sdkRule.nAlarmNumUpperLimit; + } // INFO("SDK Type: PerHubSdk"); // if(m_sdkRule.nAlarmNumLowerLimit>=0) @@ -171,7 +181,9 @@ m_triggerElement.triggerOnce(); if (m_triggerElement.getTriggerState()) { - if(num > 0) { +// if((m_sdkRule.nAlarmNumUpperLimit == 0) && (m_sdkRule.nAlarmNumLowerLimit == -1)) {//绂诲矖 +// }else { + //if(num > 0) { if(pointArray!=nullptr) { const cv::Point2i* ppt[1] = { pointArray }; @@ -193,9 +205,10 @@ // } std::string imgUrl = uploadImgToFdfs(image); saveInfoToEs(imgUrl, picDate,imgKey); - } + //} // DBG("num=" << num << " lastnum=" << mRealNum); - mRealNum = num; +// } +// mRealNum = num; //todo 閲嶇疆鎶ヨtrigger m_triggerElement.setState(false); -- Gitblit v1.8.0