From 573d7e80814a4cc3c08897f6c0f67ea189339856 Mon Sep 17 00:00:00 2001
From: AlexeyAB <alexeyab84@gmail.com>
Date: Wed, 16 May 2018 00:03:23 +0000
Subject: [PATCH] Added def array_to_image(arr): to the darknet.py Usage: import scipy.misc sci_image = scipy.misc.imread(image) im, arr = array_to_image(sci_image)
---
darknet.py | 15 +++++++++++++++
1 files changed, 15 insertions(+), 0 deletions(-)
diff --git a/darknet.py b/darknet.py
index 873dab7..700ed0c 100644
--- a/darknet.py
+++ b/darknet.py
@@ -188,6 +188,18 @@
predict_image.argtypes = [c_void_p, IMAGE]
predict_image.restype = POINTER(c_float)
+def array_to_image(arr):
+ import numpy as np
+ # need to return old values to avoid python freeing memory
+ arr = arr.transpose(2,0,1)
+ c = arr.shape[0]
+ h = arr.shape[1]
+ w = arr.shape[2]
+ arr = np.ascontiguousarray(arr.flat, dtype=np.float32) / 255.0
+ data = arr.ctypes.data_as(POINTER(c_float))
+ im = IMAGE(w,h,c,data)
+ return im, arr
+
def classify(net, meta, im):
out = predict_image(net, im)
res = []
@@ -206,6 +218,9 @@
"""
#pylint: disable= C0321
im = load_image(image, 0, 0)
+ #import scipy.misc
+ #sci_image = scipy.misc.imread(image)
+ #im, arr = array_to_image(sci_image) # you should comment line below: free_image(im)
if debug: print("Loaded image")
num = c_int(0)
if debug: print("Assigned num")
--
Gitblit v1.10.0