Skip to content
Snippets Groups Projects
Commit 47528e37 authored by Joseph Redmon's avatar Joseph Redmon
Browse files

crop layer scaling and trans on cpu

parent d97331b8
No related branches found
No related tags found
No related merge requests found
GPU=1
GPU=0
DEBUG=0
ARCH= -arch=sm_52
......
#include "cuda.h"
#ifndef ACTIVATIONS_H
#define ACTIVATIONS_H
#include "cuda.h"
#include "math.h"
typedef enum{
LOGISTIC, RELU, RELIE, LINEAR, RAMP, TANH, PLSE
......
......@@ -38,15 +38,6 @@ cost_layer *make_cost_layer(int batch, int inputs, COST_TYPE type)
return layer;
}
void pull_cost_layer(cost_layer layer)
{
cuda_pull_array(layer.delta_gpu, layer.delta, layer.batch*layer.inputs);
}
void push_cost_layer(cost_layer layer)
{
cuda_push_array(layer.delta_gpu, layer.delta, layer.batch*layer.inputs);
}
void forward_cost_layer(cost_layer layer, network_state state)
{
if (!state.truth) return;
......@@ -63,6 +54,16 @@ void backward_cost_layer(const cost_layer layer, network_state state)
#ifdef GPU
void pull_cost_layer(cost_layer layer)
{
cuda_pull_array(layer.delta_gpu, layer.delta, layer.batch*layer.inputs);
}
void push_cost_layer(cost_layer layer)
{
cuda_push_array(layer.delta_gpu, layer.delta, layer.batch*layer.inputs);
}
void forward_cost_layer_gpu(cost_layer layer, network_state state)
{
if (!state.truth) return;
......
......@@ -37,6 +37,8 @@ void forward_crop_layer(const crop_layer layer, network_state state)
int flip = (layer.flip && rand()%2);
int dh = rand()%(layer.h - layer.crop_height + 1);
int dw = rand()%(layer.w - layer.crop_width + 1);
float scale = 2;
float trans = -1;
if(!state.train){
flip = 0;
dh = (layer.h - layer.crop_height)/2;
......@@ -53,7 +55,7 @@ void forward_crop_layer(const crop_layer layer, network_state state)
}
row = i + dh;
index = col+layer.w*(row+layer.h*(c + layer.c*b));
layer.output[count++] = state.input[index];
layer.output[count++] = state.input[index]*scale + trans;
}
}
}
......
......@@ -203,8 +203,6 @@ void test_detection(char *cfgfile, char *weightfile)
fgets(filename, 256, stdin);
strtok(filename, "\n");
image im = load_image_color(filename, im_size, im_size);
translate_image(im, -128);
scale_image(im, 1/128.);
printf("%d %d %d\n", im.h, im.w, im.c);
float *X = im.data;
time=clock();
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment