From c06ac5deb150c99b53d1ff460a88cf2543698788 Mon Sep 17 00:00:00 2001
From: chenshijun <csj_sky@126.com>
Date: 星期一, 15 四月 2019 15:26:51 +0800
Subject: [PATCH] vpt调试基本ok
---
QiaoJiaSystem/StructureApp/JudgmentRetrogradeTool.cpp | 46 +++++++++++++++++++++++++++++++++++++++-------
1 files changed, 39 insertions(+), 7 deletions(-)
diff --git a/QiaoJiaSystem/StructureApp/JudgmentRetrogradeTool.cpp b/QiaoJiaSystem/StructureApp/JudgmentRetrogradeTool.cpp
index d0f6d34..4742672 100644
--- a/QiaoJiaSystem/StructureApp/JudgmentRetrogradeTool.cpp
+++ b/QiaoJiaSystem/StructureApp/JudgmentRetrogradeTool.cpp
@@ -13,8 +13,10 @@
m_triggerElement(0, 0),
m_sdkRule(rule),
pManagerEsDB(nullptr),
+ m_bSetWH(false),
pointArray(nullptr),
- npts(0)
+ npts(0),
+ m_rpcClient("RtspAnalysServer", "127.0.0.1",appPref.getIntData("RpcVTIMPort"),"tcp")
{
pManagerEsDB = new EsDBTool(appPref.getStringData("ipAdd"), appPref.getIntData("ipPort"));
}
@@ -31,8 +33,13 @@
}
}
+bool JudgmentRetrogradeTool::init(QString area, QString line)
+{
+ m_area=area;
+ m_line=line;
+}
-bool JudgmentRetrogradeTool::init(QString area, QString line) {
+bool JudgmentRetrogradeTool::setMask(QString area, QString line) {
//#todo string ->json
QJsonArray arrayAreas = getJsonArrayFromQString(area);
@@ -41,14 +48,17 @@
}
int size=arrayAreas.size();
QVector<QPoint> vec;
+ float sizeW=(float)appPref.getIntData(m_sdkRule.strCamId.toStdString()+"width")/480;
+ float sizeH=(float)appPref.getIntData(m_sdkRule.strCamId.toStdString()+"height")/270;
+ for (int i = 0; i < arrayAreas.size(); ++i) {
pointArray=new cv::Point2i[size];
- for (int i = 0; i < size; ++i) {
QJsonValue jsonValue = arrayAreas[i];
QJsonObject obj = jsonValue.toObject();
- int x = obj.value("x").toDouble() * 4;
- int y = obj.value("y").toDouble() * 4;
- pointArray[i]={x,y};
+ int x = obj.value("x").toDouble() *sizeW;
+ int y = obj.value("y").toDouble() *sizeH;
vec.push_back(QPoint(x, y));
+ DBG("width="<<sizeW);
+ DBG("height="<<sizeH);
}
@@ -172,7 +182,6 @@
cv::arrowedLine(image,m_UpBaseLine.start_Point,m_UpBaseLine.end_Point,cv::Scalar(0,0,255));
cv::rectangle(image, scoredRect.rect, cv::Scalar(0, 0, 255), 2);
-
std::string imgUrl = uploadImgToFdfs(image);
saveInfoToEs(imgUrl, scoredRect);
state=true;
@@ -295,6 +304,24 @@
t_json["videoIp"] = getProperty("local_ip");//褰撳墠鏈嶅姟鍣↖P鍦板潃
t_json["ack_alarm"] = m_triggerElement.getTriggerState() ? "0" : ""; // que ren shi fou bao jing
t_json["cluster_id"] = appPref.getStringData("clusterID");; // ji qun id
+ 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)
@@ -345,4 +372,9 @@
void JudgmentRetrogradeTool::setImage(const cv::Mat &value) {
value.copyTo(image);
+ if(!m_bSetWH)
+ {
+ setMask(m_area,m_line);
+ m_bSetWH=true;
+ }
}
--
Gitblit v1.8.0