From eda1a611bc4afcf1c36a6c728f432aec1f688e1b Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期一, 27 六月 2022 19:13:36 +0800
Subject: [PATCH] 'GP代码识别'

---
 ConsoleApplication/main.cpp |   58 ++++++++++++++++++++++++++++++++++++++++++++++++----------
 1 files changed, 48 insertions(+), 10 deletions(-)

diff --git a/ConsoleApplication/main.cpp b/ConsoleApplication/main.cpp
index f81986d..58a73d5 100644
--- a/ConsoleApplication/main.cpp
+++ b/ConsoleApplication/main.cpp
@@ -20,7 +20,7 @@
 		//鍚岃姳椤�(v9.10.50) - 娣卞湷Level-2鍒嗘椂璧板娍
 		//鍚岃姳椤�(v9.10.50) - pppp
 		list<TradeData>  map = creenDataCapture->captureLevel2TradeData(cv::imread( "C:\\Users\\Administrator\\Desktop\\ocr\\demo\\0_388.jpg"),p);
-		//break;
+		break;
 	}
 
 	return 0L;
@@ -91,13 +91,35 @@
 */
 
 int main() {
-
-	
+	//THSActionUtil::openSecondScreen();
+	RecognitionUtil::init();
+	CaptureUtil::init("鍚岃姳椤�(v9.10.50) - 鐑棬鑲�888");// 鐑棬鑲�888
+	ImgUtil::init();
 	ths();
+
+	/*
+	RecognitionManager* recognitionManager = new RecognitionManager();
+	
+	for (int i = 1;i < 14;i++)
+	{
+		string path = "C:\\Users\\Administrator\\Desktop\\ocr\\split\\";
+		path.append(to_string(i)).append("_1.jpg");
+		list<cv::Mat> list1 = ImgUtil::splitNum(cv::imread(path.c_str(), cv::IMREAD_GRAYSCALE));
+		list<uchar> resultList= recognitionManager->recognitionGPCode(list1);
+		list<uchar>::iterator ele;
+		for (ele = resultList.begin();ele != resultList.end();++ele) {
+			printf("%d",*ele);
+		}
+		printf("\n");
+	}
+	*/
+
+
 	cv::waitKey(0);
 	cv::destroyAllWindows();
 	return 0;
-	/*
+		
+	
 	
 	string path = "C:\\Users\\Administrator\\Desktop\\ocr\\temp.jpg";
 	
@@ -105,7 +127,7 @@
 	cv::Mat img = CaptureUtil::capture(HWND(0x00010CA6));
 	cv::imwrite(path, img);
 	
-	*/
+
 
 	//return 0;
 	
@@ -113,7 +135,7 @@
 	RecognitionUtil::init();
 	CaptureUtil::init("鍚岃姳椤�(v9.10.50) - 鐑棬鑲�888");// 鐑棬鑲�888
 	ImgUtil::init();
-	for (int i = 0;i < 8;i++)
+	for (int i = 0;i < 1;i++)
 	{
 		int* params =(int*) malloc(sizeof(int));
 		*params = i;
@@ -205,16 +227,32 @@
 
 void ths() {
 	//00421530
-	cv::Mat img = CaptureUtil::capture(HWND(0x00161728));
+	cv::Mat img = CaptureUtil::capture(HWND(0x00040CAE));
 	img=ImgUtil::grayImage(img);
-	cv::imwrite("C:\\Users\\Administrator\\Desktop\\ocr\\bk.jpg",img);
-	std::list<GPCodeArea> list=  THSActionUtil::recognitionGPCode(img);
+	//cv::imwrite("C:\\Users\\Administrator\\Desktop\\ocr\\bk.jpg",img);
+	std::list<GPCodeArea> list=  THSActionUtil::recognitionGPArea(img);
 	std::list<GPCodeArea>::iterator ele;
+	RecognitionManager* recognitionManager = new RecognitionManager();
+	int index = 0;
 	for (ele = list.begin();ele != list.end();ele++) {
+		index++;
+		GPCodeArea codeArea = *ele;
+		if (codeArea.type == IMG_TYPE_GP) {
+			cv::Mat nums = cv::Mat(img,cv::Rect( codeArea.startx, codeArea.starty, codeArea.endx- codeArea.startx+1, codeArea.endy- codeArea.starty+1));
+			std::list<cv::Mat> list2 = ImgUtil::splitNum(nums);
+			std::list<uchar> resultList = recognitionManager->recognitionGPCode(list2);
+			std::list<uchar>::iterator ele1;
+			printf("%d-", index);
+			for (ele1 = resultList.begin();ele1 != resultList.end();++ele1) {
+				printf("%d", *ele1);
+			}
+			printf("\n");
+		}
+
+		continue;
 
 		SetForegroundWindow(HWND(0x00161728));
 		SetFocus(HWND(0x00161728));
-		GPCodeArea codeArea = *ele;
 		if (codeArea.type == IMG_TYPE_ADD) {
 			RECT rc;
 			GetWindowRect(HWND(0x00161728), &rc);

--
Gitblit v1.8.0