From ce0b85c199da9b97e4af1a466ed41e079edfb35e Mon Sep 17 00:00:00 2001 From: MistEO Date: Mon, 13 Sep 2021 01:17:38 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E5=AF=B9identityArea?= =?UTF-8?q?=E5=AD=97=E6=AE=B5=E7=9A=84=E6=94=AF=E6=8C=81=EF=BC=8C=E4=BB=85?= =?UTF-8?q?=E8=AF=86=E5=88=AB=E6=8C=87=E5=AE=9A=E5=8C=BA=E5=9F=9F=E3=80=82?= =?UTF-8?q?=E5=90=8C=E6=97=B6=E4=BC=98=E5=8C=96Identity=E9=83=A8=E5=88=86?= =?UTF-8?q?=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- resource/config.json | 32 +++++++++- resource/operators/Elite1.png | Bin 36641 -> 0 bytes resource/operators/Elite2.png | Bin 36392 -> 0 bytes src/MeoAssistance/AsstAux.h | 6 ++ src/MeoAssistance/AsstDef.h | 1 + src/MeoAssistance/Configer.cpp | 8 +++ src/MeoAssistance/Identify.cpp | 68 +++++++++------------- src/MeoAssistance/Identify.h | 21 ++++--- src/MeoAssistance/IdentifyOperTask.cpp | 20 +------ src/MeoAssistance/InfrastAbstractTask.cpp | 14 ++--- src/MeoAssistance/ProcessTask.cpp | 27 +++++++-- 11 files changed, 116 insertions(+), 81 deletions(-) delete mode 100644 resource/operators/Elite1.png delete mode 100644 resource/operators/Elite2.png diff --git a/resource/config.json b/resource/config.json index 2d260abdd8..059aed8ad7 100644 --- a/resource/config.json +++ b/resource/config.json @@ -284,6 +284,12 @@ "action": "clickSelf", "cache": false, "rearDelay": 3000, + "identifyArea": [ + 1080, + 570, + 195, + 130 + ], "exceededNext": [ "ReturnToMall" ], @@ -298,7 +304,13 @@ "algorithm": "OcrDetect", "text": [ "访问下位" ], "action": "clickSelf", - "rearDelay": 3000, + "rearDelay": 3000, + "identifyArea": [ + 1080, + 570, + 195, + 130 + ], "exceededNext": [ "ReturnToMall" ], @@ -366,6 +378,12 @@ "algorithm": "OcrDetect", "text": [ "今日参与", "已达上限" ], "action": "doNothing", + "identifyArea": [ + 900, + 50, + 375, + 140 + ], "next": [ "ReturnToMall" ] @@ -373,6 +391,12 @@ "VisitNextBlack": { "template": "VisitNextBlack.png", "action": "doNothing", + "identifyArea": [ + 1080, + 570, + 195, + 130 + ], "next": [ "ReturnToMall" ] @@ -557,6 +581,12 @@ "text": [ "可收获", "订单交付", "信赖" ], "rearDelay": 1000, "action": "clickSelf", + "identifyArea": [ + 0, + 600, + 800, + 118 + ], "next": [ "InfrastReward", "InfrastExitReward" diff --git a/resource/operators/Elite1.png b/resource/operators/Elite1.png deleted file mode 100644 index 5a9012c1ea09c5af4c78feb16ee75b9dc8b7b87a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36641 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 C(_91q diff --git a/resource/operators/Elite2.png b/resource/operators/Elite2.png deleted file mode 100644 index 5a05862ea27851bd26ddc6f20d7152794a9b65de..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36392 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 E3&f7O!~g&Q diff --git a/src/MeoAssistance/AsstAux.h b/src/MeoAssistance/AsstAux.h index 1987402b86..3b7c792752 100644 --- a/src/MeoAssistance/AsstAux.h +++ b/src/MeoAssistance/AsstAux.h @@ -79,6 +79,12 @@ namespace asst { return strTemp; } + template + constexpr inline RetTy make_rect(const ArgType& rect) + { + return RetTy{ rect.x, rect.y, rect.width, rect.height }; + } + //template::value>::type> // std::string VectorToString(const std::vector& vector, bool to_gbk = false) { diff --git a/src/MeoAssistance/AsstDef.h b/src/MeoAssistance/AsstDef.h index f5eb4ce2aa..afb96c5fa0 100644 --- a/src/MeoAssistance/AsstDef.h +++ b/src/MeoAssistance/AsstDef.h @@ -134,6 +134,7 @@ namespace asst { int pre_delay = 0; // 执行该任务前的延时 int rear_delay = 0; // 执行该任务后的延时 int retry_times = INT_MAX; // 未找到图像时的重试次数 + Rect identify_area; // 要识别的区域,若为0则全图识别 }; // 文字识别任务的信息 diff --git a/src/MeoAssistance/Configer.cpp b/src/MeoAssistance/Configer.cpp index 673ab60e12..9796032d84 100644 --- a/src/MeoAssistance/Configer.cpp +++ b/src/MeoAssistance/Configer.cpp @@ -182,6 +182,14 @@ bool asst::Configer::parse(json::value&& json) task_info_ptr->reduce_other_times.emplace_back(reduce.as_string()); } } + if (task_json.exist("identifyArea")) { + json::array& area_arr = task_json["identifyArea"].as_array(); + task_info_ptr->identify_area = Rect( + area_arr[0].as_integer(), + area_arr[1].as_integer(), + area_arr[2].as_integer(), + area_arr[3].as_integer()); + } json::array& next_arr = task_json["next"].as_array(); for (const json::value& next : next_arr) { diff --git a/src/MeoAssistance/Identify.cpp b/src/MeoAssistance/Identify.cpp index 3e206c7d9b..961d0c7a39 100644 --- a/src/MeoAssistance/Identify.cpp +++ b/src/MeoAssistance/Identify.cpp @@ -17,22 +17,22 @@ using namespace cv::xfeatures2d; bool Identify::add_image(const std::string& name, const std::string& path) { - Mat mat = imread(path); - if (mat.empty()) { + Mat image = imread(path); + if (image.empty()) { return false; } - m_mat_map.emplace(name, mat); + m_mat_map.emplace(name, image); return true; } bool asst::Identify::add_text_image(const std::string& text, const std::string& path) { - Mat mat = imread(path); - if (mat.empty()) { + Mat image = imread(path); + if (image.empty()) { return false; } - m_feature_map.emplace(text, surf_detect(mat)); + m_feature_map.emplace(text, surf_detect(image)); return true; } @@ -73,21 +73,11 @@ double Identify::image_hist_comp(const cv::Mat& src, const cv::MatND& hist) return 1 - compareHist(image_2_hist(src), hist, CV_COMP_BHATTACHARYYA); } -asst::Rect asst::Identify::cvrect_2_rect(const cv::Rect& cvRect) -{ - return asst::Rect(cvRect.x, cvRect.y, cvRect.width, cvRect.height); -} - -cv::Rect asst::Identify::rect_2_cvrect(const asst::Rect& rect) -{ - return cv::Rect(rect.x, rect.y, rect.width, rect.height); -} - -std::pair, cv::Mat> asst::Identify::surf_detect(const cv::Mat& mat) +std::pair, cv::Mat> asst::Identify::surf_detect(const cv::Mat& image) { // 灰度图转换 cv::Mat mat_gray; - cv::cvtColor(mat, mat_gray, cv::COLOR_RGB2GRAY); + cv::cvtColor(image, mat_gray, cv::COLOR_RGB2GRAY); constexpr int min_hessian = 400; // SURF特征点检测 @@ -243,9 +233,9 @@ std::optional asst::Identify::feature_match( return std::nullopt; } -std::vector