From a9e16d914a5e1247c4149d95afbe8f68ca846a53 Mon Sep 17 00:00:00 2001
From: Joseph Redmon <pjreddie@gmail.com>
Date: Wed, 23 Sep 2015 00:34:48 +0000
Subject: [PATCH] more writing stuff

---
 src/convolutional_layer.c |   21 +++++++++++++++++----
 1 files changed, 17 insertions(+), 4 deletions(-)

diff --git a/src/convolutional_layer.c b/src/convolutional_layer.c
index 378e23f..6e3f38b 100644
--- a/src/convolutional_layer.c
+++ b/src/convolutional_layer.c
@@ -122,9 +122,9 @@
     cuda_free(l->delta_gpu);
     cuda_free(l->output_gpu);
 
-    l->col_image_gpu = cuda_make_array(0, out_h*out_w*l->size*l->size*l->c);
-    l->delta_gpu = cuda_make_array(0, l->batch*out_h*out_w*l->n);
-    l->output_gpu = cuda_make_array(0, l->batch*out_h*out_w*l->n);
+    l->col_image_gpu = cuda_make_array(l->col_image, out_h*out_w*l->size*l->size*l->c);
+    l->delta_gpu =     cuda_make_array(l->delta, l->batch*out_h*out_w*l->n);
+    l->output_gpu =    cuda_make_array(l->output, l->batch*out_h*out_w*l->n);
     #endif
 }
 
@@ -242,13 +242,26 @@
     }
 }
 
+void rescale_filters(convolutional_layer l, float scale, float trans)
+{
+    int i;
+    for(i = 0; i < l.n; ++i){
+        image im = get_convolutional_filter(l, i);
+        if (im.c == 3) {
+            scale_image(im, scale);
+            float sum = sum_array(im.data, im.w*im.h*im.c);
+            l.biases[i] += sum*trans;
+        }
+    }
+}
+
 image *get_filters(convolutional_layer l)
 {
     image *filters = calloc(l.n, sizeof(image));
     int i;
     for(i = 0; i < l.n; ++i){
         filters[i] = copy_image(get_convolutional_filter(l, i));
-        normalize_image(filters[i]);
+        //normalize_image(filters[i]);
     }
     return filters;
 }

--
Gitblit v1.10.0