From 1c622cd0d7d95709ab224224af18a22630aede75 Mon Sep 17 00:00:00 2001
From: zhangjixing <775834166@qq.com>
Date: 星期一, 28 一月 2019 20:02:04 +0800
Subject: [PATCH] 画框根据概率缩放坐标

---
 QiaoJiaSystem/StructureApp/JudgmentRetrogradeTool.cpp |   24 +++++++++++++++++++-----
 1 files changed, 19 insertions(+), 5 deletions(-)

diff --git a/QiaoJiaSystem/StructureApp/JudgmentRetrogradeTool.cpp b/QiaoJiaSystem/StructureApp/JudgmentRetrogradeTool.cpp
index d0f6d34..34d4b3c 100644
--- a/QiaoJiaSystem/StructureApp/JudgmentRetrogradeTool.cpp
+++ b/QiaoJiaSystem/StructureApp/JudgmentRetrogradeTool.cpp
@@ -13,6 +13,7 @@
     m_triggerElement(0, 0),
     m_sdkRule(rule),
     pManagerEsDB(nullptr),
+    m_bSetWH(false),
     pointArray(nullptr),
     npts(0)
 {
@@ -31,8 +32,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 +47,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);
     }
 
 
@@ -345,4 +354,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