From 4ab366a805a7678642539465d68ef906b4599aeb Mon Sep 17 00:00:00 2001
From: Joseph Redmon <pjreddie@gmail.com>
Date: Mon, 22 Dec 2014 22:35:37 +0000
Subject: [PATCH] some fixes, some other experiments

---
 src/data.c |   42 ++++++++++++++++--------------------------
 1 files changed, 16 insertions(+), 26 deletions(-)

diff --git a/src/data.c b/src/data.c
index 86e59ef..3f74f6b 100644
--- a/src/data.c
+++ b/src/data.c
@@ -81,6 +81,18 @@
     return X;
 }
 
+char **get_random_paths(char **paths, int n, int m)
+{
+    char **random_paths = calloc(n, sizeof(char*));
+    int i;
+    for(i = 0; i < n; ++i){
+        int index = rand()%m;
+        random_paths[i] = paths[index];
+        if(i == 0) printf("%s\n", paths[index]);
+    }
+    return random_paths;
+}
+
 matrix load_labels_paths(char **paths, int n, char **labels, int k)
 {
     matrix y = make_matrix(n, k);
@@ -138,13 +150,8 @@
 
 data load_data_detection_jitter_random(int n, char **paths, int m, int h, int w, int nh, int nw, float scale)
 {
-    char **random_paths = calloc(n, sizeof(char*));
+    char **random_paths = get_random_paths(paths, n, m);
     int i;
-    for(i = 0; i < n; ++i){
-        int index = rand()%m;
-        random_paths[i] = paths[index];
-        if(i == 0) printf("%s\n", paths[index]);
-    }
     data d;
     d.shallow = 0;
     d.X = load_image_paths(random_paths, n, h, w);
@@ -154,10 +161,11 @@
         int dx = rand()%32;
         int dy = rand()%32;
         fill_truth_detection(random_paths[i], d.y.vals[i], 224, 224, nh, nw, scale, dx, dy);
-
         image a = float_to_image(h, w, 3, d.X.vals[i]);
         jitter_image(a,224,224,dy,dx);
     }
+    d.X.cols = 224*224*3;
+   // print_matrix(d.y);
     free(random_paths);
     return d;
 }
@@ -165,13 +173,7 @@
 
 data load_data_detection_random(int n, char **paths, int m, int h, int w, int nh, int nw, float scale)
 {
-    char **random_paths = calloc(n, sizeof(char*));
-    int i;
-    for(i = 0; i < n; ++i){
-        int index = rand()%m;
-        random_paths[i] = paths[index];
-        if(i == 0) printf("%s\n", paths[index]);
-    }
+    char **random_paths = get_random_paths(paths, n, m);
     data d;
     d.shallow = 0;
     d.X = load_image_paths(random_paths, n, h, w);
@@ -180,18 +182,6 @@
     return d;
 }
 
-char **get_random_paths(char **paths, int n, int m)
-{
-    char **random_paths = calloc(n, sizeof(char*));
-    int i;
-    for(i = 0; i < n; ++i){
-        int index = rand()%m;
-        random_paths[i] = paths[index];
-        if(i == 0) printf("%s\n", paths[index]);
-    }
-    return random_paths;
-}
-
 data load_data(char **paths, int n, int m, char **labels, int k, int h, int w)
 {
     if(m) paths = get_random_paths(paths, n, m);

--
Gitblit v1.10.0