From f676f7af18163b4532b6b982bbe1dc57b32e96dd Mon Sep 17 00:00:00 2001 From: zhangjixing <775834166@qq.com> Date: 星期四, 24 一月 2019 15:38:22 +0800 Subject: [PATCH] --- QiaoJiaSystem/StructureApp/JudgmentRetrogradeTool.cpp | 50 ++++++++++++++++++++++++++++++++++++-------------- 1 files changed, 36 insertions(+), 14 deletions(-) diff --git a/QiaoJiaSystem/StructureApp/JudgmentRetrogradeTool.cpp b/QiaoJiaSystem/StructureApp/JudgmentRetrogradeTool.cpp index bcf0518..d0f6d34 100644 --- a/QiaoJiaSystem/StructureApp/JudgmentRetrogradeTool.cpp +++ b/QiaoJiaSystem/StructureApp/JudgmentRetrogradeTool.cpp @@ -12,7 +12,9 @@ JudgmentRetrogradeTool::JudgmentRetrogradeTool(const SdkRule &rule) : m_triggerElement(0, 0), m_sdkRule(rule), - pManagerEsDB(nullptr) + pManagerEsDB(nullptr), + pointArray(nullptr), + npts(0) { pManagerEsDB = new EsDBTool(appPref.getStringData("ipAdd"), appPref.getIntData("ipPort")); } @@ -22,6 +24,12 @@ delete pManagerEsDB; pManagerEsDB = nullptr; } + if(pointArray) + { + delete pointArray; + pointArray=nullptr; + } + } bool JudgmentRetrogradeTool::init(QString area, QString line) { @@ -31,12 +39,15 @@ if (arrayAreas.isEmpty()) { return false; } + int size=arrayAreas.size(); QVector<QPoint> vec; - 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}; vec.push_back(QPoint(x, y)); } @@ -146,12 +157,23 @@ if (getPerRet(scoredRect.id))//judgment.bool { + DBG("scoredRect.id" << scoredRect.id << " val=" << m_mapPerRet[scoredRect.id]); m_mapPerRet[scoredRect.id] -=2400; - auto t_image = image( - CvUtil::zoomRectEqual(scoredRect.rect, 1.2, 1.2) & cv::Rect(0, 0, image.cols, image.rows)).clone(); +// auto t_image = image( +// CvUtil::zoomRectEqual(scoredRect.rect, 1.2, 1.2) & cv::Rect(0, 0, image.cols, image.rows)).clone(); // auto t_image = image(scoredRect.rect& cv::Rect(0, 0, image.cols, image.rows)).clone(); - std::string imgUrl = uploadImgToFdfs(t_image); + + if(pointArray==nullptr) return; + const cv::Point2i* ppt[1] = { pointArray }; + + int npt[]={npts}; + cv::polylines(image, ppt,npt, 1, true,cv::Scalar(255,255,0)); + 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; @@ -243,30 +265,30 @@ t_json["sdkType"] = to_string(m_sdkRule.nSdkType); // t_json["Gender"] = obj.score; - t_json["picName"] = "wait todo";// 鎶撴媿鐓х墖鍚嶇О - t_json["content"] = "wait todo";// 鍐呭鎻忚堪 + t_json["picName"] = "";// 鎶撴媿鐓х墖鍚嶇О + t_json["content"] = "";// 鍐呭鎻忚堪 t_json["personPicUrl"] = "";// 浜哄憳 鍦板簱鍥剧墖 t_json["ChannlId"] = getProperty("ch_id"); // 閫氶亾id t_json["likeDate"] = AppUtil::getTimeSecString(); // 姣斿鏃堕棿 t_json["picAddress"] = m_sdkRule.strAddr.toStdString();// 鎶撴媿鍦板潃 DBG("picAddress="<<m_sdkRule.strAddr.toStdString()); - t_json["picMaxUrl"] = "wait todo"; // 澶у浘璺緞 + t_json["picMaxUrl"] = ""; // 澶у浘璺緞 - // t_json["Age"] ="wait todo"; + // t_json["Age"] =""; t_json["picDate"] = obj.properties["time"]; // 鎶撴媿鏃堕棿锛屽繀椤绘湁 - t_json["picLocalUrl"] = "wait todo"; // 鏈湴璺緞 + t_json["picLocalUrl"] = ""; // 鏈湴璺緞 t_json["isDelete"] = "1";//榛樿1 ,0鏃犳晥 1鏈夋晥 - t_json["likePer"] = obj.score; // 鐩镐技鍊� + t_json["likePer"] = 1.0; // 鐩镐技鍊� - t_json["BaseName"] = "wait todo";// 鍦板簱鍚嶇О + t_json["BaseName"] = "";// 鍦板簱鍚嶇О t_json["videoNum"] = m_sdkRule.strCamId.toStdString();//Video璁惧缂栧彿 t_json["picSmUrl"] = imgUrl; // 鎶撴媿鍥剧墖 t_json["indeviceid"] = appPref.getStringData("fxDevID");;// 璁惧id - t_json["idcard"] = "wait todo"; - t_json["personId"] = "wait todo"; + t_json["idcard"] = ""; + t_json["personId"] = ""; t_json["indevicename"] = appPref.getStringData("fxDevNAME");// 璁惧鍚嶇О t_json["FaceFeature"] = "base64"; t_json["personIsHub"] = m_triggerElement.getTriggerState() ? "1" : "4"; //1: 鎶ヨ 2: 鍙枒 3: 瀹夊叏 4: 鏈煡 -- Gitblit v1.8.0