From 76276fdbeade20f30f9474e32a289dba5c09d920 Mon Sep 17 00:00:00 2001
From: AlexeyAB <alexeyab84@gmail.com>
Date: Wed, 23 Aug 2017 18:54:24 +0000
Subject: [PATCH] You can specify filename for output video by using -out_filename res.avi

---
 src/image.c |   34 +++++++++++++++++++++-------------
 1 files changed, 21 insertions(+), 13 deletions(-)

diff --git a/src/image.c b/src/image.c
index b063a68..3375ea2 100644
--- a/src/image.c
+++ b/src/image.c
@@ -13,6 +13,10 @@
 #ifdef OPENCV
 #include "opencv2/highgui/highgui_c.h"
 #include "opencv2/imgproc/imgproc_c.h"
+#include "opencv2/core/version.hpp"
+#ifndef CV_VERSION_EPOCH
+#include "opencv2/videoio/videoio_c.h"
+#endif
 #endif
 
 
@@ -291,7 +295,7 @@
 			CvScalar black_color;
 			black_color.val[0] = 0;
 			CvFont font;
-			cvInitFont(&font, CV_FONT_HERSHEY_COMPLEX, font_size, font_size, 0, font_size*3, 8);
+			cvInitFont(&font, CV_FONT_HERSHEY_SIMPLEX, font_size, font_size, 0, font_size * 3, 8);	
 			cvPutText(show_img, names[class], pt_text, &font, black_color);
 		}
 	}
@@ -514,7 +518,7 @@
 }
 
 
-void show_image_cv_ipl(IplImage *disp, const char *name)
+void show_image_cv_ipl(IplImage *disp, const char *name, const char *out_filename)
 {
 	if (disp == NULL) return;
 	char buff[256];
@@ -525,7 +529,7 @@
 	++windows;
 	cvShowImage(buff, disp);
 
-
+	if(out_filename)
 	{
 		CvSize size;
 		{
@@ -535,15 +539,13 @@
 		static CvVideoWriter* output_video = NULL;    // cv::VideoWriter output_video;
 		if (output_video == NULL)
 		{
-			//printf("\n SRC output_video = %p \n", output_video);
-			const char* output_name = "test_dnn_out.avi";
-			//output_video = cvCreateVideoWriter(output_name, CV_FOURCC('H', '2', '6', '4'), 25, size, 1);
-			output_video = cvCreateVideoWriter(output_name, CV_FOURCC('D', 'I', 'V', 'X'), 25, size, 1);
-			//output_video = cvCreateVideoWriter(output_name, CV_FOURCC('M', 'J', 'P', 'G'), 25, size, 1);
-			//printf("\n cvCreateVideoWriter, DST output_video = %p  \n", output_video);
+			//const char* output_name = "test_dnn_out.avi";
+			//output_video = cvCreateVideoWriter(out_filename, CV_FOURCC('H', '2', '6', '4'), 25, size, 1);
+			output_video = cvCreateVideoWriter(out_filename, CV_FOURCC('D', 'I', 'V', 'X'), 25, size, 1);
+			//output_video = cvCreateVideoWriter(out_filename, CV_FOURCC('M', 'J', 'P', 'G'), 25, size, 1);
 		}
 
-		//cvWriteFrame(output_video, disp);	// comment this line to improve FPS !!!
+		cvWriteFrame(output_video, disp);	// comment this line to improve FPS !!!
 		printf("\n cvWriteFrame \n");
 	}
 
@@ -1151,7 +1153,7 @@
 
 void random_distort_image(image im, float hue, float saturation, float exposure)
 {
-    float dhue = rand_uniform(-hue, hue);
+    float dhue = rand_uniform_strong(-hue, hue);
     float dsat = rand_scale(saturation);
     float dexp = rand_scale(exposure);
     distort_image(im, dhue, dsat, dexp);
@@ -1303,9 +1305,15 @@
 image load_image(char *filename, int w, int h, int c)
 {
 #ifdef OPENCV
-    image out = load_image_cv(filename, c);
+
+#ifndef CV_VERSION_EPOCH
+	image out = load_image_stb(filename, c);	// OpenCV 3.x
 #else
-    image out = load_image_stb(filename, c);
+	image out = load_image_cv(filename, c);		// OpenCV 2.4.x
+#endif
+
+#else
+    image out = load_image_stb(filename, c);	// without OpenCV
 #endif
 
     if((h && w) && (h != out.h || w != out.w)){

--
Gitblit v1.10.0