From 56fd10435a4019e15783ed4a53ddb53722bcac20 Mon Sep 17 00:00:00 2001
From: AlexeyAB <alexeyab84@gmail.com>
Date: Thu, 26 Oct 2017 12:50:38 +0000
Subject: [PATCH] Use load_image_cv() on OpenCV 3.x

---
 src/image.c    |   15 ++++++++++++---
 src/detector.c |   13 +++++++++----
 2 files changed, 21 insertions(+), 7 deletions(-)

diff --git a/src/detector.c b/src/detector.c
index 367b3a3..44f715d 100644
--- a/src/detector.c
+++ b/src/detector.c
@@ -11,15 +11,20 @@
 #include "opencv2/highgui/highgui_c.h"
 #include "opencv2/core/core_c.h"
 #include "opencv2/core/version.hpp"
+
 #ifndef CV_VERSION_EPOCH
 #include "opencv2/videoio/videoio_c.h"
-#pragma comment(lib, "opencv_world320.lib")  
+#define OPENCV_VERSION CVAUX_STR(CV_VERSION_MAJOR)""CVAUX_STR(CV_VERSION_MINOR)""CVAUX_STR(CV_VERSION_REVISION)
+#pragma comment(lib, "opencv_world" OPENCV_VERSION ".lib")
 #else
-#pragma comment(lib, "opencv_core2413.lib")  
-#pragma comment(lib, "opencv_imgproc2413.lib")  
-#pragma comment(lib, "opencv_highgui2413.lib") 
+#define OPENCV_VERSION CVAUX_STR(CV_VERSION_EPOCH)""CVAUX_STR(CV_VERSION_MAJOR)""CVAUX_STR(CV_VERSION_MINOR)
+#pragma comment(lib, "opencv_core" OPENCV_VERSION ".lib")
+#pragma comment(lib, "opencv_imgproc" OPENCV_VERSION ".lib")
+#pragma comment(lib, "opencv_highgui" OPENCV_VERSION ".lib")
 #endif
+
 #endif
+
 static int coco_ids[] = {1,2,3,4,5,6,7,8,9,10,11,13,14,15,16,17,18,19,20,21,22,23,24,25,27,28,31,32,33,34,35,36,37,38,39,40,41,42,43,44,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,67,70,72,73,74,75,76,77,78,79,80,81,82,84,85,86,87,88,89,90};
 
 void train_detector(char *datacfg, char *cfgfile, char *weightfile, int *gpus, int ngpus, int clear)
diff --git a/src/image.c b/src/image.c
index 75364e1..3afe027 100644
--- a/src/image.c
+++ b/src/image.c
@@ -16,6 +16,7 @@
 #include "opencv2/core/version.hpp"
 #ifndef CV_VERSION_EPOCH
 #include "opencv2/videoio/videoio_c.h"
+#include "opencv2/imgcodecs/imgcodecs_c.h"
 #endif
 #endif
 
@@ -190,6 +191,14 @@
         float prob = probs[i][class];
         if(prob > thresh){
 
+			//// for comparison with OpenCV version of DNN Darknet Yolo v2
+			//printf("\n %f, %f, %f, %f, ", boxes[i].x, boxes[i].y, boxes[i].w, boxes[i].h);
+			// int k;
+			//for (k = 0; k < classes; ++k) {
+			//	printf("%f, ", probs[i][k]);
+			//}
+			//printf("\n");
+
             int width = im.h * .012;
 
             if(0){
@@ -289,7 +298,7 @@
 			color.val[2] = blue * 256;
 
 			cvRectangle(show_img, pt1, pt2, color, width, 8, 0);
-
+			//printf("left=%d, right=%d, top=%d, bottom=%d, obj_id=%d, obj=%s \n", left, right, top, bot, class, names[class]);
 			cvRectangle(show_img, pt_text_bg1, pt_text_bg2, color, width, 8, 0);
 			cvRectangle(show_img, pt_text_bg1, pt_text_bg2, color, CV_FILLED, 8, 0);	// filled
 			CvScalar black_color;
@@ -1356,8 +1365,8 @@
 #ifdef OPENCV
 
 #ifndef CV_VERSION_EPOCH
-	image out = load_image_stb(filename, c);	// OpenCV 3.x
-	//image out = load_image_cv(filename, c);
+	//image out = load_image_stb(filename, c);	// OpenCV 3.x
+	image out = load_image_cv(filename, c);
 #else
 	image out = load_image_cv(filename, c);		// OpenCV 2.4.x
 #endif

--
Gitblit v1.10.0