From f4d4099104c0a746e2ea2349d724e6fbca0a8757 Mon Sep 17 00:00:00 2001
From: Tino Hager <tino.hager@nager.at>
Date: Tue, 03 Jul 2018 20:29:10 +0000
Subject: [PATCH] Optimize YoloWrapper

---
 build/darknet/YoloWrapper.cs |   14 +++++++++-----
 1 files changed, 9 insertions(+), 5 deletions(-)

diff --git a/build/darknet/YoloWrapper.cs b/build/darknet/YoloWrapper.cs
index 14bf56d..f0c1b0c 100644
--- a/build/darknet/YoloWrapper.cs
+++ b/build/darknet/YoloWrapper.cs
@@ -9,16 +9,16 @@
         private const int MaxObjects = 1000;
 
         [DllImport(YoloLibraryName, EntryPoint = "init")]
-        public static extern int InitializeYolo(string configurationFilename, string weightsFilename, int gpu);
+        private static extern int InitializeYolo(string configurationFilename, string weightsFilename, int gpu);
 
         [DllImport(YoloLibraryName, EntryPoint = "detect_image")]
-        public static extern int DetectImage(string filename, ref BboxContainer container);
+        private static extern int DetectImage(string filename, ref BboxContainer container);
 
         [DllImport(YoloLibraryName, EntryPoint = "detect_mat")]
-        public static extern int DetectImage(IntPtr pArray, int nSize, ref BboxContainer container);
+        private static extern int DetectImage(IntPtr pArray, int nSize, ref BboxContainer container);
 
         [DllImport(YoloLibraryName, EntryPoint = "dispose")]
-        public static extern int DisposeYolo();
+        private static extern int DisposeYolo();
 
         [StructLayout(LayoutKind.Sequential)]
         public struct bbox_t
@@ -66,7 +66,11 @@
             {
                 // Copy the array to unmanaged memory.
                 Marshal.Copy(imageData, 0, pnt, imageData.Length);
-                DetectImage(pnt, imageData.Length, ref container);
+                var count = DetectImage(pnt, imageData.Length, ref container);
+                if (count == -1)
+                {
+                    throw new NotSupportedException($"{YoloLibraryName} has no OpenCV support");
+                }
             }
             catch (Exception exception)
             {

--
Gitblit v1.10.0